@hmcts/rpx-xui-common-lib 2.1.6-angular-upgrade-11-welsh → 2.1.6-javascript-void
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 +163 -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/{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 +21 -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 +85 -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 +10377 -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 +12 -6
- package/lib/components/find-person/find-person.component.d.ts +5 -2
- package/lib/components/find-service/find-service.component.d.ts +24 -9
- 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 +25 -20
- package/lib/components/search-service/search-service.component.d.ts +16 -9
- package/lib/components/search-venue/search-venue.component.d.ts +3 -1
- package/lib/components/selected-case/selected-case.component.d.ts +3 -0
- 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 +3 -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 +4 -0
- 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/contact-details.model.d.ts +4 -0
- package/lib/models/feature-user.d.ts +4 -6
- package/lib/models/filter.model.d.ts +42 -9
- package/lib/models/index.d.ts +4 -0
- package/lib/models/location.model.d.ts +12 -12
- package/lib/models/person.model.d.ts +5 -3
- 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 +3 -0
- 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 +4 -1
- 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 -5139
- 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 -70
- 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 -124
- package/esm2015/lib/components/find-person/find-person.component.js +0 -118
- package/esm2015/lib/components/find-service/find-service.component.js +0 -31
- package/esm2015/lib/components/generic-filter/generic-filter-utils.js +0 -21
- package/esm2015/lib/components/generic-filter/generic-filter.component.js +0 -387
- 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 -133
- package/esm2015/lib/components/search-service/search-service.component.js +0 -31
- package/esm2015/lib/components/search-venue/search-venue.component.js +0 -123
- package/esm2015/lib/components/selected-case/selected-case.component.js +0 -158
- 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 -49
- 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 -205
- 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 -160
- 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/feature-user.js +0 -5
- package/esm2015/lib/models/filter.model.js +0 -3
- package/esm2015/lib/models/index.js +0 -15
- package/esm2015/lib/models/location.model.js +0 -7
- package/esm2015/lib/models/person.model.js +0 -19
- package/esm2015/lib/models/user-details.model.js +0 -2
- package/esm2015/lib/services/case-sharing-state/case-sharing-state.service.js +0 -157
- 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 -4172
- package/fesm2015/hmcts-rpx-xui-common-lib.js.map +0 -1
- package/hmcts-rpx-xui-common-lib.d.ts +0 -69
- 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/case-share.model.js → esm2022/lib/models/case-share.model.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,68 +0,0 @@
|
|
|
1
|
-
import { DOCUMENT } from '@angular/common';
|
|
2
|
-
import { Inject, Injectable } from '@angular/core';
|
|
3
|
-
import { Title } from '@angular/platform-browser';
|
|
4
|
-
import { NavigationEnd, Router } from '@angular/router';
|
|
5
|
-
import { windowToken } from '../../window';
|
|
6
|
-
import * as i0 from "@angular/core";
|
|
7
|
-
import * as i1 from "@angular/router";
|
|
8
|
-
import * as i2 from "@angular/platform-browser";
|
|
9
|
-
import * as i3 from "../../window";
|
|
10
|
-
import * as i4 from "@angular/common";
|
|
11
|
-
export class GoogleAnalyticsService {
|
|
12
|
-
constructor(router, title, window, document) {
|
|
13
|
-
this.router = router;
|
|
14
|
-
this.title = title;
|
|
15
|
-
this.window = window;
|
|
16
|
-
this.document = document;
|
|
17
|
-
}
|
|
18
|
-
init(googleAnalyticsKey) {
|
|
19
|
-
this.googleAnalyticsKey = googleAnalyticsKey;
|
|
20
|
-
try {
|
|
21
|
-
const script1 = this.document.createElement('script');
|
|
22
|
-
script1.async = true;
|
|
23
|
-
script1.src = `https://www.googletagmanager.com/gtag/js?id=${this.googleAnalyticsKey}`;
|
|
24
|
-
this.document.head.appendChild(script1);
|
|
25
|
-
const script2 = this.document.createElement('script');
|
|
26
|
-
script2.innerHTML = `
|
|
27
|
-
window.dataLayer = window.dataLayer || [];
|
|
28
|
-
function gtag(){dataLayer.push(arguments);}
|
|
29
|
-
gtag('js', new Date());
|
|
30
|
-
gtag('config', '${this.googleAnalyticsKey}', {'send_page_view': false});
|
|
31
|
-
`;
|
|
32
|
-
this.document.head.appendChild(script2);
|
|
33
|
-
}
|
|
34
|
-
catch (ex) {
|
|
35
|
-
console.error('Error appending google analytics');
|
|
36
|
-
console.error(ex);
|
|
37
|
-
}
|
|
38
|
-
this.listenForRouteChanges();
|
|
39
|
-
}
|
|
40
|
-
listenForRouteChanges() {
|
|
41
|
-
if (this.googleAnalyticsKey) {
|
|
42
|
-
this.router.events.subscribe(event => {
|
|
43
|
-
if (event instanceof NavigationEnd) {
|
|
44
|
-
this.window.gtag('config', this.googleAnalyticsKey, {
|
|
45
|
-
page_path: event.urlAfterRedirects,
|
|
46
|
-
page_title: this.title.getTitle(),
|
|
47
|
-
});
|
|
48
|
-
}
|
|
49
|
-
});
|
|
50
|
-
}
|
|
51
|
-
}
|
|
52
|
-
event(eventName, params) {
|
|
53
|
-
this.window.gtag('event', eventName, params);
|
|
54
|
-
}
|
|
55
|
-
}
|
|
56
|
-
GoogleAnalyticsService.ɵprov = i0.ɵɵdefineInjectable({ factory: function GoogleAnalyticsService_Factory() { return new GoogleAnalyticsService(i0.ɵɵinject(i1.Router), i0.ɵɵinject(i2.Title), i0.ɵɵinject(i3.windowToken), i0.ɵɵinject(i4.DOCUMENT)); }, token: GoogleAnalyticsService, providedIn: "root" });
|
|
57
|
-
GoogleAnalyticsService.decorators = [
|
|
58
|
-
{ type: Injectable, args: [{
|
|
59
|
-
providedIn: 'root'
|
|
60
|
-
},] }
|
|
61
|
-
];
|
|
62
|
-
GoogleAnalyticsService.ctorParameters = () => [
|
|
63
|
-
{ type: Router },
|
|
64
|
-
{ type: Title },
|
|
65
|
-
{ type: undefined, decorators: [{ type: Inject, args: [windowToken,] }] },
|
|
66
|
-
{ type: undefined, decorators: [{ type: Inject, args: [DOCUMENT,] }] }
|
|
67
|
-
];
|
|
68
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ29vZ2xlLWFuYWx5dGljcy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZXh1aS1jb21tb24tbGliL3NyYy9saWIvc2VydmljZXMvZ29vZ2xlLWFuYWx5dGljcy9nb29nbGUtYW5hbHl0aWNzLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzNDLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25ELE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNsRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxjQUFjLENBQUM7Ozs7OztBQU0zQyxNQUFNLE9BQU8sc0JBQXNCO0lBTWpDLFlBQ21CLE1BQWMsRUFDZCxLQUFZLEVBQ1IsTUFBVyxFQUNkLFFBQWE7UUFIZCxXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQ2QsVUFBSyxHQUFMLEtBQUssQ0FBTztRQUk3QixJQUFJLENBQUMsTUFBTSxHQUFHLE1BQWdCLENBQUM7UUFDL0IsSUFBSSxDQUFDLFFBQVEsR0FBRyxRQUFvQixDQUFDO0lBRXZDLENBQUM7SUFFTSxJQUFJLENBQUMsa0JBQTBCO1FBQ3BDLElBQUksQ0FBQyxrQkFBa0IsR0FBRyxrQkFBa0IsQ0FBQztRQUM3QyxJQUFJO1lBQ0YsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDdEQsT0FBTyxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUM7WUFDckIsT0FBTyxDQUFDLEdBQUcsR0FBRywrQ0FBK0MsSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUM7WUFDdkYsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBRXhDLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQ3RELE9BQU8sQ0FBQyxTQUFTLEdBQUc7Ozs7MEJBSUEsSUFBSSxDQUFDLGtCQUFrQjtPQUMxQyxDQUFDO1lBQ0YsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1NBQ3pDO1FBQUMsT0FBTyxFQUFFLEVBQUU7WUFDWCxPQUFPLENBQUMsS0FBSyxDQUFDLGtDQUFrQyxDQUFDLENBQUM7WUFDbEQsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQztTQUNuQjtRQUNELElBQUksQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO0lBQy9CLENBQUM7SUFFTyxxQkFBcUI7UUFDM0IsSUFBSSxJQUFJLENBQUMsa0JBQWtCLEVBQUU7WUFDM0IsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFO2dCQUNuQyxJQUFJLEtBQUssWUFBWSxhQUFhLEVBQUU7b0JBQ2pDLElBQUksQ0FBQyxNQUFjLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsa0JBQWtCLEVBQUU7d0JBQzNELFNBQVMsRUFBRSxLQUFLLENBQUMsaUJBQWlCO3dCQUNsQyxVQUFVLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUU7cUJBQ2xDLENBQUMsQ0FBQztpQkFDSjtZQUNILENBQUMsQ0FBQyxDQUFDO1NBQ0o7SUFDSCxDQUFDO0lBRU0sS0FBSyxDQUFDLFNBQWlCLEVBQUUsTUFBVTtRQUN2QyxJQUFJLENBQUMsTUFBYyxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBQ3hELENBQUM7Ozs7WUEzREYsVUFBVSxTQUFDO2dCQUNWLFVBQVUsRUFBRSxNQUFNO2FBQ25COzs7WUFMdUIsTUFBTTtZQURyQixLQUFLOzRDQWlCVCxNQUFNLFNBQUMsV0FBVzs0Q0FDbEIsTUFBTSxTQUFDLFFBQVEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBET0NVTUVOVCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFRpdGxlIH0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlcic7XG5pbXBvcnQgeyBOYXZpZ2F0aW9uRW5kLCBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgd2luZG93VG9rZW4gfSBmcm9tICcuLi8uLi93aW5kb3cnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcblxuZXhwb3J0IGNsYXNzIEdvb2dsZUFuYWx5dGljc1NlcnZpY2Uge1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgZG9jdW1lbnQ6IERvY3VtZW50O1xuICBwcml2YXRlIHJlYWRvbmx5IHdpbmRvdzogV2luZG93O1xuXG4gIHB1YmxpYyBnb29nbGVBbmFseXRpY3NLZXk6IHN0cmluZztcbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByZWFkb25seSByb3V0ZXI6IFJvdXRlcixcbiAgICBwcml2YXRlIHJlYWRvbmx5IHRpdGxlOiBUaXRsZSxcbiAgICBASW5qZWN0KHdpbmRvd1Rva2VuKSB3aW5kb3c6IGFueSxcbiAgICBASW5qZWN0KERPQ1VNRU5UKSBkb2N1bWVudDogYW55LFxuICApIHtcbiAgICB0aGlzLndpbmRvdyA9IHdpbmRvdyBhcyBXaW5kb3c7XG4gICAgdGhpcy5kb2N1bWVudCA9IGRvY3VtZW50IGFzIERvY3VtZW50O1xuXG4gIH1cblxuICBwdWJsaWMgaW5pdChnb29nbGVBbmFseXRpY3NLZXk6IHN0cmluZykge1xuICAgIHRoaXMuZ29vZ2xlQW5hbHl0aWNzS2V5ID0gZ29vZ2xlQW5hbHl0aWNzS2V5O1xuICAgIHRyeSB7XG4gICAgICBjb25zdCBzY3JpcHQxID0gdGhpcy5kb2N1bWVudC5jcmVhdGVFbGVtZW50KCdzY3JpcHQnKTtcbiAgICAgIHNjcmlwdDEuYXN5bmMgPSB0cnVlO1xuICAgICAgc2NyaXB0MS5zcmMgPSBgaHR0cHM6Ly93d3cuZ29vZ2xldGFnbWFuYWdlci5jb20vZ3RhZy9qcz9pZD0ke3RoaXMuZ29vZ2xlQW5hbHl0aWNzS2V5fWA7XG4gICAgICB0aGlzLmRvY3VtZW50LmhlYWQuYXBwZW5kQ2hpbGQoc2NyaXB0MSk7XG5cbiAgICAgIGNvbnN0IHNjcmlwdDIgPSB0aGlzLmRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3NjcmlwdCcpO1xuICAgICAgc2NyaXB0Mi5pbm5lckhUTUwgPSBgXG4gICAgICAgIHdpbmRvdy5kYXRhTGF5ZXIgPSB3aW5kb3cuZGF0YUxheWVyIHx8IFtdO1xuICAgICAgICBmdW5jdGlvbiBndGFnKCl7ZGF0YUxheWVyLnB1c2goYXJndW1lbnRzKTt9XG4gICAgICAgIGd0YWcoJ2pzJywgbmV3IERhdGUoKSk7XG4gICAgICAgIGd0YWcoJ2NvbmZpZycsICcke3RoaXMuZ29vZ2xlQW5hbHl0aWNzS2V5fScsIHsnc2VuZF9wYWdlX3ZpZXcnOiBmYWxzZX0pO1xuICAgICAgYDtcbiAgICAgIHRoaXMuZG9jdW1lbnQuaGVhZC5hcHBlbmRDaGlsZChzY3JpcHQyKTtcbiAgICB9IGNhdGNoIChleCkge1xuICAgICAgY29uc29sZS5lcnJvcignRXJyb3IgYXBwZW5kaW5nIGdvb2dsZSBhbmFseXRpY3MnKTtcbiAgICAgIGNvbnNvbGUuZXJyb3IoZXgpO1xuICAgIH1cbiAgICB0aGlzLmxpc3RlbkZvclJvdXRlQ2hhbmdlcygpO1xuICB9XG5cbiAgcHJpdmF0ZSBsaXN0ZW5Gb3JSb3V0ZUNoYW5nZXMoKSB7XG4gICAgaWYgKHRoaXMuZ29vZ2xlQW5hbHl0aWNzS2V5KSB7XG4gICAgICB0aGlzLnJvdXRlci5ldmVudHMuc3Vic2NyaWJlKGV2ZW50ID0+IHtcbiAgICAgICAgaWYgKGV2ZW50IGluc3RhbmNlb2YgTmF2aWdhdGlvbkVuZCkge1xuICAgICAgICAgICh0aGlzLndpbmRvdyBhcyBhbnkpLmd0YWcoJ2NvbmZpZycsIHRoaXMuZ29vZ2xlQW5hbHl0aWNzS2V5LCB7XG4gICAgICAgICAgICBwYWdlX3BhdGg6IGV2ZW50LnVybEFmdGVyUmVkaXJlY3RzLFxuICAgICAgICAgICAgcGFnZV90aXRsZTogdGhpcy50aXRsZS5nZXRUaXRsZSgpLFxuICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgZXZlbnQoZXZlbnROYW1lOiBzdHJpbmcsIHBhcmFtczoge30pIHtcbiAgICAodGhpcy53aW5kb3cgYXMgYW55KS5ndGFnKCdldmVudCcsIGV2ZW50TmFtZSwgcGFyYW1zKTtcbiAgfVxuXG59XG4iXX0=
|
|
@@ -1,71 +0,0 @@
|
|
|
1
|
-
import { DOCUMENT } from '@angular/common';
|
|
2
|
-
import { Inject, Injectable } from '@angular/core';
|
|
3
|
-
import { Title } from '@angular/platform-browser';
|
|
4
|
-
import { NavigationEnd, Router } from '@angular/router';
|
|
5
|
-
import { windowToken } from '../../window';
|
|
6
|
-
import * as i0 from "@angular/core";
|
|
7
|
-
import * as i1 from "@angular/router";
|
|
8
|
-
import * as i2 from "@angular/platform-browser";
|
|
9
|
-
import * as i3 from "../../window";
|
|
10
|
-
import * as i4 from "@angular/common";
|
|
11
|
-
export class GoogleTagManagerService {
|
|
12
|
-
constructor(router, title, window, document) {
|
|
13
|
-
this.router = router;
|
|
14
|
-
this.title = title;
|
|
15
|
-
this.window = window;
|
|
16
|
-
this.document = document;
|
|
17
|
-
}
|
|
18
|
-
init(googleTagManagerKey) {
|
|
19
|
-
this.googleTagManagerKey = googleTagManagerKey;
|
|
20
|
-
try {
|
|
21
|
-
this.window.dataLayer = this.window.dataLayer || [];
|
|
22
|
-
this.window.dataLayer.push({
|
|
23
|
-
'gtm.start': new Date().getTime(),
|
|
24
|
-
event: 'gtm.js'
|
|
25
|
-
});
|
|
26
|
-
const script = this.document.createElement('script');
|
|
27
|
-
script.async = true;
|
|
28
|
-
script.src = `https://www.googletagmanager.com/gtm.js?id=${this.googleTagManagerKey}`;
|
|
29
|
-
this.document.head.appendChild(script);
|
|
30
|
-
}
|
|
31
|
-
catch (ex) {
|
|
32
|
-
console.error('Error appending google tag manager');
|
|
33
|
-
console.error(ex);
|
|
34
|
-
}
|
|
35
|
-
this.listenForRouteChanges();
|
|
36
|
-
}
|
|
37
|
-
listenForRouteChanges() {
|
|
38
|
-
if (this.googleTagManagerKey) {
|
|
39
|
-
this.router.events.subscribe(event => {
|
|
40
|
-
if (event instanceof NavigationEnd) {
|
|
41
|
-
this.window.dataLayer.push({
|
|
42
|
-
event: 'pageview',
|
|
43
|
-
page: {
|
|
44
|
-
path: event.urlAfterRedirects,
|
|
45
|
-
title: this.title.getTitle()
|
|
46
|
-
}
|
|
47
|
-
});
|
|
48
|
-
}
|
|
49
|
-
});
|
|
50
|
-
}
|
|
51
|
-
}
|
|
52
|
-
event(eventName, params) {
|
|
53
|
-
this.window.dataLayer.push({
|
|
54
|
-
event: eventName,
|
|
55
|
-
params
|
|
56
|
-
});
|
|
57
|
-
}
|
|
58
|
-
}
|
|
59
|
-
GoogleTagManagerService.ɵprov = i0.ɵɵdefineInjectable({ factory: function GoogleTagManagerService_Factory() { return new GoogleTagManagerService(i0.ɵɵinject(i1.Router), i0.ɵɵinject(i2.Title), i0.ɵɵinject(i3.windowToken), i0.ɵɵinject(i4.DOCUMENT)); }, token: GoogleTagManagerService, providedIn: "root" });
|
|
60
|
-
GoogleTagManagerService.decorators = [
|
|
61
|
-
{ type: Injectable, args: [{
|
|
62
|
-
providedIn: 'root'
|
|
63
|
-
},] }
|
|
64
|
-
];
|
|
65
|
-
GoogleTagManagerService.ctorParameters = () => [
|
|
66
|
-
{ type: Router },
|
|
67
|
-
{ type: Title },
|
|
68
|
-
{ type: undefined, decorators: [{ type: Inject, args: [windowToken,] }] },
|
|
69
|
-
{ type: undefined, decorators: [{ type: Inject, args: [DOCUMENT,] }] }
|
|
70
|
-
];
|
|
71
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ29vZ2xlLXRhZy1tYW5hZ2VyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9leHVpLWNvbW1vbi1saWIvc3JjL2xpYi9zZXJ2aWNlcy9nb29nbGUtdGFnLW1hbmFnZXIvZ29vZ2xlLXRhZy1tYW5hZ2VyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzNDLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25ELE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNsRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxjQUFjLENBQUM7Ozs7OztBQUszQyxNQUFNLE9BQU8sdUJBQXVCO0lBS2xDLFlBQ21CLE1BQWMsRUFDZCxLQUFZLEVBQ1IsTUFBVyxFQUNkLFFBQWE7UUFIZCxXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQ2QsVUFBSyxHQUFMLEtBQUssQ0FBTztRQUk3QixJQUFJLENBQUMsTUFBTSxHQUFHLE1BQWdCLENBQUM7UUFDL0IsSUFBSSxDQUFDLFFBQVEsR0FBRyxRQUFvQixDQUFDO0lBQ3ZDLENBQUM7SUFFTSxJQUFJLENBQUMsbUJBQTJCO1FBQ3JDLElBQUksQ0FBQyxtQkFBbUIsR0FBRyxtQkFBbUIsQ0FBQztRQUMvQyxJQUFJO1lBRUQsSUFBSSxDQUFDLE1BQWMsQ0FBQyxTQUFTLEdBQUksSUFBSSxDQUFDLE1BQWMsQ0FBQyxTQUFTLElBQUksRUFBRSxDQUFDO1lBQ3JFLElBQUksQ0FBQyxNQUFjLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQztnQkFDbEMsV0FBVyxFQUFFLElBQUksSUFBSSxFQUFFLENBQUMsT0FBTyxFQUFFO2dCQUNqQyxLQUFLLEVBQUUsUUFBUTthQUNoQixDQUFDLENBQUM7WUFFSCxNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUNyRCxNQUFNLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQztZQUNwQixNQUFNLENBQUMsR0FBRyxHQUFHLDhDQUE4QyxJQUFJLENBQUMsbUJBQW1CLEVBQUUsQ0FBQztZQUN0RixJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLENBQUM7U0FFeEM7UUFBQyxPQUFPLEVBQUUsRUFBRTtZQUNYLE9BQU8sQ0FBQyxLQUFLLENBQUMsb0NBQW9DLENBQUMsQ0FBQztZQUNwRCxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1NBQ25CO1FBQ0QsSUFBSSxDQUFDLHFCQUFxQixFQUFFLENBQUM7SUFDL0IsQ0FBQztJQUVPLHFCQUFxQjtRQUMzQixJQUFJLElBQUksQ0FBQyxtQkFBbUIsRUFBRTtZQUM1QixJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUU7Z0JBQ25DLElBQUksS0FBSyxZQUFZLGFBQWEsRUFBRTtvQkFDakMsSUFBSSxDQUFDLE1BQWMsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDO3dCQUNsQyxLQUFLLEVBQUUsVUFBVTt3QkFDakIsSUFBSSxFQUFFOzRCQUNKLElBQUksRUFBRSxLQUFLLENBQUMsaUJBQWlCOzRCQUM3QixLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUU7eUJBQzdCO3FCQUNGLENBQUMsQ0FBQztpQkFDSjtZQUNILENBQUMsQ0FBQyxDQUFDO1NBQ0o7SUFDSCxDQUFDO0lBRU0sS0FBSyxDQUFDLFNBQWlCLEVBQUUsTUFBVTtRQUN2QyxJQUFJLENBQUMsTUFBYyxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUM7WUFDbEMsS0FBSyxFQUFFLFNBQVM7WUFDaEIsTUFBTTtTQUNQLENBQUMsQ0FBQztJQUNMLENBQUM7Ozs7WUE3REYsVUFBVSxTQUFDO2dCQUNWLFVBQVUsRUFBRSxNQUFNO2FBQ25COzs7WUFMdUIsTUFBTTtZQURyQixLQUFLOzRDQWVULE1BQU0sU0FBQyxXQUFXOzRDQUNsQixNQUFNLFNBQUMsUUFBUSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERPQ1VNRU5UIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVGl0bGUgfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcbmltcG9ydCB7IE5hdmlnYXRpb25FbmQsIFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyB3aW5kb3dUb2tlbiB9IGZyb20gJy4uLy4uL3dpbmRvdyc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIEdvb2dsZVRhZ01hbmFnZXJTZXJ2aWNlIHtcbiAgcHJpdmF0ZSByZWFkb25seSBkb2N1bWVudDogRG9jdW1lbnQ7XG4gIHByaXZhdGUgcmVhZG9ubHkgd2luZG93OiBXaW5kb3c7XG5cbiAgcHVibGljIGdvb2dsZVRhZ01hbmFnZXJLZXk6IHN0cmluZztcbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByZWFkb25seSByb3V0ZXI6IFJvdXRlcixcbiAgICBwcml2YXRlIHJlYWRvbmx5IHRpdGxlOiBUaXRsZSxcbiAgICBASW5qZWN0KHdpbmRvd1Rva2VuKSB3aW5kb3c6IGFueSxcbiAgICBASW5qZWN0KERPQ1VNRU5UKSBkb2N1bWVudDogYW55XG4gICkge1xuICAgIHRoaXMud2luZG93ID0gd2luZG93IGFzIFdpbmRvdztcbiAgICB0aGlzLmRvY3VtZW50ID0gZG9jdW1lbnQgYXMgRG9jdW1lbnQ7XG4gIH1cblxuICBwdWJsaWMgaW5pdChnb29nbGVUYWdNYW5hZ2VyS2V5OiBzdHJpbmcpIHtcbiAgICB0aGlzLmdvb2dsZVRhZ01hbmFnZXJLZXkgPSBnb29nbGVUYWdNYW5hZ2VyS2V5O1xuICAgIHRyeSB7XG5cbiAgICAgICh0aGlzLndpbmRvdyBhcyBhbnkpLmRhdGFMYXllciA9ICh0aGlzLndpbmRvdyBhcyBhbnkpLmRhdGFMYXllciB8fCBbXTtcbiAgICAgICh0aGlzLndpbmRvdyBhcyBhbnkpLmRhdGFMYXllci5wdXNoKHtcbiAgICAgICAgJ2d0bS5zdGFydCc6IG5ldyBEYXRlKCkuZ2V0VGltZSgpLFxuICAgICAgICBldmVudDogJ2d0bS5qcydcbiAgICAgIH0pO1xuXG4gICAgICBjb25zdCBzY3JpcHQgPSB0aGlzLmRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3NjcmlwdCcpO1xuICAgICAgc2NyaXB0LmFzeW5jID0gdHJ1ZTtcbiAgICAgIHNjcmlwdC5zcmMgPSBgaHR0cHM6Ly93d3cuZ29vZ2xldGFnbWFuYWdlci5jb20vZ3RtLmpzP2lkPSR7dGhpcy5nb29nbGVUYWdNYW5hZ2VyS2V5fWA7XG4gICAgICB0aGlzLmRvY3VtZW50LmhlYWQuYXBwZW5kQ2hpbGQoc2NyaXB0KTtcblxuICAgIH0gY2F0Y2ggKGV4KSB7XG4gICAgICBjb25zb2xlLmVycm9yKCdFcnJvciBhcHBlbmRpbmcgZ29vZ2xlIHRhZyBtYW5hZ2VyJyk7XG4gICAgICBjb25zb2xlLmVycm9yKGV4KTtcbiAgICB9XG4gICAgdGhpcy5saXN0ZW5Gb3JSb3V0ZUNoYW5nZXMoKTtcbiAgfVxuXG4gIHByaXZhdGUgbGlzdGVuRm9yUm91dGVDaGFuZ2VzKCkge1xuICAgIGlmICh0aGlzLmdvb2dsZVRhZ01hbmFnZXJLZXkpIHtcbiAgICAgIHRoaXMucm91dGVyLmV2ZW50cy5zdWJzY3JpYmUoZXZlbnQgPT4ge1xuICAgICAgICBpZiAoZXZlbnQgaW5zdGFuY2VvZiBOYXZpZ2F0aW9uRW5kKSB7XG4gICAgICAgICAgKHRoaXMud2luZG93IGFzIGFueSkuZGF0YUxheWVyLnB1c2goe1xuICAgICAgICAgICAgZXZlbnQ6ICdwYWdldmlldycsXG4gICAgICAgICAgICBwYWdlOiB7XG4gICAgICAgICAgICAgIHBhdGg6IGV2ZW50LnVybEFmdGVyUmVkaXJlY3RzLFxuICAgICAgICAgICAgICB0aXRsZTogdGhpcy50aXRsZS5nZXRUaXRsZSgpXG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBldmVudChldmVudE5hbWU6IHN0cmluZywgcGFyYW1zOiB7fSkge1xuICAgICh0aGlzLndpbmRvdyBhcyBhbnkpLmRhdGFMYXllci5wdXNoKHtcbiAgICAgIGV2ZW50OiBldmVudE5hbWUsXG4gICAgICBwYXJhbXNcbiAgICB9KTtcbiAgfVxufVxuIl19
|
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
import { HttpClient } from '@angular/common/http';
|
|
2
|
-
import { Injectable } from '@angular/core';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
import * as i1 from "@angular/common/http";
|
|
5
|
-
export class LocationService {
|
|
6
|
-
constructor(http) {
|
|
7
|
-
this.http = http;
|
|
8
|
-
}
|
|
9
|
-
/**
|
|
10
|
-
* @description getAllLocations from service Ids/location type/search term
|
|
11
|
-
* @param serviceIds: SSCS | SSCS,IA split with ','
|
|
12
|
-
* @param locationType: optional | hearing | case_management
|
|
13
|
-
* @param searchTerm: any search term for postcode | site name | venue name |court name | court address etc.
|
|
14
|
-
* @return Observable<LocationByEPIMMSModel[]>: Array of locationModel in Observable
|
|
15
|
-
*/
|
|
16
|
-
getAllLocations(serviceIds, locationType, searchTerm, userLocations, bookingLocations) {
|
|
17
|
-
return this.http.post(`api/locations/getLocations`, { serviceIds, locationType, searchTerm, userLocations, bookingLocations });
|
|
18
|
-
}
|
|
19
|
-
/**
|
|
20
|
-
* @description searchLocations from service Ids/location type/search term
|
|
21
|
-
* @param serviceIds: BBA3 | BBA3,BFA1 split with ','
|
|
22
|
-
* @param locationType: optional | hearing | case_management
|
|
23
|
-
* @param searchTerm: any search term for postcode | site name | venue name |court name | court address etc.
|
|
24
|
-
* @return Observable<LocationByEPIMMSModel[]>: Array of locationModel in Observable
|
|
25
|
-
*/
|
|
26
|
-
searchLocations(serviceIds, locationType, searchTerm) {
|
|
27
|
-
return this.http.get(`api/prd/location/getLocations?serviceIds=${serviceIds}&locationType=${locationType}&searchTerm=${searchTerm}`);
|
|
28
|
-
}
|
|
29
|
-
}
|
|
30
|
-
LocationService.ɵprov = i0.ɵɵdefineInjectable({ factory: function LocationService_Factory() { return new LocationService(i0.ɵɵinject(i1.HttpClient)); }, token: LocationService, providedIn: "root" });
|
|
31
|
-
LocationService.decorators = [
|
|
32
|
-
{ type: Injectable, args: [{
|
|
33
|
-
providedIn: 'root'
|
|
34
|
-
},] }
|
|
35
|
-
];
|
|
36
|
-
LocationService.ctorParameters = () => [
|
|
37
|
-
{ type: HttpClient }
|
|
38
|
-
];
|
|
39
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYXRpb24uc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2V4dWktY29tbW9uLWxpYi9zcmMvbGliL3NlcnZpY2VzL2xvY2F0aW9ucy9sb2NhdGlvbi5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUNoRCxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sZUFBZSxDQUFDOzs7QUFPekMsTUFBTSxPQUFPLGVBQWU7SUFFMUIsWUFBNkIsSUFBZ0I7UUFBaEIsU0FBSSxHQUFKLElBQUksQ0FBWTtJQUM3QyxDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0ksZUFBZSxDQUFDLFVBQWtCLEVBQUUsWUFBb0IsRUFBRSxVQUFrQixFQUFFLGFBQW1DLEVBQUUsZ0JBQTBCO1FBQ2xKLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQTBCLDRCQUE0QixFQUFFLEVBQUMsVUFBVSxFQUFFLFlBQVksRUFBRSxVQUFVLEVBQUUsYUFBYSxFQUFFLGdCQUFnQixFQUFDLENBQUMsQ0FBQztJQUN4SixDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0ksZUFBZSxDQUFDLFVBQWtCLEVBQUUsWUFBb0IsRUFBRSxVQUFrQjtRQUMvRSxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUEwQiw0Q0FBNEMsVUFBVSxpQkFBaUIsWUFBWSxlQUFlLFVBQVUsRUFBRSxDQUFDLENBQUM7SUFDbEssQ0FBQzs7OztZQTVCRixVQUFVLFNBQUM7Z0JBQ1YsVUFBVSxFQUFFLE1BQU07YUFDbkI7OztZQVBPLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0h0dHBDbGllbnR9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7SW5qZWN0YWJsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge09ic2VydmFibGV9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtMb2NhdGlvbkJ5RVBJTU1TTW9kZWwsIExvY2F0aW9uc0J5U2VydmljZX0gZnJvbSAnLi4vLi4vbW9kZWxzL2xvY2F0aW9uLm1vZGVsJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgTG9jYXRpb25TZXJ2aWNlIHtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IGh0dHA6IEh0dHBDbGllbnQpIHtcbiAgfVxuXG4gIC8qKlxuICAgKiBAZGVzY3JpcHRpb24gZ2V0QWxsTG9jYXRpb25zIGZyb20gc2VydmljZSBJZHMvbG9jYXRpb24gdHlwZS9zZWFyY2ggdGVybVxuICAgKiBAcGFyYW0gc2VydmljZUlkczogU1NDUyB8IFNTQ1MsSUEgc3BsaXQgd2l0aCAnLCdcbiAgICogQHBhcmFtIGxvY2F0aW9uVHlwZTogb3B0aW9uYWwgfCBoZWFyaW5nIHwgY2FzZV9tYW5hZ2VtZW50XG4gICAqIEBwYXJhbSBzZWFyY2hUZXJtOiBhbnkgc2VhcmNoIHRlcm0gZm9yIHBvc3Rjb2RlIHwgc2l0ZSBuYW1lIHwgdmVudWUgbmFtZSB8Y291cnQgbmFtZSB8IGNvdXJ0IGFkZHJlc3MgZXRjLlxuICAgKiBAcmV0dXJuIE9ic2VydmFibGU8TG9jYXRpb25CeUVQSU1NU01vZGVsW10+OiBBcnJheSBvZiBsb2NhdGlvbk1vZGVsIGluIE9ic2VydmFibGVcbiAgICovXG4gIHB1YmxpYyBnZXRBbGxMb2NhdGlvbnMoc2VydmljZUlkczogc3RyaW5nLCBsb2NhdGlvblR5cGU6IHN0cmluZywgc2VhcmNoVGVybTogc3RyaW5nLCB1c2VyTG9jYXRpb25zOiBMb2NhdGlvbnNCeVNlcnZpY2VbXSwgYm9va2luZ0xvY2F0aW9uczogc3RyaW5nW10pOiBPYnNlcnZhYmxlPExvY2F0aW9uQnlFUElNTVNNb2RlbFtdPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PExvY2F0aW9uQnlFUElNTVNNb2RlbFtdPihgYXBpL2xvY2F0aW9ucy9nZXRMb2NhdGlvbnNgLCB7c2VydmljZUlkcywgbG9jYXRpb25UeXBlLCBzZWFyY2hUZXJtLCB1c2VyTG9jYXRpb25zLCBib29raW5nTG9jYXRpb25zfSk7XG4gIH1cblxuICAvKipcbiAgICogQGRlc2NyaXB0aW9uIHNlYXJjaExvY2F0aW9ucyBmcm9tIHNlcnZpY2UgSWRzL2xvY2F0aW9uIHR5cGUvc2VhcmNoIHRlcm1cbiAgICogQHBhcmFtIHNlcnZpY2VJZHM6IEJCQTMgfCBCQkEzLEJGQTEgc3BsaXQgd2l0aCAnLCdcbiAgICogQHBhcmFtIGxvY2F0aW9uVHlwZTogb3B0aW9uYWwgfCBoZWFyaW5nIHwgY2FzZV9tYW5hZ2VtZW50XG4gICAqIEBwYXJhbSBzZWFyY2hUZXJtOiBhbnkgc2VhcmNoIHRlcm0gZm9yIHBvc3Rjb2RlIHwgc2l0ZSBuYW1lIHwgdmVudWUgbmFtZSB8Y291cnQgbmFtZSB8IGNvdXJ0IGFkZHJlc3MgZXRjLlxuICAgKiBAcmV0dXJuIE9ic2VydmFibGU8TG9jYXRpb25CeUVQSU1NU01vZGVsW10+OiBBcnJheSBvZiBsb2NhdGlvbk1vZGVsIGluIE9ic2VydmFibGVcbiAgICovXG4gIHB1YmxpYyBzZWFyY2hMb2NhdGlvbnMoc2VydmljZUlkczogc3RyaW5nLCBsb2NhdGlvblR5cGU6IHN0cmluZywgc2VhcmNoVGVybTogc3RyaW5nKTogT2JzZXJ2YWJsZTxMb2NhdGlvbkJ5RVBJTU1TTW9kZWxbXT4ge1xuICAgICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQ8TG9jYXRpb25CeUVQSU1NU01vZGVsW10+KGBhcGkvcHJkL2xvY2F0aW9uL2dldExvY2F0aW9ucz9zZXJ2aWNlSWRzPSR7c2VydmljZUlkc30mbG9jYXRpb25UeXBlPSR7bG9jYXRpb25UeXBlfSZzZWFyY2hUZXJtPSR7c2VhcmNoVGVybX1gKTtcbiAgfVxufVxuIl19
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
/*
|
|
2
|
-
* Public API Surface of exui-common-lib
|
|
3
|
-
*/
|
|
4
|
-
export * from './feature-toggle/feature-toggle.guard';
|
|
5
|
-
export * from './feature-toggle/feature-toggle.service';
|
|
6
|
-
export * from './feature-toggle/launch-darkly.service';
|
|
7
|
-
export * from './google-analytics/google-analytics.service';
|
|
8
|
-
export * from './google-tag-manager/google-tag-manager.service';
|
|
9
|
-
export * from './manage-session/manage-session.services';
|
|
10
|
-
export * from './timeout-notifications/timeout-notifications.service';
|
|
11
|
-
export * from './role-guard/role.guard';
|
|
12
|
-
export * from './role-guard/role.service';
|
|
13
|
-
export * from './cookie/cookie.service';
|
|
14
|
-
export * from './loading/loading.service';
|
|
15
|
-
export * from './filter/filter.service';
|
|
16
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2V4dWktY29tbW9uLWxpYi9zcmMvbGliL3NlcnZpY2VzL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFDSCxjQUFjLHVDQUF1QyxDQUFDO0FBQ3RELGNBQWMseUNBQXlDLENBQUM7QUFDeEQsY0FBYyx3Q0FBd0MsQ0FBQztBQUN2RCxjQUFjLDZDQUE2QyxDQUFDO0FBQzVELGNBQWMsaURBQWlELENBQUM7QUFDaEUsY0FBYywwQ0FBMEMsQ0FBQztBQUN6RCxjQUFjLHVEQUF1RCxDQUFDO0FBQ3RFLGNBQWMseUJBQXlCLENBQUM7QUFDeEMsY0FBYywyQkFBMkIsQ0FBQztBQUMxQyxjQUFjLHlCQUF5QixDQUFDO0FBQ3hDLGNBQWMsMkJBQTJCLENBQUM7QUFDMUMsY0FBYyx5QkFBeUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBQdWJsaWMgQVBJIFN1cmZhY2Ugb2YgZXh1aS1jb21tb24tbGliXG4gKi9cbmV4cG9ydCAqIGZyb20gJy4vZmVhdHVyZS10b2dnbGUvZmVhdHVyZS10b2dnbGUuZ3VhcmQnO1xuZXhwb3J0ICogZnJvbSAnLi9mZWF0dXJlLXRvZ2dsZS9mZWF0dXJlLXRvZ2dsZS5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vZmVhdHVyZS10b2dnbGUvbGF1bmNoLWRhcmtseS5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vZ29vZ2xlLWFuYWx5dGljcy9nb29nbGUtYW5hbHl0aWNzLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9nb29nbGUtdGFnLW1hbmFnZXIvZ29vZ2xlLXRhZy1tYW5hZ2VyLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9tYW5hZ2Utc2Vzc2lvbi9tYW5hZ2Utc2Vzc2lvbi5zZXJ2aWNlcyc7XG5leHBvcnQgKiBmcm9tICcuL3RpbWVvdXQtbm90aWZpY2F0aW9ucy90aW1lb3V0LW5vdGlmaWNhdGlvbnMuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL3JvbGUtZ3VhcmQvcm9sZS5ndWFyZCc7XG5leHBvcnQgKiBmcm9tICcuL3JvbGUtZ3VhcmQvcm9sZS5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vY29va2llL2Nvb2tpZS5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbG9hZGluZy9sb2FkaW5nLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9maWx0ZXIvZmlsdGVyLnNlcnZpY2UnO1xuIl19
|
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
import { Injectable } from '@angular/core';
|
|
2
|
-
import { Router } from '@angular/router';
|
|
3
|
-
import { RoleService } from './role.service';
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
import * as i1 from "./role.service";
|
|
6
|
-
import * as i2 from "@angular/router";
|
|
7
|
-
export var RoleMatching;
|
|
8
|
-
(function (RoleMatching) {
|
|
9
|
-
RoleMatching[RoleMatching["ALL"] = 0] = "ALL";
|
|
10
|
-
RoleMatching[RoleMatching["ANY"] = 1] = "ANY";
|
|
11
|
-
})(RoleMatching || (RoleMatching = {}));
|
|
12
|
-
export class RoleGuard {
|
|
13
|
-
constructor(roleService, router) {
|
|
14
|
-
this.roleService = roleService;
|
|
15
|
-
this.router = router;
|
|
16
|
-
}
|
|
17
|
-
canActivate(route) {
|
|
18
|
-
const roles = route.data.needsRole;
|
|
19
|
-
const check = (roleRegEx) => {
|
|
20
|
-
const regex = new RegExp(roleRegEx);
|
|
21
|
-
return this.roleService.roles.some(role => regex.test(role));
|
|
22
|
-
};
|
|
23
|
-
const match = route.data.roleMatching === RoleMatching.ALL ? roles.every(check) : roles.some(check);
|
|
24
|
-
return match || this.router.parseUrl(route.data.noRoleMatchRedirect);
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
|
-
RoleGuard.ɵprov = i0.ɵɵdefineInjectable({ factory: function RoleGuard_Factory() { return new RoleGuard(i0.ɵɵinject(i1.RoleService), i0.ɵɵinject(i2.Router)); }, token: RoleGuard, providedIn: "root" });
|
|
28
|
-
RoleGuard.decorators = [
|
|
29
|
-
{ type: Injectable, args: [{
|
|
30
|
-
providedIn: 'root'
|
|
31
|
-
},] }
|
|
32
|
-
];
|
|
33
|
-
RoleGuard.ctorParameters = () => [
|
|
34
|
-
{ type: RoleService },
|
|
35
|
-
{ type: Router }
|
|
36
|
-
];
|
|
37
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm9sZS5ndWFyZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2V4dWktY29tbW9uLWxpYi9zcmMvbGliL3NlcnZpY2VzL3JvbGUtZ3VhcmQvcm9sZS5ndWFyZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBdUMsTUFBTSxFQUFXLE1BQU0saUJBQWlCLENBQUM7QUFDdkYsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7O0FBRTdDLE1BQU0sQ0FBTixJQUFZLFlBR1g7QUFIRCxXQUFZLFlBQVk7SUFDcEIsNkNBQUcsQ0FBQTtJQUNILDZDQUFHLENBQUE7QUFDUCxDQUFDLEVBSFcsWUFBWSxLQUFaLFlBQVksUUFHdkI7QUFLRCxNQUFNLE9BQU8sU0FBUztJQUVsQixZQUNxQixXQUF3QixFQUN4QixNQUFjO1FBRGQsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFDeEIsV0FBTSxHQUFOLE1BQU0sQ0FBUTtJQUNoQyxDQUFDO0lBRUcsV0FBVyxDQUFDLEtBQTZCO1FBQzVDLE1BQU0sS0FBSyxHQUFJLEtBQUssQ0FBQyxJQUFJLENBQUMsU0FBc0IsQ0FBQztRQUNqRCxNQUFNLEtBQUssR0FBRyxDQUFDLFNBQWlCLEVBQUUsRUFBRTtZQUNoQyxNQUFNLEtBQUssR0FBRyxJQUFJLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQztZQUNwQyxPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztRQUNqRSxDQUFDLENBQUM7UUFDRixNQUFNLEtBQUssR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLFlBQVksS0FBSyxZQUFZLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRXBHLE9BQU8sS0FBSyxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsbUJBQTZCLENBQUMsQ0FBQztJQUNuRixDQUFDOzs7O1lBbkJKLFVBQVUsU0FBQztnQkFDUixVQUFVLEVBQUUsTUFBTTthQUNuQjs7O1lBVE0sV0FBVztZQUQwQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGVTbmFwc2hvdCwgQ2FuQWN0aXZhdGUsIFJvdXRlciwgVXJsVHJlZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBSb2xlU2VydmljZSB9IGZyb20gJy4vcm9sZS5zZXJ2aWNlJztcblxuZXhwb3J0IGVudW0gUm9sZU1hdGNoaW5nIHtcbiAgICBBTEwsXG4gICAgQU5ZXG59XG5cbkBJbmplY3RhYmxlKHtcbiAgICBwcm92aWRlZEluOiAncm9vdCdcbiAgfSlcbmV4cG9ydCBjbGFzcyBSb2xlR3VhcmQgaW1wbGVtZW50cyBDYW5BY3RpdmF0ZSB7XG5cbiAgICBwdWJsaWMgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgcm9sZVNlcnZpY2U6IFJvbGVTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IHJvdXRlcjogUm91dGVyXG4gICAgKSB7fVxuXG4gICAgcHVibGljIGNhbkFjdGl2YXRlKHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZVNuYXBzaG90KTogYm9vbGVhbiB8IFVybFRyZWUge1xuICAgICAgICBjb25zdCByb2xlcyA9IChyb3V0ZS5kYXRhLm5lZWRzUm9sZSBhcyBzdHJpbmdbXSk7XG4gICAgICAgIGNvbnN0IGNoZWNrID0gKHJvbGVSZWdFeDogc3RyaW5nKSA9PiB7XG4gICAgICAgICAgICBjb25zdCByZWdleCA9IG5ldyBSZWdFeHAocm9sZVJlZ0V4KTtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLnJvbGVTZXJ2aWNlLnJvbGVzLnNvbWUocm9sZSA9PiByZWdleC50ZXN0KHJvbGUpKTtcbiAgICAgICAgfTtcbiAgICAgICAgY29uc3QgbWF0Y2ggPSByb3V0ZS5kYXRhLnJvbGVNYXRjaGluZyA9PT0gUm9sZU1hdGNoaW5nLkFMTCA/IHJvbGVzLmV2ZXJ5KGNoZWNrKSA6IHJvbGVzLnNvbWUoY2hlY2spO1xuXG4gICAgICAgIHJldHVybiBtYXRjaCB8fCB0aGlzLnJvdXRlci5wYXJzZVVybChyb3V0ZS5kYXRhLm5vUm9sZU1hdGNoUmVkaXJlY3QgYXMgc3RyaW5nKTtcbiAgICB9XG59XG4iXX0=
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import { Injectable } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
export class RoleService {
|
|
4
|
-
constructor() {
|
|
5
|
-
this.pRoles = [];
|
|
6
|
-
}
|
|
7
|
-
get roles() {
|
|
8
|
-
return this.pRoles;
|
|
9
|
-
}
|
|
10
|
-
set roles(roles) {
|
|
11
|
-
this.pRoles = roles;
|
|
12
|
-
}
|
|
13
|
-
}
|
|
14
|
-
RoleService.ɵprov = i0.ɵɵdefineInjectable({ factory: function RoleService_Factory() { return new RoleService(); }, token: RoleService, providedIn: "root" });
|
|
15
|
-
RoleService.decorators = [
|
|
16
|
-
{ type: Injectable, args: [{
|
|
17
|
-
providedIn: 'root'
|
|
18
|
-
},] }
|
|
19
|
-
];
|
|
20
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm9sZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZXh1aS1jb21tb24tbGliL3NyYy9saWIvc2VydmljZXMvcm9sZS1ndWFyZC9yb2xlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFTM0MsTUFBTSxPQUFPLFdBQVc7SUFIeEI7UUFJWSxXQUFNLEdBQVUsRUFBRSxDQUFDO0tBUzlCO0lBUEcsSUFBVyxLQUFLO1FBQ1osT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDO0lBQ3ZCLENBQUM7SUFFRCxJQUFXLEtBQUssQ0FBQyxLQUFZO1FBQ3pCLElBQUksQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDO0lBQ3hCLENBQUM7Ozs7WUFaSixVQUFVLFNBQUM7Z0JBQ1IsVUFBVSxFQUFFLE1BQU07YUFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbi8vIHVzZSB0eXBlcyBzbyB3ZSBjYW4gbW92ZSB0byBzdHJpY3RlZCB0eXBpbmcgbGF0ZXIgb25cbmV4cG9ydCB0eXBlIFJvbGUgPSBzdHJpbmc7XG5leHBvcnQgdHlwZSBSb2xlcyA9IFJvbGVbXTtcblxuQEluamVjdGFibGUoe1xuICAgIHByb3ZpZGVkSW46ICdyb290J1xuICB9KVxuZXhwb3J0IGNsYXNzIFJvbGVTZXJ2aWNlIHtcbiAgICBwcml2YXRlIHBSb2xlczogUm9sZXMgPSBbXTtcblxuICAgIHB1YmxpYyBnZXQgcm9sZXMoKTogUm9sZXMge1xuICAgICAgICByZXR1cm4gdGhpcy5wUm9sZXM7XG4gICAgfVxuXG4gICAgcHVibGljIHNldCByb2xlcyhyb2xlczogUm9sZXMpIHtcbiAgICAgICAgdGhpcy5wUm9sZXMgPSByb2xlcztcbiAgICB9XG59XG4iXX0=
|
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
import { Injectable } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
export class SessionStorageService {
|
|
4
|
-
/**
|
|
5
|
-
* Get an item from the session storage.
|
|
6
|
-
* If remove is true, the item will be removed once read
|
|
7
|
-
* @param removeAfterRead removed the key once it has been read
|
|
8
|
-
*/
|
|
9
|
-
getItem(key, removeAfterRead = false) {
|
|
10
|
-
const item = sessionStorage.getItem(key);
|
|
11
|
-
if (removeAfterRead) {
|
|
12
|
-
this.removeItem(key);
|
|
13
|
-
}
|
|
14
|
-
return item;
|
|
15
|
-
}
|
|
16
|
-
/**
|
|
17
|
-
* Set an item in the session storage.
|
|
18
|
-
*/
|
|
19
|
-
setItem(key, value) {
|
|
20
|
-
sessionStorage.setItem(key, value);
|
|
21
|
-
}
|
|
22
|
-
/**
|
|
23
|
-
* Remove an item in the session storage.
|
|
24
|
-
*/
|
|
25
|
-
removeItem(key) {
|
|
26
|
-
sessionStorage.removeItem(key);
|
|
27
|
-
}
|
|
28
|
-
/**
|
|
29
|
-
* Clear all the items held in session storage.
|
|
30
|
-
*/
|
|
31
|
-
clear() {
|
|
32
|
-
sessionStorage.clear();
|
|
33
|
-
}
|
|
34
|
-
}
|
|
35
|
-
SessionStorageService.ɵprov = i0.ɵɵdefineInjectable({ factory: function SessionStorageService_Factory() { return new SessionStorageService(); }, token: SessionStorageService, providedIn: "root" });
|
|
36
|
-
SessionStorageService.decorators = [
|
|
37
|
-
{ type: Injectable, args: [{
|
|
38
|
-
providedIn: 'root'
|
|
39
|
-
},] }
|
|
40
|
-
];
|
|
41
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2Vzc2lvbi1zdG9yYWdlLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9leHVpLWNvbW1vbi1saWIvc3JjL2xpYi9zZXJ2aWNlcy9zZXNzaW9uLXN0b3JhZ2Uvc2Vzc2lvbi1zdG9yYWdlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFLM0MsTUFBTSxPQUFPLHFCQUFxQjtJQUVoQzs7OztPQUlHO0lBQ0ksT0FBTyxDQUFDLEdBQVcsRUFBRSxrQkFBMkIsS0FBSztRQUMxRCxNQUFNLElBQUksR0FBRyxjQUFjLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBRXpDLElBQUksZUFBZSxFQUFFO1lBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQztTQUFFO1FBRTlDLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVEOztPQUVHO0lBQ0ksT0FBTyxDQUFDLEdBQVcsRUFBRSxLQUFhO1FBQ3ZDLGNBQWMsQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ3JDLENBQUM7SUFFRDs7T0FFRztJQUNJLFVBQVUsQ0FBQyxHQUFXO1FBQzNCLGNBQWMsQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDakMsQ0FBQztJQUVEOztPQUVHO0lBQ0ksS0FBSztRQUNWLGNBQWMsQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUN6QixDQUFDOzs7O1lBckNGLFVBQVUsU0FBQztnQkFDVixVQUFVLEVBQUUsTUFBTTthQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgU2Vzc2lvblN0b3JhZ2VTZXJ2aWNlIHtcblxuICAvKipcbiAgICogR2V0IGFuIGl0ZW0gZnJvbSB0aGUgc2Vzc2lvbiBzdG9yYWdlLlxuICAgKiBJZiByZW1vdmUgaXMgdHJ1ZSwgdGhlIGl0ZW0gd2lsbCBiZSByZW1vdmVkIG9uY2UgcmVhZFxuICAgKiBAcGFyYW0gcmVtb3ZlQWZ0ZXJSZWFkIHJlbW92ZWQgdGhlIGtleSBvbmNlIGl0IGhhcyBiZWVuIHJlYWRcbiAgICovXG4gIHB1YmxpYyBnZXRJdGVtKGtleTogc3RyaW5nLCByZW1vdmVBZnRlclJlYWQ6IGJvb2xlYW4gPSBmYWxzZSk6IHN0cmluZyB7XG4gICAgY29uc3QgaXRlbSA9IHNlc3Npb25TdG9yYWdlLmdldEl0ZW0oa2V5KTtcblxuICAgIGlmIChyZW1vdmVBZnRlclJlYWQpIHsgdGhpcy5yZW1vdmVJdGVtKGtleSk7IH1cblxuICAgIHJldHVybiBpdGVtO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldCBhbiBpdGVtIGluIHRoZSBzZXNzaW9uIHN0b3JhZ2UuXG4gICAqL1xuICBwdWJsaWMgc2V0SXRlbShrZXk6IHN0cmluZywgdmFsdWU6IHN0cmluZyk6IHZvaWQge1xuICAgIHNlc3Npb25TdG9yYWdlLnNldEl0ZW0oa2V5LCB2YWx1ZSk7XG4gIH1cblxuICAvKipcbiAgICogUmVtb3ZlIGFuIGl0ZW0gaW4gdGhlIHNlc3Npb24gc3RvcmFnZS5cbiAgICovXG4gIHB1YmxpYyByZW1vdmVJdGVtKGtleTogc3RyaW5nKTogdm9pZCB7XG4gICAgc2Vzc2lvblN0b3JhZ2UucmVtb3ZlSXRlbShrZXkpO1xuICB9XG5cbiAgLyoqXG4gICAqIENsZWFyIGFsbCB0aGUgaXRlbXMgaGVsZCBpbiBzZXNzaW9uIHN0b3JhZ2UuXG4gICAqL1xuICBwdWJsaWMgY2xlYXIoKTogdm9pZCB7XG4gICAgc2Vzc2lvblN0b3JhZ2UuY2xlYXIoKTtcbiAgfVxufVxuIl19
|
|
@@ -1,92 +0,0 @@
|
|
|
1
|
-
import { Injectable } from '@angular/core';
|
|
2
|
-
import { DocumentInterruptSource, Idle, } from '@ng-idle/core';
|
|
3
|
-
import { Keepalive } from '@ng-idle/keepalive';
|
|
4
|
-
import { Subject } from 'rxjs';
|
|
5
|
-
import { distinctUntilChanged, map } from 'rxjs/operators';
|
|
6
|
-
import * as i0 from "@angular/core";
|
|
7
|
-
import * as i1 from "@ng-idle/core";
|
|
8
|
-
import * as i2 from "@ng-idle/keepalive";
|
|
9
|
-
/**
|
|
10
|
-
* TimeoutNotificationsService
|
|
11
|
-
*
|
|
12
|
-
* The Timeout Notification Service allows your application to receive notifications
|
|
13
|
-
* when a User is approaching the the total time that a User has been idle for.
|
|
14
|
-
*
|
|
15
|
-
* This can be set by your application using the Timeout Notification Config object.
|
|
16
|
-
*
|
|
17
|
-
* Your application will then have to listen to events coming from the Timeout Notification Service,
|
|
18
|
-
* and handle these events within your application.
|
|
19
|
-
*
|
|
20
|
-
* @see README.md for implementation details and code, on how to implement the Timeout Notification
|
|
21
|
-
* Service within your application.
|
|
22
|
-
*/
|
|
23
|
-
export class TimeoutNotificationsService {
|
|
24
|
-
constructor(idle, keepalive) {
|
|
25
|
-
this.idle = idle;
|
|
26
|
-
this.keepalive = keepalive;
|
|
27
|
-
/**
|
|
28
|
-
* Convert milliseconds to seconds.
|
|
29
|
-
*
|
|
30
|
-
* @param milliseconds - 1000
|
|
31
|
-
* @return seconds - 1
|
|
32
|
-
*/
|
|
33
|
-
this.millisecondsToSeconds = (milliseconds) => milliseconds / 1000;
|
|
34
|
-
this.eventEmitter = new Subject();
|
|
35
|
-
}
|
|
36
|
-
/**
|
|
37
|
-
* Initialise
|
|
38
|
-
*
|
|
39
|
-
* Initialise the Timeout Notification Events.
|
|
40
|
-
*
|
|
41
|
-
* I made the decision not to make ' minutes' and ' seconds' configurable via input parameters -
|
|
42
|
-
* As I made an assumption that any Reform team would not need to change these to 'secs, mins' or 's, m'.
|
|
43
|
-
*
|
|
44
|
-
* idleModalDisplayTime and totalIdleTime need to be passed in, in milliseconds.
|
|
45
|
-
*
|
|
46
|
-
* @see README.md for more information on TimeoutNotificationService.
|
|
47
|
-
*/
|
|
48
|
-
initialise(config) {
|
|
49
|
-
const DOCUMENT_INTERRUPTS = 'mousedown keydown DOMMouseScroll mousewheel touchstart touchmove scroll';
|
|
50
|
-
const MINUTES = ' minutes';
|
|
51
|
-
const SECONDS = ' seconds';
|
|
52
|
-
const SIGNOUT_EVENT = 'sign-out';
|
|
53
|
-
const COUNTDOWN_EVENT = 'countdown';
|
|
54
|
-
const KEEP_ALIVE_EVENT = 'keep-alive';
|
|
55
|
-
const { idleServiceName, idleModalDisplayTime, totalIdleTime } = config;
|
|
56
|
-
this.idle.setIdleName(idleServiceName);
|
|
57
|
-
const idleModalDisplayTimeInSeconds = this.millisecondsToSeconds(idleModalDisplayTime);
|
|
58
|
-
const totalIdleTimeInSeconds = this.millisecondsToSeconds(totalIdleTime);
|
|
59
|
-
this.idle.setTimeout(idleModalDisplayTimeInSeconds);
|
|
60
|
-
const interrupt = new DocumentInterruptSource(DOCUMENT_INTERRUPTS);
|
|
61
|
-
this.idle.setInterrupts([interrupt]);
|
|
62
|
-
this.idle.onTimeout.subscribe(() => {
|
|
63
|
-
this.eventEmitter.next({ eventType: SIGNOUT_EVENT });
|
|
64
|
-
});
|
|
65
|
-
this.idle.onTimeoutWarning.pipe(map(sec => (sec > 60) ? Math.ceil(sec / 60) + MINUTES : sec + SECONDS), distinctUntilChanged()).subscribe((countdown) => {
|
|
66
|
-
this.eventEmitter.next({ eventType: COUNTDOWN_EVENT, readableCountdown: countdown });
|
|
67
|
-
});
|
|
68
|
-
this.keepalive.onPing.subscribe(() => {
|
|
69
|
-
this.eventEmitter.next({ eventType: KEEP_ALIVE_EVENT });
|
|
70
|
-
});
|
|
71
|
-
const idleInSeconds = Math.floor(totalIdleTimeInSeconds) - idleModalDisplayTimeInSeconds;
|
|
72
|
-
this.idle.setIdle(idleInSeconds);
|
|
73
|
-
this.idle.watch();
|
|
74
|
-
}
|
|
75
|
-
/**
|
|
76
|
-
* Expose the notification events, so that a 3rd party service can listen to the notifications.
|
|
77
|
-
*/
|
|
78
|
-
notificationOnChange() {
|
|
79
|
-
return this.eventEmitter.asObservable();
|
|
80
|
-
}
|
|
81
|
-
}
|
|
82
|
-
TimeoutNotificationsService.ɵprov = i0.ɵɵdefineInjectable({ factory: function TimeoutNotificationsService_Factory() { return new TimeoutNotificationsService(i0.ɵɵinject(i1.Idle), i0.ɵɵinject(i2.Keepalive)); }, token: TimeoutNotificationsService, providedIn: "root" });
|
|
83
|
-
TimeoutNotificationsService.decorators = [
|
|
84
|
-
{ type: Injectable, args: [{
|
|
85
|
-
providedIn: 'root'
|
|
86
|
-
},] }
|
|
87
|
-
];
|
|
88
|
-
TimeoutNotificationsService.ctorParameters = () => [
|
|
89
|
-
{ type: Idle },
|
|
90
|
-
{ type: Keepalive }
|
|
91
|
-
];
|
|
92
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGltZW91dC1ub3RpZmljYXRpb25zLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9leHVpLWNvbW1vbi1saWIvc3JjL2xpYi9zZXJ2aWNlcy90aW1lb3V0LW5vdGlmaWNhdGlvbnMvdGltZW91dC1ub3RpZmljYXRpb25zLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUMsdUJBQXVCLEVBQUUsSUFBSSxHQUFHLE1BQU0sZUFBZSxDQUFDO0FBQzlELE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSxvQkFBb0IsQ0FBQztBQUM3QyxPQUFPLEVBQWEsT0FBTyxFQUFDLE1BQU0sTUFBTSxDQUFDO0FBQ3pDLE9BQU8sRUFDTCxvQkFBb0IsRUFDcEIsR0FBRyxFQUNKLE1BQU0sZ0JBQWdCLENBQUM7Ozs7QUFHeEI7Ozs7Ozs7Ozs7Ozs7R0FhRztBQUlILE1BQU0sT0FBTywyQkFBMkI7SUFJdEMsWUFDbUIsSUFBVSxFQUNWLFNBQW9CO1FBRHBCLFNBQUksR0FBSixJQUFJLENBQU07UUFDVixjQUFTLEdBQVQsU0FBUyxDQUFXO1FBS3ZDOzs7OztXQUtHO1FBQ0ksMEJBQXFCLEdBQUcsQ0FBQyxZQUFvQixFQUFVLEVBQUUsQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDO1FBVG5GLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxPQUFPLEVBQUUsQ0FBQztJQUNwQyxDQUFDO0lBVUQ7Ozs7Ozs7Ozs7O09BV0c7SUFDSSxVQUFVLENBQUMsTUFBaUM7UUFFakQsTUFBTSxtQkFBbUIsR0FBRyx5RUFBeUUsQ0FBQztRQUV0RyxNQUFNLE9BQU8sR0FBRyxVQUFVLENBQUM7UUFDM0IsTUFBTSxPQUFPLEdBQUcsVUFBVSxDQUFDO1FBRTNCLE1BQU0sYUFBYSxHQUFHLFVBQVUsQ0FBQztRQUNqQyxNQUFNLGVBQWUsR0FBRyxXQUFXLENBQUM7UUFDcEMsTUFBTSxnQkFBZ0IsR0FBRyxZQUFZLENBQUM7UUFFdEMsTUFBTSxFQUFDLGVBQWUsRUFBRSxvQkFBb0IsRUFBRSxhQUFhLEVBQUMsR0FBRyxNQUFNLENBQUM7UUFFdEUsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsZUFBZSxDQUFDLENBQUM7UUFFdkMsTUFBTSw2QkFBNkIsR0FBRyxJQUFJLENBQUMscUJBQXFCLENBQUMsb0JBQW9CLENBQUMsQ0FBQztRQUN2RixNQUFNLHNCQUFzQixHQUFHLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUV6RSxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyw2QkFBNkIsQ0FBQyxDQUFDO1FBRXBELE1BQU0sU0FBUyxHQUFHLElBQUksdUJBQXVCLENBQUMsbUJBQW1CLENBQUMsQ0FBQztRQUNuRSxJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUM7UUFFckMsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRTtZQUNqQyxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxFQUFDLFNBQVMsRUFBRSxhQUFhLEVBQUMsQ0FBQyxDQUFDO1FBQ3JELENBQUMsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQzdCLEdBQUcsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsR0FBRyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsR0FBRyxFQUFFLENBQUMsR0FBRyxPQUFPLENBQUMsQ0FBQyxDQUFDLEdBQUcsR0FBRyxPQUFPLENBQUMsRUFDdEUsb0JBQW9CLEVBQUUsQ0FDdkIsQ0FBQyxTQUFTLENBQUMsQ0FBQyxTQUFTLEVBQUUsRUFBRTtZQUN4QixJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxFQUFDLFNBQVMsRUFBRSxlQUFlLEVBQUUsaUJBQWlCLEVBQUUsU0FBUyxFQUFDLENBQUMsQ0FBQztRQUNyRixDQUFDLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDbkMsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsRUFBQyxTQUFTLEVBQUUsZ0JBQWdCLEVBQUMsQ0FBQyxDQUFDO1FBQ3hELENBQUMsQ0FBQyxDQUFDO1FBRUgsTUFBTSxhQUFhLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxzQkFBc0IsQ0FBQyxHQUFHLDZCQUE2QixDQUFDO1FBQ3pGLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQ2pDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDcEIsQ0FBQztJQUVEOztPQUVHO0lBQ0ksb0JBQW9CO1FBRXpCLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUMxQyxDQUFDOzs7O1lBbkZGLFVBQVUsU0FBQztnQkFDVixVQUFVLEVBQUUsTUFBTTthQUNuQjs7O1lBekJnQyxJQUFJO1lBQzdCLFNBQVMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0RvY3VtZW50SW50ZXJydXB0U291cmNlLCBJZGxlLCB9IGZyb20gJ0BuZy1pZGxlL2NvcmUnO1xuaW1wb3J0IHtLZWVwYWxpdmV9IGZyb20gJ0BuZy1pZGxlL2tlZXBhbGl2ZSc7XG5pbXBvcnQge09ic2VydmFibGUsIFN1YmplY3R9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtcbiAgZGlzdGluY3RVbnRpbENoYW5nZWQsXG4gIG1hcFxufSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQge1RpbWVvdXROb3RpZmljYXRpb25Db25maWd9IGZyb20gJy4uLy4uL21vZGVscy90aW1lb3V0LW5vdGlmaWNhdGlvbi5tb2RlbCc7XG5cbi8qKlxuICogVGltZW91dE5vdGlmaWNhdGlvbnNTZXJ2aWNlXG4gKlxuICogVGhlIFRpbWVvdXQgTm90aWZpY2F0aW9uIFNlcnZpY2UgYWxsb3dzIHlvdXIgYXBwbGljYXRpb24gdG8gcmVjZWl2ZSBub3RpZmljYXRpb25zXG4gKiB3aGVuIGEgVXNlciBpcyBhcHByb2FjaGluZyB0aGUgdGhlIHRvdGFsIHRpbWUgdGhhdCBhIFVzZXIgaGFzIGJlZW4gaWRsZSBmb3IuXG4gKlxuICogVGhpcyBjYW4gYmUgc2V0IGJ5IHlvdXIgYXBwbGljYXRpb24gdXNpbmcgdGhlIFRpbWVvdXQgTm90aWZpY2F0aW9uIENvbmZpZyBvYmplY3QuXG4gKlxuICogWW91ciBhcHBsaWNhdGlvbiB3aWxsIHRoZW4gaGF2ZSB0byBsaXN0ZW4gdG8gZXZlbnRzIGNvbWluZyBmcm9tIHRoZSBUaW1lb3V0IE5vdGlmaWNhdGlvbiBTZXJ2aWNlLFxuICogYW5kIGhhbmRsZSB0aGVzZSBldmVudHMgd2l0aGluIHlvdXIgYXBwbGljYXRpb24uXG4gKlxuICogQHNlZSBSRUFETUUubWQgZm9yIGltcGxlbWVudGF0aW9uIGRldGFpbHMgYW5kIGNvZGUsIG9uIGhvdyB0byBpbXBsZW1lbnQgdGhlIFRpbWVvdXQgTm90aWZpY2F0aW9uXG4gKiBTZXJ2aWNlIHdpdGhpbiB5b3VyIGFwcGxpY2F0aW9uLlxuICovXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBUaW1lb3V0Tm90aWZpY2F0aW9uc1NlcnZpY2Uge1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgZXZlbnRFbWl0dGVyOiBTdWJqZWN0PHtldmVudFR5cGU6IHN0cmluZywgcmVhZGFibGVDb3VudGRvd24/OiBzdHJpbmc7IH0+O1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVhZG9ubHkgaWRsZTogSWRsZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IGtlZXBhbGl2ZTogS2VlcGFsaXZlLFxuICApIHtcbiAgICB0aGlzLmV2ZW50RW1pdHRlciA9IG5ldyBTdWJqZWN0KCk7XG4gIH1cblxuICAvKipcbiAgICogQ29udmVydCBtaWxsaXNlY29uZHMgdG8gc2Vjb25kcy5cbiAgICpcbiAgICogQHBhcmFtIG1pbGxpc2Vjb25kcyAtIDEwMDBcbiAgICogQHJldHVybiBzZWNvbmRzIC0gMVxuICAgKi9cbiAgcHVibGljIG1pbGxpc2Vjb25kc1RvU2Vjb25kcyA9IChtaWxsaXNlY29uZHM6IG51bWJlcik6IG51bWJlciA9PiBtaWxsaXNlY29uZHMgLyAxMDAwO1xuXG4gIC8qKlxuICAgKiBJbml0aWFsaXNlXG4gICAqXG4gICAqIEluaXRpYWxpc2UgdGhlIFRpbWVvdXQgTm90aWZpY2F0aW9uIEV2ZW50cy5cbiAgICpcbiAgICogSSBtYWRlIHRoZSBkZWNpc2lvbiBub3QgdG8gbWFrZSAnIG1pbnV0ZXMnIGFuZCAnIHNlY29uZHMnIGNvbmZpZ3VyYWJsZSB2aWEgaW5wdXQgcGFyYW1ldGVycyAtXG4gICAqIEFzIEkgbWFkZSBhbiBhc3N1bXB0aW9uIHRoYXQgYW55IFJlZm9ybSB0ZWFtIHdvdWxkIG5vdCBuZWVkIHRvIGNoYW5nZSB0aGVzZSB0byAnc2VjcywgbWlucycgb3IgJ3MsIG0nLlxuICAgKlxuICAgKiBpZGxlTW9kYWxEaXNwbGF5VGltZSBhbmQgdG90YWxJZGxlVGltZSBuZWVkIHRvIGJlIHBhc3NlZCBpbiwgaW4gbWlsbGlzZWNvbmRzLlxuICAgKlxuICAgKiBAc2VlIFJFQURNRS5tZCBmb3IgbW9yZSBpbmZvcm1hdGlvbiBvbiBUaW1lb3V0Tm90aWZpY2F0aW9uU2VydmljZS5cbiAgICovXG4gIHB1YmxpYyBpbml0aWFsaXNlKGNvbmZpZzogVGltZW91dE5vdGlmaWNhdGlvbkNvbmZpZyk6IHZvaWQge1xuXG4gICAgY29uc3QgRE9DVU1FTlRfSU5URVJSVVBUUyA9ICdtb3VzZWRvd24ga2V5ZG93biBET01Nb3VzZVNjcm9sbCBtb3VzZXdoZWVsIHRvdWNoc3RhcnQgdG91Y2htb3ZlIHNjcm9sbCc7XG5cbiAgICBjb25zdCBNSU5VVEVTID0gJyBtaW51dGVzJztcbiAgICBjb25zdCBTRUNPTkRTID0gJyBzZWNvbmRzJztcblxuICAgIGNvbnN0IFNJR05PVVRfRVZFTlQgPSAnc2lnbi1vdXQnO1xuICAgIGNvbnN0IENPVU5URE9XTl9FVkVOVCA9ICdjb3VudGRvd24nO1xuICAgIGNvbnN0IEtFRVBfQUxJVkVfRVZFTlQgPSAna2VlcC1hbGl2ZSc7XG5cbiAgICBjb25zdCB7aWRsZVNlcnZpY2VOYW1lLCBpZGxlTW9kYWxEaXNwbGF5VGltZSwgdG90YWxJZGxlVGltZX0gPSBjb25maWc7XG5cbiAgICB0aGlzLmlkbGUuc2V0SWRsZU5hbWUoaWRsZVNlcnZpY2VOYW1lKTtcblxuICAgIGNvbnN0IGlkbGVNb2RhbERpc3BsYXlUaW1lSW5TZWNvbmRzID0gdGhpcy5taWxsaXNlY29uZHNUb1NlY29uZHMoaWRsZU1vZGFsRGlzcGxheVRpbWUpO1xuICAgIGNvbnN0IHRvdGFsSWRsZVRpbWVJblNlY29uZHMgPSB0aGlzLm1pbGxpc2Vjb25kc1RvU2Vjb25kcyh0b3RhbElkbGVUaW1lKTtcblxuICAgIHRoaXMuaWRsZS5zZXRUaW1lb3V0KGlkbGVNb2RhbERpc3BsYXlUaW1lSW5TZWNvbmRzKTtcblxuICAgIGNvbnN0IGludGVycnVwdCA9IG5ldyBEb2N1bWVudEludGVycnVwdFNvdXJjZShET0NVTUVOVF9JTlRFUlJVUFRTKTtcbiAgICB0aGlzLmlkbGUuc2V0SW50ZXJydXB0cyhbaW50ZXJydXB0XSk7XG5cbiAgICB0aGlzLmlkbGUub25UaW1lb3V0LnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICB0aGlzLmV2ZW50RW1pdHRlci5uZXh0KHtldmVudFR5cGU6IFNJR05PVVRfRVZFTlR9KTtcbiAgICB9KTtcblxuICAgIHRoaXMuaWRsZS5vblRpbWVvdXRXYXJuaW5nLnBpcGUoXG4gICAgICBtYXAoc2VjID0+IChzZWMgPiA2MCkgPyBNYXRoLmNlaWwoc2VjIC8gNjApICsgTUlOVVRFUyA6IHNlYyArIFNFQ09ORFMpLFxuICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKVxuICAgICkuc3Vic2NyaWJlKChjb3VudGRvd24pID0+IHtcbiAgICAgIHRoaXMuZXZlbnRFbWl0dGVyLm5leHQoe2V2ZW50VHlwZTogQ09VTlRET1dOX0VWRU5ULCByZWFkYWJsZUNvdW50ZG93bjogY291bnRkb3dufSk7XG4gICAgfSk7XG5cbiAgICB0aGlzLmtlZXBhbGl2ZS5vblBpbmcuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIHRoaXMuZXZlbnRFbWl0dGVyLm5leHQoe2V2ZW50VHlwZTogS0VFUF9BTElWRV9FVkVOVH0pO1xuICAgIH0pO1xuXG4gICAgY29uc3QgaWRsZUluU2Vjb25kcyA9IE1hdGguZmxvb3IodG90YWxJZGxlVGltZUluU2Vjb25kcykgLSBpZGxlTW9kYWxEaXNwbGF5VGltZUluU2Vjb25kcztcbiAgICB0aGlzLmlkbGUuc2V0SWRsZShpZGxlSW5TZWNvbmRzKTtcbiAgICB0aGlzLmlkbGUud2F0Y2goKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBFeHBvc2UgdGhlIG5vdGlmaWNhdGlvbiBldmVudHMsIHNvIHRoYXQgYSAzcmQgcGFydHkgc2VydmljZSBjYW4gbGlzdGVuIHRvIHRoZSBub3RpZmljYXRpb25zLlxuICAgKi9cbiAgcHVibGljIG5vdGlmaWNhdGlvbk9uQ2hhbmdlKCk6IE9ic2VydmFibGU8YW55PiB7XG5cbiAgICByZXR1cm4gdGhpcy5ldmVudEVtaXR0ZXIuYXNPYnNlcnZhYmxlKCk7XG4gIH1cbn1cbiJdfQ==
|