@hmcts/opal-frontend-common 0.0.2 → 0.0.3
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/components/abstract/abstract-form-alias-base/abstract-form-alias-base.d.ts +117 -0
- package/components/abstract/abstract-form-alias-base/interfaces/abstract-form-alias-base-alias-controls.interface.d.ts +4 -0
- package/components/abstract/abstract-form-array-base/abstract-form-array-base.d.ts +158 -0
- package/components/abstract/abstract-form-array-parent-base/abstract-form-array-parent-base.component.d.ts +13 -0
- package/components/abstract/abstract-form-array-removal-base/abstract-form-array-removal-base.component.d.ts +44 -0
- package/components/abstract/abstract-form-array-removal-base/interfaces/abstract-form-array-removal-base-control-value.interface.d.ts +5 -0
- package/components/abstract/abstract-form-base/abstract-form-base.component.d.ts +232 -0
- package/components/abstract/abstract-form-base/interfaces/abstract-form-base-field-error.interface.d.ts +6 -0
- package/components/abstract/abstract-form-base/interfaces/abstract-form-base-field-errors.interface.d.ts +4 -0
- package/components/abstract/abstract-form-base/interfaces/abstract-form-base-form-error.interface.d.ts +6 -0
- package/components/abstract/abstract-form-base/interfaces/abstract-form-base-form.interface.d.ts +4 -0
- package/components/abstract/abstract-form-base/interfaces/abstract-form-base-high-priority-form-error.interface.d.ts +5 -0
- package/components/abstract/abstract-form-base/interfaces/abstract-form-base-status.interface.d.ts +3 -0
- package/components/abstract/abstract-form-parent-base/abstract-form-parent-base.component.d.ts +29 -0
- package/components/abstract/abstract-sortable-table/abstract-sortable-table.component.d.ts +79 -0
- package/components/abstract/abstract-sortable-table/interfaces/abstract-sortable-table-interfaces.d.ts +7 -0
- package/components/abstract/abstract-sortable-table-pagination/abstract-sortable-table-pagination.component.d.ts +31 -0
- package/components/abstract/index.d.ts +5 -0
- package/components/abstract/interfaces/abstract-form-array-control-validation.interface.d.ts +5 -0
- package/components/abstract/interfaces/abstract-form-array-control.interface.d.ts +5 -0
- package/components/abstract/interfaces/abstract-form-array-controls.interface.d.ts +4 -0
- package/components/abstract/interfaces/abstract-form-base-form-error-summary-message.interface.d.ts +4 -0
- package/components/abstract/interfaces/abstract-form-control-error-message.interface.d.ts +3 -0
- package/components/abstract/public-api.d.ts +20 -0
- package/components/alphagov/alphagov-accessible-autocomplete/alphagov-accessible-autocomplete.component.d.ts +59 -0
- package/components/alphagov/alphagov-accessible-autocomplete/interfaces/alphagov-accessible-autocomplete-item.interface.d.ts +4 -0
- package/components/alphagov/index.d.ts +5 -0
- package/components/alphagov/public-api.d.ts +2 -0
- package/components/govuk/govuk-accordion/govuk-accordion.component.d.ts +13 -0
- package/components/govuk/govuk-back-link/govuk-back-link.component.d.ts +14 -0
- package/components/govuk/govuk-cancel-link/govuk-cancel-link.component.d.ts +12 -0
- package/components/govuk/govuk-checkboxes/govuk-checkboxes-conditional/govuk-checkboxes-conditional.component.d.ts +10 -0
- package/components/govuk/govuk-checkboxes/govuk-checkboxes-divider/govuk-checkboxes-divider.component.d.ts +5 -0
- package/components/govuk/govuk-checkboxes/govuk-checkboxes-item/govuk-checkboxes-item.component.d.ts +16 -0
- package/components/govuk/govuk-checkboxes/govuk-checkboxes.component.d.ts +10 -0
- package/components/govuk/govuk-checkboxes/interfaces/govuk-checkboxes-input.interface.d.ts +17 -0
- package/components/govuk/govuk-date-input/govuk-date-input.component.d.ts +18 -0
- package/components/govuk/govuk-date-input/interfaces/govuk-date-input.interface.d.ts +12 -0
- package/components/govuk/govuk-details/govuk-details.component.d.ts +6 -0
- package/components/govuk/govuk-error-summary/govuk-error-summary.component.d.ts +16 -0
- package/components/govuk/govuk-footer/constants/govuk-footer-links.constant.d.ts +2 -0
- package/components/govuk/govuk-footer/govuk-footer.component.d.ts +6 -0
- package/components/govuk/govuk-footer/interfaces/govuk-footer-links.interface.d.ts +5 -0
- package/components/govuk/govuk-header/constants/govuk-header-links.constant.d.ts +2 -0
- package/components/govuk/govuk-header/govuk-header-navigation-item/govuk-header-navigation-item.component.d.ts +12 -0
- package/components/govuk/govuk-header/govuk-header.component.d.ts +6 -0
- package/components/govuk/govuk-header/interfaces/govuk-header-links.interface.d.ts +4 -0
- package/components/govuk/govuk-heading-with-caption/govuk-heading-with-caption.component.d.ts +9 -0
- package/components/govuk/govuk-inset-text/govuk-inset-text.component.d.ts +6 -0
- package/components/govuk/govuk-notification-banner/govuk-notification-banner.component.d.ts +10 -0
- package/components/govuk/govuk-pagination/govuk-pagination.component.d.ts +44 -0
- package/components/govuk/govuk-panel/govuk-panel.component.d.ts +7 -0
- package/components/govuk/govuk-radio/govuk-radio.component.d.ts +11 -0
- package/components/govuk/govuk-radio/govuk-radios-conditional/govuk-radios-conditional.component.d.ts +10 -0
- package/components/govuk/govuk-radio/govuk-radios-divider/govuk-radios-divider.component.d.ts +5 -0
- package/components/govuk/govuk-radio/govuk-radios-item/govuk-radios-item.component.d.ts +18 -0
- package/components/govuk/govuk-radio/interfaces/govuk-radio-input.interface.d.ts +17 -0
- package/components/govuk/govuk-radio/interfaces/govuk-radio-options.interface.d.ts +4 -0
- package/components/govuk/govuk-select/govuk-select.component.d.ts +18 -0
- package/components/govuk/govuk-select/interfaces/govuk-select-options.interface.d.ts +4 -0
- package/components/govuk/govuk-summary-card-list/govuk-summary-card-action/govuk-summary-card-action.component.d.ts +17 -0
- package/components/govuk/govuk-summary-card-list/govuk-summary-card-list.component.d.ts +12 -0
- package/components/govuk/govuk-summary-list/govuk-summary-list-row/govuk-summary-list-row-actions/govuk-summary-list-row-action-item/govuk-summary-list-row-action-item.component.d.ts +15 -0
- package/components/govuk/govuk-summary-list/govuk-summary-list-row/govuk-summary-list-row-actions/govuk-summary-list-row-actions.component.d.ts +5 -0
- package/components/govuk/govuk-summary-list/govuk-summary-list-row/govuk-summary-list-row.component.d.ts +20 -0
- package/components/govuk/govuk-summary-list/govuk-summary-list.component.d.ts +7 -0
- package/components/govuk/govuk-table/govuk-table-body-row/govuk-table-body-row-data/govuk-table-body-row-data.component.d.ts +8 -0
- package/components/govuk/govuk-table/govuk-table-body-row/govuk-table-body-row.component.d.ts +7 -0
- package/components/govuk/govuk-table/govuk-table-heading/govuk-table-heading.component.d.ts +7 -0
- package/components/govuk/govuk-table/govuk-table.component.d.ts +6 -0
- package/components/govuk/govuk-tabs/govuk-tab-list-item/govuk-tab-list-item.component.d.ts +11 -0
- package/components/govuk/govuk-tabs/govuk-tab-panel/govuk-tab-panel.component.d.ts +9 -0
- package/components/govuk/govuk-tabs/govuk-tabs.component.d.ts +14 -0
- package/components/govuk/govuk-tag/govuk-tag.component.d.ts +7 -0
- package/components/govuk/govuk-task-list/govuk-task-list-item/govuk-task-list-item.component.d.ts +8 -0
- package/components/govuk/govuk-task-list/govuk-task-list.component.d.ts +7 -0
- package/components/govuk/govuk-text-area/govuk-text-area.component.d.ts +21 -0
- package/components/govuk/govuk-text-input-prefix-suffix/govuk-text-input-prefix-suffix.component.d.ts +22 -0
- package/components/govuk/index.d.ts +5 -0
- package/components/govuk/public-api.d.ts +52 -0
- package/components/moj/index.d.ts +5 -0
- package/components/moj/moj-badge/moj.badge.component.d.ts +7 -0
- package/components/moj/moj-banner/moj-banner.component.d.ts +8 -0
- package/components/moj/moj-button-menu/moj-button-menu-item/moj-button-menu-item.component.d.ts +8 -0
- package/components/moj/moj-button-menu/moj-button-menu.component.d.ts +10 -0
- package/components/moj/moj-date-picker/moj-date-picker.component.d.ts +40 -0
- package/components/moj/moj-header/constants/moj-header-links.constant.d.ts +2 -0
- package/components/moj/moj-header/interfaces/moj-header-links.interface.d.ts +4 -0
- package/components/moj/moj-header/moj-header-navigation-item/moj-header-navigation-item.component.d.ts +12 -0
- package/components/moj/moj-header/moj-header.component.d.ts +6 -0
- package/components/moj/moj-page-header/moj-page-header.component.d.ts +6 -0
- package/components/moj/moj-pagination/moj-pagination-item/moj-pagination-item.component.d.ts +6 -0
- package/components/moj/moj-pagination/moj-pagination-link/moj-pagination-link.component.d.ts +43 -0
- package/components/moj/moj-pagination/moj-pagination-list/moj-pagination-list.component.d.ts +6 -0
- package/components/moj/moj-pagination/moj-pagination.component.d.ts +108 -0
- package/components/moj/moj-primary-navigation/moj-primary-navigation-item/moj-primary-navigation-item.component.d.ts +18 -0
- package/components/moj/moj-primary-navigation/moj-primary-navigation.component.d.ts +26 -0
- package/components/moj/moj-sortable-table/moj-sortable-table-header/moj-sortable-table-header.component.d.ts +24 -0
- package/components/moj/moj-sortable-table/moj-sortable-table-row/moj-sortable-table-row.component.d.ts +7 -0
- package/components/moj/moj-sortable-table/moj-sortable-table.component.d.ts +6 -0
- package/components/moj/moj-sub-navigation/moj-sub-navigation-item/moj-sub-navigation-item.component.d.ts +17 -0
- package/components/moj/moj-sub-navigation/moj-sub-navigation.component.d.ts +21 -0
- package/components/moj/moj-ticket-panel/moj-ticket-panel.component.d.ts +8 -0
- package/components/moj/moj-timeline/moj-timeline-item/moj-timeline-item.component.d.ts +5 -0
- package/components/moj/moj-timeline/moj-timeline.component.d.ts +5 -0
- package/components/moj/public-api.d.ts +24 -0
- package/constants/index.d.ts +5 -0
- package/constants/public-api.d.ts +4 -0
- package/constants/src/routing-paths.constant.d.ts +2 -0
- package/constants/src/routing-titles.constant.d.ts +2 -0
- package/constants/src/session-endpoints.constant.d.ts +2 -0
- package/constants/src/sso-endpoints.constant.d.ts +2 -0
- package/fesm2022/hmcts-opal-frontend-common-components-abstract.mjs +1288 -0
- package/fesm2022/hmcts-opal-frontend-common-components-abstract.mjs.map +1 -0
- package/fesm2022/hmcts-opal-frontend-common-components-alphagov.mjs +170 -0
- package/fesm2022/hmcts-opal-frontend-common-components-alphagov.mjs.map +1 -0
- package/fesm2022/hmcts-opal-frontend-common-components-govuk.mjs +1259 -0
- package/fesm2022/hmcts-opal-frontend-common-components-govuk.mjs.map +1 -0
- package/fesm2022/hmcts-opal-frontend-common-components-moj.mjs +804 -0
- package/fesm2022/hmcts-opal-frontend-common-components-moj.mjs.map +1 -0
- package/fesm2022/hmcts-opal-frontend-common-constants.mjs +36 -0
- package/fesm2022/hmcts-opal-frontend-common-constants.mjs.map +1 -0
- package/fesm2022/hmcts-opal-frontend-common-guards.mjs +134 -0
- package/fesm2022/hmcts-opal-frontend-common-guards.mjs.map +1 -0
- package/fesm2022/hmcts-opal-frontend-common-interceptors.mjs +31 -0
- package/fesm2022/hmcts-opal-frontend-common-interceptors.mjs.map +1 -0
- package/fesm2022/hmcts-opal-frontend-common-interfaces.mjs +4 -0
- package/fesm2022/hmcts-opal-frontend-common-interfaces.mjs.map +1 -0
- package/fesm2022/hmcts-opal-frontend-common-mocks.mjs +429 -0
- package/fesm2022/hmcts-opal-frontend-common-mocks.mjs.map +1 -0
- package/fesm2022/hmcts-opal-frontend-common-pages-sign-in-stub.component-eGVOJLC2.mjs +41 -0
- package/fesm2022/hmcts-opal-frontend-common-pages-sign-in-stub.component-eGVOJLC2.mjs.map +1 -0
- package/fesm2022/hmcts-opal-frontend-common-pages.mjs +109 -0
- package/fesm2022/hmcts-opal-frontend-common-pages.mjs.map +1 -0
- package/fesm2022/hmcts-opal-frontend-common-pipes.mjs +64 -0
- package/fesm2022/hmcts-opal-frontend-common-pipes.mjs.map +1 -0
- package/fesm2022/hmcts-opal-frontend-common-resolvers.mjs +40 -0
- package/fesm2022/hmcts-opal-frontend-common-resolvers.mjs.map +1 -0
- package/fesm2022/hmcts-opal-frontend-common-services.mjs +817 -0
- package/fesm2022/hmcts-opal-frontend-common-services.mjs.map +1 -0
- package/fesm2022/hmcts-opal-frontend-common-stores.mjs +40 -0
- package/fesm2022/hmcts-opal-frontend-common-stores.mjs.map +1 -0
- package/fesm2022/hmcts-opal-frontend-common-types.mjs +4 -0
- package/fesm2022/hmcts-opal-frontend-common-types.mjs.map +1 -0
- package/fesm2022/hmcts-opal-frontend-common-validators.mjs +278 -0
- package/fesm2022/hmcts-opal-frontend-common-validators.mjs.map +1 -0
- package/fesm2022/hmcts-opal-frontend-common.mjs +0 -1943
- package/fesm2022/hmcts-opal-frontend-common.mjs.map +1 -1
- package/{lib/guards → guards}/can-deactivate/can-deactivate.guard.d.ts +1 -1
- package/{lib/guards → guards}/can-deactivate/interfaces/can-deactivate-can-component-deactivate.interface.d.ts +1 -1
- package/{lib/guards → guards}/helpers/get-guard-with-dummy-url.d.ts +1 -1
- package/{lib/guards → guards}/helpers/handle-observable-result.d.ts +1 -1
- package/{lib/guards → guards}/helpers/run-has-flow-state-guard-with-context.d.ts +1 -1
- package/guards/index.d.ts +5 -0
- package/guards/public-api.d.ts +9 -0
- package/interceptors/index.d.ts +5 -0
- package/interceptors/public-api.d.ts +1 -0
- package/interfaces/index.d.ts +5 -0
- package/interfaces/public-api.d.ts +12 -0
- package/{lib/pages/routing/interfaces → interfaces/src}/routing-paths.interface.d.ts +1 -1
- package/mocks/index.d.ts +5 -0
- package/mocks/public-api.d.ts +8 -0
- package/mocks/src/route-permissions.mock.d.ts +3 -0
- package/mocks/src/session-token-expiry.mock.d.ts +2 -0
- package/mocks/src/session-user-state.mock.d.ts +2 -0
- package/mocks/src/transfer-state.mock.d.ts +2 -0
- package/package.json +106 -9
- package/pages/index.d.ts +5 -0
- package/{lib/pages → pages}/sign-in/sign-in.component.d.ts +10 -10
- package/pipes/date-format/date-format.pipe.d.ts +10 -0
- package/pipes/days-ago/days-ago.pipe.d.ts +7 -0
- package/pipes/index.d.ts +5 -0
- package/pipes/public-api.d.ts +2 -0
- package/public-api.d.ts +1 -10
- package/resolvers/index.d.ts +5 -0
- package/resolvers/public-api.d.ts +2 -0
- package/{lib/resolvers → resolvers}/user-state/user-state.resolver.d.ts +1 -1
- package/{lib/services → services}/date-service/date.service.d.ts +8 -0
- package/services/index.d.ts +5 -0
- package/{lib/services → services}/permissions-service/permissions.service.d.ts +1 -1
- package/services/public-api.d.ts +11 -0
- package/{lib/services → services}/session-service/session.service.d.ts +1 -1
- package/services/sort-service/interfaces/sort-service-values.interface.d.ts +7 -0
- package/{lib/services → services}/sort-service/sort-service.d.ts +1 -1
- package/{lib/services → services}/transfer-state-service/transfer-state.service.d.ts +1 -1
- package/{lib/services → services}/transformation-service/transformation.service.d.ts +1 -1
- package/{lib/stores → stores}/global/global.store.d.ts +1 -4
- package/stores/index.d.ts +5 -0
- package/stores/public-api.d.ts +1 -0
- package/types/index.d.ts +5 -0
- package/types/public-api.d.ts +4 -0
- package/types/src/abstract-sortable-table.type.d.ts +1 -0
- package/types/src/global-store.type.d.ts +2 -0
- package/types/src/sort-service.type.d.ts +1 -0
- package/validators/index.d.ts +5 -0
- package/{lib/validators → validators}/over-eighteen/over-eighteen.validator.d.ts +1 -1
- package/validators/public-api.d.ts +18 -0
- package/esm2022/hmcts-opal-frontend-common.mjs +0 -5
- package/esm2022/lib/components/govuk/govuk-button/govuk-button.component.mjs +0 -34
- package/esm2022/lib/components/govuk/govuk-text-input/govuk-text-input.component.mjs +0 -57
- package/esm2022/lib/components/govuk/index.mjs +0 -3
- package/esm2022/lib/guards/auth/auth.guard.mjs +0 -20
- package/esm2022/lib/guards/auth/index.mjs +0 -2
- package/esm2022/lib/guards/can-deactivate/can-deactivate.guard.mjs +0 -6
- package/esm2022/lib/guards/can-deactivate/index.mjs +0 -5
- package/esm2022/lib/guards/can-deactivate/interfaces/can-deactivate-can-component-deactivate.interface.mjs +0 -2
- package/esm2022/lib/guards/can-deactivate/interfaces/index.mjs +0 -2
- package/esm2022/lib/guards/has-flow-state/has-flow-state.guard.mjs +0 -16
- package/esm2022/lib/guards/has-flow-state/index.mjs +0 -2
- package/esm2022/lib/guards/helpers/get-guard-with-dummy-url.mjs +0 -19
- package/esm2022/lib/guards/helpers/handle-observable-result.mjs +0 -13
- package/esm2022/lib/guards/helpers/index.mjs +0 -5
- package/esm2022/lib/guards/helpers/run-auth-guard-with-context.mjs +0 -15
- package/esm2022/lib/guards/helpers/run-has-flow-state-guard-with-context.mjs +0 -9
- package/esm2022/lib/guards/index.mjs +0 -10
- package/esm2022/lib/guards/route-permissions/index.mjs +0 -2
- package/esm2022/lib/guards/route-permissions/route-permissions.guard.mjs +0 -25
- package/esm2022/lib/guards/signed-in/index.mjs +0 -3
- package/esm2022/lib/guards/signed-in/signed-in.guard.mjs +0 -20
- package/esm2022/lib/guards/types/can-deactivate.type.mjs +0 -2
- package/esm2022/lib/guards/types/guard-return.type.mjs +0 -2
- package/esm2022/lib/guards/types/index.mjs +0 -3
- package/esm2022/lib/interceptors/http-error/http-error.interceptor.mjs +0 -24
- package/esm2022/lib/interceptors/index.mjs +0 -3
- package/esm2022/lib/opal-frontend-common.module.mjs +0 -22
- package/esm2022/lib/pages/access-denied/access-denied.component.mjs +0 -18
- package/esm2022/lib/pages/index.mjs +0 -4
- package/esm2022/lib/pages/routing/constants/routing-paths.constant.mjs +0 -9
- package/esm2022/lib/pages/routing/constants/routing-titles.constant.mjs +0 -9
- package/esm2022/lib/pages/routing/interfaces/routing-paths.interface.mjs +0 -2
- package/esm2022/lib/pages/routing/pages.routes.mjs +0 -24
- package/esm2022/lib/pages/sign-in/interfaces/index.mjs +0 -2
- package/esm2022/lib/pages/sign-in/interfaces/sign-in-stub-form.interface.mjs +0 -2
- package/esm2022/lib/pages/sign-in/sign-in-sso/sign-in-sso.component.mjs +0 -23
- package/esm2022/lib/pages/sign-in/sign-in-stub/sign-in-stub.component.mjs +0 -39
- package/esm2022/lib/pages/sign-in/sign-in.component.mjs +0 -38
- package/esm2022/lib/resolvers/index.mjs +0 -3
- package/esm2022/lib/resolvers/title/index.mjs +0 -2
- package/esm2022/lib/resolvers/title/title.resolver.mjs +0 -22
- package/esm2022/lib/resolvers/user-state/index.mjs +0 -2
- package/esm2022/lib/resolvers/user-state/user-state.resolver.mjs +0 -12
- package/esm2022/lib/routing/constants/index.mjs +0 -2
- package/esm2022/lib/routing/constants/sso-endpoints.constant.mjs +0 -7
- package/esm2022/lib/routing/index.mjs +0 -3
- package/esm2022/lib/routing/interfaces/child-routing-paths.interface.mjs +0 -2
- package/esm2022/lib/routing/interfaces/index.mjs +0 -4
- package/esm2022/lib/routing/interfaces/nested-routes.interface.mjs +0 -2
- package/esm2022/lib/routing/interfaces/sso-endpoints.interface.mjs +0 -2
- package/esm2022/lib/services/app-initializer-service/app-initializer.service.mjs +0 -36
- package/esm2022/lib/services/app-initializer-service/index.mjs +0 -2
- package/esm2022/lib/services/app-insights/app-insights.service.mjs +0 -73
- package/esm2022/lib/services/app-insights/index.mjs +0 -4
- package/esm2022/lib/services/auth-service/auth.service.mjs +0 -36
- package/esm2022/lib/services/auth-service/index.mjs +0 -2
- package/esm2022/lib/services/date-service/date.service.mjs +0 -182
- package/esm2022/lib/services/date-service/index.mjs +0 -4
- package/esm2022/lib/services/index.mjs +0 -12
- package/esm2022/lib/services/launch-darkly/index.mjs +0 -5
- package/esm2022/lib/services/launch-darkly/launch-darkly.service.mjs +0 -94
- package/esm2022/lib/services/launch-darkly/mocks/index.mjs +0 -3
- package/esm2022/lib/services/launch-darkly/mocks/launch-darkly-change-flags.mock.mjs +0 -5
- package/esm2022/lib/services/launch-darkly/mocks/launch-darkly-flags.mock.mjs +0 -5
- package/esm2022/lib/services/permissions-service/index.mjs +0 -4
- package/esm2022/lib/services/permissions-service/permissions.service.mjs +0 -40
- package/esm2022/lib/services/session-service/constants/index.mjs +0 -2
- package/esm2022/lib/services/session-service/constants/session-endpoints.constant.mjs +0 -5
- package/esm2022/lib/services/session-service/index.mjs +0 -7
- package/esm2022/lib/services/session-service/interfaces/index.mjs +0 -4
- package/esm2022/lib/services/session-service/interfaces/session-endpoints.interface.mjs +0 -2
- package/esm2022/lib/services/session-service/interfaces/session-token-expiry.interface.mjs +0 -2
- package/esm2022/lib/services/session-service/interfaces/session-user-state.interface.mjs +0 -2
- package/esm2022/lib/services/session-service/mocks/index.mjs +0 -3
- package/esm2022/lib/services/session-service/mocks/session-token-expiry.mock.mjs +0 -5
- package/esm2022/lib/services/session-service/mocks/session-user-state.mock.mjs +0 -386
- package/esm2022/lib/services/session-service/session.service.mjs +0 -64
- package/esm2022/lib/services/sort-service/index.mjs +0 -6
- package/esm2022/lib/services/sort-service/interfaces/index.mjs +0 -3
- package/esm2022/lib/services/sort-service/interfaces/sort-service-values.interface.mjs +0 -2
- package/esm2022/lib/services/sort-service/interfaces/sort-service.interface.mjs +0 -2
- package/esm2022/lib/services/sort-service/sort-service.mjs +0 -90
- package/esm2022/lib/services/sort-service/types/index.mjs +0 -2
- package/esm2022/lib/services/sort-service/types/sort-service.type.mjs +0 -2
- package/esm2022/lib/services/transfer-state-service/index.mjs +0 -6
- package/esm2022/lib/services/transfer-state-service/interfaces/index.mjs +0 -4
- package/esm2022/lib/services/transfer-state-service/interfaces/transfer-state-app-insights-config.interface.mjs +0 -2
- package/esm2022/lib/services/transfer-state-service/interfaces/transfer-state-launch-darkly-config.interface.mjs +0 -2
- package/esm2022/lib/services/transfer-state-service/interfaces/transfer-state-server-state.interface.mjs +0 -2
- package/esm2022/lib/services/transfer-state-service/mocks/index.mjs +0 -4
- package/esm2022/lib/services/transfer-state-service/mocks/transfer-state-app-insights-config.mock.mjs +0 -6
- package/esm2022/lib/services/transfer-state-service/mocks/transfer-state-launch-darkly-config.mock.mjs +0 -6
- package/esm2022/lib/services/transfer-state-service/mocks/transfer-state.mock.mjs +0 -8
- package/esm2022/lib/services/transfer-state-service/transfer-state.service.mjs +0 -59
- package/esm2022/lib/services/transformation-service/index.mjs +0 -5
- package/esm2022/lib/services/transformation-service/interfaces/index.mjs +0 -2
- package/esm2022/lib/services/transformation-service/interfaces/transform-item.interface.mjs +0 -2
- package/esm2022/lib/services/transformation-service/transformation.service.mjs +0 -69
- package/esm2022/lib/services/utils/index.mjs +0 -4
- package/esm2022/lib/services/utils/utils.service.mjs +0 -86
- package/esm2022/lib/stores/global/global.store.mjs +0 -33
- package/esm2022/lib/stores/global/index.mjs +0 -6
- package/esm2022/lib/stores/global/interfaces/error-state.interface.mjs +0 -2
- package/esm2022/lib/stores/global/interfaces/index.mjs +0 -2
- package/esm2022/lib/stores/global/types/global-store.type.mjs +0 -2
- package/esm2022/lib/stores/global/types/index.mjs +0 -2
- package/esm2022/lib/stores/index.mjs +0 -2
- package/esm2022/lib/validators/alphabetical-text/alphabetical-text.validator.mjs +0 -10
- package/esm2022/lib/validators/amount/amount.validator.mjs +0 -15
- package/esm2022/lib/validators/date-after-year/date-after-year.validator.mjs +0 -12
- package/esm2022/lib/validators/date-before/date-before.validator.mjs +0 -15
- package/esm2022/lib/validators/date-of-birth/date-of-birth.validator.mjs +0 -18
- package/esm2022/lib/validators/future-date/future-date.validator.mjs +0 -15
- package/esm2022/lib/validators/index.mjs +0 -20
- package/esm2022/lib/validators/invalid-value/invalid-value.validator.mjs +0 -9
- package/esm2022/lib/validators/national-insurance-number/national-insurance-number.validator.mjs +0 -16
- package/esm2022/lib/validators/numerical-only/numerical-only.validator.mjs +0 -10
- package/esm2022/lib/validators/optional-max-length/optional-max-length.validator.mjs +0 -10
- package/esm2022/lib/validators/optional-valid-date/optional-valid-date.validator.mjs +0 -23
- package/esm2022/lib/validators/optional-valid-email-address/optional-valid-email-address.validator.mjs +0 -11
- package/esm2022/lib/validators/optional-valid-telephone/optional-valid-telephone.validator.mjs +0 -14
- package/esm2022/lib/validators/over-eighteen/over-eighteen.validator.mjs +0 -45
- package/esm2022/lib/validators/past-date/past-date.validator.mjs +0 -16
- package/esm2022/lib/validators/special-characters/special-characters.validator.mjs +0 -11
- package/esm2022/lib/validators/two-decimal-places/two-decimal-places.validator.mjs +0 -12
- package/esm2022/lib/validators/valid-value/valid-value.validator.mjs +0 -9
- package/esm2022/public-api.mjs +0 -11
- package/fesm2022/hmcts-opal-frontend-common-sign-in-stub.component-CysPzJGJ.mjs +0 -41
- package/fesm2022/hmcts-opal-frontend-common-sign-in-stub.component-CysPzJGJ.mjs.map +0 -1
- package/lib/components/govuk/index.d.ts +0 -2
- package/lib/guards/auth/index.d.ts +0 -1
- package/lib/guards/can-deactivate/index.d.ts +0 -2
- package/lib/guards/can-deactivate/interfaces/index.d.ts +0 -2
- package/lib/guards/has-flow-state/index.d.ts +0 -1
- package/lib/guards/helpers/index.d.ts +0 -4
- package/lib/guards/index.d.ts +0 -7
- package/lib/guards/route-permissions/index.d.ts +0 -1
- package/lib/guards/signed-in/index.d.ts +0 -1
- package/lib/guards/types/index.d.ts +0 -2
- package/lib/interceptors/index.d.ts +0 -2
- package/lib/opal-frontend-common.module.d.ts +0 -14
- package/lib/pages/routing/constants/routing-paths.constant.d.ts +0 -2
- package/lib/pages/routing/constants/routing-titles.constant.d.ts +0 -2
- package/lib/resolvers/index.d.ts +0 -2
- package/lib/resolvers/title/index.d.ts +0 -1
- package/lib/resolvers/user-state/index.d.ts +0 -1
- package/lib/routing/constants/index.d.ts +0 -1
- package/lib/routing/constants/sso-endpoints.constant.d.ts +0 -2
- package/lib/routing/index.d.ts +0 -2
- package/lib/routing/interfaces/index.d.ts +0 -3
- package/lib/services/app-initializer-service/index.d.ts +0 -1
- package/lib/services/app-insights/index.d.ts +0 -1
- package/lib/services/auth-service/index.d.ts +0 -1
- package/lib/services/date-service/index.d.ts +0 -1
- package/lib/services/index.d.ts +0 -11
- package/lib/services/launch-darkly/index.d.ts +0 -2
- package/lib/services/launch-darkly/mocks/index.d.ts +0 -2
- package/lib/services/permissions-service/index.d.ts +0 -1
- package/lib/services/session-service/constants/index.d.ts +0 -1
- package/lib/services/session-service/constants/session-endpoints.constant.d.ts +0 -2
- package/lib/services/session-service/index.d.ts +0 -4
- package/lib/services/session-service/interfaces/index.d.ts +0 -3
- package/lib/services/session-service/mocks/index.d.ts +0 -2
- package/lib/services/session-service/mocks/session-token-expiry.mock.d.ts +0 -2
- package/lib/services/session-service/mocks/session-user-state.mock.d.ts +0 -2
- package/lib/services/sort-service/index.d.ts +0 -3
- package/lib/services/sort-service/interfaces/index.d.ts +0 -2
- package/lib/services/sort-service/interfaces/sort-service-values.interface.d.ts +0 -6
- package/lib/services/sort-service/types/index.d.ts +0 -1
- package/lib/services/sort-service/types/sort-service.type.d.ts +0 -1
- package/lib/services/transfer-state-service/index.d.ts +0 -3
- package/lib/services/transfer-state-service/interfaces/index.d.ts +0 -3
- package/lib/services/transfer-state-service/mocks/index.d.ts +0 -3
- package/lib/services/transfer-state-service/mocks/transfer-state.mock.d.ts +0 -2
- package/lib/services/transformation-service/index.d.ts +0 -2
- package/lib/services/transformation-service/interfaces/index.d.ts +0 -1
- package/lib/services/utils/index.d.ts +0 -1
- package/lib/stores/global/index.d.ts +0 -3
- package/lib/stores/global/interfaces/index.d.ts +0 -1
- package/lib/stores/global/types/global-store.type.d.ts +0 -2
- package/lib/stores/global/types/index.d.ts +0 -1
- package/lib/stores/index.d.ts +0 -1
- package/lib/validators/index.d.ts +0 -19
- /package/{lib/components → components}/govuk/govuk-button/govuk-button.component.d.ts +0 -0
- /package/{lib/components → components}/govuk/govuk-text-input/govuk-text-input.component.d.ts +0 -0
- /package/{lib/guards → guards}/auth/auth.guard.d.ts +0 -0
- /package/{lib/guards → guards}/has-flow-state/has-flow-state.guard.d.ts +0 -0
- /package/{lib/guards → guards}/helpers/run-auth-guard-with-context.d.ts +0 -0
- /package/{lib/guards → guards}/route-permissions/route-permissions.guard.d.ts +0 -0
- /package/{lib/guards → guards}/signed-in/signed-in.guard.d.ts +0 -0
- /package/{lib/guards → guards}/types/guard-return.type.d.ts +0 -0
- /package/{lib/interceptors → interceptors}/http-error/http-error.interceptor.d.ts +0 -0
- /package/{lib/routing/interfaces → interfaces/src}/child-routing-paths.interface.d.ts +0 -0
- /package/{lib/stores/global/interfaces → interfaces/src}/error-state.interface.d.ts +0 -0
- /package/{lib/routing/interfaces → interfaces/src}/nested-routes.interface.d.ts +0 -0
- /package/{lib/services/session-service/interfaces → interfaces/src}/session-endpoints.interface.d.ts +0 -0
- /package/{lib/services/session-service/interfaces → interfaces/src}/session-token-expiry.interface.d.ts +0 -0
- /package/{lib/services/session-service/interfaces → interfaces/src}/session-user-state.interface.d.ts +0 -0
- /package/{lib/routing/interfaces → interfaces/src}/sso-endpoints.interface.d.ts +0 -0
- /package/{lib/services/transfer-state-service/interfaces → interfaces/src}/transfer-state-app-insights-config.interface.d.ts +0 -0
- /package/{lib/services/transfer-state-service/interfaces → interfaces/src}/transfer-state-launch-darkly-config.interface.d.ts +0 -0
- /package/{lib/services/transfer-state-service/interfaces → interfaces/src}/transfer-state-server-state.interface.d.ts +0 -0
- /package/{lib/services/transformation-service/interfaces → interfaces/src}/transform-item.interface.d.ts +0 -0
- /package/{lib/services/launch-darkly/mocks → mocks/src}/launch-darkly-change-flags.mock.d.ts +0 -0
- /package/{lib/services/launch-darkly/mocks → mocks/src}/launch-darkly-flags.mock.d.ts +0 -0
- /package/{lib/services/transfer-state-service/mocks → mocks/src}/transfer-state-app-insights-config.mock.d.ts +0 -0
- /package/{lib/services/transfer-state-service/mocks → mocks/src}/transfer-state-launch-darkly-config.mock.d.ts +0 -0
- /package/{lib/pages → pages}/access-denied/access-denied.component.d.ts +0 -0
- /package/{lib/pages/index.d.ts → pages/public-api.d.ts} +0 -0
- /package/{lib/pages → pages}/routing/pages.routes.d.ts +0 -0
- /package/{lib/pages → pages}/sign-in/interfaces/index.d.ts +0 -0
- /package/{lib/pages → pages}/sign-in/interfaces/sign-in-stub-form.interface.d.ts +0 -0
- /package/{lib/pages → pages}/sign-in/sign-in-sso/sign-in-sso.component.d.ts +0 -0
- /package/{lib/pages → pages}/sign-in/sign-in-stub/sign-in-stub.component.d.ts +0 -0
- /package/{lib/resolvers → resolvers}/title/title.resolver.d.ts +0 -0
- /package/{lib/services → services}/app-initializer-service/app-initializer.service.d.ts +0 -0
- /package/{lib/services → services}/app-insights/app-insights.service.d.ts +0 -0
- /package/{lib/services → services}/auth-service/auth.service.d.ts +0 -0
- /package/{lib/services → services}/launch-darkly/launch-darkly.service.d.ts +0 -0
- /package/{lib/services → services}/sort-service/interfaces/sort-service.interface.d.ts +0 -0
- /package/{lib/services → services}/utils/utils.service.d.ts +0 -0
- /package/{lib/guards/types → types/src}/can-deactivate.type.d.ts +0 -0
- /package/{lib/validators → validators}/alphabetical-text/alphabetical-text.validator.d.ts +0 -0
- /package/{lib/validators → validators}/amount/amount.validator.d.ts +0 -0
- /package/{lib/validators → validators}/date-after-year/date-after-year.validator.d.ts +0 -0
- /package/{lib/validators → validators}/date-before/date-before.validator.d.ts +0 -0
- /package/{lib/validators → validators}/date-of-birth/date-of-birth.validator.d.ts +0 -0
- /package/{lib/validators → validators}/future-date/future-date.validator.d.ts +0 -0
- /package/{lib/validators → validators}/invalid-value/invalid-value.validator.d.ts +0 -0
- /package/{lib/validators → validators}/national-insurance-number/national-insurance-number.validator.d.ts +0 -0
- /package/{lib/validators → validators}/numerical-only/numerical-only.validator.d.ts +0 -0
- /package/{lib/validators → validators}/optional-max-length/optional-max-length.validator.d.ts +0 -0
- /package/{lib/validators → validators}/optional-valid-date/optional-valid-date.validator.d.ts +0 -0
- /package/{lib/validators → validators}/optional-valid-email-address/optional-valid-email-address.validator.d.ts +0 -0
- /package/{lib/validators → validators}/optional-valid-telephone/optional-valid-telephone.validator.d.ts +0 -0
- /package/{lib/validators → validators}/past-date/past-date.validator.d.ts +0 -0
- /package/{lib/validators → validators}/special-characters/special-characters.validator.d.ts +0 -0
- /package/{lib/validators → validators}/two-decimal-places/two-decimal-places.validator.d.ts +0 -0
- /package/{lib/validators → validators}/valid-value/valid-value.validator.d.ts +0 -0
|
@@ -0,0 +1,804 @@
|
|
|
1
|
+
import * as i0 from '@angular/core';
|
|
2
|
+
import { Input, ChangeDetectionStrategy, Component, EventEmitter, Output, inject, afterNextRender, HostBinding, signal } from '@angular/core';
|
|
3
|
+
import { CommonModule } from '@angular/common';
|
|
4
|
+
import * as i1 from '@angular/forms';
|
|
5
|
+
import { ReactiveFormsModule } from '@angular/forms';
|
|
6
|
+
import { DateService } from '@hmcts/opal-frontend-common/services';
|
|
7
|
+
import { RouterLink, Router, ActivatedRoute } from '@angular/router';
|
|
8
|
+
import { Subject, takeUntil } from 'rxjs';
|
|
9
|
+
|
|
10
|
+
class MojBadgeComponent {
|
|
11
|
+
badgeId;
|
|
12
|
+
badgeClasses;
|
|
13
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: MojBadgeComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
14
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.5", type: MojBadgeComponent, isStandalone: true, selector: "opal-lib-moj-badge", inputs: { badgeId: "badgeId", badgeClasses: "badgeClasses" }, ngImport: i0, template: "<span class=\"moj-badge {{ badgeClasses }}\" [id]=\"badgeId\"><ng-content></ng-content> </span>\n", changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
15
|
+
}
|
|
16
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: MojBadgeComponent, decorators: [{
|
|
17
|
+
type: Component,
|
|
18
|
+
args: [{ selector: 'opal-lib-moj-badge', imports: [], changeDetection: ChangeDetectionStrategy.OnPush, template: "<span class=\"moj-badge {{ badgeClasses }}\" [id]=\"badgeId\"><ng-content></ng-content> </span>\n" }]
|
|
19
|
+
}], propDecorators: { badgeId: [{
|
|
20
|
+
type: Input,
|
|
21
|
+
args: [{ required: true }]
|
|
22
|
+
}], badgeClasses: [{
|
|
23
|
+
type: Input,
|
|
24
|
+
args: [{ required: false }]
|
|
25
|
+
}] } });
|
|
26
|
+
|
|
27
|
+
class MojBannerComponent {
|
|
28
|
+
text;
|
|
29
|
+
type = 'success';
|
|
30
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: MojBannerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
31
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.5", type: MojBannerComponent, isStandalone: true, selector: "opal-lib-moj-banner", inputs: { text: "text", type: "type" }, ngImport: i0, template: "<section class=\"moj-banner moj-banner--{{ type }}\">\n <svg\n class=\"moj-banner__icon\"\n fill=\"currentColor\"\n role=\"presentation\"\n focusable=\"false\"\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 25 25\"\n height=\"25\"\n width=\"25\"\n >\n @if (type === 'success') {\n <path d=\"M25,6.2L8.7,23.2L0,14.1l4-4.2l4.7,4.9L21,2L25,6.2z\" />\n }\n @if (type === 'warning') {\n <path d=\"M13.6,15.4h-2.3v-4.5h2.3V15.4z M13.6,19.8h-2.3v-2.2h2.3V19.8z M0,23.2h25L12.5,2L0,23.2z\" />\n }\n @if (type === 'information') {\n <path\n d=\"M13.7,18.5h-2.4v-2.4h2.4V18.5z M12.5,13.7c-0.7,0-1.2-0.5-1.2-1.2V7.7c0-0.7,0.5-1.2,1.2-1.2s1.2,0.5,1.2,1.2v4.8\n\tC13.7,13.2,13.2,13.7,12.5,13.7z M12.5,0.5c-6.6,0-12,5.4-12,12s5.4,12,12,12s12-5.4,12-12S19.1,0.5,12.5,0.5z\"\n />\n }\n </svg>\n <div id=\"{{ type }}-message\" class=\"moj-banner__message\" role=\"alert\">{{ text }}</div>\n</section>\n", changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
32
|
+
}
|
|
33
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: MojBannerComponent, decorators: [{
|
|
34
|
+
type: Component,
|
|
35
|
+
args: [{ selector: 'opal-lib-moj-banner', changeDetection: ChangeDetectionStrategy.OnPush, template: "<section class=\"moj-banner moj-banner--{{ type }}\">\n <svg\n class=\"moj-banner__icon\"\n fill=\"currentColor\"\n role=\"presentation\"\n focusable=\"false\"\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 25 25\"\n height=\"25\"\n width=\"25\"\n >\n @if (type === 'success') {\n <path d=\"M25,6.2L8.7,23.2L0,14.1l4-4.2l4.7,4.9L21,2L25,6.2z\" />\n }\n @if (type === 'warning') {\n <path d=\"M13.6,15.4h-2.3v-4.5h2.3V15.4z M13.6,19.8h-2.3v-2.2h2.3V19.8z M0,23.2h25L12.5,2L0,23.2z\" />\n }\n @if (type === 'information') {\n <path\n d=\"M13.7,18.5h-2.4v-2.4h2.4V18.5z M12.5,13.7c-0.7,0-1.2-0.5-1.2-1.2V7.7c0-0.7,0.5-1.2,1.2-1.2s1.2,0.5,1.2,1.2v4.8\n\tC13.7,13.2,13.2,13.7,12.5,13.7z M12.5,0.5c-6.6,0-12,5.4-12,12s5.4,12,12,12s12-5.4,12-12S19.1,0.5,12.5,0.5z\"\n />\n }\n </svg>\n <div id=\"{{ type }}-message\" class=\"moj-banner__message\" role=\"alert\">{{ text }}</div>\n</section>\n" }]
|
|
36
|
+
}], propDecorators: { text: [{
|
|
37
|
+
type: Input,
|
|
38
|
+
args: [{ required: true }]
|
|
39
|
+
}], type: [{
|
|
40
|
+
type: Input,
|
|
41
|
+
args: [{ required: true }]
|
|
42
|
+
}] } });
|
|
43
|
+
|
|
44
|
+
class MojButtonMenuItemComponent {
|
|
45
|
+
actionClick = new EventEmitter();
|
|
46
|
+
handleClick(event) {
|
|
47
|
+
event.preventDefault();
|
|
48
|
+
this.actionClick.emit(true);
|
|
49
|
+
}
|
|
50
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: MojButtonMenuItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
51
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.5", type: MojButtonMenuItemComponent, isStandalone: true, selector: "opal-lib-moj-button-menu-item", outputs: { actionClick: "actionClick" }, ngImport: i0, template: "<a\n href=\"\"\n role=\"menuitem\"\n draggable=\"false\"\n class=\"moj-button-menu__item\"\n data-module=\"govuk-button\"\n data-secondary=\"true\"\n (click)=\"handleClick($event)\"\n>\n <ng-content select=\"[linkText]\"></ng-content>\n</a>\n", changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
52
|
+
}
|
|
53
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: MojButtonMenuItemComponent, decorators: [{
|
|
54
|
+
type: Component,
|
|
55
|
+
args: [{ selector: 'opal-lib-moj-button-menu-item', imports: [], changeDetection: ChangeDetectionStrategy.OnPush, template: "<a\n href=\"\"\n role=\"menuitem\"\n draggable=\"false\"\n class=\"moj-button-menu__item\"\n data-module=\"govuk-button\"\n data-secondary=\"true\"\n (click)=\"handleClick($event)\"\n>\n <ng-content select=\"[linkText]\"></ng-content>\n</a>\n" }]
|
|
56
|
+
}], propDecorators: { actionClick: [{
|
|
57
|
+
type: Output
|
|
58
|
+
}] } });
|
|
59
|
+
|
|
60
|
+
class MojButtonMenuComponent {
|
|
61
|
+
menuButtonTitle;
|
|
62
|
+
/**
|
|
63
|
+
* Toggles the button menu by changing the `aria-expanded` attribute of the toggle button.
|
|
64
|
+
*/
|
|
65
|
+
toggleButtonMenu() {
|
|
66
|
+
const button = document.querySelector('.moj-button-menu__toggle-button');
|
|
67
|
+
const isExpanded = button.getAttribute('aria-expanded') === 'true';
|
|
68
|
+
button.setAttribute('aria-expanded', String(!isExpanded));
|
|
69
|
+
}
|
|
70
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: MojButtonMenuComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
71
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.5", type: MojButtonMenuComponent, isStandalone: true, selector: "opal-lib-moj-button-menu", inputs: { menuButtonTitle: "menuButtonTitle" }, ngImport: i0, template: "<div class=\"moj-button-menu\">\n <button\n class=\"govuk-button moj-button-menu__toggle-button govuk-button--secondary moj-button-menu__toggle-button--secondary\"\n type=\"button\"\n aria-haspopup=\"true\"\n aria-expanded=\"false\"\n (click)=\"toggleButtonMenu()\"\n >\n {{ menuButtonTitle }}\n </button>\n <div class=\"moj-button-menu__wrapper\" role=\"menu\">\n <ng-content></ng-content>\n </div>\n</div>\n", changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
72
|
+
}
|
|
73
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: MojButtonMenuComponent, decorators: [{
|
|
74
|
+
type: Component,
|
|
75
|
+
args: [{ selector: 'opal-lib-moj-button-menu', imports: [], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"moj-button-menu\">\n <button\n class=\"govuk-button moj-button-menu__toggle-button govuk-button--secondary moj-button-menu__toggle-button--secondary\"\n type=\"button\"\n aria-haspopup=\"true\"\n aria-expanded=\"false\"\n (click)=\"toggleButtonMenu()\"\n >\n {{ menuButtonTitle }}\n </button>\n <div class=\"moj-button-menu__wrapper\" role=\"menu\">\n <ng-content></ng-content>\n </div>\n</div>\n" }]
|
|
76
|
+
}], propDecorators: { menuButtonTitle: [{
|
|
77
|
+
type: Input,
|
|
78
|
+
args: [{ required: true }]
|
|
79
|
+
}] } });
|
|
80
|
+
|
|
81
|
+
class MojDatePickerComponent {
|
|
82
|
+
_control;
|
|
83
|
+
disabledDatesConcatenated;
|
|
84
|
+
dateService = inject(DateService);
|
|
85
|
+
labelText;
|
|
86
|
+
labelClasses;
|
|
87
|
+
hintText;
|
|
88
|
+
inputId;
|
|
89
|
+
inputName;
|
|
90
|
+
inputClasses;
|
|
91
|
+
minDate;
|
|
92
|
+
maxDate;
|
|
93
|
+
disabledDates;
|
|
94
|
+
disabledDays;
|
|
95
|
+
errors = null;
|
|
96
|
+
dateChange = new EventEmitter();
|
|
97
|
+
set control(abstractControl) {
|
|
98
|
+
// Form controls are passed in as abstract controls, we need to re-cast it.
|
|
99
|
+
this._control = abstractControl;
|
|
100
|
+
}
|
|
101
|
+
get getControl() {
|
|
102
|
+
return this._control;
|
|
103
|
+
}
|
|
104
|
+
constructor() {
|
|
105
|
+
afterNextRender(() => {
|
|
106
|
+
// Only trigger the render of the component in the browser
|
|
107
|
+
this.configureDatePicker();
|
|
108
|
+
});
|
|
109
|
+
}
|
|
110
|
+
/**
|
|
111
|
+
* Retrieves the disabled dates and concatenates them into a single string.
|
|
112
|
+
*/
|
|
113
|
+
concatenateDisabledDates() {
|
|
114
|
+
this.disabledDatesConcatenated = this.disabledDates ? this.disabledDates.join(' ') : '';
|
|
115
|
+
}
|
|
116
|
+
/**
|
|
117
|
+
* Sets the date value and emits the updated value through the `dateChange` event.
|
|
118
|
+
*
|
|
119
|
+
* @param value - The new date value to set.
|
|
120
|
+
*/
|
|
121
|
+
setDateValue(value) {
|
|
122
|
+
const parsedDate = this.dateService.getFromFormat(value, 'd/M/yyyy');
|
|
123
|
+
if (parsedDate.isValid) {
|
|
124
|
+
const formattedDate = parsedDate.toFormat('dd/MM/yyyy'); // Formats with leading zeros
|
|
125
|
+
this.dateChange.emit(formattedDate);
|
|
126
|
+
}
|
|
127
|
+
else {
|
|
128
|
+
this.dateChange.emit(value);
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
/**
|
|
132
|
+
* Configures the date picker functionality using the moj library.
|
|
133
|
+
*/
|
|
134
|
+
configureDatePicker() {
|
|
135
|
+
import('@ministryofjustice/frontend/moj/all').then((datePicker) => {
|
|
136
|
+
datePicker.initAll();
|
|
137
|
+
});
|
|
138
|
+
}
|
|
139
|
+
ngOnInit() {
|
|
140
|
+
this.concatenateDisabledDates();
|
|
141
|
+
}
|
|
142
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: MojDatePickerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
143
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.5", type: MojDatePickerComponent, isStandalone: true, selector: "opal-lib-moj-date-picker", inputs: { labelText: "labelText", labelClasses: "labelClasses", hintText: "hintText", inputId: "inputId", inputName: "inputName", inputClasses: "inputClasses", minDate: "minDate", maxDate: "maxDate", disabledDates: "disabledDates", disabledDays: "disabledDays", errors: "errors", control: "control" }, outputs: { dateChange: "dateChange" }, ngImport: i0, template: "<div\n class=\"moj-datepicker\"\n data-module=\"moj-date-picker\"\n [attr.data-min-date]=\"minDate\"\n [attr.data-max-date]=\"maxDate\"\n [attr.data-excluded-dates]=\"disabledDatesConcatenated\"\n [attr.data-excluded-days]=\"disabledDays\"\n>\n <div class=\"govuk-form-group\" [class.govuk-form-group--error]=\"!!errors\">\n <label class=\"govuk-label {{ labelClasses }}\" [for]=\"inputId\"> {{ labelText }} </label>\n\n @if (hintText) {\n <div id=\"date-hint\" class=\"govuk-hint\">{{ hintText }}</div>\n }\n\n @if (errors) {\n <p id=\"{{ inputId }}-date-error\" class=\"govuk-error-message\">\n <span class=\"govuk-visually-hidden\">Error: </span> {{ errors }}\n </p>\n }\n\n <input\n class=\"govuk-input moj-js-datepicker-input {{ inputClasses }}\"\n [id]=\"inputId\"\n [name]=\"inputName\"\n type=\"text\"\n aria-describedby=\"date-hint\"\n autocomplete=\"off\"\n [formControl]=\"getControl\"\n (change)=\"setDateValue($any($event).target.value)\"\n />\n </div>\n</div>\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
144
|
+
}
|
|
145
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: MojDatePickerComponent, decorators: [{
|
|
146
|
+
type: Component,
|
|
147
|
+
args: [{ selector: 'opal-lib-moj-date-picker', imports: [CommonModule, ReactiveFormsModule], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div\n class=\"moj-datepicker\"\n data-module=\"moj-date-picker\"\n [attr.data-min-date]=\"minDate\"\n [attr.data-max-date]=\"maxDate\"\n [attr.data-excluded-dates]=\"disabledDatesConcatenated\"\n [attr.data-excluded-days]=\"disabledDays\"\n>\n <div class=\"govuk-form-group\" [class.govuk-form-group--error]=\"!!errors\">\n <label class=\"govuk-label {{ labelClasses }}\" [for]=\"inputId\"> {{ labelText }} </label>\n\n @if (hintText) {\n <div id=\"date-hint\" class=\"govuk-hint\">{{ hintText }}</div>\n }\n\n @if (errors) {\n <p id=\"{{ inputId }}-date-error\" class=\"govuk-error-message\">\n <span class=\"govuk-visually-hidden\">Error: </span> {{ errors }}\n </p>\n }\n\n <input\n class=\"govuk-input moj-js-datepicker-input {{ inputClasses }}\"\n [id]=\"inputId\"\n [name]=\"inputName\"\n type=\"text\"\n aria-describedby=\"date-hint\"\n autocomplete=\"off\"\n [formControl]=\"getControl\"\n (change)=\"setDateValue($any($event).target.value)\"\n />\n </div>\n</div>\n" }]
|
|
148
|
+
}], ctorParameters: () => [], propDecorators: { labelText: [{
|
|
149
|
+
type: Input,
|
|
150
|
+
args: [{ required: true }]
|
|
151
|
+
}], labelClasses: [{
|
|
152
|
+
type: Input,
|
|
153
|
+
args: [{ required: false }]
|
|
154
|
+
}], hintText: [{
|
|
155
|
+
type: Input,
|
|
156
|
+
args: [{ required: false }]
|
|
157
|
+
}], inputId: [{
|
|
158
|
+
type: Input,
|
|
159
|
+
args: [{ required: true }]
|
|
160
|
+
}], inputName: [{
|
|
161
|
+
type: Input,
|
|
162
|
+
args: [{ required: true }]
|
|
163
|
+
}], inputClasses: [{
|
|
164
|
+
type: Input,
|
|
165
|
+
args: [{ required: false }]
|
|
166
|
+
}], minDate: [{
|
|
167
|
+
type: Input,
|
|
168
|
+
args: [{ required: false }]
|
|
169
|
+
}], maxDate: [{
|
|
170
|
+
type: Input,
|
|
171
|
+
args: [{ required: false }]
|
|
172
|
+
}], disabledDates: [{
|
|
173
|
+
type: Input,
|
|
174
|
+
args: [{ required: false }]
|
|
175
|
+
}], disabledDays: [{
|
|
176
|
+
type: Input,
|
|
177
|
+
args: [{ required: false }]
|
|
178
|
+
}], errors: [{
|
|
179
|
+
type: Input,
|
|
180
|
+
args: [{ required: false }]
|
|
181
|
+
}], dateChange: [{
|
|
182
|
+
type: Output
|
|
183
|
+
}], control: [{
|
|
184
|
+
type: Input,
|
|
185
|
+
args: [{ required: true }]
|
|
186
|
+
}] } });
|
|
187
|
+
|
|
188
|
+
class MojHeaderNavigationItemComponent {
|
|
189
|
+
actionClick = new EventEmitter();
|
|
190
|
+
/**
|
|
191
|
+
* Handles the click event for the action button.
|
|
192
|
+
* @param event - The click event.
|
|
193
|
+
*/
|
|
194
|
+
handleClick(event) {
|
|
195
|
+
event.preventDefault();
|
|
196
|
+
this.actionClick.emit(true);
|
|
197
|
+
}
|
|
198
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: MojHeaderNavigationItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
199
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.5", type: MojHeaderNavigationItemComponent, isStandalone: true, selector: "opal-lib-moj-header-navigation-item, [opal-lib-moj-header-navigation-item]", outputs: { actionClick: "actionClick" }, ngImport: i0, template: "<li class=\"moj-header__navigation-item\" role=\"listitem\">\n <a\n class=\"moj-header__navigation-link\"\n (click)=\"handleClick($event)\"\n (keyup.enter)=\"handleClick($event)\"\n tabindex=\"0\"\n href=\"#\"\n >\n <ng-content select=\"[linkText]\"></ng-content>\n </a>\n</li>\n" });
|
|
200
|
+
}
|
|
201
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: MojHeaderNavigationItemComponent, decorators: [{
|
|
202
|
+
type: Component,
|
|
203
|
+
args: [{ selector: 'opal-lib-moj-header-navigation-item, [opal-lib-moj-header-navigation-item]', template: "<li class=\"moj-header__navigation-item\" role=\"listitem\">\n <a\n class=\"moj-header__navigation-link\"\n (click)=\"handleClick($event)\"\n (keyup.enter)=\"handleClick($event)\"\n tabindex=\"0\"\n href=\"#\"\n >\n <ng-content select=\"[linkText]\"></ng-content>\n </a>\n</li>\n" }]
|
|
204
|
+
}], propDecorators: { actionClick: [{
|
|
205
|
+
type: Output
|
|
206
|
+
}] } });
|
|
207
|
+
|
|
208
|
+
const MOJ_HEADER_LINKS = {
|
|
209
|
+
govukLink: 'https://www.gov.uk/',
|
|
210
|
+
serviceLink: '/',
|
|
211
|
+
};
|
|
212
|
+
|
|
213
|
+
class MojHeaderComponent {
|
|
214
|
+
headerLinks = MOJ_HEADER_LINKS;
|
|
215
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: MojHeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
216
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.5", type: MojHeaderComponent, isStandalone: true, selector: "opal-lib-moj-header", ngImport: i0, template: "<header class=\"moj-header\" role=\"banner\">\n <div class=\"moj-header__container\">\n <div class=\"moj-header__logo\">\n <a [href]=\"headerLinks.govukLink\" class=\"govuk-header__link\" title=\"GOV.UK\" aria-label=\"GOV.UK home page\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n class=\"moj-header__logotype-crest\"\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 40 40\"\n height=\"40\"\n width=\"40\"\n >\n <path\n fill=\"#ffffff\"\n fill-rule=\"evenodd\"\n d=\"M38.1 16.9c.1 1.8 2.2 1.3 1.9 2.7 0-.9-3-.8-3-2.6 0-.3.1-.7.3-.9-.1-.1-.2-.1-.5-.1-.6 0-1.2.6-1.2 1.3 0 2.2 3 2.6 3 5.1 0 .6-.2 1-.6 1.2.2 0 .7-.1.8-.3-.2 1-1.2 1-1.6.6h-.3c.2.4.4.8.9.7-.9.7-2-.2-1.8-1.2-.2-.3-.4-.7-.6-.9-.1-.2-.2-.1-.2.1 0 .8-.6 1.6-.6 2.1 0 .6.6 1.1.8 1.1s.3-.2.4-.2c.1.1.1.2.1.7 0 .2 0 1 .1 1.7 0-.2.2-.3.3-.4.2-.1.4-.2.7-.1.1 0 .3.1.3.2.1.1.1.2.1.3 0 .2-.2.4-.3.6-.2.1-.3.2-.6.1-.2 0-.3-.1-.4-.2v-.1.7c0 .6-.1.8-.3.9 0-.1-.2-.2-.3-.2-.1 0-.3.1-.3.2 0 .2.3.2.3.6s-.8.8-1.3.8c.1-.2.2-.8.3-1.1-.1.1-.3.3-.4.7-.1.4-.3.4-.6.3.2-.2.6-1.1 1-1.3.4-.3.6-.4.7-1.1.1-.7 0-1.1 0-1.7 0-.8-.3-.7-.6-.7-.6 0-2.6-1.3-2.6-2.7v-.4c-.9 0-1.5.2-1.5 1.1 0 .3 0 .6.2.8.2.1.3.3 0 .4-.3.1-3.1 1.3-3.1 1.3-.3.1-.4 0-.6-.2-.1-.2-.3-.2-.4-.1-.2.1.1.2.1.4s-.1.7-1.3.6l.3-.6c.1-.2.1-.3.1-.3-.1 0-.1.1-.2.3l-.3.4h-.4l1-1c.2-.2.6-.4 1.1-.4.7-.1 2.9-.4 2.9-1.1 0-.8-.9-.8-.9-1.9 0-1 .4-2 3-1.9-.2-.7-.9-1.1-1.6-1.2-1.3-.3-1.7-1.2-1.8-2.1h-1c-.8 0-1.2-.3-1.5-.1-.1.1-.1.2 0 .3.1.2.3.7.6 1 .1 0 .4 0 .4.2s-.1.2-.1.3 0 .2.1.2.1-.1.1-.2c.1-.1.3-.1.7 0 .2.2.6.6.7 1-.3-.1-.8-.3-.9-.3s-.1.1 0 .1.4.2.6.3v.3c-.1-.1-.7-.4-1.1-.6-.3-.1-.6-.2-.8-.7-.2-.4-.8-1.6-1-1.9-.1-.2-.1-.3 0-.4.1-.1.1-.2.2-.3.1-.2.2-.2.4-.2s.8 0 1-.1c0 0 .1 0 .2-.1-.6-.6-1.2-1.4-1.2-1.6-.1-.1-.2-.2-.3-.2s-.2 0-.3.1l-.1.1c0-.1-.1-.1-.1-.2l-.3-.3c.2-.1.3-.3.4-.3.1-.1.2-.2.3-.2h.3c.2 0 .2 0 .3.1.2.2.6.4.8.7 0 0 .1 0 .1.1l.1-.1c.1-.1.2-.1.3-.1s.2.1.3.2.2.3.2.6v.2l.6.6c.1-.7.4-1.4.9-2h-.1v-.1c.1-.3.2-.9.3-1.1v-.3l.8.3.1-.1c.7-.7 2.3-1.1 2.3-2.1 0-.2-.1-.6-.3-.8.1.1.1.3.1.6 0 .2-.4.8-1.1.8-.3 0-.7-.3-.8-.3s-.2.1-.3.1c0 .4-.2.8-.3.8.1-.2 0-.6 0-.6-.1 0-.1.1-.1.4 0 .3-.2.7-.7.7.1-.1.2-.6.1-.7-.1-.1-.2.1-.3.1s-.2-.1-.2-.2-.2 0-.2-.1.2-.3.4-.3c.2-.1.6-.2.6-.4-.1-.2-.9.1-1.1.3-.4.3-.2-.1-.3-.2-.2-.4 0-.4.2-.7.2-.2.8-.7 1.5-1 0-.2.1-.3.3-.4.2-.1.6-.2.8-.3l-3.8-4c-.1-.1-.1-.1 0-.2 0 0 .1 0 .2.1l4 3.9c.3-.6.4-.9.3-1.3.4.2.9.7 1 1.2 1.2 0 1.6.8 1.9.4 0 .2-.1.3-.6.4 1.5.3 1 1.3 1.8 1.4-.1.1-.3.2-.6.1.9 1.3 0 2.1.7 2.8-.2.1-.7-.1-.9-.6.2 1.1-.1 1.7.1 2.1-.3.1-.6-.2-.7-.6-.1.2-.1.4-.2.7l.3.1-.1.1c-.6.6-.8.9-.9 1l-.1.1-.1-.1c-.3.4-.7.8-.7 1.2 0 .4.6 1.3 1.2 2.1v-.2c0-.1.1-.3.2-.4.1-.1.2-.1.4-.1s.4.1.6.3c.1.2.2.3.2.6 0 .1-.1.3-.2.4-.1.1-.2.1-.4.1-.1 0-.3-.1-.4-.1.4.6.9 1.2 1.1 1.7.4.9.9 1.4 1.3 1.4.6 0 1.1-.4 1.1-1.1 0-2.3-3-2.6-3-5.2 0-1.2 1-1.8 1.7-1.8.4 0 .7.1.9.3h.2c1.5 0 .6 1.9 1.7 2-.3.5-1 .2-1.3-.7zM30.3 10c.3-.2.8-.3 1.2-.3-.3-.1-.6-.3-.8-.3-.4-.1-.3.4-.4.6zm-2.7 5.5c0-.1 0-.3-.1-.3 0 0-.1-.1-.2-.1s-.1 0-.2.1-.1.2-.1.3c0 .2.1.4.3.4.1 0 .1 0 .2-.1 0 0 .1-.1.1-.3zm8.7 12.6v.2c.1.2.4.2.7 0 .1-.1.2-.2.2-.3v-.2c-.1-.1-.1-.1-.2-.1s-.3 0-.4.1c-.2.1-.3.2-.3.3zm-1.9-8.3c0 .1.1.3.2.4.1.1.2.2.4.2.1 0 .1 0 .2-.1s.1-.1.1-.2-.1-.3-.2-.4c-.1-.1-.2-.2-.4-.2-.1 0-.1 0-.2.1s-.1.1-.1.2zm-.8-3.2c.3-.3.9-1 .9-1l-.3-.3v.6c-.1-.1-.2-.2-.2-.3l-.2.3c.1 0 .3 0 .3.1-.2.2-.6.1-.7 0-.2-.2-.3-.3-.3-.4.1-.1.3-.1.4.1.2 0 .2-.2.2-.3-.1-.1-.2-.1-.3-.1.3-.2.6-.4.4-.9-.4.1-.6.3-.7.7 0-.1-.1-.3-.2-.3s-.3.1-.3.3c.2-.1.4.1.3.3-.1.1-.3.1-.6 0-.3-.4-.3-.6-.1-.9.1.1.1.2.1.4l.3-.6c-.1 0-.2.1-.3 0 .1-.1.2-.2.4-.3l-.7-.2c.1.2 0 .4 0 .6-.1-.1-.2-.2-.2-.3l-.3.6c.1-.1.3-.1.4-.1-.1.2-.4.3-.7.2-.2-.1-.3-.3-.3-.4.1-.1.3-.1.4.1.2-.1.2-.3.1-.4-.1-.1-.2-.1-.4 0 .3-.3.4-.6.3-1-.3.1-.6.4-.6.8 0-.1-.1-.2-.2-.2s-.3.1-.2.3c.2-.1.4.1.3.3-.1.1-.2.1-.6 0-.2-.1-.4-.2-.3-.6.1 0 .2.2.3.2l.1-.4h-.3c.1-.1.3-.2.4-.3l-.4-.2s-.2.9-.4 1.3l4.2 2.3zm0 7.9c.1-.2.1-.6 0-.7-.2-.1-.4 0-.7.2-.1.2-.1.6 0 .7.1.1.5 0 .7-.2zm1.1-1.9c.1-.2.1-.6 0-.7-.2-.1-.4 0-.7.2-.1.2-.1.6 0 .7.3.1.6 0 .7-.2zM27.4 18c.2-.1.4 0 .7 0 .2.1.3.3.4.4v.4l-.3.3c-.2.1-.4 0-.7 0-.5-.1-.6-.4-.5-.8.1-.2.2-.3.4-.3zm.2 1c.1.1.3.1.4 0 .1 0 .1-.1.2-.1v-.2c0-.1-.1-.2-.3-.3-.1-.1-.3-.1-.4 0-.1 0-.1.1-.2.1-.1.1.1.3.3.5zm4.8 7.2c.1-.1.2-.2.4-.2s.3.1.4.2c.1.1.2.3.2.6 0 .2-.1.4-.2.6-.1.1-.2.2-.4.2-.1 0-.3-.1-.4-.2-.1-.1-.2-.3-.2-.6 0-.2 0-.5.2-.6zm.3 1.1c.1 0 .2 0 .2-.1.1-.1.1-.2.2-.4 0-.3-.1-.6-.3-.6-.1 0-.2 0-.2.1-.1.1-.1.2-.2.4 0 .2 0 .3.1.4.1.1.1.2.2.2zm-4.8-13.8c.2-.1.3-.2.6-.2.1 0 .2.1.3.2s.1.2.1.4-.1.3-.3.6c-.3.2-.8.2-.9 0-.1-.3 0-.6.2-1zm0 .7v.2c.1.1.3.1.6 0 .1-.1.2-.2.2-.3v-.2c0-.1-.1-.1-.2-.1s-.2 0-.3.1c-.2 0-.3.2-.3.3zm5.7 13.7c.2-.1.4-.2.7-.1.4.1.8.4.7.8 0 .2-.1.3-.3.4-.1.1-.3.1-.6.1s-.3-.1-.6-.2c-.1-.1-.2-.3-.1-.6-.1-.2 0-.3.2-.4zm.4.9c.3 0 .6-.1.6-.3 0-.2-.2-.3-.4-.4-.2 0-.3 0-.4.1 0 0-.1.1-.1.2-.2.1 0 .3.3.4zm3.3-1.9c0-.6.4-1 1-1s1 .4 1 1-.4 1-1 1c-.5 0-1-.4-1-1zm.3 0c0 .4.3.8.8.8s.8-.3.8-.8c0-.4-.3-.8-.8-.8-.4.1-.8.5-.8.8zm-23.3-5.8c-.1.3.1.3.1.7 0 .3-.2.4-.6.6.2-.4 0-.7-.3-.8.1.8-.6.9-.8.8.2 0 .3-.4.2-.8-.1.2-.4.4-.7.4s-.4-.2-.6-.4c.3.2.6 0 .6-.2 0-.1-.3-.2-.3-.4 0-.6.6-.3.6-.8 0-.2-.1-.3-.2-.3s-.3.1-.3.3c-.3-.2 0-.9-.1-1.2 0 .7-.4.6-.6.9-.2-.2 0-.7-.2-1.2-.1.6-.3.4-.3.9-.6-.3-1.7-.2-2 .2 1 .8 2.2 1.2 2.2 2.4 0 .9-1.5 1.3-1.5 1.9 0 .6 1.5 2 2.2 2 .2 0 .3-.3.6-.3h.6c.2 0 .3.2.3.3.3 0 .8.6.3 1-.1-.2-.3-.6-.8-.3.2.4 0 .8-.4 1 .1-.2.2-.6-.1-.6s0 .2-.7.2c-.6 0-.6 0-.8-.3-.2-.3-.4-.4-.6-.4s-.2.3 0 .6c-1.2 0-.7-1.2-1.3-1.6v.9c-.4-.5-.8-.9-.8-1.3-.1-.3 0-.6-.3-.8-.1 0-.2-.1-.2-.3 0-.1.1-.1.3-.2.2-.1.6-.3.6-1 0-.4-.1-1.1-.9-1.7.1 1 0 1.9-.4 2.7-.6 1-1.7 1.7-2.2 1.9-.6.2-1.3.4-1.3 1.2 0 1.4.7 2.2 1.2 2.2.4 0 .3-.4.9-.4.2 0 .6.1.6.3.3-.1.7.1.7.4 0 .3-.1.4-.3.6.2-.4-.3-.4-.4-.4-.1.1 0 .2 0 .4s-.1.4-.4.6c.1-.1.1-.3-.2-.3-.2 0-.3.4-.7.4-.6 0-.7-.2-1.2-.1-.3.1-.3.3-.2.3-.7 0-.6-.8-.4-.9.1-.1.2-.2 0-.4-.2-.1-.6 0-.7.3-.6-1.1.2-1 0-2.2-.1.6-.4.9-.7 1 .1-.2-.1-.8-.1-1.2 0-.9.6-1.2.6-1.4 0-.2-.2-.4 0-.6.1-.1.3.1.6.1.7 0 1.2-.9 1.3-2 .1-1.2.7-2.1 1.1-3 0-.1 0-.3.1-.4-.6.7-1 1.6-1.7 2.1.1.8-1.5 1.7-2.3 1 .3 0 .8-.1 1-.6-.1 0-.2 0-.3-.1-.6.3-1.3-.1-1.3-.7.2.2.4.3.8.2.2-.1.1-.4.1-.8 0-2.3 3.6-3.9 3.6-5.8 0-.6-.3-.9-.8-.9-.2 0-.4.1-.7.2.2.1.3.3.3.6 0 2.1-3.5 1.9-3.7 3.3-.1-1.8 2-1.4 2.1-2.9-.4.7-1.2 1.1-1.7.9 1.1 0 .8-2.2 2-2.2.1 0 .2 0 .4.1.3-.3.8-.4 1.1-.4.6 0 1.3.3 1.3 1.3 0 2.2-3.6 3.7-3.6 5.8 0 .7.4 1 1 1 1.2 0 2.1-2.2 3.5-4.1.9-1.2 1.5-3.7 2-4.9-.7.4-.8 1.8-1.6 1.9.4-.3.1-1.4.4-2.3.1-.3.1-.6.1-.9-.4.6-.3 2.2-1.1 2.4.3-.3 0-.9 0-1.4 0-1 .6-1.1.6-2.1-.4.2-.3 1.4-1.2 1.4.7-.7 0-1.3.8-2.1-.4-.2-.8-.6-.8-.9.3-.2.7-.3 1-.3-.3-.2-.2-.4 0-.7.1.2.2.3.3.3.3-.1.8-.6 1.5-.8.5-.2 1.3-.5 1.6-.5.1 0 .1-.2.1-.3.2 0 .6 0 .7.3.2-.2.6-.3.9-.3.2.4.2.8 0 1.2.4 0 .7.4 1.1.3-.3.4-.8.3-1.2.2 1.2.3 1.5 1.6 2.1 1.7-1.2.7-1.7-.3-2.3-.3 1.7.9 1.7 1.9 2.1 1.9-.6.4-.9-.1-1.6-.3 1.3.9 1.3 1.6 1.2 2.1.3.2.2.6.2 1 .2-.1.6-.2.8-.2-.1.1-.2.2-.2.3-.7.8-1.1 1.4-1.5 2.4-.3-.2-.6-.6-.8-.7-.2-.2-.6-.2-.7-.2.4.4 1.8 2 2.2 2.4.4.4.3.8.4 1.2.4.4.8.7.7.9zM7.5 10.2c.4 0 .6-.6.4-.9-.4.2-1 .3-1.3.4.5.2.5.5.9.5zm2.3 2.5c.4-.2.4-.7.3-.9-.1-.2-.2-.4-.3-.4-.2 0-.4-.1-.4-.3-.1-.2.2-.3.4-.6-.2-.1-.4-.2-.2-.3.2-.1.4.1.4 0 .1-.1-.1-.2-.2-.3s-.2-.1-.3 0l-1.2.4c-.1 0-.3 0-.3.1s-.1.3 0 .3.1-.3.3-.3.2.1 0 .4c.4 0 .6-.1.7.2.1.2 0 .3-.1.6-.1.1 0 .3 0 .6.1.2.5.7.9.5zm.1-3.5c.2-.2 0-.4.3-.9-.3.2-.8.5-1.3.7.3.3.7.5 1 .2zm-.7-3.1c.1.1.1.2.1.3-.1 0-.1-.1-.3-.2v.6c.1-.1.2-.1.2-.2 0 .3-.1.6-.3.6l-.3-.3c0-.1.1-.2.2-.1 0-.3-.2-.3-.3-.2.1-.4.1-.6-.2-.7-.3.3-.1.4.1.6-.2-.1-.5.1-.2.4 0-.2.2-.1.2 0s-.1.3-.4.4c-.3.1-.4-.1-.5-.3.1 0 .2 0 .4.1l.1-.5c-.1.3-.2.3-.3.4 0-.1.1-.4.1-.4l-.7.2s.3.1.4.2c0 0-.1.1-.4 0l.2.4c0-.2.1-.3.2-.3.1.2.1.4-.2.6-.2.2-.4.1-.4 0-.1-.1 0-.3.2-.2 0-.3-.3-.3-.3-.1 0-.3-.1-.6-.4-.6-.1.3 0 .6.3.7-.2 0-.3.1-.1.3 0-.2.1-.2.2-.1s0 .2-.1.3c-.1.1-.3.1-.6-.2h.2L6 7.3v.3c-.1-.1-.1-.1-.1-.3l-.2.2c.2.2.6.5.9.9.3-.2 1-.6 1.5-.7.4-.2 1.1-.4 1.6-.4-.1-.6 0-1 0-1.2h-.5zm-2.7-.7l.2.4.1-.3v.6c0 .1.1.3.3.3.1 0 .3-.1.3-.3 0-.1-.1-.2-.1-.2 0-.1-.2-.3-.3-.4h.4v-.4l-.4.2v-.4l-.4.1.2.3-.3.1zm1.4.4c.1-.2.1-.3 0-.4-.1-.1-.2-.1-.3 0-.1.1-.1.2 0 .3.1.1.2.1.3.1zm.6-.5c.1-.1.1-.2 0-.3s-.2-.1-.3 0-.2.2 0 .3c.1.1.2.1.3 0zm.5.1c.1-.1.1-.2 0-.3s-.2-.1-.3 0c-.1.1-.1.2 0 .3.1.1.3.1.3 0zm.2.5c.1.1.2.1.3 0s.1-.2 0-.3h-.3c-.2 0-.2.3 0 .3zm-2.7.4c.1 0 .2-.1.2-.2s-.1-.2-.2-.2-.2.1-.2.2.1.2.2.2zm-.7.1c.1 0 .2-.1.2-.2S6 6 5.8 6c-.1 0-.2.1-.2.2s.1.2.2.2zm-.1.2c0-.1-.1-.2-.2-.2s-.2.1-.2.2.1.2.2.2.2 0 .2-.2zm.1.7c0-.1-.1-.2-.2-.2s-.2.1-.2.2.1.2.2.2.2-.1.2-.2zm15.7 16.9c-.1 0-.1.1-.1.1 0 .1 1-.1 1 .1 0 .1-.2.2-.6.2h-.1c0 .1.1.1.1.1v.1s0 .1 0 0h-.1s-.1 0 0 .1h-.1v-.1h-.1v-.1h.1l.1.1.1-.1-.1-.1h-.3c.1.1.1.2.1.3v.1h-.1s0 .1-.1.1H21c0-.1.1 0 .1-.1 0 0 0-.1.1-.1s.1.1.2.1h.1-.1v-.1c-.1 0-.1.1-.2.1 0 .1-.1.2-.1.2l-.1.1c-.1 0-.1 0-.1.1v-.1h-.1l-.1.1v-.1s0 .1-.1.1c0 0-.1 0-.1-.1v.2s-.1 0-.1-.1v-.1c-.1.1-.1 0-.1 0s0-.1.1-.1h.1c-.1 0-.1 0-.1-.1h.1v.1h.4v-.1c-.1 0-.1 0-.1-.1-.4-.2-.4-.3-.4-.3-.1 0-.2 0-.1-.1 0 .1.1.1.1 0 0 0-.1 0 0-.1v-.1h.1-.1.1l.1.1h.1v.1c0 .1 0 .1.1.1s.1.2.2.2v-.2s0-.1.1-.1l.1-.1v-.1h.2s.1 0 .1.1h.1s0 .1-.1.1c0 0 0 .1-.1.2.4-.1.8 0 .9 0 .2 0 .4-.1.4-.1 0-.1-1 .1-1-.1-.4-.4-.3-.4-.2-.4 0 0 0-.1 0 0 .2-.2.6 0 .7-.1 0 0-.2.1-.3.1.3.1.4-.1.8 0-.3-.1-.7.3-1.2 0 0 .1 0 0 0 0zm-.7 0c0 .1 0 .1 0 0 .1.1.1.1 0 0 .1.1.1.1 0 0zm0 0s-.1 0 0 0c-.1 0-.1 0 0 0-.1.1 0 0 0 0zm-.1.3s0 .1 0 0c0 .1.1.1 0 0 .1 0 .1 0 0 0 .1 0 .1 0 0 0 .1-.1.1-.1.1 0h-.1c0-.2 0-.2 0 0 0-.2.1-.2 0 0zm1.1-1.6c-.1 0-.3 0-.3.1s.7.1.9.1c.3 0 .3.1.3.1 0 .1-.3.1-.6.1h.3c.1 0 0 0 0 0h.1v.2h-.1c0 .1-.1 0-.1.1v.1h-.1v-.1s0 .1-.1.1 0-.1.1-.1H22s0-.1.1-.1h.1v-.1h-.5v.1s.1.1 0 .1h-.1s0 .1-.1.1h-.3c0-.1.1 0 .1-.1h-.1s0-.1.1-.1.1.1.2.1h.1-.1c-.1 0 0-.1 0-.2h-.1c-.4-.1-.2.1-.4.1 0 0 0 .1-.1.1 0 .1-.1.2-.2.1-.1 0-.2 0-.2.1v-.1h-.1c0 .1-.1.1-.1.1v-.2s0 .1-.1.1c0 0-.1 0-.1-.1v.2s-.1 0-.1-.1v-.1c-.1.1-.1 0-.1 0s0-.1.1-.1h.1c-.1 0-.1-.1-.1-.1h.1v.1c0 .1.2 0 .2 0h.2v-.1h-.1c-.1-.1-.1 0-.1 0-.1 0-.2 0-.1-.1 0 .1.1.1.1 0-.1 0-.1 0 0-.1v-.1s0-.1.1 0h-.1.1l.1.1h.1v.1c0 .1 0 .1.1.1h.1v-.1s0-.1.1-.1l.1-.1V23h.2s.1 0 .1.1h.1s0 .1-.1.1c0 0 0 .1-.1.2.3-.1 1 0 1.2 0 .1 0 .4 0 .4-.1 0 0 0-.1-.2-.1s-1 .2-1-.1c-.2-.3.1-.3.2-.2.1-.1.1-.1 0 0 .2-.2.6 0 .7-.1 0 0-.2.1-.3.1.3.1.4-.1.8 0-.3-.1-.8.1-1.2 0 .1 0 .1 0 0 0zm-.9 0s-.1-.1 0 0c-.1 0-.1 0 0 0zm.1.1s-.1 0 0 0l-.1-.1c-.1.1 0 .1.1.1h-.1v.1l.1-.1c-.1.1-.1.1 0 0-.1.1-.1.1 0 0-.1 0-.1 0 0 0-.1 0-.1 0 0 0-.1 0-.1 0 0 0zm0 0c0-.1 0-.1 0 0 0-.1 0 0 0 0zm2.2-.9s0 .1 0 0c0 .1 0 .1 0 0 0 .1 0 .1 0 0v.1c0 .1-.1 0-.1.1 0 0 .1 0 0 .1H23v-.1s0 .1-.1.1v-.1h-.2s0-.1.1-.1h.1v-.1h-.2c-.1 0-.1.1-.2.1h-.2v.1s.1.1 0 .1h-.1s0 .1-.1.1h-.3c0-.1.1 0 .1-.1h-.1s0-.1.1-.1.1.1.2.1h.1-.2c-.1 0-.1-.1 0-.2 0 0 0 .1-.1.1-.6-.1-.3.2-.8.1 0 0 0 .1-.1.1h-.1l-.1.1c-.1 0-.1 0-.2.1v-.1h-.1c0 .1-.1.1-.1.1v-.2s0 .1-.1.1c0 0-.1 0-.1-.1v.2s-.1 0-.1-.1v-.1c-.1.1-.1 0-.1 0s0-.1.1-.1h.1c-.1 0-.1-.1-.1-.1h.1v.1c0 .1.2 0 .2 0h.2s-.1-.1 0-.1v-.1h-.1l-.2-.2v-.1c-.1 0-.2 0-.1-.1 0 .1.1.1.1 0-.1 0-.1-.1 0-.1v-.1s0-.1.1 0c0 0-.1 0-.1-.1h.1s0 .1.1.1h.1v.1c0 .1 0 .1.1.1s.1.1.2.1v-.1s0-.1.1-.1l.1-.1v-.1h.3s.1 0 .1.1h.1s0 .1-.1.1c0 0 0 .1-.1.2.4-.1 1.5 0 1.7 0 .1 0 .4 0 .4-.1 0 0 0-.1-.3-.1-.2 0-1.3.2-1.3-.1 0-.2.3-.1.7-.1.1-.1.6 0 .7 0 0 0-.2.1-.3.1.3.1.4-.1.8 0-.2-.1-.7.2-1.1.1h-.1c-.2 0-.6 0-.6.1 0 .2.9.1 1.2.1.3 0 .4.1.4.1 0 .1-.3.1-.4.1h.3c-.4-.1-.4-.1-.3 0-.1 0 0-.1 0 0zm-2.2-.5s0 .1 0 0c.1.1.1.1.1 0H21zm-.1 0s0-.2 0 0c0 0-.1 0 0 0zm-.1.2c.1.1.1 0 0 0 .1 0 .1 0 0 0 .1 0 .1-.1 0 0l.1-.1h-.1c.1 0 .1 0 0 .1.1-.1.1-.1 0 0 .1-.1 0 0 0 0zm-1.9-2c0 .1-.3.1-.4.1h.5v.2c0 .1-.1 0-.1.1 0 0 .1 0 0 .1h-.1v-.1.1-.1h-.2s0-.1.1-.1h.1V20h-.2c-.1 0-.1.1-.2.1h-.2v.1s.1.1 0 .1H18s0 .1-.1.1h-.3c0-.1.1 0 .1-.1h-.1s0-.1.1-.1.1.1.2.1h.1-.1c-.1 0-.1-.1 0-.1h-.1c-.6-.1-.3.2-.8.1 0 0 0 .1-.1.1l-.1.1h-.1c-.1 0-.2 0-.2.1v-.2h-.1c0 .1-.1.1-.1.1v-.2s0 .1-.1.1c0 0-.1 0-.1-.1v.2s-.1 0-.1-.1v-.1c-.1.1-.1 0-.1 0s0-.1.1-.1h.1c-.1 0-.1-.1-.1-.1v.1c0 .1.2 0 .2 0h.2v-.1h-.1l-.2-.2v-.1c-.1 0-.2 0-.1-.1 0 .1.1.1.1 0-.1 0-.1-.1 0-.1v-.1s0-.1.1 0c0 0-.1 0-.1-.1h.1s0 .1.1.1h.1v.1c0 .1 0 .1.1.1s.1.1.1.1v-.1s0-.1.1-.1l.1-.1v-.1h.3s.1 0 .1.1h.1s0 .1-.1.1c0 .1 0 .1-.1.2.5-.1 1.5 0 1.8 0-.4.1-.1 0 0 0-.1-.1-.1-.1-.4-.1-.2 0-1.3.2-1.3-.1 0-.2.3-.1.7-.1.1-.1.6 0 .7 0 0 0-.2.1-.3.1.3.1.6-.1.8 0-.3-.1-.7.2-1.1.1h-.1c-.2 0-.6 0-.6.1 0 .2.9.1 1.2.1.3-.3.4-.2.4-.1zm-2.3-.2c.1.1.1.1.1 0h-.1zm-.1-.2s-.1 0 0 0c-.1 0-.1 0 0 0 0 .2 0 0 0 0zm-.1.3c0 .1 0 .1 0 0 0 .1.1.1 0 0 .1.1.1 0 0 0 .1 0 .1 0 0 0l.1-.1h-.1c.1 0 .1 0 0 .1.1 0 .1 0 0 0 .1 0 0 0 0 0zm2.6-1.4c0 .1-.3.2-.6.2h.6v.2h-.1c0 .1-.1 0-.1.1 0 0 .1 0 0 .1h-.1v-.1.2-.1h-.2s0-.1.1-.1h.1v-.1h-.2c-.1 0-.1.1-.2.1h-.2v.1c.1 0 .1.1 0 .1H18s0 .1-.1.1h-.1.1-.2c0-.1.1 0 .1-.1h-.1s0-.1.1-.1.1.2.2.1h.1-.1c-.1 0-.1-.1 0-.2h-.1c-.4-.1-.2.2-.6.2h-.1c0 .1-.2.2-.2.2-.1.1-.1 0-.2.1v-.2h-.1c0 .1-.1.1-.1.1V19s0 .1-.1.1c0 0-.1 0-.1-.1v.2s-.1 0-.1-.1V19c-.2 0-.2-.1-.2-.1s0-.1.1-.1h.1c-.1 0-.1-.1-.1-.1H16v.1c0 .1.2 0 .2 0h.2v-.1h-.1c-.1 0-.1-.1-.1-.1v-.1c-.1 0-.2 0-.1-.1 0 .1.1.1.1 0-.1 0-.1-.1 0-.1v-.1s0-.1.1 0c0 0-.1 0-.1-.1h.1s0 .1.1.1V18s.1 0 .1.1v.1c0 .1 0 .1.1.1s.1.1.1.1h.1v-.1s0-.1.1-.1l.1-.1V18h.3s.1 0 .1.1v.1h.1s0 .1-.1.1c0 0 0 .1-.1.2.4-.1 1.1 0 1.3 0 0-.1.3-.1.4-.2-.1-.1-.1-.1-.4-.1-.2 0-1.1.2-1.1-.1 0-.1.2-.1.4-.1.2-.1.4 0 .6-.1 0 0-.1.1-.2.1.3.1.6-.1.9.1-.2-.1-.8.1-1.1 0H18c-.2 0-.3 0-.3.1 0 .2.7.1 1 .1.2-.1.3-.1.3 0zm-2.5.3c-.1 0-.1 0 0 0zm.5-.5c.1.1.1.1.1 0H17zm-.1-.1s-.2 0 0 0c0 .1 0 .1 0 0zm-.2.3c.2.1.2 0 0 0 .2 0 .2 0 0 0 .2-.1.2-.1 0 0l.1-.1h-.1c.2 0 .2 0 0 .1.2-.1.2-.1 0 0 .2-.1 0-.1 0 0zm1.8-1.2c.1 0 .2.1.3.1h.2v.2c0 .1-.1 0-.1.1 0 0 .1 0 0 .1h-.1v-.2h-.2s0-.1.1-.1h.1v-.1h-.4v.2h-.1v.1h-.4c0-.1.1 0 .1-.1h-.1s0-.1.1-.1.1.1.2.1h.1-.1v-.2h-.1c-.3 0-.1.1-.2.1 0 0-.1.1-.2.1v-.1h-.1l-.1.1c-.1 0-.1 0-.1.1v-.1h-.1l-.1.1v-.1s0 .1-.1.1c0 0-.1 0-.1-.1v.2s-.1 0-.1-.1v-.1c-.1.1-.1 0-.1 0s0-.1.1-.1h.1c-.1 0-.1 0-.1-.1h.1v.1h.3s.1 0 .2-.1l-.1-.1c-.1 0-.2 0-.1-.1 0 .1.1.1.1 0-.1 0-.1 0 0-.1v-.1h.1-.1.1v.1h.1v.2l.1.1V17s0-.1.1-.1l.1-.1v-.1h.4s0 .1-.1.1c0 0-.1.1-.1.2.1-.1.2 0 .4.1.3-.1.5-.1.5-.2 0-.2-.9 0-.9-.3 0 0 0-.1.1-.1v-.1c.1-.1.2-.1.3-.2 0 0 0 .1-.1.2.2 0 .2-.3.7-.2-.3.1-.3.3-.8.4l-.1.1c0 .2.9 0 .9.3-.1 0-.2.1-.6.1zm-.7-.4c0 .1 0 .1 0 0 .1.1.1.1 0 0 .1.1 0 0 0 0zm0 0c-.2 0-.2 0 0 0-.2 0-.2 0 0 0-.2 0-.2 0 0 0zm-.2.2c-.1 0-.1 0 0 0 0 .1 0 0 0 0 .1-.1.1-.1.1 0h-.1c0-.1 0-.1 0 0 0-.1 0-.1 0 0zm1.3 5.1c.1 0 .1 0 .1.1s-.1.1-.2.1l-.1 2.4h.1v.2c0 .1-.1.1-.2.1 0 .3-.2.4-.4.4-.1 0-.3-.1-.3-.3 0-.1.1-.2.2-.2s.1 0 .1.1-.2 0-.2.1 0 .1.1.1.2-.1.2-.2c0-.2-.2-.2-.4-.2-1.3-.4-2.1-1.8-2.1-2.8h-.1l.1-.2-.1.1c-.1 0-.2-.1-.2-.2s.1-.2.2-.2.2.1.2.2l.1-.2c.2.1.6.2.9.2.7 0 1.2-.3 1.5-.3.2.1.4.4.5.7zm-2.6.2c-.1 1.2.8 2.1 1.7 2.4l-1.7-2.4zm1.8 2.3c0-.1 0-.3.1-.4l-1.3-1.8h-.3l1.5 2.2zm.1-.8c0-.1 0-.3.1-.4l-.8-1.1c-.1 0-.2.1-.3.1l1 1.4zm.2-1.7c0-.2 0-.3-.1-.3s-.4.1-.7.2l.7 1c0-.2.1-.4.1-.7v-.1c-.1 0-.1-.1-.1-.1h.1zm4.3-2.6c.1 0 .1-.1.1-.1h-.1s.1 0 0-.1c0-.1-.1-.1-.1 0s-.4 0-.4-.3l.1.1h.1c.1 0 .1-.1.1-.1 0-.1-.1-.2-.3-.3-.1 0-.1-.1-.1-.1 0-.1 0-.2-.1-.4v-.2c-.1.1-.1.3.1.6.1.1.4.3.4.4 0 0 0 .1-.1.1h-.1s-.1 0-.1-.1c-.1-.1-.2-.3-.3-.4-.1-.2-.1-.3-.1-.6.1-.1-.1-.4-.1-.6v-.1h-.1s0-.1-.1-.1-.1 0-.1-.1c0 0 0 .1-.1.1h-.4c-.1 0-.1 0 0 .1v.2-.1h.1v.1h-.1v.1h.3c0 .1-.2.1-.2.3l-.1-.1-.1-.1-.1-.1c-.1 0-.1-.1-.1-.1v-.1l-.1-.1v.2s0-.1-.1-.1c0 0 0-.1-.1 0 0 0 0 .1.1.1h-.1v.2h-.1c-.1.1 0 .2.1.1v.3c0 .1.1.2.3.3l-.2.2s-.1.1-.2.1l-.1-.1h-.2.2-.1s-.1.1 0 .1v-.1s.1.1.1 0v.1s.1.1.1 0l-.1-.1v-.1s0 .1.1 0v-.1h.2s0-.1.1-.1h.1s0-.1.1-.1c0 .3.3.2.4.4-.1 0-.2-.1-.3-.1s-.2.1-.2.2.1.2.1.3h-.2c-.1 0-.1-.1-.2-.1 0 0-.1 0-.1.1h.1s-.1 0-.1.1c0 0 0 .1.1 0 0 0 0 .1.1 0h.1s0-.1.1 0h.2v-.1c0-.1-.1-.1-.1-.1 0-.1.1-.2.2-.2 0 .1.1.3.3.4.1 0 .2-.1.2-.1v.1h-.1s-.1 0-.1.1h.1s.1.1.1 0c0 0-.1.1 0 .1s0-.1.1-.1v.1h.1v-.1s.1 0 .1-.1c1 .6 1 .6 1 .4 0 .2 0 .2 0 0 0 .2 0 0 0 0zm.7.6c.1 0 .2.1.2.2l-.1.1s.1.1.1.2c-.1 0-.1 0-.2-.1 0 .1 0 .1-.1.1s-.2 0-.2-.1c0 .1.2 0 .1 0h-1.5c0 .1 0 .2-.1.3-.1-.1-.1-.2-.1-.3h-1.3c0 .1.1.1.1 0 0 .1-.1.2-.2.2H20s-.1.1-.2.1c0-.1 0-.1.1-.2-.1 0-.1 0-.1-.1s0-.2.2-.2c-.1 0 0 .2 0 .1v-1.9c-.1 0-.2 0-.3-.1.1-.1.2-.1.3-.1v-1.8c-.1 0-.1.1 0 .1-.1 0-.2-.1-.1-.2l.1-.1s-.1-.1-.1-.2c.1 0 .1 0 .2.1 0-.1 0-.1.1-.1s.2 0 .2.2c0-.1-.1-.1-.1 0 .3.1.8.2 1.1.4.3.2.7.6 1 .9l.1.1c0-.1.1-.1.3-.1-.2.3-.3.3-.3.3.4.7.8 1.4.9 2.3V20zm-1.3-2.3c-.2-.3-.6-.6-.9-.8-.2-.2-.6-.3-.9-.4v.2c-.1 0-.1 0-.1-.1v1.2c.1 0 .1 0 .1.1v.1c.1 0 .1 0 .2.1-.1.1-.1.1-.2.1.1 0 .1.1 0 .1l-.1.1V20s.1-.1.2-.1c0 .1 0 .1-.1.2h1c0-.1 0-.1.1-.1h.1c0-.1 0-.1.1-.2.1.1.1.1.1.2 0-.1.1-.1.1 0l.1.1H23s-.1-.1-.1-.2h.1c-.1-.7-.3-1.2-.7-1.8h-.1s-.1-.1 0-.1c0 0-.1.1-.2 0 0-.1 0-.1.1-.2v-.1zm4.2 2.7v.4c0 1-.2 2.1-.6 3-.3.9-.9 1.8-1.5 2.4-.3.3-.7.7-1 .9-.1.1-.4.2-2-.2-.2 0-.3-.1-.6-.1 0-.2 0-.3.1-.4.1-.2.1-.3.2-.4.1 0 .1-.1.2-.1.6-.2 1-.7 1.5-1.2.4-.6.8-1.1 1-1.8.2-.7.3-1.3.3-2h-4.5v5c.3 0 1 .1 1 .1-.1.2-.2.4-.2.8-.6-.1-1-.3-1.6-.6.4-.2.6-.2.8-.2v-4.9h-4.7c0-.2-.1-.6-.2-.7-.2-.3-.3-.4-.3-.9 0-.2-.1-.6-.3-.8-.1-.1-.7-.8-.8-.9.3-.9.9-1.8 1.5-2.4.4-.4.9-.9 1.5-1.2-.2-.2-.6-.4-.6-.9 0-.2.1-.4.2-.6-.3-.9-.8-2-1.2-2.6l.9-.4c-.2.3-.2.8-.2 1 .2-.2.4-.4.6-.7 0 .3.2.8.3 1-.2 0-.4-.1-.8 0 .1.2.6.6 1.1.3.3-.1.7-.2.7-.6 0-.1-.1-.3-.3-.3s-.2.3-.1.4c-.2-.1-.6-.9-.1-1 .3-.1.7.3.8.7 0-.2.2-.7.6-.7.4 0 .3.8.1 1 0-.2-.2-.4-.3-.4s-.2.1-.2.3c0 .2.3.4.8.4.3 0 1.1-.1 1.1-.9-.2 0-.7.2-.8.4V9.4c.2.3.6.6.8.6-.1-.3-.3-.7-.7-.9h1.7c-.3.2-.6.6-.7.9.2 0 .6-.2.8-.4v1.2c-.2-.2-.6-.4-.8-.4.1.8.8.9 1.1.9.4 0 .8-.1.8-.4 0-.2-.1-.3-.2-.3s-.2.1-.3.4c0-.2-.2-1.1.2-1.1.3 0 .4.3.6.8.1-.3.4-.8.8-.7.3.1.1.9-.1 1 .1-.1 0-.4-.1-.4-.2 0-.3.1-.3.3 0 .2.3.4.7.6.6.1 1-.2 1.1-.4-.2-.1-.4-.1-.8.1.1-.2.3-.8.3-1 .1.3.2.6.6.7 0-.2 0-.7-.2-1l.9.4c-.4.4-1 1.6-1.2 2.6.2.1.3.3.3.7 0 .4-.2.7-.6.9.6.3 1 .8 1.5 1.2.3.3.6.8.9 1.2 0 0-.1.1-.1.2-.1.1-.2.2-.2.3-.1.1-.1.2-.1.3 0 .1 0 .2.1.4l1 2c-.6 0-.4.2-.2.3zm-7-5c-.6 0-1.2.1-1.8.4-.6.2-1.1.7-1.5 1.2-.4.6-.8 1.1-1 1.8-.2.7-.3 1.3-.3 2.1h4.6v-5.5zm.1-2.2c1.6 0 2.6.4 3.2.9.3-.2.6-.4.6-.7 0-.9-2.5-1-3.7-1-1.2 0-3.7.1-3.7 1 0 .2.1.4.6.7.5-.4 1.5-.9 3-.9zm4.7 7.7c0-.7-.1-1.4-.3-2.1-.2-.7-.6-1.2-1-1.8-.4-.6-.9-.9-1.5-1.2-.6-.2-1.1-.4-1.7-.4v5.5h4.5zm11 11.1c0-.1-.1-.1-.1-.1-1.5.4-3.2-.8-4.9-1.9-1.5-1-2.8-1.9-4-1.9-.4 0-.8.1-1.1.2-.4.2-.7.6-.9 1.1-.2.4-.4.8-.6 1.1-.2.3-.3.6-.3.8 0 .2.1.4.3.7.1.2.4.3.8.6.1 0 .1.1.2.1.3.1.4.2.4.4-.6.2-1.3.4-2.1.6-.9.1-2 .2-3.1.2s-2.1-.1-3.1-.2c-.9-.1-1.6-.3-2.1-.6 0-.2.2-.3.6-.4.1 0 .1-.1.2-.1.3-.1.6-.3.8-.4.2-.2.3-.3.3-.6s-.1-.6-.3-.8c-.1-.2-.3-.6-.6-1.1-.2-.4-.6-.9-.9-1.1-.3-.2-.7-.2-1.1-.2-1.2 0-2.6.9-4 1.9-1.8 1.1-3.6 2.3-4.9 1.9-.1 0-.1 0-.1.1s0 .1.1.1c.4.2.8.4 1.2.8.6.4 1 .8 1.6.8.6 0 1.1-.1 1.8-.6.6-.3 1.2-.7 1.8-1.1 1.1-.8 2.3-1.6 3.5-1.7l-.3.3c-.3.3-.7.6-.7 1.1 0 .4.1.7.3 1.1.1.1.1.2.2.4s.2.4.2.8c0 .1.1.3.1.4.1.2.2.8 1 1.2 1 .4 2.6.8 4.9.8 2.2 0 3.9-.2 4.9-.8.8-.4 1-.9 1-1.2 0-.2.1-.3.1-.4.1-.3.1-.6.2-.8.1-.2.2-.3.2-.6.2-.3.3-.6.3-.9 0-.6-.3-.8-.7-1.1l-.3-.3c1.1.1 2.3.9 3.5 1.7.6.4 1.2.8 1.8 1.1.7.3 1.2.6 1.8.6.6 0 1-.3 1.6-.8.3-.3.8-.6 1.2-.8-.9-.2-.7-.3-.7-.4zm-14.6-1.4c.4 0 .7.3.7.7 0 .3-.2.6-.3.8-.1-.2-.1-.3-.2-.3-.2 0-.1 1.1-.8 1.1v.2c0 .2-.2.4-.4.4s-.5-.3-.5-.5v-.2c-.7 0-.6-1.1-.8-1.1-.1 0-.2.1-.2.3-.1-.2-.3-.4-.3-.8 0-.3.2-.7.7-.7h.2V29c.7.1 1.2.2 1.8.2v1.2c0 .2 0 .2.1.2zm-1.1 2.6c.1 0 .2-.1.2-.2s-.1-.2-.2-.2-.2.1-.2.2.1.2.2.2zm1.5-1.5c.1-.1.1-.3.1-.4 0-.2-.1-.4-.4-.4-.6 0-.4.8-.7.8-.1 0-.2-.1-.2-.2 0-.2.3-.4.3-.8s-.3-.6-.6-.8c-.3.2-.6.6-.6.8 0 .3.3.6.3.8 0 .1-.1.2-.2.2-.2 0-.1-.8-.7-.8-.3 0-.4.3-.4.4 0 .1 0 .2.1.4l.2-.2c.4 0 .2 1.1.8 1.1.2 0 .3-.1.3-.3 0-.1-.1-.2-.1-.3 0-.1.1-.2.2-.2s.2 0 .2.2c0 .1-.1.2-.1.3s.1.3.3.3c.4 0 .3-1.1.8-1.1.3 0 .3.1.4.2zm.3-4.1c.7.1 1.5.3 1.9.2l-.1.1c-.2.2-.4.3-.7.6-.7.4-1.3.7-1.8.7-.6 0-1.3-.1-2.1-.3-.7-.2-1.3-.4-1.8-.7-.2.2-.6.2-.9.1-.3-.1-.6-.6-.6-.8v-.1l-.7-.7c-.7-.7-1.1-1.6-1.5-2.4-.1-.4-.3-.9-.3-1.3.6.2.8 0 1-.2.1 0 .1.2.1.2.7 0 1-.4 1.1-.8.1.4.1.8.3 1.1.2.7.6 1.2 1 1.8.1.2.3.3.4.4.1 0 .2-.1.3-.1.2 0 .4.1.7.3.2.2.2.4.2.7 1.3.4 2.5.8 3.5 1.2zM17.4 26c.1 0 .1.1.2.1 0-.1-.1-.2-.2-.4-.1-.1-.3-.2-.6-.2-.4 0-.8.4-1 .6-.1 0-.2 0-.3-.1 0 .1.1.2.1.3-.2.3-.3.7-.3.9 0 .1.2.4.4.7.2.1.3.1.6 0-.1-.1-.2-.1-.3-.2-.1 0-.2-.1-.2-.2v-.1c0-.1 0-.2.1-.3v-.3h.1c.1.1.3.1.4.1 0 0 .1 0 .1-.1.1-.1 0-.3-.2-.4l-.1-.4.1-.1c.1-.1.1-.2.2-.2.5.1.6.1.9.3zm.7 1.9c.2 0 .4-.2.4-.4s-.2-.4-.4-.4-.4.2-.4.4c-.1.3.2.4.4.4zm1.9.7c.2 0 .4-.2.4-.4s-.2-.4-.4-.4-.4.2-.4.4c0 .1.2.4.4.4zM20 5c-.2-.2-.4-.4-.4-.8.2 0 .6.2.8.4V3.5c-.3.3-.5.5-.9.5 0-.2.2-.6.4-.8h-1.1c.2.3.4.6.4.8-.2 0-.6-.2-.8-.4v1.1c.2-.2.4-.4.8-.4 0 .3-.2.6-.4.8H20zm-1.6 1.4c.1.4.6.8 1 .8s.9-.3 1-.8h-2zm1.2-.4h.8c-.1-.4-.4-.8-.8-.8V6zm-.4 0v-.8c-.4.1-.8.4-.8.8h.8zm.8 1.5c-.1 0-.2.1-.3.1V9h.3V7.5zm-1.1 1.6h.3V7.7c-.1 0-.2-.1-.3-.1v1.5zm1.2-1.8c0 .2.1.3.3.3s.3-.1.3-.3c0-.2-.1-.3-.3-.3s-.3.1-.3.3zm1-.1c.2 0 .3-.1.3-.3 0-.1-.1-.2-.3-.2s-.3.1-.3.3c0 .1.2.2.3.2zM22 7c.2 0 .3-.1.3-.3 0-.2-.1-.3-.3-.3s-.3.1-.3.3c0 .2.1.3.3.3zm2.2.8c.2 0 .3-.1.3-.3 0-.2-.1-.3-.3-.3s-.3.1-.3.3c0 .2.2.3.3.3zm-.5-.6c.2 0 .3-.1.3-.3 0-.2-.1-.3-.3-.3s-.3.1-.3.3c-.1.2 0 .3.3.3zm-.9-.2c.2 0 .3-.1.3-.3 0-.2-.1-.3-.3-.3s-.3.1-.3.3c-.1.1.2.3.3.3zm1.8 2.4c-.2 0-.3.1-.3.3 0 .2.1.3.3.3s.3-.1.3-.3c0-.2-.1-.3-.3-.3zm.1-.7c-.2 0-.3.1-.3.3 0 .2.1.3.3.3s.3-.1.3-.3c0-.2-.1-.3-.3-.3zm-.4-.5c0 .2.1.3.3.3s.4-.1.4-.3c0-.2-.1-.3-.3-.3s-.4.1-.4.3zm-5.9-.5c.2 0 .3-.1.3-.3 0-.2-.1-.3-.3-.3s-.3.1-.3.3c0 0 .2.3.3.3zm-.8-.5c.2 0 .3-.1.3-.3 0-.2-.1-.3-.3-.3s-.3.1-.3.3c.1.2.2.3.3.3zm-.7-.2c.2 0 .3-.1.3-.3 0-.2-.1-.3-.3-.3s-.3.1-.3.3c-.1.2.1.3.3.3zm-2.3.8c.2 0 .3-.1.3-.3 0-.2-.1-.3-.3-.3s-.3.1-.3.3c0 .2.1.3.3.3zm.6-.6c.2 0 .3-.1.3-.3 0-.2-.1-.3-.3-.3s-.3.1-.3.3c-.1.2.2.3.3.3zm.9-.2c.2 0 .3-.1.3-.3 0-.2-.1-.3-.3-.3s-.3.1-.3.3c-.1.1.1.3.3.3zm-1.5 2.8c0-.2-.1-.3-.3-.3s-.3 0-.3.3c0 .2.1.3.3.3.1 0 .3-.1.3-.3zm-.2-.8c0-.2-.1-.3-.3-.3-.2 0-.3.1-.3.3 0 .2.1.3.3.3.2 0 .3-.2.3-.3zm-.2-.5c.2 0 .3-.1.3-.3 0-.2-.1-.3-.3-.3s-.4.1-.4.3c0 .1.3.3.4.3zm7.7.3c-.1.1-.4.4-.4.8 0 .2.2.6.3.8.1-.3.4-.4.4-.8 0-.3-.2-.5-.3-.8zm-4.9 0c-.2.3-.3.6-.3.9 0 .3.3.4.4.8.1-.3.3-.6.3-.8 0-.5-.3-.8-.4-.9z\"\n ></path>\n </svg>\n </a>\n\n @if (headerLinks.serviceLink) {\n <a [routerLink]=\"headerLinks.serviceLink\" class=\"moj-header__link moj-header__link--organisation-name\">\n <ng-content select=\"[organisationName]\"></ng-content>\n </a>\n\n <a [routerLink]=\"headerLinks.serviceLink\" class=\"moj-header__link moj-header__link--service-name\">\n <ng-content select=\"[serviceName]\"></ng-content>\n </a>\n } @else {\n <span class=\"moj-header__link--organisation-name\">\n <ng-content select=\"[organisationName]\"></ng-content>\n </span>\n\n <span class=\"moj-header__link--service-name\">\n <ng-content select=\"[serviceName]\"></ng-content>\n </span>\n }\n </div>\n <div class=\"moj-header__content\">\n <nav class=\"moj-header__navigation\" aria-label=\"Account navigation\">\n <!--PO-322\n For accessibility we need to add a role to prevent any accessibility issues\n-->\n <ul class=\"moj-header__navigation-list\" role=\"list\">\n <ng-content></ng-content>\n </ul>\n </nav>\n </div>\n </div>\n</header>\n", dependencies: [{ kind: "directive", type: RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
217
|
+
}
|
|
218
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: MojHeaderComponent, decorators: [{
|
|
219
|
+
type: Component,
|
|
220
|
+
args: [{ selector: 'opal-lib-moj-header', imports: [RouterLink], changeDetection: ChangeDetectionStrategy.OnPush, template: "<header class=\"moj-header\" role=\"banner\">\n <div class=\"moj-header__container\">\n <div class=\"moj-header__logo\">\n <a [href]=\"headerLinks.govukLink\" class=\"govuk-header__link\" title=\"GOV.UK\" aria-label=\"GOV.UK home page\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n class=\"moj-header__logotype-crest\"\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 40 40\"\n height=\"40\"\n width=\"40\"\n >\n <path\n fill=\"#ffffff\"\n fill-rule=\"evenodd\"\n d=\"M38.1 16.9c.1 1.8 2.2 1.3 1.9 2.7 0-.9-3-.8-3-2.6 0-.3.1-.7.3-.9-.1-.1-.2-.1-.5-.1-.6 0-1.2.6-1.2 1.3 0 2.2 3 2.6 3 5.1 0 .6-.2 1-.6 1.2.2 0 .7-.1.8-.3-.2 1-1.2 1-1.6.6h-.3c.2.4.4.8.9.7-.9.7-2-.2-1.8-1.2-.2-.3-.4-.7-.6-.9-.1-.2-.2-.1-.2.1 0 .8-.6 1.6-.6 2.1 0 .6.6 1.1.8 1.1s.3-.2.4-.2c.1.1.1.2.1.7 0 .2 0 1 .1 1.7 0-.2.2-.3.3-.4.2-.1.4-.2.7-.1.1 0 .3.1.3.2.1.1.1.2.1.3 0 .2-.2.4-.3.6-.2.1-.3.2-.6.1-.2 0-.3-.1-.4-.2v-.1.7c0 .6-.1.8-.3.9 0-.1-.2-.2-.3-.2-.1 0-.3.1-.3.2 0 .2.3.2.3.6s-.8.8-1.3.8c.1-.2.2-.8.3-1.1-.1.1-.3.3-.4.7-.1.4-.3.4-.6.3.2-.2.6-1.1 1-1.3.4-.3.6-.4.7-1.1.1-.7 0-1.1 0-1.7 0-.8-.3-.7-.6-.7-.6 0-2.6-1.3-2.6-2.7v-.4c-.9 0-1.5.2-1.5 1.1 0 .3 0 .6.2.8.2.1.3.3 0 .4-.3.1-3.1 1.3-3.1 1.3-.3.1-.4 0-.6-.2-.1-.2-.3-.2-.4-.1-.2.1.1.2.1.4s-.1.7-1.3.6l.3-.6c.1-.2.1-.3.1-.3-.1 0-.1.1-.2.3l-.3.4h-.4l1-1c.2-.2.6-.4 1.1-.4.7-.1 2.9-.4 2.9-1.1 0-.8-.9-.8-.9-1.9 0-1 .4-2 3-1.9-.2-.7-.9-1.1-1.6-1.2-1.3-.3-1.7-1.2-1.8-2.1h-1c-.8 0-1.2-.3-1.5-.1-.1.1-.1.2 0 .3.1.2.3.7.6 1 .1 0 .4 0 .4.2s-.1.2-.1.3 0 .2.1.2.1-.1.1-.2c.1-.1.3-.1.7 0 .2.2.6.6.7 1-.3-.1-.8-.3-.9-.3s-.1.1 0 .1.4.2.6.3v.3c-.1-.1-.7-.4-1.1-.6-.3-.1-.6-.2-.8-.7-.2-.4-.8-1.6-1-1.9-.1-.2-.1-.3 0-.4.1-.1.1-.2.2-.3.1-.2.2-.2.4-.2s.8 0 1-.1c0 0 .1 0 .2-.1-.6-.6-1.2-1.4-1.2-1.6-.1-.1-.2-.2-.3-.2s-.2 0-.3.1l-.1.1c0-.1-.1-.1-.1-.2l-.3-.3c.2-.1.3-.3.4-.3.1-.1.2-.2.3-.2h.3c.2 0 .2 0 .3.1.2.2.6.4.8.7 0 0 .1 0 .1.1l.1-.1c.1-.1.2-.1.3-.1s.2.1.3.2.2.3.2.6v.2l.6.6c.1-.7.4-1.4.9-2h-.1v-.1c.1-.3.2-.9.3-1.1v-.3l.8.3.1-.1c.7-.7 2.3-1.1 2.3-2.1 0-.2-.1-.6-.3-.8.1.1.1.3.1.6 0 .2-.4.8-1.1.8-.3 0-.7-.3-.8-.3s-.2.1-.3.1c0 .4-.2.8-.3.8.1-.2 0-.6 0-.6-.1 0-.1.1-.1.4 0 .3-.2.7-.7.7.1-.1.2-.6.1-.7-.1-.1-.2.1-.3.1s-.2-.1-.2-.2-.2 0-.2-.1.2-.3.4-.3c.2-.1.6-.2.6-.4-.1-.2-.9.1-1.1.3-.4.3-.2-.1-.3-.2-.2-.4 0-.4.2-.7.2-.2.8-.7 1.5-1 0-.2.1-.3.3-.4.2-.1.6-.2.8-.3l-3.8-4c-.1-.1-.1-.1 0-.2 0 0 .1 0 .2.1l4 3.9c.3-.6.4-.9.3-1.3.4.2.9.7 1 1.2 1.2 0 1.6.8 1.9.4 0 .2-.1.3-.6.4 1.5.3 1 1.3 1.8 1.4-.1.1-.3.2-.6.1.9 1.3 0 2.1.7 2.8-.2.1-.7-.1-.9-.6.2 1.1-.1 1.7.1 2.1-.3.1-.6-.2-.7-.6-.1.2-.1.4-.2.7l.3.1-.1.1c-.6.6-.8.9-.9 1l-.1.1-.1-.1c-.3.4-.7.8-.7 1.2 0 .4.6 1.3 1.2 2.1v-.2c0-.1.1-.3.2-.4.1-.1.2-.1.4-.1s.4.1.6.3c.1.2.2.3.2.6 0 .1-.1.3-.2.4-.1.1-.2.1-.4.1-.1 0-.3-.1-.4-.1.4.6.9 1.2 1.1 1.7.4.9.9 1.4 1.3 1.4.6 0 1.1-.4 1.1-1.1 0-2.3-3-2.6-3-5.2 0-1.2 1-1.8 1.7-1.8.4 0 .7.1.9.3h.2c1.5 0 .6 1.9 1.7 2-.3.5-1 .2-1.3-.7zM30.3 10c.3-.2.8-.3 1.2-.3-.3-.1-.6-.3-.8-.3-.4-.1-.3.4-.4.6zm-2.7 5.5c0-.1 0-.3-.1-.3 0 0-.1-.1-.2-.1s-.1 0-.2.1-.1.2-.1.3c0 .2.1.4.3.4.1 0 .1 0 .2-.1 0 0 .1-.1.1-.3zm8.7 12.6v.2c.1.2.4.2.7 0 .1-.1.2-.2.2-.3v-.2c-.1-.1-.1-.1-.2-.1s-.3 0-.4.1c-.2.1-.3.2-.3.3zm-1.9-8.3c0 .1.1.3.2.4.1.1.2.2.4.2.1 0 .1 0 .2-.1s.1-.1.1-.2-.1-.3-.2-.4c-.1-.1-.2-.2-.4-.2-.1 0-.1 0-.2.1s-.1.1-.1.2zm-.8-3.2c.3-.3.9-1 .9-1l-.3-.3v.6c-.1-.1-.2-.2-.2-.3l-.2.3c.1 0 .3 0 .3.1-.2.2-.6.1-.7 0-.2-.2-.3-.3-.3-.4.1-.1.3-.1.4.1.2 0 .2-.2.2-.3-.1-.1-.2-.1-.3-.1.3-.2.6-.4.4-.9-.4.1-.6.3-.7.7 0-.1-.1-.3-.2-.3s-.3.1-.3.3c.2-.1.4.1.3.3-.1.1-.3.1-.6 0-.3-.4-.3-.6-.1-.9.1.1.1.2.1.4l.3-.6c-.1 0-.2.1-.3 0 .1-.1.2-.2.4-.3l-.7-.2c.1.2 0 .4 0 .6-.1-.1-.2-.2-.2-.3l-.3.6c.1-.1.3-.1.4-.1-.1.2-.4.3-.7.2-.2-.1-.3-.3-.3-.4.1-.1.3-.1.4.1.2-.1.2-.3.1-.4-.1-.1-.2-.1-.4 0 .3-.3.4-.6.3-1-.3.1-.6.4-.6.8 0-.1-.1-.2-.2-.2s-.3.1-.2.3c.2-.1.4.1.3.3-.1.1-.2.1-.6 0-.2-.1-.4-.2-.3-.6.1 0 .2.2.3.2l.1-.4h-.3c.1-.1.3-.2.4-.3l-.4-.2s-.2.9-.4 1.3l4.2 2.3zm0 7.9c.1-.2.1-.6 0-.7-.2-.1-.4 0-.7.2-.1.2-.1.6 0 .7.1.1.5 0 .7-.2zm1.1-1.9c.1-.2.1-.6 0-.7-.2-.1-.4 0-.7.2-.1.2-.1.6 0 .7.3.1.6 0 .7-.2zM27.4 18c.2-.1.4 0 .7 0 .2.1.3.3.4.4v.4l-.3.3c-.2.1-.4 0-.7 0-.5-.1-.6-.4-.5-.8.1-.2.2-.3.4-.3zm.2 1c.1.1.3.1.4 0 .1 0 .1-.1.2-.1v-.2c0-.1-.1-.2-.3-.3-.1-.1-.3-.1-.4 0-.1 0-.1.1-.2.1-.1.1.1.3.3.5zm4.8 7.2c.1-.1.2-.2.4-.2s.3.1.4.2c.1.1.2.3.2.6 0 .2-.1.4-.2.6-.1.1-.2.2-.4.2-.1 0-.3-.1-.4-.2-.1-.1-.2-.3-.2-.6 0-.2 0-.5.2-.6zm.3 1.1c.1 0 .2 0 .2-.1.1-.1.1-.2.2-.4 0-.3-.1-.6-.3-.6-.1 0-.2 0-.2.1-.1.1-.1.2-.2.4 0 .2 0 .3.1.4.1.1.1.2.2.2zm-4.8-13.8c.2-.1.3-.2.6-.2.1 0 .2.1.3.2s.1.2.1.4-.1.3-.3.6c-.3.2-.8.2-.9 0-.1-.3 0-.6.2-1zm0 .7v.2c.1.1.3.1.6 0 .1-.1.2-.2.2-.3v-.2c0-.1-.1-.1-.2-.1s-.2 0-.3.1c-.2 0-.3.2-.3.3zm5.7 13.7c.2-.1.4-.2.7-.1.4.1.8.4.7.8 0 .2-.1.3-.3.4-.1.1-.3.1-.6.1s-.3-.1-.6-.2c-.1-.1-.2-.3-.1-.6-.1-.2 0-.3.2-.4zm.4.9c.3 0 .6-.1.6-.3 0-.2-.2-.3-.4-.4-.2 0-.3 0-.4.1 0 0-.1.1-.1.2-.2.1 0 .3.3.4zm3.3-1.9c0-.6.4-1 1-1s1 .4 1 1-.4 1-1 1c-.5 0-1-.4-1-1zm.3 0c0 .4.3.8.8.8s.8-.3.8-.8c0-.4-.3-.8-.8-.8-.4.1-.8.5-.8.8zm-23.3-5.8c-.1.3.1.3.1.7 0 .3-.2.4-.6.6.2-.4 0-.7-.3-.8.1.8-.6.9-.8.8.2 0 .3-.4.2-.8-.1.2-.4.4-.7.4s-.4-.2-.6-.4c.3.2.6 0 .6-.2 0-.1-.3-.2-.3-.4 0-.6.6-.3.6-.8 0-.2-.1-.3-.2-.3s-.3.1-.3.3c-.3-.2 0-.9-.1-1.2 0 .7-.4.6-.6.9-.2-.2 0-.7-.2-1.2-.1.6-.3.4-.3.9-.6-.3-1.7-.2-2 .2 1 .8 2.2 1.2 2.2 2.4 0 .9-1.5 1.3-1.5 1.9 0 .6 1.5 2 2.2 2 .2 0 .3-.3.6-.3h.6c.2 0 .3.2.3.3.3 0 .8.6.3 1-.1-.2-.3-.6-.8-.3.2.4 0 .8-.4 1 .1-.2.2-.6-.1-.6s0 .2-.7.2c-.6 0-.6 0-.8-.3-.2-.3-.4-.4-.6-.4s-.2.3 0 .6c-1.2 0-.7-1.2-1.3-1.6v.9c-.4-.5-.8-.9-.8-1.3-.1-.3 0-.6-.3-.8-.1 0-.2-.1-.2-.3 0-.1.1-.1.3-.2.2-.1.6-.3.6-1 0-.4-.1-1.1-.9-1.7.1 1 0 1.9-.4 2.7-.6 1-1.7 1.7-2.2 1.9-.6.2-1.3.4-1.3 1.2 0 1.4.7 2.2 1.2 2.2.4 0 .3-.4.9-.4.2 0 .6.1.6.3.3-.1.7.1.7.4 0 .3-.1.4-.3.6.2-.4-.3-.4-.4-.4-.1.1 0 .2 0 .4s-.1.4-.4.6c.1-.1.1-.3-.2-.3-.2 0-.3.4-.7.4-.6 0-.7-.2-1.2-.1-.3.1-.3.3-.2.3-.7 0-.6-.8-.4-.9.1-.1.2-.2 0-.4-.2-.1-.6 0-.7.3-.6-1.1.2-1 0-2.2-.1.6-.4.9-.7 1 .1-.2-.1-.8-.1-1.2 0-.9.6-1.2.6-1.4 0-.2-.2-.4 0-.6.1-.1.3.1.6.1.7 0 1.2-.9 1.3-2 .1-1.2.7-2.1 1.1-3 0-.1 0-.3.1-.4-.6.7-1 1.6-1.7 2.1.1.8-1.5 1.7-2.3 1 .3 0 .8-.1 1-.6-.1 0-.2 0-.3-.1-.6.3-1.3-.1-1.3-.7.2.2.4.3.8.2.2-.1.1-.4.1-.8 0-2.3 3.6-3.9 3.6-5.8 0-.6-.3-.9-.8-.9-.2 0-.4.1-.7.2.2.1.3.3.3.6 0 2.1-3.5 1.9-3.7 3.3-.1-1.8 2-1.4 2.1-2.9-.4.7-1.2 1.1-1.7.9 1.1 0 .8-2.2 2-2.2.1 0 .2 0 .4.1.3-.3.8-.4 1.1-.4.6 0 1.3.3 1.3 1.3 0 2.2-3.6 3.7-3.6 5.8 0 .7.4 1 1 1 1.2 0 2.1-2.2 3.5-4.1.9-1.2 1.5-3.7 2-4.9-.7.4-.8 1.8-1.6 1.9.4-.3.1-1.4.4-2.3.1-.3.1-.6.1-.9-.4.6-.3 2.2-1.1 2.4.3-.3 0-.9 0-1.4 0-1 .6-1.1.6-2.1-.4.2-.3 1.4-1.2 1.4.7-.7 0-1.3.8-2.1-.4-.2-.8-.6-.8-.9.3-.2.7-.3 1-.3-.3-.2-.2-.4 0-.7.1.2.2.3.3.3.3-.1.8-.6 1.5-.8.5-.2 1.3-.5 1.6-.5.1 0 .1-.2.1-.3.2 0 .6 0 .7.3.2-.2.6-.3.9-.3.2.4.2.8 0 1.2.4 0 .7.4 1.1.3-.3.4-.8.3-1.2.2 1.2.3 1.5 1.6 2.1 1.7-1.2.7-1.7-.3-2.3-.3 1.7.9 1.7 1.9 2.1 1.9-.6.4-.9-.1-1.6-.3 1.3.9 1.3 1.6 1.2 2.1.3.2.2.6.2 1 .2-.1.6-.2.8-.2-.1.1-.2.2-.2.3-.7.8-1.1 1.4-1.5 2.4-.3-.2-.6-.6-.8-.7-.2-.2-.6-.2-.7-.2.4.4 1.8 2 2.2 2.4.4.4.3.8.4 1.2.4.4.8.7.7.9zM7.5 10.2c.4 0 .6-.6.4-.9-.4.2-1 .3-1.3.4.5.2.5.5.9.5zm2.3 2.5c.4-.2.4-.7.3-.9-.1-.2-.2-.4-.3-.4-.2 0-.4-.1-.4-.3-.1-.2.2-.3.4-.6-.2-.1-.4-.2-.2-.3.2-.1.4.1.4 0 .1-.1-.1-.2-.2-.3s-.2-.1-.3 0l-1.2.4c-.1 0-.3 0-.3.1s-.1.3 0 .3.1-.3.3-.3.2.1 0 .4c.4 0 .6-.1.7.2.1.2 0 .3-.1.6-.1.1 0 .3 0 .6.1.2.5.7.9.5zm.1-3.5c.2-.2 0-.4.3-.9-.3.2-.8.5-1.3.7.3.3.7.5 1 .2zm-.7-3.1c.1.1.1.2.1.3-.1 0-.1-.1-.3-.2v.6c.1-.1.2-.1.2-.2 0 .3-.1.6-.3.6l-.3-.3c0-.1.1-.2.2-.1 0-.3-.2-.3-.3-.2.1-.4.1-.6-.2-.7-.3.3-.1.4.1.6-.2-.1-.5.1-.2.4 0-.2.2-.1.2 0s-.1.3-.4.4c-.3.1-.4-.1-.5-.3.1 0 .2 0 .4.1l.1-.5c-.1.3-.2.3-.3.4 0-.1.1-.4.1-.4l-.7.2s.3.1.4.2c0 0-.1.1-.4 0l.2.4c0-.2.1-.3.2-.3.1.2.1.4-.2.6-.2.2-.4.1-.4 0-.1-.1 0-.3.2-.2 0-.3-.3-.3-.3-.1 0-.3-.1-.6-.4-.6-.1.3 0 .6.3.7-.2 0-.3.1-.1.3 0-.2.1-.2.2-.1s0 .2-.1.3c-.1.1-.3.1-.6-.2h.2L6 7.3v.3c-.1-.1-.1-.1-.1-.3l-.2.2c.2.2.6.5.9.9.3-.2 1-.6 1.5-.7.4-.2 1.1-.4 1.6-.4-.1-.6 0-1 0-1.2h-.5zm-2.7-.7l.2.4.1-.3v.6c0 .1.1.3.3.3.1 0 .3-.1.3-.3 0-.1-.1-.2-.1-.2 0-.1-.2-.3-.3-.4h.4v-.4l-.4.2v-.4l-.4.1.2.3-.3.1zm1.4.4c.1-.2.1-.3 0-.4-.1-.1-.2-.1-.3 0-.1.1-.1.2 0 .3.1.1.2.1.3.1zm.6-.5c.1-.1.1-.2 0-.3s-.2-.1-.3 0-.2.2 0 .3c.1.1.2.1.3 0zm.5.1c.1-.1.1-.2 0-.3s-.2-.1-.3 0c-.1.1-.1.2 0 .3.1.1.3.1.3 0zm.2.5c.1.1.2.1.3 0s.1-.2 0-.3h-.3c-.2 0-.2.3 0 .3zm-2.7.4c.1 0 .2-.1.2-.2s-.1-.2-.2-.2-.2.1-.2.2.1.2.2.2zm-.7.1c.1 0 .2-.1.2-.2S6 6 5.8 6c-.1 0-.2.1-.2.2s.1.2.2.2zm-.1.2c0-.1-.1-.2-.2-.2s-.2.1-.2.2.1.2.2.2.2 0 .2-.2zm.1.7c0-.1-.1-.2-.2-.2s-.2.1-.2.2.1.2.2.2.2-.1.2-.2zm15.7 16.9c-.1 0-.1.1-.1.1 0 .1 1-.1 1 .1 0 .1-.2.2-.6.2h-.1c0 .1.1.1.1.1v.1s0 .1 0 0h-.1s-.1 0 0 .1h-.1v-.1h-.1v-.1h.1l.1.1.1-.1-.1-.1h-.3c.1.1.1.2.1.3v.1h-.1s0 .1-.1.1H21c0-.1.1 0 .1-.1 0 0 0-.1.1-.1s.1.1.2.1h.1-.1v-.1c-.1 0-.1.1-.2.1 0 .1-.1.2-.1.2l-.1.1c-.1 0-.1 0-.1.1v-.1h-.1l-.1.1v-.1s0 .1-.1.1c0 0-.1 0-.1-.1v.2s-.1 0-.1-.1v-.1c-.1.1-.1 0-.1 0s0-.1.1-.1h.1c-.1 0-.1 0-.1-.1h.1v.1h.4v-.1c-.1 0-.1 0-.1-.1-.4-.2-.4-.3-.4-.3-.1 0-.2 0-.1-.1 0 .1.1.1.1 0 0 0-.1 0 0-.1v-.1h.1-.1.1l.1.1h.1v.1c0 .1 0 .1.1.1s.1.2.2.2v-.2s0-.1.1-.1l.1-.1v-.1h.2s.1 0 .1.1h.1s0 .1-.1.1c0 0 0 .1-.1.2.4-.1.8 0 .9 0 .2 0 .4-.1.4-.1 0-.1-1 .1-1-.1-.4-.4-.3-.4-.2-.4 0 0 0-.1 0 0 .2-.2.6 0 .7-.1 0 0-.2.1-.3.1.3.1.4-.1.8 0-.3-.1-.7.3-1.2 0 0 .1 0 0 0 0zm-.7 0c0 .1 0 .1 0 0 .1.1.1.1 0 0 .1.1.1.1 0 0zm0 0s-.1 0 0 0c-.1 0-.1 0 0 0-.1.1 0 0 0 0zm-.1.3s0 .1 0 0c0 .1.1.1 0 0 .1 0 .1 0 0 0 .1 0 .1 0 0 0 .1-.1.1-.1.1 0h-.1c0-.2 0-.2 0 0 0-.2.1-.2 0 0zm1.1-1.6c-.1 0-.3 0-.3.1s.7.1.9.1c.3 0 .3.1.3.1 0 .1-.3.1-.6.1h.3c.1 0 0 0 0 0h.1v.2h-.1c0 .1-.1 0-.1.1v.1h-.1v-.1s0 .1-.1.1 0-.1.1-.1H22s0-.1.1-.1h.1v-.1h-.5v.1s.1.1 0 .1h-.1s0 .1-.1.1h-.3c0-.1.1 0 .1-.1h-.1s0-.1.1-.1.1.1.2.1h.1-.1c-.1 0 0-.1 0-.2h-.1c-.4-.1-.2.1-.4.1 0 0 0 .1-.1.1 0 .1-.1.2-.2.1-.1 0-.2 0-.2.1v-.1h-.1c0 .1-.1.1-.1.1v-.2s0 .1-.1.1c0 0-.1 0-.1-.1v.2s-.1 0-.1-.1v-.1c-.1.1-.1 0-.1 0s0-.1.1-.1h.1c-.1 0-.1-.1-.1-.1h.1v.1c0 .1.2 0 .2 0h.2v-.1h-.1c-.1-.1-.1 0-.1 0-.1 0-.2 0-.1-.1 0 .1.1.1.1 0-.1 0-.1 0 0-.1v-.1s0-.1.1 0h-.1.1l.1.1h.1v.1c0 .1 0 .1.1.1h.1v-.1s0-.1.1-.1l.1-.1V23h.2s.1 0 .1.1h.1s0 .1-.1.1c0 0 0 .1-.1.2.3-.1 1 0 1.2 0 .1 0 .4 0 .4-.1 0 0 0-.1-.2-.1s-1 .2-1-.1c-.2-.3.1-.3.2-.2.1-.1.1-.1 0 0 .2-.2.6 0 .7-.1 0 0-.2.1-.3.1.3.1.4-.1.8 0-.3-.1-.8.1-1.2 0 .1 0 .1 0 0 0zm-.9 0s-.1-.1 0 0c-.1 0-.1 0 0 0zm.1.1s-.1 0 0 0l-.1-.1c-.1.1 0 .1.1.1h-.1v.1l.1-.1c-.1.1-.1.1 0 0-.1.1-.1.1 0 0-.1 0-.1 0 0 0-.1 0-.1 0 0 0-.1 0-.1 0 0 0zm0 0c0-.1 0-.1 0 0 0-.1 0 0 0 0zm2.2-.9s0 .1 0 0c0 .1 0 .1 0 0 0 .1 0 .1 0 0v.1c0 .1-.1 0-.1.1 0 0 .1 0 0 .1H23v-.1s0 .1-.1.1v-.1h-.2s0-.1.1-.1h.1v-.1h-.2c-.1 0-.1.1-.2.1h-.2v.1s.1.1 0 .1h-.1s0 .1-.1.1h-.3c0-.1.1 0 .1-.1h-.1s0-.1.1-.1.1.1.2.1h.1-.2c-.1 0-.1-.1 0-.2 0 0 0 .1-.1.1-.6-.1-.3.2-.8.1 0 0 0 .1-.1.1h-.1l-.1.1c-.1 0-.1 0-.2.1v-.1h-.1c0 .1-.1.1-.1.1v-.2s0 .1-.1.1c0 0-.1 0-.1-.1v.2s-.1 0-.1-.1v-.1c-.1.1-.1 0-.1 0s0-.1.1-.1h.1c-.1 0-.1-.1-.1-.1h.1v.1c0 .1.2 0 .2 0h.2s-.1-.1 0-.1v-.1h-.1l-.2-.2v-.1c-.1 0-.2 0-.1-.1 0 .1.1.1.1 0-.1 0-.1-.1 0-.1v-.1s0-.1.1 0c0 0-.1 0-.1-.1h.1s0 .1.1.1h.1v.1c0 .1 0 .1.1.1s.1.1.2.1v-.1s0-.1.1-.1l.1-.1v-.1h.3s.1 0 .1.1h.1s0 .1-.1.1c0 0 0 .1-.1.2.4-.1 1.5 0 1.7 0 .1 0 .4 0 .4-.1 0 0 0-.1-.3-.1-.2 0-1.3.2-1.3-.1 0-.2.3-.1.7-.1.1-.1.6 0 .7 0 0 0-.2.1-.3.1.3.1.4-.1.8 0-.2-.1-.7.2-1.1.1h-.1c-.2 0-.6 0-.6.1 0 .2.9.1 1.2.1.3 0 .4.1.4.1 0 .1-.3.1-.4.1h.3c-.4-.1-.4-.1-.3 0-.1 0 0-.1 0 0zm-2.2-.5s0 .1 0 0c.1.1.1.1.1 0H21zm-.1 0s0-.2 0 0c0 0-.1 0 0 0zm-.1.2c.1.1.1 0 0 0 .1 0 .1 0 0 0 .1 0 .1-.1 0 0l.1-.1h-.1c.1 0 .1 0 0 .1.1-.1.1-.1 0 0 .1-.1 0 0 0 0zm-1.9-2c0 .1-.3.1-.4.1h.5v.2c0 .1-.1 0-.1.1 0 0 .1 0 0 .1h-.1v-.1.1-.1h-.2s0-.1.1-.1h.1V20h-.2c-.1 0-.1.1-.2.1h-.2v.1s.1.1 0 .1H18s0 .1-.1.1h-.3c0-.1.1 0 .1-.1h-.1s0-.1.1-.1.1.1.2.1h.1-.1c-.1 0-.1-.1 0-.1h-.1c-.6-.1-.3.2-.8.1 0 0 0 .1-.1.1l-.1.1h-.1c-.1 0-.2 0-.2.1v-.2h-.1c0 .1-.1.1-.1.1v-.2s0 .1-.1.1c0 0-.1 0-.1-.1v.2s-.1 0-.1-.1v-.1c-.1.1-.1 0-.1 0s0-.1.1-.1h.1c-.1 0-.1-.1-.1-.1v.1c0 .1.2 0 .2 0h.2v-.1h-.1l-.2-.2v-.1c-.1 0-.2 0-.1-.1 0 .1.1.1.1 0-.1 0-.1-.1 0-.1v-.1s0-.1.1 0c0 0-.1 0-.1-.1h.1s0 .1.1.1h.1v.1c0 .1 0 .1.1.1s.1.1.1.1v-.1s0-.1.1-.1l.1-.1v-.1h.3s.1 0 .1.1h.1s0 .1-.1.1c0 .1 0 .1-.1.2.5-.1 1.5 0 1.8 0-.4.1-.1 0 0 0-.1-.1-.1-.1-.4-.1-.2 0-1.3.2-1.3-.1 0-.2.3-.1.7-.1.1-.1.6 0 .7 0 0 0-.2.1-.3.1.3.1.6-.1.8 0-.3-.1-.7.2-1.1.1h-.1c-.2 0-.6 0-.6.1 0 .2.9.1 1.2.1.3-.3.4-.2.4-.1zm-2.3-.2c.1.1.1.1.1 0h-.1zm-.1-.2s-.1 0 0 0c-.1 0-.1 0 0 0 0 .2 0 0 0 0zm-.1.3c0 .1 0 .1 0 0 0 .1.1.1 0 0 .1.1.1 0 0 0 .1 0 .1 0 0 0l.1-.1h-.1c.1 0 .1 0 0 .1.1 0 .1 0 0 0 .1 0 0 0 0 0zm2.6-1.4c0 .1-.3.2-.6.2h.6v.2h-.1c0 .1-.1 0-.1.1 0 0 .1 0 0 .1h-.1v-.1.2-.1h-.2s0-.1.1-.1h.1v-.1h-.2c-.1 0-.1.1-.2.1h-.2v.1c.1 0 .1.1 0 .1H18s0 .1-.1.1h-.1.1-.2c0-.1.1 0 .1-.1h-.1s0-.1.1-.1.1.2.2.1h.1-.1c-.1 0-.1-.1 0-.2h-.1c-.4-.1-.2.2-.6.2h-.1c0 .1-.2.2-.2.2-.1.1-.1 0-.2.1v-.2h-.1c0 .1-.1.1-.1.1V19s0 .1-.1.1c0 0-.1 0-.1-.1v.2s-.1 0-.1-.1V19c-.2 0-.2-.1-.2-.1s0-.1.1-.1h.1c-.1 0-.1-.1-.1-.1H16v.1c0 .1.2 0 .2 0h.2v-.1h-.1c-.1 0-.1-.1-.1-.1v-.1c-.1 0-.2 0-.1-.1 0 .1.1.1.1 0-.1 0-.1-.1 0-.1v-.1s0-.1.1 0c0 0-.1 0-.1-.1h.1s0 .1.1.1V18s.1 0 .1.1v.1c0 .1 0 .1.1.1s.1.1.1.1h.1v-.1s0-.1.1-.1l.1-.1V18h.3s.1 0 .1.1v.1h.1s0 .1-.1.1c0 0 0 .1-.1.2.4-.1 1.1 0 1.3 0 0-.1.3-.1.4-.2-.1-.1-.1-.1-.4-.1-.2 0-1.1.2-1.1-.1 0-.1.2-.1.4-.1.2-.1.4 0 .6-.1 0 0-.1.1-.2.1.3.1.6-.1.9.1-.2-.1-.8.1-1.1 0H18c-.2 0-.3 0-.3.1 0 .2.7.1 1 .1.2-.1.3-.1.3 0zm-2.5.3c-.1 0-.1 0 0 0zm.5-.5c.1.1.1.1.1 0H17zm-.1-.1s-.2 0 0 0c0 .1 0 .1 0 0zm-.2.3c.2.1.2 0 0 0 .2 0 .2 0 0 0 .2-.1.2-.1 0 0l.1-.1h-.1c.2 0 .2 0 0 .1.2-.1.2-.1 0 0 .2-.1 0-.1 0 0zm1.8-1.2c.1 0 .2.1.3.1h.2v.2c0 .1-.1 0-.1.1 0 0 .1 0 0 .1h-.1v-.2h-.2s0-.1.1-.1h.1v-.1h-.4v.2h-.1v.1h-.4c0-.1.1 0 .1-.1h-.1s0-.1.1-.1.1.1.2.1h.1-.1v-.2h-.1c-.3 0-.1.1-.2.1 0 0-.1.1-.2.1v-.1h-.1l-.1.1c-.1 0-.1 0-.1.1v-.1h-.1l-.1.1v-.1s0 .1-.1.1c0 0-.1 0-.1-.1v.2s-.1 0-.1-.1v-.1c-.1.1-.1 0-.1 0s0-.1.1-.1h.1c-.1 0-.1 0-.1-.1h.1v.1h.3s.1 0 .2-.1l-.1-.1c-.1 0-.2 0-.1-.1 0 .1.1.1.1 0-.1 0-.1 0 0-.1v-.1h.1-.1.1v.1h.1v.2l.1.1V17s0-.1.1-.1l.1-.1v-.1h.4s0 .1-.1.1c0 0-.1.1-.1.2.1-.1.2 0 .4.1.3-.1.5-.1.5-.2 0-.2-.9 0-.9-.3 0 0 0-.1.1-.1v-.1c.1-.1.2-.1.3-.2 0 0 0 .1-.1.2.2 0 .2-.3.7-.2-.3.1-.3.3-.8.4l-.1.1c0 .2.9 0 .9.3-.1 0-.2.1-.6.1zm-.7-.4c0 .1 0 .1 0 0 .1.1.1.1 0 0 .1.1 0 0 0 0zm0 0c-.2 0-.2 0 0 0-.2 0-.2 0 0 0-.2 0-.2 0 0 0zm-.2.2c-.1 0-.1 0 0 0 0 .1 0 0 0 0 .1-.1.1-.1.1 0h-.1c0-.1 0-.1 0 0 0-.1 0-.1 0 0zm1.3 5.1c.1 0 .1 0 .1.1s-.1.1-.2.1l-.1 2.4h.1v.2c0 .1-.1.1-.2.1 0 .3-.2.4-.4.4-.1 0-.3-.1-.3-.3 0-.1.1-.2.2-.2s.1 0 .1.1-.2 0-.2.1 0 .1.1.1.2-.1.2-.2c0-.2-.2-.2-.4-.2-1.3-.4-2.1-1.8-2.1-2.8h-.1l.1-.2-.1.1c-.1 0-.2-.1-.2-.2s.1-.2.2-.2.2.1.2.2l.1-.2c.2.1.6.2.9.2.7 0 1.2-.3 1.5-.3.2.1.4.4.5.7zm-2.6.2c-.1 1.2.8 2.1 1.7 2.4l-1.7-2.4zm1.8 2.3c0-.1 0-.3.1-.4l-1.3-1.8h-.3l1.5 2.2zm.1-.8c0-.1 0-.3.1-.4l-.8-1.1c-.1 0-.2.1-.3.1l1 1.4zm.2-1.7c0-.2 0-.3-.1-.3s-.4.1-.7.2l.7 1c0-.2.1-.4.1-.7v-.1c-.1 0-.1-.1-.1-.1h.1zm4.3-2.6c.1 0 .1-.1.1-.1h-.1s.1 0 0-.1c0-.1-.1-.1-.1 0s-.4 0-.4-.3l.1.1h.1c.1 0 .1-.1.1-.1 0-.1-.1-.2-.3-.3-.1 0-.1-.1-.1-.1 0-.1 0-.2-.1-.4v-.2c-.1.1-.1.3.1.6.1.1.4.3.4.4 0 0 0 .1-.1.1h-.1s-.1 0-.1-.1c-.1-.1-.2-.3-.3-.4-.1-.2-.1-.3-.1-.6.1-.1-.1-.4-.1-.6v-.1h-.1s0-.1-.1-.1-.1 0-.1-.1c0 0 0 .1-.1.1h-.4c-.1 0-.1 0 0 .1v.2-.1h.1v.1h-.1v.1h.3c0 .1-.2.1-.2.3l-.1-.1-.1-.1-.1-.1c-.1 0-.1-.1-.1-.1v-.1l-.1-.1v.2s0-.1-.1-.1c0 0 0-.1-.1 0 0 0 0 .1.1.1h-.1v.2h-.1c-.1.1 0 .2.1.1v.3c0 .1.1.2.3.3l-.2.2s-.1.1-.2.1l-.1-.1h-.2.2-.1s-.1.1 0 .1v-.1s.1.1.1 0v.1s.1.1.1 0l-.1-.1v-.1s0 .1.1 0v-.1h.2s0-.1.1-.1h.1s0-.1.1-.1c0 .3.3.2.4.4-.1 0-.2-.1-.3-.1s-.2.1-.2.2.1.2.1.3h-.2c-.1 0-.1-.1-.2-.1 0 0-.1 0-.1.1h.1s-.1 0-.1.1c0 0 0 .1.1 0 0 0 0 .1.1 0h.1s0-.1.1 0h.2v-.1c0-.1-.1-.1-.1-.1 0-.1.1-.2.2-.2 0 .1.1.3.3.4.1 0 .2-.1.2-.1v.1h-.1s-.1 0-.1.1h.1s.1.1.1 0c0 0-.1.1 0 .1s0-.1.1-.1v.1h.1v-.1s.1 0 .1-.1c1 .6 1 .6 1 .4 0 .2 0 .2 0 0 0 .2 0 0 0 0zm.7.6c.1 0 .2.1.2.2l-.1.1s.1.1.1.2c-.1 0-.1 0-.2-.1 0 .1 0 .1-.1.1s-.2 0-.2-.1c0 .1.2 0 .1 0h-1.5c0 .1 0 .2-.1.3-.1-.1-.1-.2-.1-.3h-1.3c0 .1.1.1.1 0 0 .1-.1.2-.2.2H20s-.1.1-.2.1c0-.1 0-.1.1-.2-.1 0-.1 0-.1-.1s0-.2.2-.2c-.1 0 0 .2 0 .1v-1.9c-.1 0-.2 0-.3-.1.1-.1.2-.1.3-.1v-1.8c-.1 0-.1.1 0 .1-.1 0-.2-.1-.1-.2l.1-.1s-.1-.1-.1-.2c.1 0 .1 0 .2.1 0-.1 0-.1.1-.1s.2 0 .2.2c0-.1-.1-.1-.1 0 .3.1.8.2 1.1.4.3.2.7.6 1 .9l.1.1c0-.1.1-.1.3-.1-.2.3-.3.3-.3.3.4.7.8 1.4.9 2.3V20zm-1.3-2.3c-.2-.3-.6-.6-.9-.8-.2-.2-.6-.3-.9-.4v.2c-.1 0-.1 0-.1-.1v1.2c.1 0 .1 0 .1.1v.1c.1 0 .1 0 .2.1-.1.1-.1.1-.2.1.1 0 .1.1 0 .1l-.1.1V20s.1-.1.2-.1c0 .1 0 .1-.1.2h1c0-.1 0-.1.1-.1h.1c0-.1 0-.1.1-.2.1.1.1.1.1.2 0-.1.1-.1.1 0l.1.1H23s-.1-.1-.1-.2h.1c-.1-.7-.3-1.2-.7-1.8h-.1s-.1-.1 0-.1c0 0-.1.1-.2 0 0-.1 0-.1.1-.2v-.1zm4.2 2.7v.4c0 1-.2 2.1-.6 3-.3.9-.9 1.8-1.5 2.4-.3.3-.7.7-1 .9-.1.1-.4.2-2-.2-.2 0-.3-.1-.6-.1 0-.2 0-.3.1-.4.1-.2.1-.3.2-.4.1 0 .1-.1.2-.1.6-.2 1-.7 1.5-1.2.4-.6.8-1.1 1-1.8.2-.7.3-1.3.3-2h-4.5v5c.3 0 1 .1 1 .1-.1.2-.2.4-.2.8-.6-.1-1-.3-1.6-.6.4-.2.6-.2.8-.2v-4.9h-4.7c0-.2-.1-.6-.2-.7-.2-.3-.3-.4-.3-.9 0-.2-.1-.6-.3-.8-.1-.1-.7-.8-.8-.9.3-.9.9-1.8 1.5-2.4.4-.4.9-.9 1.5-1.2-.2-.2-.6-.4-.6-.9 0-.2.1-.4.2-.6-.3-.9-.8-2-1.2-2.6l.9-.4c-.2.3-.2.8-.2 1 .2-.2.4-.4.6-.7 0 .3.2.8.3 1-.2 0-.4-.1-.8 0 .1.2.6.6 1.1.3.3-.1.7-.2.7-.6 0-.1-.1-.3-.3-.3s-.2.3-.1.4c-.2-.1-.6-.9-.1-1 .3-.1.7.3.8.7 0-.2.2-.7.6-.7.4 0 .3.8.1 1 0-.2-.2-.4-.3-.4s-.2.1-.2.3c0 .2.3.4.8.4.3 0 1.1-.1 1.1-.9-.2 0-.7.2-.8.4V9.4c.2.3.6.6.8.6-.1-.3-.3-.7-.7-.9h1.7c-.3.2-.6.6-.7.9.2 0 .6-.2.8-.4v1.2c-.2-.2-.6-.4-.8-.4.1.8.8.9 1.1.9.4 0 .8-.1.8-.4 0-.2-.1-.3-.2-.3s-.2.1-.3.4c0-.2-.2-1.1.2-1.1.3 0 .4.3.6.8.1-.3.4-.8.8-.7.3.1.1.9-.1 1 .1-.1 0-.4-.1-.4-.2 0-.3.1-.3.3 0 .2.3.4.7.6.6.1 1-.2 1.1-.4-.2-.1-.4-.1-.8.1.1-.2.3-.8.3-1 .1.3.2.6.6.7 0-.2 0-.7-.2-1l.9.4c-.4.4-1 1.6-1.2 2.6.2.1.3.3.3.7 0 .4-.2.7-.6.9.6.3 1 .8 1.5 1.2.3.3.6.8.9 1.2 0 0-.1.1-.1.2-.1.1-.2.2-.2.3-.1.1-.1.2-.1.3 0 .1 0 .2.1.4l1 2c-.6 0-.4.2-.2.3zm-7-5c-.6 0-1.2.1-1.8.4-.6.2-1.1.7-1.5 1.2-.4.6-.8 1.1-1 1.8-.2.7-.3 1.3-.3 2.1h4.6v-5.5zm.1-2.2c1.6 0 2.6.4 3.2.9.3-.2.6-.4.6-.7 0-.9-2.5-1-3.7-1-1.2 0-3.7.1-3.7 1 0 .2.1.4.6.7.5-.4 1.5-.9 3-.9zm4.7 7.7c0-.7-.1-1.4-.3-2.1-.2-.7-.6-1.2-1-1.8-.4-.6-.9-.9-1.5-1.2-.6-.2-1.1-.4-1.7-.4v5.5h4.5zm11 11.1c0-.1-.1-.1-.1-.1-1.5.4-3.2-.8-4.9-1.9-1.5-1-2.8-1.9-4-1.9-.4 0-.8.1-1.1.2-.4.2-.7.6-.9 1.1-.2.4-.4.8-.6 1.1-.2.3-.3.6-.3.8 0 .2.1.4.3.7.1.2.4.3.8.6.1 0 .1.1.2.1.3.1.4.2.4.4-.6.2-1.3.4-2.1.6-.9.1-2 .2-3.1.2s-2.1-.1-3.1-.2c-.9-.1-1.6-.3-2.1-.6 0-.2.2-.3.6-.4.1 0 .1-.1.2-.1.3-.1.6-.3.8-.4.2-.2.3-.3.3-.6s-.1-.6-.3-.8c-.1-.2-.3-.6-.6-1.1-.2-.4-.6-.9-.9-1.1-.3-.2-.7-.2-1.1-.2-1.2 0-2.6.9-4 1.9-1.8 1.1-3.6 2.3-4.9 1.9-.1 0-.1 0-.1.1s0 .1.1.1c.4.2.8.4 1.2.8.6.4 1 .8 1.6.8.6 0 1.1-.1 1.8-.6.6-.3 1.2-.7 1.8-1.1 1.1-.8 2.3-1.6 3.5-1.7l-.3.3c-.3.3-.7.6-.7 1.1 0 .4.1.7.3 1.1.1.1.1.2.2.4s.2.4.2.8c0 .1.1.3.1.4.1.2.2.8 1 1.2 1 .4 2.6.8 4.9.8 2.2 0 3.9-.2 4.9-.8.8-.4 1-.9 1-1.2 0-.2.1-.3.1-.4.1-.3.1-.6.2-.8.1-.2.2-.3.2-.6.2-.3.3-.6.3-.9 0-.6-.3-.8-.7-1.1l-.3-.3c1.1.1 2.3.9 3.5 1.7.6.4 1.2.8 1.8 1.1.7.3 1.2.6 1.8.6.6 0 1-.3 1.6-.8.3-.3.8-.6 1.2-.8-.9-.2-.7-.3-.7-.4zm-14.6-1.4c.4 0 .7.3.7.7 0 .3-.2.6-.3.8-.1-.2-.1-.3-.2-.3-.2 0-.1 1.1-.8 1.1v.2c0 .2-.2.4-.4.4s-.5-.3-.5-.5v-.2c-.7 0-.6-1.1-.8-1.1-.1 0-.2.1-.2.3-.1-.2-.3-.4-.3-.8 0-.3.2-.7.7-.7h.2V29c.7.1 1.2.2 1.8.2v1.2c0 .2 0 .2.1.2zm-1.1 2.6c.1 0 .2-.1.2-.2s-.1-.2-.2-.2-.2.1-.2.2.1.2.2.2zm1.5-1.5c.1-.1.1-.3.1-.4 0-.2-.1-.4-.4-.4-.6 0-.4.8-.7.8-.1 0-.2-.1-.2-.2 0-.2.3-.4.3-.8s-.3-.6-.6-.8c-.3.2-.6.6-.6.8 0 .3.3.6.3.8 0 .1-.1.2-.2.2-.2 0-.1-.8-.7-.8-.3 0-.4.3-.4.4 0 .1 0 .2.1.4l.2-.2c.4 0 .2 1.1.8 1.1.2 0 .3-.1.3-.3 0-.1-.1-.2-.1-.3 0-.1.1-.2.2-.2s.2 0 .2.2c0 .1-.1.2-.1.3s.1.3.3.3c.4 0 .3-1.1.8-1.1.3 0 .3.1.4.2zm.3-4.1c.7.1 1.5.3 1.9.2l-.1.1c-.2.2-.4.3-.7.6-.7.4-1.3.7-1.8.7-.6 0-1.3-.1-2.1-.3-.7-.2-1.3-.4-1.8-.7-.2.2-.6.2-.9.1-.3-.1-.6-.6-.6-.8v-.1l-.7-.7c-.7-.7-1.1-1.6-1.5-2.4-.1-.4-.3-.9-.3-1.3.6.2.8 0 1-.2.1 0 .1.2.1.2.7 0 1-.4 1.1-.8.1.4.1.8.3 1.1.2.7.6 1.2 1 1.8.1.2.3.3.4.4.1 0 .2-.1.3-.1.2 0 .4.1.7.3.2.2.2.4.2.7 1.3.4 2.5.8 3.5 1.2zM17.4 26c.1 0 .1.1.2.1 0-.1-.1-.2-.2-.4-.1-.1-.3-.2-.6-.2-.4 0-.8.4-1 .6-.1 0-.2 0-.3-.1 0 .1.1.2.1.3-.2.3-.3.7-.3.9 0 .1.2.4.4.7.2.1.3.1.6 0-.1-.1-.2-.1-.3-.2-.1 0-.2-.1-.2-.2v-.1c0-.1 0-.2.1-.3v-.3h.1c.1.1.3.1.4.1 0 0 .1 0 .1-.1.1-.1 0-.3-.2-.4l-.1-.4.1-.1c.1-.1.1-.2.2-.2.5.1.6.1.9.3zm.7 1.9c.2 0 .4-.2.4-.4s-.2-.4-.4-.4-.4.2-.4.4c-.1.3.2.4.4.4zm1.9.7c.2 0 .4-.2.4-.4s-.2-.4-.4-.4-.4.2-.4.4c0 .1.2.4.4.4zM20 5c-.2-.2-.4-.4-.4-.8.2 0 .6.2.8.4V3.5c-.3.3-.5.5-.9.5 0-.2.2-.6.4-.8h-1.1c.2.3.4.6.4.8-.2 0-.6-.2-.8-.4v1.1c.2-.2.4-.4.8-.4 0 .3-.2.6-.4.8H20zm-1.6 1.4c.1.4.6.8 1 .8s.9-.3 1-.8h-2zm1.2-.4h.8c-.1-.4-.4-.8-.8-.8V6zm-.4 0v-.8c-.4.1-.8.4-.8.8h.8zm.8 1.5c-.1 0-.2.1-.3.1V9h.3V7.5zm-1.1 1.6h.3V7.7c-.1 0-.2-.1-.3-.1v1.5zm1.2-1.8c0 .2.1.3.3.3s.3-.1.3-.3c0-.2-.1-.3-.3-.3s-.3.1-.3.3zm1-.1c.2 0 .3-.1.3-.3 0-.1-.1-.2-.3-.2s-.3.1-.3.3c0 .1.2.2.3.2zM22 7c.2 0 .3-.1.3-.3 0-.2-.1-.3-.3-.3s-.3.1-.3.3c0 .2.1.3.3.3zm2.2.8c.2 0 .3-.1.3-.3 0-.2-.1-.3-.3-.3s-.3.1-.3.3c0 .2.2.3.3.3zm-.5-.6c.2 0 .3-.1.3-.3 0-.2-.1-.3-.3-.3s-.3.1-.3.3c-.1.2 0 .3.3.3zm-.9-.2c.2 0 .3-.1.3-.3 0-.2-.1-.3-.3-.3s-.3.1-.3.3c-.1.1.2.3.3.3zm1.8 2.4c-.2 0-.3.1-.3.3 0 .2.1.3.3.3s.3-.1.3-.3c0-.2-.1-.3-.3-.3zm.1-.7c-.2 0-.3.1-.3.3 0 .2.1.3.3.3s.3-.1.3-.3c0-.2-.1-.3-.3-.3zm-.4-.5c0 .2.1.3.3.3s.4-.1.4-.3c0-.2-.1-.3-.3-.3s-.4.1-.4.3zm-5.9-.5c.2 0 .3-.1.3-.3 0-.2-.1-.3-.3-.3s-.3.1-.3.3c0 0 .2.3.3.3zm-.8-.5c.2 0 .3-.1.3-.3 0-.2-.1-.3-.3-.3s-.3.1-.3.3c.1.2.2.3.3.3zm-.7-.2c.2 0 .3-.1.3-.3 0-.2-.1-.3-.3-.3s-.3.1-.3.3c-.1.2.1.3.3.3zm-2.3.8c.2 0 .3-.1.3-.3 0-.2-.1-.3-.3-.3s-.3.1-.3.3c0 .2.1.3.3.3zm.6-.6c.2 0 .3-.1.3-.3 0-.2-.1-.3-.3-.3s-.3.1-.3.3c-.1.2.2.3.3.3zm.9-.2c.2 0 .3-.1.3-.3 0-.2-.1-.3-.3-.3s-.3.1-.3.3c-.1.1.1.3.3.3zm-1.5 2.8c0-.2-.1-.3-.3-.3s-.3 0-.3.3c0 .2.1.3.3.3.1 0 .3-.1.3-.3zm-.2-.8c0-.2-.1-.3-.3-.3-.2 0-.3.1-.3.3 0 .2.1.3.3.3.2 0 .3-.2.3-.3zm-.2-.5c.2 0 .3-.1.3-.3 0-.2-.1-.3-.3-.3s-.4.1-.4.3c0 .1.3.3.4.3zm7.7.3c-.1.1-.4.4-.4.8 0 .2.2.6.3.8.1-.3.4-.4.4-.8 0-.3-.2-.5-.3-.8zm-4.9 0c-.2.3-.3.6-.3.9 0 .3.3.4.4.8.1-.3.3-.6.3-.8 0-.5-.3-.8-.4-.9z\"\n ></path>\n </svg>\n </a>\n\n @if (headerLinks.serviceLink) {\n <a [routerLink]=\"headerLinks.serviceLink\" class=\"moj-header__link moj-header__link--organisation-name\">\n <ng-content select=\"[organisationName]\"></ng-content>\n </a>\n\n <a [routerLink]=\"headerLinks.serviceLink\" class=\"moj-header__link moj-header__link--service-name\">\n <ng-content select=\"[serviceName]\"></ng-content>\n </a>\n } @else {\n <span class=\"moj-header__link--organisation-name\">\n <ng-content select=\"[organisationName]\"></ng-content>\n </span>\n\n <span class=\"moj-header__link--service-name\">\n <ng-content select=\"[serviceName]\"></ng-content>\n </span>\n }\n </div>\n <div class=\"moj-header__content\">\n <nav class=\"moj-header__navigation\" aria-label=\"Account navigation\">\n <!--PO-322\n For accessibility we need to add a role to prevent any accessibility issues\n-->\n <ul class=\"moj-header__navigation-list\" role=\"list\">\n <ng-content></ng-content>\n </ul>\n </nav>\n </div>\n </div>\n</header>\n" }]
|
|
221
|
+
}] });
|
|
222
|
+
|
|
223
|
+
class MojPageHeaderComponent {
|
|
224
|
+
title;
|
|
225
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: MojPageHeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
226
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.5", type: MojPageHeaderComponent, isStandalone: true, selector: "opal-lib-moj-page-header", inputs: { title: "title" }, ngImport: i0, template: "<div class=\"moj-page-header-actions\">\n <div class=\"moj-page-header-actions__title\">\n <h1 class=\"govuk-heading-xl\">{{ title }}</h1>\n </div>\n <div class=\"moj-page-header-actions__actions\">\n <div class=\"moj-button-menu\">\n <div class=\"moj-button-menu__wrapper\">\n <ng-content select=\"[buttons]\"></ng-content>\n </div>\n </div>\n </div>\n</div>\n", styles: [".moj-page-header-actions__actions{float:right}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
227
|
+
}
|
|
228
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: MojPageHeaderComponent, decorators: [{
|
|
229
|
+
type: Component,
|
|
230
|
+
args: [{ selector: 'opal-lib-moj-page-header', imports: [], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"moj-page-header-actions\">\n <div class=\"moj-page-header-actions__title\">\n <h1 class=\"govuk-heading-xl\">{{ title }}</h1>\n </div>\n <div class=\"moj-page-header-actions__actions\">\n <div class=\"moj-button-menu\">\n <div class=\"moj-button-menu__wrapper\">\n <ng-content select=\"[buttons]\"></ng-content>\n </div>\n </div>\n </div>\n</div>\n", styles: [".moj-page-header-actions__actions{float:right}\n"] }]
|
|
231
|
+
}], propDecorators: { title: [{
|
|
232
|
+
type: Input,
|
|
233
|
+
args: [{ required: true }]
|
|
234
|
+
}] } });
|
|
235
|
+
|
|
236
|
+
class MojPaginationItemComponent {
|
|
237
|
+
class = 'moj-pagination__item';
|
|
238
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: MojPaginationItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
239
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.5", type: MojPaginationItemComponent, isStandalone: true, selector: "opal-lib-moj-pagination-item , [opal-lib-moj-pagination-item]", host: { properties: { "class": "this.class" } }, ngImport: i0, template: "<ng-content></ng-content>\n" });
|
|
240
|
+
}
|
|
241
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: MojPaginationItemComponent, decorators: [{
|
|
242
|
+
type: Component,
|
|
243
|
+
args: [{ selector: 'opal-lib-moj-pagination-item , [opal-lib-moj-pagination-item]', imports: [], template: "<ng-content></ng-content>\n" }]
|
|
244
|
+
}], propDecorators: { class: [{
|
|
245
|
+
type: HostBinding,
|
|
246
|
+
args: ['class']
|
|
247
|
+
}] } });
|
|
248
|
+
|
|
249
|
+
class MojPaginationLinkComponent {
|
|
250
|
+
page = 1;
|
|
251
|
+
currentPage = 1;
|
|
252
|
+
totalPages = 1;
|
|
253
|
+
changePage = new EventEmitter();
|
|
254
|
+
/**
|
|
255
|
+
* Checks if the given page number is not the current page.
|
|
256
|
+
*
|
|
257
|
+
* @param page - The page number to check.
|
|
258
|
+
* @returns A boolean indicating whether the given page is not the current page.
|
|
259
|
+
*/
|
|
260
|
+
pageIsNotCurrentPage(page) {
|
|
261
|
+
return page !== this.currentPage;
|
|
262
|
+
}
|
|
263
|
+
/**
|
|
264
|
+
* Checks if the given page number is not negative.
|
|
265
|
+
*
|
|
266
|
+
* @param page - The page number to check.
|
|
267
|
+
* @returns `true` if the page number is greater than 0, otherwise `false`.
|
|
268
|
+
*/
|
|
269
|
+
pageIsNotNegative(page) {
|
|
270
|
+
return page > 0;
|
|
271
|
+
}
|
|
272
|
+
/**
|
|
273
|
+
* Checks if the given page number is not greater than the total number of pages.
|
|
274
|
+
*
|
|
275
|
+
* @param page - The page number to check.
|
|
276
|
+
* @returns `true` if the page number is less than or equal to the total number of pages, otherwise `false`.
|
|
277
|
+
*/
|
|
278
|
+
pageIsNotGreaterThanTotalPages(page) {
|
|
279
|
+
return page <= this.totalPages;
|
|
280
|
+
}
|
|
281
|
+
/**
|
|
282
|
+
* Handles the page change event.
|
|
283
|
+
*
|
|
284
|
+
* @param event - The mouse event that triggered the page change.
|
|
285
|
+
* @param page - The page number to change to.
|
|
286
|
+
*
|
|
287
|
+
* Prevents the default action of the event and checks if the page number is valid.
|
|
288
|
+
* A valid page number is one that is not the current page, is greater than 0,
|
|
289
|
+
* and is less than or equal to the total number of pages.
|
|
290
|
+
* If the page number is valid, emits the changePage event with the new page number.
|
|
291
|
+
*/
|
|
292
|
+
changePageEvent(event, page) {
|
|
293
|
+
event.preventDefault();
|
|
294
|
+
if (this.pageIsNotCurrentPage(page) && this.pageIsNotNegative(page) && this.pageIsNotGreaterThanTotalPages(page)) {
|
|
295
|
+
this.changePage.emit(page);
|
|
296
|
+
}
|
|
297
|
+
}
|
|
298
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: MojPaginationLinkComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
299
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.5", type: MojPaginationLinkComponent, isStandalone: true, selector: "opal-lib-moj-pagination-link", inputs: { page: "page", currentPage: "currentPage", totalPages: "totalPages", changePage: "changePage" }, ngImport: i0, template: "<a class=\"moj-pagination__link\" href=\"#\" (click)=\"changePageEvent($event, +page)\"> <ng-content></ng-content></a>\n", changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
300
|
+
}
|
|
301
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: MojPaginationLinkComponent, decorators: [{
|
|
302
|
+
type: Component,
|
|
303
|
+
args: [{ selector: 'opal-lib-moj-pagination-link', imports: [], changeDetection: ChangeDetectionStrategy.OnPush, template: "<a class=\"moj-pagination__link\" href=\"#\" (click)=\"changePageEvent($event, +page)\"> <ng-content></ng-content></a>\n" }]
|
|
304
|
+
}], propDecorators: { page: [{
|
|
305
|
+
type: Input,
|
|
306
|
+
args: [{ required: true }]
|
|
307
|
+
}], currentPage: [{
|
|
308
|
+
type: Input,
|
|
309
|
+
args: [{ required: true }]
|
|
310
|
+
}], totalPages: [{
|
|
311
|
+
type: Input,
|
|
312
|
+
args: [{ required: true }]
|
|
313
|
+
}], changePage: [{
|
|
314
|
+
type: Input
|
|
315
|
+
}] } });
|
|
316
|
+
|
|
317
|
+
class MojPaginationListComponent {
|
|
318
|
+
class = 'moj-pagination__list';
|
|
319
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: MojPaginationListComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
320
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.5", type: MojPaginationListComponent, isStandalone: true, selector: "opal-lib-moj-pagination-list , [opal-lib-moj-pagination-list]", host: { properties: { "class": "this.class" } }, ngImport: i0, template: "<ng-content></ng-content>\n" });
|
|
321
|
+
}
|
|
322
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: MojPaginationListComponent, decorators: [{
|
|
323
|
+
type: Component,
|
|
324
|
+
args: [{ selector: 'opal-lib-moj-pagination-list , [opal-lib-moj-pagination-list]', imports: [], template: "<ng-content></ng-content>\n" }]
|
|
325
|
+
}], propDecorators: { class: [{
|
|
326
|
+
type: HostBinding,
|
|
327
|
+
args: ['class']
|
|
328
|
+
}] } });
|
|
329
|
+
|
|
330
|
+
class MojPaginationComponent {
|
|
331
|
+
currentPage = 1;
|
|
332
|
+
total = 0;
|
|
333
|
+
maxPagesToShow = 5;
|
|
334
|
+
limit = 100;
|
|
335
|
+
ariaLabel = 'Pagination navigation';
|
|
336
|
+
changePage = new EventEmitter();
|
|
337
|
+
pages = signal([]);
|
|
338
|
+
totalPages = signal(0);
|
|
339
|
+
startItem = signal(0);
|
|
340
|
+
endItem = signal(0);
|
|
341
|
+
totalItems = signal(0);
|
|
342
|
+
/**
|
|
343
|
+
* Updates the pagination signals based on the current state.
|
|
344
|
+
*
|
|
345
|
+
* This method recalculates and sets the following signals:
|
|
346
|
+
* - `totalPages`: The total number of pages based on the total items and items per page limit.
|
|
347
|
+
* - `startItem`: The index of the first item on the current page.
|
|
348
|
+
* - `endItem`: The index of the last item on the current page.
|
|
349
|
+
* - `pages`: The array of page numbers to be displayed.
|
|
350
|
+
* - `totalItems`: The total number of items.
|
|
351
|
+
*
|
|
352
|
+
* @private
|
|
353
|
+
*/
|
|
354
|
+
setSignals() {
|
|
355
|
+
this.totalPages.set(this.getTotalPages(this.total, this.limit));
|
|
356
|
+
this.startItem.set(this.getStartItem(this.currentPage, this.limit));
|
|
357
|
+
this.endItem.set(this.getEndItem(this.currentPage, this.limit, this.total));
|
|
358
|
+
this.setPages();
|
|
359
|
+
this.setTotalItems();
|
|
360
|
+
}
|
|
361
|
+
/**
|
|
362
|
+
* Calculates the total number of pages based on the total number of items and the limit of items per page.
|
|
363
|
+
*
|
|
364
|
+
* @param total - The total number of items.
|
|
365
|
+
* @param limit - The number of items per page.
|
|
366
|
+
* @returns The total number of pages.
|
|
367
|
+
*/
|
|
368
|
+
getTotalPages(total, limit) {
|
|
369
|
+
return Math.ceil(total / limit);
|
|
370
|
+
}
|
|
371
|
+
/**
|
|
372
|
+
* Sets the pagination pages based on the current page and total pages.
|
|
373
|
+
* This method updates the `pages` property with the result of the `getPages` method.
|
|
374
|
+
*
|
|
375
|
+
* @private
|
|
376
|
+
*/
|
|
377
|
+
setPages() {
|
|
378
|
+
this.pages.set(this.getPages(this.currentPage, this.totalPages()));
|
|
379
|
+
}
|
|
380
|
+
/**
|
|
381
|
+
* Calculates the starting item index for pagination.
|
|
382
|
+
*
|
|
383
|
+
* @param currentPage - The current page number.
|
|
384
|
+
* @param limit - The number of items per page.
|
|
385
|
+
* @returns The starting item index for the given page.
|
|
386
|
+
*/
|
|
387
|
+
getStartItem(currentPage, limit) {
|
|
388
|
+
return (currentPage - 1) * limit + 1;
|
|
389
|
+
}
|
|
390
|
+
/**
|
|
391
|
+
* Calculates the end item index for pagination.
|
|
392
|
+
*
|
|
393
|
+
* @param currentPage - The current page number.
|
|
394
|
+
* @param limit - The number of items per page.
|
|
395
|
+
* @param total - The total number of items.
|
|
396
|
+
* @returns The index of the last item on the current page, or the total number of items if the end of the list is reached.
|
|
397
|
+
*/
|
|
398
|
+
getEndItem(currentPage, limit, total) {
|
|
399
|
+
return Math.min(currentPage * limit, total);
|
|
400
|
+
}
|
|
401
|
+
/**
|
|
402
|
+
* Updates the total number of items by setting the value of `totalItems` to the current `total`.
|
|
403
|
+
*
|
|
404
|
+
* @private
|
|
405
|
+
*/
|
|
406
|
+
setTotalItems() {
|
|
407
|
+
this.totalItems.set(this.total);
|
|
408
|
+
}
|
|
409
|
+
/**
|
|
410
|
+
* Generates an array of page numbers and ellipses for pagination display.
|
|
411
|
+
*
|
|
412
|
+
* @param currentPage - The current active page number.
|
|
413
|
+
* @param totalPages - The total number of pages available.
|
|
414
|
+
* @returns An array of page numbers and ellipses representing the pagination.
|
|
415
|
+
*
|
|
416
|
+
* The function ensures that the pagination display shows a maximum of 5 pages at a time.
|
|
417
|
+
* It calculates the range of pages to display based on the current page and total pages.
|
|
418
|
+
* If the start page is greater than 1, it adds an ellipsis and the first page at the beginning.
|
|
419
|
+
* If the end page is less than the total pages, it adds an ellipsis and the last page at the end.
|
|
420
|
+
*/
|
|
421
|
+
getPages(currentPage, totalPages) {
|
|
422
|
+
const halfPagesToShow = Math.floor(this.maxPagesToShow / 2);
|
|
423
|
+
const eclipses = '...';
|
|
424
|
+
const startPage = this.calculateStartPage(currentPage, totalPages, halfPagesToShow);
|
|
425
|
+
const endPage = this.calculateEndPage(currentPage, totalPages, halfPagesToShow);
|
|
426
|
+
const pages = this.generatePageNumbers(startPage, endPage);
|
|
427
|
+
if (startPage > 1) {
|
|
428
|
+
pages.unshift(eclipses);
|
|
429
|
+
pages.unshift(1);
|
|
430
|
+
}
|
|
431
|
+
if (endPage < totalPages) {
|
|
432
|
+
pages.push(eclipses);
|
|
433
|
+
pages.push(totalPages);
|
|
434
|
+
}
|
|
435
|
+
return pages;
|
|
436
|
+
}
|
|
437
|
+
/**
|
|
438
|
+
* Calculates the start page for pagination based on the current page, total pages, and the number of pages to show on either side of the current page.
|
|
439
|
+
*
|
|
440
|
+
* @param currentPage - The current active page number.
|
|
441
|
+
* @param totalPages - The total number of pages available.
|
|
442
|
+
* @param halfPagesToShow - The number of pages to show on either side of the current page.
|
|
443
|
+
* @returns The start page number for pagination.
|
|
444
|
+
*/
|
|
445
|
+
calculateStartPage(currentPage, totalPages, halfPagesToShow) {
|
|
446
|
+
let startPage = Math.max(1, currentPage - halfPagesToShow);
|
|
447
|
+
if (currentPage - halfPagesToShow <= 0) {
|
|
448
|
+
startPage = 1;
|
|
449
|
+
}
|
|
450
|
+
else if (currentPage + halfPagesToShow > totalPages) {
|
|
451
|
+
startPage = Math.max(1, startPage - (currentPage + halfPagesToShow - totalPages));
|
|
452
|
+
}
|
|
453
|
+
return startPage;
|
|
454
|
+
}
|
|
455
|
+
/**
|
|
456
|
+
* Calculates the end page number for pagination based on the current page, total pages, and the number of pages to show.
|
|
457
|
+
*
|
|
458
|
+
* @param currentPage - The current page number.
|
|
459
|
+
* @param totalPages - The total number of pages.
|
|
460
|
+
* @param halfPagesToShow - Half the number of pages to show around the current page.
|
|
461
|
+
* @returns The calculated end page number.
|
|
462
|
+
*/
|
|
463
|
+
calculateEndPage(currentPage, totalPages, halfPagesToShow) {
|
|
464
|
+
let endPage = Math.min(totalPages, currentPage + halfPagesToShow);
|
|
465
|
+
if (currentPage - halfPagesToShow <= 0) {
|
|
466
|
+
endPage = Math.min(totalPages, endPage + (halfPagesToShow - currentPage + 1));
|
|
467
|
+
}
|
|
468
|
+
else if (currentPage + halfPagesToShow > totalPages) {
|
|
469
|
+
endPage = totalPages;
|
|
470
|
+
}
|
|
471
|
+
return endPage;
|
|
472
|
+
}
|
|
473
|
+
/**
|
|
474
|
+
* Generates an array of page numbers from the startPage to the endPage.
|
|
475
|
+
*
|
|
476
|
+
* @param startPage - The starting page number.
|
|
477
|
+
* @param endPage - The ending page number.
|
|
478
|
+
* @returns An array of page numbers from startPage to endPage.
|
|
479
|
+
*/
|
|
480
|
+
generatePageNumbers(startPage, endPage) {
|
|
481
|
+
const pages = [];
|
|
482
|
+
for (let i = startPage; i <= endPage; i++) {
|
|
483
|
+
pages.push(i);
|
|
484
|
+
}
|
|
485
|
+
return pages;
|
|
486
|
+
}
|
|
487
|
+
ngOnChanges() {
|
|
488
|
+
this.setSignals();
|
|
489
|
+
}
|
|
490
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: MojPaginationComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
491
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.5", type: MojPaginationComponent, isStandalone: true, selector: "opal-lib-moj-pagination,", inputs: { currentPage: "currentPage", total: "total", maxPagesToShow: "maxPagesToShow", limit: "limit", ariaLabel: "ariaLabel" }, outputs: { changePage: "changePage" }, usesOnChanges: true, ngImport: i0, template: "<nav class=\"moj-pagination moj-pagination-alignment\" [attr.aria-label]=\"ariaLabel\">\n <ul opal-lib-moj-pagination-list>\n <li opal-lib-moj-pagination-item class=\"moj-pagination__item moj-pagination__item--prev\">\n @if (currentPage > 1) {\n <opal-lib-moj-pagination-link\n [changePage]=\"changePage\"\n [page]=\"currentPage - 1\"\n [currentPage]=\"currentPage\"\n [totalPages]=\"totalPages()\"\n >Previous<span class=\"govuk-visually-hidden\"> page </span></opal-lib-moj-pagination-link\n >\n }\n </li>\n @for (page of pages(); track page) {\n <li\n opal-lib-moj-pagination-item\n [class.moj-pagination__item--active]=\"page === currentPage\"\n [class.moj-pagination__item--dot]=\"page === '...'\"\n >\n @if (page !== currentPage && page !== '...') {\n <opal-lib-moj-pagination-link\n [changePage]=\"changePage\"\n [page]=\"+page\"\n [currentPage]=\"currentPage\"\n [totalPages]=\"totalPages()\"\n >\n {{ page }}\n </opal-lib-moj-pagination-link>\n } @else if (page === '...') {\n <strong>...</strong>\n } @else {\n {{ page }}\n }\n </li>\n }\n\n <li opal-lib-moj-pagination-item class=\"moj-pagination__item moj-pagination__item--next\">\n @if (currentPage < totalPages()) {\n <opal-lib-moj-pagination-link\n [changePage]=\"changePage\"\n [page]=\"currentPage + 1\"\n [currentPage]=\"currentPage\"\n [totalPages]=\"totalPages()\"\n >Next<span class=\"govuk-visually-hidden\"> page</span></opal-lib-moj-pagination-link\n >\n }\n </li>\n </ul>\n <p class=\"moj-pagination__results\">\n Showing <b>{{ startItem() - 1 }}</b> to <b>{{ endItem() }}</b> of <b>{{ totalItems() }}</b> results\n </p>\n</nav>\n", styles: [".moj-pagination-alignment{width:100%;display:grid;grid-template-columns:.5fr .5fr}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "component", type: MojPaginationItemComponent, selector: "opal-lib-moj-pagination-item , [opal-lib-moj-pagination-item]" }, { kind: "component", type: MojPaginationListComponent, selector: "opal-lib-moj-pagination-list , [opal-lib-moj-pagination-list]" }, { kind: "component", type: MojPaginationLinkComponent, selector: "opal-lib-moj-pagination-link", inputs: ["page", "currentPage", "totalPages", "changePage"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
492
|
+
}
|
|
493
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: MojPaginationComponent, decorators: [{
|
|
494
|
+
type: Component,
|
|
495
|
+
args: [{ selector: 'opal-lib-moj-pagination,', imports: [CommonModule, MojPaginationItemComponent, MojPaginationListComponent, MojPaginationLinkComponent], changeDetection: ChangeDetectionStrategy.OnPush, template: "<nav class=\"moj-pagination moj-pagination-alignment\" [attr.aria-label]=\"ariaLabel\">\n <ul opal-lib-moj-pagination-list>\n <li opal-lib-moj-pagination-item class=\"moj-pagination__item moj-pagination__item--prev\">\n @if (currentPage > 1) {\n <opal-lib-moj-pagination-link\n [changePage]=\"changePage\"\n [page]=\"currentPage - 1\"\n [currentPage]=\"currentPage\"\n [totalPages]=\"totalPages()\"\n >Previous<span class=\"govuk-visually-hidden\"> page </span></opal-lib-moj-pagination-link\n >\n }\n </li>\n @for (page of pages(); track page) {\n <li\n opal-lib-moj-pagination-item\n [class.moj-pagination__item--active]=\"page === currentPage\"\n [class.moj-pagination__item--dot]=\"page === '...'\"\n >\n @if (page !== currentPage && page !== '...') {\n <opal-lib-moj-pagination-link\n [changePage]=\"changePage\"\n [page]=\"+page\"\n [currentPage]=\"currentPage\"\n [totalPages]=\"totalPages()\"\n >\n {{ page }}\n </opal-lib-moj-pagination-link>\n } @else if (page === '...') {\n <strong>...</strong>\n } @else {\n {{ page }}\n }\n </li>\n }\n\n <li opal-lib-moj-pagination-item class=\"moj-pagination__item moj-pagination__item--next\">\n @if (currentPage < totalPages()) {\n <opal-lib-moj-pagination-link\n [changePage]=\"changePage\"\n [page]=\"currentPage + 1\"\n [currentPage]=\"currentPage\"\n [totalPages]=\"totalPages()\"\n >Next<span class=\"govuk-visually-hidden\"> page</span></opal-lib-moj-pagination-link\n >\n }\n </li>\n </ul>\n <p class=\"moj-pagination__results\">\n Showing <b>{{ startItem() - 1 }}</b> to <b>{{ endItem() }}</b> of <b>{{ totalItems() }}</b> results\n </p>\n</nav>\n", styles: [".moj-pagination-alignment{width:100%;display:grid;grid-template-columns:.5fr .5fr}\n"] }]
|
|
496
|
+
}], propDecorators: { currentPage: [{
|
|
497
|
+
type: Input
|
|
498
|
+
}], total: [{
|
|
499
|
+
type: Input
|
|
500
|
+
}], maxPagesToShow: [{
|
|
501
|
+
type: Input
|
|
502
|
+
}], limit: [{
|
|
503
|
+
type: Input
|
|
504
|
+
}], ariaLabel: [{
|
|
505
|
+
type: Input
|
|
506
|
+
}], changePage: [{
|
|
507
|
+
type: Output
|
|
508
|
+
}] } });
|
|
509
|
+
|
|
510
|
+
class MojPrimaryNavigationItemComponent {
|
|
511
|
+
router = inject(Router);
|
|
512
|
+
route = inject(ActivatedRoute);
|
|
513
|
+
primaryNavigationItemId;
|
|
514
|
+
primaryNavigationItemFragment;
|
|
515
|
+
primaryNavigationItemText;
|
|
516
|
+
activeItemFragment;
|
|
517
|
+
isLastItem = false;
|
|
518
|
+
/**
|
|
519
|
+
* Handles the click event of a sub-navigation item.
|
|
520
|
+
* @param event - The click event.
|
|
521
|
+
* @param item - The item string.
|
|
522
|
+
*/
|
|
523
|
+
handleItemClick(event, item) {
|
|
524
|
+
event.preventDefault();
|
|
525
|
+
// Basically we want to mimic the behaviour of the GDS tabs component, as this is how these will be used.
|
|
526
|
+
this.router.navigate(['./'], { relativeTo: this.route, fragment: item });
|
|
527
|
+
}
|
|
528
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: MojPrimaryNavigationItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
529
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.5", type: MojPrimaryNavigationItemComponent, isStandalone: true, selector: "opal-lib-moj-primary-navigation-item, [opal-lib-moj-primary-navigation-item]", inputs: { primaryNavigationItemId: "primaryNavigationItemId", primaryNavigationItemFragment: "primaryNavigationItemFragment", primaryNavigationItemText: "primaryNavigationItemText", activeItemFragment: "activeItemFragment", isLastItem: "isLastItem" }, ngImport: i0, template: "<li class=\"moj-primary-navigation__item\" [class.last-item]=\"isLastItem\" [id]=\"primaryNavigationItemId\">\n <a\n href=\"\"\n class=\"moj-primary-navigation__link cursor-pointer\"\n [attr.aria-current]=\"primaryNavigationItemFragment === activeItemFragment ? 'page' : null\"\n (click)=\"handleItemClick($event, primaryNavigationItemFragment)\"\n (keyup.enter)=\"handleItemClick($event, primaryNavigationItemFragment)\"\n >{{ primaryNavigationItemText }}</a\n >\n</li>\n", styles: [".moj-primary-navigation__item.last-item{margin-right:initial!important}.moj-primary-navigation__item{margin-right:20px}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
530
|
+
}
|
|
531
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: MojPrimaryNavigationItemComponent, decorators: [{
|
|
532
|
+
type: Component,
|
|
533
|
+
args: [{ selector: 'opal-lib-moj-primary-navigation-item, [opal-lib-moj-primary-navigation-item]', imports: [], changeDetection: ChangeDetectionStrategy.OnPush, template: "<li class=\"moj-primary-navigation__item\" [class.last-item]=\"isLastItem\" [id]=\"primaryNavigationItemId\">\n <a\n href=\"\"\n class=\"moj-primary-navigation__link cursor-pointer\"\n [attr.aria-current]=\"primaryNavigationItemFragment === activeItemFragment ? 'page' : null\"\n (click)=\"handleItemClick($event, primaryNavigationItemFragment)\"\n (keyup.enter)=\"handleItemClick($event, primaryNavigationItemFragment)\"\n >{{ primaryNavigationItemText }}</a\n >\n</li>\n", styles: [".moj-primary-navigation__item.last-item{margin-right:initial!important}.moj-primary-navigation__item{margin-right:20px}\n"] }]
|
|
534
|
+
}], propDecorators: { primaryNavigationItemId: [{
|
|
535
|
+
type: Input,
|
|
536
|
+
args: [{ required: true }]
|
|
537
|
+
}], primaryNavigationItemFragment: [{
|
|
538
|
+
type: Input,
|
|
539
|
+
args: [{ required: true }]
|
|
540
|
+
}], primaryNavigationItemText: [{
|
|
541
|
+
type: Input,
|
|
542
|
+
args: [{ required: true }]
|
|
543
|
+
}], activeItemFragment: [{
|
|
544
|
+
type: Input,
|
|
545
|
+
args: [{ required: true }]
|
|
546
|
+
}], isLastItem: [{
|
|
547
|
+
type: Input,
|
|
548
|
+
args: [{ required: false }]
|
|
549
|
+
}] } });
|
|
550
|
+
|
|
551
|
+
class MojPrimaryNavigationComponent {
|
|
552
|
+
router = inject(Router);
|
|
553
|
+
route = inject(ActivatedRoute);
|
|
554
|
+
ngUnsubscribe = new Subject();
|
|
555
|
+
primaryNavigationId;
|
|
556
|
+
activeItemFragment = new EventEmitter();
|
|
557
|
+
/**
|
|
558
|
+
* Sets up the listeners for the route fragment changes.
|
|
559
|
+
* Emits the active navigation item when a fragment is present in the route.
|
|
560
|
+
*/
|
|
561
|
+
setupListeners() {
|
|
562
|
+
// Basically we want to mimic the behaviour of the GDS tabs component, as this is how these will be used.
|
|
563
|
+
this.route.fragment.pipe(takeUntil(this.ngUnsubscribe)).subscribe((fragment) => {
|
|
564
|
+
if (fragment) {
|
|
565
|
+
this.activeItemFragment.emit(fragment);
|
|
566
|
+
}
|
|
567
|
+
});
|
|
568
|
+
}
|
|
569
|
+
/**
|
|
570
|
+
* Initializes the component.
|
|
571
|
+
* This method is called after the component has been created and initialized.
|
|
572
|
+
*/
|
|
573
|
+
ngOnInit() {
|
|
574
|
+
this.setupListeners();
|
|
575
|
+
}
|
|
576
|
+
/**
|
|
577
|
+
* Lifecycle hook that is called when the component is about to be destroyed.
|
|
578
|
+
* Unsubscribes from the route fragment subscription.
|
|
579
|
+
*/
|
|
580
|
+
ngOnDestroy() {
|
|
581
|
+
this.ngUnsubscribe.next();
|
|
582
|
+
this.ngUnsubscribe.complete();
|
|
583
|
+
}
|
|
584
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: MojPrimaryNavigationComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
585
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.5", type: MojPrimaryNavigationComponent, isStandalone: true, selector: "opal-lib-moj-primary-navigation", inputs: { primaryNavigationId: "primaryNavigationId" }, outputs: { activeItemFragment: "activeItemFragment" }, ngImport: i0, template: "<div class=\"moj-primary-navigation\" [id]=\"primaryNavigationId\">\n <div class=\"moj-primary-navigation__container\">\n <div class=\"moj-primary-navigation__nav\">\n <nav class=\"moj-primary-navigation\" aria-label=\"Primary navigation\">\n <ul class=\"moj-primary-navigation__list\">\n <ng-content></ng-content>\n </ul>\n </nav>\n </div>\n </div>\n</div>\n", changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
586
|
+
}
|
|
587
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: MojPrimaryNavigationComponent, decorators: [{
|
|
588
|
+
type: Component,
|
|
589
|
+
args: [{ selector: 'opal-lib-moj-primary-navigation', imports: [], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"moj-primary-navigation\" [id]=\"primaryNavigationId\">\n <div class=\"moj-primary-navigation__container\">\n <div class=\"moj-primary-navigation__nav\">\n <nav class=\"moj-primary-navigation\" aria-label=\"Primary navigation\">\n <ul class=\"moj-primary-navigation__list\">\n <ng-content></ng-content>\n </ul>\n </nav>\n </div>\n </div>\n</div>\n" }]
|
|
590
|
+
}], propDecorators: { primaryNavigationId: [{
|
|
591
|
+
type: Input,
|
|
592
|
+
args: [{ required: true }]
|
|
593
|
+
}], activeItemFragment: [{
|
|
594
|
+
type: Output
|
|
595
|
+
}] } });
|
|
596
|
+
|
|
597
|
+
class MojSortableTableHeaderComponent {
|
|
598
|
+
columnKey;
|
|
599
|
+
sortDirection = 'none';
|
|
600
|
+
dataIndex = 0;
|
|
601
|
+
sortChange = new EventEmitter();
|
|
602
|
+
get ariaSort() {
|
|
603
|
+
return this.sortDirection;
|
|
604
|
+
}
|
|
605
|
+
hostScope = 'col';
|
|
606
|
+
get hostClass() {
|
|
607
|
+
return 'govuk-table__header';
|
|
608
|
+
}
|
|
609
|
+
/**
|
|
610
|
+
* Toggles the sort direction between 'ascending' and 'descending' for the table column.
|
|
611
|
+
* Emits a sortChange event with the column key and the new sort direction.
|
|
612
|
+
*
|
|
613
|
+
* @public
|
|
614
|
+
* @returns {void}
|
|
615
|
+
*/
|
|
616
|
+
toggleSort() {
|
|
617
|
+
const newDirection = this.sortDirection === 'ascending' ? 'descending' : 'ascending';
|
|
618
|
+
this.sortChange.emit({
|
|
619
|
+
key: this.columnKey,
|
|
620
|
+
sortType: newDirection,
|
|
621
|
+
});
|
|
622
|
+
}
|
|
623
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: MojSortableTableHeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
624
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.5", type: MojSortableTableHeaderComponent, isStandalone: true, selector: "opal-lib-moj-sortable-table-header, [opal-lib-moj-sortable-table-header]", inputs: { columnKey: "columnKey", sortDirection: "sortDirection", dataIndex: "dataIndex" }, outputs: { sortChange: "sortChange" }, host: { properties: { "attr.aria-sort": "this.ariaSort", "scope": "this.hostScope", "class": "this.hostClass" } }, ngImport: i0, template: "<button [attr.data-index]=\"dataIndex\" (click)=\"toggleSort()\" type=\"button\">\n <ng-content></ng-content>\n</button>\n", changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
625
|
+
}
|
|
626
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: MojSortableTableHeaderComponent, decorators: [{
|
|
627
|
+
type: Component,
|
|
628
|
+
args: [{ selector: 'opal-lib-moj-sortable-table-header, [opal-lib-moj-sortable-table-header]', imports: [], changeDetection: ChangeDetectionStrategy.OnPush, template: "<button [attr.data-index]=\"dataIndex\" (click)=\"toggleSort()\" type=\"button\">\n <ng-content></ng-content>\n</button>\n" }]
|
|
629
|
+
}], propDecorators: { columnKey: [{
|
|
630
|
+
type: Input
|
|
631
|
+
}], sortDirection: [{
|
|
632
|
+
type: Input
|
|
633
|
+
}], dataIndex: [{
|
|
634
|
+
type: Input
|
|
635
|
+
}], sortChange: [{
|
|
636
|
+
type: Output
|
|
637
|
+
}], ariaSort: [{
|
|
638
|
+
type: HostBinding,
|
|
639
|
+
args: ['attr.aria-sort']
|
|
640
|
+
}], hostScope: [{
|
|
641
|
+
type: HostBinding,
|
|
642
|
+
args: ['scope']
|
|
643
|
+
}], hostClass: [{
|
|
644
|
+
type: HostBinding,
|
|
645
|
+
args: ['class']
|
|
646
|
+
}] } });
|
|
647
|
+
|
|
648
|
+
class MojSortableTableRowComponent {
|
|
649
|
+
bodyRowClasses = '';
|
|
650
|
+
get hostClass() {
|
|
651
|
+
return `govuk-table__row ${this.bodyRowClasses}`;
|
|
652
|
+
}
|
|
653
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: MojSortableTableRowComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
654
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.5", type: MojSortableTableRowComponent, isStandalone: true, selector: "opal-lib-moj-sortable-table-row,[opal-lib-moj-sortable-table-row]", inputs: { bodyRowClasses: "bodyRowClasses" }, host: { properties: { "class": "this.hostClass" } }, ngImport: i0, template: "<ng-content></ng-content>\n", changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
655
|
+
}
|
|
656
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: MojSortableTableRowComponent, decorators: [{
|
|
657
|
+
type: Component,
|
|
658
|
+
args: [{ selector: 'opal-lib-moj-sortable-table-row,[opal-lib-moj-sortable-table-row]', imports: [], changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-content></ng-content>\n" }]
|
|
659
|
+
}], propDecorators: { bodyRowClasses: [{
|
|
660
|
+
type: Input,
|
|
661
|
+
args: [{ required: false }]
|
|
662
|
+
}], hostClass: [{
|
|
663
|
+
type: HostBinding,
|
|
664
|
+
args: ['class']
|
|
665
|
+
}] } });
|
|
666
|
+
|
|
667
|
+
class MojSortableTableComponent {
|
|
668
|
+
tableClasses;
|
|
669
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: MojSortableTableComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
670
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.5", type: MojSortableTableComponent, isStandalone: true, selector: "opal-lib-moj-sortable-table", inputs: { tableClasses: "tableClasses" }, ngImport: i0, template: "<table class=\"govuk-table {{ tableClasses }}\" data-module=\"moj-sortable-table\">\n <thead class=\"govuk-table__head\">\n <tr class=\"govuk-table__row\">\n <ng-content select=\"[head]\"></ng-content>\n </tr>\n </thead>\n <tbody class=\"govuk-table__body\">\n <ng-content select=\"[row]\"></ng-content>\n <ng-content select=\"[results]\"></ng-content>\n </tbody>\n</table>\n<ng-content select=\"[status]\"></ng-content>\n", changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
671
|
+
}
|
|
672
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: MojSortableTableComponent, decorators: [{
|
|
673
|
+
type: Component,
|
|
674
|
+
args: [{ selector: 'opal-lib-moj-sortable-table', changeDetection: ChangeDetectionStrategy.OnPush, template: "<table class=\"govuk-table {{ tableClasses }}\" data-module=\"moj-sortable-table\">\n <thead class=\"govuk-table__head\">\n <tr class=\"govuk-table__row\">\n <ng-content select=\"[head]\"></ng-content>\n </tr>\n </thead>\n <tbody class=\"govuk-table__body\">\n <ng-content select=\"[row]\"></ng-content>\n <ng-content select=\"[results]\"></ng-content>\n </tbody>\n</table>\n<ng-content select=\"[status]\"></ng-content>\n" }]
|
|
675
|
+
}], propDecorators: { tableClasses: [{
|
|
676
|
+
type: Input,
|
|
677
|
+
args: [{ required: false }]
|
|
678
|
+
}] } });
|
|
679
|
+
|
|
680
|
+
class MojSubNavigationItemComponent {
|
|
681
|
+
router = inject(Router);
|
|
682
|
+
route = inject(ActivatedRoute);
|
|
683
|
+
subNavItemId;
|
|
684
|
+
subNavItemFragment;
|
|
685
|
+
subNavItemText;
|
|
686
|
+
activeSubNavItemFragment;
|
|
687
|
+
/**
|
|
688
|
+
* Handles the click event of a sub-navigation item.
|
|
689
|
+
* @param event - The click event.
|
|
690
|
+
* @param item - The item string.
|
|
691
|
+
*/
|
|
692
|
+
handleItemClick(event, item) {
|
|
693
|
+
event.preventDefault();
|
|
694
|
+
// Basically we want to mimic the behaviour of the GDS tabs component, as this is how these will be used.
|
|
695
|
+
this.router.navigate(['./'], { relativeTo: this.route, fragment: item });
|
|
696
|
+
}
|
|
697
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: MojSubNavigationItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
698
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.5", type: MojSubNavigationItemComponent, isStandalone: true, selector: "opal-lib-moj-sub-navigation-item", inputs: { subNavItemId: "subNavItemId", subNavItemFragment: "subNavItemFragment", subNavItemText: "subNavItemText", activeSubNavItemFragment: "activeSubNavItemFragment" }, ngImport: i0, template: "<li class=\"moj-sub-navigation__item\" [id]=\"subNavItemId\">\n <a\n class=\"moj-sub-navigation__link cursor-pointer\"\n [attr.aria-current]=\"subNavItemFragment === activeSubNavItemFragment ? 'page' : ''\"\n (click)=\"handleItemClick($event, subNavItemFragment)\"\n (keyup.enter)=\"handleItemClick($event, subNavItemFragment)\"\n role=\"link\"\n tabindex=\"0\"\n >{{ subNavItemText }}</a\n >\n</li>\n", changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
699
|
+
}
|
|
700
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: MojSubNavigationItemComponent, decorators: [{
|
|
701
|
+
type: Component,
|
|
702
|
+
args: [{ selector: 'opal-lib-moj-sub-navigation-item', imports: [], changeDetection: ChangeDetectionStrategy.OnPush, template: "<li class=\"moj-sub-navigation__item\" [id]=\"subNavItemId\">\n <a\n class=\"moj-sub-navigation__link cursor-pointer\"\n [attr.aria-current]=\"subNavItemFragment === activeSubNavItemFragment ? 'page' : ''\"\n (click)=\"handleItemClick($event, subNavItemFragment)\"\n (keyup.enter)=\"handleItemClick($event, subNavItemFragment)\"\n role=\"link\"\n tabindex=\"0\"\n >{{ subNavItemText }}</a\n >\n</li>\n" }]
|
|
703
|
+
}], propDecorators: { subNavItemId: [{
|
|
704
|
+
type: Input,
|
|
705
|
+
args: [{ required: true }]
|
|
706
|
+
}], subNavItemFragment: [{
|
|
707
|
+
type: Input,
|
|
708
|
+
args: [{ required: true }]
|
|
709
|
+
}], subNavItemText: [{
|
|
710
|
+
type: Input,
|
|
711
|
+
args: [{ required: true }]
|
|
712
|
+
}], activeSubNavItemFragment: [{
|
|
713
|
+
type: Input,
|
|
714
|
+
args: [{ required: true }]
|
|
715
|
+
}] } });
|
|
716
|
+
|
|
717
|
+
class MojSubNavigationComponent {
|
|
718
|
+
route = inject(ActivatedRoute);
|
|
719
|
+
ngUnsubscribe = new Subject();
|
|
720
|
+
subNavId;
|
|
721
|
+
activeSubNavItemFragment = new EventEmitter();
|
|
722
|
+
/**
|
|
723
|
+
* Sets up the listeners for the route fragment changes.
|
|
724
|
+
* Emits the active navigation item when a fragment is present in the route.
|
|
725
|
+
*/
|
|
726
|
+
setupListeners() {
|
|
727
|
+
// Basically we want to mimic the behaviour of the GDS tabs component, as this is how these will be used.
|
|
728
|
+
this.route.fragment.pipe(takeUntil(this.ngUnsubscribe)).subscribe((fragment) => {
|
|
729
|
+
if (fragment) {
|
|
730
|
+
this.activeSubNavItemFragment.emit(fragment);
|
|
731
|
+
}
|
|
732
|
+
});
|
|
733
|
+
}
|
|
734
|
+
ngOnInit() {
|
|
735
|
+
this.setupListeners();
|
|
736
|
+
}
|
|
737
|
+
/**
|
|
738
|
+
* Lifecycle hook that is called when the component is about to be destroyed.
|
|
739
|
+
* Unsubscribes from the route fragment subscription.
|
|
740
|
+
*/
|
|
741
|
+
ngOnDestroy() {
|
|
742
|
+
this.ngUnsubscribe.next();
|
|
743
|
+
this.ngUnsubscribe.complete();
|
|
744
|
+
}
|
|
745
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: MojSubNavigationComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
746
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.5", type: MojSubNavigationComponent, isStandalone: true, selector: "opal-lib-moj-sub-navigation", inputs: { subNavId: "subNavId" }, outputs: { activeSubNavItemFragment: "activeSubNavItemFragment" }, ngImport: i0, template: "<nav class=\"moj-sub-navigation\" aria-label=\"Sub navigation\" [id]=\"subNavId\">\n <ul class=\"moj-sub-navigation__list\">\n <ng-content></ng-content>\n </ul>\n</nav>\n", changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
747
|
+
}
|
|
748
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: MojSubNavigationComponent, decorators: [{
|
|
749
|
+
type: Component,
|
|
750
|
+
args: [{ selector: 'opal-lib-moj-sub-navigation', imports: [], changeDetection: ChangeDetectionStrategy.OnPush, template: "<nav class=\"moj-sub-navigation\" aria-label=\"Sub navigation\" [id]=\"subNavId\">\n <ul class=\"moj-sub-navigation__list\">\n <ng-content></ng-content>\n </ul>\n</nav>\n" }]
|
|
751
|
+
}], propDecorators: { subNavId: [{
|
|
752
|
+
type: Input,
|
|
753
|
+
args: [{ required: true }]
|
|
754
|
+
}], activeSubNavItemFragment: [{
|
|
755
|
+
type: Output
|
|
756
|
+
}] } });
|
|
757
|
+
|
|
758
|
+
class MojTicketPanelComponent {
|
|
759
|
+
componentClasses;
|
|
760
|
+
sectionClasses;
|
|
761
|
+
alert;
|
|
762
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: MojTicketPanelComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
763
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.5", type: MojTicketPanelComponent, isStandalone: true, selector: "opal-lib-moj-ticket-panel", inputs: { componentClasses: "componentClasses", sectionClasses: "sectionClasses", alert: "alert" }, ngImport: i0, template: "<article class=\"moj-ticket-panel {{ componentClasses }}\">\n <section class=\"moj-ticket-panel__content {{ sectionClasses }}\" [attr.role]=\"alert ? 'alert' : ''\">\n <ng-content></ng-content>\n </section>\n</article>\n", changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
764
|
+
}
|
|
765
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: MojTicketPanelComponent, decorators: [{
|
|
766
|
+
type: Component,
|
|
767
|
+
args: [{ selector: 'opal-lib-moj-ticket-panel', imports: [], changeDetection: ChangeDetectionStrategy.OnPush, template: "<article class=\"moj-ticket-panel {{ componentClasses }}\">\n <section class=\"moj-ticket-panel__content {{ sectionClasses }}\" [attr.role]=\"alert ? 'alert' : ''\">\n <ng-content></ng-content>\n </section>\n</article>\n" }]
|
|
768
|
+
}], propDecorators: { componentClasses: [{
|
|
769
|
+
type: Input,
|
|
770
|
+
args: [{ required: false }]
|
|
771
|
+
}], sectionClasses: [{
|
|
772
|
+
type: Input,
|
|
773
|
+
args: [{ required: false }]
|
|
774
|
+
}], alert: [{
|
|
775
|
+
type: Input,
|
|
776
|
+
args: [{ required: false }]
|
|
777
|
+
}] } });
|
|
778
|
+
|
|
779
|
+
class MojTimelineItemComponent {
|
|
780
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: MojTimelineItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
781
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.5", type: MojTimelineItemComponent, isStandalone: true, selector: "opal-lib-moj-timeline-item", ngImport: i0, template: "<div class=\"moj-timeline__item\">\n <div class=\"moj-timeline__header\">\n <h2 class=\"moj-timeline__title\"><ng-content select=\"[title]\"></ng-content></h2>\n\n <p class=\"moj-timeline__byline\"> by <ng-content select=\"[user]\"></ng-content></p>\n </div>\n <p class=\"moj-timeline__date\">\n <time datetime=\"\"><ng-content select=\"[date]\"></ng-content></time>\n </p>\n <div class=\"moj-timeline__description\">\n <ng-content select=\"[description]\"></ng-content>\n </div>\n</div>\n", changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
782
|
+
}
|
|
783
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: MojTimelineItemComponent, decorators: [{
|
|
784
|
+
type: Component,
|
|
785
|
+
args: [{ selector: 'opal-lib-moj-timeline-item', imports: [], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"moj-timeline__item\">\n <div class=\"moj-timeline__header\">\n <h2 class=\"moj-timeline__title\"><ng-content select=\"[title]\"></ng-content></h2>\n\n <p class=\"moj-timeline__byline\"> by <ng-content select=\"[user]\"></ng-content></p>\n </div>\n <p class=\"moj-timeline__date\">\n <time datetime=\"\"><ng-content select=\"[date]\"></ng-content></time>\n </p>\n <div class=\"moj-timeline__description\">\n <ng-content select=\"[description]\"></ng-content>\n </div>\n</div>\n" }]
|
|
786
|
+
}] });
|
|
787
|
+
|
|
788
|
+
class MojTimelineComponent {
|
|
789
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: MojTimelineComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
790
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.5", type: MojTimelineComponent, isStandalone: true, selector: "opal-lib-moj-timeline", ngImport: i0, template: "<div class=\"moj-timeline\"><ng-content></ng-content></div>\n", changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
791
|
+
}
|
|
792
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: MojTimelineComponent, decorators: [{
|
|
793
|
+
type: Component,
|
|
794
|
+
args: [{ selector: 'opal-lib-moj-timeline', imports: [], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"moj-timeline\"><ng-content></ng-content></div>\n" }]
|
|
795
|
+
}] });
|
|
796
|
+
|
|
797
|
+
// COMPONENTS
|
|
798
|
+
|
|
799
|
+
/**
|
|
800
|
+
* Generated bundle index. Do not edit.
|
|
801
|
+
*/
|
|
802
|
+
|
|
803
|
+
export { MOJ_HEADER_LINKS, MojBadgeComponent, MojBannerComponent, MojButtonMenuComponent, MojButtonMenuItemComponent, MojDatePickerComponent, MojHeaderComponent, MojHeaderNavigationItemComponent, MojPageHeaderComponent, MojPaginationComponent, MojPaginationItemComponent, MojPaginationLinkComponent, MojPaginationListComponent, MojPrimaryNavigationComponent, MojPrimaryNavigationItemComponent, MojSortableTableComponent, MojSortableTableHeaderComponent, MojSortableTableRowComponent, MojSubNavigationComponent, MojSubNavigationItemComponent, MojTicketPanelComponent, MojTimelineComponent, MojTimelineItemComponent };
|
|
804
|
+
//# sourceMappingURL=hmcts-opal-frontend-common-components-moj.mjs.map
|