@softheon/armature 17.31.2 → 19.0.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/assets/styles/_b2b-variables.scss +78 -0
- package/assets/styles/_b2c-variables.scss +47 -0
- package/assets/styles/_typography.scss +20 -19
- package/assets/styles/_variables.scss +2 -1
- package/assets/styles/b2b/_b2b-buttons.scss +16 -0
- package/assets/styles/b2b/_b2b-inputs-override.scss +174 -0
- package/assets/styles/b2b/_b2b-override.scss +23 -0
- package/assets/styles/b2b/_b2b-spinner.scss +29 -0
- package/assets/styles/b2b/_b2b-tabs.scss +116 -0
- package/assets/styles/deprecated/_button-deprecated.scss +225 -225
- package/assets/styles/deprecated/_chip-deprecated.scss +57 -57
- package/assets/styles/deprecated/_material-override-deprecated.scss +3 -3
- package/assets/styles/deprecated/_table-deprecated.scss +3 -3
- package/assets/styles/material-override/_button-toggle-group.scss +15 -15
- package/assets/styles/material-override/_button.scss +69 -69
- package/assets/styles/material-override/_calendar.scss +6 -6
- package/assets/styles/material-override/_checkbox.scss +20 -19
- package/assets/styles/material-override/_expansion-panel.scss +19 -18
- package/assets/styles/material-override/_form-field.scss +22 -22
- package/assets/styles/material-override/_menu.scss +3 -3
- package/assets/styles/material-override/_radio-button.scss +24 -23
- package/assets/styles/material-override/_slider.scss +50 -50
- package/assets/styles/material-override/_switch.scss +10 -10
- package/assets/styles/material-override/_tooltip.scss +11 -11
- package/assets/styles/sof-styles-b2b.scss +78 -0
- package/assets/styles/sof-styles.scss +17 -17
- package/fesm2022/softheon-armature-ag-grid-components.mjs +20 -20
- package/fesm2022/softheon-armature-ag-grid-components.mjs.map +1 -1
- package/fesm2022/softheon-armature.mjs +422 -403
- package/fesm2022/softheon-armature.mjs.map +1 -1
- package/lib/base-components/sof-star-rating/sof-star-rating.component.d.ts +2 -0
- package/lib/faq/components/faq/faq.component.d.ts +4 -1
- package/lib/navigation/components/navigation/navigation.component.d.ts +1 -1
- package/lib/oauth/oauth.module.d.ts +1 -2
- package/package.json +15 -19
- package/esm2022/ag-grid-components/public-api.mjs +0 -6
- package/esm2022/ag-grid-components/softheon-armature-ag-grid-components.mjs +0 -5
- package/esm2022/ag-grid-components/src/ag-grid-components.module.mjs +0 -103
- package/esm2022/ag-grid-components/src/column-options-modal/column-options.component.mjs +0 -41
- package/esm2022/ag-grid-components/src/sof-table/sof-table.component.mjs +0 -526
- package/esm2022/ag-grid-components/src/table-cell/table-cell.component.mjs +0 -23
- package/esm2022/lib/alert-banner/alert-banner-api.mjs +0 -10
- package/esm2022/lib/alert-banner/alert-banner.module.mjs +0 -42
- package/esm2022/lib/alert-banner/components/alert-banner/alert-banner.component.mjs +0 -82
- package/esm2022/lib/alert-banner/models/alert-banner-config.mjs +0 -2
- package/esm2022/lib/alert-banner/models/alert-banner-context.mjs +0 -2
- package/esm2022/lib/alert-banner/models/constants.mjs +0 -16
- package/esm2022/lib/alert-banner/services/alert-banner.service.mjs +0 -44
- package/esm2022/lib/armature.module.mjs +0 -183
- package/esm2022/lib/base-components/base-component-api.mjs +0 -23
- package/esm2022/lib/base-components/base-component.module.mjs +0 -175
- package/esm2022/lib/base-components/confirm-address/sof-confirm-address/compare-address-pipe/compare-address.pipe.mjs +0 -20
- package/esm2022/lib/base-components/confirm-address/sof-confirm-address/sof-confirm-address.component.mjs +0 -60
- package/esm2022/lib/base-components/confirm-address/sof-confirm-address-county-change/sof-confirm-address-county-change.component.mjs +0 -58
- package/esm2022/lib/base-components/sof-alert/sof-alert.component.mjs +0 -79
- package/esm2022/lib/base-components/sof-badge/sof-badge.component.mjs +0 -132
- package/esm2022/lib/base-components/sof-banner/sof-banner.component.mjs +0 -49
- package/esm2022/lib/base-components/sof-bottom-sheet/sof-bottom-sheet.component.mjs +0 -152
- package/esm2022/lib/base-components/sof-button-toggle-group/sof-button-toggle-group.component.mjs +0 -182
- package/esm2022/lib/base-components/sof-callout/sof-callout.component.mjs +0 -72
- package/esm2022/lib/base-components/sof-chip/sof-chip.component.mjs +0 -62
- package/esm2022/lib/base-components/sof-context/sof-context.component.mjs +0 -124
- package/esm2022/lib/base-components/sof-handle/sof-handle.component.mjs +0 -115
- package/esm2022/lib/base-components/sof-image-checkbox/sof-image-checkbox.component.mjs +0 -58
- package/esm2022/lib/base-components/sof-input-stepper/sof-input-stepper.component.mjs +0 -179
- package/esm2022/lib/base-components/sof-modal/sof-modal.component.mjs +0 -61
- package/esm2022/lib/base-components/sof-progress-bar/sof-progress-bar.component.mjs +0 -79
- package/esm2022/lib/base-components/sof-radio-card/sof-radio-card.component.mjs +0 -35
- package/esm2022/lib/base-components/sof-simple-alert/sof-simple-alert.component.mjs +0 -49
- package/esm2022/lib/base-components/sof-star-rating/sof-star-rating.component.mjs +0 -38
- package/esm2022/lib/base-components/sof-utility-button/sof-utility-button.component.mjs +0 -62
- package/esm2022/lib/component-save-print/components/component-save-print/component-save-print.component.mjs +0 -91
- package/esm2022/lib/component-save-print/services/component-save-print.service.mjs +0 -30
- package/esm2022/lib/component-save-print/sof-ar-component-save-print.module.mjs +0 -29
- package/esm2022/lib/core/client-generated/api/session.service.mjs +0 -242
- package/esm2022/lib/core/client-generated/configuration.mjs +0 -59
- package/esm2022/lib/core/client-generated/encoder.mjs +0 -17
- package/esm2022/lib/core/client-generated/model/applicationUserModel.mjs +0 -20
- package/esm2022/lib/core/client-generated/model/assertedUserModel.mjs +0 -2
- package/esm2022/lib/core/client-generated/model/brandingModel.mjs +0 -2
- package/esm2022/lib/core/client-generated/model/errorModel.mjs +0 -13
- package/esm2022/lib/core/client-generated/model/folderLink.mjs +0 -13
- package/esm2022/lib/core/client-generated/model/identityProfile.mjs +0 -2
- package/esm2022/lib/core/client-generated/model/models.mjs +0 -20
- package/esm2022/lib/core/client-generated/model/oAuthModel.mjs +0 -13
- package/esm2022/lib/core/client-generated/model/preferencesRow.mjs +0 -13
- package/esm2022/lib/core/client-generated/model/rolesRow.mjs +0 -13
- package/esm2022/lib/core/client-generated/model/sessionGetResponseModel.mjs +0 -2
- package/esm2022/lib/core/client-generated/model/sessionPostRequestModel.mjs +0 -2
- package/esm2022/lib/core/client-generated/model/sessionPostResponseModel.mjs +0 -2
- package/esm2022/lib/core/client-generated/model/sessionPutRequestModel.mjs +0 -2
- package/esm2022/lib/core/client-generated/model/sessionPutResponseModel.mjs +0 -2
- package/esm2022/lib/core/client-generated/model/sessionResponseModel.mjs +0 -2
- package/esm2022/lib/core/client-generated/model/settingsProfile.mjs +0 -2
- package/esm2022/lib/core/client-generated/model/themePaletteColorsModel.mjs +0 -13
- package/esm2022/lib/core/client-generated/model/themePaletteModel.mjs +0 -2
- package/esm2022/lib/core/client-generated/model/trackingModel.mjs +0 -13
- package/esm2022/lib/core/client-generated/model/validationRecordsRow.mjs +0 -13
- package/esm2022/lib/core/client-generated/variables.mjs +0 -9
- package/esm2022/lib/core/components/app-template/app-template.component.mjs +0 -269
- package/esm2022/lib/core/functions/guid.mjs +0 -11
- package/esm2022/lib/core/functions/naming-convention.mjs +0 -33
- package/esm2022/lib/core/functions/route-to-pre-login-route.mjs +0 -13
- package/esm2022/lib/core/initializer/abstract-startup-service.mjs +0 -4
- package/esm2022/lib/core/initializer/initializer.service.mjs +0 -302
- package/esm2022/lib/core/interceptors/armature-auth-token-append.interceptor.mjs +0 -73
- package/esm2022/lib/core/models/base-config.mjs +0 -2
- package/esm2022/lib/core/models/constants.mjs +0 -17
- package/esm2022/lib/core/models/data-store-config.mjs +0 -4
- package/esm2022/lib/core/models/federated-module-config.mjs +0 -2
- package/esm2022/lib/core/models/header-config.mjs +0 -2
- package/esm2022/lib/core/models/http-verbs.mjs +0 -9
- package/esm2022/lib/core/models/nav-panel-config.mjs +0 -2
- package/esm2022/lib/core/models/navigation-config.mjs +0 -2
- package/esm2022/lib/core/models/oidc-auth-settings.mjs +0 -2
- package/esm2022/lib/core/models/route-path.mjs +0 -7
- package/esm2022/lib/core/models/session-config.mjs +0 -4
- package/esm2022/lib/core/models/styles.mjs +0 -2
- package/esm2022/lib/core/models/subdomain-config.mjs +0 -2
- package/esm2022/lib/core/models/typed-session.mjs +0 -4
- package/esm2022/lib/core/models/user-entity-service-config.mjs +0 -12
- package/esm2022/lib/core/services/authorization.service.mjs +0 -175
- package/esm2022/lib/core/services/banner.service.mjs +0 -43
- package/esm2022/lib/core/services/base-config.service.mjs +0 -32
- package/esm2022/lib/core/services/custom-auth-config.service.mjs +0 -4
- package/esm2022/lib/core/services/default-config.service.mjs +0 -19
- package/esm2022/lib/core/services/federated-module.service.mjs +0 -60
- package/esm2022/lib/core/services/session.service.mjs +0 -387
- package/esm2022/lib/core/services/user-entity.service.mjs +0 -145
- package/esm2022/lib/distributed-cache/client-generated/api/api.mjs +0 -4
- package/esm2022/lib/distributed-cache/client-generated/api/cache.service.mjs +0 -213
- package/esm2022/lib/distributed-cache/client-generated/configuration.mjs +0 -59
- package/esm2022/lib/distributed-cache/client-generated/encoder.mjs +0 -17
- package/esm2022/lib/distributed-cache/client-generated/model/cacheExpirationType.mjs +0 -16
- package/esm2022/lib/distributed-cache/client-generated/model/createCacheEntryRequestModel.mjs +0 -2
- package/esm2022/lib/distributed-cache/client-generated/model/models.mjs +0 -5
- package/esm2022/lib/distributed-cache/client-generated/model/retrieveCacheEntryResponseModel.mjs +0 -13
- package/esm2022/lib/distributed-cache/client-generated/model/updateCacheEntryRequestModel.mjs +0 -13
- package/esm2022/lib/distributed-cache/client-generated/variables.mjs +0 -9
- package/esm2022/lib/distributed-cache/distributed-cache-api.mjs +0 -8
- package/esm2022/lib/distributed-cache/distributed-cache.module.mjs +0 -38
- package/esm2022/lib/distributed-cache/models/constants.mjs +0 -3
- package/esm2022/lib/distributed-cache/models/policy-person.mjs +0 -9
- package/esm2022/lib/distributed-cache/services/server-cache.service.mjs +0 -48
- package/esm2022/lib/error/components/error-common/error-common.component.mjs +0 -25
- package/esm2022/lib/error/error-api.mjs +0 -7
- package/esm2022/lib/error/error.module.mjs +0 -31
- package/esm2022/lib/error/models/error-common-config.mjs +0 -8
- package/esm2022/lib/faq/components/faq/faq.component.mjs +0 -40
- package/esm2022/lib/faq/faq-api.mjs +0 -8
- package/esm2022/lib/faq/faq.module.mjs +0 -41
- package/esm2022/lib/faq/models/faq-config.mjs +0 -4
- package/esm2022/lib/faq/models/faq.mjs +0 -8
- package/esm2022/lib/feedback-tool/components/feedback-tool/feedback-tool.component.mjs +0 -81
- package/esm2022/lib/feedback-tool/feedback-tool-api.mjs +0 -5
- package/esm2022/lib/feedback-tool/feedback-tool.module.mjs +0 -44
- package/esm2022/lib/footer/components/footer/footer.component.mjs +0 -25
- package/esm2022/lib/footer/components/site-map/site-map.component.mjs +0 -25
- package/esm2022/lib/footer/footer-api.mjs +0 -10
- package/esm2022/lib/footer/footer.module.mjs +0 -45
- package/esm2022/lib/footer/models/enum/site-map-direction.mjs +0 -15
- package/esm2022/lib/footer/models/footer-config.mjs +0 -4
- package/esm2022/lib/footer/models/site-map-models.mjs +0 -2
- package/esm2022/lib/forms/components/sof-address/sof-address.component.mjs +0 -113
- package/esm2022/lib/forms/directives/alphanumeric/alphanumeric.directive.mjs +0 -78
- package/esm2022/lib/forms/directives/date-input-filter/date-input-filter.directive.mjs +0 -20
- package/esm2022/lib/forms/directives/input-trim/input-trim.directive.mjs +0 -110
- package/esm2022/lib/forms/directives/letters-characters/letters-characters.directive.mjs +0 -87
- package/esm2022/lib/forms/directives/letters-only/letters-only.directive.mjs +0 -85
- package/esm2022/lib/forms/directives/numbers-only/numbers-only.directive.mjs +0 -55
- package/esm2022/lib/forms/forms-api.mjs +0 -21
- package/esm2022/lib/forms/forms.module.mjs +0 -91
- package/esm2022/lib/forms/models/address.mjs +0 -2
- package/esm2022/lib/forms/models/constants.mjs +0 -10
- package/esm2022/lib/forms/models/county.mjs +0 -2
- package/esm2022/lib/forms/models/enums/states.mjs +0 -66
- package/esm2022/lib/forms/pipes/phone-format.pipe.mjs +0 -33
- package/esm2022/lib/forms/services/alert.service.mjs +0 -167
- package/esm2022/lib/header/components/header/header.component.mjs +0 -165
- package/esm2022/lib/header/components/mobile-header-menu/mobile-header-menu.component.mjs +0 -39
- package/esm2022/lib/header/components/sof-header/menu-prevent-close-directive/menu-prevent-close.directive.mjs +0 -21
- package/esm2022/lib/header/components/sof-header/sof-header.component.mjs +0 -156
- package/esm2022/lib/header/components/sof-header/user-initials-pipe/user-initials.pipe.mjs +0 -22
- package/esm2022/lib/header/header-api.mjs +0 -15
- package/esm2022/lib/header/header.module.mjs +0 -90
- package/esm2022/lib/header/models/header-auth.settings.mjs +0 -32
- package/esm2022/lib/header/models/header-external-links.mjs +0 -2
- package/esm2022/lib/header/models/header-language.settings.mjs +0 -2
- package/esm2022/lib/header/models/header-theme.settings.mjs +0 -2
- package/esm2022/lib/header/models/header.settings.mjs +0 -2
- package/esm2022/lib/header/models/mobile-header-nav.settings.mjs +0 -2
- package/esm2022/lib/mfe/components/entity-base/entity-base.component.mjs +0 -72
- package/esm2022/lib/mfe/components/entity-inject-wrapper/entity-inject-wrapper.component.mjs +0 -83
- package/esm2022/lib/mfe/mfe.module.mjs +0 -24
- package/esm2022/lib/mfe/models/entity-config-base.mjs +0 -2
- package/esm2022/lib/mfe/models/entity-dto.mjs +0 -5
- package/esm2022/lib/mfe/services/entity-helper.service.mjs +0 -113
- package/esm2022/lib/navigation/components/b2b-nav/b2b-nav.component.mjs +0 -232
- package/esm2022/lib/navigation/components/navigation/navigation.component.mjs +0 -560
- package/esm2022/lib/navigation/components/sof-breadcrumbs/sof-breadcrumbs-hierarchy/sof-breadcrumbs-hierarchy.component.mjs +0 -60
- package/esm2022/lib/navigation/components/sof-breadcrumbs/sof-breadcrumbs-history/sof-breadcrumbs-history.component.mjs +0 -76
- package/esm2022/lib/navigation/components/sof-navigation-panel/models/nav-panel-logo.mjs +0 -2
- package/esm2022/lib/navigation/components/sof-navigation-panel/models/nav-panel-nodes.mjs +0 -2
- package/esm2022/lib/navigation/components/sof-navigation-panel/models/nav-panel-settings.mjs +0 -2
- package/esm2022/lib/navigation/components/sof-navigation-panel/sof-nav-panel.component.mjs +0 -105
- package/esm2022/lib/navigation/components/sof-sub-navigation/sof-sub-navigation.component.mjs +0 -60
- package/esm2022/lib/navigation/components/sof-tabs-navigation/sof-tabs.component.mjs +0 -22
- package/esm2022/lib/navigation/models/breadcrumb.mjs +0 -3
- package/esm2022/lib/navigation/models/nav-theme.settings.mjs +0 -2
- package/esm2022/lib/navigation/models/nav.settings.mjs +0 -2
- package/esm2022/lib/navigation/models/navigation.mjs +0 -2
- package/esm2022/lib/navigation/navigation-api.mjs +0 -18
- package/esm2022/lib/navigation/navigation.module.mjs +0 -139
- package/esm2022/lib/oauth/models/constants.mjs +0 -6
- package/esm2022/lib/oauth/models/generated/accountManagementAssertionModel.mjs +0 -2
- package/esm2022/lib/oauth/models/generated/accountManagementRefreshRequestModel.mjs +0 -2
- package/esm2022/lib/oauth/models/generated/accountManagementResponseModel.mjs +0 -2
- package/esm2022/lib/oauth/models/generated/applicationType.mjs +0 -33
- package/esm2022/lib/oauth/models/generated/coverageDetail.mjs +0 -19
- package/esm2022/lib/oauth/models/generated/finance.mjs +0 -13
- package/esm2022/lib/oauth/models/generated/iSsoResponseModel.mjs +0 -13
- package/esm2022/lib/oauth/models/generated/iSsoResponseModelAccountManagementAssertionModel.mjs +0 -2
- package/esm2022/lib/oauth/models/generated/person.mjs +0 -13
- package/esm2022/lib/oauth/models/generated/policy.mjs +0 -2
- package/esm2022/lib/oauth/models/generated/refreshResponseModel.mjs +0 -13
- package/esm2022/lib/oauth/models/hybrid-saml-oauth-config.mjs +0 -4
- package/esm2022/lib/oauth/oauth-api.mjs +0 -15
- package/esm2022/lib/oauth/oauth.module.mjs +0 -29
- package/esm2022/lib/oauth/services/hybrid-saml-oauth.service.mjs +0 -201
- package/esm2022/lib/rbac/directives/rbac-action.directive.mjs +0 -50
- package/esm2022/lib/rbac/models/access-token-claims.mjs +0 -23
- package/esm2022/lib/rbac/models/constants.mjs +0 -4
- package/esm2022/lib/rbac/models/decoded-access-token.mjs +0 -69
- package/esm2022/lib/rbac/models/rbac-config.mjs +0 -4
- package/esm2022/lib/rbac/models/role-access.mjs +0 -10
- package/esm2022/lib/rbac/rbac-api.mjs +0 -15
- package/esm2022/lib/rbac/rbac.module.mjs +0 -51
- package/esm2022/lib/rbac/services/ar-role-nav.service.mjs +0 -104
- package/esm2022/lib/rbac/services/oauth2-role.service.mjs +0 -114
- package/esm2022/lib/rbac/services/role-nav.service.mjs +0 -4
- package/esm2022/lib/rbac/services/tokens.mjs +0 -4
- package/esm2022/lib/resize-panels/components/resize-panels/resize-panels.component.mjs +0 -156
- package/esm2022/lib/resize-panels/models/resize-event.mjs +0 -2
- package/esm2022/lib/resize-panels/resize-panels-api.mjs +0 -5
- package/esm2022/lib/resize-panels/resize-panels.module.mjs +0 -23
- package/esm2022/lib/rum/models/arm-error.mjs +0 -29
- package/esm2022/lib/rum/models/rum-config.mjs +0 -4
- package/esm2022/lib/rum/rum-api.mjs +0 -10
- package/esm2022/lib/rum/rum.module.mjs +0 -48
- package/esm2022/lib/rum/services/rum.service.mjs +0 -115
- package/esm2022/lib/rum/services/shared-error.service.mjs +0 -45
- package/esm2022/lib/rum/services/softheon-error-handler.service.mjs +0 -76
- package/esm2022/lib/saml/components/redirect-saml/redirect-saml.component.mjs +0 -79
- package/esm2022/lib/saml/models/i-saml-request.mjs +0 -2
- package/esm2022/lib/saml/models/i-saml-response.mjs +0 -2
- package/esm2022/lib/saml/models/redirect-saml-request.mjs +0 -4
- package/esm2022/lib/saml/models/sso-gateway-model.mjs +0 -4
- package/esm2022/lib/saml/saml-api.mjs +0 -15
- package/esm2022/lib/saml/saml.module.mjs +0 -43
- package/esm2022/lib/saml/services/entry/abstract-saml-entry.service.mjs +0 -4
- package/esm2022/lib/saml/services/entry/sso-gateway-entry.service.mjs +0 -36
- package/esm2022/lib/saml/services/send-off/abstract-saml.service.mjs +0 -4
- package/esm2022/lib/saml/services/send-off/saml.service.mjs +0 -39
- package/esm2022/lib/sof-pipe/constants/constants.mjs +0 -17
- package/esm2022/lib/sof-pipe/models/sof-date-pipe-format.mjs +0 -2
- package/esm2022/lib/sof-pipe/pipes/sof-blank/sof-blank.pipe.mjs +0 -39
- package/esm2022/lib/sof-pipe/pipes/sof-date/sof-date.pipe.mjs +0 -59
- package/esm2022/lib/sof-pipe/pipes/sof-ssn/sof-ssn.pipe.mjs +0 -28
- package/esm2022/lib/sof-pipe/sof-pipe.api.mjs +0 -9
- package/esm2022/lib/sof-pipe/sof-pipe.module.mjs +0 -39
- package/esm2022/lib/theming/directives/css-override.directive.mjs +0 -69
- package/esm2022/lib/theming/models/css-override.mjs +0 -11
- package/esm2022/lib/theming/services/theme.service.mjs +0 -187
- package/esm2022/lib/theming/theme-api.mjs +0 -6
- package/esm2022/lib/theming/theme.module.mjs +0 -31
- package/esm2022/public-api.mjs +0 -60
- package/esm2022/softheon-armature.mjs +0 -5
|
@@ -1,175 +0,0 @@
|
|
|
1
|
-
import { Injectable, Optional } from "@angular/core";
|
|
2
|
-
import { AuthConfig } from "angular-oauth2-oidc";
|
|
3
|
-
import { JwksValidationHandler } from 'angular-oauth2-oidc-jwks';
|
|
4
|
-
import { BehaviorSubject } from "rxjs";
|
|
5
|
-
import { preSignInRouteStorageKey } from "../models/constants";
|
|
6
|
-
import * as i0 from "@angular/core";
|
|
7
|
-
import * as i1 from "angular-oauth2-oidc";
|
|
8
|
-
import * as i2 from "@angular/common/http";
|
|
9
|
-
import * as i3 from "../../oauth/oauth-api";
|
|
10
|
-
import * as i4 from "./custom-auth-config.service";
|
|
11
|
-
/** The session service */
|
|
12
|
-
export class AuthorizationService {
|
|
13
|
-
/**
|
|
14
|
-
* Constructs authorization service
|
|
15
|
-
* @param authService The OAuth Service
|
|
16
|
-
* @param httpClient The HTTPClient
|
|
17
|
-
* @param authStorage The AuthStorage
|
|
18
|
-
* @param hybridAuthService The Hybrid Service
|
|
19
|
-
* @param customAuthConfigService The Custom Authorization Service
|
|
20
|
-
*/
|
|
21
|
-
constructor(authService, httpClient, authStorage, hybridAuthService, customAuthConfigService) {
|
|
22
|
-
this.authService = authService;
|
|
23
|
-
this.httpClient = httpClient;
|
|
24
|
-
this.authStorage = authStorage;
|
|
25
|
-
this.hybridAuthService = hybridAuthService;
|
|
26
|
-
this.customAuthConfigService = customAuthConfigService;
|
|
27
|
-
/** IsloggedIn behaviour subject **/
|
|
28
|
-
this.isLoggedInBs = new BehaviorSubject(false);
|
|
29
|
-
this.isLoggedIn$ = this.isLoggedInBs.asObservable();
|
|
30
|
-
}
|
|
31
|
-
/**
|
|
32
|
-
* Initialize Authorization Settings.
|
|
33
|
-
* @param authSettings The Authorization settings
|
|
34
|
-
*/
|
|
35
|
-
initializeAuthSettings(authSettings, shouldTryLogin = true) {
|
|
36
|
-
this.authSettings = authSettings;
|
|
37
|
-
if (this.customAuthConfigService) {
|
|
38
|
-
this.customAuthConfigService.configureAuthSettings().then(authConfig => {
|
|
39
|
-
// Overwrite initial header auth setting with custom resolver
|
|
40
|
-
this.authSettings = {
|
|
41
|
-
...authSettings,
|
|
42
|
-
...authConfig
|
|
43
|
-
};
|
|
44
|
-
if (shouldTryLogin) {
|
|
45
|
-
this.handleTryLogin(authSettings.authSetOnStartup);
|
|
46
|
-
}
|
|
47
|
-
});
|
|
48
|
-
}
|
|
49
|
-
else {
|
|
50
|
-
const authConfig = new AuthConfig({
|
|
51
|
-
clientId: authSettings.clientId,
|
|
52
|
-
redirectUri: authSettings.redirectUri,
|
|
53
|
-
issuer: authSettings.issuer,
|
|
54
|
-
scope: authSettings.scope,
|
|
55
|
-
skipIssuerCheck: authSettings.skipIssuerCheck,
|
|
56
|
-
timeoutFactor: authSettings.timeoutFactor || 0.75,
|
|
57
|
-
postLogoutRedirectUri: authSettings.postLogOutUrl,
|
|
58
|
-
loginUrl: authSettings.loginUrl,
|
|
59
|
-
responseType: authSettings.responseType || 'code'
|
|
60
|
-
});
|
|
61
|
-
this.authService.configure(authConfig);
|
|
62
|
-
this.authService.issuer = authSettings.issuer;
|
|
63
|
-
this.authService.strictDiscoveryDocumentValidation = false;
|
|
64
|
-
this.authService.skipIssuerCheck = true;
|
|
65
|
-
this.authService.tokenValidationHandler = new JwksValidationHandler();
|
|
66
|
-
this.authService.setupAutomaticSilentRefresh({}, 'access_token');
|
|
67
|
-
this.authService.timeoutFactor = authSettings.timeoutFactor || 0.75;
|
|
68
|
-
this.authService.responseType = authSettings.responseType || 'code';
|
|
69
|
-
if (shouldTryLogin) {
|
|
70
|
-
this.handleTryLogin(authSettings.authSetOnStartup);
|
|
71
|
-
}
|
|
72
|
-
}
|
|
73
|
-
}
|
|
74
|
-
/** The user name */
|
|
75
|
-
userName() {
|
|
76
|
-
let name = '';
|
|
77
|
-
if (this.claims.given_name) {
|
|
78
|
-
name += this.claims.given_name;
|
|
79
|
-
}
|
|
80
|
-
if (name && this.claims.family_name) {
|
|
81
|
-
name += ` ${this.claims.family_name}`;
|
|
82
|
-
}
|
|
83
|
-
else if (this.claims.family_name) {
|
|
84
|
-
name += this.claims.family_name;
|
|
85
|
-
}
|
|
86
|
-
return name || this.claims.upn;
|
|
87
|
-
}
|
|
88
|
-
/**
|
|
89
|
-
* Authorize User.
|
|
90
|
-
*/
|
|
91
|
-
authorizeUser() {
|
|
92
|
-
if (this.authSettings) {
|
|
93
|
-
if (!this.IsLoggedIn) {
|
|
94
|
-
if (this.customAuthConfigService) {
|
|
95
|
-
this.customAuthConfigService.configureAuthSettings().then(_ => {
|
|
96
|
-
this.handleLogin();
|
|
97
|
-
});
|
|
98
|
-
}
|
|
99
|
-
else {
|
|
100
|
-
if (this.authService.issuer !== this.authSettings.issuer) {
|
|
101
|
-
this.authService.issuer = this.authSettings.issuer;
|
|
102
|
-
}
|
|
103
|
-
this.handleLogin();
|
|
104
|
-
}
|
|
105
|
-
}
|
|
106
|
-
else {
|
|
107
|
-
if (this.hybridAuthService) {
|
|
108
|
-
this.hybridAuthService.expireSession(true);
|
|
109
|
-
}
|
|
110
|
-
this.authService.logOut();
|
|
111
|
-
this.authStorage.removeItem('access_token');
|
|
112
|
-
this.isLoggedInBs.next(false);
|
|
113
|
-
this.IsLoggedIn = false;
|
|
114
|
-
return;
|
|
115
|
-
}
|
|
116
|
-
}
|
|
117
|
-
}
|
|
118
|
-
/**
|
|
119
|
-
* Handle Login
|
|
120
|
-
* @param authSetOnStartup Is auth set on startup
|
|
121
|
-
*/
|
|
122
|
-
handleTryLogin(authSetOnStartup) {
|
|
123
|
-
if (!authSetOnStartup) {
|
|
124
|
-
this.authService.loadDiscoveryDocumentAndTryLogin()
|
|
125
|
-
.then(() => {
|
|
126
|
-
const token = this.authService.getAccessToken();
|
|
127
|
-
const isValid = !!token;
|
|
128
|
-
this.claims = this.authService.getIdentityClaims();
|
|
129
|
-
this.isLoggedInBs.next(isValid);
|
|
130
|
-
this.IsLoggedIn = isValid;
|
|
131
|
-
})
|
|
132
|
-
.catch(e => {
|
|
133
|
-
console.error(e);
|
|
134
|
-
});
|
|
135
|
-
}
|
|
136
|
-
else {
|
|
137
|
-
this.authService.loadDiscoveryDocument()
|
|
138
|
-
.then(() => {
|
|
139
|
-
const token = this.authService.getAccessToken();
|
|
140
|
-
const isValid = !!token;
|
|
141
|
-
this.claims = this.authService.getIdentityClaims();
|
|
142
|
-
this.isLoggedInBs.next(isValid);
|
|
143
|
-
this.IsLoggedIn = isValid;
|
|
144
|
-
})
|
|
145
|
-
.catch(e => {
|
|
146
|
-
console.error(e);
|
|
147
|
-
});
|
|
148
|
-
}
|
|
149
|
-
}
|
|
150
|
-
/** Handle Login */
|
|
151
|
-
handleLogin() {
|
|
152
|
-
window.sessionStorage.setItem(preSignInRouteStorageKey, window.location.pathname.toLowerCase());
|
|
153
|
-
this.authService.loadDiscoveryDocumentAndLogin()
|
|
154
|
-
.then(logInSuccess => {
|
|
155
|
-
if (logInSuccess) {
|
|
156
|
-
this.isLoggedInBs.next(true);
|
|
157
|
-
this.IsLoggedIn = true;
|
|
158
|
-
}
|
|
159
|
-
})
|
|
160
|
-
.catch(e => {
|
|
161
|
-
console.error(e);
|
|
162
|
-
});
|
|
163
|
-
}
|
|
164
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: AuthorizationService, deps: [{ token: i1.OAuthService }, { token: i2.HttpClient }, { token: i1.OAuthStorage }, { token: i3.HybridSamlOauthService }, { token: i4.CustomAuthConfigService, optional: true }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
165
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: AuthorizationService, providedIn: 'root' }); }
|
|
166
|
-
}
|
|
167
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: AuthorizationService, decorators: [{
|
|
168
|
-
type: Injectable,
|
|
169
|
-
args: [{
|
|
170
|
-
providedIn: 'root'
|
|
171
|
-
}]
|
|
172
|
-
}], ctorParameters: () => [{ type: i1.OAuthService }, { type: i2.HttpClient }, { type: i1.OAuthStorage }, { type: i3.HybridSamlOauthService }, { type: i4.CustomAuthConfigService, decorators: [{
|
|
173
|
-
type: Optional
|
|
174
|
-
}] }] });
|
|
175
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aG9yaXphdGlvbi5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYXJtYXR1cmUvc3JjL2xpYi9jb3JlL3NlcnZpY2VzL2F1dGhvcml6YXRpb24uc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQVUsVUFBVSxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUU3RCxPQUFPLEVBQUUsVUFBVSxFQUE4QixNQUFNLHFCQUFxQixDQUFDO0FBQzdFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ2pFLE9BQU8sRUFBRSxlQUFlLEVBQWMsTUFBTSxNQUFNLENBQUM7QUFLbkQsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0scUJBQXFCLENBQUM7Ozs7OztBQUcvRCwwQkFBMEI7QUFJMUIsTUFBTSxPQUFPLG9CQUFvQjtJQWlCL0I7Ozs7Ozs7T0FPRztJQUNILFlBQ21CLFdBQXlCLEVBQ3pCLFVBQXNCLEVBQ3RCLFdBQXlCLEVBQ3pCLGlCQUF5QyxFQUM3Qix1QkFBZ0Q7UUFKNUQsZ0JBQVcsR0FBWCxXQUFXLENBQWM7UUFDekIsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQUN0QixnQkFBVyxHQUFYLFdBQVcsQ0FBYztRQUN6QixzQkFBaUIsR0FBakIsaUJBQWlCLENBQXdCO1FBQzdCLDRCQUF1QixHQUF2Qix1QkFBdUIsQ0FBeUI7UUF0Qi9FLG9DQUFvQztRQUNuQixpQkFBWSxHQUE2QixJQUFJLGVBQWUsQ0FBVSxLQUFLLENBQUMsQ0FBQztRQXVCNUYsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ3RELENBQUM7SUFFRDs7O09BR0c7SUFDSSxzQkFBc0IsQ0FBQyxZQUFnQyxFQUFFLGlCQUEwQixJQUFJO1FBQzVGLElBQUksQ0FBQyxZQUFZLEdBQUcsWUFBWSxD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QUMsVUFBVSxHQUFHLElBQUksQ0FBQzthQUN4QjtRQUNILENBQUMsQ0FBQzthQUNELEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRTtZQUNULE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDbkIsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDOzhHQTVLVSxvQkFBb0I7a0hBQXBCLG9CQUFvQixjQUZuQixNQUFNOzsyRkFFUCxvQkFBb0I7a0JBSGhDLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25COzswQkErQkksUUFBUSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBDbGllbnQgfSBmcm9tIFwiQGFuZ3VsYXIvY29tbW9uL2h0dHBcIjtcclxuaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlLCBPcHRpb25hbCB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcblxyXG5pbXBvcnQgeyBBdXRoQ29uZmlnLCBPQXV0aFNlcnZpY2UsIE9BdXRoU3RvcmFnZSB9IGZyb20gXCJhbmd1bGFyLW9hdXRoMi1vaWRjXCI7XHJcbmltcG9ydCB7IEp3a3NWYWxpZGF0aW9uSGFuZGxlciB9IGZyb20gJ2FuZ3VsYXItb2F1dGgyLW9pZGMtandrcyc7XHJcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgT2JzZXJ2YWJsZSB9IGZyb20gXCJyeGpzXCI7XHJcblxyXG5pbXBvcnQgeyBIZWFkZXJBdXRoU2V0dGluZ3MgfSBmcm9tIFwiLi4vLi4vaGVhZGVyL21vZGVscy9oZWFkZXItYXV0aC5zZXR0aW5nc1wiO1xyXG5pbXBvcnQgeyBIeWJyaWRTYW1sT2F1dGhTZXJ2aWNlIH0gZnJvbSBcIi4uLy4uL29hdXRoL29hdXRoLWFwaVwiO1xyXG5pbXBvcnQgeyBBY2Nlc3NUb2tlbkNsYWltcyB9IGZyb20gXCIuLi8uLi9yYmFjL3JiYWMtYXBpXCI7XHJcbmltcG9ydCB7IHByZVNpZ25JblJvdXRlU3RvcmFnZUtleSB9IGZyb20gXCIuLi9tb2RlbHMvY29uc3RhbnRzXCI7XHJcbmltcG9ydCB7IEN1c3RvbUF1dGhDb25maWdTZXJ2aWNlIH0gZnJvbSAnLi9jdXN0b20tYXV0aC1jb25maWcuc2VydmljZSc7XHJcblxyXG4vKiogVGhlIHNlc3Npb24gc2VydmljZSAqL1xyXG5ASW5qZWN0YWJsZSh7XHJcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBdXRob3JpemF0aW9uU2VydmljZSB7XHJcblxyXG4gIC8qKiBUaGUgY2xhaW1zICovXHJcbiAgcHJpdmF0ZSBjbGFpbXM6IEFjY2Vzc1Rva2VuQ2xhaW1zO1xyXG5cclxuICAvKiogQXV0aG9yaXphdGlvbiBzZXR0aW5ncy4qL1xyXG4gIHB1YmxpYyBhdXRoU2V0dGluZ3M6IEhlYWRlckF1dGhTZXR0aW5ncztcclxuXHJcbiAgLyoqIElzbG9nZ2VkSW4gYmVoYXZpb3VyIHN1YmplY3QgKiovXHJcbiAgcHJpdmF0ZSByZWFkb25seSBpc0xvZ2dlZEluQnM6IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPiA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oZmFsc2UpO1xyXG5cclxuICAvKiogSXNsb2dnZWRJbiBvYnNlcnZhYmxlICoqL1xyXG4gIHB1YmxpYyBpc0xvZ2dlZEluJDogT2JzZXJ2YWJsZTxib29sZWFuPjtcclxuXHJcbiAgLyoqIERldGVybWluZWQgd2hldGhlciBpcyB1c2VyIGlzIGxvZ2dlZCBpbioqL1xyXG4gIHB1YmxpYyBJc0xvZ2dlZEluOiBib29sZWFuO1xyXG5cclxuICAvKipcclxuICAgKiBDb25zdHJ1Y3RzIGF1dGhvcml6YXRpb24gc2VydmljZVxyXG4gICAqIEBwYXJhbSBhdXRoU2VydmljZSBUaGUgT0F1dGggU2VydmljZVxyXG4gICAqIEBwYXJhbSBodHRwQ2xpZW50IFRoZSBIVFRQQ2xpZW50XHJcbiAgICogQHBhcmFtIGF1dGhTdG9yYWdlIFRoZSBBdXRoU3RvcmFnZVxyXG4gICAqIEBwYXJhbSBoeWJyaWRBdXRoU2VydmljZSBUaGUgSHlicmlkIFNlcnZpY2VcclxuICAgKiBAcGFyYW0gY3VzdG9tQXV0aENvbmZpZ1NlcnZpY2UgVGhlIEN1c3RvbSBBdXRob3JpemF0aW9uIFNlcnZpY2VcclxuICAgKi9cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgYXV0aFNlcnZpY2U6IE9BdXRoU2VydmljZSxcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgaHR0cENsaWVudDogSHR0cENsaWVudCxcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgYXV0aFN0b3JhZ2U6IE9BdXRoU3RvcmFnZSxcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgaHlicmlkQXV0aFNlcnZpY2U6IEh5YnJpZFNhbWxPYXV0aFNlcnZpY2UsXHJcbiAgICBAT3B0aW9uYWwoKSBwcml2YXRlIHJlYWRvbmx5IGN1c3RvbUF1dGhDb25maWdTZXJ2aWNlOiBDdXN0b21BdXRoQ29uZmlnU2VydmljZVxyXG4gICkge1xyXG4gICAgdGhpcy5pc0xvZ2dlZEluJCA9IHRoaXMuaXNMb2dnZWRJbkJzLmFzT2JzZXJ2YWJsZSgpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogSW5pdGlhbGl6ZSBBdXRob3JpemF0aW9uIFNldHRpbmdzLlxyXG4gICAqICBAcGFyYW0gYXV0aFNldHRpbmdzIFRoZSBBdXRob3JpemF0aW9uIHNldHRpbmdzXHJcbiAgICovXHJcbiAgcHVibGljIGluaXRpYWxpemVBdXRoU2V0dGluZ3MoYXV0aFNldHRpbmdzOiBIZWFkZXJBdXRoU2V0dGluZ3MsIHNob3VsZFRyeUxvZ2luOiBib29sZWFuID0gdHJ1ZSk6IHZvaWQge1xyXG4gICAgdGhpcy5hdXRoU2V0dGluZ3MgPSBhdXRoU2V0dGluZ3M7XHJcblxyXG4gICAgaWYgKHRoaXMuY3VzdG9tQXV0aENvbmZpZ1NlcnZpY2UpIHtcclxuICAgICAgdGhpcy5jdXN0b21BdXRoQ29uZmlnU2VydmljZS5jb25maWd1cmVBdXRoU2V0dGluZ3MoKS50aGVuKGF1dGhDb25maWcgPT4ge1xyXG4gICAgICAgIC8vIE92ZXJ3cml0ZSBpbml0aWFsIGhlYWRlciBhdXRoIHNldHRpbmcgd2l0aCBjdXN0b20gcmVzb2x2ZXJcclxuICAgICAgICB0aGlzLmF1dGhTZXR0aW5ncyA9IHtcclxuICAgICAgICAgIC4uLmF1dGhTZXR0aW5ncyxcclxuICAgICAgICAgIC4uLmF1dGhDb25maWdcclxuICAgICAgICB9O1xyXG4gICAgICAgIGlmIChzaG91bGRUcnlMb2dpbikge1xyXG4gICAgICAgICAgdGhpcy5oYW5kbGVUcnlMb2dpbihhdXRoU2V0dGluZ3MuYXV0aFNldE9uU3RhcnR1cCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuICAgIH1cclxuICAgIGVsc2Uge1xyXG4gICAgICBjb25zdCBhdXRoQ29uZmlnID0gbmV3IEF1dGhDb25maWcoe1xyXG4gICAgICAgIGNsaWVudElkOiBhdXRoU2V0dGluZ3MuY2xpZW50SWQsXHJcbiAgICAgICAgcmVkaXJlY3RVcmk6IGF1dGhTZXR0aW5ncy5yZWRpcmVjdFVyaSxcclxuICAgICAgICBpc3N1ZXI6IGF1dGhTZXR0aW5ncy5pc3N1ZXIsXHJcbiAgICAgICAgc2NvcGU6IGF1dGhTZXR0aW5ncy5zY29wZSxcclxuICAgICAgICBza2lwSXNzdWVyQ2hlY2s6IGF1dGhTZXR0aW5ncy5za2lwSXNzdWVyQ2hlY2ssXHJcbiAgICAgICAgdGltZW91dEZhY3RvcjogYXV0aFNldHRpbmdzLnRpbWVvdXRGYWN0b3IgfHwgMC43NSxcclxuICAgICAgICBwb3N0TG9nb3V0UmVkaXJlY3RVcmk6IGF1dGhTZXR0aW5ncy5wb3N0TG9nT3V0VXJsLFxyXG4gICAgICAgIGxvZ2luVXJsOiBhdXRoU2V0dGluZ3MubG9naW5VcmwsXHJcbiAgICAgICAgcmVzcG9uc2VUeXBlOiBhdXRoU2V0dGluZ3MucmVzcG9uc2VUeXBlIHx8ICdjb2RlJ1xyXG4gICAgICB9KTtcclxuICAgICAgdGhpcy5hdXRoU2VydmljZS5jb25maWd1cmUoYXV0aENvbmZpZyk7XHJcbiAgICAgIHRoaXMuYXV0aFNlcnZpY2UuaXNzdWVyID0gYXV0aFNldHRpbmdzLmlzc3VlcjtcclxuICAgICAgdGhpcy5hdXRoU2VydmljZS5zdHJpY3REaXNjb3ZlcnlEb2N1bWVudFZhbGlkYXRpb24gPSBmYWxzZTtcclxuICAgICAgdGhpcy5hdXRoU2VydmljZS5za2lwSXNzdWVyQ2hlY2sgPSB0cnVlO1xyXG4gICAgICB0aGlzLmF1dGhTZXJ2aWNlLnRva2VuVmFsaWRhdGlvbkhhbmRsZXIgPSBuZXcgSndrc1ZhbGlkYXRpb25IYW5kbGVyKCk7XHJcbiAgICAgIHRoaXMuYXV0aFNlcnZpY2Uuc2V0dXBBdXRvbWF0aWNTaWxlbnRSZWZyZXNoKHt9LCAnYWNjZXNzX3Rva2VuJyk7XHJcbiAgICAgIHRoaXMuYXV0aFNlcnZpY2UudGltZW91dEZhY3RvciA9IGF1dGhTZXR0aW5ncy50aW1lb3V0RmFjdG9yIHx8IDAuNzU7XHJcbiAgICAgIHRoaXMuYXV0aFNlcnZpY2UucmVzcG9uc2VUeXBlID0gYXV0aFNldHRpbmdzLnJlc3BvbnNlVHlwZSB8fCAnY29kZSc7XHJcblxyXG4gICAgICBpZiAoc2hvdWxkVHJ5TG9naW4pIHtcclxuICAgICAgICB0aGlzLmhhbmRsZVRyeUxvZ2luKGF1dGhTZXR0aW5ncy5hdXRoU2V0T25TdGFydHVwKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyoqIFRoZSB1c2VyIG5hbWUgKi9cclxuICBwdWJsaWMgdXNlck5hbWUoKTogc3RyaW5nIHtcclxuICAgIGxldCBuYW1lID0gJyc7XHJcbiAgICBpZiAodGhpcy5jbGFpbXMuZ2l2ZW5fbmFtZSkge1xyXG4gICAgICBuYW1lICs9IHRoaXMuY2xhaW1zLmdpdmVuX25hbWU7XHJcbiAgICB9XHJcbiAgICBpZiAobmFtZSAmJiB0aGlzLmNsYWltcy5mYW1pbHlfbmFtZSkge1xyXG4gICAgICBuYW1lICs9IGAgJHt0aGlzLmNsYWltcy5mYW1pbHlfbmFtZX1gO1xyXG4gICAgfVxyXG4gICAgZWxzZSBpZiAodGhpcy5jbGFpbXMuZmFtaWx5X25hbWUpIHtcclxuICAgICAgbmFtZSArPSB0aGlzLmNsYWltcy5mYW1pbHlfbmFtZTtcclxuICAgIH1cclxuICAgIHJldHVybiBuYW1lIHx8IHRoaXMuY2xhaW1zLnVwbjtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEF1dGhvcml6ZSBVc2VyLlxyXG4gICAqL1xyXG4gIHB1YmxpYyBhdXRob3JpemVVc2VyKCk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMuYXV0aFNldHRpbmdzKSB7XHJcbiAgICAgIGlmICghdGhpcy5Jc0xvZ2dlZEluKSB7XHJcbiAgICAgICAgaWYgKHRoaXMuY3VzdG9tQXV0aENvbmZpZ1NlcnZpY2UpIHtcclxuICAgICAgICAgIHRoaXMuY3VzdG9tQXV0aENvbmZpZ1NlcnZpY2UuY29uZmlndXJlQXV0aFNldHRpbmdzKCkudGhlbihfID0+IHtcclxuICAgICAgICAgICAgdGhpcy5oYW5kbGVMb2dpbigpO1xyXG4gICAgICAgICAgfSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2Uge1xyXG4gICAgICAgICAgaWYgKHRoaXMuYXV0aFNlcnZpY2UuaXNzdWVyICE9PSB0aGlzLmF1dGhTZXR0aW5ncy5pc3N1ZXIpIHtcclxuICAgICAgICAgICAgdGhpcy5hdXRoU2VydmljZS5pc3N1ZXIgPSB0aGlzLmF1dGhTZXR0aW5ncy5pc3N1ZXI7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICB0aGlzLmhhbmRsZUxvZ2luKCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIGlmICh0aGlzLmh5YnJpZEF1dGhTZXJ2aWNlKSB7XHJcbiAgICAgICAgICB0aGlzLmh5YnJpZEF1dGhTZXJ2aWNlLmV4cGlyZVNlc3Npb24odHJ1ZSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMuYXV0aFNlcnZpY2UubG9nT3V0KCk7XHJcbiAgICAgICAgdGhpcy5hdXRoU3RvcmFnZS5yZW1vdmVJdGVtKCdhY2Nlc3NfdG9rZW4nKTtcclxuICAgICAgICB0aGlzLmlzTG9nZ2VkSW5Ccy5uZXh0KGZhbHNlKTtcclxuICAgICAgICB0aGlzLklzTG9nZ2VkSW4gPSBmYWxzZTtcclxuICAgICAgICByZXR1cm47XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICogSGFuZGxlIExvZ2luXHJcbiAgKiBAcGFyYW0gYXV0aFNldE9uU3RhcnR1cCBJcyBhdXRoIHNldCBvbiBzdGFydHVwIFxyXG4gICovXHJcbiAgcHJpdmF0ZSBoYW5kbGVUcnlMb2dpbihhdXRoU2V0T25TdGFydHVwOiBib29sZWFuKTogdm9pZCB7XHJcbiAgICBpZiAoIWF1dGhTZXRPblN0YXJ0dXApIHtcclxuICAgICAgdGhpcy5hdXRoU2VydmljZS5sb2FkRGlzY292ZXJ5RG9jdW1lbnRBbmRUcnlMb2dpbigpXHJcbiAgICAgICAgLnRoZW4oKCkgPT4ge1xyXG4gICAgICAgICAgY29uc3QgdG9rZW4gPSB0aGlzLmF1dGhTZXJ2aWNlLmdldEFjY2Vzc1Rva2VuKCk7XHJcbiAgICAgICAgICBjb25zdCBpc1ZhbGlkID0gISF0b2tlbjtcclxuICAgICAgICAgIHRoaXMuY2xhaW1zID0gdGhpcy5hdXRoU2VydmljZS5nZXRJZGVudGl0eUNsYWltcygpIGFzIEFjY2Vzc1Rva2VuQ2xhaW1zO1xyXG4gICAgICAgICAgdGhpcy5pc0xvZ2dlZEluQnMubmV4dChpc1ZhbGlkKTtcclxuICAgICAgICAgIHRoaXMuSXNMb2dnZWRJbiA9IGlzVmFsaWQ7XHJcbiAgICAgICAgfSlcclxuICAgICAgICAuY2F0Y2goZSA9PiB7XHJcbiAgICAgICAgICBjb25zb2xlLmVycm9yKGUpO1xyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG4gICAgZWxzZSB7XHJcbiAgICAgIHRoaXMuYXV0aFNlcnZpY2UubG9hZERpc2NvdmVyeURvY3VtZW50KClcclxuICAgICAgICAudGhlbigoKSA9PiB7XHJcbiAgICAgICAgICBjb25zdCB0b2tlbiA9IHRoaXMuYXV0aFNlcnZpY2UuZ2V0QWNjZXNzVG9rZW4oKTtcclxuICAgICAgICAgIGNvbnN0IGlzVmFsaWQgPSAhIXRva2VuO1xyXG4gICAgICAgICAgdGhpcy5jbGFpbXMgPSB0aGlzLmF1dGhTZXJ2aWNlLmdldElkZW50aXR5Q2xhaW1zKCkgYXMgQWNjZXNzVG9rZW5DbGFpbXM7XHJcbiAgICAgICAgICB0aGlzLmlzTG9nZ2VkSW5Ccy5uZXh0KGlzVmFsaWQpO1xyXG4gICAgICAgICAgdGhpcy5Jc0xvZ2dlZEluID0gaXNWYWxpZDtcclxuICAgICAgICB9KVxyXG4gICAgICAgIC5jYXRjaChlID0+IHtcclxuICAgICAgICAgIGNvbnNvbGUuZXJyb3IoZSk7XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKiogSGFuZGxlIExvZ2luICovXHJcbiAgcHJpdmF0ZSBoYW5kbGVMb2dpbigpOiB2b2lkIHtcclxuICAgIHdpbmRvdy5zZXNzaW9uU3RvcmFnZS5zZXRJdGVtKHByZVNpZ25JblJvdXRlU3RvcmFnZUtleSwgd2luZG93LmxvY2F0aW9uLnBhdGhuYW1lLnRvTG93ZXJDYXNlKCkpO1xyXG4gICAgdGhpcy5hdXRoU2VydmljZS5sb2FkRGlzY292ZXJ5RG9jdW1lbnRBbmRMb2dpbigpXHJcbiAgICAgIC50aGVuKGxvZ0luU3VjY2VzcyA9PiB7XHJcbiAgICAgICAgaWYgKGxvZ0luU3VjY2Vzcykge1xyXG4gICAgICAgICAgdGhpcy5pc0xvZ2dlZEluQnMubmV4dCh0cnVlKTtcclxuICAgICAgICAgIHRoaXMuSXNMb2dnZWRJbiA9IHRydWU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KVxyXG4gICAgICAuY2F0Y2goZSA9PiB7XHJcbiAgICAgICAgY29uc29sZS5lcnJvcihlKTtcclxuICAgICAgfSk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -1,43 +0,0 @@
|
|
|
1
|
-
import { Injectable } from '@angular/core';
|
|
2
|
-
import { BehaviorSubject } from 'rxjs';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
/**
|
|
5
|
-
* Service for managing the banner
|
|
6
|
-
*/
|
|
7
|
-
export class BannerService {
|
|
8
|
-
constructor() {
|
|
9
|
-
/** Behavior subject for show banner */
|
|
10
|
-
this.showBanner = new BehaviorSubject(false);
|
|
11
|
-
/** Behavior subject for banner message */
|
|
12
|
-
this.message = new BehaviorSubject(undefined);
|
|
13
|
-
/** Behavior subject for whether to show check mark or not */
|
|
14
|
-
this.showCheckMark = new BehaviorSubject(true);
|
|
15
|
-
this.showBanner$ = this.showBanner.asObservable();
|
|
16
|
-
this.message$ = this.message.asObservable();
|
|
17
|
-
this.showCheckMark$ = this.showCheckMark.asObservable();
|
|
18
|
-
}
|
|
19
|
-
/**
|
|
20
|
-
* Shows the messaage in the banner
|
|
21
|
-
* @param message The banner message
|
|
22
|
-
*/
|
|
23
|
-
showMessage(message, showCheckMark = true) {
|
|
24
|
-
this.showBanner.next(true);
|
|
25
|
-
this.message.next(message);
|
|
26
|
-
this.showCheckMark.next(showCheckMark);
|
|
27
|
-
}
|
|
28
|
-
/**
|
|
29
|
-
* Hide Notification Message
|
|
30
|
-
*/
|
|
31
|
-
hideMessage() {
|
|
32
|
-
this.showBanner.next(false);
|
|
33
|
-
}
|
|
34
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: BannerService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
35
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: BannerService, providedIn: 'root' }); }
|
|
36
|
-
}
|
|
37
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: BannerService, decorators: [{
|
|
38
|
-
type: Injectable,
|
|
39
|
-
args: [{
|
|
40
|
-
providedIn: 'root'
|
|
41
|
-
}]
|
|
42
|
-
}], ctorParameters: () => [] });
|
|
43
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFubmVyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hcm1hdHVyZS9zcmMvbGliL2NvcmUvc2VydmljZXMvYmFubmVyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsZUFBZSxFQUFjLE1BQU0sTUFBTSxDQUFDOztBQUVuRDs7R0FFRztBQUlILE1BQU0sT0FBTyxhQUFhO0lBb0J4QjtRQVRBLHVDQUF1QztRQUMvQixlQUFVLEdBQTZCLElBQUksZUFBZSxDQUFVLEtBQUssQ0FBQyxDQUFDO1FBRW5GLDBDQUEwQztRQUNsQyxZQUFPLEdBQTRCLElBQUksZUFBZSxDQUFTLFNBQVMsQ0FBQyxDQUFDO1FBRWxGLDZEQUE2RDtRQUNyRCxrQkFBYSxHQUE2QixJQUFJLGVBQWUsQ0FBVSxJQUFJLENBQUMsQ0FBQztRQUluRixJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDbEQsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLFlBQVksRUFBRSxDQUFDO1FBQzVDLElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUMxRCxDQUFDO0lBRUQ7OztPQUdHO0lBQ0ksV0FBVyxDQUFDLE9BQWUsRUFBRSxnQkFBeUIsSUFBSTtRQUMvRCxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUMzQixJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUMzQixJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztJQUN6QyxDQUFDO0lBRUQ7O09BRUc7SUFDSSxXQUFXO1FBQ2hCLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzlCLENBQUM7OEdBMUNVLGFBQWE7a0hBQWIsYUFBYSxjQUZaLE1BQU07OzJGQUVQLGFBQWE7a0JBSHpCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcclxuXHJcbi8qKlxyXG4gKiBTZXJ2aWNlIGZvciBtYW5hZ2luZyB0aGUgYmFubmVyXHJcbiAqL1xyXG5ASW5qZWN0YWJsZSh7XHJcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBCYW5uZXJTZXJ2aWNlIHtcclxuXHJcbiAgLyoqIE9ic2VydmFibGUgZm9yIHdoZXRoZXIgdGhlIGJhbm5lciBzaG91bGQgYmUgc2hvd24gKi9cclxuICBwdWJsaWMgc2hvd0Jhbm5lciQ6IE9ic2VydmFibGU8Ym9vbGVhbj47XHJcblxyXG4gIC8qKiBPYnNlcnZhYmxlIGZvciB0aGUgYmFubmVyIG1lc3NhZ2UgKi9cclxuICBwdWJsaWMgbWVzc2FnZSQ6IE9ic2VydmFibGU8c3RyaW5nPjtcclxuXHJcbiAgLyoqIE9ic2VydmFibGUgZm9yIHdoZXRoZXIgb2Ygbm90IHRvIHNob3cgdGhlIGNoZWNrIG1hcmsgb24gdGhlIGJhbm5lciAqL1xyXG4gIHB1YmxpYyBzaG93Q2hlY2tNYXJrJDogT2JzZXJ2YWJsZTxib29sZWFuPjtcclxuXHJcbiAgLyoqIEJlaGF2aW9yIHN1YmplY3QgZm9yIHNob3cgYmFubmVyICovXHJcbiAgcHJpdmF0ZSBzaG93QmFubmVyOiBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KGZhbHNlKTtcclxuXHJcbiAgLyoqIEJlaGF2aW9yIHN1YmplY3QgZm9yIGJhbm5lciBtZXNzYWdlICovXHJcbiAgcHJpdmF0ZSBtZXNzYWdlOiBCZWhhdmlvclN1YmplY3Q8c3RyaW5nPiA9IG5ldyBCZWhhdmlvclN1YmplY3Q8c3RyaW5nPih1bmRlZmluZWQpO1xyXG5cclxuICAvKiogQmVoYXZpb3Igc3ViamVjdCBmb3Igd2hldGhlciB0byBzaG93IGNoZWNrIG1hcmsgb3Igbm90ICovXHJcbiAgcHJpdmF0ZSBzaG93Q2hlY2tNYXJrOiBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KHRydWUpO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICApIHtcclxuICAgIHRoaXMuc2hvd0Jhbm5lciQgPSB0aGlzLnNob3dCYW5uZXIuYXNPYnNlcnZhYmxlKCk7XHJcbiAgICB0aGlzLm1lc3NhZ2UkID0gdGhpcy5tZXNzYWdlLmFzT2JzZXJ2YWJsZSgpO1xyXG4gICAgdGhpcy5zaG93Q2hlY2tNYXJrJCA9IHRoaXMuc2hvd0NoZWNrTWFyay5hc09ic2VydmFibGUoKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFNob3dzIHRoZSBtZXNzYWFnZSBpbiB0aGUgYmFubmVyXHJcbiAgICogQHBhcmFtIG1lc3NhZ2UgVGhlIGJhbm5lciBtZXNzYWdlXHJcbiAgICovXHJcbiAgcHVibGljIHNob3dNZXNzYWdlKG1lc3NhZ2U6IHN0cmluZywgc2hvd0NoZWNrTWFyazogYm9vbGVhbiA9IHRydWUpOiB2b2lkIHtcclxuICAgIHRoaXMuc2hvd0Jhbm5lci5uZXh0KHRydWUpO1xyXG4gICAgdGhpcy5tZXNzYWdlLm5leHQobWVzc2FnZSk7XHJcbiAgICB0aGlzLnNob3dDaGVja01hcmsubmV4dChzaG93Q2hlY2tNYXJrKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEhpZGUgTm90aWZpY2F0aW9uIE1lc3NhZ2UgXHJcbiAgICovXHJcbiAgcHVibGljIGhpZGVNZXNzYWdlKCk6IHZvaWQge1xyXG4gICAgdGhpcy5zaG93QmFubmVyLm5leHQoZmFsc2UpO1xyXG4gIH1cclxuXHJcbn1cclxuIl19
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
import { Injectable } from '@angular/core';
|
|
2
|
-
import { BehaviorSubject } from 'rxjs';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
/** The base config service */
|
|
5
|
-
export class BaseConfigService {
|
|
6
|
-
/** Gets the configurations */
|
|
7
|
-
get config() {
|
|
8
|
-
return this.configBs.value;
|
|
9
|
-
}
|
|
10
|
-
/**
|
|
11
|
-
* sets the configs
|
|
12
|
-
* @param value The new configuration value
|
|
13
|
-
*/
|
|
14
|
-
set config(value) {
|
|
15
|
-
this.configBs.next(value);
|
|
16
|
-
}
|
|
17
|
-
/** Constructs the service */
|
|
18
|
-
constructor() {
|
|
19
|
-
/** The configuration behavior subject */
|
|
20
|
-
this.configBs = new BehaviorSubject(undefined);
|
|
21
|
-
this.config$ = this.configBs.asObservable();
|
|
22
|
-
}
|
|
23
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: BaseConfigService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
24
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: BaseConfigService, providedIn: 'root' }); }
|
|
25
|
-
}
|
|
26
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: BaseConfigService, decorators: [{
|
|
27
|
-
type: Injectable,
|
|
28
|
-
args: [{
|
|
29
|
-
providedIn: 'root'
|
|
30
|
-
}]
|
|
31
|
-
}], ctorParameters: () => [] });
|
|
32
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1jb25maWcuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FybWF0dXJlL3NyYy9saWIvY29yZS9zZXJ2aWNlcy9iYXNlLWNvbmZpZy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLGVBQWUsRUFBYyxNQUFNLE1BQU0sQ0FBQzs7QUFHbkQsOEJBQThCO0FBSTlCLE1BQU0sT0FBZ0IsaUJBQWlCO0lBS3JDLDhCQUE4QjtJQUM5QixJQUFXLE1BQU07UUFDZixPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDO0lBQzdCLENBQUM7SUFFRDs7O09BR0c7SUFDSCxJQUFXLE1BQU0sQ0FBQyxLQUFRO1FBQ3hCLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzVCLENBQUM7SUFLRCw2QkFBNkI7SUFDN0I7UUFwQkEseUNBQXlDO1FBQ3hCLGFBQVEsR0FBdUIsSUFBSSxlQUFlLENBQUksU0FBUyxDQUFDLENBQUM7UUFvQmhGLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUM5QyxDQUFDOzhHQXhCbUIsaUJBQWlCO2tIQUFqQixpQkFBaUIsY0FGekIsTUFBTTs7MkZBRUUsaUJBQWlCO2tCQUh0QyxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IEJhc2VDb25maWcgfSBmcm9tICcuLi9tb2RlbHMvYmFzZS1jb25maWcnO1xyXG5cclxuLyoqIFRoZSBiYXNlIGNvbmZpZyBzZXJ2aWNlICovXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiAncm9vdCdcclxufSlcclxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEJhc2VDb25maWdTZXJ2aWNlPFQgPSBCYXNlQ29uZmlnPiB7XHJcblxyXG4gIC8qKiBUaGUgY29uZmlndXJhdGlvbiBiZWhhdmlvciBzdWJqZWN0ICovXHJcbiAgcHJpdmF0ZSByZWFkb25seSBjb25maWdCczogQmVoYXZpb3JTdWJqZWN0PFQ+ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxUPih1bmRlZmluZWQpO1xyXG5cclxuICAvKiogR2V0cyB0aGUgY29uZmlndXJhdGlvbnMgKi9cclxuICBwdWJsaWMgZ2V0IGNvbmZpZygpOiBUIHtcclxuICAgIHJldHVybiB0aGlzLmNvbmZpZ0JzLnZhbHVlO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogc2V0cyB0aGUgY29uZmlnc1xyXG4gICAqIEBwYXJhbSB2YWx1ZSBUaGUgbmV3IGNvbmZpZ3VyYXRpb24gdmFsdWVcclxuICAgKi9cclxuICBwdWJsaWMgc2V0IGNvbmZpZyh2YWx1ZTogVCkge1xyXG4gICAgdGhpcy5jb25maWdCcy5uZXh0KHZhbHVlKTtcclxuICB9XHJcblxyXG4gIC8qKiBUaGUgY29uZmlndXJhdGlvbiBvYnNlcnZhYmxlICovXHJcbiAgcHVibGljIHJlYWRvbmx5IGNvbmZpZyQ6IE9ic2VydmFibGU8VD47XHJcblxyXG4gIC8qKiBDb25zdHJ1Y3RzIHRoZSBzZXJ2aWNlICovXHJcbiAgY29uc3RydWN0b3IoKSB7XHJcbiAgICB0aGlzLmNvbmZpZyQgPSB0aGlzLmNvbmZpZ0JzLmFzT2JzZXJ2YWJsZSgpO1xyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
/** Custom Authorization Service */
|
|
2
|
-
export class CustomAuthConfigService {
|
|
3
|
-
}
|
|
4
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VzdG9tLWF1dGgtY29uZmlnLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hcm1hdHVyZS9zcmMvbGliL2NvcmUvc2VydmljZXMvY3VzdG9tLWF1dGgtY29uZmlnLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsbUNBQW1DO0FBQ25DLE1BQU0sT0FBZ0IsdUJBQXVCO0NBRzVDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQXV0aENvbmZpZyB9IGZyb20gJ2FuZ3VsYXItb2F1dGgyLW9pZGMnO1xyXG5cclxuLyoqIEN1c3RvbSBBdXRob3JpemF0aW9uIFNlcnZpY2UgKi9cclxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEN1c3RvbUF1dGhDb25maWdTZXJ2aWNlIHtcclxuICAvKiogQ29uZmlndXJlIEF1dGggU2V0dGluZ3MgKi9cclxuICBwdWJsaWMgYWJzdHJhY3QgY29uZmlndXJlQXV0aFNldHRpbmdzKCk6IFByb21pc2U8QXV0aENvbmZpZz5cclxufVxyXG4iXX0=
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import { Injectable } from '@angular/core';
|
|
2
|
-
import { BaseConfigService } from './base-config.service';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
export class DefaultConfigService extends BaseConfigService {
|
|
5
|
-
/** Constructs the service */
|
|
6
|
-
constructor() {
|
|
7
|
-
super();
|
|
8
|
-
}
|
|
9
|
-
;
|
|
10
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: DefaultConfigService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
11
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: DefaultConfigService, providedIn: 'root' }); }
|
|
12
|
-
}
|
|
13
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: DefaultConfigService, decorators: [{
|
|
14
|
-
type: Injectable,
|
|
15
|
-
args: [{
|
|
16
|
-
providedIn: 'root'
|
|
17
|
-
}]
|
|
18
|
-
}], ctorParameters: () => [] });
|
|
19
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVmYXVsdC1jb25maWcuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FybWF0dXJlL3NyYy9saWIvY29yZS9zZXJ2aWNlcy9kZWZhdWx0LWNvbmZpZy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7O0FBSzFELE1BQU0sT0FBTyxvQkFBcUIsU0FBUSxpQkFBaUI7SUFFekQsNkJBQTZCO0lBQzdCO1FBQ0UsS0FBSyxFQUFFLENBQUM7SUFDVixDQUFDO0lBQUEsQ0FBQzs4R0FMUyxvQkFBb0I7a0hBQXBCLG9CQUFvQixjQUZuQixNQUFNOzsyRkFFUCxvQkFBb0I7a0JBSGhDLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBCYXNlQ29uZmlnU2VydmljZSB9IGZyb20gJy4vYmFzZS1jb25maWcuc2VydmljZSc7XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBEZWZhdWx0Q29uZmlnU2VydmljZSBleHRlbmRzIEJhc2VDb25maWdTZXJ2aWNlIHtcclxuXHJcbiAgLyoqIENvbnN0cnVjdHMgdGhlIHNlcnZpY2UgKi9cclxuICBjb25zdHJ1Y3RvcigpIHtcclxuICAgIHN1cGVyKCk7XHJcbiAgfTtcclxufVxyXG4iXX0=
|
|
@@ -1,60 +0,0 @@
|
|
|
1
|
-
import { Inject, Injectable, Optional } from '@angular/core';
|
|
2
|
-
import { federatedModuleConfigStorageKey, FEDERATED_MODULE_ID, WINDOW } from '../models/constants';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
/** The federated module service */
|
|
5
|
-
export class FederatedModuleService {
|
|
6
|
-
/** The federated module configuration */
|
|
7
|
-
get federatedModuleConfig() {
|
|
8
|
-
if (this.federatedModuleId) {
|
|
9
|
-
const configs = this.federatedModuleConfigDict;
|
|
10
|
-
return configs.get(this.federatedModuleId);
|
|
11
|
-
}
|
|
12
|
-
return undefined;
|
|
13
|
-
}
|
|
14
|
-
/** True when application is running as a federated module */
|
|
15
|
-
get isFederatedModule() {
|
|
16
|
-
return !!this.federatedModuleConfig;
|
|
17
|
-
}
|
|
18
|
-
/** Gets the federated module config dictionary */
|
|
19
|
-
get federatedModuleConfigDict() {
|
|
20
|
-
const storageItem = this.window.sessionStorage.getItem(federatedModuleConfigStorageKey);
|
|
21
|
-
if (!storageItem) {
|
|
22
|
-
return undefined;
|
|
23
|
-
}
|
|
24
|
-
const dict = JSON.parse(storageItem);
|
|
25
|
-
const result = new Map();
|
|
26
|
-
Object.keys(dict).forEach(key => {
|
|
27
|
-
result.set(key, dict[key]);
|
|
28
|
-
});
|
|
29
|
-
return result;
|
|
30
|
-
}
|
|
31
|
-
/**
|
|
32
|
-
* Constructs the service
|
|
33
|
-
* @param _window The browser window
|
|
34
|
-
* @param federatedModuleId The federated module id
|
|
35
|
-
*/
|
|
36
|
-
constructor(_window, federatedModuleId) {
|
|
37
|
-
this._window = _window;
|
|
38
|
-
this.federatedModuleId = federatedModuleId;
|
|
39
|
-
this.window = _window || window;
|
|
40
|
-
}
|
|
41
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: FederatedModuleService, deps: [{ token: WINDOW, optional: true }, { token: FEDERATED_MODULE_ID, optional: true }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
42
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: FederatedModuleService, providedIn: 'root' }); }
|
|
43
|
-
}
|
|
44
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: FederatedModuleService, decorators: [{
|
|
45
|
-
type: Injectable,
|
|
46
|
-
args: [{
|
|
47
|
-
providedIn: 'root'
|
|
48
|
-
}]
|
|
49
|
-
}], ctorParameters: () => [{ type: undefined, decorators: [{
|
|
50
|
-
type: Optional
|
|
51
|
-
}, {
|
|
52
|
-
type: Inject,
|
|
53
|
-
args: [WINDOW]
|
|
54
|
-
}] }, { type: undefined, decorators: [{
|
|
55
|
-
type: Optional
|
|
56
|
-
}, {
|
|
57
|
-
type: Inject,
|
|
58
|
-
args: [FEDERATED_MODULE_ID]
|
|
59
|
-
}] }] });
|
|
60
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmVkZXJhdGVkLW1vZHVsZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYXJtYXR1cmUvc3JjL2xpYi9jb3JlL3NlcnZpY2VzL2ZlZGVyYXRlZC1tb2R1bGUuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDN0QsT0FBTyxFQUFFLCtCQUErQixFQUFFLG1CQUFtQixFQUFFLE1BQU0sRUFBRSxNQUFNLHFCQUFxQixDQUFDOztBQUduRyxtQ0FBbUM7QUFJbkMsTUFBTSxPQUFPLHNCQUFzQjtJQUVqQyx5Q0FBeUM7SUFDekMsSUFBVyxxQkFBcUI7UUFDOUIsSUFBSSxJQUFJLENBQUMsaUJBQWlCLEVBQUU7WUFDMUIsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLHlCQUF5QixDQUFDO1lBQy9DLE9BQU8sT0FBTyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsQ0FBQztTQUM1QztRQUNELE9BQU8sU0FBUyxDQUFDO0lBQ25CLENBQUM7SUFFRCw2REFBNkQ7SUFDN0QsSUFBVyxpQkFBaUI7UUFDMUIsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLHFCQUFxQixDQUFBO0lBQ3JDLENBQUM7SUFFRCxrREFBa0Q7SUFDbEQsSUFBWSx5QkFBeUI7UUFDbkMsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxjQUFjLENBQUMsT0FBTyxDQUFDLCtCQUErQixDQUFDLENBQUM7UUFDeEYsSUFBSSxDQUFDLFdBQVcsRUFBRTtZQUNoQixPQUFPLFNBQVMsQ0FBQztTQUNsQjtRQUNELE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUEyQyxDQUFDO1FBQy9FLE1BQU0sTUFBTSxHQUFHLElBQUksR0FBRyxFQUFpQyxDQUFDO1FBQ3hELE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxFQUFFO1lBQzlCLE1BQU0sQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO1FBQzdCLENBQUMsQ0FBQyxDQUFDO1FBQ0gsT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQztJQUtEOzs7O09BSUc7SUFDSCxZQUMrQyxPQUFZLEVBQ0EsaUJBQXlCO1FBRHJDLFlBQU8sR0FBUCxPQUFPLENBQUs7UUFDQSxzQkFBaUIsR0FBakIsaUJBQWlCLENBQVE7UUFFbEYsSUFBSSxDQUFDLE1BQU0sR0FBRyxPQUFPLElBQUksTUFBTSxDQUFDO0lBQ2xDLENBQUM7OEdBM0NVLHNCQUFzQixrQkF1Q1gsTUFBTSw2QkFDTixtQkFBbUI7a0hBeEM5QixzQkFBc0IsY0FGckIsTUFBTTs7MkZBRVAsc0JBQXNCO2tCQUhsQyxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQjs7MEJBd0NJLFFBQVE7OzBCQUFJLE1BQU07MkJBQUMsTUFBTTs7MEJBQ3pCLFFBQVE7OzBCQUFJLE1BQU07MkJBQUMsbUJBQW1CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlLCBPcHRpb25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBmZWRlcmF0ZWRNb2R1bGVDb25maWdTdG9yYWdlS2V5LCBGRURFUkFURURfTU9EVUxFX0lELCBXSU5ET1cgfSBmcm9tICcuLi9tb2RlbHMvY29uc3RhbnRzJztcclxuaW1wb3J0IHsgRmVkZXJhdGVkTW9kdWxlQ29uZmlnIH0gZnJvbSAnLi4vbW9kZWxzL2ZlZGVyYXRlZC1tb2R1bGUtY29uZmlnJztcclxuXHJcbi8qKiBUaGUgZmVkZXJhdGVkIG1vZHVsZSBzZXJ2aWNlICovXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiAncm9vdCdcclxufSlcclxuZXhwb3J0IGNsYXNzIEZlZGVyYXRlZE1vZHVsZVNlcnZpY2Uge1xyXG5cclxuICAvKiogVGhlIGZlZGVyYXRlZCBtb2R1bGUgY29uZmlndXJhdGlvbiAqL1xyXG4gIHB1YmxpYyBnZXQgZmVkZXJhdGVkTW9kdWxlQ29uZmlnKCk6IEZlZGVyYXRlZE1vZHVsZUNvbmZpZyB7XHJcbiAgICBpZiAodGhpcy5mZWRlcmF0ZWRNb2R1bGVJZCkge1xyXG4gICAgICBjb25zdCBjb25maWdzID0gdGhpcy5mZWRlcmF0ZWRNb2R1bGVDb25maWdEaWN0O1xyXG4gICAgICByZXR1cm4gY29uZmlncy5nZXQodGhpcy5mZWRlcmF0ZWRNb2R1bGVJZCk7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xyXG4gIH1cclxuXHJcbiAgLyoqIFRydWUgd2hlbiBhcHBsaWNhdGlvbiBpcyBydW5uaW5nIGFzIGEgZmVkZXJhdGVkIG1vZHVsZSAqL1xyXG4gIHB1YmxpYyBnZXQgaXNGZWRlcmF0ZWRNb2R1bGUoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gISF0aGlzLmZlZGVyYXRlZE1vZHVsZUNvbmZpZ1xyXG4gIH1cclxuXHJcbiAgLyoqIEdldHMgdGhlIGZlZGVyYXRlZCBtb2R1bGUgY29uZmlnIGRpY3Rpb25hcnkgKi9cclxuICBwcml2YXRlIGdldCBmZWRlcmF0ZWRNb2R1bGVDb25maWdEaWN0KCk6IE1hcDxzdHJpbmcsIEZlZGVyYXRlZE1vZHVsZUNvbmZpZz4ge1xyXG4gICAgY29uc3Qgc3RvcmFnZUl0ZW0gPSB0aGlzLndpbmRvdy5zZXNzaW9uU3RvcmFnZS5nZXRJdGVtKGZlZGVyYXRlZE1vZHVsZUNvbmZpZ1N0b3JhZ2VLZXkpO1xyXG4gICAgaWYgKCFzdG9yYWdlSXRlbSkge1xyXG4gICAgICByZXR1cm4gdW5kZWZpbmVkO1xyXG4gICAgfVxyXG4gICAgY29uc3QgZGljdCA9IEpTT04ucGFyc2Uoc3RvcmFnZUl0ZW0pIGFzIHtba2V5OiBzdHJpbmddOiBGZWRlcmF0ZWRNb2R1bGVDb25maWd9O1xyXG4gICAgY29uc3QgcmVzdWx0ID0gbmV3IE1hcDxzdHJpbmcsIEZlZGVyYXRlZE1vZHVsZUNvbmZpZz4oKTtcclxuICAgIE9iamVjdC5rZXlzKGRpY3QpLmZvckVhY2goa2V5ID0+IHtcclxuICAgICAgcmVzdWx0LnNldChrZXksIGRpY3Rba2V5XSk7XHJcbiAgICB9KTtcclxuICAgIHJldHVybiByZXN1bHQ7XHJcbiAgfVxyXG5cclxuICAvKiogVGhlIHdpbmRvdyBpbnRlcmZhY2UgKi9cclxuICBwcml2YXRlIHJlYWRvbmx5IHdpbmRvdzogV2luZG93XHJcblxyXG4gIC8qKlxyXG4gICAqIENvbnN0cnVjdHMgdGhlIHNlcnZpY2VcclxuICAgKiBAcGFyYW0gX3dpbmRvdyBUaGUgYnJvd3NlciB3aW5kb3dcclxuICAgKiBAcGFyYW0gZmVkZXJhdGVkTW9kdWxlSWQgVGhlIGZlZGVyYXRlZCBtb2R1bGUgaWRcclxuICAgKi9cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIEBPcHRpb25hbCgpIEBJbmplY3QoV0lORE9XKSBwcml2YXRlIHJlYWRvbmx5IF93aW5kb3c6IGFueSxcclxuICAgIEBPcHRpb25hbCgpIEBJbmplY3QoRkVERVJBVEVEX01PRFVMRV9JRCkgcHVibGljIHJlYWRvbmx5IGZlZGVyYXRlZE1vZHVsZUlkOiBzdHJpbmdcclxuICApIHtcclxuICAgIHRoaXMud2luZG93ID0gX3dpbmRvdyB8fCB3aW5kb3c7XHJcbiAgfVxyXG59XHJcbiJdfQ==
|