@hmcts/rpx-xui-common-lib 2.1.0-angular-upgrade-11 → 2.1.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/README.md +1 -1
- package/esm2022/hmcts-rpx-xui-common-lib.mjs +5 -0
- package/esm2022/lib/components/accessibility/accessibility.component.mjs +833 -0
- package/esm2022/lib/components/checkbox-list/checkbox-list.component.mjs +232 -0
- package/esm2022/lib/components/contact-details/contact-details.component.mjs +123 -0
- package/esm2022/lib/components/cookie-banner/cookie-banner.component.mjs +151 -0
- package/esm2022/lib/components/due-date/due-date.component.mjs +141 -0
- package/esm2022/lib/components/exui-main-wrapper/exui-page-wrapper.component.mjs +80 -0
- package/esm2022/lib/components/find-location/find-location.component.mjs +220 -0
- package/esm2022/lib/components/find-person/find-person.component.mjs +234 -0
- package/esm2022/lib/components/find-service/find-service.component.mjs +193 -0
- package/esm2022/lib/components/find-task-name/find-task-name.component.mjs +200 -0
- package/esm2022/lib/components/generic-filter/generic-filter-utils.mjs +21 -0
- package/esm2022/lib/components/generic-filter/generic-filter.component.mjs +1224 -0
- package/esm2022/lib/components/hmcts-session-dialog/hmcts-session-dialog.component.mjs +56 -0
- package/esm2022/lib/components/invite-user-form/invite-user-form.component.mjs +51 -0
- package/esm2022/lib/components/invite-user-permissions/invite-user-permission.component.mjs +54 -0
- package/esm2022/lib/components/loading-spinner/loading-spinner.component.mjs +33 -0
- package/esm2022/lib/components/pagination/pagination.component.mjs +92 -0
- package/esm2022/lib/components/public_api.mjs +39 -0
- package/esm2022/lib/components/search-judicials/search-judicials.component.mjs +185 -0
- package/esm2022/lib/components/search-location/search-location.component.mjs +240 -0
- package/esm2022/lib/components/search-service/search-service.component.mjs +94 -0
- package/esm2022/lib/components/search-venue/search-venue.component.mjs +188 -0
- package/esm2022/lib/components/selected-case/selected-case.component.mjs +381 -0
- package/esm2022/lib/components/selected-case-confirm/selected-case-confirm.component.mjs +135 -0
- package/esm2022/lib/components/selected-case-list/selected-case-list.component.mjs +98 -0
- package/esm2022/lib/components/service-message/service-message.component.mjs +62 -0
- package/esm2022/lib/components/service-messages/service-messages.component.mjs +165 -0
- package/esm2022/lib/components/share-case/share-case.component.mjs +427 -0
- package/esm2022/lib/components/share-case-confirm/share-case-confirm.component.mjs +85 -0
- package/esm2022/lib/components/tab/tab.component.mjs +40 -0
- package/esm2022/lib/components/tc-confirm/tc-confirm.component.mjs +66 -0
- package/esm2022/lib/components/terms-and-conditions/tc-display/tc-display-html/tc-display-html.component.mjs +17 -0
- package/esm2022/lib/components/terms-and-conditions/tc-display/tc-display-plain/tc-display-plain.component.mjs +17 -0
- package/esm2022/lib/components/terms-and-conditions/terms-and-conditions.component.mjs +58 -0
- package/esm2022/lib/components/user-details/user-details.component.mjs +276 -0
- package/esm2022/lib/components/user-list/user-list.component.mjs +100 -0
- package/esm2022/lib/components/user-select/user-select.component.mjs +94 -0
- package/esm2022/lib/components/write-address/write-address.component.mjs +342 -0
- package/esm2022/lib/components/write-address-inputs/write-address-inputs.component.mjs +165 -0
- package/esm2022/lib/directives/feature-toggle/feature-toggle.directive.mjs +41 -0
- package/esm2022/lib/directives/let/let.directive.mjs +29 -0
- package/esm2022/lib/exui-common-lib.module.mjs +313 -0
- package/esm2022/lib/gov-ui/components/gov-uk-checkbox/gov-uk-checkbox.component.mjs +55 -0
- package/esm2022/lib/gov-ui/components/gov-uk-checkboxes/gov-uk-checkboxes.component.mjs +137 -0
- package/esm2022/lib/gov-ui/components/gov-uk-date/gov-uk-date.component.mjs +127 -0
- package/esm2022/lib/gov-ui/components/gov-uk-error-message/gov-uk-error-message.component.mjs +46 -0
- package/esm2022/lib/gov-ui/components/gov-uk-fieldset/gov-uk-fieldset.component.mjs +79 -0
- package/esm2022/lib/gov-ui/components/gov-uk-file-upload/gov-uk-file-upload.component.mjs +79 -0
- package/esm2022/lib/gov-ui/components/gov-uk-form-group-wrapper/gov-uk-form-group-wrapper.component.mjs +45 -0
- package/esm2022/lib/gov-ui/components/gov-uk-input/gov-uk-input.component.mjs +71 -0
- package/esm2022/lib/gov-ui/components/gov-uk-label/gov-uk-label.component.mjs +84 -0
- package/esm2022/lib/gov-ui/components/gov-uk-radio/gov-uk-radio.component.mjs +48 -0
- package/esm2022/lib/gov-ui/components/gov-uk-radios/gov-uk-radios.component.mjs +42 -0
- package/esm2022/lib/gov-ui/components/gov-uk-select/gov-uk-select.component.mjs +80 -0
- package/esm2022/lib/gov-ui/components/gov-uk-table/gov-uk-table.component.mjs +185 -0
- package/esm2022/lib/gov-ui/components/gov-uk-textarea/gov-uk-textarea.component.mjs +57 -0
- package/esm2022/lib/gov-ui/components/hmcts-banner/hmcts-banner-info.interface.mjs +2 -0
- package/esm2022/lib/gov-ui/components/hmcts-banner/hmcts-banner.component.mjs +111 -0
- package/esm2022/lib/gov-ui/components/hmcts-error-summary/hmcts-error-summary.component.mjs +140 -0
- package/esm2022/lib/gov-ui/components/hmcts-identity-bar/hmcts-identity-bar.component.mjs +34 -0
- package/esm2022/lib/gov-ui/components/hmcts-main-wrapper/hmcts-main-wrapper.component.mjs +129 -0
- package/esm2022/lib/gov-ui/components/hmcts-pagination/hmcts-pagination.component.mjs +204 -0
- package/esm2022/lib/gov-ui/components/hmcts-primary-navigation/hmcts-primary-navigation.component.mjs +60 -0
- package/esm2022/lib/gov-ui/components/hmcts-sub-navigation/hmcts-sub-navigation.component.mjs +58 -0
- package/esm2022/lib/gov-ui/directives/remove-host.directive.mjs +30 -0
- package/esm2022/lib/gov-ui/gov-ui.service.mjs +14 -0
- package/esm2022/lib/gov-ui/models/checkboxes-model.mjs +2 -0
- package/{esm2015/lib/gov-ui/models/gov-ui-config-model.js → esm2022/lib/gov-ui/models/gov-ui-config-model.mjs} +1 -1
- package/{esm2015/lib/gov-ui/models/public_api.js → esm2022/lib/gov-ui/models/public_api.mjs} +1 -2
- package/esm2022/lib/gov-ui/models/radio-buttons.model.mjs +2 -0
- package/esm2022/lib/gov-ui/util/helpers/html-templates.helper.mjs +22 -0
- package/{esm2015/lib/gov-ui/validators/checkboxes-be-checked.validator.js → esm2022/lib/gov-ui/validators/checkboxes-be-checked.validator.mjs} +1 -1
- package/{esm2015/lib/gov-ui/validators/date.validator.js → esm2022/lib/gov-ui/validators/date.validator.mjs} +1 -1
- package/esm2022/lib/gov-ui/validators/radio-group.validator.mjs +15 -0
- package/esm2022/lib/models/address-message.enum.mjs +11 -0
- package/esm2022/lib/models/address-option.model.mjs +21 -0
- package/esm2022/lib/models/address.model.mjs +4 -0
- package/esm2022/lib/models/case-share.model.mjs +7 -0
- package/{esm2015/lib/models/contact-details.model.js → esm2022/lib/models/contact-details.model.mjs} +1 -1
- package/esm2022/lib/models/feature-user.mjs +5 -0
- package/esm2022/lib/models/filter.model.mjs +3 -0
- package/esm2022/lib/models/index.mjs +19 -0
- package/esm2022/lib/models/location.model.mjs +7 -0
- package/esm2022/lib/models/person.model.mjs +19 -0
- package/{esm2015/lib/models/public_api.js → esm2022/lib/models/public_api.mjs} +2 -1
- package/{esm2015/lib/models/search-options.model.js → esm2022/lib/models/search-options.model.mjs} +1 -1
- package/esm2022/lib/models/service-message.model.mjs +2 -0
- package/esm2022/lib/models/task-name.model.mjs +2 -0
- package/esm2022/lib/models/user-access-type.model.mjs +2 -0
- package/esm2022/lib/models/user-details.model.mjs +2 -0
- package/esm2022/lib/pipes/capitalize/capitalize.pipe.mjs +15 -0
- package/esm2022/lib/pipes/index.mjs +2 -0
- package/esm2022/lib/services/address/address-parser.mjs +76 -0
- package/esm2022/lib/services/address/address-type.enum.mjs +7 -0
- package/esm2022/lib/services/address/address.service.mjs +55 -0
- package/esm2022/lib/services/case-sharing-state/case-sharing-state.service.mjs +170 -0
- package/esm2022/lib/services/cookie/cookie.service.mjs +48 -0
- package/esm2022/lib/services/feature-toggle/feature-toggle.guard.mjs +37 -0
- package/esm2022/lib/services/feature-toggle/feature-toggle.service.mjs +33 -0
- package/esm2022/lib/services/feature-toggle/launch-darkly.service.mjs +65 -0
- package/esm2022/lib/services/filter/filter.service.mjs +95 -0
- package/esm2022/lib/services/find-person/find-person.service.mjs +92 -0
- package/esm2022/lib/services/google-analytics/google-analytics.service.mjs +73 -0
- package/esm2022/lib/services/google-tag-manager/google-tag-manager.service.mjs +86 -0
- package/{esm2015/lib/services/loading/loading.service.js → esm2022/lib/services/loading/loading.service.mjs} +8 -6
- package/esm2022/lib/services/locations/location.service.mjs +38 -0
- package/{esm2015/lib/services/manage-session/manage-session.services.js → esm2022/lib/services/manage-session/manage-session.services.mjs} +8 -10
- package/esm2022/lib/services/public-api.mjs +18 -0
- package/esm2022/lib/services/ref-data/index.mjs +4 -0
- package/esm2022/lib/services/ref-data/models/ref-data-htmcs-service.model.mjs +2 -0
- package/esm2022/lib/services/ref-data/models/ref-data-region.model.mjs +2 -0
- package/esm2022/lib/services/ref-data/ref-data-data-access/models/ref-data-locations-by-service-code-response.model.mjs +2 -0
- package/esm2022/lib/services/ref-data/ref-data-data-access/ref-data-data-access.service.mjs +33 -0
- package/esm2022/lib/services/ref-data/ref-data.service.mjs +34 -0
- package/esm2022/lib/services/role-guard/role.guard.mjs +43 -0
- package/esm2022/lib/services/role-guard/role.service.mjs +22 -0
- package/esm2022/lib/services/storage/session-storage/session-storage.service.mjs +43 -0
- package/esm2022/lib/services/task-name/task-name.service.mjs +35 -0
- package/esm2022/lib/services/timeout-notifications/timeout-notifications.service.mjs +103 -0
- package/{esm2015/public-api.js → esm2022/public-api.mjs} +2 -1
- package/fesm2022/hmcts-rpx-xui-common-lib.mjs +10378 -0
- package/fesm2022/hmcts-rpx-xui-common-lib.mjs.map +1 -0
- package/index.d.ts +5 -0
- package/lib/components/accessibility/accessibility.component.d.ts +7 -1
- package/lib/components/checkbox-list/checkbox-list.component.d.ts +8 -2
- package/lib/components/contact-details/contact-details.component.d.ts +3 -0
- package/lib/components/cookie-banner/cookie-banner.component.d.ts +5 -1
- package/lib/components/due-date/due-date.component.d.ts +8 -2
- package/lib/components/exui-main-wrapper/exui-page-wrapper.component.d.ts +3 -0
- package/lib/components/find-location/find-location.component.d.ts +13 -6
- package/lib/components/find-person/find-person.component.d.ts +5 -2
- package/lib/components/find-service/find-service.component.d.ts +29 -0
- package/lib/components/find-task-name/find-task-name.component.d.ts +44 -0
- package/lib/components/generic-filter/generic-filter-utils.d.ts +2 -5
- package/lib/components/generic-filter/generic-filter.component.d.ts +25 -6
- package/lib/components/hmcts-session-dialog/hmcts-session-dialog.component.d.ts +3 -0
- package/lib/components/invite-user-form/invite-user-form.component.d.ts +3 -0
- package/lib/components/invite-user-permissions/invite-user-permission.component.d.ts +3 -0
- package/lib/components/loading-spinner/loading-spinner.component.d.ts +8 -1
- package/lib/components/pagination/pagination.component.d.ts +3 -0
- package/lib/components/public_api.d.ts +6 -0
- package/lib/components/search-judicials/search-judicials.component.d.ts +3 -0
- package/lib/components/search-location/search-location.component.d.ts +26 -18
- package/lib/components/search-service/search-service.component.d.ts +20 -0
- package/lib/components/search-venue/search-venue.component.d.ts +3 -1
- package/lib/components/selected-case/selected-case.component.d.ts +4 -1
- package/lib/components/selected-case-confirm/selected-case-confirm.component.d.ts +3 -0
- package/lib/components/selected-case-list/selected-case-list.component.d.ts +4 -0
- package/lib/components/service-message/service-message.component.d.ts +9 -4
- package/lib/components/service-messages/service-messages.component.d.ts +15 -5
- package/lib/components/share-case/share-case.component.d.ts +41 -2
- package/lib/components/share-case-confirm/share-case-confirm.component.d.ts +3 -0
- package/lib/components/tab/tab.component.d.ts +3 -0
- package/lib/components/tc-confirm/tc-confirm.component.d.ts +3 -0
- package/lib/components/terms-and-conditions/tc-display/tc-display-html/tc-display-html.component.d.ts +3 -0
- package/lib/components/terms-and-conditions/tc-display/tc-display-plain/tc-display-plain.component.d.ts +3 -0
- package/lib/components/terms-and-conditions/terms-and-conditions.component.d.ts +3 -0
- package/lib/components/user-details/user-details.component.d.ts +4 -0
- package/lib/components/user-list/user-list.component.d.ts +3 -0
- package/lib/components/user-select/user-select.component.d.ts +5 -3
- package/lib/components/write-address/write-address.component.d.ts +45 -0
- package/lib/components/write-address-inputs/write-address-inputs.component.d.ts +16 -0
- package/lib/directives/feature-toggle/feature-toggle.directive.d.ts +3 -0
- package/lib/directives/let/let.directive.d.ts +3 -0
- package/lib/exui-common-lib.module.d.ts +83 -4
- package/lib/gov-ui/components/gov-uk-checkbox/gov-uk-checkbox.component.d.ts +3 -0
- package/lib/gov-ui/components/gov-uk-checkboxes/gov-uk-checkboxes.component.d.ts +17 -5
- package/lib/gov-ui/components/gov-uk-date/gov-uk-date.component.d.ts +3 -0
- package/lib/gov-ui/components/gov-uk-error-message/gov-uk-error-message.component.d.ts +3 -0
- package/lib/gov-ui/components/gov-uk-fieldset/gov-uk-fieldset.component.d.ts +3 -0
- package/lib/gov-ui/components/gov-uk-file-upload/gov-uk-file-upload.component.d.ts +3 -0
- package/lib/gov-ui/components/gov-uk-form-group-wrapper/gov-uk-form-group-wrapper.component.d.ts +3 -0
- package/lib/gov-ui/components/gov-uk-input/gov-uk-input.component.d.ts +4 -2
- package/lib/gov-ui/components/gov-uk-label/gov-uk-label.component.d.ts +4 -0
- package/lib/gov-ui/components/gov-uk-radio/gov-uk-radio.component.d.ts +3 -0
- package/lib/gov-ui/components/gov-uk-radios/gov-uk-radios.component.d.ts +5 -2
- package/lib/gov-ui/components/gov-uk-select/gov-uk-select.component.d.ts +3 -0
- package/lib/gov-ui/components/gov-uk-table/gov-uk-table.component.d.ts +3 -0
- package/lib/gov-ui/components/gov-uk-textarea/gov-uk-textarea.component.d.ts +3 -0
- package/lib/gov-ui/components/hmcts-banner/hmcts-banner-info.interface.d.ts +7 -0
- package/lib/gov-ui/components/hmcts-banner/hmcts-banner.component.d.ts +7 -2
- package/lib/gov-ui/components/hmcts-error-summary/hmcts-error-summary.component.d.ts +3 -0
- package/lib/gov-ui/components/hmcts-identity-bar/hmcts-identity-bar.component.d.ts +3 -0
- package/lib/gov-ui/components/hmcts-main-wrapper/hmcts-main-wrapper.component.d.ts +6 -3
- package/lib/gov-ui/components/hmcts-pagination/hmcts-pagination.component.d.ts +3 -0
- package/lib/gov-ui/components/hmcts-primary-navigation/hmcts-primary-navigation.component.d.ts +3 -0
- package/lib/gov-ui/components/hmcts-sub-navigation/hmcts-sub-navigation.component.d.ts +3 -0
- package/lib/gov-ui/directives/remove-host.directive.d.ts +3 -0
- package/lib/gov-ui/gov-ui.service.d.ts +3 -0
- package/lib/gov-ui/models/checkboxes-model.d.ts +4 -7
- package/lib/gov-ui/models/gov-ui-config-model.d.ts +2 -0
- package/lib/gov-ui/models/public_api.d.ts +0 -1
- package/lib/gov-ui/models/radio-buttons.model.d.ts +9 -0
- package/lib/models/address-message.enum.d.ts +9 -0
- package/lib/models/address-option.model.d.ts +9 -0
- package/lib/models/address.model.d.ts +9 -0
- package/lib/models/case-share.model.d.ts +5 -0
- package/lib/models/contact-details.model.d.ts +4 -0
- package/lib/models/feature-user.d.ts +4 -6
- package/lib/models/filter.model.d.ts +45 -9
- package/lib/models/index.d.ts +5 -0
- package/lib/models/location.model.d.ts +22 -11
- package/lib/models/person.model.d.ts +3 -0
- package/lib/models/public_api.d.ts +1 -0
- package/lib/models/search-options.model.d.ts +1 -1
- package/lib/models/service-message.model.d.ts +8 -0
- package/lib/models/task-name.model.d.ts +4 -0
- package/lib/models/user-access-type.model.d.ts +6 -0
- package/lib/models/user-details.model.d.ts +2 -0
- package/lib/pipes/capitalize/capitalize.pipe.d.ts +7 -0
- package/lib/pipes/index.d.ts +1 -0
- package/lib/services/address/address-parser.d.ts +17 -0
- package/lib/services/address/address-type.enum.d.ts +5 -0
- package/lib/services/address/address.service.d.ts +15 -0
- package/lib/services/case-sharing-state/case-sharing-state.service.d.ts +4 -1
- package/lib/services/cookie/cookie.service.d.ts +3 -0
- package/lib/services/feature-toggle/feature-toggle.guard.d.ts +8 -2
- package/lib/services/feature-toggle/feature-toggle.service.d.ts +4 -0
- package/lib/services/feature-toggle/launch-darkly.service.d.ts +14 -10
- package/lib/services/filter/filter.service.d.ts +6 -0
- package/lib/services/find-person/find-person.service.d.ts +5 -2
- package/lib/services/google-analytics/google-analytics.service.d.ts +4 -1
- package/lib/services/google-tag-manager/google-tag-manager.service.d.ts +5 -1
- package/lib/services/loading/loading.service.d.ts +3 -0
- package/lib/services/locations/location.service.d.ts +5 -2
- package/lib/services/manage-session/manage-session.services.d.ts +3 -0
- package/lib/services/public-api.d.ts +2 -0
- package/lib/services/ref-data/index.d.ts +3 -0
- package/lib/services/ref-data/models/ref-data-htmcs-service.model.d.ts +13 -0
- package/lib/services/ref-data/models/ref-data-region.model.d.ts +4 -0
- package/lib/services/ref-data/ref-data-data-access/models/ref-data-locations-by-service-code-response.model.d.ts +8 -0
- package/lib/services/ref-data/ref-data-data-access/ref-data-data-access.service.d.ts +18 -0
- package/lib/services/ref-data/ref-data.service.d.ts +17 -0
- package/lib/services/role-guard/role.guard.d.ts +7 -3
- package/lib/services/role-guard/role.service.d.ts +8 -4
- package/lib/services/{session-storage → storage/session-storage}/session-storage.service.d.ts +3 -0
- package/lib/services/task-name/task-name.service.d.ts +17 -0
- package/lib/services/timeout-notifications/timeout-notifications.service.d.ts +8 -2
- package/package.json +21 -11
- package/public-api.d.ts +1 -0
- package/bundles/hmcts-rpx-xui-common-lib.umd.js +0 -4893
- package/bundles/hmcts-rpx-xui-common-lib.umd.js.map +0 -1
- package/bundles/hmcts-rpx-xui-common-lib.umd.min.js +0 -2
- package/bundles/hmcts-rpx-xui-common-lib.umd.min.js.map +0 -1
- package/esm2015/hmcts-rpx-xui-common-lib.js +0 -68
- package/esm2015/lib/components/accessibility/accessibility.component.js +0 -14
- package/esm2015/lib/components/checkbox-list/checkbox-list.component.js +0 -177
- package/esm2015/lib/components/contact-details/contact-details.component.js +0 -17
- package/esm2015/lib/components/cookie-banner/cookie-banner.component.js +0 -68
- package/esm2015/lib/components/due-date/due-date.component.js +0 -115
- package/esm2015/lib/components/exui-main-wrapper/exui-page-wrapper.component.js +0 -28
- package/esm2015/lib/components/find-location/find-location.component.js +0 -120
- package/esm2015/lib/components/find-person/find-person.component.js +0 -118
- package/esm2015/lib/components/generic-filter/generic-filter-utils.js +0 -21
- package/esm2015/lib/components/generic-filter/generic-filter.component.js +0 -381
- package/esm2015/lib/components/hmcts-session-dialog/hmcts-session-dialog.component.js +0 -27
- package/esm2015/lib/components/invite-user-form/invite-user-form.component.js +0 -25
- package/esm2015/lib/components/invite-user-permissions/invite-user-permission.component.js +0 -25
- package/esm2015/lib/components/loading-spinner/loading-spinner.component.js +0 -18
- package/esm2015/lib/components/pagination/pagination.component.js +0 -28
- package/esm2015/lib/components/public_api.js +0 -33
- package/esm2015/lib/components/search-judicials/search-judicials.component.js +0 -126
- package/esm2015/lib/components/search-location/search-location.component.js +0 -114
- package/esm2015/lib/components/search-venue/search-venue.component.js +0 -123
- package/esm2015/lib/components/selected-case/selected-case.component.js +0 -160
- package/esm2015/lib/components/selected-case-confirm/selected-case-confirm.component.js +0 -36
- package/esm2015/lib/components/selected-case-list/selected-case-list.component.js +0 -45
- package/esm2015/lib/components/service-message/service-message.component.js +0 -22
- package/esm2015/lib/components/service-messages/service-messages.component.js +0 -48
- package/esm2015/lib/components/share-case/share-case.component.js +0 -91
- package/esm2015/lib/components/share-case-confirm/share-case-confirm.component.js +0 -34
- package/esm2015/lib/components/tab/tab.component.js +0 -21
- package/esm2015/lib/components/tc-confirm/tc-confirm.component.js +0 -22
- package/esm2015/lib/components/terms-and-conditions/tc-display/tc-display-html/tc-display-html.component.js +0 -13
- package/esm2015/lib/components/terms-and-conditions/tc-display/tc-display-plain/tc-display-plain.component.js +0 -13
- package/esm2015/lib/components/terms-and-conditions/terms-and-conditions.component.js +0 -16
- package/esm2015/lib/components/user-details/user-details.component.js +0 -41
- package/esm2015/lib/components/user-list/user-list.component.js +0 -33
- package/esm2015/lib/components/user-select/user-select.component.js +0 -58
- package/esm2015/lib/directives/feature-toggle/feature-toggle.directive.js +0 -42
- package/esm2015/lib/directives/let/let.directive.js +0 -30
- package/esm2015/lib/exui-common-lib.module.js +0 -156
- package/esm2015/lib/gov-ui/components/gov-uk-checkbox/gov-uk-checkbox.component.js +0 -31
- package/esm2015/lib/gov-ui/components/gov-uk-checkboxes/gov-uk-checkboxes.component.js +0 -21
- package/esm2015/lib/gov-ui/components/gov-uk-date/gov-uk-date.component.js +0 -64
- package/esm2015/lib/gov-ui/components/gov-uk-error-message/gov-uk-error-message.component.js +0 -22
- package/esm2015/lib/gov-ui/components/gov-uk-fieldset/gov-uk-fieldset.component.js +0 -28
- package/esm2015/lib/gov-ui/components/gov-uk-file-upload/gov-uk-file-upload.component.js +0 -35
- package/esm2015/lib/gov-ui/components/gov-uk-form-group-wrapper/gov-uk-form-group-wrapper.component.js +0 -23
- package/esm2015/lib/gov-ui/components/gov-uk-input/gov-uk-input.component.js +0 -34
- package/esm2015/lib/gov-ui/components/gov-uk-label/gov-uk-label.component.js +0 -21
- package/esm2015/lib/gov-ui/components/gov-uk-radio/gov-uk-radio.component.js +0 -33
- package/esm2015/lib/gov-ui/components/gov-uk-radios/gov-uk-radios.component.js +0 -21
- package/esm2015/lib/gov-ui/components/gov-uk-select/gov-uk-select.component.js +0 -27
- package/esm2015/lib/gov-ui/components/gov-uk-table/gov-uk-table.component.js +0 -39
- package/esm2015/lib/gov-ui/components/gov-uk-textarea/gov-uk-textarea.component.js +0 -27
- package/esm2015/lib/gov-ui/components/hmcts-banner/hmcts-banner.component.js +0 -23
- package/esm2015/lib/gov-ui/components/hmcts-error-summary/hmcts-error-summary.component.js +0 -48
- package/esm2015/lib/gov-ui/components/hmcts-identity-bar/hmcts-identity-bar.component.js +0 -19
- package/esm2015/lib/gov-ui/components/hmcts-main-wrapper/hmcts-main-wrapper.component.js +0 -41
- package/esm2015/lib/gov-ui/components/hmcts-pagination/hmcts-pagination.component.js +0 -28
- package/esm2015/lib/gov-ui/components/hmcts-primary-navigation/hmcts-primary-navigation.component.js +0 -23
- package/esm2015/lib/gov-ui/components/hmcts-sub-navigation/hmcts-sub-navigation.component.js +0 -15
- package/esm2015/lib/gov-ui/directives/remove-host.directive.js +0 -29
- package/esm2015/lib/gov-ui/gov-ui.service.js +0 -13
- package/esm2015/lib/gov-ui/models/banner-data-model.js +0 -2
- package/esm2015/lib/gov-ui/models/checkboxes-model.js +0 -2
- package/esm2015/lib/gov-ui/models/isession-storage.interface.js +0 -2
- package/esm2015/lib/gov-ui/util/helpers/html-templates.helper.js +0 -22
- package/esm2015/lib/gov-ui/util/session-storage/session-storage-utils.js +0 -22
- package/esm2015/lib/gov-ui/validators/radio-group.validator.js +0 -15
- package/esm2015/lib/models/case-share.model.js +0 -2
- package/esm2015/lib/models/feature-user.js +0 -5
- package/esm2015/lib/models/filter.model.js +0 -3
- package/esm2015/lib/models/index.js +0 -14
- package/esm2015/lib/models/location.model.js +0 -2
- package/esm2015/lib/models/person.model.js +0 -17
- package/esm2015/lib/models/user-details.model.js +0 -2
- package/esm2015/lib/services/case-sharing-state/case-sharing-state.service.js +0 -143
- package/esm2015/lib/services/cookie/cookie.service.js +0 -47
- package/esm2015/lib/services/feature-toggle/feature-toggle.guard.js +0 -35
- package/esm2015/lib/services/feature-toggle/feature-toggle.service.js +0 -27
- package/esm2015/lib/services/feature-toggle/launch-darkly.service.js +0 -59
- package/esm2015/lib/services/filter/filter.service.js +0 -64
- package/esm2015/lib/services/find-person/find-person.service.js +0 -106
- package/esm2015/lib/services/google-analytics/google-analytics.service.js +0 -68
- package/esm2015/lib/services/google-tag-manager/google-tag-manager.service.js +0 -71
- package/esm2015/lib/services/locations/location.service.js +0 -39
- package/esm2015/lib/services/public-api.js +0 -16
- package/esm2015/lib/services/role-guard/role.guard.js +0 -37
- package/esm2015/lib/services/role-guard/role.service.js +0 -20
- package/esm2015/lib/services/session-storage/session-storage.service.js +0 -41
- package/esm2015/lib/services/timeout-notifications/timeout-notifications.service.js +0 -92
- package/fesm2015/hmcts-rpx-xui-common-lib.js +0 -3942
- package/fesm2015/hmcts-rpx-xui-common-lib.js.map +0 -1
- package/hmcts-rpx-xui-common-lib.d.ts +0 -67
- package/hmcts-rpx-xui-common-lib.metadata.json +0 -1
- package/lib/gov-ui/models/banner-data-model.d.ts +0 -4
- package/lib/gov-ui/models/isession-storage.interface.d.ts +0 -4
- package/lib/gov-ui/util/session-storage/session-storage-utils.d.ts +0 -6
- /package/{esm2015/lib/components/index.js → esm2022/lib/components/index.mjs} +0 -0
- /package/{esm2015/lib/directives/index.js → esm2022/lib/directives/index.mjs} +0 -0
- /package/{esm2015/lib/directives/public-api.js → esm2022/lib/directives/public-api.mjs} +0 -0
- /package/{esm2015/lib/gov-ui/components/index.js → esm2022/lib/gov-ui/components/index.mjs} +0 -0
- /package/{esm2015/lib/gov-ui/components/public_api.js → esm2022/lib/gov-ui/components/public_api.mjs} +0 -0
- /package/{esm2015/lib/gov-ui/index.js → esm2022/lib/gov-ui/index.mjs} +0 -0
- /package/{esm2015/lib/gov-ui/models/error-messages-model.js → esm2022/lib/gov-ui/models/error-messages-model.mjs} +0 -0
- /package/{esm2015/lib/gov-ui/models/index.js → esm2022/lib/gov-ui/models/index.mjs} +0 -0
- /package/{esm2015/lib/gov-ui/public_api.js → esm2022/lib/gov-ui/public_api.mjs} +0 -0
- /package/{esm2015/lib/gov-ui/validators/index.js → esm2022/lib/gov-ui/validators/index.mjs} +0 -0
- /package/{esm2015/lib/gov-ui/validators/public_api.js → esm2022/lib/gov-ui/validators/public_api.mjs} +0 -0
- /package/{esm2015/lib/models/due-date.model.js → esm2022/lib/models/due-date.model.mjs} +0 -0
- /package/{esm2015/lib/models/idle-config.model.js → esm2022/lib/models/idle-config.model.mjs} +0 -0
- /package/{esm2015/lib/models/pagination.model.js → esm2022/lib/models/pagination.model.mjs} +0 -0
- /package/{esm2015/lib/models/tcDocument.model.js → esm2022/lib/models/tcDocument.model.mjs} +0 -0
- /package/{esm2015/lib/models/timeout-notification.model.js → esm2022/lib/models/timeout-notification.model.mjs} +0 -0
- /package/{esm2015/lib/models/user.model.js → esm2022/lib/models/user.model.mjs} +0 -0
- /package/{esm2015/lib/services/index.js → esm2022/lib/services/index.mjs} +0 -0
- /package/{esm2015/lib/window.js → esm2022/lib/window.mjs} +0 -0
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
import { Directive, ElementRef } from '@angular/core';
|
|
2
|
-
/*
|
|
3
|
-
* Remove Host Directive
|
|
4
|
-
* Used to remove native angular host tags tags
|
|
5
|
-
* sometimes needed because of CSS dependencies
|
|
6
|
-
* */
|
|
7
|
-
export class RemoveHostDirective {
|
|
8
|
-
constructor(el) {
|
|
9
|
-
this.el = el;
|
|
10
|
-
}
|
|
11
|
-
ngOnInit() {
|
|
12
|
-
const nativeElement = this.el.nativeElement;
|
|
13
|
-
const parentElement = nativeElement.parentElement;
|
|
14
|
-
// move all children out of the element
|
|
15
|
-
while (nativeElement.firstChild) {
|
|
16
|
-
parentElement.insertBefore(nativeElement.firstChild, nativeElement);
|
|
17
|
-
}
|
|
18
|
-
parentElement.removeChild(nativeElement);
|
|
19
|
-
}
|
|
20
|
-
}
|
|
21
|
-
RemoveHostDirective.decorators = [
|
|
22
|
-
{ type: Directive, args: [{
|
|
23
|
-
selector: '[appRemoveHost]'
|
|
24
|
-
},] }
|
|
25
|
-
];
|
|
26
|
-
RemoveHostDirective.ctorParameters = () => [
|
|
27
|
-
{ type: ElementRef }
|
|
28
|
-
];
|
|
29
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVtb3ZlLWhvc3QuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZXh1aS1jb21tb24tbGliL3NyYy9saWIvZ292LXVpL2RpcmVjdGl2ZXMvcmVtb3ZlLWhvc3QuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBQyxTQUFTLEVBQUUsVUFBVSxFQUFTLE1BQU0sZUFBZSxDQUFDO0FBQzVEOzs7O0lBSUk7QUFJSixNQUFNLE9BQU8sbUJBQW1CO0lBRTlCLFlBQTZCLEVBQWM7UUFBZCxPQUFFLEdBQUYsRUFBRSxDQUFZO0lBQUcsQ0FBQztJQUV4QyxRQUFRO1FBQ2IsTUFBTSxhQUFhLEdBQWdCLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDO1FBQ3pELE1BQU0sYUFBYSxHQUFnQixhQUFhLENBQUMsYUFBYSxDQUFDO1FBQy9ELHVDQUF1QztRQUN2QyxPQUFPLGFBQWEsQ0FBQyxVQUFVLEVBQUU7WUFDL0IsYUFBYSxDQUFDLFlBQVksQ0FBQyxhQUFhLENBQUMsVUFBVSxFQUFFLGFBQWEsQ0FBQyxDQUFDO1NBQ3JFO1FBQ0QsYUFBYSxDQUFDLFdBQVcsQ0FBQyxhQUFhLENBQUMsQ0FBQztJQUMzQyxDQUFDOzs7WUFmRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLGlCQUFpQjthQUM1Qjs7O1lBUmtCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJcbmltcG9ydCB7RGlyZWN0aXZlLCBFbGVtZW50UmVmLCBPbkluaXR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuLypcbiogUmVtb3ZlIEhvc3QgRGlyZWN0aXZlXG4qIFVzZWQgdG8gcmVtb3ZlIG5hdGl2ZSBhbmd1bGFyIGhvc3QgdGFncyB0YWdzXG4qIHNvbWV0aW1lcyBuZWVkZWQgYmVjYXVzZSBvZiBDU1MgZGVwZW5kZW5jaWVzXG4qICovXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbYXBwUmVtb3ZlSG9zdF0nXG59KVxuZXhwb3J0IGNsYXNzIFJlbW92ZUhvc3REaXJlY3RpdmUgaW1wbGVtZW50cyBPbkluaXQge1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgZWw6IEVsZW1lbnRSZWYpIHt9XG5cbiAgcHVibGljIG5nT25Jbml0KCkge1xuICAgIGNvbnN0IG5hdGl2ZUVsZW1lbnQ6IEhUTUxFbGVtZW50ID0gdGhpcy5lbC5uYXRpdmVFbGVtZW50O1xuICAgIGNvbnN0IHBhcmVudEVsZW1lbnQ6IEhUTUxFbGVtZW50ID0gbmF0aXZlRWxlbWVudC5wYXJlbnRFbGVtZW50O1xuICAgIC8vIG1vdmUgYWxsIGNoaWxkcmVuIG91dCBvZiB0aGUgZWxlbWVudFxuICAgIHdoaWxlIChuYXRpdmVFbGVtZW50LmZpcnN0Q2hpbGQpIHtcbiAgICAgIHBhcmVudEVsZW1lbnQuaW5zZXJ0QmVmb3JlKG5hdGl2ZUVsZW1lbnQuZmlyc3RDaGlsZCwgbmF0aXZlRWxlbWVudCk7XG4gICAgfVxuICAgIHBhcmVudEVsZW1lbnQucmVtb3ZlQ2hpbGQobmF0aXZlRWxlbWVudCk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import { Injectable } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
export class GovUiService {
|
|
4
|
-
constructor() { }
|
|
5
|
-
}
|
|
6
|
-
GovUiService.ɵprov = i0.ɵɵdefineInjectable({ factory: function GovUiService_Factory() { return new GovUiService(); }, token: GovUiService, providedIn: "root" });
|
|
7
|
-
GovUiService.decorators = [
|
|
8
|
-
{ type: Injectable, args: [{
|
|
9
|
-
providedIn: 'root'
|
|
10
|
-
},] }
|
|
11
|
-
];
|
|
12
|
-
GovUiService.ctorParameters = () => [];
|
|
13
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ292LXVpLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9leHVpLWNvbW1vbi1saWIvc3JjL2xpYi9nb3YtdWkvZ292LXVpLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFLM0MsTUFBTSxPQUFPLFlBQVk7SUFFdkIsZ0JBQWdCLENBQUM7Ozs7WUFMbEIsVUFBVSxTQUFDO2dCQUNWLFVBQVUsRUFBRSxNQUFNO2FBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBHb3ZVaVNlcnZpY2Uge1xuXG4gIGNvbnN0cnVjdG9yKCkgeyB9XG59XG4iXX0=
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFubmVyLWRhdGEtbW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9leHVpLWNvbW1vbi1saWIvc3JjL2xpYi9nb3YtdWkvbW9kZWxzL2Jhbm5lci1kYXRhLW1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgaW50ZXJmYWNlIEJhbm5lckRhdGFNb2RlbCB7XG4gIHR5cGU6IHN0cmluZztcbiAgbWVzc2FnZTogc3RyaW5nO1xufVxuIl19
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2tib3hlcy1tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2V4dWktY29tbW9uLWxpYi9zcmMvbGliL2dvdi11aS9tb2RlbHMvY2hlY2tib3hlcy1tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtGb3JtR3JvdXB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IEdvdlVpQ29uZmlnTW9kZWwgfSBmcm9tICcuL2dvdi11aS1jb25maWctbW9kZWwnO1xuXG5leHBvcnQgaW50ZXJmYWNlIENoZWNrYm94ZXNNb2RlbCB7XG4gIGtleTogc3RyaW5nO1xuICBncm91cDogRm9ybUdyb3VwO1xuICBjb25maWc6IEdvdlVpQ29uZmlnTW9kZWw7XG4gIGVycm9yczogYW55O1xuICBpdGVtczogR292VWlDb25maWdNb2RlbFtdO1xufVxuIl19
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXNlc3Npb24tc3RvcmFnZS5pbnRlcmZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9leHVpLWNvbW1vbi1saWIvc3JjL2xpYi9nb3YtdWkvbW9kZWxzL2lzZXNzaW9uLXN0b3JhZ2UuaW50ZXJmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgaW50ZXJmYWNlIElTZXNzaW9uU3RvcmFnZVNlcnZpY2Uge1xuICBnZXRJdGVtKGtleTogc3RyaW5nLCByZW1vdmVBZnRlclJlYWQ/OiBib29sZWFuKTogc3RyaW5nO1xuICBzZXRJdGVtKGtleTogc3RyaW5nLCB2YWx1ZTogc3RyaW5nKTogdm9pZDtcbn1cbiJdfQ==
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
/*
|
|
2
|
-
* Helper Class
|
|
3
|
-
* Used for dynamic templates manipulation
|
|
4
|
-
* */
|
|
5
|
-
export class HtmlTemplatesHelper {
|
|
6
|
-
/*
|
|
7
|
-
* Sets described by string depending if
|
|
8
|
-
* there is an error, error and hit or nothing
|
|
9
|
-
* */
|
|
10
|
-
static setDescribedBy(errorMessage, config) {
|
|
11
|
-
if (!errorMessage) {
|
|
12
|
-
return config.hint ? `${config.id}-hint` : null;
|
|
13
|
-
}
|
|
14
|
-
else if (errorMessage && errorMessage.isInvalid) {
|
|
15
|
-
return config.hint ? `${config.id}-hint ${config.id}-error` : `${config.id}-error`;
|
|
16
|
-
}
|
|
17
|
-
else {
|
|
18
|
-
return config.hint ? `${config.id}-hint` : null;
|
|
19
|
-
}
|
|
20
|
-
}
|
|
21
|
-
}
|
|
22
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHRtbC10ZW1wbGF0ZXMuaGVscGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZXh1aS1jb21tb24tbGliL3NyYy9saWIvZ292LXVpL3V0aWwvaGVscGVycy9odG1sLXRlbXBsYXRlcy5oZWxwZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBR0E7OztLQUdLO0FBRUwsTUFBTSxPQUFPLG1CQUFtQjtJQUM5Qjs7O1FBR0k7SUFDRyxNQUFNLENBQUMsY0FBYyxDQUFDLFlBQWdDLEVBQUUsTUFBd0I7UUFDckYsSUFBSSxDQUFDLFlBQVksRUFBRTtZQUNqQixPQUFPLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEdBQUcsTUFBTSxDQUFDLEVBQUUsT0FBTyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7U0FDakQ7YUFBTSxJQUFJLFlBQVksSUFBSSxZQUFZLENBQUMsU0FBUyxFQUFFO1lBQ2pELE9BQVEsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsR0FBRyxNQUFNLENBQUMsRUFBRSxTQUFTLE1BQU0sQ0FBQyxFQUFFLFFBQVEsQ0FBQyxDQUFDLENBQUMsR0FBRyxNQUFNLENBQUMsRUFBRSxRQUFRLENBQUM7U0FDckY7YUFBTTtZQUNMLE9BQU8sTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsR0FBRyxNQUFNLENBQUMsRUFBRSxPQUFPLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztTQUNqRDtJQUNILENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEVycm9yTWVzc2FnZXNNb2RlbCB9IGZyb20gJy4uLy4uL21vZGVscyc7XG5pbXBvcnQgeyBHb3ZVaUNvbmZpZ01vZGVsIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2dvdi11aS1jb25maWctbW9kZWwnO1xuXG4vKlxuICogSGVscGVyIENsYXNzXG4gKiBVc2VkIGZvciBkeW5hbWljIHRlbXBsYXRlcyBtYW5pcHVsYXRpb25cbiAqICovXG5cbmV4cG9ydCBjbGFzcyBIdG1sVGVtcGxhdGVzSGVscGVyIHtcbiAgLypcbiAgKiBTZXRzIGRlc2NyaWJlZCBieSBzdHJpbmcgZGVwZW5kaW5nIGlmXG4gICogdGhlcmUgaXMgYW4gZXJyb3IsIGVycm9yIGFuZCBoaXQgb3Igbm90aGluZ1xuICAqICovXG4gIHB1YmxpYyBzdGF0aWMgc2V0RGVzY3JpYmVkQnkoZXJyb3JNZXNzYWdlOiBFcnJvck1lc3NhZ2VzTW9kZWwsIGNvbmZpZzogR292VWlDb25maWdNb2RlbCkge1xuICAgIGlmICghZXJyb3JNZXNzYWdlKSB7XG4gICAgICByZXR1cm4gY29uZmlnLmhpbnQgPyBgJHtjb25maWcuaWR9LWhpbnRgIDogbnVsbDtcbiAgICB9IGVsc2UgaWYgKGVycm9yTWVzc2FnZSAmJiBlcnJvck1lc3NhZ2UuaXNJbnZhbGlkKSB7XG4gICAgICByZXR1cm4gIGNvbmZpZy5oaW50ID8gYCR7Y29uZmlnLmlkfS1oaW50ICR7Y29uZmlnLmlkfS1lcnJvcmAgOiBgJHtjb25maWcuaWR9LWVycm9yYDtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIGNvbmZpZy5oaW50ID8gYCR7Y29uZmlnLmlkfS1oaW50YCA6IG51bGw7XG4gICAgfVxuICB9XG59XG4iXX0=
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
export const getAllCaseworkersFromServices = (caseworkersByService) => {
|
|
2
|
-
let allCaseworkers = [];
|
|
3
|
-
caseworkersByService.forEach(caseworkerListByService => {
|
|
4
|
-
allCaseworkers = allCaseworkers.concat(caseworkerListByService.caseworkers);
|
|
5
|
-
});
|
|
6
|
-
return allCaseworkers;
|
|
7
|
-
};
|
|
8
|
-
export const getSessionStorageKeyForServiceId = (serviceId) => {
|
|
9
|
-
return `${serviceId}-caseworkers`;
|
|
10
|
-
};
|
|
11
|
-
export const getCaseworkers = (serviceId, sessionStorageService) => {
|
|
12
|
-
const sessionKey = getSessionStorageKeyForServiceId(serviceId);
|
|
13
|
-
const value = sessionStorageService.getItem(sessionKey);
|
|
14
|
-
if (value) {
|
|
15
|
-
return JSON.parse(value);
|
|
16
|
-
}
|
|
17
|
-
};
|
|
18
|
-
export const setCaseworkers = (serviceId, caseworkers, sessionStorageService) => {
|
|
19
|
-
const sessionKey = getSessionStorageKeyForServiceId(serviceId);
|
|
20
|
-
sessionStorageService.setItem(sessionKey, JSON.stringify(caseworkers));
|
|
21
|
-
};
|
|
22
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2Vzc2lvbi1zdG9yYWdlLXV0aWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZXh1aS1jb21tb24tbGliL3NyYy9saWIvZ292LXVpL3V0aWwvc2Vzc2lvbi1zdG9yYWdlL3Nlc3Npb24tc3RvcmFnZS11dGlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFHQSxNQUFNLENBQUMsTUFBTSw2QkFBNkIsR0FBRyxDQUFDLG9CQUE0QyxFQUFnQixFQUFFO0lBQzFHLElBQUksY0FBYyxHQUFpQixFQUFFLENBQUM7SUFDdEMsb0JBQW9CLENBQUMsT0FBTyxDQUFDLHVCQUF1QixDQUFDLEVBQUU7UUFDckQsY0FBYyxHQUFHLGNBQWMsQ0FBQyxNQUFNLENBQUMsdUJBQXVCLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDOUUsQ0FBQyxDQUFDLENBQUM7SUFDSCxPQUFPLGNBQWMsQ0FBQztBQUN4QixDQUFDLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxnQ0FBZ0MsR0FBRyxDQUFDLFNBQWlCLEVBQVUsRUFBRTtJQUM1RSxPQUFPLEdBQUcsU0FBUyxjQUFjLENBQUM7QUFDcEMsQ0FBQyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sY0FBYyxHQUFHLENBQUMsU0FBaUIsRUFBRSxxQkFBNkMsRUFBZ0IsRUFBRTtJQUMvRyxNQUFNLFVBQVUsR0FBRyxnQ0FBZ0MsQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUMvRCxNQUFNLEtBQUssR0FBRyxxQkFBcUIsQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDeEQsSUFBSSxLQUFLLEVBQUU7UUFDVCxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFpQixDQUFDO0tBQzFDO0FBQ0gsQ0FBQyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sY0FBYyxHQUFHLENBQUMsU0FBaUIsRUFBRSxXQUF5QixFQUFFLHFCQUE2QyxFQUFRLEVBQUU7SUFDbEksTUFBTSxVQUFVLEdBQUcsZ0NBQWdDLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDL0QscUJBQXFCLENBQUMsT0FBTyxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUM7QUFDekUsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2FzZXdvcmtlciwgQ2FzZXdvcmtlcnNCeVNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9tb2RlbHMnO1xuaW1wb3J0IHsgSVNlc3Npb25TdG9yYWdlU2VydmljZSB9IGZyb20gJy4uLy4uL21vZGVscy9pc2Vzc2lvbi1zdG9yYWdlLmludGVyZmFjZSc7XG5cbmV4cG9ydCBjb25zdCBnZXRBbGxDYXNld29ya2Vyc0Zyb21TZXJ2aWNlcyA9IChjYXNld29ya2Vyc0J5U2VydmljZTogQ2FzZXdvcmtlcnNCeVNlcnZpY2VbXSk6IENhc2V3b3JrZXJbXSA9PiB7XG4gIGxldCBhbGxDYXNld29ya2VyczogQ2FzZXdvcmtlcltdID0gW107XG4gIGNhc2V3b3JrZXJzQnlTZXJ2aWNlLmZvckVhY2goY2FzZXdvcmtlckxpc3RCeVNlcnZpY2UgPT4ge1xuICAgIGFsbENhc2V3b3JrZXJzID0gYWxsQ2FzZXdvcmtlcnMuY29uY2F0KGNhc2V3b3JrZXJMaXN0QnlTZXJ2aWNlLmNhc2V3b3JrZXJzKTtcbiAgfSk7XG4gIHJldHVybiBhbGxDYXNld29ya2Vycztcbn07XG5cbmV4cG9ydCBjb25zdCBnZXRTZXNzaW9uU3RvcmFnZUtleUZvclNlcnZpY2VJZCA9IChzZXJ2aWNlSWQ6IHN0cmluZyk6IHN0cmluZyA9PiB7XG4gIHJldHVybiBgJHtzZXJ2aWNlSWR9LWNhc2V3b3JrZXJzYDtcbn07XG5cbmV4cG9ydCBjb25zdCBnZXRDYXNld29ya2VycyA9IChzZXJ2aWNlSWQ6IHN0cmluZywgc2Vzc2lvblN0b3JhZ2VTZXJ2aWNlOiBJU2Vzc2lvblN0b3JhZ2VTZXJ2aWNlKTogQ2FzZXdvcmtlcltdID0+IHtcbiAgY29uc3Qgc2Vzc2lvbktleSA9IGdldFNlc3Npb25TdG9yYWdlS2V5Rm9yU2VydmljZUlkKHNlcnZpY2VJZCk7XG4gIGNvbnN0IHZhbHVlID0gc2Vzc2lvblN0b3JhZ2VTZXJ2aWNlLmdldEl0ZW0oc2Vzc2lvbktleSk7XG4gIGlmICh2YWx1ZSkge1xuICAgIHJldHVybiBKU09OLnBhcnNlKHZhbHVlKSBhcyBDYXNld29ya2VyW107XG4gIH1cbn07XG5cbmV4cG9ydCBjb25zdCBzZXRDYXNld29ya2VycyA9IChzZXJ2aWNlSWQ6IHN0cmluZywgY2FzZXdvcmtlcnM6IENhc2V3b3JrZXJbXSwgc2Vzc2lvblN0b3JhZ2VTZXJ2aWNlOiBJU2Vzc2lvblN0b3JhZ2VTZXJ2aWNlKTogdm9pZCA9PiB7XG4gIGNvbnN0IHNlc3Npb25LZXkgPSBnZXRTZXNzaW9uU3RvcmFnZUtleUZvclNlcnZpY2VJZChzZXJ2aWNlSWQpO1xuICBzZXNzaW9uU3RvcmFnZVNlcnZpY2Uuc2V0SXRlbShzZXNzaW9uS2V5LCBKU09OLnN0cmluZ2lmeShjYXNld29ya2VycykpO1xufTtcbiJdfQ==
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
export function radioGroupValidator() {
|
|
2
|
-
return function validate(formGroup) {
|
|
3
|
-
if (formGroup.controls) {
|
|
4
|
-
for (const control in formGroup.controls) {
|
|
5
|
-
if (!formGroup.controls[control].valid) {
|
|
6
|
-
return {
|
|
7
|
-
isRadioGroupInvalid: true,
|
|
8
|
-
};
|
|
9
|
-
}
|
|
10
|
-
}
|
|
11
|
-
}
|
|
12
|
-
return null;
|
|
13
|
-
};
|
|
14
|
-
}
|
|
15
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFkaW8tZ3JvdXAudmFsaWRhdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZXh1aS1jb21tb24tbGliL3NyYy9saWIvZ292LXVpL3ZhbGlkYXRvcnMvcmFkaW8tZ3JvdXAudmFsaWRhdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sVUFBVSxtQkFBbUI7SUFDakMsT0FBTyxTQUFTLFFBQVEsQ0FBQyxTQUFvQjtRQUMzQyxJQUFJLFNBQVMsQ0FBQyxRQUFRLEVBQUU7WUFDdEIsS0FBSyxNQUFNLE9BQU8sSUFBSSxTQUFTLENBQUMsUUFBUSxFQUFFO2dCQUN4QyxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQyxLQUFLLEVBQUU7b0JBQ3RDLE9BQU87d0JBQ0wsbUJBQW1CLEVBQUUsSUFBSTtxQkFDMUIsQ0FBQztpQkFDSDthQUNGO1NBQ0Y7UUFHRCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUMsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGb3JtR3JvdXAsIFZhbGlkYXRvckZuIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5leHBvcnQgZnVuY3Rpb24gcmFkaW9Hcm91cFZhbGlkYXRvcigpOiBWYWxpZGF0b3JGbiB7XG4gIHJldHVybiBmdW5jdGlvbiB2YWxpZGF0ZShmb3JtR3JvdXA6IEZvcm1Hcm91cCkge1xuICAgIGlmIChmb3JtR3JvdXAuY29udHJvbHMpIHtcbiAgICAgIGZvciAoY29uc3QgY29udHJvbCBpbiBmb3JtR3JvdXAuY29udHJvbHMpIHtcbiAgICAgICAgaWYgKCFmb3JtR3JvdXAuY29udHJvbHNbY29udHJvbF0udmFsaWQpIHtcbiAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgaXNSYWRpb0dyb3VwSW52YWxpZDogdHJ1ZSxcbiAgICAgICAgICB9O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG5cbiAgICByZXR1cm4gbnVsbDtcbiAgfTtcbn1cbiJdfQ==
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FzZS1zaGFyZS5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2V4dWktY29tbW9uLWxpYi9zcmMvbGliL21vZGVscy9jYXNlLXNoYXJlLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBVc2VyRGV0YWlscyB9IGZyb20gJy4vdXNlci1kZXRhaWxzLm1vZGVsJztcblxuZXhwb3J0IGludGVyZmFjZSBTaGFyZWRDYXNlIHtcbiAgY2FzZUlkOiBzdHJpbmc7XG4gIGNhc2VUaXRsZTogc3RyaW5nO1xuICBjYXNlVHlwZUlkPzogc3RyaW5nO1xuICByb2xlcz86IHN0cmluZ1tdO1xuICBzaGFyZWRXaXRoPzogVXNlckRldGFpbHNbXTtcbiAgcGVuZGluZ1NoYXJlcz86IFVzZXJEZXRhaWxzW107XG4gIHBlbmRpbmdVbnNoYXJlcz86IFVzZXJEZXRhaWxzW107XG59XG4iXX0=
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
export class AnonymousFeatureUser {
|
|
2
|
-
}
|
|
3
|
-
export class LoggedInFeatureUser {
|
|
4
|
-
}
|
|
5
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmVhdHVyZS11c2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZXh1aS1jb21tb24tbGliL3NyYy9saWIvbW9kZWxzL2ZlYXR1cmUtdXNlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLE9BQU8sb0JBQW9CO0NBRWhDO0FBRUQsTUFBTSxPQUFPLG1CQUFtQjtDQU8vQiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjbGFzcyBBbm9ueW1vdXNGZWF0dXJlVXNlciB7XG4gICAgcHVibGljIGFub255bW91czogdHJ1ZTtcbn1cblxuZXhwb3J0IGNsYXNzIExvZ2dlZEluRmVhdHVyZVVzZXIge1xuICAgIHB1YmxpYyBrZXk6IHN0cmluZztcbiAgICBwdWJsaWMgY3VzdG9tOiB7XG4gICAgICAgIFtrZXk6IHN0cmluZ106IGFueSxcbiAgICAgICAgcm9sZXM6IHN0cmluZ1tdLFxuICAgICAgICBvcmdJZDogc3RyaW5nXG4gICAgfTtcbn1cblxuZXhwb3J0IHR5cGUgRmVhdHVyZVVzZXIgPSBBbm9ueW1vdXNGZWF0dXJlVXNlciB8IExvZ2dlZEluRmVhdHVyZVVzZXI7XG4iXX0=
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
export class RadioFilterFieldConfig {
|
|
2
|
-
}
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZXh1aS1jb21tb24tbGliL3NyYy9saWIvbW9kZWxzL2ZpbHRlci5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFrREEsTUFBTSxPQUFPLHNCQUFzQjtDQU1sQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7UGVyc29uUm9sZX0gZnJvbSAnLi9wZXJzb24ubW9kZWwnO1xuXG5leHBvcnQgdHlwZSBGaWx0ZXJGaWVsZFR5cGUgPSAnY2hlY2tib3gnIHwgJ3JhZGlvJyB8ICdzZWxlY3QnIHwgJ2ZpbmQtcGVyc29uJyB8ICdmaW5kLWxvY2F0aW9uJyB8ICdjaGVja2JveC1sYXJnZSc7XG5cbmV4cG9ydCB0eXBlIEZpbHRlclBlcnNpc3RlbmNlID0gJ2xvY2FsJyB8ICdzZXNzaW9uJyB8ICdtZW1vcnknO1xuXG5leHBvcnQgaW50ZXJmYWNlIEZpbHRlckNvbmZpZyB7XG4gIGlkOiBzdHJpbmc7XG4gIGZpZWxkczogRmlsdGVyRmllbGRDb25maWdbXTtcbiAgcGVyc2lzdGVuY2U6IEZpbHRlclBlcnNpc3RlbmNlO1xuICBhcHBseUJ1dHRvblRleHQ6IHN0cmluZztcbiAgY2FuY2VsQnV0dG9uVGV4dDogc3RyaW5nO1xuICBjYW5jZWxTZXR0aW5nPzogRmlsdGVyU2V0dGluZztcbiAgZW5hYmxlRGlzYWJsZWRCdXR0b24/OiBib29sZWFuO1xuICBzaG93Q2FuY2VsRmlsdGVyQnV0dG9uPzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBGaWx0ZXJGaWVsZENvbmZpZyB7XG4gIG5hbWU6IHN0cmluZztcbiAgb3B0aW9uczogeyBrZXk6IHN0cmluZywgbGFiZWw6IHN0cmluZywgc2VsZWN0QWxsPzogdHJ1ZSB9W107XG4gIG1pblNlbGVjdGVkOiBudW1iZXI7XG4gIG1heFNlbGVjdGVkOiBudW1iZXI7XG4gIG1pblNlbGVjdGVkRXJyb3I/OiBzdHJpbmc7XG4gIG1heFNlbGVjdGVkRXJyb3I/OiBzdHJpbmc7XG4gIGRpc3BsYXlNYXhTZWxlY3RlZEVycm9yPzogYm9vbGVhbjtcbiAgZGlzcGxheU1pblNlbGVjdGVkRXJyb3I/OiBib29sZWFuO1xuICBsaW5lQnJlYWtCZWZvcmU/OiBib29sZWFuO1xuICBzaG93Q29uZGl0aW9uPzogc3RyaW5nO1xuICBlbmFibGVDb25kaXRpb24/OiBzdHJpbmc7XG4gIGVuYWJsZUFkZExvY2F0aW9uQnV0dG9uPzogYm9vbGVhbjtcbiAgY2hhbmdlUmVzZXRGaWVsZHM/OiBzdHJpbmdbXTtcbiAgZmluZFBlcnNvbkZpZWxkPzogc3RyaW5nO1xuICBmaW5kTG9jYXRpb25GaWVsZD86IHN0cmluZztcbiAgZG9tYWluRmllbGQ/OiBzdHJpbmc7XG4gIGRpc2FibGU/OiBib29sZWFuO1xuICBkaXNhYmxlZFRleHQ/OiBzdHJpbmc7XG4gIHR5cGU6IEZpbHRlckZpZWxkVHlwZTtcbiAgZG9tYWluPzogUGVyc29uUm9sZTtcbiAgdGl0bGU/OiBzdHJpbmc7XG4gIHN1YlRpdGxlPzogc3RyaW5nO1xuICBsb2NhdGlvblRpdGxlPzogc3RyaW5nO1xuICByYWRpb1NlbGVjdGlvbkNoYW5nZT86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBGaWx0ZXJTZXR0aW5nIHtcbiAgaWQ6IHN0cmluZztcbiAgcmVzZXQ/OiBib29sZWFuO1xuICBmaWVsZHM6IHsgbmFtZTogc3RyaW5nLCB2YWx1ZTogYW55W10gfVtdO1xufVxuXG5leHBvcnQgY2xhc3MgUmFkaW9GaWx0ZXJGaWVsZENvbmZpZyBpbXBsZW1lbnRzIEZpbHRlckZpZWxkQ29uZmlnIHtcbiAgcHVibGljIG5hbWU6IHN0cmluZztcbiAgcHVibGljIG9wdGlvbnM6IHsga2V5OiBzdHJpbmcsIGxhYmVsOiBzdHJpbmd9W107XG4gIHB1YmxpYyBtaW5TZWxlY3RlZDogMTtcbiAgcHVibGljIG1heFNlbGVjdGVkOiAxO1xuICBwdWJsaWMgdHlwZTogJ3JhZGlvJztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBGaWx0ZXJFcnJvciB7XG4gIG5hbWU6IHN0cmluZztcbiAgZXJyb3I6IHN0cmluZztcbn1cbiJdfQ==
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
export * from './case-share.model';
|
|
2
|
-
export * from './contact-details.model';
|
|
3
|
-
export * from './due-date.model';
|
|
4
|
-
export * from './feature-user';
|
|
5
|
-
export * from './idle-config.model';
|
|
6
|
-
export * from './pagination.model';
|
|
7
|
-
export * from './person.model';
|
|
8
|
-
export * from './public_api';
|
|
9
|
-
export * from './search-options.model';
|
|
10
|
-
export * from './tcDocument.model';
|
|
11
|
-
export * from './timeout-notification.model';
|
|
12
|
-
export * from './user-details.model';
|
|
13
|
-
export * from './user.model';
|
|
14
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9leHVpLWNvbW1vbi1saWIvc3JjL2xpYi9tb2RlbHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxvQkFBb0IsQ0FBQztBQUNuQyxjQUFjLHlCQUF5QixDQUFDO0FBQ3hDLGNBQWMsa0JBQWtCLENBQUM7QUFDakMsY0FBYyxnQkFBZ0IsQ0FBQztBQUMvQixjQUFjLHFCQUFxQixDQUFDO0FBQ3BDLGNBQWMsb0JBQW9CLENBQUM7QUFDbkMsY0FBYyxnQkFBZ0IsQ0FBQztBQUMvQixjQUFjLGNBQWMsQ0FBQztBQUM3QixjQUFjLHdCQUF3QixDQUFDO0FBQ3ZDLGNBQWMsb0JBQW9CLENBQUM7QUFDbkMsY0FBYyw4QkFBOEIsQ0FBQztBQUM3QyxjQUFjLHNCQUFzQixDQUFDO0FBQ3JDLGNBQWMsY0FBYyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9jYXNlLXNoYXJlLm1vZGVsJztcbmV4cG9ydCAqIGZyb20gJy4vY29udGFjdC1kZXRhaWxzLm1vZGVsJztcbmV4cG9ydCAqIGZyb20gJy4vZHVlLWRhdGUubW9kZWwnO1xuZXhwb3J0ICogZnJvbSAnLi9mZWF0dXJlLXVzZXInO1xuZXhwb3J0ICogZnJvbSAnLi9pZGxlLWNvbmZpZy5tb2RlbCc7XG5leHBvcnQgKiBmcm9tICcuL3BhZ2luYXRpb24ubW9kZWwnO1xuZXhwb3J0ICogZnJvbSAnLi9wZXJzb24ubW9kZWwnO1xuZXhwb3J0ICogZnJvbSAnLi9wdWJsaWNfYXBpJztcbmV4cG9ydCAqIGZyb20gJy4vc2VhcmNoLW9wdGlvbnMubW9kZWwnO1xuZXhwb3J0ICogZnJvbSAnLi90Y0RvY3VtZW50Lm1vZGVsJztcbmV4cG9ydCAqIGZyb20gJy4vdGltZW91dC1ub3RpZmljYXRpb24ubW9kZWwnO1xuZXhwb3J0ICogZnJvbSAnLi91c2VyLWRldGFpbHMubW9kZWwnO1xuZXhwb3J0ICogZnJvbSAnLi91c2VyLm1vZGVsJztcbiJdfQ==
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYXRpb24ubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9leHVpLWNvbW1vbi1saWIvc3JjL2xpYi9tb2RlbHMvbG9jYXRpb24ubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBpbnRlcmZhY2UgTG9jYXRpb25Nb2RlbCB7XG4gICAgY291cnRfdmVudWVfaWQ6IHN0cmluZztcbiAgICBzaXRlX25hbWU6IHN0cmluZztcbiAgICBjb3VydF9uYW1lPzogc3RyaW5nO1xuICAgIGVwaW1tc19pZDogc3RyaW5nO1xuICAgIG9wZW5fZm9yX3B1YmxpYz86IHN0cmluZztcbiAgICBjb3VydF90eXBlX2lkOiBzdHJpbmc7XG4gICAgY291cnRfdHlwZTogc3RyaW5nO1xuICAgIHJlZ2lvbl9pZDogc3RyaW5nO1xuICAgIHJlZ2lvbjogc3RyaW5nO1xuICAgIGNsdXN0ZXJfaWQ/OiBzdHJpbmc7XG4gICAgY2x1c3Rlcl9uYW1lPzogc3RyaW5nO1xuICAgIGNvdXJ0X3N0YXR1cz86IHN0cmluZztcbiAgICBjb3VydF9vcGVuX2RhdGU/OiBzdHJpbmc7XG4gICAgY2xvc2VkX2RhdGU/OiBzdHJpbmc7XG4gICAgcG9zdGNvZGU6IHN0cmluZztcbiAgICBjb3VydF9hZGRyZXNzOiBzdHJpbmc7XG4gICAgcGhvbmVfbnVtYmVyPzogc3RyaW5nO1xuICAgIGNvdXJ0X2xvY2F0aW9uX2NvZGU/OiBzdHJpbmc7XG4gICAgZHhfYWRkcmVzcz86IHN0cmluZztcbiAgICB3ZWxzaF9zaXRlX25hbWU/OiBzdHJpbmc7XG4gICAgd2Vsc2hfY291cnRfYWRkcmVzcz86IHN0cmluZztcbiAgICB2ZW51ZV9uYW1lPzogc3RyaW5nO1xuICAgIGlzX2Nhc2VfbWFuYWdlbWVudF9sb2NhdGlvbjogc3RyaW5nO1xuICAgIGlzX2hlYXJpbmdfbG9jYXRpb246IHN0cmluZztcbiAgfVxuXG5leHBvcnQgaW50ZXJmYWNlIExvY2F0aW9uQnlFUElNTVNNb2RlbCB7XG4gIGVwaW1tc19pZDogc3RyaW5nO1xuICBzaXRlX25hbWU6IHN0cmluZztcbiAgY291cnRfbmFtZT86IHN0cmluZztcbiAgb3Blbl9mb3JfcHVibGljPzogc3RyaW5nO1xuICByZWdpb25faWQ6IHN0cmluZztcbiAgcmVnaW9uOiBzdHJpbmc7XG4gIGNsdXN0ZXJfaWQ/OiBzdHJpbmc7XG4gIGNsdXN0ZXJfbmFtZT86IHN0cmluZztcbiAgY291cnRfc3RhdHVzPzogc3RyaW5nO1xuICBjb3VydF9vcGVuX2RhdGU/OiBzdHJpbmc7XG4gIGNsb3NlZF9kYXRlPzogc3RyaW5nO1xuICBwb3N0Y29kZTogc3RyaW5nO1xuICBjb3VydF9hZGRyZXNzOiBzdHJpbmc7XG4gIHBob25lX251bWJlcj86IHN0cmluZztcbiAgY291cnRfbG9jYXRpb25fY29kZT86IHN0cmluZztcbiAgZHhfYWRkcmVzcz86IHN0cmluZztcbiAgd2Vsc2hfc2l0ZV9uYW1lPzogc3RyaW5nO1xuICB3ZWxzaF9jb3VydF9hZGRyZXNzPzogc3RyaW5nO1xuICB2ZW51ZV9uYW1lPzogc3RyaW5nO1xuICBpc19jYXNlX21hbmFnZW1lbnRfbG9jYXRpb246IHN0cmluZztcbiAgaXNfaGVhcmluZ19sb2NhdGlvbjogc3RyaW5nO1xufVxuIl19
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
export var PersonRole;
|
|
2
|
-
(function (PersonRole) {
|
|
3
|
-
PersonRole["JUDICIAL"] = "Judicial";
|
|
4
|
-
PersonRole["CASEWORKER"] = "Legal Ops";
|
|
5
|
-
PersonRole["ADMIN"] = "Admin";
|
|
6
|
-
PersonRole["ALL"] = "All";
|
|
7
|
-
})(PersonRole || (PersonRole = {}));
|
|
8
|
-
// Note: RoleCategory could replace PersonRole possibly
|
|
9
|
-
// However a lot of webapp logic is based on current PersonRole understanding
|
|
10
|
-
export var RoleCategory;
|
|
11
|
-
(function (RoleCategory) {
|
|
12
|
-
RoleCategory["JUDICIAL"] = "JUDICIAL";
|
|
13
|
-
RoleCategory["CASEWORKER"] = "LEGAL_OPERATIONS";
|
|
14
|
-
RoleCategory["ADMIN"] = "ADMIN";
|
|
15
|
-
RoleCategory["ALL"] = "ALL";
|
|
16
|
-
})(RoleCategory || (RoleCategory = {}));
|
|
17
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGVyc29uLm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZXh1aS1jb21tb24tbGliL3NyYy9saWIvbW9kZWxzL3BlcnNvbi5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFtQ0EsTUFBTSxDQUFOLElBQVksVUFLWDtBQUxELFdBQVksVUFBVTtJQUNwQixtQ0FBcUIsQ0FBQTtJQUNyQixzQ0FBd0IsQ0FBQTtJQUN4Qiw2QkFBZSxDQUFBO0lBQ2YseUJBQVcsQ0FBQTtBQUNiLENBQUMsRUFMVyxVQUFVLEtBQVYsVUFBVSxRQUtyQjtBQUVELHVEQUF1RDtBQUN2RCw2RUFBNkU7QUFDN0UsTUFBTSxDQUFOLElBQVksWUFLWDtBQUxELFdBQVksWUFBWTtJQUN0QixxQ0FBcUIsQ0FBQTtJQUNyQiwrQ0FBK0IsQ0FBQTtJQUMvQiwrQkFBZSxDQUFBO0lBQ2YsMkJBQVcsQ0FBQTtBQUNiLENBQUMsRUFMVyxZQUFZLEtBQVosWUFBWSxRQUt2QiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBpbnRlcmZhY2UgUGVyc29uIHtcbiAgaWQ6IHN0cmluZztcbiAgbmFtZTogc3RyaW5nO1xuICBlbWFpbD86IHN0cmluZztcbiAgZG9tYWluOiBzdHJpbmc7XG4gIGtub3duQXM/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSnVkaWNpYWxVc2VyTW9kZWwge1xuICBlbWFpbElkOiBzdHJpbmc7XG4gIGZ1bGxOYW1lOiBzdHJpbmc7XG4gIGlkYW1JZDogc3RyaW5nO1xuICBpc0p1ZGdlOiBzdHJpbmc7XG4gIGlzTWFnaXN0cmF0ZTogc3RyaW5nO1xuICBpc1BhbmVsTWVtYmVyOiBzdHJpbmc7XG4gIGtub3duQXM6IHN0cmluZztcbiAgcGVyc29uYWxDb2RlOiBzdHJpbmc7XG4gIHN1cm5hbWU6IHN0cmluZztcbiAgdGl0bGU6IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDYXNld29ya2Vyc0J5U2VydmljZSB7XG4gIHNlcnZpY2U6IHN0cmluZztcbiAgY2FzZXdvcmtlcnM6IENhc2V3b3JrZXJbXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDYXNld29ya2VyIHtcbiAgaWRhbUlkOiBzdHJpbmc7XG4gIGZpcnN0TmFtZTogc3RyaW5nO1xuICBsYXN0TmFtZTogc3RyaW5nO1xuICBlbWFpbDogc3RyaW5nO1xuICBrbm93bkFzPzogc3RyaW5nO1xuICByb2xlQ2F0ZWdvcnk6IHN0cmluZztcbn1cblxuZXhwb3J0IGVudW0gUGVyc29uUm9sZSB7XG4gIEpVRElDSUFMID0gJ0p1ZGljaWFsJyxcbiAgQ0FTRVdPUktFUiA9ICdMZWdhbCBPcHMnLFxuICBBRE1JTiA9ICdBZG1pbicsXG4gIEFMTCA9ICdBbGwnLFxufVxuXG4vLyBOb3RlOiBSb2xlQ2F0ZWdvcnkgY291bGQgcmVwbGFjZSBQZXJzb25Sb2xlIHBvc3NpYmx5XG4vLyBIb3dldmVyIGEgbG90IG9mIHdlYmFwcCBsb2dpYyBpcyBiYXNlZCBvbiBjdXJyZW50IFBlcnNvblJvbGUgdW5kZXJzdGFuZGluZ1xuZXhwb3J0IGVudW0gUm9sZUNhdGVnb3J5IHtcbiAgSlVESUNJQUwgPSAnSlVESUNJQUwnLFxuICBDQVNFV09SS0VSID0gJ0xFR0FMX09QRVJBVElPTlMnLFxuICBBRE1JTiA9ICdBRE1JTicsXG4gIEFMTCA9ICdBTEwnXG59XG4iXX0=
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci1kZXRhaWxzLm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZXh1aS1jb21tb24tbGliL3NyYy9saWIvbW9kZWxzL3VzZXItZGV0YWlscy5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGludGVyZmFjZSBVc2VyRGV0YWlscyB7XG4gIGNhc2VSb2xlcz86IHN0cmluZztcbiAgZW1haWw6IHN0cmluZztcbiAgZmlyc3ROYW1lOiBzdHJpbmc7XG4gIGlkYW1JZDogc3RyaW5nO1xuICBsYXN0TmFtZTogc3RyaW5nO1xufVxuIl19
|
|
@@ -1,143 +0,0 @@
|
|
|
1
|
-
import { Injectable } from '@angular/core';
|
|
2
|
-
import { BehaviorSubject } from 'rxjs';
|
|
3
|
-
import { distinctUntilChanged } from 'rxjs/operators';
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
export class CaseSharingStateService {
|
|
6
|
-
constructor() {
|
|
7
|
-
this.caseState = [];
|
|
8
|
-
this.subject = new BehaviorSubject(this.caseState);
|
|
9
|
-
}
|
|
10
|
-
get state() {
|
|
11
|
-
return this.subject.asObservable().pipe(distinctUntilChanged());
|
|
12
|
-
}
|
|
13
|
-
setCases(cases) {
|
|
14
|
-
this.caseState = [];
|
|
15
|
-
cases.forEach(aCase => {
|
|
16
|
-
this.caseState.push({ caseId: aCase.caseId, caseTitle: aCase.caseTitle, caseTypeId: aCase.caseTypeId, roles: aCase.roles,
|
|
17
|
-
sharedWith: aCase.sharedWith, pendingShares: aCase.pendingShares, pendingUnshares: aCase.pendingUnshares });
|
|
18
|
-
});
|
|
19
|
-
this.subject.next(this.caseState);
|
|
20
|
-
}
|
|
21
|
-
getCases() {
|
|
22
|
-
return this.caseState;
|
|
23
|
-
}
|
|
24
|
-
requestShare(user) {
|
|
25
|
-
const oldSharedCases = this.caseState.slice();
|
|
26
|
-
const newSharedCases = [];
|
|
27
|
-
for (const sharedCase of oldSharedCases) {
|
|
28
|
-
if (!sharedCase.pendingShares) {
|
|
29
|
-
sharedCase.pendingShares = [];
|
|
30
|
-
}
|
|
31
|
-
const newPendingShares = sharedCase.pendingShares.slice();
|
|
32
|
-
if (!sharedCase.pendingUnshares) {
|
|
33
|
-
sharedCase.pendingUnshares = [];
|
|
34
|
-
}
|
|
35
|
-
const newPendingUnshares = sharedCase.pendingUnshares.slice();
|
|
36
|
-
if (!this.userHasAccess(sharedCase, user)) {
|
|
37
|
-
if (!newPendingShares.some(u => u.email === user.email)) {
|
|
38
|
-
newPendingShares.push(user);
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
else {
|
|
42
|
-
for (let u = 0, ul = newPendingUnshares.length; u < ul; u++) {
|
|
43
|
-
if (newPendingUnshares[u].email === user.email) {
|
|
44
|
-
newPendingUnshares.splice(u, 1);
|
|
45
|
-
break;
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
}
|
|
49
|
-
const newSharedCase = Object.assign(Object.assign({}, sharedCase), { pendingUnshares: newPendingUnshares, pendingShares: newPendingShares });
|
|
50
|
-
newSharedCases.push(newSharedCase);
|
|
51
|
-
}
|
|
52
|
-
this.subject.next(newSharedCases);
|
|
53
|
-
return newSharedCases;
|
|
54
|
-
}
|
|
55
|
-
requestUnshare(caseId, user) {
|
|
56
|
-
const newSharedCases = [];
|
|
57
|
-
for (const sharedCase of this.caseState) {
|
|
58
|
-
if (sharedCase.caseId === caseId) {
|
|
59
|
-
if (!sharedCase.pendingUnshares) {
|
|
60
|
-
sharedCase.pendingUnshares = [];
|
|
61
|
-
}
|
|
62
|
-
const newPendingUnshares = sharedCase.pendingUnshares.slice();
|
|
63
|
-
if (newPendingUnshares) {
|
|
64
|
-
if (!newPendingUnshares.some(u => u.email === user.email)) {
|
|
65
|
-
newPendingUnshares.push(user);
|
|
66
|
-
}
|
|
67
|
-
}
|
|
68
|
-
else {
|
|
69
|
-
newPendingUnshares.push(user);
|
|
70
|
-
}
|
|
71
|
-
const newSharedCase = Object.assign(Object.assign({}, sharedCase), { pendingUnshares: newPendingUnshares });
|
|
72
|
-
newSharedCases.push(newSharedCase);
|
|
73
|
-
}
|
|
74
|
-
else {
|
|
75
|
-
newSharedCases.push(sharedCase);
|
|
76
|
-
}
|
|
77
|
-
}
|
|
78
|
-
this.subject.next(newSharedCases);
|
|
79
|
-
return;
|
|
80
|
-
}
|
|
81
|
-
requestCancel(caseId, user) {
|
|
82
|
-
const newSharedCases = [];
|
|
83
|
-
for (const sharedCase of this.caseState) {
|
|
84
|
-
if (sharedCase.caseId === caseId) {
|
|
85
|
-
if (!sharedCase.pendingUnshares) {
|
|
86
|
-
sharedCase.pendingUnshares = [];
|
|
87
|
-
}
|
|
88
|
-
const newPendingUnshares = sharedCase.pendingUnshares.slice();
|
|
89
|
-
for (let iPendingUnshares = 0; iPendingUnshares < newPendingUnshares.length; iPendingUnshares++) {
|
|
90
|
-
if (newPendingUnshares[iPendingUnshares].email === user.email) {
|
|
91
|
-
newPendingUnshares.splice(iPendingUnshares, 1);
|
|
92
|
-
break;
|
|
93
|
-
}
|
|
94
|
-
}
|
|
95
|
-
if (!sharedCase.pendingShares) {
|
|
96
|
-
sharedCase.pendingShares = [];
|
|
97
|
-
}
|
|
98
|
-
const newPendingShares = sharedCase.pendingShares.slice();
|
|
99
|
-
for (let iPendingShares = 0; iPendingShares < newPendingShares.length; iPendingShares++) {
|
|
100
|
-
if (newPendingShares[iPendingShares].email === user.email) {
|
|
101
|
-
newPendingShares.splice(iPendingShares, 1);
|
|
102
|
-
break;
|
|
103
|
-
}
|
|
104
|
-
}
|
|
105
|
-
const newSharedCase = Object.assign(Object.assign({}, sharedCase), { pendingUnshares: newPendingUnshares, pendingShares: newPendingShares });
|
|
106
|
-
newSharedCases.push(newSharedCase);
|
|
107
|
-
}
|
|
108
|
-
else {
|
|
109
|
-
newSharedCases.push(sharedCase);
|
|
110
|
-
}
|
|
111
|
-
}
|
|
112
|
-
this.subject.next(newSharedCases);
|
|
113
|
-
return;
|
|
114
|
-
}
|
|
115
|
-
removeCase(caseId) {
|
|
116
|
-
for (let i = 0, l = this.caseState.length; i < l; i++) {
|
|
117
|
-
if (this.caseState[i].caseId === caseId) {
|
|
118
|
-
this.caseState.splice(i, 1);
|
|
119
|
-
this.subject.next(this.caseState);
|
|
120
|
-
return;
|
|
121
|
-
}
|
|
122
|
-
}
|
|
123
|
-
}
|
|
124
|
-
userHasAccess(c, user) {
|
|
125
|
-
if (!c.sharedWith) {
|
|
126
|
-
return false;
|
|
127
|
-
}
|
|
128
|
-
for (let i = 0, l = c.sharedWith.length; i < l; i++) {
|
|
129
|
-
if (c.sharedWith[i].email === user.email) {
|
|
130
|
-
return true;
|
|
131
|
-
}
|
|
132
|
-
}
|
|
133
|
-
return false;
|
|
134
|
-
}
|
|
135
|
-
}
|
|
136
|
-
CaseSharingStateService.ɵprov = i0.ɵɵdefineInjectable({ factory: function CaseSharingStateService_Factory() { return new CaseSharingStateService(); }, token: CaseSharingStateService, providedIn: "root" });
|
|
137
|
-
CaseSharingStateService.decorators = [
|
|
138
|
-
{ type: Injectable, args: [{
|
|
139
|
-
providedIn: 'root'
|
|
140
|
-
},] }
|
|
141
|
-
];
|
|
142
|
-
CaseSharingStateService.ctorParameters = () => [];
|
|
143
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FzZS1zaGFyaW5nLXN0YXRlLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9leHVpLWNvbW1vbi1saWIvc3JjL2xpYi9zZXJ2aWNlcy9jYXNlLXNoYXJpbmctc3RhdGUvY2FzZS1zaGFyaW5nLXN0YXRlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3ZDLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGdCQUFnQixDQUFDOztBQU90RCxNQUFNLE9BQU8sdUJBQXVCO0lBV2xDO1FBVFEsY0FBUyxHQUFpQixFQUFFLENBQUM7UUFDcEIsWUFBTyxHQUFHLElBQUksZUFBZSxDQUFlLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztJQVE3RCxDQUFDO0lBTmpCLElBQVcsS0FBSztRQUNkLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxZQUFZLEVBQUUsQ0FBQyxJQUFJLENBQ3JDLG9CQUFvQixFQUFFLENBQ3ZCLENBQUM7SUFDSixDQUFDO0lBSU0sUUFBUSxDQUFDLEtBQW1CO1FBQ2pDLElBQUksQ0FBQyxTQUFTLEdBQUcsRUFBRSxDQUFDO1FBQ3BCLEtBQUssQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUU7WUFDcEIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxNQUFNLEVBQUUsS0FBSyxDQUFDLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSyxDQUFDLFNBQVMsRUFBRSxVQUFVLEVBQUUsS0FBSyxDQUFDLFVBQVUsRUFBRSxLQUFLLEVBQUUsS0FBSyxDQUFDLEtBQUs7Z0JBQ3RILFVBQVUsRUFBRSxLQUFLLENBQUMsVUFBVSxFQUFFLGFBQWEsRUFBRSxLQUFLLENBQUMsYUFBYSxFQUFFLGVBQWUsRUFBRSxL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LENBQUMsQ0FBQyxDQUFDLFVBQVUsRUFBRTtZQUNqQixPQUFPLEtBQUssQ0FBQztTQUNkO1FBQ0QsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxVQUFVLENBQUMsTUFBTSxFQUFFLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUU7WUFDbkQsSUFBSSxDQUFDLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssS0FBSyxJQUFJLENBQUMsS0FBSyxFQUFFO2dCQUN4QyxPQUFPLElBQUksQ0FBQzthQUNiO1NBQ0Y7UUFDRCxPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7Ozs7WUF0SkYsVUFBVSxTQUFDO2dCQUNWLFVBQVUsRUFBRSxNQUFNO2FBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBkaXN0aW5jdFVudGlsQ2hhbmdlZCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IFNoYXJlZENhc2UgfSBmcm9tICcuLi8uLi9tb2RlbHMvY2FzZS1zaGFyZS5tb2RlbCc7XG5pbXBvcnQgeyBVc2VyRGV0YWlscyB9IGZyb20gJy4uLy4uL21vZGVscy91c2VyLWRldGFpbHMubW9kZWwnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBDYXNlU2hhcmluZ1N0YXRlU2VydmljZSB7XG5cbiAgcHJpdmF0ZSBjYXNlU3RhdGU6IFNoYXJlZENhc2VbXSA9IFtdO1xuICBwcml2YXRlIHJlYWRvbmx5IHN1YmplY3QgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PFNoYXJlZENhc2VbXT4odGhpcy5jYXNlU3RhdGUpO1xuXG4gIHB1YmxpYyBnZXQgc3RhdGUoKSB7XG4gICAgcmV0dXJuIHRoaXMuc3ViamVjdC5hc09ic2VydmFibGUoKS5waXBlKFxuICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKVxuICAgICk7XG4gIH1cblxuICBjb25zdHJ1Y3RvcigpIHsgfVxuXG4gIHB1YmxpYyBzZXRDYXNlcyhjYXNlczogU2hhcmVkQ2FzZVtdKTogdm9pZCB7XG4gICAgdGhpcy5jYXNlU3RhdGUgPSBbXTtcbiAgICBjYXNlcy5mb3JFYWNoKGFDYXNlID0+IHtcbiAgICAgIHRoaXMuY2FzZVN0YXRlLnB1c2goeyBjYXNlSWQ6IGFDYXNlLmNhc2VJZCwgY2FzZVRpdGxlOiBhQ2FzZS5jYXNlVGl0bGUsIGNhc2VUeXBlSWQ6IGFDYXNlLmNhc2VUeXBlSWQsIHJvbGVzOiBhQ2FzZS5yb2xlcyxcbiAgICAgICAgc2hhcmVkV2l0aDogYUNhc2Uuc2hhcmVkV2l0aCwgcGVuZGluZ1NoYXJlczogYUNhc2UucGVuZGluZ1NoYXJlcywgcGVuZGluZ1Vuc2hhcmVzOiBhQ2FzZS5wZW5kaW5nVW5zaGFyZXMgfSk7XG4gICAgfSk7XG4gICAgdGhpcy5zdWJqZWN0Lm5leHQodGhpcy5jYXNlU3RhdGUpO1xuICB9XG5cbiAgcHVibGljIGdldENhc2VzKCk6IFNoYXJlZENhc2VbXSB7XG4gICAgcmV0dXJuIHRoaXMuY2FzZVN0YXRlO1xuICB9XG5cbiAgcHVibGljIHJlcXVlc3RTaGFyZSh1c2VyOiBVc2VyRGV0YWlscyk6IFNoYXJlZENhc2VbXSB7XG4gICAgY29uc3Qgb2xkU2hhcmVkQ2FzZXM6IFNoYXJlZENhc2VbXSA9IHRoaXMuY2FzZVN0YXRlLnNsaWNlKCk7XG4gICAgY29uc3QgbmV3U2hhcmVkQ2FzZXM6IFNoYXJlZENhc2VbXSA9IFtdO1xuICAgIGZvciAoY29uc3Qgc2hhcmVkQ2FzZSBvZiBvbGRTaGFyZWRDYXNlcykge1xuICAgICAgaWYgKCFzaGFyZWRDYXNlLnBlbmRpbmdTaGFyZXMpIHtcbiAgICAgICAgc2hhcmVkQ2FzZS5wZW5kaW5nU2hhcmVzID0gW107XG4gICAgICB9XG4gICAgICBjb25zdCBuZXdQZW5kaW5nU2hhcmVzID0gc2hhcmVkQ2FzZS5wZW5kaW5nU2hhcmVzLnNsaWNlKCk7XG4gICAgICBpZiAoIXNoYXJlZENhc2UucGVuZGluZ1Vuc2hhcmVzKSB7XG4gICAgICAgIHNoYXJlZENhc2UucGVuZGluZ1Vuc2hhcmVzID0gW107XG4gICAgICB9XG4gICAgICBjb25zdCBuZXdQZW5kaW5nVW5zaGFyZXMgPSBzaGFyZWRDYXNlLnBlbmRpbmdVbnNoYXJlcy5zbGljZSgpO1xuICAgICAgaWYgKCF0aGlzLnVzZXJIYXNBY2Nlc3Moc2hhcmVkQ2FzZSwgdXNlcikpIHtcbiAgICAgICAgaWYgKCFuZXdQZW5kaW5nU2hhcmVzLnNvbWUodSA9PiB1LmVtYWlsID09PSB1c2VyLmVtYWlsKSkge1xuICAgICAgICAgIG5ld1BlbmRpbmdTaGFyZXMucHVzaCh1c2VyKTtcbiAgICAgICAgfVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgZm9yIChsZXQgdSA9IDAsIHVsID0gbmV3UGVuZGluZ1Vuc2hhcmVzLmxlbmd0aDsgdSA8IHVsOyB1KyspIHtcbiAgICAgICAgICBpZiAobmV3UGVuZGluZ1Vuc2hhcmVzW3VdLmVtYWlsID09PSB1c2VyLmVtYWlsKSB7XG4gICAgICAgICAgICBuZXdQZW5kaW5nVW5zaGFyZXMuc3BsaWNlKHUsIDEpO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICBjb25zdCBuZXdTaGFyZWRDYXNlID0ge1xuICAgICAgICAuLi5zaGFyZWRDYXNlLFxuICAgICAgICBwZW5kaW5nVW5zaGFyZXM6IG5ld1BlbmRpbmdVbnNoYXJlcyxcbiAgICAgICAgcGVuZGluZ1NoYXJlczogbmV3UGVuZGluZ1NoYXJlc1xuICAgICAgfTtcbiAgICAgIG5ld1NoYXJlZENhc2VzLnB1c2gobmV3U2hhcmVkQ2FzZSk7XG4gICAgfVxuICAgIHRoaXMuc3ViamVjdC5uZXh0KG5ld1NoYXJlZENhc2VzKTtcbiAgICByZXR1cm4gbmV3U2hhcmVkQ2FzZXM7XG4gIH1cblxuICBwdWJsaWMgcmVxdWVzdFVuc2hhcmUoY2FzZUlkOiBzdHJpbmcsIHVzZXI6IFVzZXJEZXRhaWxzKTogdm9pZCB7XG4gICAgY29uc3QgbmV3U2hhcmVkQ2FzZXM6IFNoYXJlZENhc2VbXSA9IFtdO1xuICAgIGZvciAoY29uc3Qgc2hhcmVkQ2FzZSBvZiB0aGlzLmNhc2VTdGF0ZSkge1xuICAgICAgaWYgKHNoYXJlZENhc2UuY2FzZUlkID09PSBjYXNlSWQpIHtcbiAgICAgICAgaWYgKCFzaGFyZWRDYXNlLnBlbmRpbmdVbnNoYXJlcykge1xuICAgICAgICAgIHNoYXJlZENhc2UucGVuZGluZ1Vuc2hhcmVzID0gW107XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgbmV3UGVuZGluZ1Vuc2hhcmVzID0gc2hhcmVkQ2FzZS5wZW5kaW5nVW5zaGFyZXMuc2xpY2UoKTtcbiAgICAgICAgaWYgKG5ld1BlbmRpbmdVbnNoYXJlcykge1xuICAgICAgICAgIGlmICghbmV3UGVuZGluZ1Vuc2hhcmVzLnNvbWUodSA9PiB1LmVtYWlsID09PSB1c2VyLmVtYWlsKSkge1xuICAgICAgICAgICAgbmV3UGVuZGluZ1Vuc2hhcmVzLnB1c2godXNlcik7XG4gICAgICAgICAgfVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIG5ld1BlbmRpbmdVbnNoYXJlcy5wdXNoKHVzZXIpO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IG5ld1NoYXJlZENhc2UgPSB7XG4gICAgICAgICAgLi4uc2hhcmVkQ2FzZSxcbiAgICAgICAgICBwZW5kaW5nVW5zaGFyZXM6IG5ld1BlbmRpbmdVbnNoYXJlc1xuICAgICAgICB9O1xuICAgICAgICBuZXdTaGFyZWRDYXNlcy5wdXNoKG5ld1NoYXJlZENhc2UpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgbmV3U2hhcmVkQ2FzZXMucHVzaChzaGFyZWRDYXNlKTtcbiAgICAgIH1cbiAgICB9XG4gICAgdGhpcy5zdWJqZWN0Lm5leHQobmV3U2hhcmVkQ2FzZXMpO1xuICAgIHJldHVybjtcbiAgfVxuXG4gIHB1YmxpYyByZXF1ZXN0Q2FuY2VsKGNhc2VJZDogc3RyaW5nLCB1c2VyOiBVc2VyRGV0YWlscyk6IHZvaWQge1xuICAgIGNvbnN0IG5ld1NoYXJlZENhc2VzOiBTaGFyZWRDYXNlW10gPSBbXTtcbiAgICBmb3IgKGNvbnN0IHNoYXJlZENhc2Ugb2YgdGhpcy5jYXNlU3RhdGUpIHtcbiAgICAgIGlmIChzaGFyZWRDYXNlLmNhc2VJZCA9PT0gY2FzZUlkKSB7XG4gICAgICAgIGlmICghc2hhcmVkQ2FzZS5wZW5kaW5nVW5zaGFyZXMpIHtcbiAgICAgICAgICBzaGFyZWRDYXNlLnBlbmRpbmdVbnNoYXJlcyA9IFtdO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IG5ld1BlbmRpbmdVbnNoYXJlcyA9IHNoYXJlZENhc2UucGVuZGluZ1Vuc2hhcmVzLnNsaWNlKCk7XG4gICAgICAgIGZvciAobGV0IGlQZW5kaW5nVW5zaGFyZXMgPSAwOyBpUGVuZGluZ1Vuc2hhcmVzIDwgbmV3UGVuZGluZ1Vuc2hhcmVzLmxlbmd0aDsgaVBlbmRpbmdVbnNoYXJlcysrKSB7XG4gICAgICAgICAgaWYgKG5ld1BlbmRpbmdVbnNoYXJlc1tpUGVuZGluZ1Vuc2hhcmVzXS5lbWFpbCA9PT0gdXNlci5lbWFpbCkge1xuICAgICAgICAgICAgbmV3UGVuZGluZ1Vuc2hhcmVzLnNwbGljZShpUGVuZGluZ1Vuc2hhcmVzLCAxKTtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBpZiAoIXNoYXJlZENhc2UucGVuZGluZ1NoYXJlcykge1xuICAgICAgICAgIHNoYXJlZENhc2UucGVuZGluZ1NoYXJlcyA9IFtdO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IG5ld1BlbmRpbmdTaGFyZXMgPSBzaGFyZWRDYXNlLnBlbmRpbmdTaGFyZXMuc2xpY2UoKTtcbiAgICAgICAgZm9yIChsZXQgaVBlbmRpbmdTaGFyZXMgPSAwOyBpUGVuZGluZ1NoYXJlcyA8IG5ld1BlbmRpbmdTaGFyZXMubGVuZ3RoOyBpUGVuZGluZ1NoYXJlcysrKSB7XG4gICAgICAgICAgaWYgKG5ld1BlbmRpbmdTaGFyZXNbaVBlbmRpbmdTaGFyZXNdLmVtYWlsID09PSB1c2VyLmVtYWlsKSB7XG4gICAgICAgICAgICBuZXdQZW5kaW5nU2hhcmVzLnNwbGljZShpUGVuZGluZ1NoYXJlcywgMSk7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgbmV3U2hhcmVkQ2FzZSA9IHtcbiAgICAgICAgICAuLi5zaGFyZWRDYXNlLFxuICAgICAgICAgIHBlbmRpbmdVbnNoYXJlczogbmV3UGVuZGluZ1Vuc2hhcmVzLFxuICAgICAgICAgIHBlbmRpbmdTaGFyZXM6IG5ld1BlbmRpbmdTaGFyZXNcbiAgICAgICAgfTtcbiAgICAgICAgbmV3U2hhcmVkQ2FzZXMucHVzaChuZXdTaGFyZWRDYXNlKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIG5ld1NoYXJlZENhc2VzLnB1c2goc2hhcmVkQ2FzZSk7XG4gICAgICB9XG4gICAgfVxuICAgIHRoaXMuc3ViamVjdC5uZXh0KG5ld1NoYXJlZENhc2VzKTtcbiAgICByZXR1cm47XG4gIH1cblxuICBwdWJsaWMgcmVtb3ZlQ2FzZShjYXNlSWQ6IHN0cmluZyk6IHZvaWQge1xuICAgIGZvciAobGV0IGkgPSAwLCBsID0gdGhpcy5jYXNlU3RhdGUubGVuZ3RoOyBpIDwgbDsgaSsrKSB7XG4gICAgICBpZiAodGhpcy5jYXNlU3RhdGVbaV0uY2FzZUlkID09PSBjYXNlSWQpIHtcbiAgICAgICAgdGhpcy5jYXNlU3RhdGUuc3BsaWNlKGksIDEpO1xuICAgICAgICB0aGlzLnN1YmplY3QubmV4dCh0aGlzLmNhc2VTdGF0ZSk7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwdWJsaWMgdXNlckhhc0FjY2VzcyhjOiBTaGFyZWRDYXNlLCB1c2VyOiBVc2VyRGV0YWlscyk6IGJvb2xlYW4ge1xuICAgIGlmICghYy5zaGFyZWRXaXRoKSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuICAgIGZvciAobGV0IGkgPSAwLCBsID0gYy5zaGFyZWRXaXRoLmxlbmd0aDsgaSA8IGw7IGkrKykge1xuICAgICAgaWYgKGMuc2hhcmVkV2l0aFtpXS5lbWFpbCA9PT0gdXNlci5lbWFpbCkge1xuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG59XG4iXX0=
|
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
import { DOCUMENT } from '@angular/common';
|
|
2
|
-
import { Inject, Injectable } from '@angular/core';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
import * as i1 from "@angular/common";
|
|
5
|
-
export class CookieService {
|
|
6
|
-
constructor(doc) {
|
|
7
|
-
this.document = doc;
|
|
8
|
-
}
|
|
9
|
-
setCookie(key, value, expiryDate) {
|
|
10
|
-
const expiry = expiryDate ? ` expires=${expiryDate}` : '';
|
|
11
|
-
const cookie = `${key}=${value};${expiry}`;
|
|
12
|
-
this.document.cookie = cookie;
|
|
13
|
-
}
|
|
14
|
-
getCookie(key) {
|
|
15
|
-
const cookieValue = this.document.cookie
|
|
16
|
-
.split('; ')
|
|
17
|
-
.find(row => row.startsWith(`${key}=`))
|
|
18
|
-
.split('=')[1];
|
|
19
|
-
return cookieValue;
|
|
20
|
-
}
|
|
21
|
-
deleteCookie(key, path, domain) {
|
|
22
|
-
const pathValue = path ? `; path=${path}` : '';
|
|
23
|
-
const domainValue = domain ? `; domain=${domain}` : '';
|
|
24
|
-
this.document.cookie = `${key}=${pathValue}${domainValue}; expires=Thu, 01 Jan 1970 00:00:01 GMT; max-age=0`;
|
|
25
|
-
}
|
|
26
|
-
deleteCookieByPartialMatch(key, path, domain) {
|
|
27
|
-
this.document.cookie
|
|
28
|
-
.split('; ')
|
|
29
|
-
.filter(row => row.startsWith(`${key}`))
|
|
30
|
-
.forEach(element => {
|
|
31
|
-
this.deleteCookie(element.split('=')[0], path, domain);
|
|
32
|
-
});
|
|
33
|
-
}
|
|
34
|
-
checkCookie(key) {
|
|
35
|
-
return this.document.cookie.split('; ').some(item => item.trim().startsWith(`${key}=`));
|
|
36
|
-
}
|
|
37
|
-
}
|
|
38
|
-
CookieService.ɵprov = i0.ɵɵdefineInjectable({ factory: function CookieService_Factory() { return new CookieService(i0.ɵɵinject(i1.DOCUMENT)); }, token: CookieService, providedIn: "root" });
|
|
39
|
-
CookieService.decorators = [
|
|
40
|
-
{ type: Injectable, args: [{
|
|
41
|
-
providedIn: 'root'
|
|
42
|
-
},] }
|
|
43
|
-
];
|
|
44
|
-
CookieService.ctorParameters = () => [
|
|
45
|
-
{ type: undefined, decorators: [{ type: Inject, args: [DOCUMENT,] }] }
|
|
46
|
-
];
|
|
47
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29va2llLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9leHVpLWNvbW1vbi1saWIvc3JjL2xpYi9zZXJ2aWNlcy9jb29raWUvY29va2llLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzNDLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFLbkQsTUFBTSxPQUFPLGFBQWE7SUFHeEIsWUFBOEIsR0FBUztRQUNyQyxJQUFJLENBQUMsUUFBUSxHQUFHLEdBQWUsQ0FBQztJQUNsQyxDQUFDO0lBRU0sU0FBUyxDQUFDLEdBQVcsRUFBRSxLQUFhLEVBQUUsVUFBbUI7UUFDOUQsTUFBTSxNQUFNLEdBQUcsVUFBVSxDQUFDLENBQUMsQ0FBQyxZQUFZLFVBQVUsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7UUFDMUQsTUFBTSxNQUFNLEdBQUcsR0FBRyxHQUFHLElBQUksS0FBSyxJQUFJLE1BQU0sRUFBRSxDQUFDO1FBQzNDLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQztJQUNoQyxDQUFDO0lBRU0sU0FBUyxDQUFDLEdBQVc7UUFDMUIsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNO2FBQ3JDLEtBQUssQ0FBQyxJQUFJLENBQUM7YUFDWCxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLEdBQUcsR0FBRyxHQUFHLENBQUMsQ0FBQzthQUN0QyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDakIsT0FBTyxXQUFXLENBQUM7SUFDckIsQ0FBQztJQUVNLFlBQVksQ0FBQyxHQUFXLEVBQUUsSUFBYSxFQUFFLE1BQWU7UUFDN0QsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLENBQUMsQ0FBQyxVQUFVLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7UUFDL0MsTUFBTSxXQUFXLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FBQyxZQUFZLE1BQU0sRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7UUFDdkQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLEdBQUcsR0FBRyxHQUFHLElBQUksU0FBUyxHQUFHLFdBQVcsb0RBQW9ELENBQUM7SUFDL0csQ0FBQztJQUVNLDBCQUEwQixDQUFDLEdBQVcsRUFBRSxJQUFhLEVBQUUsTUFBZTtRQUMzRSxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU07YUFDakIsS0FBSyxDQUFDLElBQUksQ0FBQzthQUNYLE1BQU0sQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsR0FBRyxHQUFHLEVBQUUsQ0FBQyxDQUFDO2FBQ3ZDLE9BQU8sQ0FBQyxPQUFPLENBQUMsRUFBRTtZQUNqQixJQUFJLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsSUFBSSxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBQ3pELENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVNLFdBQVcsQ0FBQyxHQUFXO1FBQzVCLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQyxVQUFVLENBQUMsR0FBRyxHQUFHLEdBQUcsQ0FBQyxDQUFDLENBQUM7SUFDMUYsQ0FBQzs7OztZQXpDRixVQUFVLFNBQUM7Z0JBQ1YsVUFBVSxFQUFFLE1BQU07YUFDbkI7Ozs0Q0FJYyxNQUFNLFNBQUMsUUFBUSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERPQ1VNRU5UIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBDb29raWVTZXJ2aWNlIHtcbiAgcHJpdmF0ZSByZWFkb25seSBkb2N1bWVudD86IERvY3VtZW50O1xuXG4gIGNvbnN0cnVjdG9yKEBJbmplY3QoRE9DVU1FTlQpIGRvYz86IGFueSkge1xuICAgIHRoaXMuZG9jdW1lbnQgPSBkb2MgYXMgRG9jdW1lbnQ7XG4gIH1cblxuICBwdWJsaWMgc2V0Q29va2llKGtleTogc3RyaW5nLCB2YWx1ZTogc3RyaW5nLCBleHBpcnlEYXRlPzogc3RyaW5nKTogdm9pZCB7XG4gICAgY29uc3QgZXhwaXJ5ID0gZXhwaXJ5RGF0ZSA/IGAgZXhwaXJlcz0ke2V4cGlyeURhdGV9YCA6ICcnO1xuICAgIGNvbnN0IGNvb2tpZSA9IGAke2tleX09JHt2YWx1ZX07JHtleHBpcnl9YDtcbiAgICB0aGlzLmRvY3VtZW50LmNvb2tpZSA9IGNvb2tpZTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRDb29raWUoa2V5OiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIGNvbnN0IGNvb2tpZVZhbHVlID0gdGhpcy5kb2N1bWVudC5jb29raWVcbiAgICAgIC5zcGxpdCgnOyAnKVxuICAgICAgLmZpbmQocm93ID0+IHJvdy5zdGFydHNXaXRoKGAke2tleX09YCkpXG4gICAgICAuc3BsaXQoJz0nKVsxXTtcbiAgICByZXR1cm4gY29va2llVmFsdWU7XG4gIH1cblxuICBwdWJsaWMgZGVsZXRlQ29va2llKGtleTogc3RyaW5nLCBwYXRoPzogc3RyaW5nLCBkb21haW4/OiBzdHJpbmcpOiB2b2lkIHtcbiAgICBjb25zdCBwYXRoVmFsdWUgPSBwYXRoID8gYDsgcGF0aD0ke3BhdGh9YCA6ICcnO1xuICAgIGNvbnN0IGRvbWFpblZhbHVlID0gZG9tYWluID8gYDsgZG9tYWluPSR7ZG9tYWlufWAgOiAnJztcbiAgICB0aGlzLmRvY3VtZW50LmNvb2tpZSA9IGAke2tleX09JHtwYXRoVmFsdWV9JHtkb21haW5WYWx1ZX07IGV4cGlyZXM9VGh1LCAwMSBKYW4gMTk3MCAwMDowMDowMSBHTVQ7IG1heC1hZ2U9MGA7XG4gIH1cblxuICBwdWJsaWMgZGVsZXRlQ29va2llQnlQYXJ0aWFsTWF0Y2goa2V5OiBzdHJpbmcsIHBhdGg/OiBzdHJpbmcsIGRvbWFpbj86IHN0cmluZyk6IHZvaWQge1xuICAgIHRoaXMuZG9jdW1lbnQuY29va2llXG4gICAgICAuc3BsaXQoJzsgJylcbiAgICAgIC5maWx0ZXIocm93ID0+IHJvdy5zdGFydHNXaXRoKGAke2tleX1gKSlcbiAgICAgIC5mb3JFYWNoKGVsZW1lbnQgPT4ge1xuICAgICAgICB0aGlzLmRlbGV0ZUNvb2tpZShlbGVtZW50LnNwbGl0KCc9JylbMF0sIHBhdGgsIGRvbWFpbik7XG4gICAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBjaGVja0Nvb2tpZShrZXk6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmRvY3VtZW50LmNvb2tpZS5zcGxpdCgnOyAnKS5zb21lKGl0ZW0gPT4gaXRlbS50cmltKCkuc3RhcnRzV2l0aChgJHtrZXl9PWApKTtcbiAgfVxufVxuIl19
|
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
import { Injectable } from '@angular/core';
|
|
2
|
-
import { Router } from '@angular/router';
|
|
3
|
-
import { combineLatest } from 'rxjs';
|
|
4
|
-
import { map } from 'rxjs/operators';
|
|
5
|
-
import { FeatureToggleService } from './feature-toggle.service';
|
|
6
|
-
import * as i0 from "@angular/core";
|
|
7
|
-
import * as i1 from "./feature-toggle.service";
|
|
8
|
-
import * as i2 from "@angular/router";
|
|
9
|
-
export class FeatureToggleGuard {
|
|
10
|
-
constructor(featureToggleService, router) {
|
|
11
|
-
this.featureToggleService = featureToggleService;
|
|
12
|
-
this.router = router;
|
|
13
|
-
}
|
|
14
|
-
/**
|
|
15
|
-
* Usage: Add the FeatureToggleGuard as the Guard for a route, and provide the following
|
|
16
|
-
* in the data array for the route:
|
|
17
|
-
* - needsFeaturesEnabled: An array of feature keys that need to be enabled for this route
|
|
18
|
-
* - featureDisabledRedirect: the URL to redirect to when the this route is not accessible due to disabled features
|
|
19
|
-
* @param route Automatically provided by Angular
|
|
20
|
-
*/
|
|
21
|
-
canActivate(route) {
|
|
22
|
-
return combineLatest(...route.data.needsFeaturesEnabled.map(feature => this.featureToggleService.getValueOnce(feature, false))).pipe(map(featureStatuses => featureStatuses.every(status => status)), map(status => status || this.router.parseUrl(route.data.featureDisabledRedirect)));
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
FeatureToggleGuard.ɵprov = i0.ɵɵdefineInjectable({ factory: function FeatureToggleGuard_Factory() { return new FeatureToggleGuard(i0.ɵɵinject(i1.FeatureToggleService), i0.ɵɵinject(i2.Router)); }, token: FeatureToggleGuard, providedIn: "root" });
|
|
26
|
-
FeatureToggleGuard.decorators = [
|
|
27
|
-
{ type: Injectable, args: [{
|
|
28
|
-
providedIn: 'root'
|
|
29
|
-
},] }
|
|
30
|
-
];
|
|
31
|
-
FeatureToggleGuard.ctorParameters = () => [
|
|
32
|
-
{ type: FeatureToggleService },
|
|
33
|
-
{ type: Router }
|
|
34
|
-
];
|
|
35
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmVhdHVyZS10b2dnbGUuZ3VhcmQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9leHVpLWNvbW1vbi1saWIvc3JjL2xpYi9zZXJ2aWNlcy9mZWF0dXJlLXRvZ2dsZS9mZWF0dXJlLXRvZ2dsZS5ndWFyZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBdUMsTUFBTSxFQUFXLE1BQU0saUJBQWlCLENBQUM7QUFDdkYsT0FBTyxFQUFFLGFBQWEsRUFBYyxNQUFNLE1BQU0sQ0FBQztBQUNqRCxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDckMsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7Ozs7QUFLaEUsTUFBTSxPQUFPLGtCQUFrQjtJQUUzQixZQUNxQixvQkFBMEMsRUFDMUMsTUFBYztRQURkLHlCQUFvQixHQUFwQixvQkFBb0IsQ0FBc0I7UUFDMUMsV0FBTSxHQUFOLE1BQU0sQ0FBUTtJQUNoQyxDQUFDO0lBRUo7Ozs7OztPQU1HO0lBQ0ksV0FBVyxDQUFDLEtBQTZCO1FBQzVDLE9BQU8sYUFBYSxDQUFDLEdBQUksS0FBSyxDQUFDLElBQUksQ0FBQyxvQkFBaUMsQ0FBQyxHQUFHLENBQ2pFLE9BQU8sQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLG9CQUFvQixDQUFDLFlBQVksQ0FBVSxPQUFPLEVBQUUsS0FBSyxDQUFDLENBQ2pGLENBQUMsQ0FBQyxJQUFJLENBQ0gsR0FBRyxDQUFDLGVBQWUsQ0FBQyxFQUFFLENBQUMsZUFBZSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEVBQy9ELEdBQUcsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLHVCQUFpQyxDQUFDLENBQUMsQ0FDOUYsQ0FBQztJQUNOLENBQUM7Ozs7WUF4QkosVUFBVSxTQUFDO2dCQUNSLFVBQVUsRUFBRSxNQUFNO2FBQ3JCOzs7WUFKUSxvQkFBb0I7WUFIaUIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlU25hcHNob3QsIENhbkFjdGl2YXRlLCBSb3V0ZXIsIFVybFRyZWUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgY29tYmluZUxhdGVzdCwgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgbWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgRmVhdHVyZVRvZ2dsZVNlcnZpY2UgfSBmcm9tICcuL2ZlYXR1cmUtdG9nZ2xlLnNlcnZpY2UnO1xuXG5ASW5qZWN0YWJsZSh7XG4gICAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIEZlYXR1cmVUb2dnbGVHdWFyZCBpbXBsZW1lbnRzIENhbkFjdGl2YXRlIHtcblxuICAgIHB1YmxpYyBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBmZWF0dXJlVG9nZ2xlU2VydmljZTogRmVhdHVyZVRvZ2dsZVNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgcm91dGVyOiBSb3V0ZXJcbiAgICApIHt9XG5cbiAgICAvKipcbiAgICAgKiBVc2FnZTogQWRkIHRoZSBGZWF0dXJlVG9nZ2xlR3VhcmQgYXMgdGhlIEd1YXJkIGZvciBhIHJvdXRlLCBhbmQgcHJvdmlkZSB0aGUgZm9sbG93aW5nXG4gICAgICogaW4gdGhlIGRhdGEgYXJyYXkgZm9yIHRoZSByb3V0ZTpcbiAgICAgKiAtIG5lZWRzRmVhdHVyZXNFbmFibGVkOiBBbiBhcnJheSBvZiBmZWF0dXJlIGtleXMgdGhhdCBuZWVkIHRvIGJlIGVuYWJsZWQgZm9yIHRoaXMgcm91dGVcbiAgICAgKiAtIGZlYXR1cmVEaXNhYmxlZFJlZGlyZWN0OiB0aGUgVVJMIHRvIHJlZGlyZWN0IHRvIHdoZW4gdGhlIHRoaXMgcm91dGUgaXMgbm90IGFjY2Vzc2libGUgZHVlIHRvIGRpc2FibGVkIGZlYXR1cmVzXG4gICAgICogQHBhcmFtIHJvdXRlIEF1dG9tYXRpY2FsbHkgcHJvdmlkZWQgYnkgQW5ndWxhclxuICAgICAqL1xuICAgIHB1YmxpYyBjYW5BY3RpdmF0ZShyb3V0ZTogQWN0aXZhdGVkUm91dGVTbmFwc2hvdCk6IE9ic2VydmFibGU8Ym9vbGVhbiB8IFVybFRyZWU+IHtcbiAgICAgICAgcmV0dXJuIGNvbWJpbmVMYXRlc3QoLi4uKHJvdXRlLmRhdGEubmVlZHNGZWF0dXJlc0VuYWJsZWQgYXMgc3RyaW5nW10pLm1hcChcbiAgICAgICAgICAgICAgICBmZWF0dXJlID0+IHRoaXMuZmVhdHVyZVRvZ2dsZVNlcnZpY2UuZ2V0VmFsdWVPbmNlPGJvb2xlYW4+KGZlYXR1cmUsIGZhbHNlKVxuICAgICAgICApKS5waXBlKFxuICAgICAgICAgICAgbWFwKGZlYXR1cmVTdGF0dXNlcyA9PiBmZWF0dXJlU3RhdHVzZXMuZXZlcnkoc3RhdHVzID0+IHN0YXR1cykpLFxuICAgICAgICAgICAgbWFwKHN0YXR1cyA9PiBzdGF0dXMgfHwgdGhpcy5yb3V0ZXIucGFyc2VVcmwocm91dGUuZGF0YS5mZWF0dXJlRGlzYWJsZWRSZWRpcmVjdCBhcyBzdHJpbmcpKVxuICAgICAgICApO1xuICAgIH1cbn1cbiJdfQ==
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
import { Injectable } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
export class FeatureToggleService {
|
|
4
|
-
// tslint:disable-next-line: variable-name
|
|
5
|
-
initialize(_user, _clientId) {
|
|
6
|
-
throw new Error('Not implemented');
|
|
7
|
-
}
|
|
8
|
-
// tslint:disable-next-line: variable-name
|
|
9
|
-
isEnabled(_feature) {
|
|
10
|
-
throw new Error('Not implemented');
|
|
11
|
-
}
|
|
12
|
-
// tslint:disable-next-line: variable-name
|
|
13
|
-
getValue(_key, _defaultValue) {
|
|
14
|
-
throw new Error('Not implemented');
|
|
15
|
-
}
|
|
16
|
-
// tslint:disable-next-line: variable-name
|
|
17
|
-
getValueOnce(_key, _defaultValue) {
|
|
18
|
-
throw new Error('Not implemented');
|
|
19
|
-
}
|
|
20
|
-
}
|
|
21
|
-
FeatureToggleService.ɵprov = i0.ɵɵdefineInjectable({ factory: function FeatureToggleService_Factory() { return new FeatureToggleService(); }, token: FeatureToggleService, providedIn: "root" });
|
|
22
|
-
FeatureToggleService.decorators = [
|
|
23
|
-
{ type: Injectable, args: [{
|
|
24
|
-
providedIn: 'root'
|
|
25
|
-
},] }
|
|
26
|
-
];
|
|
27
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmVhdHVyZS10b2dnbGUuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2V4dWktY29tbW9uLWxpYi9zcmMvbGliL3NlcnZpY2VzL2ZlYXR1cmUtdG9nZ2xlL2ZlYXR1cmUtdG9nZ2xlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFPM0MsTUFBTSxPQUFPLG9CQUFvQjtJQUM3QiwwQ0FBMEM7SUFDbkMsVUFBVSxDQUFDLEtBQWtCLEVBQUUsU0FBaUI7UUFDbkQsTUFBTSxJQUFJLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7SUFDRCwwQ0FBMEM7SUFDbkMsU0FBUyxDQUFDLFFBQWdCO1FBQzdCLE1BQU0sSUFBSSxLQUFLLENBQUMsaUJBQWlCLENBQUMsQ0FBQztJQUN2QyxDQUFDO0lBQ0QsMENBQTBDO0lBQ25DLFFBQVEsQ0FBSSxJQUFZLEVBQUUsYUFBZ0I7UUFDN0MsTUFBTSxJQUFJLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7SUFFRCwwQ0FBMEM7SUFDbkMsWUFBWSxDQUFJLElBQVksRUFBRSxhQUFnQjtRQUNqRCxNQUFNLElBQUksS0FBSyxDQUFDLGlCQUFpQixDQUFDLENBQUM7SUFDdkMsQ0FBQzs7OztZQXBCSixVQUFVLFNBQUM7Z0JBQ1IsVUFBVSxFQUFFLE1BQU07YUFDckIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBGZWF0dXJlVXNlciB9IGZyb20gJy4uLy4uL21vZGVscy9mZWF0dXJlLXVzZXInO1xuXG5ASW5qZWN0YWJsZSh7XG4gICAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIEZlYXR1cmVUb2dnbGVTZXJ2aWNlIHtcbiAgICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6IHZhcmlhYmxlLW5hbWVcbiAgICBwdWJsaWMgaW5pdGlhbGl6ZShfdXNlcjogRmVhdHVyZVVzZXIsIF9jbGllbnRJZDogc3RyaW5nKTogdm9pZCB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcignTm90IGltcGxlbWVudGVkJyk7XG4gICAgfVxuICAgIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTogdmFyaWFibGUtbmFtZVxuICAgIHB1YmxpYyBpc0VuYWJsZWQoX2ZlYXR1cmU6IHN0cmluZyk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ05vdCBpbXBsZW1lbnRlZCcpO1xuICAgIH1cbiAgICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6IHZhcmlhYmxlLW5hbWVcbiAgICBwdWJsaWMgZ2V0VmFsdWU8Uj4oX2tleTogc3RyaW5nLCBfZGVmYXVsdFZhbHVlOiBSKTogT2JzZXJ2YWJsZTxSPiB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcignTm90IGltcGxlbWVudGVkJyk7XG4gICAgfVxuXG4gICAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOiB2YXJpYWJsZS1uYW1lXG4gICAgcHVibGljIGdldFZhbHVlT25jZTxSPihfa2V5OiBzdHJpbmcsIF9kZWZhdWx0VmFsdWU6IFIpOiBPYnNlcnZhYmxlPFI+IHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdOb3QgaW1wbGVtZW50ZWQnKTtcbiAgICB9XG59XG4iXX0=
|
|
@@ -1,59 +0,0 @@
|
|
|
1
|
-
import { Injectable } from '@angular/core';
|
|
2
|
-
import * as LDClient from 'launchdarkly-js-client-sdk';
|
|
3
|
-
import { BehaviorSubject } from 'rxjs';
|
|
4
|
-
import { distinctUntilChanged, filter, map } from 'rxjs/operators';
|
|
5
|
-
import * as i0 from "@angular/core";
|
|
6
|
-
export class LaunchDarklyService {
|
|
7
|
-
constructor() {
|
|
8
|
-
this.ready = new BehaviorSubject(false);
|
|
9
|
-
this.features = {};
|
|
10
|
-
this.user = { anonymous: true };
|
|
11
|
-
this.clientId = '';
|
|
12
|
-
}
|
|
13
|
-
initialize(user = { anonymous: true }, clientId) {
|
|
14
|
-
this.ready.next(false);
|
|
15
|
-
this.user = user;
|
|
16
|
-
this.clientId = clientId;
|
|
17
|
-
this.client = LDClient.initialize(this.clientId, this.user, {});
|
|
18
|
-
this.client.on('ready', () => {
|
|
19
|
-
this.client.identify(this.user).then(() => this.ready.next(true));
|
|
20
|
-
});
|
|
21
|
-
}
|
|
22
|
-
isEnabled(feature) {
|
|
23
|
-
return this.getValue(feature, false);
|
|
24
|
-
}
|
|
25
|
-
getArray(feature) {
|
|
26
|
-
return this.getValue(feature, []);
|
|
27
|
-
}
|
|
28
|
-
getValue(feature, defaultValue) {
|
|
29
|
-
if (!this.features.hasOwnProperty(feature)) {
|
|
30
|
-
this.features[feature] = new BehaviorSubject(defaultValue);
|
|
31
|
-
this.ready.pipe(filter(ready => ready), map(() => this.client.variation(feature, defaultValue))).subscribe(value => {
|
|
32
|
-
this.features[feature].next(value);
|
|
33
|
-
this.client.on(`change:${feature}`, (val) => {
|
|
34
|
-
this.features[feature].next(val);
|
|
35
|
-
});
|
|
36
|
-
});
|
|
37
|
-
}
|
|
38
|
-
return this.features[feature].pipe(distinctUntilChanged());
|
|
39
|
-
}
|
|
40
|
-
/**
|
|
41
|
-
* This method returns an observable that will only get the state of the feature toggle
|
|
42
|
-
* once. It calls the LD SDK directly, and should only be used in circumstances where
|
|
43
|
-
* only one value should be emitted, that value coming directly from LD. This will likely
|
|
44
|
-
* only apply for Guards, and should be used only when absolutely necessary.
|
|
45
|
-
* @see getValue for regular usage.
|
|
46
|
-
* @param feature string
|
|
47
|
-
* @param defaultValue R
|
|
48
|
-
*/
|
|
49
|
-
getValueOnce(feature, defaultValue) {
|
|
50
|
-
return this.ready.pipe(filter(ready => ready), map(() => this.client.variation(feature, defaultValue)));
|
|
51
|
-
}
|
|
52
|
-
}
|
|
53
|
-
LaunchDarklyService.ɵprov = i0.ɵɵdefineInjectable({ factory: function LaunchDarklyService_Factory() { return new LaunchDarklyService(); }, token: LaunchDarklyService, providedIn: "root" });
|
|
54
|
-
LaunchDarklyService.decorators = [
|
|
55
|
-
{ type: Injectable, args: [{
|
|
56
|
-
providedIn: 'root'
|
|
57
|
-
},] }
|
|
58
|
-
];
|
|
59
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF1bmNoLWRhcmtseS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZXh1aS1jb21tb24tbGliL3NyYy9saWIvc2VydmljZXMvZmVhdHVyZS10b2dnbGUvbGF1bmNoLWRhcmtseS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxLQUFLLFFBQVEsTUFBTSw0QkFBNEIsQ0FBQztBQUN2RCxPQUFPLEVBQUUsZUFBZSxFQUFjLE1BQU0sTUFBTSxDQUFDO0FBQ25ELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7O0FBT25FLE1BQU0sT0FBTyxtQkFBbUI7SUFIaEM7UUFNcUIsVUFBSyxHQUE2QixJQUFJLGVBQWUsQ0FBVSxLQUFLLENBQUMsQ0FBQztRQUN0RSxhQUFRLEdBQXlDLEVBQUUsQ0FBQztRQUM3RCxTQUFJLEdBQWdCLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxDQUFDO1FBQ3hDLGFBQVEsR0FBVyxFQUFFLENBQUM7S0FxRGpDO0lBbkRVLFVBQVUsQ0FBQyxPQUFvQixFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUUsRUFBRSxRQUFnQjtRQUN2RSxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUN2QixJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQztRQUNqQixJQUFJLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQztRQUN6QixJQUFJLENBQUMsTUFBTSxHQUFHLFFBQVEsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ2hFLElBQUksQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLE9BQU8sRUFBRSxHQUFHLEVBQUU7WUFDekIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBQ3RFLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVNLFNBQVMsQ0FBQyxPQUFlO1FBQzVCLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBVSxPQUFPLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDbEQsQ0FBQztJQUVNLFFBQVEsQ0FBVSxPQUFlO1FBQ3BDLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBTSxPQUFPLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDM0MsQ0FBQztJQUVNLFFBQVEsQ0FBSSxPQUFlLEVBQUUsWUFBZTtRQUMvQyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxjQUFjLENBQUMsT0FBTyxDQUFDLEVBQUU7WUFDeEMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsR0FBRyxJQUFJLGVBQWUsQ0FBSSxZQUFZLENBQUMsQ0FBQztZQUM5RCxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FDWCxNQUFNLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsRUFDdEIsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLE9BQU8sRUFBRSxZQUFZLENBQUMsQ0FBQyxDQUMxRCxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRTtnQkFDaEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7Z0JBQ25DLElBQUksQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLFVBQVUsT0FBTyxFQUFFLEVBQUUsQ0FBQyxHQUFNLEVBQUUsRUFBRTtvQkFDM0MsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7Z0JBQ3JDLENBQUMsQ0FBQyxDQUFDO1lBQ1AsQ0FBQyxDQUFDLENBQUM7U0FDTjtRQUNELE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQyxJQUFJLENBQzlCLG9CQUFvQixFQUFFLENBQ3pCLENBQUM7SUFDTixDQUFDO0lBRUQ7Ozs7Ozs7O09BUUc7SUFDSSxZQUFZLENBQUksT0FBZSxFQUFFLFlBQWU7UUFDbkQsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FDbEIsTUFBTSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLEVBQ3RCLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxPQUFPLEVBQUUsWUFBWSxDQUFDLENBQUMsQ0FDMUQsQ0FBQztJQUNOLENBQUM7Ozs7WUE3REosVUFBVSxTQUFDO2dCQUNSLFVBQVUsRUFBRSxNQUFNO2FBQ3JCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0ICogYXMgTERDbGllbnQgZnJvbSAnbGF1bmNoZGFya2x5LWpzLWNsaWVudC1zZGsnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBkaXN0aW5jdFVudGlsQ2hhbmdlZCwgZmlsdGVyLCBtYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBGZWF0dXJlVXNlciB9IGZyb20gJy4uLy4uL21vZGVscy9mZWF0dXJlLXVzZXInO1xuaW1wb3J0IHsgRmVhdHVyZVRvZ2dsZVNlcnZpY2UgfSBmcm9tICcuL2ZlYXR1cmUtdG9nZ2xlLnNlcnZpY2UnO1xuXG5ASW5qZWN0YWJsZSh7XG4gICAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIExhdW5jaERhcmtseVNlcnZpY2UgaW1wbGVtZW50cyBGZWF0dXJlVG9nZ2xlU2VydmljZSB7XG5cbiAgICBwcml2YXRlIGNsaWVudDogTERDbGllbnQuTERDbGllbnQ7XG4gICAgcHJpdmF0ZSByZWFkb25seSByZWFkeTogQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPihmYWxzZSk7XG4gICAgcHJpdmF0ZSByZWFkb25seSBmZWF0dXJlczogUmVjb3JkPHN0cmluZywgQmVoYXZpb3JTdWJqZWN0PGFueT4+ID0ge307XG4gICAgcHJpdmF0ZSB1c2VyOiBGZWF0dXJlVXNlciA9IHsgYW5vbnltb3VzOiB0cnVlIH07XG4gICAgcHJpdmF0ZSBjbGllbnRJZDogc3RyaW5nID0gJyc7XG5cbiAgICBwdWJsaWMgaW5pdGlhbGl6ZSh1c2VyOiBGZWF0dXJlVXNlciA9IHsgYW5vbnltb3VzOiB0cnVlIH0sIGNsaWVudElkOiBzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5yZWFkeS5uZXh0KGZhbHNlKTtcbiAgICAgICAgdGhpcy51c2VyID0gdXNlcjtcbiAgICAgICAgdGhpcy5jbGllbnRJZCA9IGNsaWVudElkO1xuICAgICAgICB0aGlzLmNsaWVudCA9IExEQ2xpZW50LmluaXRpYWxpemUodGhpcy5jbGllbnRJZCwgdGhpcy51c2VyLCB7fSk7XG4gICAgICAgIHRoaXMuY2xpZW50Lm9uKCdyZWFkeScsICgpID0+IHtcbiAgICAgICAgICAgIHRoaXMuY2xpZW50LmlkZW50aWZ5KHRoaXMudXNlcikudGhlbigoKSA9PiB0aGlzLnJlYWR5Lm5leHQodHJ1ZSkpO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgaXNFbmFibGVkKGZlYXR1cmU6IHN0cmluZyk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgICAgICByZXR1cm4gdGhpcy5nZXRWYWx1ZTxib29sZWFuPihmZWF0dXJlLCBmYWxzZSk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldEFycmF5PFIgPSBhbnk+KGZlYXR1cmU6IHN0cmluZyk6IE9ic2VydmFibGU8UltdPiB7XG4gICAgICAgIHJldHVybiB0aGlzLmdldFZhbHVlPFJbXT4oZmVhdHVyZSwgW10pO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXRWYWx1ZTxSPihmZWF0dXJlOiBzdHJpbmcsIGRlZmF1bHRWYWx1ZTogUik6IE9ic2VydmFibGU8Uj4ge1xuICAgICAgICBpZiAoIXRoaXMuZmVhdHVyZXMuaGFzT3duUHJvcGVydHkoZmVhdHVyZSkpIHtcbiAgICAgICAgICAgIHRoaXMuZmVhdHVyZXNbZmVhdHVyZV0gPSBuZXcgQmVoYXZpb3JTdWJqZWN0PFI+KGRlZmF1bHRWYWx1ZSk7XG4gICAgICAgICAgICB0aGlzLnJlYWR5LnBpcGUoXG4gICAgICAgICAgICAgICAgZmlsdGVyKHJlYWR5ID0+IHJlYWR5KSxcbiAgICAgICAgICAgICAgICBtYXAoKCkgPT4gdGhpcy5jbGllbnQudmFyaWF0aW9uKGZlYXR1cmUsIGRlZmF1bHRWYWx1ZSkpXG4gICAgICAgICAgICApLnN1YnNjcmliZSh2YWx1ZSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5mZWF0dXJlc1tmZWF0dXJlXS5uZXh0KHZhbHVlKTtcbiAgICAgICAgICAgICAgICB0aGlzLmNsaWVudC5vbihgY2hhbmdlOiR7ZmVhdHVyZX1gLCAodmFsOiBSKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZmVhdHVyZXNbZmVhdHVyZV0ubmV4dCh2YWwpO1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHRoaXMuZmVhdHVyZXNbZmVhdHVyZV0ucGlwZShcbiAgICAgICAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKClcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBUaGlzIG1ldGhvZCByZXR1cm5zIGFuIG9ic2VydmFibGUgdGhhdCB3aWxsIG9ubHkgZ2V0IHRoZSBzdGF0ZSBvZiB0aGUgZmVhdHVyZSB0b2dnbGVcbiAgICAgKiBvbmNlLiBJdCBjYWxscyB0aGUgTEQgU0RLIGRpcmVjdGx5LCBhbmQgc2hvdWxkIG9ubHkgYmUgdXNlZCBpbiBjaXJjdW1zdGFuY2VzIHdoZXJlXG4gICAgICogb25seSBvbmUgdmFsdWUgc2hvdWxkIGJlIGVtaXR0ZWQsIHRoYXQgdmFsdWUgY29taW5nIGRpcmVjdGx5IGZyb20gTEQuIFRoaXMgd2lsbCBsaWtlbHlcbiAgICAgKiBvbmx5IGFwcGx5IGZvciBHdWFyZHMsIGFuZCBzaG91bGQgYmUgdXNlZCBvbmx5IHdoZW4gYWJzb2x1dGVseSBuZWNlc3NhcnkuXG4gICAgICogQHNlZSBnZXRWYWx1ZSBmb3IgcmVndWxhciB1c2FnZS5cbiAgICAgKiBAcGFyYW0gZmVhdHVyZSBzdHJpbmdcbiAgICAgKiBAcGFyYW0gZGVmYXVsdFZhbHVlIFJcbiAgICAgKi9cbiAgICBwdWJsaWMgZ2V0VmFsdWVPbmNlPFI+KGZlYXR1cmU6IHN0cmluZywgZGVmYXVsdFZhbHVlOiBSKTogT2JzZXJ2YWJsZTxSPiB7XG4gICAgICAgIHJldHVybiB0aGlzLnJlYWR5LnBpcGUoXG4gICAgICAgICAgICBmaWx0ZXIocmVhZHkgPT4gcmVhZHkpLFxuICAgICAgICAgICAgbWFwKCgpID0+IHRoaXMuY2xpZW50LnZhcmlhdGlvbihmZWF0dXJlLCBkZWZhdWx0VmFsdWUpKVxuICAgICAgICApO1xuICAgIH1cbn1cbiJdfQ==
|