@hmcts/opal-frontend-common 0.0.109 → 0.0.111
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/fesm2022/hmcts-opal-frontend-common-access-denied.component-DuQgLlU6.mjs +57 -0
- package/fesm2022/hmcts-opal-frontend-common-account-created.component-DtlFlzU9.mjs +47 -0
- package/fesm2022/hmcts-opal-frontend-common-components-abstract-abstract-account-summary-base.mjs +73 -81
- package/fesm2022/hmcts-opal-frontend-common-components-abstract-abstract-creditor-details-base.mjs +71 -92
- package/fesm2022/hmcts-opal-frontend-common-components-abstract-abstract-form-alias-base-interfaces.mjs +0 -4
- package/fesm2022/hmcts-opal-frontend-common-components-abstract-abstract-form-alias-base.mjs +133 -233
- package/fesm2022/hmcts-opal-frontend-common-components-abstract-abstract-form-array-base-interfaces.mjs +0 -4
- package/fesm2022/hmcts-opal-frontend-common-components-abstract-abstract-form-array-base.mjs +123 -251
- package/fesm2022/hmcts-opal-frontend-common-components-abstract-abstract-form-array-parent-base.mjs +24 -43
- package/fesm2022/hmcts-opal-frontend-common-components-abstract-abstract-form-array-removal-base-interfaces.mjs +0 -4
- package/fesm2022/hmcts-opal-frontend-common-components-abstract-abstract-form-array-removal-base.mjs +66 -94
- package/fesm2022/hmcts-opal-frontend-common-components-abstract-abstract-form-base-interfaces.mjs +0 -4
- package/fesm2022/hmcts-opal-frontend-common-components-abstract-abstract-form-base.mjs +340 -616
- package/fesm2022/hmcts-opal-frontend-common-components-abstract-abstract-form-parent-base.mjs +25 -61
- package/fesm2022/hmcts-opal-frontend-common-components-abstract-abstract-nested-form-base.mjs +88 -142
- package/fesm2022/hmcts-opal-frontend-common-components-abstract-abstract-report-instances-table-base.mjs +48 -29
- package/fesm2022/hmcts-opal-frontend-common-components-abstract-abstract-report-summary-list-base-constants.mjs +14 -19
- package/fesm2022/hmcts-opal-frontend-common-components-abstract-abstract-report-summary-list-base-interfaces.mjs +0 -4
- package/fesm2022/hmcts-opal-frontend-common-components-abstract-abstract-report-summary-list-base-types.mjs +0 -4
- package/fesm2022/hmcts-opal-frontend-common-components-abstract-abstract-report-summary-list-base.mjs +144 -273
- package/fesm2022/hmcts-opal-frontend-common-components-abstract-abstract-sortable-table-interfaces.mjs +0 -4
- package/fesm2022/hmcts-opal-frontend-common-components-abstract-abstract-sortable-table-pagination.mjs +104 -129
- package/fesm2022/hmcts-opal-frontend-common-components-abstract-abstract-sortable-table-types.mjs +0 -4
- package/fesm2022/hmcts-opal-frontend-common-components-abstract-abstract-sortable-table.mjs +123 -204
- package/fesm2022/hmcts-opal-frontend-common-components-abstract-abstract-tab-data.mjs +35 -121
- package/fesm2022/hmcts-opal-frontend-common-components-abstract-abstract-table-filter-interfaces.mjs +0 -4
- package/fesm2022/hmcts-opal-frontend-common-components-abstract-abstract-table-filter-types.mjs +0 -4
- package/fesm2022/hmcts-opal-frontend-common-components-abstract-abstract-table-filter.mjs +111 -183
- package/fesm2022/hmcts-opal-frontend-common-components-abstract-interfaces.mjs +0 -4
- package/fesm2022/hmcts-opal-frontend-common-components-alphagov-alphagov-accessible-autocomplete-interfaces.mjs +0 -4
- package/fesm2022/hmcts-opal-frontend-common-components-alphagov-alphagov-accessible-autocomplete.mjs +278 -275
- package/fesm2022/hmcts-opal-frontend-common-components-custom-custom-accessible-monetary.mjs +66 -53
- package/fesm2022/hmcts-opal-frontend-common-components-custom-custom-account-information-custom-account-information-item-custom-account-information-item-label.mjs +44 -21
- package/fesm2022/hmcts-opal-frontend-common-components-custom-custom-account-information-custom-account-information-item-custom-account-information-item-value.mjs +44 -21
- package/fesm2022/hmcts-opal-frontend-common-components-custom-custom-account-information-custom-account-information-item.mjs +54 -27
- package/fesm2022/hmcts-opal-frontend-common-components-custom-custom-account-information.mjs +38 -17
- package/fesm2022/hmcts-opal-frontend-common-components-custom-custom-action-links.mjs +70 -37
- package/fesm2022/hmcts-opal-frontend-common-components-custom-custom-deferred-live-region-announcement.mjs +109 -119
- package/fesm2022/hmcts-opal-frontend-common-components-custom-custom-horizontal-scroll-pane.mjs +38 -17
- package/fesm2022/hmcts-opal-frontend-common-components-custom-custom-page-header.mjs +40 -17
- package/fesm2022/hmcts-opal-frontend-common-components-custom-custom-scrollable-panes-custom-scrollable-panes-inner-pane.mjs +66 -27
- package/fesm2022/hmcts-opal-frontend-common-components-custom-custom-scrollable-panes.mjs +44 -21
- package/fesm2022/hmcts-opal-frontend-common-components-custom-custom-summary-metric-bar-custom-summary-metric-bar-item-custom-summary-metric-bar-item-label.mjs +54 -27
- package/fesm2022/hmcts-opal-frontend-common-components-custom-custom-summary-metric-bar-custom-summary-metric-bar-item-custom-summary-metric-bar-item-value.mjs +54 -27
- package/fesm2022/hmcts-opal-frontend-common-components-custom-custom-summary-metric-bar-custom-summary-metric-bar-item.mjs +67 -42
- package/fesm2022/hmcts-opal-frontend-common-components-custom-custom-summary-metric-bar.mjs +40 -17
- package/fesm2022/hmcts-opal-frontend-common-components-custom-custom-vertical-scroll-pane-custom-vertical-scroll-pane-inner-pane.mjs +66 -27
- package/fesm2022/hmcts-opal-frontend-common-components-custom-custom-vertical-scroll-pane-custom-vertical-scroll-pane-outer-pane.mjs +42 -21
- package/fesm2022/hmcts-opal-frontend-common-components-custom-custom-vertical-scroll-pane.mjs +36 -17
- package/fesm2022/hmcts-opal-frontend-common-components-govuk-govuk-accordion.mjs +125 -119
- package/fesm2022/hmcts-opal-frontend-common-components-govuk-govuk-back-link.mjs +46 -30
- package/fesm2022/hmcts-opal-frontend-common-components-govuk-govuk-button.mjs +72 -39
- package/fesm2022/hmcts-opal-frontend-common-components-govuk-govuk-cancel-link.mjs +54 -34
- package/fesm2022/hmcts-opal-frontend-common-components-govuk-govuk-checkboxes-interfaces.mjs +0 -4
- package/fesm2022/hmcts-opal-frontend-common-components-govuk-govuk-checkboxes.mjs +303 -134
- package/fesm2022/hmcts-opal-frontend-common-components-govuk-govuk-date-input-interfaces.mjs +0 -4
- package/fesm2022/hmcts-opal-frontend-common-components-govuk-govuk-date-input.mjs +163 -79
- package/fesm2022/hmcts-opal-frontend-common-components-govuk-govuk-details.mjs +45 -21
- package/fesm2022/hmcts-opal-frontend-common-components-govuk-govuk-error-summary.mjs +49 -33
- package/fesm2022/hmcts-opal-frontend-common-components-govuk-govuk-footer-interfaces.mjs +0 -4
- package/fesm2022/hmcts-opal-frontend-common-components-govuk-govuk-footer.mjs +42 -20
- package/fesm2022/hmcts-opal-frontend-common-components-govuk-govuk-header-interfaces.mjs +0 -4
- package/fesm2022/hmcts-opal-frontend-common-components-govuk-govuk-header.mjs +103 -41
- package/fesm2022/hmcts-opal-frontend-common-components-govuk-govuk-heading-with-caption-types.mjs +0 -4
- package/fesm2022/hmcts-opal-frontend-common-components-govuk-govuk-heading-with-caption.mjs +90 -39
- package/fesm2022/hmcts-opal-frontend-common-components-govuk-govuk-inset-text.mjs +60 -26
- package/fesm2022/hmcts-opal-frontend-common-components-govuk-govuk-list-govuk-list-link.mjs +53 -30
- package/fesm2022/hmcts-opal-frontend-common-components-govuk-govuk-list.mjs +36 -17
- package/fesm2022/hmcts-opal-frontend-common-components-govuk-govuk-notification-banner.mjs +75 -44
- package/fesm2022/hmcts-opal-frontend-common-components-govuk-govuk-pagination.mjs +80 -85
- package/fesm2022/hmcts-opal-frontend-common-components-govuk-govuk-panel.mjs +53 -25
- package/fesm2022/hmcts-opal-frontend-common-components-govuk-govuk-radio-interfaces.mjs +0 -4
- package/fesm2022/hmcts-opal-frontend-common-components-govuk-govuk-radio.mjs +397 -267
- package/fesm2022/hmcts-opal-frontend-common-components-govuk-govuk-select-interfaces.mjs +0 -4
- package/fesm2022/hmcts-opal-frontend-common-components-govuk-govuk-select.mjs +164 -80
- package/fesm2022/hmcts-opal-frontend-common-components-govuk-govuk-skip-link.mjs +61 -0
- package/fesm2022/hmcts-opal-frontend-common-components-govuk-govuk-summary-card-list.mjs +153 -85
- package/fesm2022/hmcts-opal-frontend-common-components-govuk-govuk-summary-list.mjs +246 -121
- package/fesm2022/hmcts-opal-frontend-common-components-govuk-govuk-table.mjs +224 -90
- package/fesm2022/hmcts-opal-frontend-common-components-govuk-govuk-tabs-govuk-tabs-list-item.mjs +99 -76
- package/fesm2022/hmcts-opal-frontend-common-components-govuk-govuk-tabs-govuk-tabs-panel.mjs +78 -51
- package/fesm2022/hmcts-opal-frontend-common-components-govuk-govuk-tabs.mjs +79 -72
- package/fesm2022/hmcts-opal-frontend-common-components-govuk-govuk-tag.mjs +55 -25
- package/fesm2022/hmcts-opal-frontend-common-components-govuk-govuk-task-list.mjs +112 -46
- package/fesm2022/hmcts-opal-frontend-common-components-govuk-govuk-text-area.mjs +185 -104
- package/fesm2022/hmcts-opal-frontend-common-components-govuk-govuk-text-input-prefix-suffix.mjs +165 -95
- package/fesm2022/hmcts-opal-frontend-common-components-govuk-govuk-text-input.mjs +151 -81
- package/fesm2022/hmcts-opal-frontend-common-components-govuk-helpers.mjs +5 -16
- package/fesm2022/hmcts-opal-frontend-common-components-hod-hod-loading-spinner.mjs +65 -32
- package/fesm2022/hmcts-opal-frontend-common-components-moj-moj-alert.mjs +396 -243
- package/fesm2022/hmcts-opal-frontend-common-components-moj-moj-badge.mjs +55 -25
- package/fesm2022/hmcts-opal-frontend-common-components-moj-moj-button-menu-moj-button-menu-item.mjs +53 -28
- package/fesm2022/hmcts-opal-frontend-common-components-moj-moj-button-menu.mjs +92 -60
- package/fesm2022/hmcts-opal-frontend-common-components-moj-moj-date-picker.mjs +216 -165
- package/fesm2022/hmcts-opal-frontend-common-components-moj-moj-filter-moj-filter-panel-moj-filter-panel-header.mjs +44 -21
- package/fesm2022/hmcts-opal-frontend-common-components-moj-moj-filter-moj-filter-panel-moj-filter-panel-option-moj-filter-panel-option-form-group-item.mjs +64 -42
- package/fesm2022/hmcts-opal-frontend-common-components-moj-moj-filter-moj-filter-panel-moj-filter-panel-option-moj-filter-panel-option-form-group-keyword.mjs +68 -47
- package/fesm2022/hmcts-opal-frontend-common-components-moj-moj-filter-moj-filter-panel-moj-filter-panel-option.mjs +52 -33
- package/fesm2022/hmcts-opal-frontend-common-components-moj-moj-filter-moj-filter-panel-moj-filter-panel-selected-moj-filter-panel-selected-tag.mjs +61 -40
- package/fesm2022/hmcts-opal-frontend-common-components-moj-moj-filter-moj-filter-panel-moj-filter-panel-selected.mjs +63 -42
- package/fesm2022/hmcts-opal-frontend-common-components-moj-moj-filter-moj-filter-panel.mjs +38 -17
- package/fesm2022/hmcts-opal-frontend-common-components-moj-moj-filter.mjs +56 -34
- package/fesm2022/hmcts-opal-frontend-common-components-moj-moj-header-interfaces.mjs +0 -4
- package/fesm2022/hmcts-opal-frontend-common-components-moj-moj-header.mjs +100 -41
- package/fesm2022/hmcts-opal-frontend-common-components-moj-moj-inset-text.mjs +62 -26
- package/fesm2022/hmcts-opal-frontend-common-components-moj-moj-notification-badge.mjs +46 -21
- package/fesm2022/hmcts-opal-frontend-common-components-moj-moj-page-header.mjs +47 -21
- package/fesm2022/hmcts-opal-frontend-common-components-moj-moj-pagination.mjs +119 -164
- package/fesm2022/hmcts-opal-frontend-common-components-moj-moj-primary-navigation.mjs +225 -172
- package/fesm2022/hmcts-opal-frontend-common-components-moj-moj-sortable-table.mjs +355 -188
- package/fesm2022/hmcts-opal-frontend-common-components-moj-moj-sub-navigation.mjs +152 -96
- package/fesm2022/hmcts-opal-frontend-common-components-moj-moj-ticket-panel.mjs +61 -29
- package/fesm2022/hmcts-opal-frontend-common-components-moj-moj-timeline.mjs +74 -26
- package/fesm2022/hmcts-opal-frontend-common-concurrency-failure.component-BqsP0gj2.mjs +41 -0
- package/fesm2022/hmcts-opal-frontend-common-constants.mjs +7 -13
- package/fesm2022/hmcts-opal-frontend-common-directives-capitalisation.mjs +55 -43
- package/fesm2022/hmcts-opal-frontend-common-directives-govuk-button.mjs +86 -60
- package/fesm2022/hmcts-opal-frontend-common-directives-moj-multi-select.mjs +184 -223
- package/fesm2022/hmcts-opal-frontend-common-directives-trim-leading-trailing-whitespace.mjs +56 -40
- package/fesm2022/hmcts-opal-frontend-common-guards-account.mjs +17 -37
- package/fesm2022/hmcts-opal-frontend-common-guards-auth.mjs +30 -41
- package/fesm2022/hmcts-opal-frontend-common-guards-business-unit-route-permissions.mjs +31 -90
- package/fesm2022/hmcts-opal-frontend-common-guards-can-deactivate-interfaces.mjs +0 -4
- package/fesm2022/hmcts-opal-frontend-common-guards-can-deactivate-types.mjs +0 -4
- package/fesm2022/hmcts-opal-frontend-common-guards-can-deactivate.mjs +3 -9
- package/fesm2022/hmcts-opal-frontend-common-guards-feature-flag.mjs +29 -64
- package/fesm2022/hmcts-opal-frontend-common-guards-has-flow-state.mjs +13 -20
- package/fesm2022/hmcts-opal-frontend-common-guards-has-url-state-match.mjs +19 -48
- package/fesm2022/hmcts-opal-frontend-common-guards-helpers.mjs +21 -54
- package/fesm2022/hmcts-opal-frontend-common-guards-route-permissions.mjs +20 -30
- package/fesm2022/hmcts-opal-frontend-common-guards-signed-in.mjs +13 -24
- package/fesm2022/hmcts-opal-frontend-common-guards-types.mjs +0 -4
- package/fesm2022/hmcts-opal-frontend-common-interceptors-content-digest.mjs +59 -107
- package/fesm2022/hmcts-opal-frontend-common-interceptors-http-error-constants.mjs +11 -17
- package/fesm2022/hmcts-opal-frontend-common-interceptors-http-error-interfaces.mjs +0 -4
- package/fesm2022/hmcts-opal-frontend-common-interceptors-http-error.mjs +74 -148
- package/fesm2022/hmcts-opal-frontend-common-interceptors-http-retry-constants.mjs +18 -13
- package/fesm2022/hmcts-opal-frontend-common-interceptors-http-retry-interfaces.mjs +0 -4
- package/fesm2022/hmcts-opal-frontend-common-interceptors-http-retry.mjs +65 -134
- package/fesm2022/hmcts-opal-frontend-common-internal-server-error.component-8EP_PgKk.mjs +55 -0
- package/fesm2022/hmcts-opal-frontend-common-pages-access-denied.component-DuQgLlU6.mjs +57 -0
- package/fesm2022/hmcts-opal-frontend-common-pages-account-created.component-DtlFlzU9.mjs +47 -0
- package/fesm2022/hmcts-opal-frontend-common-pages-concurrency-failure.component-BqsP0gj2.mjs +41 -0
- package/fesm2022/hmcts-opal-frontend-common-pages-dashboard-page-interfaces.mjs +0 -4
- package/fesm2022/hmcts-opal-frontend-common-pages-dashboard-page.mjs +112 -62
- package/fesm2022/hmcts-opal-frontend-common-pages-internal-server-error.component-8EP_PgKk.mjs +55 -0
- package/fesm2022/hmcts-opal-frontend-common-pages-permission-denied.component-B3EkD8uw.mjs +41 -0
- package/fesm2022/hmcts-opal-frontend-common-pages-routing-constants.mjs +22 -27
- package/fesm2022/hmcts-opal-frontend-common-pages-routing-interfaces.mjs +0 -4
- package/fesm2022/hmcts-opal-frontend-common-pages-sign-in-stub.component-CT2Bh7gD.mjs +127 -0
- package/fesm2022/hmcts-opal-frontend-common-pages-sign-in.component-BxpouMug.mjs +55 -0
- package/fesm2022/hmcts-opal-frontend-common-pages.mjs +51 -52
- package/fesm2022/hmcts-opal-frontend-common-permission-denied.component-B3EkD8uw.mjs +41 -0
- package/fesm2022/hmcts-opal-frontend-common-pipes-date-format.mjs +41 -28
- package/fesm2022/hmcts-opal-frontend-common-pipes-days-ago.mjs +43 -40
- package/fesm2022/hmcts-opal-frontend-common-pipes-monetary.mjs +43 -39
- package/fesm2022/hmcts-opal-frontend-common-pipes-national-insurance.mjs +41 -29
- package/fesm2022/hmcts-opal-frontend-common-resolvers-title.mjs +37 -25
- package/fesm2022/hmcts-opal-frontend-common-services-app-initializer-service.mjs +68 -91
- package/fesm2022/hmcts-opal-frontend-common-services-app-insights-service.mjs +74 -65
- package/fesm2022/hmcts-opal-frontend-common-services-auth-service-constants.mjs +6 -10
- package/fesm2022/hmcts-opal-frontend-common-services-auth-service-interfaces.mjs +0 -4
- package/fesm2022/hmcts-opal-frontend-common-services-auth-service.mjs +49 -42
- package/fesm2022/hmcts-opal-frontend-common-services-date-service-interfaces.mjs +0 -4
- package/fesm2022/hmcts-opal-frontend-common-services-date-service.mjs +118 -233
- package/fesm2022/hmcts-opal-frontend-common-services-history-transformation-service.mjs +185 -484
- package/fesm2022/hmcts-opal-frontend-common-services-launch-darkly-service-mocks.mjs +12 -11
- package/fesm2022/hmcts-opal-frontend-common-services-launch-darkly-service.mjs +77 -115
- package/fesm2022/hmcts-opal-frontend-common-services-opal-user-service-interfaces.mjs +0 -4
- package/fesm2022/hmcts-opal-frontend-common-services-opal-user-service-mocks.mjs +150 -159
- package/fesm2022/hmcts-opal-frontend-common-services-opal-user-service.mjs +119 -202
- package/fesm2022/hmcts-opal-frontend-common-services-permissions-service.mjs +47 -68
- package/fesm2022/hmcts-opal-frontend-common-services-session-service-constants.mjs +3 -9
- package/fesm2022/hmcts-opal-frontend-common-services-session-service-interfaces.mjs +0 -4
- package/fesm2022/hmcts-opal-frontend-common-services-session-service-mocks.mjs +4 -8
- package/fesm2022/hmcts-opal-frontend-common-services-session-service.mjs +50 -40
- package/fesm2022/hmcts-opal-frontend-common-services-sort-service-interfaces.mjs +0 -4
- package/fesm2022/hmcts-opal-frontend-common-services-sort-service.mjs +56 -96
- package/fesm2022/hmcts-opal-frontend-common-services-transfer-state-service-interfaces.mjs +0 -4
- package/fesm2022/hmcts-opal-frontend-common-services-transfer-state-service-mocks.mjs +19 -26
- package/fesm2022/hmcts-opal-frontend-common-services-transfer-state-service.mjs +71 -99
- package/fesm2022/hmcts-opal-frontend-common-services-transformation-service-constants.mjs +4 -8
- package/fesm2022/hmcts-opal-frontend-common-services-transformation-service-interfaces.mjs +0 -4
- package/fesm2022/hmcts-opal-frontend-common-services-transformation-service.mjs +65 -106
- package/fesm2022/hmcts-opal-frontend-common-services-utils-service.mjs +104 -193
- package/fesm2022/hmcts-opal-frontend-common-sign-in-stub.component-CT2Bh7gD.mjs +127 -0
- package/fesm2022/hmcts-opal-frontend-common-sign-in.component-Dz97ji3i.mjs +55 -0
- package/fesm2022/hmcts-opal-frontend-common-stores-global-constants.mjs +6 -10
- package/fesm2022/hmcts-opal-frontend-common-stores-global-interfaces.mjs +0 -4
- package/fesm2022/hmcts-opal-frontend-common-stores-global-types.mjs +0 -4
- package/fesm2022/hmcts-opal-frontend-common-stores-global.mjs +52 -57
- package/fesm2022/hmcts-opal-frontend-common-types.mjs +0 -4
- package/fesm2022/hmcts-opal-frontend-common-validators-amount.mjs +7 -18
- package/fesm2022/hmcts-opal-frontend-common-validators-date-after-year.mjs +8 -15
- package/fesm2022/hmcts-opal-frontend-common-validators-date-before.mjs +9 -18
- package/fesm2022/hmcts-opal-frontend-common-validators-date-of-birth.mjs +13 -21
- package/fesm2022/hmcts-opal-frontend-common-validators-future-date.mjs +9 -18
- package/fesm2022/hmcts-opal-frontend-common-validators-invalid-value.mjs +6 -12
- package/fesm2022/hmcts-opal-frontend-common-validators-national-insurance-number.mjs +9 -17
- package/fesm2022/hmcts-opal-frontend-common-validators-non-negative-value.mjs +10 -26
- package/fesm2022/hmcts-opal-frontend-common-validators-non-zero-value.mjs +10 -26
- package/fesm2022/hmcts-opal-frontend-common-validators-optional-max-length.mjs +7 -14
- package/fesm2022/hmcts-opal-frontend-common-validators-optional-valid-date.mjs +13 -26
- package/fesm2022/hmcts-opal-frontend-common-validators-optional-valid-telephone.mjs +12 -17
- package/fesm2022/hmcts-opal-frontend-common-validators-over-eighteen.mjs +19 -48
- package/fesm2022/hmcts-opal-frontend-common-validators-past-date.mjs +11 -19
- package/fesm2022/hmcts-opal-frontend-common-validators-pattern-validator.mjs +7 -26
- package/fesm2022/hmcts-opal-frontend-common-validators-valid-value.mjs +6 -12
- package/fesm2022/hmcts-opal-frontend-common.mjs +56 -76
- package/package.json +6 -1
- package/types/hmcts-opal-frontend-common-components-abstract-abstract-account-summary-base.d.ts +95 -104
- package/types/hmcts-opal-frontend-common-components-abstract-abstract-creditor-details-base.d.ts +75 -78
- package/types/hmcts-opal-frontend-common-components-abstract-abstract-form-alias-base-interfaces.d.ts +4 -7
- package/types/hmcts-opal-frontend-common-components-abstract-abstract-form-alias-base.d.ts +123 -126
- package/types/hmcts-opal-frontend-common-components-abstract-abstract-form-array-base-interfaces.d.ts +4 -7
- package/types/hmcts-opal-frontend-common-components-abstract-abstract-form-array-base.d.ts +156 -159
- package/types/hmcts-opal-frontend-common-components-abstract-abstract-form-array-parent-base.d.ts +13 -16
- package/types/hmcts-opal-frontend-common-components-abstract-abstract-form-array-removal-base-interfaces.d.ts +5 -7
- package/types/hmcts-opal-frontend-common-components-abstract-abstract-form-array-removal-base.d.ts +46 -50
- package/types/hmcts-opal-frontend-common-components-abstract-abstract-form-base-interfaces.d.ts +27 -35
- package/types/hmcts-opal-frontend-common-components-abstract-abstract-form-base.d.ts +323 -328
- package/types/hmcts-opal-frontend-common-components-abstract-abstract-form-parent-base.d.ts +33 -36
- package/types/hmcts-opal-frontend-common-components-abstract-abstract-nested-form-base.d.ts +75 -78
- package/types/hmcts-opal-frontend-common-components-abstract-abstract-report-instances-table-base.d.ts +15 -13
- package/types/hmcts-opal-frontend-common-components-abstract-abstract-report-summary-list-base-constants.d.ts +16 -19
- package/types/hmcts-opal-frontend-common-components-abstract-abstract-report-summary-list-base-interfaces.d.ts +23 -30
- package/types/hmcts-opal-frontend-common-components-abstract-abstract-report-summary-list-base-types.d.ts +1 -3
- package/types/hmcts-opal-frontend-common-components-abstract-abstract-report-summary-list-base.d.ts +179 -188
- package/types/hmcts-opal-frontend-common-components-abstract-abstract-sortable-table-interfaces.d.ts +6 -9
- package/types/hmcts-opal-frontend-common-components-abstract-abstract-sortable-table-pagination.d.ts +66 -66
- package/types/hmcts-opal-frontend-common-components-abstract-abstract-sortable-table-types.d.ts +2 -5
- package/types/hmcts-opal-frontend-common-components-abstract-abstract-sortable-table.d.ts +112 -113
- package/types/hmcts-opal-frontend-common-components-abstract-abstract-tab-data.d.ts +83 -86
- package/types/hmcts-opal-frontend-common-components-abstract-abstract-table-filter-interfaces.d.ts +12 -15
- package/types/hmcts-opal-frontend-common-components-abstract-abstract-table-filter-types.d.ts +1 -3
- package/types/hmcts-opal-frontend-common-components-abstract-abstract-table-filter.d.ts +113 -116
- package/types/hmcts-opal-frontend-common-components-abstract-interfaces.d.ts +16 -23
- package/types/hmcts-opal-frontend-common-components-alphagov-alphagov-accessible-autocomplete-interfaces.d.ts +4 -6
- package/types/hmcts-opal-frontend-common-components-alphagov-alphagov-accessible-autocomplete.d.ts +136 -95
- package/types/hmcts-opal-frontend-common-components-custom-custom-accessible-monetary.d.ts +35 -29
- package/types/hmcts-opal-frontend-common-components-custom-custom-account-information-custom-account-information-item-custom-account-information-item-label.d.ts +6 -9
- package/types/hmcts-opal-frontend-common-components-custom-custom-account-information-custom-account-information-item-custom-account-information-item-value.d.ts +6 -9
- package/types/hmcts-opal-frontend-common-components-custom-custom-account-information-custom-account-information-item.d.ts +12 -10
- package/types/hmcts-opal-frontend-common-components-custom-custom-account-information.d.ts +5 -8
- package/types/hmcts-opal-frontend-common-components-custom-custom-action-links.d.ts +18 -12
- package/types/hmcts-opal-frontend-common-components-custom-custom-deferred-live-region-announcement.d.ts +67 -57
- package/types/hmcts-opal-frontend-common-components-custom-custom-horizontal-scroll-pane.d.ts +5 -8
- package/types/hmcts-opal-frontend-common-components-custom-custom-page-header.d.ts +5 -8
- package/types/hmcts-opal-frontend-common-components-custom-custom-scrollable-panes-custom-scrollable-panes-inner-pane.d.ts +16 -10
- package/types/hmcts-opal-frontend-common-components-custom-custom-scrollable-panes.d.ts +11 -9
- package/types/hmcts-opal-frontend-common-components-custom-custom-summary-metric-bar-custom-summary-metric-bar-item-custom-summary-metric-bar-item-label.d.ts +12 -10
- package/types/hmcts-opal-frontend-common-components-custom-custom-summary-metric-bar-custom-summary-metric-bar-item-custom-summary-metric-bar-item-value.d.ts +12 -10
- package/types/hmcts-opal-frontend-common-components-custom-custom-summary-metric-bar-custom-summary-metric-bar-item.d.ts +26 -20
- package/types/hmcts-opal-frontend-common-components-custom-custom-summary-metric-bar.d.ts +5 -8
- package/types/hmcts-opal-frontend-common-components-custom-custom-vertical-scroll-pane-custom-vertical-scroll-pane-inner-pane.d.ts +16 -10
- package/types/hmcts-opal-frontend-common-components-custom-custom-vertical-scroll-pane-custom-vertical-scroll-pane-outer-pane.d.ts +11 -9
- package/types/hmcts-opal-frontend-common-components-custom-custom-vertical-scroll-pane.d.ts +5 -8
- package/types/hmcts-opal-frontend-common-components-govuk-govuk-accordion.d.ts +72 -64
- package/types/hmcts-opal-frontend-common-components-govuk-govuk-back-link.d.ts +16 -17
- package/types/hmcts-opal-frontend-common-components-govuk-govuk-button.d.ts +29 -17
- package/types/hmcts-opal-frontend-common-components-govuk-govuk-cancel-link.d.ts +22 -18
- package/types/hmcts-opal-frontend-common-components-govuk-govuk-checkboxes-interfaces.d.ts +14 -16
- package/types/hmcts-opal-frontend-common-components-govuk-govuk-checkboxes.d.ts +96 -43
- package/types/hmcts-opal-frontend-common-components-govuk-govuk-date-input-interfaces.d.ts +13 -15
- package/types/hmcts-opal-frontend-common-components-govuk-govuk-date-input.d.ts +75 -34
- package/types/hmcts-opal-frontend-common-components-govuk-govuk-details.d.ts +11 -9
- package/types/hmcts-opal-frontend-common-components-govuk-govuk-error-summary.d.ts +23 -19
- package/types/hmcts-opal-frontend-common-components-govuk-govuk-footer-interfaces.d.ts +5 -7
- package/types/hmcts-opal-frontend-common-components-govuk-govuk-footer.d.ts +14 -13
- package/types/hmcts-opal-frontend-common-components-govuk-govuk-header-interfaces.d.ts +4 -6
- package/types/hmcts-opal-frontend-common-components-govuk-govuk-header.d.ts +25 -23
- package/types/hmcts-opal-frontend-common-components-govuk-govuk-heading-with-caption-types.d.ts +1 -3
- package/types/hmcts-opal-frontend-common-components-govuk-govuk-heading-with-caption.d.ts +32 -14
- package/types/hmcts-opal-frontend-common-components-govuk-govuk-inset-text.d.ts +16 -10
- package/types/hmcts-opal-frontend-common-components-govuk-govuk-list-govuk-list-link.d.ts +16 -12
- package/types/hmcts-opal-frontend-common-components-govuk-govuk-list.d.ts +5 -8
- package/types/hmcts-opal-frontend-common-components-govuk-govuk-notification-banner.d.ts +37 -20
- package/types/hmcts-opal-frontend-common-components-govuk-govuk-pagination.d.ts +59 -47
- package/types/hmcts-opal-frontend-common-components-govuk-govuk-panel.d.ts +12 -10
- package/types/hmcts-opal-frontend-common-components-govuk-govuk-radio-interfaces.d.ts +17 -20
- package/types/hmcts-opal-frontend-common-components-govuk-govuk-radio.d.ts +162 -101
- package/types/hmcts-opal-frontend-common-components-govuk-govuk-select-interfaces.d.ts +4 -6
- package/types/hmcts-opal-frontend-common-components-govuk-govuk-select.d.ts +67 -26
- package/types/hmcts-opal-frontend-common-components-govuk-govuk-skip-link.d.ts +20 -0
- package/types/hmcts-opal-frontend-common-components-govuk-govuk-summary-card-list.d.ts +67 -35
- package/types/hmcts-opal-frontend-common-components-govuk-govuk-summary-list.d.ts +80 -47
- package/types/hmcts-opal-frontend-common-components-govuk-govuk-table.d.ts +47 -30
- package/types/hmcts-opal-frontend-common-components-govuk-govuk-tabs-govuk-tabs-list-item.d.ts +44 -34
- package/types/hmcts-opal-frontend-common-components-govuk-govuk-tabs-govuk-tabs-panel.d.ts +19 -17
- package/types/hmcts-opal-frontend-common-components-govuk-govuk-tabs.d.ts +44 -36
- package/types/hmcts-opal-frontend-common-components-govuk-govuk-tag.d.ts +16 -10
- package/types/hmcts-opal-frontend-common-components-govuk-govuk-task-list.d.ts +35 -17
- package/types/hmcts-opal-frontend-common-components-govuk-govuk-text-area.d.ts +83 -29
- package/types/hmcts-opal-frontend-common-components-govuk-govuk-text-input-prefix-suffix.d.ts +74 -28
- package/types/hmcts-opal-frontend-common-components-govuk-govuk-text-input.d.ts +65 -23
- package/types/hmcts-opal-frontend-common-components-govuk-helpers.d.ts +1 -3
- package/types/hmcts-opal-frontend-common-components-hod-hod-loading-spinner.d.ts +18 -12
- package/types/hmcts-opal-frontend-common-components-moj-moj-alert.d.ts +89 -69
- package/types/hmcts-opal-frontend-common-components-moj-moj-badge.d.ts +16 -10
- package/types/hmcts-opal-frontend-common-components-moj-moj-button-menu-moj-button-menu-item.d.ts +16 -12
- package/types/hmcts-opal-frontend-common-components-moj-moj-button-menu.d.ts +32 -26
- package/types/hmcts-opal-frontend-common-components-moj-moj-date-picker.d.ts +116 -60
- package/types/hmcts-opal-frontend-common-components-moj-moj-filter-moj-filter-panel-moj-filter-panel-header.d.ts +11 -9
- package/types/hmcts-opal-frontend-common-components-moj-moj-filter-moj-filter-panel-moj-filter-panel-option-moj-filter-panel-option-form-group-item.d.ts +33 -29
- package/types/hmcts-opal-frontend-common-components-moj-moj-filter-moj-filter-panel-moj-filter-panel-option-moj-filter-panel-option-form-group-keyword.d.ts +34 -22
- package/types/hmcts-opal-frontend-common-components-moj-moj-filter-moj-filter-panel-moj-filter-panel-option.d.ts +22 -18
- package/types/hmcts-opal-frontend-common-components-moj-moj-filter-moj-filter-panel-moj-filter-panel-selected-moj-filter-panel-selected-tag.d.ts +32 -24
- package/types/hmcts-opal-frontend-common-components-moj-moj-filter-moj-filter-panel-moj-filter-panel-selected.d.ts +29 -21
- package/types/hmcts-opal-frontend-common-components-moj-moj-filter-moj-filter-panel.d.ts +5 -8
- package/types/hmcts-opal-frontend-common-components-moj-moj-filter.d.ts +23 -17
- package/types/hmcts-opal-frontend-common-components-moj-moj-header-interfaces.d.ts +4 -6
- package/types/hmcts-opal-frontend-common-components-moj-moj-header.d.ts +25 -23
- package/types/hmcts-opal-frontend-common-components-moj-moj-inset-text.d.ts +16 -10
- package/types/hmcts-opal-frontend-common-components-moj-moj-notification-badge.d.ts +11 -9
- package/types/hmcts-opal-frontend-common-components-moj-moj-page-header.d.ts +11 -9
- package/types/hmcts-opal-frontend-common-components-moj-moj-pagination.d.ts +99 -83
- package/types/hmcts-opal-frontend-common-components-moj-moj-primary-navigation.d.ts +102 -67
- package/types/hmcts-opal-frontend-common-components-moj-moj-sortable-table.d.ts +83 -51
- package/types/hmcts-opal-frontend-common-components-moj-moj-sub-navigation.d.ts +62 -42
- package/types/hmcts-opal-frontend-common-components-moj-moj-ticket-panel.d.ts +21 -11
- package/types/hmcts-opal-frontend-common-components-moj-moj-timeline.d.ts +8 -12
- package/types/hmcts-opal-frontend-common-constants.d.ts +20 -25
- package/types/hmcts-opal-frontend-common-directives-capitalisation.d.ts +17 -15
- package/types/hmcts-opal-frontend-common-directives-govuk-button.d.ts +33 -21
- package/types/hmcts-opal-frontend-common-directives-moj-multi-select.d.ts +92 -69
- package/types/hmcts-opal-frontend-common-directives-trim-leading-trailing-whitespace.d.ts +13 -11
- package/types/hmcts-opal-frontend-common-guards-account.d.ts +2 -5
- package/types/hmcts-opal-frontend-common-guards-auth.d.ts +4 -7
- package/types/hmcts-opal-frontend-common-guards-business-unit-route-permissions.d.ts +14 -19
- package/types/hmcts-opal-frontend-common-guards-can-deactivate-interfaces.d.ts +4 -7
- package/types/hmcts-opal-frontend-common-guards-can-deactivate-types.d.ts +3 -6
- package/types/hmcts-opal-frontend-common-guards-can-deactivate.d.ts +4 -8
- package/types/hmcts-opal-frontend-common-guards-feature-flag.d.ts +4 -7
- package/types/hmcts-opal-frontend-common-guards-has-flow-state.d.ts +2 -5
- package/types/hmcts-opal-frontend-common-guards-has-url-state-match.d.ts +2 -5
- package/types/hmcts-opal-frontend-common-guards-helpers.d.ts +8 -15
- package/types/hmcts-opal-frontend-common-guards-route-permissions.d.ts +2 -5
- package/types/hmcts-opal-frontend-common-guards-signed-in.d.ts +2 -5
- package/types/hmcts-opal-frontend-common-guards-types.d.ts +2 -5
- package/types/hmcts-opal-frontend-common-interceptors-content-digest.d.ts +2 -5
- package/types/hmcts-opal-frontend-common-interceptors-http-error-constants.d.ts +4 -9
- package/types/hmcts-opal-frontend-common-interceptors-http-error-interfaces.d.ts +9 -11
- package/types/hmcts-opal-frontend-common-interceptors-http-error.d.ts +2 -5
- package/types/hmcts-opal-frontend-common-interceptors-http-retry-constants.d.ts +5 -11
- package/types/hmcts-opal-frontend-common-interceptors-http-retry-interfaces.d.ts +7 -9
- package/types/hmcts-opal-frontend-common-interceptors-http-retry.d.ts +9 -15
- package/types/hmcts-opal-frontend-common-pages-dashboard-page-interfaces.d.ts +17 -21
- package/types/hmcts-opal-frontend-common-pages-dashboard-page.d.ts +89 -96
- package/types/hmcts-opal-frontend-common-pages-routing-constants.d.ts +3 -7
- package/types/hmcts-opal-frontend-common-pages-routing-interfaces.d.ts +24 -29
- package/types/hmcts-opal-frontend-common-pages.d.ts +2 -5
- package/types/hmcts-opal-frontend-common-pipes-date-format.d.ts +8 -11
- package/types/hmcts-opal-frontend-common-pipes-days-ago.d.ts +7 -10
- package/types/hmcts-opal-frontend-common-pipes-monetary.d.ts +8 -11
- package/types/hmcts-opal-frontend-common-pipes-national-insurance.d.ts +7 -10
- package/types/hmcts-opal-frontend-common-resolvers-title.d.ts +8 -11
- package/types/hmcts-opal-frontend-common-services-app-initializer-service.d.ts +37 -41
- package/types/hmcts-opal-frontend-common-services-app-insights-service.d.ts +14 -17
- package/types/hmcts-opal-frontend-common-services-auth-service-constants.d.ts +2 -5
- package/types/hmcts-opal-frontend-common-services-auth-service-interfaces.d.ts +6 -8
- package/types/hmcts-opal-frontend-common-services-auth-service.d.ts +8 -12
- package/types/hmcts-opal-frontend-common-services-date-service-interfaces.d.ts +7 -9
- package/types/hmcts-opal-frontend-common-services-date-service.d.ts +149 -153
- package/types/hmcts-opal-frontend-common-services-history-transformation-service.d.ts +104 -125
- package/types/hmcts-opal-frontend-common-services-launch-darkly-service-mocks.d.ts +13 -16
- package/types/hmcts-opal-frontend-common-services-launch-darkly-service.d.ts +46 -49
- package/types/hmcts-opal-frontend-common-services-opal-user-service-interfaces.d.ts +28 -36
- package/types/hmcts-opal-frontend-common-services-opal-user-service-mocks.d.ts +4 -9
- package/types/hmcts-opal-frontend-common-services-opal-user-service.d.ts +97 -104
- package/types/hmcts-opal-frontend-common-services-permissions-service.d.ts +33 -36
- package/types/hmcts-opal-frontend-common-services-session-service-constants.d.ts +2 -5
- package/types/hmcts-opal-frontend-common-services-session-service-interfaces.d.ts +6 -9
- package/types/hmcts-opal-frontend-common-services-session-service-mocks.d.ts +2 -5
- package/types/hmcts-opal-frontend-common-services-session-service.d.ts +17 -20
- package/types/hmcts-opal-frontend-common-services-sort-service-interfaces.d.ts +9 -13
- package/types/hmcts-opal-frontend-common-services-sort-service.d.ts +64 -67
- package/types/hmcts-opal-frontend-common-services-transfer-state-service-interfaces.d.ts +20 -26
- package/types/hmcts-opal-frontend-common-services-transfer-state-service-mocks.d.ts +11 -17
- package/types/hmcts-opal-frontend-common-services-transfer-state-service.d.ts +44 -47
- package/types/hmcts-opal-frontend-common-services-transformation-service-constants.d.ts +2 -5
- package/types/hmcts-opal-frontend-common-services-transformation-service-interfaces.d.ts +12 -14
- package/types/hmcts-opal-frontend-common-services-transformation-service.d.ts +41 -44
- package/types/hmcts-opal-frontend-common-services-utils-service.d.ts +119 -114
- package/types/hmcts-opal-frontend-common-stores-global-constants.d.ts +2 -5
- package/types/hmcts-opal-frontend-common-stores-global-interfaces.d.ts +6 -8
- package/types/hmcts-opal-frontend-common-stores-global-types.d.ts +2 -5
- package/types/hmcts-opal-frontend-common-stores-global.d.ts +52 -57
- package/types/hmcts-opal-frontend-common-types.d.ts +1 -3
- package/types/hmcts-opal-frontend-common-validators-amount.d.ts +2 -5
- package/types/hmcts-opal-frontend-common-validators-date-after-year.d.ts +2 -5
- package/types/hmcts-opal-frontend-common-validators-date-before.d.ts +2 -5
- package/types/hmcts-opal-frontend-common-validators-date-of-birth.d.ts +2 -5
- package/types/hmcts-opal-frontend-common-validators-future-date.d.ts +2 -5
- package/types/hmcts-opal-frontend-common-validators-invalid-value.d.ts +2 -5
- package/types/hmcts-opal-frontend-common-validators-national-insurance-number.d.ts +2 -5
- package/types/hmcts-opal-frontend-common-validators-non-negative-value.d.ts +2 -5
- package/types/hmcts-opal-frontend-common-validators-non-zero-value.d.ts +2 -5
- package/types/hmcts-opal-frontend-common-validators-optional-max-length.d.ts +2 -5
- package/types/hmcts-opal-frontend-common-validators-optional-valid-date.d.ts +2 -5
- package/types/hmcts-opal-frontend-common-validators-optional-valid-telephone.d.ts +2 -5
- package/types/hmcts-opal-frontend-common-validators-over-eighteen.d.ts +3 -6
- package/types/hmcts-opal-frontend-common-validators-past-date.d.ts +2 -5
- package/types/hmcts-opal-frontend-common-validators-pattern-validator.d.ts +2 -5
- package/types/hmcts-opal-frontend-common-validators-valid-value.d.ts +2 -5
- package/types/hmcts-opal-frontend-common.d.ts +23 -31
- package/fesm2022/hmcts-opal-frontend-common-access-denied.component-DeYZkvfj.mjs +0 -21
- package/fesm2022/hmcts-opal-frontend-common-account-created.component-DUd7qbuq.mjs +0 -15
- package/fesm2022/hmcts-opal-frontend-common-concurrency-failure.component-BfPeI980.mjs +0 -14
- package/fesm2022/hmcts-opal-frontend-common-internal-server-error.component-DzHlkMqq.mjs +0 -26
- package/fesm2022/hmcts-opal-frontend-common-pages-access-denied.component-DeYZkvfj.mjs +0 -21
- package/fesm2022/hmcts-opal-frontend-common-pages-account-created.component-DUd7qbuq.mjs +0 -15
- package/fesm2022/hmcts-opal-frontend-common-pages-concurrency-failure.component-BfPeI980.mjs +0 -14
- package/fesm2022/hmcts-opal-frontend-common-pages-internal-server-error.component-DzHlkMqq.mjs +0 -26
- package/fesm2022/hmcts-opal-frontend-common-pages-permission-denied.component-C28WmjEQ.mjs +0 -14
- package/fesm2022/hmcts-opal-frontend-common-pages-sign-in-stub.component-BKGzFqXC.mjs +0 -42
- package/fesm2022/hmcts-opal-frontend-common-pages-sign-in.component-DgVojWf0.mjs +0 -28
- package/fesm2022/hmcts-opal-frontend-common-permission-denied.component-C28WmjEQ.mjs +0 -14
- package/fesm2022/hmcts-opal-frontend-common-sign-in-stub.component-BKGzFqXC.mjs +0 -42
- package/fesm2022/hmcts-opal-frontend-common-sign-in.component-BZz2kmre.mjs +0 -28
|
@@ -1,205 +1,122 @@
|
|
|
1
|
-
import { HttpClient } from
|
|
2
|
-
import * as i0 from
|
|
3
|
-
import {
|
|
4
|
-
import { GlobalStore } from
|
|
5
|
-
import {
|
|
6
|
-
|
|
7
|
-
const OPAL_USER_PATHS = {
|
|
8
|
-
loggedInUserState: '/api/user-state',
|
|
9
|
-
};
|
|
10
|
-
|
|
11
|
-
/**
|
|
12
|
-
* Maps Redis-backed user-state response statuses to the existing frontend user-state contract.
|
|
13
|
-
*
|
|
14
|
-
* Keep the input type as {@link OpalUserStateResponseStatus} and the output type as {@link OpalUserStateStatus}
|
|
15
|
-
* because the two contracts intentionally differ. In particular, the API returns `PENDING`, while the frontend
|
|
16
|
-
* account guard and consumers expect `created`.
|
|
17
|
-
*/
|
|
1
|
+
import { HttpClient } from "@angular/common/http";
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import { Injectable, inject } from "@angular/core";
|
|
4
|
+
import { GlobalStore } from "@hmcts/opal-frontend-common/stores/global";
|
|
5
|
+
import { catchError, filter, finalize, map, of, shareReplay, tap, throwError } from "rxjs";
|
|
6
|
+
const OPAL_USER_PATHS = { loggedInUserState: "/api/user-state" };
|
|
18
7
|
const OPAL_USER_STATE_RESPONSE_STATUS = {
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
8
|
+
ACTIVE: "active",
|
|
9
|
+
PENDING: "created",
|
|
10
|
+
SUSPENDED: "suspended",
|
|
11
|
+
DEACTIVATED: "deactivated"
|
|
23
12
|
};
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
clearLocalUserStateCache() {
|
|
132
|
-
this.userStateRequestGeneration += 1;
|
|
133
|
-
this.userStateCacheExpiresAtMilliseconds = 0;
|
|
134
|
-
this.inFlightUserState$ = undefined;
|
|
135
|
-
}
|
|
136
|
-
/**
|
|
137
|
-
* Retrieves the logged-in user's state as an observable.
|
|
138
|
-
*
|
|
139
|
-
* Uses the global store as a local cache until the effective user-state TTL expires, shares concurrent HTTP
|
|
140
|
-
* requests, and ignores stale responses after the local cache has been invalidated.
|
|
141
|
-
*
|
|
142
|
-
* @returns {Observable<IOpalUserState>} An observable that emits the logged-in user's state.
|
|
143
|
-
*/
|
|
144
|
-
getLoggedInUserState() {
|
|
145
|
-
const cachedUserState = this.getCachedUserState();
|
|
146
|
-
if (cachedUserState) {
|
|
147
|
-
return of(cachedUserState);
|
|
148
|
-
}
|
|
149
|
-
if (this.inFlightUserState$) {
|
|
150
|
-
return this.inFlightUserState$;
|
|
151
|
-
}
|
|
152
|
-
const requestGeneration = this.userStateRequestGeneration;
|
|
153
|
-
this.inFlightUserState$ = this.http
|
|
154
|
-
.get(OPAL_USER_PATHS.loggedInUserState, { observe: 'response' })
|
|
155
|
-
.pipe(map((response) => ({
|
|
156
|
-
userState: this.toOpalUserState(this.getUserStateResponseBody(response)),
|
|
157
|
-
userStateCacheTtlMilliseconds: this.getUserStateCacheTtlMilliseconds(response),
|
|
158
|
-
requestGeneration,
|
|
159
|
-
})), filter(({ requestGeneration }) => requestGeneration === this.userStateRequestGeneration), tap(({ userState, userStateCacheTtlMilliseconds }) => {
|
|
160
|
-
this.globalStore.setUserState(userState);
|
|
161
|
-
this.userStateCacheExpiresAtMilliseconds = Date.now() + userStateCacheTtlMilliseconds;
|
|
162
|
-
}), map(({ userState }) => userState), catchError((error) => {
|
|
163
|
-
if (requestGeneration === this.userStateRequestGeneration) {
|
|
164
|
-
this.userStateCacheExpiresAtMilliseconds = 0;
|
|
165
|
-
}
|
|
166
|
-
return throwError(() => error);
|
|
167
|
-
}), finalize(() => {
|
|
168
|
-
if (requestGeneration === this.userStateRequestGeneration) {
|
|
169
|
-
this.inFlightUserState$ = undefined;
|
|
170
|
-
}
|
|
171
|
-
}), shareReplay(1));
|
|
172
|
-
return this.inFlightUserState$;
|
|
173
|
-
}
|
|
174
|
-
/**
|
|
175
|
-
* Clears the global store user state and invalidates local user-state cache controls.
|
|
176
|
-
*
|
|
177
|
-
* Useful for logout and identity switches to avoid reusing stale state or accepting stale in-flight responses.
|
|
178
|
-
*/
|
|
179
|
-
clearUserStateCache() {
|
|
180
|
-
this.globalStore.setUserState({});
|
|
181
|
-
this.clearLocalUserStateCache();
|
|
182
|
-
}
|
|
183
|
-
/**
|
|
184
|
-
* Fetches the latest user state from the Redis-backed frontend endpoint, bypassing the current local cache.
|
|
185
|
-
*
|
|
186
|
-
* @returns An Observable that emits the current {@link IOpalUserState}.
|
|
187
|
-
*/
|
|
188
|
-
refreshUserState() {
|
|
189
|
-
this.clearLocalUserStateCache();
|
|
190
|
-
return this.getLoggedInUserState();
|
|
191
|
-
}
|
|
192
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: OpalUserService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
193
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: OpalUserService, providedIn: 'root' });
|
|
194
|
-
}
|
|
195
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: OpalUserService, decorators: [{
|
|
196
|
-
type: Injectable,
|
|
197
|
-
args: [{ providedIn: 'root' }]
|
|
198
|
-
}] });
|
|
199
|
-
|
|
200
|
-
/**
|
|
201
|
-
* Generated bundle index. Do not edit.
|
|
202
|
-
*/
|
|
203
|
-
|
|
13
|
+
const USER_STATE_CACHE_TTL_HEADER = "X-OPAL-User-State-Cache-TTL-Ms";
|
|
14
|
+
var OpalUserService = class OpalUserService {
|
|
15
|
+
http = inject(HttpClient);
|
|
16
|
+
globalStore = inject(GlobalStore);
|
|
17
|
+
inFlightUserState$;
|
|
18
|
+
userStateRequestGeneration = 0;
|
|
19
|
+
userStateCacheExpiresAtMilliseconds = 0;
|
|
20
|
+
toOpalUserStatus(status) {
|
|
21
|
+
return status ? OPAL_USER_STATE_RESPONSE_STATUS[status] : null;
|
|
22
|
+
}
|
|
23
|
+
getUserStateDomain() {
|
|
24
|
+
const userStateDomain = this.globalStore.userStateDomain();
|
|
25
|
+
if (typeof userStateDomain === "string" && userStateDomain.trim()) return userStateDomain.trim();
|
|
26
|
+
throw new Error("User state domain is required before loading user permissions.");
|
|
27
|
+
}
|
|
28
|
+
toOpalUserState(userState) {
|
|
29
|
+
const userStateDomain = this.getUserStateDomain();
|
|
30
|
+
const userStateDomainState = userState.domains?.[userStateDomain];
|
|
31
|
+
if (!userStateDomainState) throw new Error(`User state response does not include required domain '${userStateDomain}'.`);
|
|
32
|
+
return {
|
|
33
|
+
user_id: userState.user_id,
|
|
34
|
+
username: userState.username,
|
|
35
|
+
name: userState.name,
|
|
36
|
+
status: this.toOpalUserStatus(userState.status),
|
|
37
|
+
version: userState.version,
|
|
38
|
+
business_unit_users: userStateDomainState.business_unit_users
|
|
39
|
+
};
|
|
40
|
+
}
|
|
41
|
+
getUserStateResponseBody(response) {
|
|
42
|
+
if (!response.body) throw new Error("User state response body is required.");
|
|
43
|
+
return response.body;
|
|
44
|
+
}
|
|
45
|
+
isValidCachedUserState(userState) {
|
|
46
|
+
return typeof userState.user_id === "number" && userState.user_id > 0;
|
|
47
|
+
}
|
|
48
|
+
getCachedUserState() {
|
|
49
|
+
const userState = this.globalStore.userState();
|
|
50
|
+
if (this.isValidCachedUserState(userState) && Date.now() < this.userStateCacheExpiresAtMilliseconds) return userState;
|
|
51
|
+
return null;
|
|
52
|
+
}
|
|
53
|
+
getUserStateCacheTtlMilliseconds(response) {
|
|
54
|
+
const configuredTtlMilliseconds = this.globalStore.userStateCacheExpirationMilliseconds();
|
|
55
|
+
const responseTtlHeader = response.headers.get(USER_STATE_CACHE_TTL_HEADER);
|
|
56
|
+
if (responseTtlHeader === null) return configuredTtlMilliseconds;
|
|
57
|
+
const responseTtlMilliseconds = Number(responseTtlHeader);
|
|
58
|
+
if (Number.isFinite(responseTtlMilliseconds) && responseTtlMilliseconds >= 0) return Math.min(responseTtlMilliseconds, configuredTtlMilliseconds);
|
|
59
|
+
return configuredTtlMilliseconds;
|
|
60
|
+
}
|
|
61
|
+
clearLocalUserStateCache() {
|
|
62
|
+
this.userStateRequestGeneration += 1;
|
|
63
|
+
this.userStateCacheExpiresAtMilliseconds = 0;
|
|
64
|
+
this.inFlightUserState$ = void 0;
|
|
65
|
+
}
|
|
66
|
+
getLoggedInUserState() {
|
|
67
|
+
const cachedUserState = this.getCachedUserState();
|
|
68
|
+
if (cachedUserState) return of(cachedUserState);
|
|
69
|
+
if (this.inFlightUserState$) return this.inFlightUserState$;
|
|
70
|
+
const requestGeneration = this.userStateRequestGeneration;
|
|
71
|
+
this.inFlightUserState$ = this.http.get(OPAL_USER_PATHS.loggedInUserState, { observe: "response" }).pipe(map((response) => ({
|
|
72
|
+
userState: this.toOpalUserState(this.getUserStateResponseBody(response)),
|
|
73
|
+
userStateCacheTtlMilliseconds: this.getUserStateCacheTtlMilliseconds(response),
|
|
74
|
+
requestGeneration
|
|
75
|
+
})), filter(({ requestGeneration }) => requestGeneration === this.userStateRequestGeneration), tap(({ userState, userStateCacheTtlMilliseconds }) => {
|
|
76
|
+
this.globalStore.setUserState(userState);
|
|
77
|
+
this.userStateCacheExpiresAtMilliseconds = Date.now() + userStateCacheTtlMilliseconds;
|
|
78
|
+
}), map(({ userState }) => userState), catchError((error) => {
|
|
79
|
+
if (requestGeneration === this.userStateRequestGeneration) this.userStateCacheExpiresAtMilliseconds = 0;
|
|
80
|
+
return throwError(() => error);
|
|
81
|
+
}), finalize(() => {
|
|
82
|
+
if (requestGeneration === this.userStateRequestGeneration) this.inFlightUserState$ = void 0;
|
|
83
|
+
}), shareReplay(1));
|
|
84
|
+
return this.inFlightUserState$;
|
|
85
|
+
}
|
|
86
|
+
clearUserStateCache() {
|
|
87
|
+
this.globalStore.setUserState({});
|
|
88
|
+
this.clearLocalUserStateCache();
|
|
89
|
+
}
|
|
90
|
+
refreshUserState() {
|
|
91
|
+
this.clearLocalUserStateCache();
|
|
92
|
+
return this.getLoggedInUserState();
|
|
93
|
+
}
|
|
94
|
+
static ɵfac = i0.ɵɵngDeclareFactory({
|
|
95
|
+
minVersion: "12.0.0",
|
|
96
|
+
version: "21.2.25",
|
|
97
|
+
ngImport: i0,
|
|
98
|
+
type: OpalUserService,
|
|
99
|
+
deps: [],
|
|
100
|
+
target: i0.ɵɵFactoryTarget.Injectable
|
|
101
|
+
});
|
|
102
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({
|
|
103
|
+
minVersion: "12.0.0",
|
|
104
|
+
version: "21.2.25",
|
|
105
|
+
ngImport: i0,
|
|
106
|
+
type: OpalUserService,
|
|
107
|
+
providedIn: "root"
|
|
108
|
+
});
|
|
109
|
+
};
|
|
110
|
+
i0.ɵɵngDeclareClassMetadata({
|
|
111
|
+
minVersion: "12.0.0",
|
|
112
|
+
version: "21.2.25",
|
|
113
|
+
ngImport: i0,
|
|
114
|
+
type: OpalUserService,
|
|
115
|
+
decorators: [{
|
|
116
|
+
type: Injectable,
|
|
117
|
+
args: [{ providedIn: "root" }]
|
|
118
|
+
}]
|
|
119
|
+
});
|
|
204
120
|
export { OpalUserService };
|
|
205
|
-
|
|
121
|
+
|
|
122
|
+
//# sourceMappingURL=hmcts-opal-frontend-common-services-opal-user-service.mjs.map
|
|
@@ -1,69 +1,48 @@
|
|
|
1
|
-
import * as i0 from
|
|
2
|
-
import { Injectable } from
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
hasBusinessUnitPermissionAccess(permissionId, businessUnitId, roles) {
|
|
47
|
-
if (roles?.length) {
|
|
48
|
-
return roles.some((role) => role.business_unit_id === businessUnitId &&
|
|
49
|
-
role.permissions.some((permission) => permission.permission_id === permissionId));
|
|
50
|
-
}
|
|
51
|
-
// if we don't have any roles, we can't have any permissions
|
|
52
|
-
return true;
|
|
53
|
-
}
|
|
54
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: PermissionsService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
55
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: PermissionsService, providedIn: 'root' });
|
|
56
|
-
}
|
|
57
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: PermissionsService, decorators: [{
|
|
58
|
-
type: Injectable,
|
|
59
|
-
args: [{
|
|
60
|
-
providedIn: 'root',
|
|
61
|
-
}]
|
|
62
|
-
}] });
|
|
63
|
-
|
|
64
|
-
/**
|
|
65
|
-
* Generated bundle index. Do not edit.
|
|
66
|
-
*/
|
|
67
|
-
|
|
1
|
+
import * as i0 from "@angular/core";
|
|
2
|
+
import { Injectable } from "@angular/core";
|
|
3
|
+
var PermissionsService = class PermissionsService {
|
|
4
|
+
getUniquePermissions(userState) {
|
|
5
|
+
const roles = userState ? userState["business_unit_users"] : null;
|
|
6
|
+
if (!roles) return [];
|
|
7
|
+
const permissionIds = roles.flatMap((role) => {
|
|
8
|
+
return role.permissions.map(({ permission_id: permissionId }) => permissionId);
|
|
9
|
+
});
|
|
10
|
+
return [...new Set(permissionIds)];
|
|
11
|
+
}
|
|
12
|
+
hasPermissionAccess(permissionId, roles) {
|
|
13
|
+
if (roles?.length) return roles.some((role) => role.permissions.some((permission) => permission.permission_id === permissionId));
|
|
14
|
+
return true;
|
|
15
|
+
}
|
|
16
|
+
hasBusinessUnitPermissionAccess(permissionId, businessUnitId, roles) {
|
|
17
|
+
if (roles?.length) return roles.some((role) => role.business_unit_id === businessUnitId && role.permissions.some((permission) => permission.permission_id === permissionId));
|
|
18
|
+
return true;
|
|
19
|
+
}
|
|
20
|
+
static ɵfac = i0.ɵɵngDeclareFactory({
|
|
21
|
+
minVersion: "12.0.0",
|
|
22
|
+
version: "21.2.25",
|
|
23
|
+
ngImport: i0,
|
|
24
|
+
type: PermissionsService,
|
|
25
|
+
deps: [],
|
|
26
|
+
target: i0.ɵɵFactoryTarget.Injectable
|
|
27
|
+
});
|
|
28
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({
|
|
29
|
+
minVersion: "12.0.0",
|
|
30
|
+
version: "21.2.25",
|
|
31
|
+
ngImport: i0,
|
|
32
|
+
type: PermissionsService,
|
|
33
|
+
providedIn: "root"
|
|
34
|
+
});
|
|
35
|
+
};
|
|
36
|
+
i0.ɵɵngDeclareClassMetadata({
|
|
37
|
+
minVersion: "12.0.0",
|
|
38
|
+
version: "21.2.25",
|
|
39
|
+
ngImport: i0,
|
|
40
|
+
type: PermissionsService,
|
|
41
|
+
decorators: [{
|
|
42
|
+
type: Injectable,
|
|
43
|
+
args: [{ providedIn: "root" }]
|
|
44
|
+
}]
|
|
45
|
+
});
|
|
68
46
|
export { PermissionsService };
|
|
69
|
-
|
|
47
|
+
|
|
48
|
+
//# sourceMappingURL=hmcts-opal-frontend-common-services-permissions-service.mjs.map
|
|
@@ -1,10 +1,4 @@
|
|
|
1
|
-
const SESSION_ENDPOINTS = {
|
|
2
|
-
expiry: '/session/expiry',
|
|
3
|
-
};
|
|
4
|
-
|
|
5
|
-
/**
|
|
6
|
-
* Generated bundle index. Do not edit.
|
|
7
|
-
*/
|
|
8
|
-
|
|
1
|
+
const SESSION_ENDPOINTS = { expiry: "/session/expiry" };
|
|
9
2
|
export { SESSION_ENDPOINTS };
|
|
10
|
-
|
|
3
|
+
|
|
4
|
+
//# sourceMappingURL=hmcts-opal-frontend-common-services-session-service-constants.mjs.map
|
|
@@ -1,11 +1,7 @@
|
|
|
1
1
|
const SESSION_TOKEN_EXPIRY_MOCK = {
|
|
2
|
-
|
|
3
|
-
|
|
2
|
+
expiry: "test",
|
|
3
|
+
warningThresholdInMilliseconds: 5
|
|
4
4
|
};
|
|
5
|
-
|
|
6
|
-
/**
|
|
7
|
-
* Generated bundle index. Do not edit.
|
|
8
|
-
*/
|
|
9
|
-
|
|
10
5
|
export { SESSION_TOKEN_EXPIRY_MOCK };
|
|
11
|
-
|
|
6
|
+
|
|
7
|
+
//# sourceMappingURL=hmcts-opal-frontend-common-services-session-service-mocks.mjs.map
|
|
@@ -1,41 +1,51 @@
|
|
|
1
|
-
import { HttpClient } from
|
|
2
|
-
import * as i0 from
|
|
3
|
-
import {
|
|
4
|
-
import { timer } from
|
|
5
|
-
import { retry,
|
|
6
|
-
import { GlobalStore } from
|
|
7
|
-
import { SESSION_ENDPOINTS } from
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
}
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
1
|
+
import { HttpClient } from "@angular/common/http";
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import { Injectable, inject } from "@angular/core";
|
|
4
|
+
import { timer } from "rxjs";
|
|
5
|
+
import { retry, shareReplay, tap } from "rxjs/operators";
|
|
6
|
+
import { GlobalStore } from "@hmcts/opal-frontend-common/stores/global";
|
|
7
|
+
import { SESSION_ENDPOINTS } from "@hmcts/opal-frontend-common/services/session-service/constants";
|
|
8
|
+
var SessionService = class SessionService {
|
|
9
|
+
http = inject(HttpClient);
|
|
10
|
+
globalStore = inject(GlobalStore);
|
|
11
|
+
tokenExpiryCache$;
|
|
12
|
+
MAX_RETRIES = 5;
|
|
13
|
+
RETRY_DELAY_MS = 1e3;
|
|
14
|
+
getTokenExpiry() {
|
|
15
|
+
this.tokenExpiryCache$ ??= this.http.get(SESSION_ENDPOINTS.expiry).pipe(retry({
|
|
16
|
+
count: this.MAX_RETRIES,
|
|
17
|
+
delay: () => timer(this.RETRY_DELAY_MS)
|
|
18
|
+
}), tap((expiry) => {
|
|
19
|
+
this.globalStore.setTokenExpiry(expiry);
|
|
20
|
+
}), shareReplay(1));
|
|
21
|
+
return this.tokenExpiryCache$;
|
|
22
|
+
}
|
|
23
|
+
static ɵfac = i0.ɵɵngDeclareFactory({
|
|
24
|
+
minVersion: "12.0.0",
|
|
25
|
+
version: "21.2.25",
|
|
26
|
+
ngImport: i0,
|
|
27
|
+
type: SessionService,
|
|
28
|
+
deps: [],
|
|
29
|
+
target: i0.ɵɵFactoryTarget.Injectable
|
|
30
|
+
});
|
|
31
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({
|
|
32
|
+
minVersion: "12.0.0",
|
|
33
|
+
version: "21.2.25",
|
|
34
|
+
ngImport: i0,
|
|
35
|
+
type: SessionService,
|
|
36
|
+
providedIn: "root"
|
|
37
|
+
});
|
|
38
|
+
};
|
|
39
|
+
i0.ɵɵngDeclareClassMetadata({
|
|
40
|
+
minVersion: "12.0.0",
|
|
41
|
+
version: "21.2.25",
|
|
42
|
+
ngImport: i0,
|
|
43
|
+
type: SessionService,
|
|
44
|
+
decorators: [{
|
|
45
|
+
type: Injectable,
|
|
46
|
+
args: [{ providedIn: "root" }]
|
|
47
|
+
}]
|
|
48
|
+
});
|
|
40
49
|
export { SessionService };
|
|
41
|
-
|
|
50
|
+
|
|
51
|
+
//# sourceMappingURL=hmcts-opal-frontend-common-services-session-service.mjs.map
|