@hmcts/rpx-xui-common-lib 2.0.0-rc.6 → 2.1.0-angular-upgrade-11
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/bundles/hmcts-rpx-xui-common-lib.umd.js +3840 -4140
- package/bundles/hmcts-rpx-xui-common-lib.umd.js.map +1 -1
- package/bundles/hmcts-rpx-xui-common-lib.umd.min.js +1 -1
- package/bundles/hmcts-rpx-xui-common-lib.umd.min.js.map +1 -1
- package/esm2015/hmcts-rpx-xui-common-lib.js +59 -52
- package/esm2015/lib/components/accessibility/accessibility.component.js +2 -8
- package/esm2015/lib/components/checkbox-list/checkbox-list.component.js +14 -112
- package/esm2015/lib/components/contact-details/contact-details.component.js +2 -12
- package/esm2015/lib/components/cookie-banner/cookie-banner.component.js +68 -0
- package/esm2015/lib/components/due-date/due-date.component.js +7 -103
- package/esm2015/lib/components/exui-main-wrapper/exui-page-wrapper.component.js +7 -21
- package/esm2015/lib/components/find-location/find-location.component.js +120 -0
- package/esm2015/lib/components/find-person/find-person.component.js +118 -0
- package/esm2015/lib/components/generic-filter/generic-filter-utils.js +21 -0
- package/esm2015/lib/components/generic-filter/generic-filter.component.js +347 -106
- package/esm2015/lib/components/hmcts-session-dialog/hmcts-session-dialog.component.js +3 -18
- package/esm2015/lib/components/index.js +2 -7
- package/esm2015/lib/components/invite-user-form/invite-user-form.component.js +2 -22
- package/esm2015/lib/components/invite-user-permissions/invite-user-permission.component.js +2 -21
- package/esm2015/lib/components/loading-spinner/loading-spinner.component.js +7 -45
- package/esm2015/lib/components/pagination/pagination.component.js +28 -0
- package/esm2015/lib/components/public_api.js +33 -31
- package/esm2015/lib/components/search-judicials/search-judicials.component.js +126 -0
- package/esm2015/lib/components/search-location/search-location.component.js +114 -0
- package/esm2015/lib/components/search-venue/search-venue.component.js +123 -0
- package/esm2015/lib/components/selected-case/selected-case.component.js +20 -176
- package/esm2015/lib/components/selected-case-confirm/selected-case-confirm.component.js +3 -41
- package/esm2015/lib/components/selected-case-list/selected-case-list.component.js +3 -52
- package/esm2015/lib/components/service-message/service-message.component.js +2 -20
- package/esm2015/lib/components/service-messages/service-messages.component.js +8 -66
- package/esm2015/lib/components/share-case/share-case.component.js +7 -88
- package/esm2015/lib/components/share-case-confirm/share-case-confirm.component.js +4 -37
- package/esm2015/lib/components/tab/tab.component.js +2 -26
- package/esm2015/lib/components/tc-confirm/tc-confirm.component.js +2 -17
- package/esm2015/lib/components/terms-and-conditions/tc-display/tc-display-html/tc-display-html.component.js +2 -8
- package/esm2015/lib/components/terms-and-conditions/tc-display/tc-display-plain/tc-display-plain.component.js +2 -8
- package/esm2015/lib/components/terms-and-conditions/terms-and-conditions.component.js +2 -12
- package/esm2015/lib/components/user-details/user-details.component.js +2 -39
- package/esm2015/lib/components/user-list/user-list.component.js +15 -19
- package/esm2015/lib/components/user-select/user-select.component.js +5 -52
- package/esm2015/lib/directives/feature-toggle/feature-toggle.directive.js +3 -56
- package/esm2015/lib/directives/index.js +2 -7
- package/esm2015/lib/directives/let/let.directive.js +1 -39
- package/esm2015/lib/directives/public-api.js +3 -8
- package/esm2015/lib/exui-common-lib.module.js +31 -34
- package/esm2015/lib/gov-ui/components/gov-uk-checkbox/gov-uk-checkbox.component.js +2 -22
- package/esm2015/lib/gov-ui/components/gov-uk-checkboxes/gov-uk-checkboxes.component.js +2 -13
- package/esm2015/lib/gov-ui/components/gov-uk-date/gov-uk-date.component.js +49 -27
- package/esm2015/lib/gov-ui/components/gov-uk-error-message/gov-uk-error-message.component.js +2 -14
- package/esm2015/lib/gov-ui/components/gov-uk-fieldset/gov-uk-fieldset.component.js +2 -17
- package/esm2015/lib/gov-ui/components/gov-uk-file-upload/gov-uk-file-upload.component.js +2 -24
- package/esm2015/lib/gov-ui/components/gov-uk-form-group-wrapper/gov-uk-form-group-wrapper.component.js +2 -16
- package/esm2015/lib/gov-ui/components/gov-uk-input/gov-uk-input.component.js +3 -23
- package/esm2015/lib/gov-ui/components/gov-uk-label/gov-uk-label.component.js +2 -12
- package/esm2015/lib/gov-ui/components/gov-uk-radio/gov-uk-radio.component.js +6 -24
- package/esm2015/lib/gov-ui/components/gov-uk-radios/gov-uk-radios.component.js +2 -13
- package/esm2015/lib/gov-ui/components/gov-uk-select/gov-uk-select.component.js +2 -21
- package/esm2015/lib/gov-ui/components/gov-uk-table/gov-uk-table.component.js +2 -32
- package/esm2015/lib/gov-ui/components/gov-uk-textarea/gov-uk-textarea.component.js +2 -18
- package/esm2015/lib/gov-ui/components/hmcts-banner/hmcts-banner.component.js +2 -14
- package/esm2015/lib/gov-ui/components/hmcts-error-summary/hmcts-error-summary.component.js +2 -44
- package/esm2015/lib/gov-ui/components/hmcts-identity-bar/hmcts-identity-bar.component.js +2 -16
- package/esm2015/lib/gov-ui/components/hmcts-main-wrapper/hmcts-main-wrapper.component.js +2 -36
- package/esm2015/lib/gov-ui/components/hmcts-pagination/hmcts-pagination.component.js +28 -0
- package/esm2015/lib/gov-ui/components/hmcts-primary-navigation/hmcts-primary-navigation.component.js +2 -22
- package/esm2015/lib/gov-ui/components/hmcts-sub-navigation/hmcts-sub-navigation.component.js +4 -26
- package/esm2015/lib/gov-ui/components/index.js +2 -7
- package/esm2015/lib/gov-ui/components/public_api.js +22 -26
- package/esm2015/lib/gov-ui/directives/remove-host.directive.js +1 -22
- package/esm2015/lib/gov-ui/gov-ui.service.js +2 -8
- package/esm2015/lib/gov-ui/index.js +2 -7
- package/esm2015/lib/gov-ui/models/banner-data-model.js +2 -16
- package/esm2015/lib/gov-ui/models/checkboxes-model.js +2 -22
- package/esm2015/lib/gov-ui/models/error-messages-model.js +2 -16
- package/esm2015/lib/gov-ui/models/gov-ui-config-model.js +2 -36
- package/esm2015/lib/gov-ui/models/index.js +2 -7
- package/esm2015/lib/gov-ui/models/isession-storage.interface.js +2 -0
- package/esm2015/lib/gov-ui/models/public_api.js +5 -10
- package/esm2015/lib/gov-ui/public_api.js +5 -11
- package/esm2015/lib/gov-ui/util/helpers/html-templates.helper.js +4 -14
- package/esm2015/lib/gov-ui/util/session-storage/session-storage-utils.js +22 -0
- package/esm2015/lib/gov-ui/validators/checkboxes-be-checked.validator.js +5 -24
- package/esm2015/lib/gov-ui/validators/date.validator.js +3 -20
- package/esm2015/lib/gov-ui/validators/index.js +2 -7
- package/esm2015/lib/gov-ui/validators/public_api.js +4 -9
- package/esm2015/lib/gov-ui/validators/radio-group.validator.js +3 -15
- package/esm2015/lib/models/case-share.model.js +2 -26
- package/esm2015/lib/models/contact-details.model.js +7 -24
- package/esm2015/lib/models/due-date.model.js +7 -7
- package/esm2015/lib/models/feature-user.js +1 -16
- package/esm2015/lib/models/filter.model.js +1 -60
- package/esm2015/lib/models/idle-config.model.js +2 -20
- package/esm2015/lib/models/index.js +14 -7
- package/esm2015/lib/models/location.model.js +2 -0
- package/esm2015/lib/models/pagination.model.js +2 -0
- package/esm2015/lib/models/person.model.js +17 -0
- package/esm2015/lib/models/public_api.js +6 -17
- package/esm2015/lib/models/search-options.model.js +2 -0
- package/esm2015/lib/models/tcDocument.model.js +2 -18
- package/esm2015/lib/models/timeout-notification.model.js +2 -18
- package/esm2015/lib/models/user-details.model.js +2 -22
- package/esm2015/lib/models/user.model.js +2 -25
- package/esm2015/lib/services/case-sharing-state/case-sharing-state.service.js +9 -84
- package/esm2015/lib/services/cookie/cookie.service.js +47 -0
- package/esm2015/lib/services/feature-toggle/feature-toggle.guard.js +10 -43
- package/esm2015/lib/services/feature-toggle/feature-toggle.service.js +3 -28
- package/esm2015/lib/services/feature-toggle/launch-darkly.service.js +20 -101
- package/esm2015/lib/services/filter/filter.service.js +4 -54
- package/esm2015/lib/services/find-person/find-person.service.js +106 -0
- package/esm2015/lib/services/google-analytics/google-analytics.service.js +8 -63
- package/esm2015/lib/services/google-tag-manager/google-tag-manager.service.js +10 -64
- package/esm2015/lib/services/index.js +2 -7
- package/esm2015/lib/services/loading/loading.service.js +2 -41
- package/esm2015/lib/services/locations/location.service.js +39 -0
- package/esm2015/lib/services/manage-session/manage-session.services.js +11 -64
- package/esm2015/lib/services/public-api.js +13 -18
- package/esm2015/lib/services/role-guard/role.guard.js +12 -53
- package/esm2015/lib/services/role-guard/role.service.js +2 -21
- package/esm2015/lib/services/session-storage/session-storage.service.js +41 -0
- package/esm2015/lib/services/timeout-notifications/timeout-notifications.service.js +10 -76
- package/esm2015/lib/window.js +1 -10
- package/esm2015/public-api.js +8 -13
- package/fesm2015/hmcts-rpx-xui-common-lib.js +1766 -1981
- package/fesm2015/hmcts-rpx-xui-common-lib.js.map +1 -1
- package/hmcts-rpx-xui-common-lib.d.ts +57 -45
- package/hmcts-rpx-xui-common-lib.metadata.json +1 -1
- package/lib/components/checkbox-list/checkbox-list.component.d.ts +6 -5
- package/lib/components/cookie-banner/cookie-banner.component.d.ts +20 -0
- package/lib/components/due-date/due-date.component.d.ts +4 -4
- package/lib/components/find-location/find-location.component.d.ts +33 -0
- package/lib/components/find-person/find-person.component.d.ts +40 -0
- package/lib/components/generic-filter/generic-filter-utils.d.ts +8 -0
- package/lib/components/generic-filter/generic-filter.component.d.ts +37 -11
- package/lib/components/hmcts-session-dialog/hmcts-session-dialog.component.d.ts +1 -1
- package/lib/components/invite-user-form/invite-user-form.component.d.ts +2 -2
- package/lib/components/loading-spinner/loading-spinner.component.d.ts +1 -7
- package/lib/components/pagination/pagination.component.d.ts +10 -0
- package/lib/components/public_api.d.ts +12 -5
- package/lib/components/search-judicials/search-judicials.component.d.ts +37 -0
- package/lib/components/search-location/search-location.component.d.ts +40 -0
- package/lib/components/search-venue/search-venue.component.d.ts +37 -0
- package/lib/components/user-list/user-list.component.d.ts +9 -2
- package/lib/directives/feature-toggle/feature-toggle.directive.d.ts +1 -1
- package/lib/directives/let/let.directive.d.ts +1 -1
- package/lib/exui-common-lib.module.d.ts +10 -11
- package/lib/gov-ui/components/gov-uk-date/gov-uk-date.component.d.ts +8 -0
- package/lib/gov-ui/components/hmcts-error-summary/hmcts-error-summary.component.d.ts +1 -1
- package/lib/gov-ui/components/hmcts-identity-bar/hmcts-identity-bar.component.d.ts +1 -1
- package/lib/gov-ui/components/hmcts-main-wrapper/hmcts-main-wrapper.component.d.ts +1 -1
- package/lib/gov-ui/components/hmcts-pagination/hmcts-pagination.component.d.ts +10 -0
- package/lib/gov-ui/components/hmcts-primary-navigation/hmcts-primary-navigation.component.d.ts +1 -1
- package/lib/gov-ui/components/hmcts-sub-navigation/hmcts-sub-navigation.component.d.ts +2 -0
- package/lib/gov-ui/components/public_api.d.ts +20 -19
- package/lib/gov-ui/models/isession-storage.interface.d.ts +4 -0
- package/lib/gov-ui/public_api.d.ts +1 -2
- package/lib/gov-ui/util/session-storage/session-storage-utils.d.ts +6 -0
- package/lib/models/contact-details.model.d.ts +5 -1
- package/lib/models/due-date.model.d.ts +5 -0
- package/lib/models/filter.model.d.ts +31 -2
- package/lib/models/index.d.ts +12 -0
- package/lib/models/location.model.d.ts +49 -0
- package/lib/models/pagination.model.d.ts +5 -0
- package/lib/models/person.model.d.ts +43 -0
- package/lib/models/public_api.d.ts +1 -7
- package/lib/models/search-options.model.d.ts +8 -0
- package/lib/services/case-sharing-state/case-sharing-state.service.d.ts +1 -1
- package/lib/services/cookie/cookie.service.d.ts +9 -0
- package/lib/services/feature-toggle/feature-toggle.service.d.ts +1 -1
- package/lib/services/feature-toggle/launch-darkly.service.d.ts +4 -6
- package/lib/services/filter/filter.service.d.ts +4 -3
- package/lib/services/find-person/find-person.service.d.ts +17 -0
- package/lib/services/loading/loading.service.d.ts +2 -2
- package/lib/services/locations/location.service.d.ts +23 -0
- package/lib/services/public-api.d.ts +3 -3
- package/lib/services/role-guard/role.service.d.ts +2 -1
- package/lib/services/session-storage/session-storage.service.d.ts +20 -0
- package/lib/window.d.ts +2 -2
- package/package.json +8 -16
- package/public-api.d.ts +2 -2
- package/esm2015/lib/gov-ui/directives/index.js +0 -7
- package/esm2015/lib/gov-ui/directives/public_api.js +0 -7
- package/esm2015/lib/models/badge-colour.enum.js +0 -14
- package/esm5/hmcts-rpx-xui-common-lib.js +0 -61
- package/esm5/lib/components/accessibility/accessibility.component.js +0 -22
- package/esm5/lib/components/checkbox-list/checkbox-list.component.js +0 -391
- package/esm5/lib/components/contact-details/contact-details.component.js +0 -29
- package/esm5/lib/components/due-date/due-date.component.js +0 -255
- package/esm5/lib/components/exui-main-wrapper/exui-page-wrapper.component.js +0 -45
- package/esm5/lib/components/generic-filter/generic-filter.component.js +0 -161
- package/esm5/lib/components/hmcts-session-dialog/hmcts-session-dialog.component.js +0 -47
- package/esm5/lib/components/index.js +0 -7
- package/esm5/lib/components/invite-user-form/invite-user-form.component.js +0 -54
- package/esm5/lib/components/invite-user-permissions/invite-user-permission.component.js +0 -46
- package/esm5/lib/components/loading-spinner/loading-spinner.component.js +0 -61
- package/esm5/lib/components/public_api.js +0 -31
- package/esm5/lib/components/selected-case/selected-case.component.js +0 -430
- package/esm5/lib/components/selected-case-confirm/selected-case-confirm.component.js +0 -84
- package/esm5/lib/components/selected-case-list/selected-case-list.component.js +0 -109
- package/esm5/lib/components/service-message/service-message.component.js +0 -46
- package/esm5/lib/components/service-messages/service-messages.component.js +0 -122
- package/esm5/lib/components/share-case/share-case.component.js +0 -223
- package/esm5/lib/components/share-case-confirm/share-case-confirm.component.js +0 -70
- package/esm5/lib/components/tab/tab.component.js +0 -51
- package/esm5/lib/components/tc-confirm/tc-confirm.component.js +0 -42
- package/esm5/lib/components/terms-and-conditions/tc-display/tc-display-html/tc-display-html.component.js +0 -22
- package/esm5/lib/components/terms-and-conditions/tc-display/tc-display-plain/tc-display-plain.component.js +0 -22
- package/esm5/lib/components/terms-and-conditions/terms-and-conditions.component.js +0 -29
- package/esm5/lib/components/user-details/user-details.component.js +0 -92
- package/esm5/lib/components/user-list/user-list.component.js +0 -43
- package/esm5/lib/components/user-select/user-select.component.js +0 -131
- package/esm5/lib/directives/feature-toggle/feature-toggle.directive.js +0 -104
- package/esm5/lib/directives/index.js +0 -7
- package/esm5/lib/directives/let/let.directive.js +0 -78
- package/esm5/lib/directives/public-api.js +0 -8
- package/esm5/lib/exui-common-lib.module.js +0 -158
- package/esm5/lib/gov-ui/components/gov-uk-checkbox/gov-uk-checkbox.component.js +0 -56
- package/esm5/lib/gov-ui/components/gov-uk-checkboxes/gov-uk-checkboxes.component.js +0 -36
- package/esm5/lib/gov-ui/components/gov-uk-date/gov-uk-date.component.js +0 -48
- package/esm5/lib/gov-ui/components/gov-uk-error-message/gov-uk-error-message.component.js +0 -37
- package/esm5/lib/gov-ui/components/gov-uk-fieldset/gov-uk-fieldset.component.js +0 -49
- package/esm5/lib/gov-ui/components/gov-uk-file-upload/gov-uk-file-upload.component.js +0 -65
- package/esm5/lib/gov-ui/components/gov-uk-form-group-wrapper/gov-uk-form-group-wrapper.component.js +0 -40
- package/esm5/lib/gov-ui/components/gov-uk-input/gov-uk-input.component.js +0 -66
- package/esm5/lib/gov-ui/components/gov-uk-label/gov-uk-label.component.js +0 -34
- package/esm5/lib/gov-ui/components/gov-uk-radio/gov-uk-radio.component.js +0 -67
- package/esm5/lib/gov-ui/components/gov-uk-radios/gov-uk-radios.component.js +0 -36
- package/esm5/lib/gov-ui/components/gov-uk-select/gov-uk-select.component.js +0 -52
- package/esm5/lib/gov-ui/components/gov-uk-table/gov-uk-table.component.js +0 -77
- package/esm5/lib/gov-ui/components/gov-uk-textarea/gov-uk-textarea.component.js +0 -50
- package/esm5/lib/gov-ui/components/hmcts-banner/hmcts-banner.component.js +0 -38
- package/esm5/lib/gov-ui/components/hmcts-error-summary/hmcts-error-summary.component.js +0 -108
- package/esm5/lib/gov-ui/components/hmcts-identity-bar/hmcts-identity-bar.component.js +0 -40
- package/esm5/lib/gov-ui/components/hmcts-main-wrapper/hmcts-main-wrapper.component.js +0 -87
- package/esm5/lib/gov-ui/components/hmcts-primary-navigation/hmcts-primary-navigation.component.js +0 -49
- package/esm5/lib/gov-ui/components/hmcts-sub-navigation/hmcts-sub-navigation.component.js +0 -41
- package/esm5/lib/gov-ui/components/index.js +0 -7
- package/esm5/lib/gov-ui/components/public_api.js +0 -26
- package/esm5/lib/gov-ui/directives/index.js +0 -7
- package/esm5/lib/gov-ui/directives/public_api.js +0 -7
- package/esm5/lib/gov-ui/directives/remove-host.directive.js +0 -52
- package/esm5/lib/gov-ui/gov-ui.service.js +0 -22
- package/esm5/lib/gov-ui/index.js +0 -7
- package/esm5/lib/gov-ui/models/banner-data-model.js +0 -16
- package/esm5/lib/gov-ui/models/checkboxes-model.js +0 -22
- package/esm5/lib/gov-ui/models/error-messages-model.js +0 -16
- package/esm5/lib/gov-ui/models/gov-ui-config-model.js +0 -36
- package/esm5/lib/gov-ui/models/index.js +0 -7
- package/esm5/lib/gov-ui/models/public_api.js +0 -13
- package/esm5/lib/gov-ui/public_api.js +0 -14
- package/esm5/lib/gov-ui/util/helpers/html-templates.helper.js +0 -57
- package/esm5/lib/gov-ui/validators/checkboxes-be-checked.validator.js +0 -38
- package/esm5/lib/gov-ui/validators/date.validator.js +0 -32
- package/esm5/lib/gov-ui/validators/index.js +0 -7
- package/esm5/lib/gov-ui/validators/public_api.js +0 -12
- package/esm5/lib/gov-ui/validators/radio-group.validator.js +0 -27
- package/esm5/lib/models/badge-colour.enum.js +0 -14
- package/esm5/lib/models/case-share.model.js +0 -26
- package/esm5/lib/models/contact-details.model.js +0 -24
- package/esm5/lib/models/due-date.model.js +0 -8
- package/esm5/lib/models/feature-user.js +0 -28
- package/esm5/lib/models/filter.model.js +0 -66
- package/esm5/lib/models/idle-config.model.js +0 -20
- package/esm5/lib/models/index.js +0 -7
- package/esm5/lib/models/public_api.js +0 -17
- package/esm5/lib/models/tcDocument.model.js +0 -18
- package/esm5/lib/models/timeout-notification.model.js +0 -18
- package/esm5/lib/models/user-details.model.js +0 -22
- package/esm5/lib/models/user.model.js +0 -25
- package/esm5/lib/services/case-sharing-state/case-sharing-state.service.js +0 -289
- package/esm5/lib/services/feature-toggle/feature-toggle.guard.js +0 -83
- package/esm5/lib/services/feature-toggle/feature-toggle.service.js +0 -88
- package/esm5/lib/services/feature-toggle/launch-darkly.service.js +0 -183
- package/esm5/lib/services/filter/filter.service.js +0 -149
- package/esm5/lib/services/google-analytics/google-analytics.service.js +0 -128
- package/esm5/lib/services/google-tag-manager/google-tag-manager.service.js +0 -135
- package/esm5/lib/services/index.js +0 -7
- package/esm5/lib/services/loading/loading.service.js +0 -109
- package/esm5/lib/services/manage-session/manage-session.services.js +0 -111
- package/esm5/lib/services/public-api.js +0 -21
- package/esm5/lib/services/role-guard/role.guard.js +0 -81
- package/esm5/lib/services/role-guard/role.service.js +0 -45
- package/esm5/lib/services/timeout-notifications/timeout-notifications.service.js +0 -190
- package/esm5/lib/window.js +0 -13
- package/esm5/public-api.js +0 -16
- package/fesm5/hmcts-rpx-xui-common-lib.js +0 -5057
- package/fesm5/hmcts-rpx-xui-common-lib.js.map +0 -1
- package/lib/gov-ui/directives/index.d.ts +0 -1
- package/lib/gov-ui/directives/public_api.d.ts +0 -1
- package/lib/models/badge-colour.enum.d.ts +0 -6
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"hmcts-rpx-xui-common-lib.js.map","sources":["ng://@hmcts/rpx-xui-common-lib/lib/components/accessibility/accessibility.component.ts","ng://@hmcts/rpx-xui-common-lib/lib/components/checkbox-list/checkbox-list.component.ts","ng://@hmcts/rpx-xui-common-lib/lib/components/contact-details/contact-details.component.ts","ng://@hmcts/rpx-xui-common-lib/lib/models/badge-colour.enum.ts","ng://@hmcts/rpx-xui-common-lib/lib/models/due-date.model.ts","ng://@hmcts/rpx-xui-common-lib/lib/components/due-date/due-date.component.ts","ng://@hmcts/rpx-xui-common-lib/lib/components/exui-main-wrapper/exui-page-wrapper.component.ts","ng://@hmcts/rpx-xui-common-lib/lib/services/filter/filter.service.ts","ng://@hmcts/rpx-xui-common-lib/lib/components/generic-filter/generic-filter.component.ts","ng://@hmcts/rpx-xui-common-lib/lib/components/hmcts-session-dialog/hmcts-session-dialog.component.ts","ng://@hmcts/rpx-xui-common-lib/lib/components/invite-user-form/invite-user-form.component.ts","ng://@hmcts/rpx-xui-common-lib/lib/components/invite-user-permissions/invite-user-permission.component.ts","ng://@hmcts/rpx-xui-common-lib/lib/components/loading-spinner/loading-spinner.component.ts","ng://@hmcts/rpx-xui-common-lib/lib/services/case-sharing-state/case-sharing-state.service.ts","ng://@hmcts/rpx-xui-common-lib/lib/components/selected-case-confirm/selected-case-confirm.component.ts","ng://@hmcts/rpx-xui-common-lib/lib/components/selected-case-list/selected-case-list.component.ts","ng://@hmcts/rpx-xui-common-lib/lib/components/selected-case/selected-case.component.ts","ng://@hmcts/rpx-xui-common-lib/lib/components/service-message/service-message.component.ts","ng://@hmcts/rpx-xui-common-lib/lib/services/feature-toggle/feature-toggle.service.ts","ng://@hmcts/rpx-xui-common-lib/lib/components/service-messages/service-messages.component.ts","ng://@hmcts/rpx-xui-common-lib/lib/components/share-case-confirm/share-case-confirm.component.ts","ng://@hmcts/rpx-xui-common-lib/lib/components/user-select/user-select.component.ts","ng://@hmcts/rpx-xui-common-lib/lib/components/share-case/share-case.component.ts","ng://@hmcts/rpx-xui-common-lib/lib/components/tab/tab.component.ts","ng://@hmcts/rpx-xui-common-lib/lib/components/tc-confirm/tc-confirm.component.ts","ng://@hmcts/rpx-xui-common-lib/lib/components/terms-and-conditions/tc-display/tc-display-html/tc-display-html.component.ts","ng://@hmcts/rpx-xui-common-lib/lib/components/terms-and-conditions/tc-display/tc-display-plain/tc-display-plain.component.ts","ng://@hmcts/rpx-xui-common-lib/lib/components/terms-and-conditions/terms-and-conditions.component.ts","ng://@hmcts/rpx-xui-common-lib/lib/components/user-details/user-details.component.ts","ng://@hmcts/rpx-xui-common-lib/lib/components/user-list/user-list.component.ts","ng://@hmcts/rpx-xui-common-lib/lib/directives/feature-toggle/feature-toggle.directive.ts","ng://@hmcts/rpx-xui-common-lib/lib/directives/let/let.directive.ts","ng://@hmcts/rpx-xui-common-lib/lib/gov-ui/components/gov-uk-checkbox/gov-uk-checkbox.component.ts","ng://@hmcts/rpx-xui-common-lib/lib/gov-ui/components/gov-uk-checkboxes/gov-uk-checkboxes.component.ts","ng://@hmcts/rpx-xui-common-lib/lib/gov-ui/components/gov-uk-date/gov-uk-date.component.ts","ng://@hmcts/rpx-xui-common-lib/lib/gov-ui/components/gov-uk-error-message/gov-uk-error-message.component.ts","ng://@hmcts/rpx-xui-common-lib/lib/gov-ui/util/helpers/html-templates.helper.ts","ng://@hmcts/rpx-xui-common-lib/lib/gov-ui/components/gov-uk-fieldset/gov-uk-fieldset.component.ts","ng://@hmcts/rpx-xui-common-lib/lib/gov-ui/components/gov-uk-file-upload/gov-uk-file-upload.component.ts","ng://@hmcts/rpx-xui-common-lib/lib/gov-ui/components/gov-uk-form-group-wrapper/gov-uk-form-group-wrapper.component.ts","ng://@hmcts/rpx-xui-common-lib/lib/gov-ui/components/gov-uk-input/gov-uk-input.component.ts","ng://@hmcts/rpx-xui-common-lib/lib/gov-ui/components/gov-uk-label/gov-uk-label.component.ts","ng://@hmcts/rpx-xui-common-lib/lib/gov-ui/components/gov-uk-radio/gov-uk-radio.component.ts","ng://@hmcts/rpx-xui-common-lib/lib/gov-ui/components/gov-uk-radios/gov-uk-radios.component.ts","ng://@hmcts/rpx-xui-common-lib/lib/gov-ui/components/gov-uk-select/gov-uk-select.component.ts","ng://@hmcts/rpx-xui-common-lib/lib/gov-ui/components/gov-uk-table/gov-uk-table.component.ts","ng://@hmcts/rpx-xui-common-lib/lib/gov-ui/components/gov-uk-textarea/gov-uk-textarea.component.ts","ng://@hmcts/rpx-xui-common-lib/lib/gov-ui/components/hmcts-banner/hmcts-banner.component.ts","ng://@hmcts/rpx-xui-common-lib/lib/gov-ui/components/hmcts-error-summary/hmcts-error-summary.component.ts","ng://@hmcts/rpx-xui-common-lib/lib/gov-ui/components/hmcts-identity-bar/hmcts-identity-bar.component.ts","ng://@hmcts/rpx-xui-common-lib/lib/gov-ui/components/hmcts-main-wrapper/hmcts-main-wrapper.component.ts","ng://@hmcts/rpx-xui-common-lib/lib/gov-ui/components/hmcts-primary-navigation/hmcts-primary-navigation.component.ts","ng://@hmcts/rpx-xui-common-lib/lib/gov-ui/components/hmcts-sub-navigation/hmcts-sub-navigation.component.ts","ng://@hmcts/rpx-xui-common-lib/lib/gov-ui/directives/remove-host.directive.ts","ng://@hmcts/rpx-xui-common-lib/lib/window.ts","ng://@hmcts/rpx-xui-common-lib/lib/exui-common-lib.module.ts","ng://@hmcts/rpx-xui-common-lib/lib/gov-ui/gov-ui.service.ts","ng://@hmcts/rpx-xui-common-lib/lib/gov-ui/validators/checkboxes-be-checked.validator.ts","ng://@hmcts/rpx-xui-common-lib/lib/gov-ui/validators/date.validator.ts","ng://@hmcts/rpx-xui-common-lib/lib/gov-ui/validators/radio-group.validator.ts","ng://@hmcts/rpx-xui-common-lib/lib/models/feature-user.ts","ng://@hmcts/rpx-xui-common-lib/lib/models/filter.model.ts","ng://@hmcts/rpx-xui-common-lib/lib/services/feature-toggle/feature-toggle.guard.ts","ng://@hmcts/rpx-xui-common-lib/lib/services/feature-toggle/launch-darkly.service.ts","ng://@hmcts/rpx-xui-common-lib/lib/services/google-analytics/google-analytics.service.ts","ng://@hmcts/rpx-xui-common-lib/lib/services/google-tag-manager/google-tag-manager.service.ts","ng://@hmcts/rpx-xui-common-lib/lib/services/loading/loading.service.ts","ng://@hmcts/rpx-xui-common-lib/lib/services/manage-session/manage-session.services.ts","ng://@hmcts/rpx-xui-common-lib/lib/services/role-guard/role.service.ts","ng://@hmcts/rpx-xui-common-lib/lib/services/role-guard/role.guard.ts","ng://@hmcts/rpx-xui-common-lib/lib/services/timeout-notifications/timeout-notifications.service.ts"],"sourcesContent":["import { Component } from '@angular/core';\n\n@Component({\n selector: 'xuilib-accessibility',\n templateUrl: './accessibility.component.html',\n styleUrls: ['./accessibility.component.scss']\n})\n\nexport class AccessibilityComponent {\n constructor() {\n }\n}\n","import { Component, EventEmitter, Input, OnChanges, Output, ViewEncapsulation } from '@angular/core';\n\n@Component({\n selector: 'xuilib-checkbox-list',\n templateUrl: 'checkbox-list.component.html',\n styleUrls: ['checkbox-list.component.scss'],\n encapsulation: ViewEncapsulation.None\n})\nexport class CheckboxListComponent<T> implements OnChanges {\n\n /**\n * The options to show checkboxes for. Note that the type\n * within the array corresponds to the one for the component.\n */\n @Input() public options: T[] = [];\n\n /**\n * The initially-selected values to use. When the component renders,\n * the checkboxes that correspond to these values will be checked.\n */\n @Input() public preselection: T[];\n\n /**\n * This function is invoked for each item to display the appropriate\n * label beside the checkbox.\n */\n @Input() public labelFunction: (item: T) => string;\n\n /**\n * Whenever the selection changes, this event fires. What is dispatched\n * is the current selection, also retrievable from .selection.\n */\n @Output() public selectionChange: EventEmitter<T[]> = new EventEmitter<T[]>();\n\n /**\n * The currently selected values.\n * Note: This array is immutable, which means pushing and popping will\n * have no effect on which checkboxes are selected.\n */\n @Input()\n public get selection(): T[] {\n return this.pSelection ? [ ...this.pSelection ] : [];\n }\n public set selection(value: T[]) {\n this.pSelection = this.getSelection(value);\n }\n private pSelection: T[];\n private pSelectionMade: boolean;\n\n /**\n * Indicates whether or not all of the items are selected.\n */\n public get allSelected(): boolean {\n return this.selection.length === this.options.length;\n }\n\n // Catch any changes to any of the Input() properties.\n public ngOnChanges(): void {\n // Set up the pre-selected values.\n this.setupPreselection();\n // Now check the current selection to make sure it's valid.\n this.checkSelection();\n }\n\n /**\n * Indicates whether or not there are any options to render.\n */\n public get hasOptions(): boolean {\n return this.options && this.options.length > 0;\n }\n\n public get isFunctional(): boolean {\n return this.labelFunction && this.hasOptions;\n }\n\n /**\n * Indicates whether or not an item is part of the current selection.\n * @param item The item in question.\n */\n public isSelected(item: T): boolean {\n return this.selection.includes(item);\n }\n\n /**\n * If an item is already selected, it will be removed from the selection.\n * Otherwise, it will be added to the selection..\n */\n public toggleItemSelection(item: T): void {\n if (this.pSelection === undefined) {\n // If we don't have any selection at all yet, make it just this item.\n this.pSelection = [ item ];\n } else if (this.isSelected(item)) {\n // If this item is already selected, remove it.\n this.pSelection.splice(this.pSelection.indexOf(item), 1);\n } else {\n // If it's not selected, add it.\n this.pSelection.push(item);\n }\n\n // Indicate that the user has now made an active selection.\n this.pSelectionMade = true;\n\n // Now emit an event so any containers know about the change to selection.\n this.selectionChange.emit(this.selection);\n }\n\n /**\n * If all of the items are selected, deselect them all.\n * Otherwise, select them all.\n */\n public toggleSelectAll(): void {\n // Do we already have them all selected?\n if (this.allSelected) {\n // If so, clear out the selection.\n this.pSelection = [];\n } else {\n // If not, select all of them.\n this.pSelection = [ ...this.options ];\n }\n\n // Indicate that the user has now made an active selection.\n this.pSelectionMade = true;\n\n // Now emit an event so any containers know about the change to selection.\n this.selectionChange.emit(this.pSelection);\n }\n\n /**\n * Use the labelFunction to determine whether the options include the item.\n * This is to handle partial objects being set in the pre-selection where\n * they may not be available by the same mechanism as the options.\n *\n * @param items The array of items in which to look for the item.\n * @param item The item to check in the options.\n */\n public containsItem(items: T[], item: T): boolean {\n if (this.isFunctional) {\n const itemLabel: string = this.labelFunction(item);\n return items.some(opt => {\n return this.labelFunction(opt) === itemLabel;\n });\n }\n return false;\n }\n\n // Simple utility function to indicate whether there is an active preselection.\n private get hasPreselection(): boolean {\n return this.preselection && this.preselection.length > 0;\n }\n\n // Set up the initially selected values.\n // NOTE: If the preselection changes and the user has NOT made an active selection,\n // the current selection will also be changed. As soon as the user has made an\n // active selection, however, the preselection is no longer relevant.\n private setupPreselection(): void {\n if (this.isFunctional && !this.pSelectionMade && this.hasPreselection) {\n let changed = true; // Assume this is a change.\n if (this.pSelection) {\n // If there is no difference between the arrays, this is not a change.\n changed = this.pSelection.filter((item: T) => {\n return !this.containsItem(this.preselection, item);\n }).length > 0;\n }\n\n // If this is a change, update the selection and then emit an\n // event so any containers know about the change to selection.\n if (changed) {\n this.pSelection = this.getSelection(this.preselection);\n this.selectionChange.emit(this.selection);\n }\n }\n }\n\n private getSelection(items: T[]): T[] {\n return [\n ...this.options.filter(opt => {\n return this.containsItem(items, opt);\n })\n ];\n }\n\n // The options have changed. Let's make sure the selection\n // doesn't contain anything that's not currently an option.\n private checkSelection(): void {\n if (this.isFunctional) {\n // Check which of the currently selected items are actually options.\n const allowedSelection: T[] = this.selection.filter((item: T) => {\n return this.containsItem(this.options, item);\n });\n\n // If any have dropped out, change the selection.\n if (allowedSelection.length !== this.selection.length) {\n this.pSelection = [ ...allowedSelection ];\n\n // And emit an event so any containers know about the change to selection.\n this.selectionChange.emit(this.selection);\n }\n }\n }\n}\n","import { Component, Input } from '@angular/core';\nimport { ContactDetailsDataModel } from '../../models';\n\n@Component({\n selector: 'xuilib-contact-details',\n templateUrl: './contact-details.component.html',\n styleUrls: ['contact-details.component.scss']\n})\nexport class ContactDetailsComponent {\n\n @Input() public data: ContactDetailsDataModel;\n\n constructor() {\n }\n}\n","export enum BadgeColour {\n RED = 'hmcts-badge--red',\n ORANGE = 'hmcts-badge--orange',\n GREEN = 'hmcts-badge--green',\n BLUE = 'hmcts-badge--blue',\n}\n","export const SECONDS_IN_A_DAY: number = 60 * 60 * 24;\n","import { formatDate } from '@angular/common';\nimport { Component, Input, OnChanges, ViewEncapsulation } from '@angular/core';\nimport { BadgeColour } from '../../models/badge-colour.enum';\n\nimport { SECONDS_IN_A_DAY } from '../../models/due-date.model';\n\n@Component({\n selector: 'xuilib-due-date',\n templateUrl: 'due-date.component.html',\n styleUrls: ['due-date.component.scss'],\n encapsulation: ViewEncapsulation.None\n})\nexport class DueDateComponent implements OnChanges {\n\n /**\n * The due date to use as the basis for rendering this component. It is\n * compared to the current date and displayed accordingly.\n */\n @Input() public dueDate: Date;\n\n /**\n * This should be considered HIGH urgency if there are fewer than this\n * many days until the due date.\n * * Set to 0 if you want it to show HIGH if it was due yesterday.\n * * Set to 1 if you want it to show HIGH if it's due today.\n * * Set to 2 if you want it to show HIGH if it's due tomorrow.\n *\n * Defaults to 0 (ZERO), which means it won't show as HIGH urgency until the\n * due date is in the past.\n *\n * NOTE: If this is higher than the mediumUrgencyCutoff value, MEDIUM urgency\n * will never be shown.\n *\n * ALSO NOTE: Anything overdue is automatically considered HIGH urgency.\n */\n @Input() public highUrgencyCutoff: number = 0; // Default\n\n /**\n * This should be considered MEDIUM urgency if there are fewer than this\n * many days until the due date.\n * * Set to 1 if you want it to show MEDIUM if it's due today.\n * * Set to 2 if you want it to show MEDIUM if it's due tomorrow.\n * * Set to 3 if you want it to show MEDIUM if it's due the day after tomorrow.\n *\n * Defaults to 2, which means it won't show as MEDIUM urgency unless the\n * due date is today or tomorrow.\n *\n * NOTE: If this is lower than the highUrgencyCutoff value, MEDIUM urgency\n * will never be shown.\n */\n @Input() public mediumUrgencyCutoff: number = 2;\n\n // The HMCTS badge class, used for colouration.\n private pBadge: string;\n public get badge(): string {\n return this.pBadge;\n }\n\n // The textual label to display in the component.\n private pLabel: string;\n public get label(): string {\n return this.pLabel;\n }\n\n // The accessible label, which is also used for the tooltip.\n private pAccessibleLabel: string;\n public get accessibleLabel(): string {\n return this.pAccessibleLabel;\n }\n\n // How many days the dueDate varies from today.\n private pDaysDiff: number;\n public get daysDiff(): number {\n return this.pDaysDiff;\n }\n\n // Catch any changes to any of the Input() properties.\n public ngOnChanges(): void {\n this.handleInputChanges();\n }\n\n // Set up the label, urgency class, and accessibility fields.\n private handleInputChanges() {\n // If we don't have a dueDate, skip out of here.\n if (!this.dueDate) {\n return;\n }\n\n // How many days from today is the due date?\n // Already happened means daysDiff > 0;\n // Today means daysDiff = 0;\n // Yet to come means daysDiff < 0;\n this.pDaysDiff = this.getDaysDifference(this.dueDate, new Date());\n\n // Is it overdue?\n if (this.daysDiff > 0) {\n this.pBadge = BadgeColour.RED;\n const daysLabel = this.daysDiff === 1 ? 'day' : 'days';\n this.pLabel = `+${this.daysDiff} ${daysLabel}`;\n this.pAccessibleLabel = `This task is ${this.daysDiff} ${daysLabel} past its due date`;\n } else {\n // Special label for \"Today\".\n if (this.daysDiff === 0) {\n this.pLabel = 'TODAY';\n this.pAccessibleLabel = 'This task is due to be completed today';\n } else {\n this.pLabel = `${formatDate(this.dueDate, 'd MMM', 'en-GB')}`;\n this.pAccessibleLabel = `This task is due to be completed by ${formatDate(this.dueDate, 'd MMMM y', 'en-GB')}`;\n }\n if (this.daysDiff + this.highUrgencyCutoff > 0) {\n this.pBadge = BadgeColour.RED;\n } else if (this.daysDiff + this.mediumUrgencyCutoff > 0) {\n this.pBadge = BadgeColour.ORANGE;\n } else {\n this.pBadge = BadgeColour.GREEN;\n }\n }\n }\n\n // This will return the difference between two dates.\n // If fromDate is BEFORE toDate, it will be a positive number.\n // If fromDate is AFTER toDate, it will be a negative number.\n private getDaysDifference(fromDate: Date, toDate: Date): number {\n const fromEpoch = fromDate.getTime();\n const toEpoch = toDate.getTime();\n const diffSecs = Math.floor((toEpoch - fromEpoch) / 1000);\n return Math.floor(diffSecs / SECONDS_IN_A_DAY);\n }\n}\n","import {Component, Input} from '@angular/core';\n/**\n * Main Page Wrapper\n * Responsible for:\n * Wrapping content within the gov-uk html elements bellow\n * @prop showBackLink - switch for back link\n * @prop appHeaderTitle = appHeaderTitle\n * @prop appFunctionalTitle = appFunctionalTitle\n * @prop summaryErrors list of errors\n * @prop back link, appHeaderTitle (appHeaderTitle), summaryErrors (array of errors)\n */\n@Component({\n selector: 'exui-page-wrapper',\n templateUrl: 'exui-page-wrapper.component.html',\n styleUrls: ['exui-page-wrapper.component.scss']\n})\nexport class ExuiPageWrapperComponent {\n\n @Input() public backLink: string;\n @Input() public title: string;\n @Input() public fnTitle: string;\n\n constructor() { }\n\n}\n","import { Injectable } from '@angular/core';\nimport { BehaviorSubject, Observable } from 'rxjs';\nimport { FilterPersistence, FilterSetting } from '../../models/filter.model';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class FilterService {\n\n private readonly filterSettings: { [id: string]: FilterSetting } = {};\n private readonly streams: { [id: string]: BehaviorSubject<FilterSetting> } = {};\n\n constructor() {}\n\n public persist(setting: FilterSetting, persistence: FilterPersistence) {\n switch (persistence) {\n case 'local':\n this.persistLocal(setting);\n break;\n case 'session':\n this.persistSession(setting);\n break;\n default:\n break;\n }\n this.persistMemory(setting);\n this.updateStreams(setting);\n }\n\n public get(id: string): FilterSetting | null {\n if (this.filterSettings[id]) {\n return this.filterSettings[id];\n }\n if (sessionStorage.getItem(id)) {\n return JSON.parse(window.sessionStorage.getItem(id));\n }\n if (localStorage.getItem(id)) {\n return JSON.parse(window.localStorage.getItem(id));\n }\n return null;\n }\n\n public getStream(id: string): Observable<FilterSetting> {\n if (!this.streams[id]) {\n this.streams[id] = new BehaviorSubject<FilterSetting>(this.get(id));\n }\n return this.streams[id].asObservable();\n }\n\n private persistLocal(setting: FilterSetting) {\n window.localStorage.setItem(setting.id, JSON.stringify(setting));\n }\n\n private persistSession(setting: FilterSetting) {\n window.sessionStorage.setItem(setting.id, JSON.stringify(setting));\n }\n\n private persistMemory(setting: FilterSetting) {\n this.filterSettings[setting.id] = setting;\n }\n\n private updateStreams(setting: FilterSetting) {\n if (this.streams[setting.id]) {\n this.streams[setting.id].next(setting);\n }\n }\n}\n","import { Component, Input, OnInit, ViewEncapsulation } from '@angular/core';\nimport { FilterConfig, FilterSetting } from '../../models/filter.model';\nimport { FilterService } from '../../services/filter/filter.service';\n\n@Component({\n selector: 'xuilib-generic-filter',\n templateUrl: 'generic-filter.component.html',\n styleUrls: ['generic-filter.component.scss'],\n encapsulation: ViewEncapsulation.None\n})\nexport class GenericFilterComponent implements OnInit {\n\n @Input() public config: FilterConfig;\n @Input() public settings?: FilterSetting;\n private selected: { name: string, value: string[] }[] = [];\n\n constructor(private readonly filterService: FilterService) { }\n\n public ngOnInit() {\n if (!this.settings) {\n this.getSettings();\n }\n if (this.settings && this.settings.fields) {\n this.selected = this.settings.fields;\n }\n }\n\n public applyFilter() {\n this.filterService.persist(this.settings, this.config.persistence);\n }\n\n public cancelFilter() {\n this.getSettings();\n }\n\n public isSelected(id: string, key: string): boolean {\n if (this.settings) {\n return this.settings.fields.some(x => x.name === id) && this.settings.fields.some(x => x.value.some(v => v === key));\n }\n return false;\n }\n\n public onSelectionChange(item: any) {\n const fieldName = item.target.name.replace(`${item.target.type}_`, '');\n const match = this.selected.find(x => x.name === fieldName);\n if (match) {\n if (item.target.type === 'checkbox') {\n if (item.target.checked) {\n match.value.push(item.target.value);\n } else {\n const index: number = match.value.indexOf(item.target.value);\n if (index !== -1) {\n match.value.splice(index, 1);\n }\n }\n } else {\n match.value = [item.target.value];\n }\n } else {\n this.selected.push({ name: fieldName, value: [item.target.value] });\n }\n this.settings = {\n id: this.config.id,\n fields: this.selected\n };\n }\n\n private getSettings() {\n this.settings = this.filterService.get(this.config.id);\n }\n}\n","import {Component, EventEmitter, Input, Output} from '@angular/core';\n/*\n* Gov UK Dialog Component\n* Responsible for displaying dialog layout\n* using ng-content to display content from parent\n* */\n@Component({\n selector: 'xuilib-session-dialog',\n templateUrl: './hmcts-session-dialog.component.html',\n styleUrls: ['./hmcts-session-dialog.component.scss']\n})\nexport class HmctsSessionDialogComponent {\n\n @Input() public positionTop: string;\n @Output() public close = new EventEmitter();\n constructor() {}\n\n public onClose(): void {\n this.close.emit();\n }\n\n}\n","import {Component, EventEmitter, Input, Output} from '@angular/core';\nimport {FormGroup} from '@angular/forms';\n\n@Component({\n selector: 'xuilib-invite-user-form',\n templateUrl: './invite-user-form.component.html',\n})\n\nexport class InviteUserFormComponent {\n\n public isInvalid: any;\n\n @Output() public submitForm = new EventEmitter();\n @Input() public inviteUserForm: FormGroup;\n @Input() public set errorMessages(value: any) {\n this.isInvalid = value || {} ;\n }\n\n public onSubmit() {\n this.submitForm.emit();\n }\n}\n","import {Component, Input} from '@angular/core';\nimport { FormGroup } from '@angular/forms';\nimport { ErrorMessagesModel } from '../../gov-ui/models';\n\n@Component({\n selector: 'xuilib-invite-permission-form',\n templateUrl: './invite-user-permission.component.html',\n })\n\n export class InviteUserPermissionComponent {\n @Input() public inviteUserForm: FormGroup;\n @Input() public isPuiCaseManager: boolean = false;\n @Input() public isPuiUserManager: boolean = false;\n @Input() public isPuiOrganisationManager: boolean = false;\n @Input() public isPuiFinanceManager: boolean = false;\n @Input() public errorMessages: ErrorMessagesModel;\n }\n","import { Component, Input, OnDestroy, OnInit, Renderer2, ViewEncapsulation } from '@angular/core';\n\n@Component({\n selector: 'xuilib-loading-spinner',\n templateUrl: './loading-spinner.component.html',\n styleUrls: ['./loading-spinner.component.scss'],\n encapsulation: ViewEncapsulation.None\n})\n\nexport class LoadingSpinnerComponent implements OnInit, OnDestroy {\n @Input() public zIndex: number = 1000;\n @Input() public loadingText: string = 'Page can take up to 30 seconds to load';\n\n constructor(private readonly renderer: Renderer2) {\n }\n\n public ngOnInit() {\n this.renderer.addClass(document.body, 'loading-spinner-in-action');\n }\n\n public ngOnDestroy() {\n this.renderer.removeClass(document.body, 'loading-spinner-in-action');\n }\n}\n","import { Injectable } from '@angular/core';\nimport { BehaviorSubject } from 'rxjs';\nimport { distinctUntilChanged } from 'rxjs/operators';\nimport { SharedCase } from '../../models/case-share.model';\nimport { UserDetails } from '../../models/user-details.model';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class CaseSharingStateService {\n\n private caseState: SharedCase[] = [];\n private readonly subject = new BehaviorSubject<SharedCase[]>(this.caseState);\n\n public get state() {\n return this.subject.asObservable().pipe(\n distinctUntilChanged()\n );\n }\n\n constructor() { }\n\n public setCases(cases: SharedCase[]): void {\n this.caseState = [];\n cases.forEach(aCase => {\n this.caseState.push({ caseId: aCase.caseId, caseTitle: aCase.caseTitle, caseTypeId: aCase.caseTypeId, roles: aCase.roles,\n sharedWith: aCase.sharedWith, pendingShares: aCase.pendingShares, pendingUnshares: aCase.pendingUnshares });\n });\n this.subject.next(this.caseState);\n }\n\n public getCases(): SharedCase[] {\n return this.caseState;\n }\n\n public requestShare(user: UserDetails): SharedCase[] {\n const oldSharedCases: SharedCase[] = this.caseState.slice();\n const newSharedCases: SharedCase[] = [];\n for (const sharedCase of oldSharedCases) {\n if (!sharedCase.pendingShares) {\n sharedCase.pendingShares = [];\n }\n const newPendingShares = sharedCase.pendingShares.slice();\n if (!sharedCase.pendingUnshares) {\n sharedCase.pendingUnshares = [];\n }\n const newPendingUnshares = sharedCase.pendingUnshares.slice();\n if (!this.userHasAccess(sharedCase, user)) {\n if (!newPendingShares.some(u => u.email === user.email)) {\n newPendingShares.push(user);\n }\n } else {\n for (let u = 0, ul = newPendingUnshares.length; u < ul; u++) {\n if (newPendingUnshares[u].email === user.email) {\n newPendingUnshares.splice(u, 1);\n break;\n }\n }\n }\n const newSharedCase = {\n ...sharedCase,\n pendingUnshares: newPendingUnshares,\n pendingShares: newPendingShares\n };\n newSharedCases.push(newSharedCase);\n }\n this.subject.next(newSharedCases);\n return newSharedCases;\n }\n\n public requestUnshare(caseId: string, user: UserDetails): void {\n const newSharedCases: SharedCase[] = [];\n for (const sharedCase of this.caseState) {\n if (sharedCase.caseId === caseId) {\n if (!sharedCase.pendingUnshares) {\n sharedCase.pendingUnshares = [];\n }\n const newPendingUnshares = sharedCase.pendingUnshares.slice();\n if (newPendingUnshares) {\n if (!newPendingUnshares.some(u => u.email === user.email)) {\n newPendingUnshares.push(user);\n }\n } else {\n newPendingUnshares.push(user);\n }\n const newSharedCase = {\n ...sharedCase,\n pendingUnshares: newPendingUnshares\n };\n newSharedCases.push(newSharedCase);\n } else {\n newSharedCases.push(sharedCase);\n }\n }\n this.subject.next(newSharedCases);\n return;\n }\n\n public requestCancel(caseId: string, user: UserDetails): void {\n const newSharedCases: SharedCase[] = [];\n for (const sharedCase of this.caseState) {\n if (sharedCase.caseId === caseId) {\n if (!sharedCase.pendingUnshares) {\n sharedCase.pendingUnshares = [];\n }\n const newPendingUnshares = sharedCase.pendingUnshares.slice();\n for (let iPendingUnshares = 0; iPendingUnshares < newPendingUnshares.length; iPendingUnshares++) {\n if (newPendingUnshares[iPendingUnshares].email === user.email) {\n newPendingUnshares.splice(iPendingUnshares, 1);\n break;\n }\n }\n if (!sharedCase.pendingShares) {\n sharedCase.pendingShares = [];\n }\n const newPendingShares = sharedCase.pendingShares.slice();\n for (let iPendingShares = 0; iPendingShares < newPendingShares.length; iPendingShares++) {\n if (newPendingShares[iPendingShares].email === user.email) {\n newPendingShares.splice(iPendingShares, 1);\n break;\n }\n }\n const newSharedCase = {\n ...sharedCase,\n pendingUnshares: newPendingUnshares,\n pendingShares: newPendingShares\n };\n newSharedCases.push(newSharedCase);\n } else {\n newSharedCases.push(sharedCase);\n }\n }\n this.subject.next(newSharedCases);\n return;\n }\n\n public removeCase(caseId: string): void {\n for (let i = 0, l = this.caseState.length; i < l; i++) {\n if (this.caseState[i].caseId === caseId) {\n this.caseState.splice(i, 1);\n this.subject.next(this.caseState);\n return;\n }\n }\n }\n\n public userHasAccess(c: SharedCase, user: UserDetails): boolean {\n if (!c.sharedWith) {\n return false;\n }\n for (let i = 0, l = c.sharedWith.length; i < l; i++) {\n if (c.sharedWith[i].email === user.email) {\n return true;\n }\n }\n return false;\n }\n}\n","import { Component, Input, OnInit } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { SharedCase } from '../../models/case-share.model';\nimport { UserDetails } from '../../models/user-details.model';\nimport { CaseSharingStateService } from '../../services/case-sharing-state/case-sharing-state.service';\n\n@Component({\n selector: 'xuilib-selected-case-confirm',\n templateUrl: './selected-case-confirm.component.html',\n styleUrls: ['./selected-case-confirm.component.scss']\n})\nexport class SelectedCaseConfirmComponent implements OnInit {\n\n @Input() public sharedCase: SharedCase;\n @Input() public changeLink: string = '';\n\n public shareCases: SharedCase[];\n public shareCases$: Observable<SharedCase[]>;\n\n constructor(private readonly stateService: CaseSharingStateService) { }\n\n public ngOnInit() {\n this.shareCases$ = this.stateService.state;\n this.shareCases$.subscribe(shareCases => this.shareCases = shareCases);\n }\n\n public trackByUserId(user: UserDetails): string {\n return user.idamId;\n }\n\n public showUserAccessBlock(): boolean {\n if (this.sharedCase.pendingShares && this.sharedCase.pendingShares.length > 0) {\n return true;\n }\n return this.sharedCase.pendingUnshares && this.sharedCase.pendingUnshares.length > 0;\n }\n}\n","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { SharedCase } from '../../models/case-share.model';\nimport { CaseSharingStateService } from '../../services/case-sharing-state/case-sharing-state.service';\n\n@Component({\n selector: 'xuilib-selected-case-list',\n templateUrl: './selected-case-list.component.html',\n styleUrls: ['./selected-case-list.component.scss']\n})\nexport class SelectedCaseListComponent implements OnInit {\n\n public shareCases: SharedCase[] = [];\n\n @Input() public shareCases$: Observable<SharedCase[]>;\n\n @Input() public removeUserFromCaseToggleOn: boolean;\n\n @Input() public toConfirm: boolean = false;\n\n @Input() public changeLink: string = '';\n\n @Output() public unselect = new EventEmitter<SharedCase>();\n @Output() public synchronizeStore = new EventEmitter<SharedCase>();\n\n constructor(private readonly stateService: CaseSharingStateService) { }\n\n public ngOnInit() {\n this.shareCases$ = this.stateService.state;\n this.shareCases$.subscribe(shareCases => this.shareCases = shareCases);\n }\n\n public onUnselect(sharedCase: SharedCase): void {\n this.unselect.emit(sharedCase);\n }\n\n public onSynchronizeStore(event: any): void {\n this.synchronizeStore.emit(event);\n }\n\n public trackByCaseId(sharedCase: SharedCase): string {\n return sharedCase.caseId;\n }\n}\n","import { Component, EventEmitter, Input, OnChanges, OnInit, Output, SimpleChanges } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { map } from 'rxjs/operators';\n\nimport { SharedCase } from '../../models/case-share.model';\nimport { UserDetails } from '../../models/user-details.model';\nimport { CaseSharingStateService } from '../../services/case-sharing-state/case-sharing-state.service';\n\n@Component({\n selector: 'xuilib-selected-case',\n templateUrl: './selected-case.component.html',\n styleUrls: ['./selected-case.component.scss']\n})\nexport class SelectedCaseComponent implements OnInit, OnChanges {\n\n @Input() public sharedCase: SharedCase;\n @Input() public selectedUser: UserDetails;\n @Input() public opened = false;\n @Input() public removeUserFromCaseToggleOn: boolean;\n\n @Output() public unselect = new EventEmitter<SharedCase>();\n @Output() public synchronizeStore = new EventEmitter<any>();\n\n public shareCases: SharedCase[];\n public shareCases$: Observable<SharedCase[]>;\n\n public combinedSortedShares: UserDetails[];\n\n constructor(private readonly stateService: CaseSharingStateService) { }\n\n public ngOnInit() {\n this.shareCases$ = this.stateService.state;\n this.shareCases$.subscribe(shareCases => this.shareCases = shareCases);\n\n }\n\n public ngOnChanges(changes: SimpleChanges): void {\n if (changes.sharedCase) {\n const sharedWith = this.sharedCase.sharedWith ? this.sharedCase.sharedWith : [];\n const pendingShares = this.sharedCase.pendingShares ? this.sharedCase.pendingShares : [];\n this.combinedSortedShares = this.combineAndSortShares(sharedWith, pendingShares);\n }\n }\n\n public onUnselect(): void {\n this.unselect.emit(this.sharedCase);\n }\n\n public onDeselect(c: SharedCase): void {\n this.unselect.emit(c);\n }\n\n public trackByUserId(user: UserDetails): string {\n return user.idamId;\n }\n\n public canRemove(caseId: string, user: UserDetails): Observable<boolean> {\n return this.shareCases$.pipe(map(cases => {\n if (this.removeUserFromCaseToggleOn) {\n for (const aCase of cases) {\n if (aCase.caseId === caseId) {\n if (aCase.pendingUnshares && aCase.pendingUnshares.some(u => u.idamId === user.idamId)) {\n return false;\n }\n if (aCase.sharedWith && aCase.sharedWith.some(u => u.idamId === user.idamId)) {\n return true;\n }\n }\n }\n }\n return false;\n }));\n }\n\n public canCancel(caseId: string, user: UserDetails): Observable<boolean> {\n return this.shareCases$.pipe(map(cases => {\n for (const aCase of cases) {\n if (aCase.caseId === caseId) {\n if (aCase.pendingShares && aCase.pendingShares.some(u => u.idamId === user.idamId)) {\n return true;\n }\n if (aCase.pendingUnshares && aCase.pendingUnshares.some(u => u.idamId === user.idamId)) {\n return true;\n }\n return false;\n }\n }\n }));\n }\n\n public isToBeRemoved(caseId: string, user: UserDetails): Observable<boolean> {\n return this.shareCases$.pipe(map(cases => {\n for (const aCase of cases) {\n if (aCase.caseId === caseId) {\n return aCase.pendingUnshares && aCase.pendingUnshares.some(u => u.idamId === user.idamId);\n }\n }\n }));\n }\n\n public isToBeAdded(caseId: string, user: UserDetails): Observable<boolean> {\n return this.shareCases$.pipe(map(cases => {\n for (const aCase of cases) {\n if (aCase.caseId === caseId) {\n return aCase.pendingShares && aCase.pendingShares.some(u => u.idamId === user.idamId);\n }\n }\n }));\n }\n\n public onRemove(user: UserDetails, sharedCase: SharedCase): void {\n this.stateService.requestUnshare(sharedCase.caseId, user);\n this.synchronizeStore.emit(this.shareCases);\n }\n\n public onCancel(user: UserDetails, sharedCase: SharedCase): void {\n this.stateService.requestCancel(sharedCase.caseId, user);\n this.synchronizeStore.emit(this.shareCases);\n }\n\n public showNoUsersAccessInfo(): boolean {\n // A user is added to a case\n if (this.sharedCase.pendingShares) {\n if (this.sharedCase.pendingShares.length > 0) {\n return false;\n }\n }\n // A case has 0 users with access to it\n if (this.sharedCase.sharedWith) {\n if (this.sharedCase.sharedWith.length === 0) {\n return true;\n }\n }\n // Access to the last user is removed\n if (this.sharedCase.sharedWith && this.sharedCase.pendingUnshares) {\n if (this.sharedCase.pendingUnshares.length > 0\n && this.sharedCase.sharedWith.length === this.sharedCase.pendingUnshares.length) {\n return true;\n }\n }\n return false;\n }\n\n public showUserHasAccessInfo(): boolean {\n return !this.showNoUsersAccessInfo();\n }\n\n public showUserAccessTable(): boolean {\n if (this.sharedCase.pendingShares) {\n if (this.sharedCase.pendingShares.length > 0) {\n return true;\n }\n }\n if (this.sharedCase.sharedWith) {\n if (this.sharedCase.sharedWith.length > 0) {\n return true;\n }\n }\n return false;\n }\n\n public combineAndSortShares(sharedWith: UserDetails[], pendingShares: UserDetails[]): UserDetails[] {\n return [\n ...sharedWith,\n ...pendingShares\n ].sort((user1, user2) => {\n return user1.firstName.toLowerCase() > user2.firstName.toLowerCase() ? 1 : (user2.firstName.toLowerCase() > user1.firstName.toLowerCase() ? -1 : 0);\n });\n }\n\n public userIdSetter(isPending: boolean, id: number): string {\n return isPending ? `pendingShares-${id}` : `${id}`;\n }\n\n public buildElementId(elementName: string): string {\n return `${elementName}-${this.sharedCase.caseId}`;\n }\n}\n","import { Component, EventEmitter, Input, Output } from '@angular/core';\n\n@Component({\n selector: 'xuilib-service-message',\n templateUrl: './service-message.component.html'\n})\nexport class ServiceMessageComponent {\n @Input() public message: string;\n @Input() public key: string;\n @Output() public hideMessage = new EventEmitter<string>();\n constructor() { }\n\n public onHideMessageEvent(key: string) {\n this.hideMessage.emit(key);\n }\n}\n","import { Injectable } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { FeatureUser } from '../../models/feature-user';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class FeatureToggleService {\n // tslint:disable-next-line: variable-name\n public initialize(_user: FeatureUser): void {\n throw new Error('Not implemented');\n }\n // tslint:disable-next-line: variable-name\n public isEnabled(_feature: string): Observable<boolean> {\n throw new Error('Not implemented');\n }\n // tslint:disable-next-line: variable-name\n public getValue<R>(_key: string, _defaultValue: R): Observable<R> {\n throw new Error('Not implemented');\n }\n\n // tslint:disable-next-line: variable-name\n public getValueOnce<R>(_key: string, _defaultValue: R): Observable<R> {\n throw new Error('Not implemented');\n }\n}\n","import { Component, Input, OnInit } from '@angular/core';\nimport { FeatureToggleService } from '../../services/feature-toggle/feature-toggle.service';\n\nexport interface ServiceMessages {\n [key: string]: string;\n}\n\n@Component({\n selector: 'xuilib-service-messages',\n templateUrl: './service-messages.component.html'\n})\nexport class ServiceMessagesComponent implements OnInit {\n public hiddenBanners: string[];\n public filteredMessages = new Map<string, string>();\n\n @Input() public userRoles: string[];\n @Input() public featureToggleKey: string;\n @Input() public serviceMessageCookie: string;\n\n constructor(private readonly featureToggleService: FeatureToggleService) { }\n\n public ngOnInit() {\n this.getServiceMessages();\n }\n\n public getServiceMessages(): void {\n this.featureToggleService.getValue<ServiceMessages>(this.featureToggleKey, null)\n .subscribe(messages => {\n if (!!messages) {\n this.createFilteredMessages(messages);\n }\n });\n }\n\n private createFilteredMessages(messages: ServiceMessages): void {\n this.hiddenBanners = JSON.parse(window.sessionStorage.getItem(this.serviceMessageCookie)) || [];\n Object.keys(messages).forEach(key => {\n const regEx = new RegExp(key);\n if (this.userRoles.some(e => regEx.test(e)) && this.hiddenBanners.indexOf(key) === -1) {\n this.filteredMessages.set(key, messages[key]);\n }\n });\n }\n\n public hideMessage(key: string): void {\n this.filteredMessages.delete(key);\n this.hiddenBanners.push(key);\n window.sessionStorage.setItem(this.serviceMessageCookie, JSON.stringify(this.hiddenBanners));\n }\n}\n","import { Component, Input, OnInit } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { SharedCase } from '../../models/case-share.model';\nimport { CaseSharingStateService } from '../../services/case-sharing-state/case-sharing-state.service';\n\n@Component({\n selector: 'xuilib-share-case-confirm',\n templateUrl: './share-case-confirm.component.html',\n styleUrls: ['./share-case-confirm.component.scss']\n})\nexport class ShareCaseConfirmComponent implements OnInit {\n\n public shareCases: SharedCase[] = []; // cases selected for sharing\n\n @Input() public shareCases$: Observable<SharedCase[]>;\n @Input() public changeLink: string = '';\n @Input() public completeLink: string = '';\n\n public state$: Observable<SharedCase[]>;\n\n constructor(private readonly stateService: CaseSharingStateService) { }\n\n public ngOnInit() {\n this.shareCases$.subscribe(shareCases => {\n this.shareCases = shareCases;\n this.stateService.setCases(shareCases);\n });\n this.shareCases$ = this.stateService.state;\n }\n\n}\n","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\nimport { FormControl } from '@angular/forms';\nimport { MatAutocompleteSelectedEvent } from '@angular/material/autocomplete';\nimport { Observable } from 'rxjs';\nimport { map } from 'rxjs/operators';\nimport { UserDetails } from '../../models/user-details.model';\n\n@Component({\n selector: 'xuilib-user-select',\n templateUrl: './user-select.component.html',\n styleUrls: ['./user-select.component.scss']\n})\nexport class UserSelectComponent implements OnInit {\n\n @Input() public users: UserDetails[];\n\n @Output() public selected = new EventEmitter<UserDetails>();\n\n public filteredUsers: Observable<UserDetails[]>;\n\n public control = new FormControl();\n\n constructor() { }\n\n public ngOnInit() {\n this.filteredUsers = this.control.valueChanges.pipe(\n map(value => typeof value === typeof 'string' ? this.filterUsers(value) : this.users)\n );\n this.selected.emit(null);\n }\n\n public displayValue(user: UserDetails): string {\n return user ? `${user.firstName} ${user.lastName} - ${user.email}` : '';\n }\n\n public onSelected(e: MatAutocompleteSelectedEvent) {\n this.selected.emit(e.option.value);\n }\n\n public clear() {\n this.control.setValue(null);\n }\n\n public onUserChange(newUserValue: UserDetails) {\n if (!newUserValue || !newUserValue.email) {\n this.selected.emit(null);\n }\n }\n\n private filterUsers(value: string): UserDetails[] {\n if (value) {\n value = value.toLowerCase();\n return this.users.filter(user => {\n if (user.firstName.toLowerCase().includes(value)) {\n return true;\n }\n if (user.lastName.toLowerCase().includes(value)) {\n return true;\n }\n if (user.email.toLowerCase().includes(value)) {\n return true;\n }\n return false;\n });\n }\n return [];\n }\n}\n","import { Component, EventEmitter, Input, OnInit, Output, ViewChild } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { SharedCase } from '../../models/case-share.model';\nimport { UserDetails } from '../../models/user-details.model';\nimport { CaseSharingStateService } from '../../services/case-sharing-state/case-sharing-state.service';\nimport { UserSelectComponent } from '../user-select/user-select.component';\n\n@Component({\n selector: 'xuilib-share-case',\n templateUrl: './share-case.component.html',\n styleUrls: ['./share-case.component.scss']\n})\nexport class ShareCaseComponent implements OnInit {\n\n public shareCases: SharedCase[] = []; // cases selected for sharing\n\n @Input() public removeUserFromCaseToggleOn: boolean = false;\n\n @Input() public shareCases$: Observable<SharedCase[]>;\n @Input() public users: UserDetails[] = []; // users of this organisation the cases can be shared with\n\n @Input() public confirmLink: string = '';\n\n @Output() public unselect = new EventEmitter<SharedCase>();\n @Output() public synchronizeStore = new EventEmitter<any>();\n\n private selectedUser: UserDetails;\n\n @ViewChild(UserSelectComponent)\n private readonly userSelect: UserSelectComponent;\n\n constructor(private readonly stateService: CaseSharingStateService) { }\n\n public ngOnInit() {\n this.shareCases$.subscribe(shareCases => {\n this.shareCases = shareCases;\n this.stateService.setCases(shareCases);\n });\n this.shareCases$ = this.stateService.state;\n }\n\n public onUnselect(c: SharedCase): void {\n this.unselect.emit(c);\n this.stateService.removeCase(c.caseId);\n }\n\n public onSynchronizeStore(event: any): void {\n this.synchronizeStore.emit(event);\n }\n\n public onSelectedUser(user: UserDetails) {\n this.selectedUser = user;\n }\n\n public addUser() {\n const newSharedCases = this.stateService.requestShare(this.selectedUser);\n this.selectedUser = null;\n if (this.userSelect) { this.userSelect.clear(); }\n this.synchronizeStore.emit(newSharedCases);\n }\n\n public isDisabledAdd() {\n return this.selectedUser === null || this.shareCases.length === 0;\n }\n\n public isDisabledContinue(): boolean {\n let isDisabled: boolean = true;\n this.shareCases$.subscribe(shareCases => {\n for (const caseState of shareCases) {\n if (caseState.pendingShares && caseState.pendingShares.length > 0) {\n isDisabled = false;\n break;\n }\n if (caseState.pendingUnshares && caseState.pendingUnshares.length > 0) {\n isDisabled = false;\n break;\n }\n }\n });\n return isDisabled;\n }\n\n public onDeselect(sharedCase: SharedCase): void {\n if (sharedCase !== null) {\n const updated = [];\n for (const element of this.shareCases) {\n if (element.caseId !== sharedCase.caseId) {\n updated.push(element);\n }\n }\n this.shareCases = updated;\n }\n this.stateService.setCases(this.shareCases);\n }\n}\n","import { Component, EventEmitter, Input, Output } from '@angular/core';\n\nexport interface TabItem {\n text: string;\n}\n\n@Component({\n selector: 'xuilib-tab',\n templateUrl: './tab.component.html'\n })\n\nexport class TabComponent {\n @Input() public tabItems: any [];\n @Output() public tabChange = new EventEmitter<void>();\n constructor() {}\n\n public tabChanged(event: any): void {\n this.tabChange.emit(event);\n }\n}\n","import { Component, EventEmitter, Input, Output } from '@angular/core';\n\n@Component({\n selector: 'xuilib-tc-confirm',\n templateUrl: './tc-confirm.component.html',\n styleUrls: ['./tc-confirm.component.scss']\n})\nexport class TcConfirmComponent {\n\n @Input() public buttonText: string;\n @Output() public confirm = new EventEmitter<void>();\n\n constructor() {}\n\n public onClick(): void {\n this.confirm.emit();\n }\n\n}\n","import { Component } from '@angular/core';\n\n@Component({\n selector: 'xuilib-tc-display-html',\n templateUrl: './tc-display-html.component.html',\n styleUrls: ['./tc-display-html.component.scss']\n})\nexport class TcDisplayHtmlComponent {\n\n constructor() { }\n\n}\n","import { Component } from '@angular/core';\n\n@Component({\n selector: 'xuilib-tc-display-plain',\n templateUrl: './tc-display-plain.component.html',\n styleUrls: ['./tc-display-plain.component.scss']\n})\nexport class TcDisplayPlainComponent {\n\n constructor() { }\n\n}\n","import { Component, Input } from '@angular/core';\nimport { TCDocument } from '../../models';\n\n@Component({\n selector: 'xuilib-terms-and-conditions',\n templateUrl: './terms-and-conditions.component.html',\n styleUrls: ['./terms-and-conditions.component.scss']\n})\nexport class TermsAndConditionsComponent {\n\n @Input() public document: TCDocument;\n\n constructor() { }\n\n}\n","import { Component, EventEmitter, Input, Output } from '@angular/core';\nimport { User } from '../../models';\n\n@Component({\n selector: 'xuilib-user-details',\n styleUrls: ['./user-details.component.scss'],\n templateUrl: './user-details.component.html'\n})\nexport class UserDetailsComponent {\n @Input() public user: User;\n @Input() public editPermissionRouterLink: string;\n @Input() public warningTitle: string;\n @Input() public showEditLink: boolean = false;\n @Input() public showHelpLink: boolean = false;\n @Input() public suspendHelpLink: string;\n @Output() public suspendUserEvent = new EventEmitter<User>();\n @Input() public showSuspendUserButton = false;\n @Output() public reinvite = new EventEmitter<User>();\n\n public reinviteClick(user: User): void {\n this.reinvite.emit(user);\n }\n\n public suspendUser(suspendUser: User): void {\n this.suspendUserEvent.emit(suspendUser);\n }\n\n public userHasRole(theRole: string): boolean {\n if (this.user && this.user.roles) {\n return this.user.roles.includes(theRole);\n }\n return false;\n }\n}\n","import { Component, EventEmitter, Input, Output } from '@angular/core';\nimport { User } from '../../models/user.model';\n\n@Component({\n selector: 'xuilib-user-list',\n styleUrls: ['./user-list.component.scss'],\n templateUrl: './user-list.component.html'\n})\nexport class UserListComponent {\n @Input() public users: User[] = [];\n @Output() public userClick = new EventEmitter<User>();\n\n public onUserClick(user: User) {\n this.userClick.emit(user);\n }\n}\n","import { Directive, Input, OnDestroy, TemplateRef, ViewContainerRef } from '@angular/core';\nimport { Subscription } from 'rxjs';\nimport { FeatureToggleService } from '../../services/feature-toggle/feature-toggle.service';\n\n@Directive({\n selector: '[xuilibFeatureToggle]'\n})\nexport class FeatureToggleDirective implements OnDestroy {\n private feature: string;\n private subscription: Subscription;\n\n @Input() public set xuilibFeatureToggle(feature: string) {\n this.feature = feature;\n this.updateSubscription();\n }\n\n constructor(\n private readonly service: FeatureToggleService,\n private readonly viewContainer: ViewContainerRef,\n private readonly templateRef: TemplateRef<any>\n ) {}\n\n public ngOnDestroy() {\n if (this.subscription) {\n this.subscription.unsubscribe();\n }\n }\n\n private updateSubscription() {\n this.subscription = this.service.isEnabled(this.feature).subscribe(enabled => {\n if (enabled) {\n this.viewContainer.createEmbeddedView(this.templateRef);\n } else {\n this.viewContainer.clear();\n }\n });\n }\n}\n","import { Directive, Input, TemplateRef, ViewContainerRef } from '@angular/core';\n\nexport class LetContext<T = any> {\n public $implicit: T = null;\n public xuilibLet: T = null;\n}\n\n@Directive({\n selector: '[xuilibLet]'\n})\nexport class LetDirective<T = any> {\n private readonly context: LetContext<T> = new LetContext<T>();\n\n constructor(private readonly viewContainer: ViewContainerRef, templateRef: TemplateRef<LetContext<T>>) {\n this.viewContainer.createEmbeddedView(templateRef, this.context);\n }\n\n @Input() public set xuilibLet(condition: T) {\n this.context.$implicit = this.context.xuilibLet = condition;\n }\n}\n","import {Component, Input, OnInit} from '@angular/core';\nimport {FormGroup} from '@angular/forms';\nimport { GovUiConfigModel } from '../../models/gov-ui-config-model';\n/*\n* Gov Uk Checkbox Dumb Component responsible for\n* displaying checkbox input and hint\n*\n* */\n@Component({\n selector: 'xuilib-gov-checkbox',\n templateUrl: './gov-uk-checkbox.component.html'\n})\n\nexport class GovUkCheckboxComponent implements OnInit {\n constructor() { }\n @Input() public group: FormGroup;\n @Input() public config: GovUiConfigModel;\n @Input() public isChecked: boolean = false;\n // {value: string, label: string, hint: string; name: string; focusOn: string; id: string; classes: string};\n\n public id: string;\n\n public ngOnInit(): void {\n const id = this.config.focusOn ? this.config.focusOn : this.config.value;\n this.config.id = id;\n this.config.classes = this.config.classes ?\n this.config.classes.concat(' govuk-checkboxes__label') : 'govuk-checkboxes__label';\n }\n}\n","import {Component, Input} from '@angular/core';\nimport { ErrorMessagesModel } from '../../models';\nimport {CheckboxesModel} from '../../models/checkboxes-model';\n/*\n* CheckBox component - state less\n* Responsible for displaying a list of gov-uk-checkboxes\n* @param: options - object with data for wrapper (fieldset) and\n* array of items for gov-uk-checkboxes\n* @param: errors - array of error stings\n* */\n@Component({\n selector: 'xuilib-gov-uk-checkboxes',\n templateUrl: './gov-uk-checkboxes.component.html'\n})\n\nexport class GovUkCheckboxesComponent {\n\n @Input() public options: CheckboxesModel;\n @Input() public errors: ErrorMessagesModel;\n\n}\n","import {Component, Input, OnInit} from '@angular/core';\nimport { ErrorMessagesModel } from '../../models/error-messages-model';\nimport { GovUiConfigModel } from '../../models/gov-ui-config-model';\n/*\n* Gov UK Date Component\n* Responsible for displaying 3 input fields:\n* day / month / year\n* displaying errorMessage messages\n* */\n@Component({\n selector: 'xuilib-gov-uk-date',\n templateUrl: './gov-uk-date.component.html'\n})\nexport class GovUkDateComponent implements OnInit {\n constructor() { }\n @Input() public config: GovUiConfigModel;\n // { id: string };\n @Input() public errorMessage: ErrorMessagesModel;\n @Input() public formGroup: any;\n\n public ngOnInit(): void {\n }\n}\n","import {Component, Input} from '@angular/core';\nimport { ErrorMessagesModel } from '../../models';\nimport { GovUiConfigModel } from '../../models/gov-ui-config-model';\n/*\n* Gov UK Error Message\n* Responsible for displaying in-line error messages\n* @prop config - obj with properties\n* @prop errorMessage - all error bject with messages property that is arry of strings.\n* */\n@Component({\n selector: ' xuilib-gov-uk-error-message',\n templateUrl: './gov-uk-error-message.component.html'\n})\nexport class GovUkErrorMessageComponent {\n constructor() { }\n @Input() public config: GovUiConfigModel;\n // { id: string };\n @Input() public errorMessage: ErrorMessagesModel;\n}\n","import { ErrorMessagesModel } from '../../models';\nimport { GovUiConfigModel } from '../../models/gov-ui-config-model';\n\n/*\n * Helper Class\n * Used for dynamic templates manipulation\n * */\n\nexport class HtmlTemplatesHelper {\n /*\n * Sets described by string depending if\n * there is an error, error and hit or nothing\n * */\n public static setDescribedBy(errorMessage: ErrorMessagesModel, config: GovUiConfigModel) {\n if (!errorMessage) {\n return config.hint ? `${config.id}-hint` : null;\n } else if (errorMessage && errorMessage.isInvalid) {\n return config.hint ? `${config.id}-hint ${config.id}-error` : `${config.id}-error`;\n } else {\n return config.hint ? `${config.id}-hint` : null;\n }\n }\n}\n","import {Component, Input} from '@angular/core';\nimport { ErrorMessagesModel } from '../../models';\nimport { GovUiConfigModel } from '../../models/gov-ui-config-model';\nimport {HtmlTemplatesHelper} from '../../util/helpers/html-templates.helper';\n/*\n* Gov Uk Fieldset Component\n* Used to wrap group fieldset elements\n* it can conditionally display h1 tag\n* @param config\n* @param isHeading\n* @param errorMessage - used for aria tag\n* */\n@Component({\n selector: 'xuilib-gov-uk-fieldset',\n templateUrl: './gov-uk-fieldset.component.html'\n})\nexport class GovUkFieldsetComponent {\n constructor() { }\n @Input() public config: GovUiConfigModel;\n // {legend: string; classes: string, id: string, hint: string, key: string, isPageHeading: boolean};\n // @Input() public isPageHeading: boolean;\n @Input() public errorMessage: ErrorMessagesModel;\n\n public setDescribedBy(): string {\n return HtmlTemplatesHelper.setDescribedBy(this.errorMessage, this.config);\n }\n}\n","import {Component, Input, OnInit} from '@angular/core';\nimport {FormGroup} from '@angular/forms';\nimport { ErrorMessagesModel } from '../../models';\nimport { GovUiConfigModel } from '../../models/gov-ui-config-model';\nimport {HtmlTemplatesHelper} from '../../util/helpers/html-templates.helper';\n/*\n* Gov UK Input component\n* Responsible for displaying input, hint and error messages\n* @prop errorMessages - array of messages\n* @prop focusOn - passing the FormGroup\n* @prop config - adding configuration\n* */\n@Component({\n selector: 'xuilib-gov-uk-file-upload',\n templateUrl: './gov-uk-file-upload.component.html'\n})\nexport class GovUkFileUploadComponent implements OnInit {\n constructor() { }\n @Input() public errorMessage: ErrorMessagesModel;\n @Input() public group: FormGroup;\n @Input() public config: GovUiConfigModel;\n // { label: string, hint: string; name: string; id: string, type: string; isPageHeading: boolean, classes: string };\n\n public reloadInput = true;\n\n public ngOnInit(): void {\n this.config.classes = 'govuk-label--m';\n }\n\n public setDescribedBy(): string {\n return HtmlTemplatesHelper.setDescribedBy(this.errorMessage, this.config);\n }\n}\n","import {Component, Input} from '@angular/core';\nimport { ErrorMessagesModel } from '../../models';\nimport { GovUiConfigModel } from '../../models/gov-ui-config-model';\n/*\n* Gov Uk Form Group Wrapper\n* Used to wrap group form elements in html tags below such as\n* gov-uk-checkboxes and radio buttons\n* and errorMessage messages\n* */\n@Component({\n selector: 'xuilib-gov-uk-form-group-wrapper',\n templateUrl: './gov-uk-form-group-wrapper.component.html'\n})\nexport class GovUkFormGroupWrapperComponent {\n constructor() { }\n @Input() public error: ErrorMessagesModel;\n @Input() public group: string;\n @Input() public config: GovUiConfigModel;\n // {hint: string; legend: string, key: string, isPageHeading: boolean;}; // TODO create a global interface\n\n}\n\n","import {Component, Input, OnInit} from '@angular/core';\nimport {FormGroup} from '@angular/forms';\nimport { ErrorMessagesModel } from '../../models';\nimport { GovUiConfigModel } from '../../models/gov-ui-config-model';\nimport {HtmlTemplatesHelper} from '../../util/helpers/html-templates.helper';\n/*\n* Gov UK Input component\n* Responsible for displaying input, hint and error messages\n* @prop errorMessages - array of messages\n* @prop focusOn - passing the FormGroup\n* @prop config - adding configuration\n* */\n@Component({\n selector: 'xuilib-gov-uk-input',\n templateUrl: './gov-uk-input.component.html',\n styleUrls: ['./gov-uk-input.component.scss']\n})\nexport class GovUkInputComponent implements OnInit {\n constructor() { }\n @Input() public errorMessage: ErrorMessagesModel;\n @Input() public group: FormGroup;\n @Input() public config: GovUiConfigModel;\n // { label: string, hint: string; name: string; id: string, type: string; isPageHeading: boolean, classes: string };\n\n public ngOnInit(): void {\n this.config.classes = 'govuk-label--m';\n }\n\n public setDescribedBy(): string {\n return HtmlTemplatesHelper.setDescribedBy(this.errorMessage, this.config);\n }\n}\n","import {Component, Input} from '@angular/core';\n\n/*\n* Gov UK Label component\n* Responsible for displaying label tag\n* @prop isPageHading - boolean to display h1\n* @prop config - obj with properties\n* */\n@Component({\n selector: 'xuilib-gov-label',\n templateUrl: './gov-uk-label.component.html'\n})\nexport class GovUkLabelComponent {\n constructor() { }\n @Input() public config: { label: string, name: string; id: string, isPageHeading: boolean, classes: string };\n\n}\n","import {Component, Input, OnInit} from '@angular/core';\nimport {FormGroup} from '@angular/forms';\nimport { GovUiConfigModel } from '../../models/gov-ui-config-model';\n/*\n* Gov Uk Radio state-less Component responsible for\n* displaying radios input and hint\n*\n* */\n@Component({\n selector: 'xuilib-gov-radio',\n templateUrl: './gov-uk-radio.component.html'\n})\nexport class GovUkRadioComponent implements OnInit {\n constructor() { }\n @Input() public group: FormGroup;\n @Input() public config: GovUiConfigModel;\n // {value: string, label: string, hint: string; name: string; focusOn: string; id: string; classes: string}; // TODO create interface\n\n public id: string;\n /*\n * ngOnInIt\n * needed to manage the focus id if passed on in config\n * si it can focus on element when user clicks on error message in the header.\n **/\n public ngOnInit(): void {\n const id = this.config.focusOn ? this.config.focusOn : this.config.value;\n this.config.id = id;\n this.config.classes = this.config.classes ?\n this.config.classes.concat(' govuk-radios__label') : 'govuk-radios__label';\n }\n\n}\n","import {Component, Input} from '@angular/core';\nimport { ErrorMessagesModel } from '../../models';\nimport {CheckboxesModel} from '../../models/checkboxes-model';\n/*\n* Radios component - state less\n* Responsible for displaying a list of gov-uk-radio components\n* @param: options - object with data for wrapper (fieldset) and\n* array of items for gov-uk-checkboxes\n* @param: errors - array of error stings\n* */\n@Component({\n selector: 'xuilib-gov-uk-radios',\n templateUrl: './gov-uk-radios.component.html'\n})\n\nexport class GovUkRadiosComponent {\n\n @Input() public options: CheckboxesModel;\n @Input() public errors: ErrorMessagesModel;\n\n}\n","import {Component, Input} from '@angular/core';\nimport {FormGroup} from '@angular/forms';\nimport { ErrorMessagesModel } from '../../models';\nimport { GovUiConfigModel } from '../../models/gov-ui-config-model';\nimport {HtmlTemplatesHelper} from '../../util/helpers/html-templates.helper';\n/*\n* Gov Uk Select Dumb Component responsible for\n* dropdown input.\n* */\n@Component({\n selector: 'xuilib-gov-select',\n templateUrl: './gov-uk-select.component.html'\n})\nexport class GovUkSelectComponent {\n constructor() {}\n @Input() public errorMessage: ErrorMessagesModel;\n @Input() public group: FormGroup;\n @Input() public config: GovUiConfigModel;\n // {hint: string; name: string; id: string, isPageHeading: boolean, classes: string };\n @Input() public items: {label: string, value: string; id: string}[];\n\n public setDescribedBy(): string {\n return HtmlTemplatesHelper.setDescribedBy(this.errorMessage, this.config);\n }\n\n}\n","import {formatDate} from '@angular/common';\nimport {Component, Input} from '@angular/core';\n\n@Component({\n selector: 'xuilib-gov-uk-table',\n templateUrl: './gov-uk-table.component.html',\n styleUrls: ['./gov-uk-table.component.scss']\n})\nexport class GovukTableComponent {\n\n @Input() public classes = '';\n @Input() public caption = 'Dates and amounts';\n @Input() public firstCellIsHeader = true;\n @Input() public rows: any;\n @Input() public columnConfig: GovukTableColumnConfig[] = [\n { header: 'Date', key: 'date', type: 'text' },\n { header: 'Amount', key: 'amount' }\n ];\n\n constructor() { }\n\n public formatDate(date: Date): string {\n return formatDate(date, 'dd/MM/yyyy', 'en-UK');\n }\n\n}\n\nexport class GovukTableColumnConfig {\n public header: string;\n public key: string;\n public type?: string;\n constructor() {\n this.header = '';\n this.key = '';\n this.type = 'text';\n }\n }\n","import {Component, Input} from '@angular/core';\nimport {FormGroup} from '@angular/forms';\nimport { ErrorMessagesModel } from '../../models';\nimport { GovUiConfigModel } from '../../models/gov-ui-config-model';\nimport {HtmlTemplatesHelper} from '../../util/helpers/html-templates.helper';\n/*\n* CheckBox component - state less\n* Responsible for displaying a list of gov-uk-checkboxes\n* @param: options - object with data for wrapper (fieldset) and\n* array of items for gov-uk-checkboxes\n* @param: errors - array of errorMessage\n* */\n@Component({\n selector: 'xuilib-gov-uk-textarea',\n templateUrl: './gov-uk-textarea.component.html'\n})\nexport class GovUkTextareaComponent {\n @Input() public config: GovUiConfigModel;\n // {label: string; classes: string; hint: string; key: string; rows: number, id: string};\n @Input() public errorMessage: ErrorMessagesModel;\n @Input() public group: FormGroup;\n\n public setDescribedBy(): string {\n return HtmlTemplatesHelper.setDescribedBy(this.errorMessage, this.config);\n }\n\n}\n","import {Component, Input} from '@angular/core';\n\n/*\n* Hmcts Banner\n* Responsible for displaying prominent message and related actions\n* @prop message to display\n* @prop type\n* */\n@Component({\n selector: 'xuilib-hmcts-banner',\n templateUrl: './hmcts-banner.component.html',\n styleUrls: ['./hmcts-banner.component.scss']\n})\nexport class HmctsBannerComponent {\n constructor() { }\n @Input() public type: string;\n @Input() public message: string;\n}\n","import {DOCUMENT} from '@angular/common';\nimport {AfterViewInit, Component, Inject, Input, OnChanges, SimpleChanges} from '@angular/core';\n/*\n Error Summary component\n State Less component\n @property errorMessages that is array of messages.\n Component is also responsible for scrolling. Up and Down the page when user click on links\n*/\n@Component({\n selector: 'xuilib-hmcts-error-summary',\n templateUrl: './hmcts-error-summary.component.html'\n})\nexport class HmctsErrorSummaryComponent implements AfterViewInit, OnChanges {\n\n @Input() public set errorMessages(value: any) {\n this.messages = value;\n }\n\n @Input() public header: string;\n @Input() public showWarningMessage: boolean;\n\n public messages: object[];\n\n constructor(@Inject(DOCUMENT) private readonly document: any) { }\n\n public ngAfterViewInit(): void {\n this.scrollTo('errorSummary');\n }\n\n public ngOnChanges(changes: SimpleChanges): void {\n if (changes.errorMessages) {\n this.scrollTo('errorSummary');\n }\n }\n\n public scrollTo(selector: any) {\n if (this.document.querySelector(`#${selector}`)) {\n const el = this.document.querySelector(`#${selector}`);\n\n el.focus();\n }\n }\n\n public hasElement(selector: any) {\n return this.document.querySelector(`#${selector}`);\n }\n\n}\n","import { Component, Input } from '@angular/core';\n\n@Component({\n selector: 'xuilib-hmcts-identity-bar',\n templateUrl: './hmcts-identity-bar.component.html',\n styleUrls: ['./hmcts-identity-bar.component.scss']\n})\nexport class HmctsIdentityBarComponent {\n\n @Input() public set content(value: any) {\n this.value = value.name;\n }\n\n public value: string;\n\n constructor() { }\n}\n","import {Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\nimport { BannerDataModel } from '../../models/banner-data-model';\n/*\n* Main Content wrapper\n* Responsible for:\n * Wrapping content within the gov-uk html elements bellow\n * @prop showBackLink - switch for back link\n * @prop title = title\n * @prop summaryErrors list of errors\n* @prop back link, title (title), summaryErrors (array of errors)\n* */\n@Component({\n selector: 'xuilib-hmcts-main-wrapper',\n templateUrl: './hmcts-main-wrapper.component.html'\n})\nexport class HmctsMainWrapperComponent implements OnInit {\n public bannerData: BannerDataModel;\n\n @Input() public backLink: string;\n @Input() public title: string;\n @Input() public summaryErrors: {header: string; isFromValid: boolean; items: { id: string; message: any; }[]};\n @Input() public set banner(value: BannerDataModel) {\n this.bannerData = value;\n }\n @Input() public actionButtons: {name: string, class: string, action(): {}}[];\n @Input() public showWarningMessage: boolean;\n\n @Output() public backEvent = new EventEmitter<void>();\n public hasBackLink: boolean;\n\n constructor() {\n }\n\n public ngOnInit() {\n this.hasBackLink = this.backLink !== undefined || this.backEvent.observers.length > 0;\n }\n\n public onGoBack() {\n this.backEvent.emit();\n }\n}\n","import { Component, Input } from '@angular/core';\n\n@Component({\n selector: 'xuilib-hmcts-primary-navigation',\n templateUrl: './hmcts-primary-navigation.component.html',\n styleUrls: ['./hmcts-primary-navigation.component.scss']\n})\nexport class HmctsPrimaryNavigationComponent {\n\n @Input() public set userLoggedIn(value: any) {\n this.isUserLoggedIn = value;\n }\n\n @Input() public label: string;\n @Input() public items: {active: boolean, href: string, text: string}[];\n @Input() public isBrandedHeader: boolean;\n\n public isUserLoggedIn: boolean;\n constructor() {\n\n }\n\n}\n","import { Component, Input } from '@angular/core';\n\n@Component({\n selector: 'xuilib-hmcts-sub-navigation',\n templateUrl: './hmcts-sub-navigation.component.html'\n})\nexport class HmctsSubNavigationComponent {\n @Input() public label: string;\n @Input() public items: SubNavigation[];\n}\n\nexport interface SubNavigation {\n text: string;\n href: string;\n active: boolean;\n}\n\n","\nimport {Directive, ElementRef, OnInit} from '@angular/core';\n/*\n* Remove Host Directive\n* Used to remove native angular host tags tags\n* sometimes needed because of CSS dependencies\n* */\n@Directive({\n selector: '[appRemoveHost]'\n})\nexport class RemoveHostDirective implements OnInit {\n\n constructor(private readonly el: ElementRef) {}\n\n public ngOnInit() {\n const nativeElement: HTMLElement = this.el.nativeElement;\n const parentElement: HTMLElement = nativeElement.parentElement;\n // move all children out of the element\n while (nativeElement.firstChild) {\n parentElement.insertBefore(nativeElement.firstChild, nativeElement);\n }\n parentElement.removeChild(nativeElement);\n }\n}\n","import { InjectionToken } from '@angular/core';\n\nexport const windowToken = new InjectionToken('Window');\nexport function windowProvider() { return window; }\n","import { CommonModule } from '@angular/common';\nimport { InjectionToken, NgModule } from '@angular/core';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { MatAutocompleteModule, MatTabsModule } from '@angular/material';\nimport { RouterModule } from '@angular/router';\nimport { AccessibilityComponent } from './components/accessibility/accessibility.component';\nimport { CheckboxListComponent } from './components/checkbox-list/checkbox-list.component';\nimport { ContactDetailsComponent } from './components/contact-details/contact-details.component';\nimport { DueDateComponent } from './components/due-date/due-date.component';\nimport { ExuiPageWrapperComponent } from './components/exui-main-wrapper/exui-page-wrapper.component';\nimport { GenericFilterComponent } from './components/generic-filter/generic-filter.component';\nimport { HmctsSessionDialogComponent } from './components/hmcts-session-dialog/hmcts-session-dialog.component';\nimport { InviteUserFormComponent } from './components/invite-user-form/invite-user-form.component';\nimport { InviteUserPermissionComponent } from './components/invite-user-permissions/invite-user-permission.component';\nimport { LoadingSpinnerComponent } from './components/loading-spinner/loading-spinner.component';\nimport { SelectedCaseConfirmComponent } from './components/selected-case-confirm/selected-case-confirm.component';\nimport { SelectedCaseListComponent } from './components/selected-case-list/selected-case-list.component';\nimport { SelectedCaseComponent } from './components/selected-case/selected-case.component';\nimport { ServiceMessageComponent } from './components/service-message/service-message.component';\nimport { ServiceMessagesComponent } from './components/service-messages/service-messages.component';\nimport { ShareCaseConfirmComponent } from './components/share-case-confirm/share-case-confirm.component';\nimport { ShareCaseComponent } from './components/share-case/share-case.component';\nimport { TabComponent } from './components/tab/tab.component';\nimport { TcConfirmComponent } from './components/tc-confirm/tc-confirm.component';\nimport { TcDisplayHtmlComponent } from './components/terms-and-conditions/tc-display/tc-display-html/tc-display-html.component';\nimport { TcDisplayPlainComponent } from './components/terms-and-conditions/tc-display/tc-display-plain/tc-display-plain.component';\nimport { TermsAndConditionsComponent } from './components/terms-and-conditions/terms-and-conditions.component';\nimport { UserDetailsComponent } from './components/user-details/user-details.component';\nimport { UserListComponent } from './components/user-list/user-list.component';\nimport { UserSelectComponent } from './components/user-select/user-select.component';\nimport { FeatureToggleDirective } from './directives/feature-toggle/feature-toggle.directive';\nimport { LetDirective } from './directives/let/let.directive';\nimport { GovUkCheckboxComponent } from './gov-ui/components/gov-uk-checkbox/gov-uk-checkbox.component';\nimport { GovUkCheckboxesComponent } from './gov-ui/components/gov-uk-checkboxes/gov-uk-checkboxes.component';\nimport { GovUkDateComponent } from './gov-ui/components/gov-uk-date/gov-uk-date.component';\nimport { GovUkErrorMessageComponent } from './gov-ui/components/gov-uk-error-message/gov-uk-error-message.component';\nimport { GovUkFieldsetComponent } from './gov-ui/components/gov-uk-fieldset/gov-uk-fieldset.component';\nimport { GovUkFileUploadComponent } from './gov-ui/components/gov-uk-file-upload/gov-uk-file-upload.component';\nimport { GovUkFormGroupWrapperComponent } from './gov-ui/components/gov-uk-form-group-wrapper/gov-uk-form-group-wrapper.component';\nimport { GovUkInputComponent } from './gov-ui/components/gov-uk-input/gov-uk-input.component';\nimport { GovUkLabelComponent } from './gov-ui/components/gov-uk-label/gov-uk-label.component';\nimport { GovUkRadioComponent } from './gov-ui/components/gov-uk-radio/gov-uk-radio.component';\nimport { GovUkRadiosComponent } from './gov-ui/components/gov-uk-radios/gov-uk-radios.component';\nimport { GovUkSelectComponent } from './gov-ui/components/gov-uk-select/gov-uk-select.component';\nimport { GovukTableComponent } from './gov-ui/components/gov-uk-table/gov-uk-table.component';\nimport { GovUkTextareaComponent } from './gov-ui/components/gov-uk-textarea/gov-uk-textarea.component';\nimport { HmctsBannerComponent } from './gov-ui/components/hmcts-banner/hmcts-banner.component';\nimport { HmctsErrorSummaryComponent } from './gov-ui/components/hmcts-error-summary/hmcts-error-summary.component';\nimport { HmctsIdentityBarComponent } from './gov-ui/components/hmcts-identity-bar/hmcts-identity-bar.component';\nimport { HmctsMainWrapperComponent } from './gov-ui/components/hmcts-main-wrapper/hmcts-main-wrapper.component';\nimport { HmctsPrimaryNavigationComponent } from './gov-ui/components/hmcts-primary-navigation/hmcts-primary-navigation.component';\nimport { HmctsSubNavigationComponent } from './gov-ui/components/hmcts-sub-navigation/hmcts-sub-navigation.component';\nimport { RemoveHostDirective } from './gov-ui/directives/remove-host.directive';\nimport { windowProvider, windowToken } from './window';\n\nexport const COMMON_LIB_ROOT_GUARD = new InjectionToken<void>('COMMON_LIB_ROOT_GUARD');\n\nexport class ExuiCommonLibModuleOptions {\n public launchDarklyKey?: string;\n}\n\nexport const COMMON_COMPONENTS = [\n ExuiPageWrapperComponent,\n TermsAndConditionsComponent,\n TcDisplayHtmlComponent,\n TcDisplayPlainComponent,\n TcConfirmComponent,\n ContactDetailsComponent,\n HmctsSessionDialogComponent,\n UserListComponent,\n UserDetailsComponent,\n InviteUserPermissionComponent,\n InviteUserFormComponent,\n ShareCaseComponent,\n ShareCaseConfirmComponent,\n SelectedCaseListComponent,\n SelectedCaseComponent,\n SelectedCaseConfirmComponent,\n UserSelectComponent,\n TabComponent,\n AccessibilityComponent,\n DueDateComponent,\n CheckboxListComponent,\n ServiceMessageComponent,\n ServiceMessagesComponent,\n LoadingSpinnerComponent,\n GenericFilterComponent\n];\n\nexport const COMMON_DIRECTIVES = [\n FeatureToggleDirective,\n LetDirective\n];\n\nexport const GOV_UI_COMPONENTS = [\n HmctsIdentityBarComponent,\n HmctsSubNavigationComponent,\n HmctsPrimaryNavigationComponent,\n HmctsErrorSummaryComponent,\n HmctsMainWrapperComponent,\n HmctsBannerComponent,\n GovukTableComponent,\n GovUkInputComponent,\n GovUkCheckboxComponent,\n GovUkFormGroupWrapperComponent,\n GovUkLabelComponent,\n GovUkErrorMessageComponent,\n GovUkFieldsetComponent,\n GovUkDateComponent,\n GovUkCheckboxesComponent,\n GovUkRadioComponent,\n GovUkRadiosComponent,\n GovUkSelectComponent,\n GovUkTextareaComponent,\n GovUkFileUploadComponent\n];\n\nexport const GOV_UI_DIRECTIVES = [\n RemoveHostDirective\n];\n\n@NgModule({\n declarations: [\n ...COMMON_COMPONENTS,\n ...COMMON_DIRECTIVES,\n ...GOV_UI_COMPONENTS,\n ...GOV_UI_DIRECTIVES\n ],\n imports: [\n CommonModule,\n FormsModule,\n ReactiveFormsModule,\n RouterModule.forChild([]),\n MatAutocompleteModule,\n MatTabsModule\n ],\n providers: [\n { provide: windowToken, useFactory: windowProvider }\n ],\n exports: [\n ...COMMON_COMPONENTS,\n ...COMMON_DIRECTIVES,\n ...GOV_UI_COMPONENTS,\n ...GOV_UI_DIRECTIVES\n ]\n})\nexport class ExuiCommonLibModule {\n}\n","import { Injectable } from '@angular/core';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class GovUiService {\n\n constructor() { }\n}\n","import { FormGroup, ValidatorFn } from '@angular/forms';\n\nexport function checkboxesBeCheckedValidator(minRequired = 1): ValidatorFn {\n return function validate(formGroup: FormGroup) {\n let checked = 0;\n\n Object.keys(formGroup.controls).forEach(key => {\n const control = formGroup.controls[key];\n\n if (control.value === true) {\n checked ++;\n }\n });\n\n if (checked < minRequired) {\n return {\n requireOneCheckboxToBeChecked: true,\n };\n }\n\n return null;\n };\n}\n","import { FormGroup, ValidatorFn } from '@angular/forms';\n\nexport function dateValidator(): ValidatorFn {\n return function validate(formGroup: FormGroup) {\n\n const d = new Date(\n parseInt(formGroup.controls.day.value, 10),\n parseInt(formGroup.controls.month.value, 10) - 1,\n parseInt(formGroup.controls.year.value, 10) - 1\n );\n\n function isValidDate(val: any) {\n return val instanceof Date && !isNaN( +d );\n }\n\n if (!isValidDate(d)) {\n return {\n dateIsInvalid: true,\n };\n }\n\n return null;\n };\n}\n","import { FormGroup, ValidatorFn } from '@angular/forms';\n\nexport function radioGroupValidator(): ValidatorFn {\n return function validate(formGroup: FormGroup) {\n if (formGroup.controls) {\n for (const control in formGroup.controls) {\n if (!formGroup.controls[control].valid) {\n return {\n isRadioGroupInvalid: true,\n };\n }\n }\n }\n\n\n return null;\n };\n}\n","export class AnonymousFeatureUser {\n public anonymous: true;\n}\n\nexport class LoggedInFeatureUser {\n public key: string;\n public custom: {\n [key: string]: any,\n roles: string[],\n orgId: string\n };\n}\n\nexport type FeatureUser = AnonymousFeatureUser | LoggedInFeatureUser;\n","export type FilterFieldType = 'checkbox' | 'radio' | 'select';\n\nexport type FilterPersistence = 'local' | 'session' | 'memory';\n\nexport interface FilterConfig {\n id: string;\n fields: FilterFieldConfig[];\n persistence: FilterPersistence;\n}\n\nexport interface FilterFieldConfig {\n name: string;\n options: { key: string, label: string }[];\n minSelected: number;\n maxSelected: number;\n minSelectedError?: string;\n maxSelectedError?: string;\n type: FilterFieldType;\n}\n\nexport interface FilterSetting {\n id: string;\n fields: { name: string, value: string[] }[];\n}\n\nexport class RadioFilterFieldConfig implements FilterFieldConfig {\n public name: string;\n public options: { key: string, label: string}[];\n public minSelected: 1;\n public maxSelected: 1;\n public type: 'radio';\n}\n","import { Injectable } from '@angular/core';\nimport { ActivatedRouteSnapshot, CanActivate, Router, UrlTree } from '@angular/router';\nimport { combineLatest, Observable } from 'rxjs';\nimport { map } from 'rxjs/operators';\nimport { FeatureToggleService } from './feature-toggle.service';\n\n@Injectable()\nexport class FeatureToggleGuard implements CanActivate {\n\n public constructor(\n private readonly featureToggleService: FeatureToggleService,\n private readonly router: Router\n ) {}\n\n /**\n * Usage: Add the FeatureToggleGuard as the Guard for a route, and provide the following\n * in the data array for the route:\n * - needsFeaturesEnabled: An array of feature keys that need to be enabled for this route\n * - featureDisabledRedirect: the URL to redirect to when the this route is not accessible due to disabled features\n * @param route Automatically provided by Angular\n */\n public canActivate(route: ActivatedRouteSnapshot): Observable<boolean | UrlTree> {\n return combineLatest(...(route.data.needsFeaturesEnabled as string[]).map(\n feature => this.featureToggleService.getValueOnce<boolean>(feature, false)\n )).pipe(\n map(featureStatuses => featureStatuses.every(status => status)),\n map(status => status || this.router.parseUrl(route.data.featureDisabledRedirect as string))\n );\n }\n}\n","import { Inject, Injectable, InjectionToken } from '@angular/core';\nimport * as LDClient from 'launchdarkly-js-client-sdk';\nimport { BehaviorSubject, Observable } from 'rxjs';\nimport { distinctUntilChanged, filter, map } from 'rxjs/operators';\nimport { FeatureUser } from '../../models/feature-user';\nimport { FeatureToggleService } from './feature-toggle.service';\n\nexport function ldKeyDefaultFactory() {\n return '';\n}\nexport const LAUNCHDARKLYKEY = new InjectionToken<string>('LAUNCHDARKLYKEY', { providedIn: 'root', factory: ldKeyDefaultFactory });\n\n@Injectable({\n providedIn: 'root'\n})\nexport class LaunchDarklyService implements FeatureToggleService {\n\n private readonly client: LDClient.LDClient;\n private readonly ready = new BehaviorSubject<boolean>(false);\n private readonly features: Record<string, BehaviorSubject<any>> = {};\n\n constructor(@Inject(LAUNCHDARKLYKEY) key: string) {\n this.client = LDClient.initialize(key, { anonymous: true }, {});\n this.client.on('ready', () => { this.ready.next(true); });\n }\n\n public initialize(user: FeatureUser = { anonymous: true }): void {\n this.ready.next(false);\n this.client.identify(user).then(() => this.ready.next(true));\n }\n\n public isEnabled(feature: string): Observable<boolean> {\n return this.getValue<boolean>(feature, false);\n }\n\n public getArray<R = any>(feature: string): Observable<R[]> {\n return this.getValue<R[]>(feature, []);\n }\n\n public getValue<R>(feature: string, defaultValue: R): Observable<R> {\n if (!this.features.hasOwnProperty(feature)) {\n this.features[feature] = new BehaviorSubject<R>(defaultValue);\n this.ready.pipe(\n filter(ready => ready),\n map(() => this.client.variation(feature, defaultValue))\n ).subscribe(value => {\n this.features[feature].next(value);\n this.client.on(`change:${feature}`, (val: R) => {\n this.features[feature].next(val);\n });\n });\n }\n return this.features[feature].pipe(\n distinctUntilChanged()\n );\n }\n\n /**\n * This method returns an observable that will only get the state of the feature toggle\n * once. It calls the LD SDK directly, and should only be used in circumstances where\n * only one value should be emitted, that value coming directly from LD. This will likely\n * only apply for Guards, and should be used only when absolutely necessary.\n * @see getValue for regular usage.\n * @param feature string\n * @param defaultValue R\n */\n public getValueOnce<R>(feature: string, defaultValue: R): Observable<R> {\n return this.ready.pipe(\n filter(ready => ready),\n map(() => this.client.variation(feature, defaultValue))\n );\n }\n}\n","import { DOCUMENT } from '@angular/common';\nimport { Inject, Injectable } from '@angular/core';\nimport { Title } from '@angular/platform-browser';\nimport { NavigationEnd, Router } from '@angular/router';\nimport { windowToken } from '../../window';\n\n@Injectable({\n providedIn: 'root'\n})\n\nexport class GoogleAnalyticsService {\n\n private readonly document: Document;\n private readonly window: Window;\n\n public googleAnalyticsKey: string;\n constructor(\n private readonly router: Router,\n private readonly title: Title,\n @Inject(windowToken) window: any,\n @Inject(DOCUMENT) document: any,\n ) {\n this.window = window as Window;\n this.document = document as Document;\n\n }\n\n public init(googleAnalyticsKey: string) {\n this.googleAnalyticsKey = googleAnalyticsKey;\n try {\n const script1 = this.document.createElement('script');\n script1.async = true;\n script1.src = `https://www.googletagmanager.com/gtag/js?id=${this.googleAnalyticsKey}`;\n this.document.head.appendChild(script1);\n\n const script2 = this.document.createElement('script');\n script2.innerHTML = `\n window.dataLayer = window.dataLayer || [];\n function gtag(){dataLayer.push(arguments);}\n gtag('js', new Date());\n gtag('config', '${this.googleAnalyticsKey}', {'send_page_view': false});\n `;\n this.document.head.appendChild(script2);\n } catch (ex) {\n console.error('Error appending google analytics');\n console.error(ex);\n }\n this.listenForRouteChanges();\n }\n\n private listenForRouteChanges() {\n if (this.googleAnalyticsKey) {\n this.router.events.subscribe(event => {\n if (event instanceof NavigationEnd) {\n (this.window as any).gtag('config', this.googleAnalyticsKey, {\n page_path: event.urlAfterRedirects,\n page_title: this.title.getTitle(),\n });\n }\n });\n }\n }\n\n public event(eventName: string, params: {}) {\n (this.window as any).gtag('event', eventName, params);\n }\n\n}\n","import { DOCUMENT } from '@angular/common';\nimport { Inject, Injectable } from '@angular/core';\nimport { Title } from '@angular/platform-browser';\nimport { NavigationEnd, Router } from '@angular/router';\nimport { windowToken } from '../../window';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class GoogleTagManagerService {\n private readonly document: Document;\n private readonly window: Window;\n\n public googleTagManagerKey: string;\n constructor(\n private readonly router: Router,\n private readonly title: Title,\n @Inject(windowToken) window: any,\n @Inject(DOCUMENT) document: any\n ) {\n this.window = window as Window;\n this.document = document as Document;\n }\n\n public init(googleTagManagerKey: string) {\n this.googleTagManagerKey = googleTagManagerKey;\n try {\n\n (this.window as any).dataLayer = (this.window as any).dataLayer || [];\n (this.window as any).dataLayer.push({\n 'gtm.start': new Date().getTime(),\n event: 'gtm.js'\n });\n\n const script = this.document.createElement('script');\n script.async = true;\n script.src = `https://www.googletagmanager.com/gtm.js?id=${this.googleTagManagerKey}`;\n this.document.head.appendChild(script);\n\n } catch (ex) {\n console.error('Error appending google tag manager');\n console.error(ex);\n }\n this.listenForRouteChanges();\n }\n\n private listenForRouteChanges() {\n if (this.googleTagManagerKey) {\n this.router.events.subscribe(event => {\n if (event instanceof NavigationEnd) {\n (this.window as any).dataLayer.push({\n event: 'pageview',\n page: {\n path: event.urlAfterRedirects,\n title: this.title.getTitle()\n }\n });\n }\n });\n }\n }\n\n public event(eventName: string, params: {}) {\n (this.window as any).dataLayer.push({\n event: eventName,\n params\n });\n }\n}\n","import {Injectable} from '@angular/core';\nimport {BehaviorSubject, Observable} from 'rxjs';\nimport {distinctUntilChanged} from 'rxjs/operators';\n\nexport abstract class HasLoadingState {\n public get isLoading(): Observable<boolean> {\n return;\n }\n}\n\n@Injectable({\n providedIn: 'root'\n})\nexport class LoadingService implements HasLoadingState {\n private readonly registered = new Map<string, string>();\n private readonly loading = new BehaviorSubject<boolean>(false);\n\n public get isLoading(): Observable<boolean> {\n return this.loading.asObservable().pipe(distinctUntilChanged());\n }\n\n public register(): string {\n const token = this.generateToken();\n this.registered.set(token, token);\n this.loading.next(true);\n return token;\n }\n\n public unregister(token: string): void {\n this.registered.delete(token);\n this.loading.next(this.registered.size > 0);\n }\n\n private generateToken(): string {\n const timestamp = window.performance.now();\n return `common-lib-loading-${timestamp}`; // format: [source-library]-[unique incrementing number]\n }\n}\n\n","import { Injectable } from '@angular/core';\nimport { DocumentInterruptSource, Idle } from '@ng-idle/core';\nimport { Keepalive } from '@ng-idle/keepalive';\nimport { Observable, Subject } from 'rxjs';\nimport {\n delay,\n distinctUntilChanged,\n map\n} from 'rxjs/operators';\nimport { IdleConfigModel } from '../../models/idle-config.model';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ManageSessionServices {\n private readonly appStateEmitter: Subject<{type: string, countdown?: string; isVisible?: boolean}>;\n\n constructor(\n private readonly idle: Idle,\n private readonly keepalive: Keepalive,\n ) {\n this.appStateEmitter = new Subject();\n }\n\n public init(idleConfig: IdleConfigModel): void {\n\n this.idle.setIdleName(idleConfig.idleServiceName);\n this.idle.setTimeout(idleConfig.timeout);\n\n const interrupt =\n new DocumentInterruptSource('mousedown keydown DOMMouseScroll mousewheel touchstart touchmove scroll');\n this.idle.setInterrupts([interrupt]);\n\n // adding delay so that user can click on sign out before the modal shuts\n this.idle.onIdleEnd.pipe(delay(250)).subscribe(() => {\n this.appStateEmitter.next({type: 'modal', countdown: undefined, isVisible: false});\n });\n\n this.idle.onTimeout.subscribe(() => {\n this.appStateEmitter.next({type: 'signout'});\n });\n\n this.idle.onTimeoutWarning.pipe(\n map(sec => (sec > 60) ? `${Math.ceil(sec / 60)} minutes` : `${sec} seconds`),\n distinctUntilChanged()\n ).subscribe((countdown) => {\n this.appStateEmitter.next({type: 'modal', countdown, isVisible: true});\n });\n\n this.keepalive.interval(idleConfig.keepAliveInSeconds);\n this.keepalive.onPing.subscribe(() => {\n this.appStateEmitter.next({type: 'keepalive'});\n });\n const idleInSeconds = Math.floor((idleConfig.idleMilliseconds / 1000)) - idleConfig.timeout;\n this.idle.setIdle(idleInSeconds);\n this.idle.watch();\n }\n\n public appStateChanges(): Observable<any> {\n return this.appStateEmitter.asObservable();\n }\n}\n","import { Injectable } from '@angular/core';\n\n// use types so we can move to stricted typing later on\nexport type Role = string;\nexport type Roles = Role[];\n\n@Injectable({\n providedIn: 'root'\n })\nexport class RoleService {\n private pRoles: Roles = [];\n\n public get roles(): Roles {\n return this.pRoles;\n }\n\n public set roles(roles: Roles) {\n this.pRoles = roles;\n }\n}\n","import { Injectable } from '@angular/core';\nimport { ActivatedRouteSnapshot, CanActivate, Router, UrlTree } from '@angular/router';\nimport { RoleService } from './role.service';\n\nexport enum RoleMatching {\n ALL,\n ANY\n}\n\n@Injectable({\n providedIn: 'root'\n })\nexport class RoleGuard implements CanActivate {\n\n public constructor(\n private readonly roleService: RoleService,\n private readonly router: Router\n ) {}\n\n public canActivate(route: ActivatedRouteSnapshot): boolean | UrlTree {\n const roles = (route.data.needsRole as string[]);\n const check = (roleRegEx: string) => {\n const regex = new RegExp(roleRegEx);\n return this.roleService.roles.some(role => regex.test(role));\n };\n const match = route.data.roleMatching === RoleMatching.ALL ? roles.every(check) : roles.some(check);\n\n return match || this.router.parseUrl(route.data.noRoleMatchRedirect as string);\n }\n}\n","import { Injectable } from '@angular/core';\nimport { DocumentInterruptSource, Idle } from '@ng-idle/core';\nimport { Keepalive } from '@ng-idle/keepalive';\nimport { Observable, Subject } from 'rxjs';\nimport {\n distinctUntilChanged,\n map\n} from 'rxjs/operators';\nimport { TimeoutNotificationConfig } from '../../models/timeout-notification.model';\n\n/**\n * TimeoutNotificationsService\n *\n * The Timeout Notification Service allows your application to receive notifications\n * when a User is approaching the the total time that a User has been idle for.\n *\n * This can be set by your application using the Timeout Notification Config object.\n *\n * Your application will then have to listen to events coming from the Timeout Notification Service,\n * and handle these events within your application.\n *\n * @see README.md for implementation details and code, on how to implement the Timeout Notification\n * Service within your application.\n */\n@Injectable({\n providedIn: 'root'\n})\nexport class TimeoutNotificationsService {\n\n private readonly eventEmitter: Subject<{eventType: string, readableCountdown?: string; }>;\n\n constructor(\n private readonly idle: Idle,\n private readonly keepalive: Keepalive,\n ) {\n this.eventEmitter = new Subject();\n }\n\n /**\n * Convert milliseconds to seconds.\n *\n * @param milliseconds - 1000\n * @return seconds - 1\n */\n public millisecondsToSeconds = (milliseconds: number): number => milliseconds / 1000;\n\n /**\n * Initialise\n *\n * Initialise the Timeout Notification Events.\n *\n * I made the decision not to make ' minutes' and ' seconds' configurable via input parameters -\n * As I made an assumption that any Reform team would not need to change these to 'secs, mins' or 's, m'.\n *\n * idleModalDisplayTime and totalIdleTime need to be passed in, in milliseconds.\n *\n * @see README.md for more information on TimeoutNotificationService.\n */\n public initialise(config: TimeoutNotificationConfig): void {\n\n const DOCUMENT_INTERRUPTS = 'mousedown keydown DOMMouseScroll mousewheel touchstart touchmove scroll';\n\n const MINUTES = ' minutes';\n const SECONDS = ' seconds';\n\n const SIGNOUT_EVENT = 'sign-out';\n const COUNTDOWN_EVENT = 'countdown';\n const KEEP_ALIVE_EVENT = 'keep-alive';\n\n const {idleServiceName, idleModalDisplayTime, totalIdleTime} = config;\n\n this.idle.setIdleName(idleServiceName);\n\n const idleModalDisplayTimeInSeconds = this.millisecondsToSeconds(idleModalDisplayTime);\n const totalIdleTimeInSeconds = this.millisecondsToSeconds(totalIdleTime);\n\n this.idle.setTimeout(idleModalDisplayTimeInSeconds);\n\n const interrupt = new DocumentInterruptSource(DOCUMENT_INTERRUPTS);\n this.idle.setInterrupts([interrupt]);\n\n this.idle.onTimeout.subscribe(() => {\n this.eventEmitter.next({eventType: SIGNOUT_EVENT});\n });\n\n this.idle.onTimeoutWarning.pipe(\n map(sec => (sec > 60) ? Math.ceil(sec / 60) + MINUTES : sec + SECONDS),\n distinctUntilChanged()\n ).subscribe((countdown) => {\n this.eventEmitter.next({eventType: COUNTDOWN_EVENT, readableCountdown: countdown});\n });\n\n this.keepalive.onPing.subscribe(() => {\n this.eventEmitter.next({eventType: KEEP_ALIVE_EVENT});\n });\n\n const idleInSeconds = Math.floor(totalIdleTimeInSeconds) - idleModalDisplayTimeInSeconds;\n this.idle.setIdle(idleInSeconds);\n this.idle.watch();\n }\n\n /**\n * Expose the notification events, so that a 3rd party service can listen to the notifications.\n */\n public notificationOnChange(): Observable<any> {\n\n return this.eventEmitter.asObservable();\n }\n}\n"],"names":["tslib_1.__values","tslib_1.__spread","LDClient.initialize"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from './public_api';
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from './remove-host.directive';
|