@hmcts/rpx-xui-common-lib 2.1.6-angular-upgrade-11-welsh → 2.1.6-javascript-void
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/esm2022/hmcts-rpx-xui-common-lib.mjs +5 -0
- package/esm2022/lib/components/accessibility/accessibility.component.mjs +833 -0
- package/esm2022/lib/components/checkbox-list/checkbox-list.component.mjs +232 -0
- package/esm2022/lib/components/contact-details/contact-details.component.mjs +123 -0
- package/esm2022/lib/components/cookie-banner/cookie-banner.component.mjs +151 -0
- package/esm2022/lib/components/due-date/due-date.component.mjs +141 -0
- package/esm2022/lib/components/exui-main-wrapper/exui-page-wrapper.component.mjs +80 -0
- package/esm2022/lib/components/find-location/find-location.component.mjs +220 -0
- package/esm2022/lib/components/find-person/find-person.component.mjs +234 -0
- package/esm2022/lib/components/find-service/find-service.component.mjs +193 -0
- package/esm2022/lib/components/find-task-name/find-task-name.component.mjs +200 -0
- package/esm2022/lib/components/generic-filter/generic-filter-utils.mjs +21 -0
- package/esm2022/lib/components/generic-filter/generic-filter.component.mjs +1224 -0
- package/esm2022/lib/components/hmcts-session-dialog/hmcts-session-dialog.component.mjs +56 -0
- package/esm2022/lib/components/invite-user-form/invite-user-form.component.mjs +51 -0
- package/esm2022/lib/components/invite-user-permissions/invite-user-permission.component.mjs +54 -0
- package/esm2022/lib/components/loading-spinner/loading-spinner.component.mjs +33 -0
- package/esm2022/lib/components/pagination/pagination.component.mjs +92 -0
- package/esm2022/lib/components/public_api.mjs +39 -0
- package/esm2022/lib/components/search-judicials/search-judicials.component.mjs +185 -0
- package/esm2022/lib/components/search-location/search-location.component.mjs +240 -0
- package/esm2022/lib/components/search-service/search-service.component.mjs +94 -0
- package/esm2022/lib/components/search-venue/search-venue.component.mjs +188 -0
- package/esm2022/lib/components/selected-case/selected-case.component.mjs +381 -0
- package/esm2022/lib/components/selected-case-confirm/selected-case-confirm.component.mjs +135 -0
- package/esm2022/lib/components/selected-case-list/selected-case-list.component.mjs +98 -0
- package/esm2022/lib/components/service-message/service-message.component.mjs +62 -0
- package/esm2022/lib/components/service-messages/service-messages.component.mjs +163 -0
- package/esm2022/lib/components/share-case/share-case.component.mjs +427 -0
- package/esm2022/lib/components/share-case-confirm/share-case-confirm.component.mjs +85 -0
- package/esm2022/lib/components/tab/tab.component.mjs +40 -0
- package/esm2022/lib/components/tc-confirm/tc-confirm.component.mjs +66 -0
- package/esm2022/lib/components/terms-and-conditions/tc-display/tc-display-html/tc-display-html.component.mjs +17 -0
- package/esm2022/lib/components/terms-and-conditions/tc-display/tc-display-plain/tc-display-plain.component.mjs +17 -0
- package/esm2022/lib/components/terms-and-conditions/terms-and-conditions.component.mjs +58 -0
- package/esm2022/lib/components/user-details/user-details.component.mjs +276 -0
- package/esm2022/lib/components/user-list/user-list.component.mjs +100 -0
- package/esm2022/lib/components/user-select/user-select.component.mjs +94 -0
- package/esm2022/lib/components/write-address/write-address.component.mjs +342 -0
- package/esm2022/lib/components/write-address-inputs/write-address-inputs.component.mjs +165 -0
- package/esm2022/lib/directives/feature-toggle/feature-toggle.directive.mjs +41 -0
- package/esm2022/lib/directives/let/let.directive.mjs +29 -0
- package/esm2022/lib/exui-common-lib.module.mjs +313 -0
- package/esm2022/lib/gov-ui/components/gov-uk-checkbox/gov-uk-checkbox.component.mjs +55 -0
- package/esm2022/lib/gov-ui/components/gov-uk-checkboxes/gov-uk-checkboxes.component.mjs +137 -0
- package/esm2022/lib/gov-ui/components/gov-uk-date/gov-uk-date.component.mjs +127 -0
- package/esm2022/lib/gov-ui/components/gov-uk-error-message/gov-uk-error-message.component.mjs +46 -0
- package/esm2022/lib/gov-ui/components/gov-uk-fieldset/gov-uk-fieldset.component.mjs +79 -0
- package/esm2022/lib/gov-ui/components/gov-uk-file-upload/gov-uk-file-upload.component.mjs +79 -0
- package/esm2022/lib/gov-ui/components/gov-uk-form-group-wrapper/gov-uk-form-group-wrapper.component.mjs +45 -0
- package/esm2022/lib/gov-ui/components/gov-uk-input/gov-uk-input.component.mjs +71 -0
- package/esm2022/lib/gov-ui/components/gov-uk-label/gov-uk-label.component.mjs +84 -0
- package/esm2022/lib/gov-ui/components/gov-uk-radio/gov-uk-radio.component.mjs +48 -0
- package/esm2022/lib/gov-ui/components/gov-uk-radios/gov-uk-radios.component.mjs +42 -0
- package/esm2022/lib/gov-ui/components/gov-uk-select/gov-uk-select.component.mjs +80 -0
- package/esm2022/lib/gov-ui/components/gov-uk-table/gov-uk-table.component.mjs +185 -0
- package/esm2022/lib/gov-ui/components/gov-uk-textarea/gov-uk-textarea.component.mjs +57 -0
- package/esm2022/lib/gov-ui/components/hmcts-banner/hmcts-banner-info.interface.mjs +2 -0
- package/esm2022/lib/gov-ui/components/hmcts-banner/hmcts-banner.component.mjs +111 -0
- package/esm2022/lib/gov-ui/components/hmcts-error-summary/hmcts-error-summary.component.mjs +140 -0
- package/esm2022/lib/gov-ui/components/hmcts-identity-bar/hmcts-identity-bar.component.mjs +34 -0
- package/esm2022/lib/gov-ui/components/hmcts-main-wrapper/hmcts-main-wrapper.component.mjs +129 -0
- package/esm2022/lib/gov-ui/components/hmcts-pagination/hmcts-pagination.component.mjs +204 -0
- package/esm2022/lib/gov-ui/components/hmcts-primary-navigation/hmcts-primary-navigation.component.mjs +60 -0
- package/esm2022/lib/gov-ui/components/hmcts-sub-navigation/hmcts-sub-navigation.component.mjs +58 -0
- package/esm2022/lib/gov-ui/directives/remove-host.directive.mjs +30 -0
- package/esm2022/lib/gov-ui/gov-ui.service.mjs +14 -0
- package/esm2022/lib/gov-ui/models/checkboxes-model.mjs +2 -0
- package/{esm2015/lib/gov-ui/models/gov-ui-config-model.js → esm2022/lib/gov-ui/models/gov-ui-config-model.mjs} +1 -1
- package/{esm2015/lib/gov-ui/models/public_api.js → esm2022/lib/gov-ui/models/public_api.mjs} +1 -2
- package/esm2022/lib/gov-ui/models/radio-buttons.model.mjs +2 -0
- package/esm2022/lib/gov-ui/util/helpers/html-templates.helper.mjs +22 -0
- package/{esm2015/lib/gov-ui/validators/checkboxes-be-checked.validator.js → esm2022/lib/gov-ui/validators/checkboxes-be-checked.validator.mjs} +1 -1
- package/{esm2015/lib/gov-ui/validators/date.validator.js → esm2022/lib/gov-ui/validators/date.validator.mjs} +1 -1
- package/esm2022/lib/gov-ui/validators/radio-group.validator.mjs +15 -0
- package/esm2022/lib/models/address-message.enum.mjs +11 -0
- package/esm2022/lib/models/address-option.model.mjs +21 -0
- package/esm2022/lib/models/address.model.mjs +4 -0
- package/{esm2015/lib/models/contact-details.model.js → esm2022/lib/models/contact-details.model.mjs} +1 -1
- package/esm2022/lib/models/feature-user.mjs +5 -0
- package/esm2022/lib/models/filter.model.mjs +3 -0
- package/esm2022/lib/models/index.mjs +19 -0
- package/esm2022/lib/models/location.model.mjs +7 -0
- package/esm2022/lib/models/person.model.mjs +21 -0
- package/{esm2015/lib/models/public_api.js → esm2022/lib/models/public_api.mjs} +2 -1
- package/{esm2015/lib/models/search-options.model.js → esm2022/lib/models/search-options.model.mjs} +1 -1
- package/esm2022/lib/models/service-message.model.mjs +2 -0
- package/esm2022/lib/models/task-name.model.mjs +2 -0
- package/esm2022/lib/models/user-access-type.model.mjs +2 -0
- package/esm2022/lib/models/user-details.model.mjs +2 -0
- package/esm2022/lib/pipes/capitalize/capitalize.pipe.mjs +15 -0
- package/esm2022/lib/pipes/index.mjs +2 -0
- package/esm2022/lib/services/address/address-parser.mjs +76 -0
- package/esm2022/lib/services/address/address-type.enum.mjs +7 -0
- package/esm2022/lib/services/address/address.service.mjs +55 -0
- package/esm2022/lib/services/case-sharing-state/case-sharing-state.service.mjs +170 -0
- package/esm2022/lib/services/cookie/cookie.service.mjs +48 -0
- package/esm2022/lib/services/feature-toggle/feature-toggle.guard.mjs +37 -0
- package/esm2022/lib/services/feature-toggle/feature-toggle.service.mjs +33 -0
- package/esm2022/lib/services/feature-toggle/launch-darkly.service.mjs +65 -0
- package/esm2022/lib/services/filter/filter.service.mjs +95 -0
- package/esm2022/lib/services/find-person/find-person.service.mjs +92 -0
- package/esm2022/lib/services/google-analytics/google-analytics.service.mjs +73 -0
- package/esm2022/lib/services/google-tag-manager/google-tag-manager.service.mjs +85 -0
- package/{esm2015/lib/services/loading/loading.service.js → esm2022/lib/services/loading/loading.service.mjs} +8 -6
- package/esm2022/lib/services/locations/location.service.mjs +38 -0
- package/{esm2015/lib/services/manage-session/manage-session.services.js → esm2022/lib/services/manage-session/manage-session.services.mjs} +8 -10
- package/esm2022/lib/services/public-api.mjs +18 -0
- package/esm2022/lib/services/ref-data/index.mjs +4 -0
- package/esm2022/lib/services/ref-data/models/ref-data-htmcs-service.model.mjs +2 -0
- package/esm2022/lib/services/ref-data/models/ref-data-region.model.mjs +2 -0
- package/esm2022/lib/services/ref-data/ref-data-data-access/models/ref-data-locations-by-service-code-response.model.mjs +2 -0
- package/esm2022/lib/services/ref-data/ref-data-data-access/ref-data-data-access.service.mjs +33 -0
- package/esm2022/lib/services/ref-data/ref-data.service.mjs +34 -0
- package/esm2022/lib/services/role-guard/role.guard.mjs +43 -0
- package/esm2022/lib/services/role-guard/role.service.mjs +22 -0
- package/esm2022/lib/services/storage/session-storage/session-storage.service.mjs +43 -0
- package/esm2022/lib/services/task-name/task-name.service.mjs +35 -0
- package/esm2022/lib/services/timeout-notifications/timeout-notifications.service.mjs +103 -0
- package/{esm2015/public-api.js → esm2022/public-api.mjs} +2 -1
- package/fesm2022/hmcts-rpx-xui-common-lib.mjs +10377 -0
- package/fesm2022/hmcts-rpx-xui-common-lib.mjs.map +1 -0
- package/index.d.ts +5 -0
- package/lib/components/accessibility/accessibility.component.d.ts +7 -1
- package/lib/components/checkbox-list/checkbox-list.component.d.ts +8 -2
- package/lib/components/contact-details/contact-details.component.d.ts +3 -0
- package/lib/components/cookie-banner/cookie-banner.component.d.ts +5 -1
- package/lib/components/due-date/due-date.component.d.ts +8 -2
- package/lib/components/exui-main-wrapper/exui-page-wrapper.component.d.ts +3 -0
- package/lib/components/find-location/find-location.component.d.ts +12 -6
- package/lib/components/find-person/find-person.component.d.ts +5 -2
- package/lib/components/find-service/find-service.component.d.ts +24 -9
- package/lib/components/find-task-name/find-task-name.component.d.ts +44 -0
- package/lib/components/generic-filter/generic-filter-utils.d.ts +2 -5
- package/lib/components/generic-filter/generic-filter.component.d.ts +25 -6
- package/lib/components/hmcts-session-dialog/hmcts-session-dialog.component.d.ts +3 -0
- package/lib/components/invite-user-form/invite-user-form.component.d.ts +3 -0
- package/lib/components/invite-user-permissions/invite-user-permission.component.d.ts +3 -0
- package/lib/components/loading-spinner/loading-spinner.component.d.ts +8 -1
- package/lib/components/pagination/pagination.component.d.ts +3 -0
- package/lib/components/public_api.d.ts +6 -0
- package/lib/components/search-judicials/search-judicials.component.d.ts +3 -0
- package/lib/components/search-location/search-location.component.d.ts +25 -20
- package/lib/components/search-service/search-service.component.d.ts +16 -9
- package/lib/components/search-venue/search-venue.component.d.ts +3 -1
- package/lib/components/selected-case/selected-case.component.d.ts +3 -0
- package/lib/components/selected-case-confirm/selected-case-confirm.component.d.ts +3 -0
- package/lib/components/selected-case-list/selected-case-list.component.d.ts +3 -0
- package/lib/components/service-message/service-message.component.d.ts +9 -4
- package/lib/components/service-messages/service-messages.component.d.ts +15 -5
- package/lib/components/share-case/share-case.component.d.ts +4 -0
- package/lib/components/share-case-confirm/share-case-confirm.component.d.ts +3 -0
- package/lib/components/tab/tab.component.d.ts +3 -0
- package/lib/components/tc-confirm/tc-confirm.component.d.ts +3 -0
- package/lib/components/terms-and-conditions/tc-display/tc-display-html/tc-display-html.component.d.ts +3 -0
- package/lib/components/terms-and-conditions/tc-display/tc-display-plain/tc-display-plain.component.d.ts +3 -0
- package/lib/components/terms-and-conditions/terms-and-conditions.component.d.ts +3 -0
- package/lib/components/user-details/user-details.component.d.ts +4 -0
- package/lib/components/user-list/user-list.component.d.ts +3 -0
- package/lib/components/user-select/user-select.component.d.ts +5 -3
- package/lib/components/write-address/write-address.component.d.ts +45 -0
- package/lib/components/write-address-inputs/write-address-inputs.component.d.ts +16 -0
- package/lib/directives/feature-toggle/feature-toggle.directive.d.ts +3 -0
- package/lib/directives/let/let.directive.d.ts +3 -0
- package/lib/exui-common-lib.module.d.ts +83 -4
- package/lib/gov-ui/components/gov-uk-checkbox/gov-uk-checkbox.component.d.ts +3 -0
- package/lib/gov-ui/components/gov-uk-checkboxes/gov-uk-checkboxes.component.d.ts +17 -5
- package/lib/gov-ui/components/gov-uk-date/gov-uk-date.component.d.ts +3 -0
- package/lib/gov-ui/components/gov-uk-error-message/gov-uk-error-message.component.d.ts +3 -0
- package/lib/gov-ui/components/gov-uk-fieldset/gov-uk-fieldset.component.d.ts +3 -0
- package/lib/gov-ui/components/gov-uk-file-upload/gov-uk-file-upload.component.d.ts +3 -0
- package/lib/gov-ui/components/gov-uk-form-group-wrapper/gov-uk-form-group-wrapper.component.d.ts +3 -0
- package/lib/gov-ui/components/gov-uk-input/gov-uk-input.component.d.ts +4 -2
- package/lib/gov-ui/components/gov-uk-label/gov-uk-label.component.d.ts +4 -0
- package/lib/gov-ui/components/gov-uk-radio/gov-uk-radio.component.d.ts +3 -0
- package/lib/gov-ui/components/gov-uk-radios/gov-uk-radios.component.d.ts +5 -2
- package/lib/gov-ui/components/gov-uk-select/gov-uk-select.component.d.ts +3 -0
- package/lib/gov-ui/components/gov-uk-table/gov-uk-table.component.d.ts +3 -0
- package/lib/gov-ui/components/gov-uk-textarea/gov-uk-textarea.component.d.ts +3 -0
- package/lib/gov-ui/components/hmcts-banner/hmcts-banner-info.interface.d.ts +7 -0
- package/lib/gov-ui/components/hmcts-banner/hmcts-banner.component.d.ts +7 -2
- package/lib/gov-ui/components/hmcts-error-summary/hmcts-error-summary.component.d.ts +3 -0
- package/lib/gov-ui/components/hmcts-identity-bar/hmcts-identity-bar.component.d.ts +3 -0
- package/lib/gov-ui/components/hmcts-main-wrapper/hmcts-main-wrapper.component.d.ts +6 -3
- package/lib/gov-ui/components/hmcts-pagination/hmcts-pagination.component.d.ts +3 -0
- package/lib/gov-ui/components/hmcts-primary-navigation/hmcts-primary-navigation.component.d.ts +3 -0
- package/lib/gov-ui/components/hmcts-sub-navigation/hmcts-sub-navigation.component.d.ts +3 -0
- package/lib/gov-ui/directives/remove-host.directive.d.ts +3 -0
- package/lib/gov-ui/gov-ui.service.d.ts +3 -0
- package/lib/gov-ui/models/checkboxes-model.d.ts +4 -7
- package/lib/gov-ui/models/gov-ui-config-model.d.ts +2 -0
- package/lib/gov-ui/models/public_api.d.ts +0 -1
- package/lib/gov-ui/models/radio-buttons.model.d.ts +9 -0
- package/lib/models/address-message.enum.d.ts +9 -0
- package/lib/models/address-option.model.d.ts +9 -0
- package/lib/models/address.model.d.ts +9 -0
- package/lib/models/contact-details.model.d.ts +4 -0
- package/lib/models/feature-user.d.ts +4 -6
- package/lib/models/filter.model.d.ts +42 -9
- package/lib/models/index.d.ts +4 -0
- package/lib/models/location.model.d.ts +12 -12
- package/lib/models/person.model.d.ts +5 -3
- package/lib/models/public_api.d.ts +1 -0
- package/lib/models/search-options.model.d.ts +1 -1
- package/lib/models/service-message.model.d.ts +8 -0
- package/lib/models/task-name.model.d.ts +4 -0
- package/lib/models/user-access-type.model.d.ts +6 -0
- package/lib/models/user-details.model.d.ts +2 -0
- package/lib/pipes/capitalize/capitalize.pipe.d.ts +7 -0
- package/lib/pipes/index.d.ts +1 -0
- package/lib/services/address/address-parser.d.ts +17 -0
- package/lib/services/address/address-type.enum.d.ts +5 -0
- package/lib/services/address/address.service.d.ts +15 -0
- package/lib/services/case-sharing-state/case-sharing-state.service.d.ts +3 -0
- package/lib/services/cookie/cookie.service.d.ts +3 -0
- package/lib/services/feature-toggle/feature-toggle.guard.d.ts +8 -2
- package/lib/services/feature-toggle/feature-toggle.service.d.ts +4 -0
- package/lib/services/feature-toggle/launch-darkly.service.d.ts +14 -10
- package/lib/services/filter/filter.service.d.ts +6 -0
- package/lib/services/find-person/find-person.service.d.ts +5 -2
- package/lib/services/google-analytics/google-analytics.service.d.ts +4 -1
- package/lib/services/google-tag-manager/google-tag-manager.service.d.ts +5 -1
- package/lib/services/loading/loading.service.d.ts +3 -0
- package/lib/services/locations/location.service.d.ts +4 -1
- package/lib/services/manage-session/manage-session.services.d.ts +3 -0
- package/lib/services/public-api.d.ts +2 -0
- package/lib/services/ref-data/index.d.ts +3 -0
- package/lib/services/ref-data/models/ref-data-htmcs-service.model.d.ts +13 -0
- package/lib/services/ref-data/models/ref-data-region.model.d.ts +4 -0
- package/lib/services/ref-data/ref-data-data-access/models/ref-data-locations-by-service-code-response.model.d.ts +8 -0
- package/lib/services/ref-data/ref-data-data-access/ref-data-data-access.service.d.ts +18 -0
- package/lib/services/ref-data/ref-data.service.d.ts +17 -0
- package/lib/services/role-guard/role.guard.d.ts +7 -3
- package/lib/services/role-guard/role.service.d.ts +8 -4
- package/lib/services/{session-storage → storage/session-storage}/session-storage.service.d.ts +3 -0
- package/lib/services/task-name/task-name.service.d.ts +17 -0
- package/lib/services/timeout-notifications/timeout-notifications.service.d.ts +8 -2
- package/package.json +21 -11
- package/public-api.d.ts +1 -0
- package/bundles/hmcts-rpx-xui-common-lib.umd.js +0 -5139
- package/bundles/hmcts-rpx-xui-common-lib.umd.js.map +0 -1
- package/bundles/hmcts-rpx-xui-common-lib.umd.min.js +0 -2
- package/bundles/hmcts-rpx-xui-common-lib.umd.min.js.map +0 -1
- package/esm2015/hmcts-rpx-xui-common-lib.js +0 -70
- package/esm2015/lib/components/accessibility/accessibility.component.js +0 -14
- package/esm2015/lib/components/checkbox-list/checkbox-list.component.js +0 -177
- package/esm2015/lib/components/contact-details/contact-details.component.js +0 -17
- package/esm2015/lib/components/cookie-banner/cookie-banner.component.js +0 -68
- package/esm2015/lib/components/due-date/due-date.component.js +0 -115
- package/esm2015/lib/components/exui-main-wrapper/exui-page-wrapper.component.js +0 -28
- package/esm2015/lib/components/find-location/find-location.component.js +0 -124
- package/esm2015/lib/components/find-person/find-person.component.js +0 -118
- package/esm2015/lib/components/find-service/find-service.component.js +0 -31
- package/esm2015/lib/components/generic-filter/generic-filter-utils.js +0 -21
- package/esm2015/lib/components/generic-filter/generic-filter.component.js +0 -387
- package/esm2015/lib/components/hmcts-session-dialog/hmcts-session-dialog.component.js +0 -27
- package/esm2015/lib/components/invite-user-form/invite-user-form.component.js +0 -25
- package/esm2015/lib/components/invite-user-permissions/invite-user-permission.component.js +0 -25
- package/esm2015/lib/components/loading-spinner/loading-spinner.component.js +0 -18
- package/esm2015/lib/components/pagination/pagination.component.js +0 -28
- package/esm2015/lib/components/public_api.js +0 -33
- package/esm2015/lib/components/search-judicials/search-judicials.component.js +0 -126
- package/esm2015/lib/components/search-location/search-location.component.js +0 -133
- package/esm2015/lib/components/search-service/search-service.component.js +0 -31
- package/esm2015/lib/components/search-venue/search-venue.component.js +0 -123
- package/esm2015/lib/components/selected-case/selected-case.component.js +0 -158
- package/esm2015/lib/components/selected-case-confirm/selected-case-confirm.component.js +0 -36
- package/esm2015/lib/components/selected-case-list/selected-case-list.component.js +0 -49
- package/esm2015/lib/components/service-message/service-message.component.js +0 -22
- package/esm2015/lib/components/service-messages/service-messages.component.js +0 -48
- package/esm2015/lib/components/share-case/share-case.component.js +0 -205
- package/esm2015/lib/components/share-case-confirm/share-case-confirm.component.js +0 -34
- package/esm2015/lib/components/tab/tab.component.js +0 -21
- package/esm2015/lib/components/tc-confirm/tc-confirm.component.js +0 -22
- package/esm2015/lib/components/terms-and-conditions/tc-display/tc-display-html/tc-display-html.component.js +0 -13
- package/esm2015/lib/components/terms-and-conditions/tc-display/tc-display-plain/tc-display-plain.component.js +0 -13
- package/esm2015/lib/components/terms-and-conditions/terms-and-conditions.component.js +0 -16
- package/esm2015/lib/components/user-details/user-details.component.js +0 -41
- package/esm2015/lib/components/user-list/user-list.component.js +0 -33
- package/esm2015/lib/components/user-select/user-select.component.js +0 -58
- package/esm2015/lib/directives/feature-toggle/feature-toggle.directive.js +0 -42
- package/esm2015/lib/directives/let/let.directive.js +0 -30
- package/esm2015/lib/exui-common-lib.module.js +0 -160
- package/esm2015/lib/gov-ui/components/gov-uk-checkbox/gov-uk-checkbox.component.js +0 -31
- package/esm2015/lib/gov-ui/components/gov-uk-checkboxes/gov-uk-checkboxes.component.js +0 -21
- package/esm2015/lib/gov-ui/components/gov-uk-date/gov-uk-date.component.js +0 -64
- package/esm2015/lib/gov-ui/components/gov-uk-error-message/gov-uk-error-message.component.js +0 -22
- package/esm2015/lib/gov-ui/components/gov-uk-fieldset/gov-uk-fieldset.component.js +0 -28
- package/esm2015/lib/gov-ui/components/gov-uk-file-upload/gov-uk-file-upload.component.js +0 -35
- package/esm2015/lib/gov-ui/components/gov-uk-form-group-wrapper/gov-uk-form-group-wrapper.component.js +0 -23
- package/esm2015/lib/gov-ui/components/gov-uk-input/gov-uk-input.component.js +0 -34
- package/esm2015/lib/gov-ui/components/gov-uk-label/gov-uk-label.component.js +0 -21
- package/esm2015/lib/gov-ui/components/gov-uk-radio/gov-uk-radio.component.js +0 -33
- package/esm2015/lib/gov-ui/components/gov-uk-radios/gov-uk-radios.component.js +0 -21
- package/esm2015/lib/gov-ui/components/gov-uk-select/gov-uk-select.component.js +0 -27
- package/esm2015/lib/gov-ui/components/gov-uk-table/gov-uk-table.component.js +0 -39
- package/esm2015/lib/gov-ui/components/gov-uk-textarea/gov-uk-textarea.component.js +0 -27
- package/esm2015/lib/gov-ui/components/hmcts-banner/hmcts-banner.component.js +0 -23
- package/esm2015/lib/gov-ui/components/hmcts-error-summary/hmcts-error-summary.component.js +0 -48
- package/esm2015/lib/gov-ui/components/hmcts-identity-bar/hmcts-identity-bar.component.js +0 -19
- package/esm2015/lib/gov-ui/components/hmcts-main-wrapper/hmcts-main-wrapper.component.js +0 -41
- package/esm2015/lib/gov-ui/components/hmcts-pagination/hmcts-pagination.component.js +0 -28
- package/esm2015/lib/gov-ui/components/hmcts-primary-navigation/hmcts-primary-navigation.component.js +0 -23
- package/esm2015/lib/gov-ui/components/hmcts-sub-navigation/hmcts-sub-navigation.component.js +0 -15
- package/esm2015/lib/gov-ui/directives/remove-host.directive.js +0 -29
- package/esm2015/lib/gov-ui/gov-ui.service.js +0 -13
- package/esm2015/lib/gov-ui/models/banner-data-model.js +0 -2
- package/esm2015/lib/gov-ui/models/checkboxes-model.js +0 -2
- package/esm2015/lib/gov-ui/models/isession-storage.interface.js +0 -2
- package/esm2015/lib/gov-ui/util/helpers/html-templates.helper.js +0 -22
- package/esm2015/lib/gov-ui/util/session-storage/session-storage-utils.js +0 -22
- package/esm2015/lib/gov-ui/validators/radio-group.validator.js +0 -15
- package/esm2015/lib/models/feature-user.js +0 -5
- package/esm2015/lib/models/filter.model.js +0 -3
- package/esm2015/lib/models/index.js +0 -15
- package/esm2015/lib/models/location.model.js +0 -7
- package/esm2015/lib/models/person.model.js +0 -19
- package/esm2015/lib/models/user-details.model.js +0 -2
- package/esm2015/lib/services/case-sharing-state/case-sharing-state.service.js +0 -157
- package/esm2015/lib/services/cookie/cookie.service.js +0 -47
- package/esm2015/lib/services/feature-toggle/feature-toggle.guard.js +0 -35
- package/esm2015/lib/services/feature-toggle/feature-toggle.service.js +0 -27
- package/esm2015/lib/services/feature-toggle/launch-darkly.service.js +0 -59
- package/esm2015/lib/services/filter/filter.service.js +0 -64
- package/esm2015/lib/services/find-person/find-person.service.js +0 -106
- package/esm2015/lib/services/google-analytics/google-analytics.service.js +0 -68
- package/esm2015/lib/services/google-tag-manager/google-tag-manager.service.js +0 -71
- package/esm2015/lib/services/locations/location.service.js +0 -39
- package/esm2015/lib/services/public-api.js +0 -16
- package/esm2015/lib/services/role-guard/role.guard.js +0 -37
- package/esm2015/lib/services/role-guard/role.service.js +0 -20
- package/esm2015/lib/services/session-storage/session-storage.service.js +0 -41
- package/esm2015/lib/services/timeout-notifications/timeout-notifications.service.js +0 -92
- package/fesm2015/hmcts-rpx-xui-common-lib.js +0 -4172
- package/fesm2015/hmcts-rpx-xui-common-lib.js.map +0 -1
- package/hmcts-rpx-xui-common-lib.d.ts +0 -69
- package/hmcts-rpx-xui-common-lib.metadata.json +0 -1
- package/lib/gov-ui/models/banner-data-model.d.ts +0 -4
- package/lib/gov-ui/models/isession-storage.interface.d.ts +0 -4
- package/lib/gov-ui/util/session-storage/session-storage-utils.d.ts +0 -6
- /package/{esm2015/lib/components/index.js → esm2022/lib/components/index.mjs} +0 -0
- /package/{esm2015/lib/directives/index.js → esm2022/lib/directives/index.mjs} +0 -0
- /package/{esm2015/lib/directives/public-api.js → esm2022/lib/directives/public-api.mjs} +0 -0
- /package/{esm2015/lib/gov-ui/components/index.js → esm2022/lib/gov-ui/components/index.mjs} +0 -0
- /package/{esm2015/lib/gov-ui/components/public_api.js → esm2022/lib/gov-ui/components/public_api.mjs} +0 -0
- /package/{esm2015/lib/gov-ui/index.js → esm2022/lib/gov-ui/index.mjs} +0 -0
- /package/{esm2015/lib/gov-ui/models/error-messages-model.js → esm2022/lib/gov-ui/models/error-messages-model.mjs} +0 -0
- /package/{esm2015/lib/gov-ui/models/index.js → esm2022/lib/gov-ui/models/index.mjs} +0 -0
- /package/{esm2015/lib/gov-ui/public_api.js → esm2022/lib/gov-ui/public_api.mjs} +0 -0
- /package/{esm2015/lib/gov-ui/validators/index.js → esm2022/lib/gov-ui/validators/index.mjs} +0 -0
- /package/{esm2015/lib/gov-ui/validators/public_api.js → esm2022/lib/gov-ui/validators/public_api.mjs} +0 -0
- /package/{esm2015/lib/models/case-share.model.js → esm2022/lib/models/case-share.model.mjs} +0 -0
- /package/{esm2015/lib/models/due-date.model.js → esm2022/lib/models/due-date.model.mjs} +0 -0
- /package/{esm2015/lib/models/idle-config.model.js → esm2022/lib/models/idle-config.model.mjs} +0 -0
- /package/{esm2015/lib/models/pagination.model.js → esm2022/lib/models/pagination.model.mjs} +0 -0
- /package/{esm2015/lib/models/tcDocument.model.js → esm2022/lib/models/tcDocument.model.mjs} +0 -0
- /package/{esm2015/lib/models/timeout-notification.model.js → esm2022/lib/models/timeout-notification.model.mjs} +0 -0
- /package/{esm2015/lib/models/user.model.js → esm2022/lib/models/user.model.mjs} +0 -0
- /package/{esm2015/lib/services/index.js → esm2022/lib/services/index.mjs} +0 -0
- /package/{esm2015/lib/window.js → esm2022/lib/window.mjs} +0 -0
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import { Component, Input } from '@angular/core';
|
|
2
|
+
import { FormGroup } from '@angular/forms';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "@angular/forms";
|
|
5
|
+
import * as i2 from "../gov-uk-label/gov-uk-label.component";
|
|
6
|
+
import * as i3 from "../../directives/remove-host.directive";
|
|
7
|
+
import * as i4 from "rpx-xui-translation";
|
|
8
|
+
/*
|
|
9
|
+
* Gov Uk Checkbox Dumb Component responsible for
|
|
10
|
+
* displaying checkbox input and hint
|
|
11
|
+
*
|
|
12
|
+
* */
|
|
13
|
+
export class GovUkCheckboxComponent {
|
|
14
|
+
constructor() {
|
|
15
|
+
this.isChecked = false;
|
|
16
|
+
}
|
|
17
|
+
ngOnInit() {
|
|
18
|
+
const id = this.config.focusOn ? this.config.focusOn : this.config.value;
|
|
19
|
+
this.config.id = id;
|
|
20
|
+
this.config.classes = this.config.classes ?
|
|
21
|
+
this.config.classes.concat(' govuk-checkboxes__label') : 'govuk-checkboxes__label';
|
|
22
|
+
}
|
|
23
|
+
static { this.ɵfac = function GovUkCheckboxComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || GovUkCheckboxComponent)(); }; }
|
|
24
|
+
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: GovUkCheckboxComponent, selectors: [["xuilib-gov-checkbox"]], inputs: { group: "group", config: "config", isChecked: "isChecked" }, decls: 6, vars: 11, consts: [[1, "govuk-checkboxes__item", 3, "formGroup"], ["type", "checkbox", 1, "govuk-checkboxes__input", 3, "id", "name", "formControlName", "checked"], ["appRemoveHost", "", 3, "config"], [1, "govuk-hint", "govuk-checkboxes__hint", 3, "id"]], template: function GovUkCheckboxComponent_Template(rf, ctx) { if (rf & 1) {
|
|
25
|
+
i0.ɵɵelementStart(0, "div", 0);
|
|
26
|
+
i0.ɵɵelement(1, "input", 1)(2, "xuilib-gov-label", 2);
|
|
27
|
+
i0.ɵɵelementStart(3, "span", 3);
|
|
28
|
+
i0.ɵɵtext(4);
|
|
29
|
+
i0.ɵɵpipe(5, "rpxTranslate");
|
|
30
|
+
i0.ɵɵelementEnd()();
|
|
31
|
+
} if (rf & 2) {
|
|
32
|
+
i0.ɵɵproperty("formGroup", ctx.group);
|
|
33
|
+
i0.ɵɵadvance();
|
|
34
|
+
i0.ɵɵproperty("id", ctx.config.id)("name", ctx.config.name)("formControlName", ctx.config.value)("checked", ctx.isChecked);
|
|
35
|
+
i0.ɵɵattribute("aria-describedby", ctx.config.hint ? ctx.config.value + "-item-hint" : null);
|
|
36
|
+
i0.ɵɵadvance();
|
|
37
|
+
i0.ɵɵproperty("config", ctx.config);
|
|
38
|
+
i0.ɵɵadvance();
|
|
39
|
+
i0.ɵɵproperty("id", ctx.config.value + "-item-hint");
|
|
40
|
+
i0.ɵɵadvance();
|
|
41
|
+
i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(5, 9, ctx.config.hint), " ");
|
|
42
|
+
} }, dependencies: [i1.CheckboxControlValueAccessor, i1.NgControlStatus, i1.NgControlStatusGroup, i1.FormGroupDirective, i1.FormControlName, i2.GovUkLabelComponent, i3.RemoveHostDirective, i4.RpxTranslatePipe], encapsulation: 2 }); }
|
|
43
|
+
}
|
|
44
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(GovUkCheckboxComponent, [{
|
|
45
|
+
type: Component,
|
|
46
|
+
args: [{ selector: 'xuilib-gov-checkbox', template: "<div class=\"govuk-checkboxes__item\" [formGroup]=\"group\">\n <input class=\"govuk-checkboxes__input\" type=\"checkbox\" [attr.aria-describedby]=\"config.hint ? config.value+'-item-hint' : null\"\n [id]=\"config.id\" [name]=\"config.name\" [formControlName]=\"config.value\" [checked]=\"isChecked\">\n <xuilib-gov-label appRemoveHost [config]=\"config\"></xuilib-gov-label>\n <span [id]=\"config.value+'-item-hint'\" class=\"govuk-hint govuk-checkboxes__hint\">\n {{config.hint | rpxTranslate}}\n </span>\n</div>\n" }]
|
|
47
|
+
}], () => [], { group: [{
|
|
48
|
+
type: Input
|
|
49
|
+
}], config: [{
|
|
50
|
+
type: Input
|
|
51
|
+
}], isChecked: [{
|
|
52
|
+
type: Input
|
|
53
|
+
}] }); })();
|
|
54
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(GovUkCheckboxComponent, { className: "GovUkCheckboxComponent", filePath: "lib/gov-ui/components/gov-uk-checkbox/gov-uk-checkbox.component.ts", lineNumber: 14 }); })();
|
|
55
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ292LXVrLWNoZWNrYm94LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2V4dWktY29tbW9uLWxpYi9zcmMvbGliL2dvdi11aS9jb21wb25lbnRzL2dvdi11ay1jaGVja2JveC9nb3YtdWstY2hlY2tib3guY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZXh1aS1jb21tb24tbGliL3NyYy9saWIvZ292LXVpL2NvbXBvbmVudHMvZ292LXVrLWNoZWNrYm94L2dvdi11ay1jaGVja2JveC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLEtBQUssRUFBUyxNQUFNLGVBQWUsQ0FBQztBQUN2RCxPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7Ozs7OztBQUV6Qzs7OztJQUlJO0FBTUosTUFBTSxPQUFPLHNCQUFzQjtJQUNqQztRQUdnQixjQUFTLEdBQVksS0FBSyxDQUFDO0lBSDNCLENBQUM7SUFRVixRQUFRO1FBQ2IsTUFBTSxFQUFFLEdBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQztRQUMxRSxJQUFJLENBQUMsTUFBTSxDQUFDLEVBQUUsR0FBRyxFQUFFLENBQUM7UUFDcEIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUN6QyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsMEJBQTBCLENBQUMsQ0FBQyxDQUFDLENBQUMseUJBQXlCLENBQUM7SUFDdkYsQ0FBQzt1SEFkVSxzQkFBc0I7b0VBQXRCLHNCQUFzQjtZQ2JuQyw4QkFBd0Q7WUFHdEQsQUFGQSwyQkFDNkYsMEJBQ3hCO1lBQ3JFLCtCQUFpRjtZQUMvRSxZQUNGOztZQUNGLEFBREUsaUJBQU8sRUFDSDs7WUFQOEIscUNBQW1CO1lBRXJELGNBQWdCO1lBQXVELEFBQWpDLEFBQXJCLEFBQWpCLGtDQUFnQix5QkFBcUIscUNBQWlDLDBCQUFzQjs7WUFDNUQsY0FBaUI7WUFBakIsbUNBQWlCO1lBQzNDLGNBQWdDO1lBQWhDLG9EQUFnQztZQUNwQyxjQUNGO1lBREUsc0VBQ0Y7OztpRkRPVyxzQkFBc0I7Y0FMbEMsU0FBUzsyQkFDRSxxQkFBcUI7b0JBTWYsS0FBSztrQkFBcEIsS0FBSztZQUNVLE1BQU07a0JBQXJCLEtBQUs7WUFDVSxTQUFTO2tCQUF4QixLQUFLOztrRkFKSyxzQkFBc0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgSW5wdXQsIE9uSW5pdH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0Zvcm1Hcm91cH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgR292VWlDb25maWdNb2RlbCB9IGZyb20gJy4uLy4uL21vZGVscy9nb3YtdWktY29uZmlnLW1vZGVsJztcbi8qXG4qIEdvdiBVayBDaGVja2JveCBEdW1iIENvbXBvbmVudCByZXNwb25zaWJsZSBmb3JcbiogZGlzcGxheWluZyBjaGVja2JveCBpbnB1dCBhbmQgaGludFxuKlxuKiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAneHVpbGliLWdvdi1jaGVja2JveCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9nb3YtdWstY2hlY2tib3guY29tcG9uZW50Lmh0bWwnXG59KVxuXG5leHBvcnQgY2xhc3MgR292VWtDaGVja2JveENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIGNvbnN0cnVjdG9yKCkgeyB9XG4gIEBJbnB1dCgpIHB1YmxpYyBncm91cDogRm9ybUdyb3VwO1xuICBASW5wdXQoKSBwdWJsaWMgY29uZmlnOiBHb3ZVaUNvbmZpZ01vZGVsO1xuICBASW5wdXQoKSBwdWJsaWMgaXNDaGVja2VkOiBib29sZWFuID0gZmFsc2U7XG4gIC8vIHt2YWx1ZTogc3RyaW5nLCBsYWJlbDogc3RyaW5nLCBoaW50OiBzdHJpbmc7IG5hbWU6IHN0cmluZzsgZm9jdXNPbjogc3RyaW5nOyBpZDogc3RyaW5nOyBjbGFzc2VzOiBzdHJpbmd9O1xuXG4gIHB1YmxpYyBpZDogc3RyaW5nO1xuXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICBjb25zdCBpZCA9ICB0aGlzLmNvbmZpZy5mb2N1c09uID8gdGhpcy5jb25maWcuZm9jdXNPbiA6IHRoaXMuY29uZmlnLnZhbHVlO1xuICAgIHRoaXMuY29uZmlnLmlkID0gaWQ7XG4gICAgdGhpcy5jb25maWcuY2xhc3NlcyA9IHRoaXMuY29uZmlnLmNsYXNzZXMgP1xuICAgICAgdGhpcy5jb25maWcuY2xhc3Nlcy5jb25jYXQoJyBnb3Z1ay1jaGVja2JveGVzX19sYWJlbCcpIDogJ2dvdnVrLWNoZWNrYm94ZXNfX2xhYmVsJztcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImdvdnVrLWNoZWNrYm94ZXNfX2l0ZW1cIiBbZm9ybUdyb3VwXT1cImdyb3VwXCI+XG4gIDxpbnB1dCBjbGFzcz1cImdvdnVrLWNoZWNrYm94ZXNfX2lucHV0XCIgdHlwZT1cImNoZWNrYm94XCIgW2F0dHIuYXJpYS1kZXNjcmliZWRieV09XCJjb25maWcuaGludCA/IGNvbmZpZy52YWx1ZSsnLWl0ZW0taGludCcgOiBudWxsXCJcbiAgW2lkXT1cImNvbmZpZy5pZFwiIFtuYW1lXT1cImNvbmZpZy5uYW1lXCIgW2Zvcm1Db250cm9sTmFtZV09XCJjb25maWcudmFsdWVcIiBbY2hlY2tlZF09XCJpc0NoZWNrZWRcIj5cbiAgPHh1aWxpYi1nb3YtbGFiZWwgYXBwUmVtb3ZlSG9zdCBbY29uZmlnXT1cImNvbmZpZ1wiPjwveHVpbGliLWdvdi1sYWJlbD5cbiAgPHNwYW4gW2lkXT1cImNvbmZpZy52YWx1ZSsnLWl0ZW0taGludCdcIiBjbGFzcz1cImdvdnVrLWhpbnQgZ292dWstY2hlY2tib3hlc19faGludFwiPlxuICAgIHt7Y29uZmlnLmhpbnQgfCBycHhUcmFuc2xhdGV9fVxuICA8L3NwYW4+XG48L2Rpdj5cbiJdfQ==
|
|
@@ -0,0 +1,137 @@
|
|
|
1
|
+
import { Component, Input } from '@angular/core';
|
|
2
|
+
import { FormGroup } from '@angular/forms';
|
|
3
|
+
import { HtmlTemplatesHelper } from '../../util/helpers/html-templates.helper';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
import * as i1 from "@angular/common";
|
|
6
|
+
import * as i2 from "@angular/forms";
|
|
7
|
+
import * as i3 from "../gov-uk-label/gov-uk-label.component";
|
|
8
|
+
import * as i4 from "../gov-uk-error-message/gov-uk-error-message.component";
|
|
9
|
+
const _c0 = a0 => ({ "govuk-form-group--error": a0 });
|
|
10
|
+
function GovUkCheckboxesComponent_span_2_Template(rf, ctx) { if (rf & 1) {
|
|
11
|
+
i0.ɵɵelementStart(0, "span", 6);
|
|
12
|
+
i0.ɵɵtext(1);
|
|
13
|
+
i0.ɵɵelementEnd();
|
|
14
|
+
} if (rf & 2) {
|
|
15
|
+
const ctx_r0 = i0.ɵɵnextContext();
|
|
16
|
+
i0.ɵɵproperty("id", ctx_r0.config.id + "-hint");
|
|
17
|
+
i0.ɵɵadvance();
|
|
18
|
+
i0.ɵɵtextInterpolate1(" ", ctx_r0.config.hint, " ");
|
|
19
|
+
} }
|
|
20
|
+
function GovUkCheckboxesComponent_div_5_div_1_div_4_Template(rf, ctx) { if (rf & 1) {
|
|
21
|
+
i0.ɵɵelementStart(0, "div", 13);
|
|
22
|
+
i0.ɵɵtext(1);
|
|
23
|
+
i0.ɵɵelementEnd();
|
|
24
|
+
} if (rf & 2) {
|
|
25
|
+
const item_r3 = i0.ɵɵnextContext().$implicit;
|
|
26
|
+
i0.ɵɵadvance();
|
|
27
|
+
i0.ɵɵtextInterpolate1(" ", item_r3.hint, " ");
|
|
28
|
+
} }
|
|
29
|
+
function GovUkCheckboxesComponent_div_5_div_1_Template(rf, ctx) { if (rf & 1) {
|
|
30
|
+
const _r2 = i0.ɵɵgetCurrentView();
|
|
31
|
+
i0.ɵɵelementStart(0, "div", 9)(1, "input", 10);
|
|
32
|
+
i0.ɵɵlistener("change", function GovUkCheckboxesComponent_div_5_div_1_Template_input_change_1_listener($event) { const item_r3 = i0.ɵɵrestoreView(_r2).$implicit; const ctx_r0 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r0.onChecked($event.target.checked, item_r3.value)); });
|
|
33
|
+
i0.ɵɵelementEnd();
|
|
34
|
+
i0.ɵɵelementStart(2, "label", 11);
|
|
35
|
+
i0.ɵɵtext(3);
|
|
36
|
+
i0.ɵɵelementEnd();
|
|
37
|
+
i0.ɵɵtemplate(4, GovUkCheckboxesComponent_div_5_div_1_div_4_Template, 2, 1, "div", 12);
|
|
38
|
+
i0.ɵɵelementEnd();
|
|
39
|
+
} if (rf & 2) {
|
|
40
|
+
const item_r3 = ctx.$implicit;
|
|
41
|
+
const ctx_r0 = i0.ɵɵnextContext(2);
|
|
42
|
+
i0.ɵɵadvance();
|
|
43
|
+
i0.ɵɵproperty("id", item_r3.id)("name", item_r3.id)("checked", ctx_r0.isChecked(item_r3.value))("value", item_r3.value);
|
|
44
|
+
i0.ɵɵattribute("aria-describedby", ctx_r0.setDescribedBy());
|
|
45
|
+
i0.ɵɵadvance();
|
|
46
|
+
i0.ɵɵproperty("for", item_r3.id);
|
|
47
|
+
i0.ɵɵadvance();
|
|
48
|
+
i0.ɵɵtextInterpolate1(" ", item_r3.label, " ");
|
|
49
|
+
i0.ɵɵadvance();
|
|
50
|
+
i0.ɵɵproperty("ngIf", item_r3.hint);
|
|
51
|
+
} }
|
|
52
|
+
function GovUkCheckboxesComponent_div_5_Template(rf, ctx) { if (rf & 1) {
|
|
53
|
+
i0.ɵɵelementStart(0, "div", 7);
|
|
54
|
+
i0.ɵɵtemplate(1, GovUkCheckboxesComponent_div_5_div_1_Template, 5, 8, "div", 8);
|
|
55
|
+
i0.ɵɵelementEnd();
|
|
56
|
+
} if (rf & 2) {
|
|
57
|
+
const columnItems_r4 = ctx.$implicit;
|
|
58
|
+
i0.ɵɵadvance();
|
|
59
|
+
i0.ɵɵproperty("ngForOf", columnItems_r4);
|
|
60
|
+
} }
|
|
61
|
+
/*
|
|
62
|
+
* CheckBox component - state less
|
|
63
|
+
* Responsible for displaying a list of gov-uk-checkboxes
|
|
64
|
+
* @param: options - object with data for wrapper (fieldset) and
|
|
65
|
+
* array of items for gov-uk-checkboxes
|
|
66
|
+
* @param: errors - array of error stings
|
|
67
|
+
* */
|
|
68
|
+
export class GovUkCheckboxesComponent {
|
|
69
|
+
ngOnInit() {
|
|
70
|
+
this.columns = this.setColumns();
|
|
71
|
+
}
|
|
72
|
+
setDescribedBy() {
|
|
73
|
+
return HtmlTemplatesHelper.setDescribedBy(this.errorMessage, this.config);
|
|
74
|
+
}
|
|
75
|
+
onChecked(checked, value) {
|
|
76
|
+
const formControl = this.group.get(this.config.name);
|
|
77
|
+
const array = formControl.value ? formControl.value : [];
|
|
78
|
+
if (!checked) {
|
|
79
|
+
const modifiedArray = array.filter((item) => item !== value);
|
|
80
|
+
formControl.setValue(modifiedArray);
|
|
81
|
+
}
|
|
82
|
+
else {
|
|
83
|
+
formControl.setValue([...array, value]);
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
isChecked(value) {
|
|
87
|
+
const formControl = this.group.get(this.config.name);
|
|
88
|
+
return formControl.value && formControl.value.includes(value);
|
|
89
|
+
}
|
|
90
|
+
setColumns() {
|
|
91
|
+
if (this.config.rows && this.config.rows > 1) {
|
|
92
|
+
const array = [];
|
|
93
|
+
for (let i = 0; i < this.items.length; i += this.config.rows) {
|
|
94
|
+
const arrayChunk = this.items.slice(i, i + this.config.rows);
|
|
95
|
+
array.push(arrayChunk);
|
|
96
|
+
}
|
|
97
|
+
return array;
|
|
98
|
+
}
|
|
99
|
+
else {
|
|
100
|
+
return [this.items];
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
static { this.ɵfac = function GovUkCheckboxesComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || GovUkCheckboxesComponent)(); }; }
|
|
104
|
+
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: GovUkCheckboxesComponent, selectors: [["xuilib-gov-uk-checkboxes"]], inputs: { group: "group", config: "config", items: "items", errorMessage: "errorMessage" }, decls: 6, vars: 9, consts: [[1, "govuk-form-group", "gov-uk-input", 3, "formGroup", "ngClass"], [3, "config"], ["class", "govuk-hint", 3, "id", 4, "ngIf"], [3, "config", "errorMessage"], ["data-module", "govuk-checkboxes", 1, "govuk-checkboxes", "govuk-checkboxes--small", "govuk-checkboxes-multi-column"], ["class", "govuk-checkboxes-multi-column__single", 4, "ngFor", "ngForOf"], [1, "govuk-hint", 3, "id"], [1, "govuk-checkboxes-multi-column__single"], ["class", "govuk-checkboxes__item", 4, "ngFor", "ngForOf"], [1, "govuk-checkboxes__item"], ["type", "checkbox", 1, "govuk-checkboxes__input", 3, "change", "id", "name", "checked", "value"], [1, "govuk-label", "govuk-checkboxes__label", 3, "for"], ["class", "govuk-hint govuk-checkboxes__hint", 4, "ngIf"], [1, "govuk-hint", "govuk-checkboxes__hint"]], template: function GovUkCheckboxesComponent_Template(rf, ctx) { if (rf & 1) {
|
|
105
|
+
i0.ɵɵelementStart(0, "div", 0);
|
|
106
|
+
i0.ɵɵelement(1, "xuilib-gov-label", 1);
|
|
107
|
+
i0.ɵɵtemplate(2, GovUkCheckboxesComponent_span_2_Template, 2, 2, "span", 2);
|
|
108
|
+
i0.ɵɵelement(3, "xuilib-gov-uk-error-message", 3);
|
|
109
|
+
i0.ɵɵelementStart(4, "div", 4);
|
|
110
|
+
i0.ɵɵtemplate(5, GovUkCheckboxesComponent_div_5_Template, 2, 1, "div", 5);
|
|
111
|
+
i0.ɵɵelementEnd()();
|
|
112
|
+
} if (rf & 2) {
|
|
113
|
+
i0.ɵɵproperty("formGroup", ctx.group)("ngClass", i0.ɵɵpureFunction1(7, _c0, ctx.errorMessage == null ? null : ctx.errorMessage.isInvalid));
|
|
114
|
+
i0.ɵɵadvance();
|
|
115
|
+
i0.ɵɵproperty("config", ctx.config);
|
|
116
|
+
i0.ɵɵadvance();
|
|
117
|
+
i0.ɵɵproperty("ngIf", ctx.config.hint);
|
|
118
|
+
i0.ɵɵadvance();
|
|
119
|
+
i0.ɵɵproperty("config", ctx.config)("errorMessage", ctx.errorMessage);
|
|
120
|
+
i0.ɵɵadvance(2);
|
|
121
|
+
i0.ɵɵproperty("ngForOf", ctx.columns);
|
|
122
|
+
} }, dependencies: [i1.NgClass, i1.NgForOf, i1.NgIf, i2.NgControlStatusGroup, i2.FormGroupDirective, i3.GovUkLabelComponent, i4.GovUkErrorMessageComponent], styles: [".govuk-checkboxes-multi-column[_ngcontent-%COMP%]{display:flex;flex-wrap:wrap;margin-left:-20px;margin-right:-20px}.govuk-checkboxes-multi-column__single[_ngcontent-%COMP%]{padding-left:20px;padding-right:20px}"] }); }
|
|
123
|
+
}
|
|
124
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(GovUkCheckboxesComponent, [{
|
|
125
|
+
type: Component,
|
|
126
|
+
args: [{ selector: 'xuilib-gov-uk-checkboxes', template: "<div class=\"govuk-form-group gov-uk-input\" [formGroup]=\"group\"\n [ngClass]=\"{'govuk-form-group--error': errorMessage?.isInvalid}\">\n\n <xuilib-gov-label [config]=\"config\"></xuilib-gov-label>\n\n <span *ngIf=\"config.hint\" [id]=\"config.id +'-hint'\" class=\"govuk-hint\">\n {{config.hint}}\n </span>\n\n <xuilib-gov-uk-error-message [config]=\"config\" [errorMessage]=\"errorMessage\"></xuilib-gov-uk-error-message>\n\n <div class=\"govuk-checkboxes govuk-checkboxes--small govuk-checkboxes-multi-column\" data-module=\"govuk-checkboxes\">\n <div class=\"govuk-checkboxes-multi-column__single\" *ngFor=\"let columnItems of columns\">\n <div class=\"govuk-checkboxes__item\" *ngFor=\"let item of columnItems\">\n <input type=\"checkbox\" class=\"govuk-checkboxes__input\"\n [id]=\"item.id\" [name]=\"item.id\" [checked]=\"isChecked(item.value)\" [value]=\"item.value\"\n [attr.aria-describedby]=\"setDescribedBy()\"\n (change)=\"onChecked($event.target.checked, item.value)\"\n >\n <label class=\"govuk-label govuk-checkboxes__label\" [for]=\"item.id\">\n {{ item.label }}\n </label>\n <div *ngIf=\"item.hint\" class=\"govuk-hint govuk-checkboxes__hint\">\n {{ item.hint }}\n </div>\n </div>\n </div>\n </div>\n</div>\n", styles: [".govuk-checkboxes-multi-column{display:flex;flex-wrap:wrap;margin-left:-20px;margin-right:-20px}.govuk-checkboxes-multi-column__single{padding-left:20px;padding-right:20px}\n"] }]
|
|
127
|
+
}], null, { group: [{
|
|
128
|
+
type: Input
|
|
129
|
+
}], config: [{
|
|
130
|
+
type: Input
|
|
131
|
+
}], items: [{
|
|
132
|
+
type: Input
|
|
133
|
+
}], errorMessage: [{
|
|
134
|
+
type: Input
|
|
135
|
+
}] }); })();
|
|
136
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(GovUkCheckboxesComponent, { className: "GovUkCheckboxesComponent", filePath: "lib/gov-ui/components/gov-uk-checkboxes/gov-uk-checkboxes.component.ts", lineNumber: 18 }); })();
|
|
137
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ292LXVrLWNoZWNrYm94ZXMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZXh1aS1jb21tb24tbGliL3NyYy9saWIvZ292LXVpL2NvbXBvbmVudHMvZ292LXVrLWNoZWNrYm94ZXMvZ292LXVrLWNoZWNrYm94ZXMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZXh1aS1jb21tb24tbGliL3NyYy9saWIvZ292LXVpL2NvbXBvbmVudHMvZ292LXVrLWNoZWNrYm94ZXMvZ292LXVrLWNoZWNrYm94ZXMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDekQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRTNDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDBDQUEwQyxDQUFDOzs7Ozs7OztJQ0U3RSwrQkFBdUU7SUFDckUsWUFDRjtJQUFBLGlCQUFPOzs7SUFGbUIsK0NBQXlCO0lBQ2pELGNBQ0Y7SUFERSxtREFDRjs7O0lBZU0sK0JBQWlFO0lBQy9ELFlBQ0Y7SUFBQSxpQkFBTTs7O0lBREosY0FDRjtJQURFLDZDQUNGOzs7O0lBVkEsQUFERiw4QkFBcUUsZ0JBS2xFO0lBRE0sNE5BQVUsc0RBQTRDLEtBQUM7SUFIOUQsaUJBSUM7SUFDRCxpQ0FBbUU7SUFDakUsWUFDRjtJQUFBLGlCQUFRO0lBQ1Isc0ZBQWlFO0lBR25FLGlCQUFNOzs7O0lBVkcsY0FBYztJQUFvRCxBQUFsQyxBQUFqQixBQUFmLCtCQUFjLG9CQUFpQiw0Q0FBa0Msd0JBQXFCOztJQUkxQyxjQUFlO0lBQWYsZ0NBQWU7SUFDaEUsY0FDRjtJQURFLDhDQUNGO0lBQ00sY0FBZTtJQUFmLG1DQUFlOzs7SUFWekIsOEJBQXVGO0lBQ3JGLCtF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SztZQUNVLFlBQVk7a0JBQTNCLEtBQUs7O2tGQUpLLHdCQUF3QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybUdyb3VwIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgQ2hlY2tib3hlc01vZGVsLCBFcnJvck1lc3NhZ2VzTW9kZWwsIEdvdlVpQ29uZmlnTW9kZWwgfSBmcm9tICcuLi8uLi9tb2RlbHMnO1xuaW1wb3J0IHsgSHRtbFRlbXBsYXRlc0hlbHBlciB9IGZyb20gJy4uLy4uL3V0aWwvaGVscGVycy9odG1sLXRlbXBsYXRlcy5oZWxwZXInO1xuLypcbiogQ2hlY2tCb3ggY29tcG9uZW50IC0gc3RhdGUgbGVzc1xuKiBSZXNwb25zaWJsZSBmb3IgZGlzcGxheWluZyBhIGxpc3Qgb2YgZ292LXVrLWNoZWNrYm94ZXNcbiogQHBhcmFtOiBvcHRpb25zIC0gb2JqZWN0IHdpdGggZGF0YSBmb3Igd3JhcHBlciAoZmllbGRzZXQpIGFuZFxuKiBhcnJheSBvZiBpdGVtcyBmb3IgZ292LXVrLWNoZWNrYm94ZXNcbiogQHBhcmFtOiBlcnJvcnMgLSBhcnJheSBvZiBlcnJvciBzdGluZ3NcbiogKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3h1aWxpYi1nb3YtdWstY2hlY2tib3hlcycsXG4gIHRlbXBsYXRlVXJsOiAnLi9nb3YtdWstY2hlY2tib3hlcy5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2dvdi11ay1jaGVja2JveGVzLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5cbmV4cG9ydCBjbGFzcyBHb3ZVa0NoZWNrYm94ZXNDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBASW5wdXQoKSBwdWJsaWMgZ3JvdXA6IEZvcm1Hcm91cDtcbiAgQElucHV0KCkgcHVibGljIGNvbmZpZzogR292VWlDb25maWdNb2RlbDtcbiAgQElucHV0KCkgcHVibGljIGl0ZW1zOiBDaGVja2JveGVzTW9kZWxbXTtcbiAgQElucHV0KCkgcHVibGljIGVycm9yTWVzc2FnZTogRXJyb3JNZXNzYWdlc01vZGVsO1xuXG4gIHB1YmxpYyBjb2x1bW5zOiBDaGVja2JveGVzTW9kZWxbXVtdO1xuXG4gIHB1YmxpYyBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLmNvbHVtbnMgPSB0aGlzLnNldENvbHVtbnMoKTtcbiAgfVxuXG4gIHB1YmxpYyBzZXREZXNjcmliZWRCeSgpOiBzdHJpbmcge1xuICAgIHJldHVybiBIdG1sVGVtcGxhdGVzSGVscGVyLnNldERlc2NyaWJlZEJ5KHRoaXMuZXJyb3JNZXNzYWdlLCB0aGlzLmNvbmZpZyk7XG4gIH1cblxuICBwdWJsaWMgb25DaGVja2VkKGNoZWNrZWQ6IGJvb2xlYW4sIHZhbHVlOiBzdHJpbmcpIHtcbiAgICBjb25zdCBmb3JtQ29udHJvbCA9IHRoaXMuZ3JvdXAuZ2V0KHRoaXMuY29uZmlnLm5hbWUpO1xuICAgIGNvbnN0IGFycmF5ID0gZm9ybUNvbnRyb2wudmFsdWUgPyBmb3JtQ29udHJvbC52YWx1ZSA6IFtdO1xuXG4gICAgaWYgKCFjaGVja2VkKSB7XG4gICAgICBjb25zdCBtb2RpZmllZEFycmF5ID0gYXJyYXkuZmlsdGVyKChpdGVtOiBzdHJpbmcpID0+IGl0ZW0gIT09IHZhbHVlKTtcbiAgICAgIGZvcm1Db250cm9sLnNldFZhbHVlKG1vZGlmaWVkQXJyYXkpO1xuICAgIH0gZWxzZSB7XG4gICAgICBmb3JtQ29udHJvbC5zZXRWYWx1ZShbLi4uYXJyYXksIHZhbHVlXSk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGlzQ2hlY2tlZCh2YWx1ZTogc3RyaW5nKSB7XG4gICAgY29uc3QgZm9ybUNvbnRyb2wgPSB0aGlzLmdyb3VwLmdldCh0aGlzLmNvbmZpZy5uYW1lKTtcbiAgICByZXR1cm4gZm9ybUNvbnRyb2wudmFsdWUgJiYgZm9ybUNvbnRyb2wudmFsdWUuaW5jbHVkZXModmFsdWUpO1xuICB9XG5cbiAgcHJpdmF0ZSBzZXRDb2x1bW5zKCk6IENoZWNrYm94ZXNNb2RlbFtdW10ge1xuICAgIGlmICh0aGlzLmNvbmZpZy5yb3dzICYmIHRoaXMuY29uZmlnLnJvd3MgPiAxKSB7XG4gICAgICBjb25zdCBhcnJheTogQ2hlY2tib3hlc01vZGVsW11bXSA9IFtdO1xuXG4gICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHRoaXMuaXRlbXMubGVuZ3RoOyBpICs9IHRoaXMuY29uZmlnLnJvd3MpIHtcbiAgICAgICAgY29uc3QgYXJyYXlDaHVuayA9IHRoaXMuaXRlbXMuc2xpY2UoaSwgaSArIHRoaXMuY29uZmlnLnJvd3MpO1xuICAgICAgICBhcnJheS5wdXNoKGFycmF5Q2h1bmspO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gYXJyYXk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBbdGhpcy5pdGVtc107XG4gICAgfVxuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiZ292dWstZm9ybS1ncm91cCBnb3YtdWstaW5wdXRcIiBbZm9ybUdyb3VwXT1cImdyb3VwXCJcbiAgICAgW25nQ2xhc3NdPVwieydnb3Z1ay1mb3JtLWdyb3VwLS1lcnJvcic6IGVycm9yTWVzc2FnZT8uaXNJbnZhbGlkfVwiPlxuXG4gIDx4dWlsaWItZ292LWxhYmVsIFtjb25maWddPVwiY29uZmlnXCI+PC94dWlsaWItZ292LWxhYmVsPlxuXG4gIDxzcGFuICpuZ0lmPVwiY29uZmlnLmhpbnRcIiBbaWRdPVwiY29uZmlnLmlkICsnLWhpbnQnXCIgY2xhc3M9XCJnb3Z1ay1oaW50XCI+XG4gICAge3tjb25maWcuaGludH19XG4gIDwvc3Bhbj5cblxuICA8eHVpbGliLWdvdi11ay1lcnJvci1tZXNzYWdlIFtjb25maWddPVwiY29uZmlnXCIgW2Vycm9yTWVzc2FnZV09XCJlcnJvck1lc3NhZ2VcIj48L3h1aWxpYi1nb3YtdWstZXJyb3ItbWVzc2FnZT5cblxuICA8ZGl2IGNsYXNzPVwiZ292dWstY2hlY2tib3hlcyBnb3Z1ay1jaGVja2JveGVzLS1zbWFsbCBnb3Z1ay1jaGVja2JveGVzLW11bHRpLWNvbHVtblwiIGRhdGEtbW9kdWxlPVwiZ292dWstY2hlY2tib3hlc1wiPlxuICAgIDxkaXYgY2xhc3M9XCJnb3Z1ay1jaGVja2JveGVzLW11bHRpLWNvbHVtbl9fc2luZ2xlXCIgKm5nRm9yPVwibGV0IGNvbHVtbkl0ZW1zIG9mIGNvbHVtbnNcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJnb3Z1ay1jaGVja2JveGVzX19pdGVtXCIgKm5nRm9yPVwibGV0IGl0ZW0gb2YgY29sdW1uSXRlbXNcIj5cbiAgICAgICAgPGlucHV0IHR5cGU9XCJjaGVja2JveFwiIGNsYXNzPVwiZ292dWstY2hlY2tib3hlc19faW5wdXRcIlxuICAgICAgICAgICAgICAgW2lkXT1cIml0ZW0uaWRcIiBbbmFtZV09XCJpdGVtLmlkXCIgW2NoZWNrZWRdPVwiaXNDaGVja2VkKGl0ZW0udmFsdWUpXCIgW3ZhbHVlXT1cIml0ZW0udmFsdWVcIlxuICAgICAgICAgICAgICAgW2F0dHIuYXJpYS1kZXNjcmliZWRieV09XCJzZXREZXNjcmliZWRCeSgpXCJcbiAgICAgICAgICAgICAgIChjaGFuZ2UpPVwib25DaGVja2VkKCRldmVudC50YXJnZXQuY2hlY2tlZCwgaXRlbS52YWx1ZSlcIlxuICAgICAgICA+XG4gICAgICAgIDxsYWJlbCBjbGFzcz1cImdvdnVrLWxhYmVsIGdvdnVrLWNoZWNrYm94ZXNfX2xhYmVsXCIgW2Zvcl09XCJpdGVtLmlkXCI+XG4gICAgICAgICAge3sgaXRlbS5sYWJlbCB9fVxuICAgICAgICA8L2xhYmVsPlxuICAgICAgICA8ZGl2ICpuZ0lmPVwiaXRlbS5oaW50XCIgY2xhc3M9XCJnb3Z1ay1oaW50IGdvdnVrLWNoZWNrYm94ZXNfX2hpbnRcIj5cbiAgICAgICAgICB7eyBpdGVtLmhpbnQgfX1cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
|
|
@@ -0,0 +1,127 @@
|
|
|
1
|
+
import { Component, Input } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "@angular/common";
|
|
4
|
+
import * as i2 from "@angular/forms";
|
|
5
|
+
import * as i3 from "../gov-uk-label/gov-uk-label.component";
|
|
6
|
+
import * as i4 from "../gov-uk-error-message/gov-uk-error-message.component";
|
|
7
|
+
import * as i5 from "../gov-uk-fieldset/gov-uk-fieldset.component";
|
|
8
|
+
import * as i6 from "rpx-xui-translation";
|
|
9
|
+
const _c0 = a0 => ({ "govuk-form-group--error": a0 });
|
|
10
|
+
const _c1 = (a0, a1, a2, a3, a4) => ({ legend: a0, classes: a1, id: a2, hint: a3, isPageHeading: a4 });
|
|
11
|
+
const _c2 = (a0, a1, a2) => ({ label: a0, name: a1, id: a2, classes: "govuk-date-input__label" });
|
|
12
|
+
const _c3 = a0 => ({ "govuk-input--error": a0 });
|
|
13
|
+
const _c4 = () => ({ id: "passport" });
|
|
14
|
+
function GovUkDateComponent_xuilib_gov_uk_error_message_3_Template(rf, ctx) { if (rf & 1) {
|
|
15
|
+
i0.ɵɵelement(0, "xuilib-gov-uk-error-message", 2);
|
|
16
|
+
} if (rf & 2) {
|
|
17
|
+
const ctx_r0 = i0.ɵɵnextContext();
|
|
18
|
+
i0.ɵɵproperty("config", i0.ɵɵpureFunction0(2, _c4))("errorMessage", ctx_r0.errorMessage);
|
|
19
|
+
} }
|
|
20
|
+
/*
|
|
21
|
+
* Gov UK Date Component
|
|
22
|
+
* Responsible for displaying 3 input fields:
|
|
23
|
+
* day / month / year
|
|
24
|
+
* displaying errorMessage messages
|
|
25
|
+
* */
|
|
26
|
+
export class GovUkDateComponent {
|
|
27
|
+
constructor() {
|
|
28
|
+
this.isOptional = false;
|
|
29
|
+
}
|
|
30
|
+
ngOnInit() {
|
|
31
|
+
this.day = `${this.config.id}_day`;
|
|
32
|
+
this.month = `${this.config.id}_month`;
|
|
33
|
+
this.year = `${this.config.id}_year`;
|
|
34
|
+
const dateValidator = this.DateValidator();
|
|
35
|
+
this.formGroup.get(this.day).setValidators(dateValidator);
|
|
36
|
+
}
|
|
37
|
+
isValidDate(d, month, year) {
|
|
38
|
+
const dateCheck = !isNaN(d.getTime());
|
|
39
|
+
// Month mismatch occurs if the provided day or month are invalid, or either is omitted. **Note:** This is insufficient for
|
|
40
|
+
// checking date validity when the year is omitted because it defaults to 1900 - an extra check is required
|
|
41
|
+
const monthMatch = d.getMonth() === month;
|
|
42
|
+
const yearMatch = d.getFullYear() === year;
|
|
43
|
+
return dateCheck && monthMatch && yearMatch;
|
|
44
|
+
}
|
|
45
|
+
isEmpty(value) {
|
|
46
|
+
// Note: Intentional use of == to check for null or undefined
|
|
47
|
+
/* eslint-disable eqeqeq */
|
|
48
|
+
/* tslint:disable:triple-equals */
|
|
49
|
+
// NaN and < 0 checks required for month field
|
|
50
|
+
return value == null || value === '' || isNaN(value) || value < 0;
|
|
51
|
+
/* eslint-enable eqeqeq */
|
|
52
|
+
/* tslint:enable:triple-equals */
|
|
53
|
+
}
|
|
54
|
+
DateValidator() {
|
|
55
|
+
return () => {
|
|
56
|
+
const day = this.formGroup.get(this.day).value;
|
|
57
|
+
const month = this.formGroup.get(this.month).value - 1;
|
|
58
|
+
const year = this.formGroup.get(this.year).value;
|
|
59
|
+
// Validation should pass if the date field is optional and day, month, and year are all empty
|
|
60
|
+
if (this.isOptional && this.isEmpty(day) && this.isEmpty(month) && this.isEmpty(year)) {
|
|
61
|
+
return null;
|
|
62
|
+
}
|
|
63
|
+
const validDay = this.formGroup.get(this.day).valid;
|
|
64
|
+
const validMonth = this.formGroup.get(this.month).valid;
|
|
65
|
+
const validYear = this.formGroup.get(this.year).valid;
|
|
66
|
+
if (!validDay || !validMonth || !validYear) {
|
|
67
|
+
return { dateComponent: true };
|
|
68
|
+
}
|
|
69
|
+
// + to coerce year to a number
|
|
70
|
+
return !this.isValidDate(new Date(year, month, day), month, +year) ? { dateComponent: true } : null;
|
|
71
|
+
};
|
|
72
|
+
}
|
|
73
|
+
static { this.ɵfac = function GovUkDateComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || GovUkDateComponent)(); }; }
|
|
74
|
+
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: GovUkDateComponent, selectors: [["xuilib-gov-uk-date"]], inputs: { config: "config", errorMessage: "errorMessage", formGroup: "formGroup", isOptional: "isOptional" }, decls: 20, vars: 53, consts: [[1, "govuk-form-group", 3, "ngClass", "formGroup"], [1, "date-input-container"], [3, "config", "errorMessage"], [3, "config", "errorMessage", 4, "ngIf"], [1, "govuk-date-input", 3, "id"], [1, "govuk-date-input__item"], [1, "govuk-form-group"], [3, "config"], ["type", "text", "value", "", "pattern", "\\d*", "maxlength", "2", 1, "govuk-input", "govuk-date-input__input", "govuk-input--width-2", 3, "ngClass", "id", "name", "formControlName"], ["type", "text", "value", "", "pattern", "\\d*", "maxlength", "4", 1, "govuk-input", "govuk-date-input__input", "govuk-input--width-4", 3, "ngClass", "id", "name", "formControlName"]], template: function GovUkDateComponent_Template(rf, ctx) { if (rf & 1) {
|
|
75
|
+
i0.ɵɵelementStart(0, "div", 0)(1, "div", 1)(2, "xuilib-gov-uk-fieldset", 2);
|
|
76
|
+
i0.ɵɵtemplate(3, GovUkDateComponent_xuilib_gov_uk_error_message_3_Template, 1, 3, "xuilib-gov-uk-error-message", 3);
|
|
77
|
+
i0.ɵɵelementStart(4, "div", 4)(5, "div", 5)(6, "div", 6);
|
|
78
|
+
i0.ɵɵelement(7, "xuilib-gov-label", 7);
|
|
79
|
+
i0.ɵɵpipe(8, "rpxTranslate");
|
|
80
|
+
i0.ɵɵelement(9, "input", 8);
|
|
81
|
+
i0.ɵɵelementEnd()();
|
|
82
|
+
i0.ɵɵelementStart(10, "div", 5)(11, "div", 6);
|
|
83
|
+
i0.ɵɵelement(12, "xuilib-gov-label", 7);
|
|
84
|
+
i0.ɵɵpipe(13, "rpxTranslate");
|
|
85
|
+
i0.ɵɵelement(14, "input", 8);
|
|
86
|
+
i0.ɵɵelementEnd()();
|
|
87
|
+
i0.ɵɵelementStart(15, "div", 5)(16, "div", 6);
|
|
88
|
+
i0.ɵɵelement(17, "xuilib-gov-label", 7);
|
|
89
|
+
i0.ɵɵpipe(18, "rpxTranslate");
|
|
90
|
+
i0.ɵɵelement(19, "input", 9);
|
|
91
|
+
i0.ɵɵelementEnd()()()()()();
|
|
92
|
+
} if (rf & 2) {
|
|
93
|
+
i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(27, _c0, ctx.errorMessage == null ? null : ctx.errorMessage.isInvalid))("formGroup", ctx.formGroup);
|
|
94
|
+
i0.ɵɵadvance(2);
|
|
95
|
+
i0.ɵɵproperty("config", i0.ɵɵpureFunction5(29, _c1, ctx.config.label || "Date component", ctx.config.classes || "govuk-label--m", ctx.config.id, ctx.config.hint != null ? ctx.config.hint : "For example, 12 11 2007", ctx.config.isPageHeading || false))("errorMessage", ctx.errorMessage);
|
|
96
|
+
i0.ɵɵadvance();
|
|
97
|
+
i0.ɵɵproperty("ngIf", ctx.errorMessage);
|
|
98
|
+
i0.ɵɵadvance();
|
|
99
|
+
i0.ɵɵproperty("id", ctx.config.id + "-date");
|
|
100
|
+
i0.ɵɵadvance(3);
|
|
101
|
+
i0.ɵɵproperty("config", i0.ɵɵpureFunction3(35, _c2, i0.ɵɵpipeBind1(8, 21, "Day"), ctx.config.id + "-day", ctx.config.id + "-day"));
|
|
102
|
+
i0.ɵɵadvance(2);
|
|
103
|
+
i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(39, _c3, ctx.errorMessage == null ? null : ctx.errorMessage.isInvalid))("id", ctx.config.id + "-day")("name", ctx.config.id + "-day")("formControlName", ctx.config.id + "_day");
|
|
104
|
+
i0.ɵɵadvance(3);
|
|
105
|
+
i0.ɵɵproperty("config", i0.ɵɵpureFunction3(41, _c2, i0.ɵɵpipeBind1(13, 23, "Month"), ctx.config.id + "-month", ctx.config.id + "-month"));
|
|
106
|
+
i0.ɵɵadvance(2);
|
|
107
|
+
i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(45, _c3, ctx.errorMessage == null ? null : ctx.errorMessage.isInvalid))("id", ctx.config.id + "-month")("name", ctx.config.id + "-month")("formControlName", ctx.config.id + "_month");
|
|
108
|
+
i0.ɵɵadvance(3);
|
|
109
|
+
i0.ɵɵproperty("config", i0.ɵɵpureFunction3(47, _c2, i0.ɵɵpipeBind1(18, 25, "Year"), ctx.config.id + "-year", ctx.config.id + "-year"));
|
|
110
|
+
i0.ɵɵadvance(2);
|
|
111
|
+
i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(51, _c3, ctx.errorMessage == null ? null : ctx.errorMessage.isInvalid))("id", ctx.config.id + "-year")("name", ctx.config.id + "-year")("formControlName", ctx.config.id + "_year");
|
|
112
|
+
} }, dependencies: [i1.NgClass, i1.NgIf, i2.DefaultValueAccessor, i2.NgControlStatus, i2.NgControlStatusGroup, i2.MaxLengthValidator, i2.PatternValidator, i2.FormGroupDirective, i2.FormControlName, i3.GovUkLabelComponent, i4.GovUkErrorMessageComponent, i5.GovUkFieldsetComponent, i6.RpxTranslatePipe], styles: [".govuk-form-group[_ngcontent-%COMP%] .date-input-container[_ngcontent-%COMP%]{margin-bottom:30px}.govuk-form-group[_ngcontent-%COMP%] .date-input-container[_ngcontent-%COMP%] .govuk-date-input[_ngcontent-%COMP%] .govuk-date-input__item[_ngcontent-%COMP%] .govuk-form-group[_ngcontent-%COMP%]{margin-bottom:0}"] }); }
|
|
113
|
+
}
|
|
114
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(GovUkDateComponent, [{
|
|
115
|
+
type: Component,
|
|
116
|
+
args: [{ selector: 'xuilib-gov-uk-date', template: "<div class=\"govuk-form-group\" [ngClass]=\"{'govuk-form-group--error': errorMessage?.isInvalid}\" [formGroup]=\"formGroup\">\n <div class=\"date-input-container\">\n <xuilib-gov-uk-fieldset\n [config]=\"{\n legend: config.label || 'Date component',\n classes: config.classes || 'govuk-label--m',\n id: config.id,\n hint: config.hint != null ? config.hint : 'For example, 12 11 2007',\n isPageHeading: config.isPageHeading || false}\"\n [errorMessage]=\"errorMessage\">\n <xuilib-gov-uk-error-message\n [config]=\"{id: 'passport'}\"\n *ngIf=\"errorMessage\"\n [errorMessage]=\"errorMessage\">\n </xuilib-gov-uk-error-message>\n <div class=\"govuk-date-input\" [id]=\"config.id+'-date'\">\n <div class=\"govuk-date-input__item\">\n <div class=\"govuk-form-group\">\n <xuilib-gov-label\n [config]=\"{label: 'Day' | rpxTranslate, name: config.id+'-day', id: config.id+'-day', classes: 'govuk-date-input__label'}\">\n </xuilib-gov-label>\n <input class=\"govuk-input govuk-date-input__input govuk-input--width-2\"\n [ngClass]=\"{'govuk-input--error': errorMessage?.isInvalid}\"\n [id]=\"config.id+'-day'\"\n [name]=\"config.id+'-day'\" type=\"text\" value=\"\" pattern=\"\\d*\" maxlength=\"2\"\n [formControlName]=\"config.id+'_day'\">\n </div>\n </div>\n <div class=\"govuk-date-input__item\">\n <div class=\"govuk-form-group\">\n <xuilib-gov-label\n [config]=\"{label: 'Month' | rpxTranslate, name: config.id+'-month', id: config.id+'-month', classes: 'govuk-date-input__label'}\">\n </xuilib-gov-label>\n <input class=\"govuk-input govuk-date-input__input govuk-input--width-2\"\n [ngClass]=\"{'govuk-input--error': errorMessage?.isInvalid}\"\n [id]=\"config.id+'-month'\"\n [name]=\"config.id+'-month'\" type=\"text\" value=\"\" pattern=\"\\d*\" maxlength=\"2\"\n [formControlName]=\"config.id+'_month'\">\n </div>\n </div>\n <div class=\"govuk-date-input__item\">\n <div class=\"govuk-form-group\">\n <xuilib-gov-label\n [config]=\"{label: 'Year' | rpxTranslate, name: config.id+'-year', id: config.id+'-year', classes: 'govuk-date-input__label'}\">\n </xuilib-gov-label>\n <input class=\"govuk-input govuk-date-input__input govuk-input--width-4\"\n [ngClass]=\"{'govuk-input--error': errorMessage?.isInvalid}\"\n [id]=\"config.id+'-year'\"\n [name]=\"config.id+'-year'\" type=\"text\" value=\"\" pattern=\"\\d*\" maxlength=\"4\"\n [formControlName]=\"config.id+'_year'\">\n </div>\n </div>\n </div>\n </xuilib-gov-uk-fieldset>\n </div>\n</div>\n", styles: [".govuk-form-group .date-input-container{margin-bottom:30px}.govuk-form-group .date-input-container .govuk-date-input .govuk-date-input__item .govuk-form-group{margin-bottom:0}\n"] }]
|
|
117
|
+
}], () => [], { config: [{
|
|
118
|
+
type: Input
|
|
119
|
+
}], errorMessage: [{
|
|
120
|
+
type: Input
|
|
121
|
+
}], formGroup: [{
|
|
122
|
+
type: Input
|
|
123
|
+
}], isOptional: [{
|
|
124
|
+
type: Input
|
|
125
|
+
}] }); })();
|
|
126
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(GovUkDateComponent, { className: "GovUkDateComponent", filePath: "lib/gov-ui/components/gov-uk-date/gov-uk-date.component.ts", lineNumber: 20 }); })();
|
|
127
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ292LXVrLWRhdGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZXh1aS1jb21tb24tbGliL3NyYy9saWIvZ292LXVpL2NvbXBvbmVudHMvZ292LXVrLWRhdGUvZ292LXVrLWRhdGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZXh1aS1jb21tb24tbGliL3NyYy9saWIvZ292LXVpL2NvbXBvbmVudHMvZ292LXVrLWRhdGUvZ292LXVrLWRhdGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxLQUFLLEVBRU4sTUFBTSxlQUFlLENBQUM7Ozs7Ozs7Ozs7Ozs7O0lDTWpCLGlEQUk4Qjs7O0lBRDVCLEFBRkEsbURBQTJCLHFDQUVFOztBRExyQzs7Ozs7S0FLSztBQU1MLE1BQU0sT0FBTyxrQkFBa0I7SUFDN0I7UUFJZ0IsZUFBVSxHQUFZLEtBQUssQ0FBQztJQUo3QixDQUFDO0lBVVQsUUFBUTtRQUNiLElBQUksQ0FBQyxHQUFHLEdBQUcsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLEVBQUUsTUFBTSxDQUFDO1FBQ25DLElBQUksQ0FBQyxLQUFLLEdBQUcsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLEVBQUUsUUFBUSxDQUFDO1FBQ3ZDLElBQUksQ0FBQyxJQUFJLEdBQUcsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLEVBQUUsT0FBTyxDQUFDO1FBQ3JDLE1BQU0sYUFBYSxHQUFHLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztRQUMzQyxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsYUFBYSxDQUFDLGFBQWEsQ0FBQyxDQUFDO0lBQzVELENBQUM7SUFFTyxXQUFXLENBQUMsQ0FBTyxFQUFFLEtBQWEsRUFBRSxJQUFZO1FBQ3RE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NEJBSTZDO1lBTXpELEFBREUsQUFERSxBQURFLEFBREUsQUFERSxpQkFBTSxFQUNGLEVBQ0YsRUFDaUIsRUFDckIsRUFDRjs7WUF2RHlGLEFBQWpFLG1IQUFnRSw0QkFBd0I7WUFHaEgsZUFLZ0Q7WUFDaEQsQUFOQSwyUEFLZ0Qsa0NBQ25CO1lBRzFCLGNBQWtCO1lBQWxCLHVDQUFrQjtZQUdTLGNBQXdCO1lBQXhCLDRDQUF3QjtZQUk5QyxlQUEwSDtZQUExSCxrSUFBMEg7WUFHckgsZUFBMkQ7WUFHM0QsQUFEQSxBQURBLEFBREEsbUhBQTJELDhCQUNwQyxnQ0FDRSwyQ0FDVztZQU16QyxlQUFnSTtZQUFoSSx5SUFBZ0k7WUFHM0gsZUFBMkQ7WUFHM0QsQUFEQSxBQURBLEFBREEsbUhBQTJELGdDQUNsQyxrQ0FDRSw2Q0FDVztZQU0zQyxlQUE2SDtZQUE3SCxzSUFBNkg7WUFHeEgsZUFBMkQ7WUFHM0QsQUFEQSxBQURBLEFBREEsbUhBQTJELCtCQUNuQyxpQ0FDRSw0Q0FDVzs7O2lGRDlCM0Msa0JBQWtCO2NBTDlCLFNBQVM7MkJBQ0Usb0JBQW9CO29CQU1kLE1BQU07a0JBQXJCLEtBQUs7WUFDVSxZQUFZO2tCQUEzQixLQUFLO1lBQ1UsU0FBUztrQkFBeEIsS0FBSztZQUNVLFVBQVU7a0JBQXpCLEtBQUs7O2tGQUxLLGtCQUFrQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgSW5wdXQsXG4gIE9uSW5pdFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFZhbGlkYXRpb25FcnJvcnMsIFZhbGlkYXRvckZuIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgRXJyb3JNZXNzYWdlc01vZGVsIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2Vycm9yLW1lc3NhZ2VzLW1vZGVsJztcbmltcG9ydCB7IEdvdlVpQ29uZmlnTW9kZWwgfSBmcm9tICcuLi8uLi9tb2RlbHMvZ292LXVpLWNvbmZpZy1tb2RlbCc7XG4vKlxuICogR292IFVLIERhdGUgQ29tcG9uZW50XG4gKiBSZXNwb25zaWJsZSBmb3IgZGlzcGxheWluZyAzIGlucHV0IGZpZWxkczpcbiAqIGRheSAvIG1vbnRoIC8geWVhclxuICogZGlzcGxheWluZyBlcnJvck1lc3NhZ2UgbWVzc2FnZXNcbiAqICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd4dWlsaWItZ292LXVrLWRhdGUnLFxuICB0ZW1wbGF0ZVVybDogJy4vZ292LXVrLWRhdGUuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9nb3YtdWstZGF0ZS5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIEdvdlVrRGF0ZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIGNvbnN0cnVjdG9yKCkge31cbiAgQElucHV0KCkgcHVibGljIGNvbmZpZzogR292VWlDb25maWdNb2RlbDtcbiAgQElucHV0KCkgcHVibGljIGVycm9yTWVzc2FnZTogRXJyb3JNZXNzYWdlc01vZGVsO1xuICBASW5wdXQoKSBwdWJsaWMgZm9ybUdyb3VwOiBhbnk7XG4gIEBJbnB1dCgpIHB1YmxpYyBpc09wdGlvbmFsOiBib29sZWFuID0gZmFsc2U7XG5cbiAgcHVibGljIG1vbnRoOiBhbnk7XG4gIHB1YmxpYyBkYXk6IGFueTtcbiAgcHVibGljIHllYXI6IGFueTtcblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5kYXkgPSBgJHt0aGlzLmNvbmZpZy5pZH1fZGF5YDtcbiAgICB0aGlzLm1vbnRoID0gYCR7dGhpcy5jb25maWcuaWR9X21vbnRoYDtcbiAgICB0aGlzLnllYXIgPSBgJHt0aGlzLmNvbmZpZy5pZH1feWVhcmA7XG4gICAgY29uc3QgZGF0ZVZhbGlkYXRvciA9IHRoaXMuRGF0ZVZhbGlkYXRvcigpO1xuICAgIHRoaXMuZm9ybUdyb3VwLmdldCh0aGlzLmRheSkuc2V0VmFsaWRhdG9ycyhkYXRlVmFsaWRhdG9yKTtcbiAgfVxuXG4gIHByaXZhdGUgaXNWYWxpZERhdGUoZDogRGF0ZSwgbW9udGg6IG51bWJlciwgeWVhcjogbnVtYmVyKTogYm9vbGVhbiB7XG4gICAgY29uc3QgZGF0ZUNoZWNrID0gIWlzTmFOKGQuZ2V0VGltZSgpKTtcbiAgICAvLyBNb250aCBtaXNtYXRjaCBvY2N1cnMgaWYgdGhlIHByb3ZpZGVkIGRheSBvciBtb250aCBhcmUgaW52YWxpZCwgb3IgZWl0aGVyIGlzIG9taXR0ZWQuICoqTm90ZToqKiBUaGlzIGlzIGluc3VmZmljaWVudCBmb3JcbiAgICAvLyBjaGVja2luZyBkYXRlIHZhbGlkaXR5IHdoZW4gdGhlIHllYXIgaXMgb21pdHRlZCBiZWNhdXNlIGl0IGRlZmF1bHRzIHRvIDE5MDAgLSBhbiBleHRyYSBjaGVjayBpcyByZXF1aXJlZFxuICAgIGNvbnN0IG1vbnRoTWF0Y2ggPSBkLmdldE1vbnRoKCkgPT09IG1vbnRoO1xuICAgIGNvbnN0IHllYXJNYXRjaCA9IGQuZ2V0RnVsbFllYXIoKSA9PT0geWVhcjtcbiAgICByZXR1cm4gZGF0ZUNoZWNrICYmIG1vbnRoTWF0Y2ggJiYgeWVhck1hdGNoO1xuICB9XG5cbiAgcHJpdmF0ZSBpc0VtcHR5KHZhbHVlOiBhbnkpIHtcbiAgICAvLyBOb3RlOiBJbnRlbnRpb25hbCB1c2Ugb2YgPT0gdG8gY2hlY2sgZm9yIG51bGwgb3IgdW5kZWZpbmVkXG4gICAgLyogZXNsaW50LWRpc2FibGUgZXFlcWVxICovXG4gICAgLyogdHNsaW50OmRpc2FibGU6dHJpcGxlLWVxdWFscyAqL1xuICAgIC8vIE5hTiBhbmQgPCAwIGNoZWNrcyByZXF1aXJlZCBmb3IgbW9udGggZmllbGRcbiAgICByZXR1cm4gdmFsdWUgPT0gbnVsbCB8fCB2YWx1ZSA9PT0gJycgfHwgaXNOYU4odmFsdWUpIHx8IHZhbHVlIDwgMDtcbiAgICAvKiBlc2xpbnQtZW5hYmxlIGVxZXFlcSAqL1xuICAgIC8qIHRzbGludDplbmFibGU6dHJpcGxlLWVxdWFscyAqL1xuICB9XG5cbiAgcHVibGljIERhdGVWYWxpZGF0b3IoKTogVmFsaWRhdG9yRm4ge1xuICAgIHJldHVybiAoKTogVmFsaWRhdGlvbkVycm9ycyB8IG51bGwgPT4ge1xuICAgICAgY29uc3QgZGF5ID0gdGhpcy5mb3JtR3JvdXAuZ2V0KHRoaXMuZGF5KS52YWx1ZTtcbiAgICAgIGNvbnN0IG1vbnRoID0gdGhpcy5mb3JtR3JvdXAuZ2V0KHRoaXMubW9udGgpLnZhbHVlIC0gMTtcbiAgICAgIGNvbnN0IHllYXIgPSB0aGlzLmZvcm1Hcm91cC5nZXQodGhpcy55ZWFyKS52YWx1ZTtcbiAgICAgIC8vIFZhbGlkYXRpb24gc2hvdWxkIHBhc3MgaWYgdGhlIGRhdGUgZmllbGQgaXMgb3B0aW9uYWwgYW5kIGRheSwgbW9udGgsIGFuZCB5ZWFyIGFyZSBhbGwgZW1wdHlcbiAgICAgIGlmICh0aGlzLmlzT3B0aW9uYWwgJiYgdGhpcy5pc0VtcHR5KGRheSkgJiYgdGhpcy5pc0VtcHR5KG1vbnRoKSAmJiB0aGlzLmlzRW1wdHkoeWVhcikpIHtcbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICB9XG4gICAgICBjb25zdCB2YWxpZERheSA9IHRoaXMuZm9ybUdyb3VwLmdldCh0aGlzLmRheSkudmFsaWQ7XG4gICAgICBjb25zdCB2YWxpZE1vbnRoID0gdGhpcy5mb3JtR3JvdXAuZ2V0KHRoaXMubW9udGgpLnZhbGlkO1xuICAgICAgY29uc3QgdmFsaWRZZWFyID0gdGhpcy5mb3JtR3JvdXAuZ2V0KHRoaXMueWVhcikudmFsaWQ7XG5cbiAgICAgIGlmICghdmFsaWREYXkgfHwgIXZhbGlkTW9udGggfHwgIXZhbGlkWWVhcikge1xuICAgICAgICByZXR1cm4geyBkYXRlQ29tcG9uZW50OiB0cnVlIH07XG4gICAgICB9XG4gICAgICAvLyArIHRvIGNvZXJjZSB5ZWFyIHRvIGEgbnVtYmVyXG4gICAgICByZXR1cm4gIXRoaXMuaXNWYWxpZERhdGUobmV3IERhdGUoeWVhciwgbW9udGgsIGRheSksIG1vbnRoLCAreWVhcikgPyB7IGRhdGVDb21wb25lbnQ6IHRydWUgfSA6IG51bGw7XG4gICAgfTtcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImdvdnVrLWZvcm0tZ3JvdXBcIiBbbmdDbGFzc109XCJ7J2dvdnVrLWZvcm0tZ3JvdXAtLWVycm9yJzogZXJyb3JNZXNzYWdlPy5pc0ludmFsaWR9XCIgW2Zvcm1Hcm91cF09XCJmb3JtR3JvdXBcIj5cbiAgPGRpdiBjbGFzcz1cImRhdGUtaW5wdXQtY29udGFpbmVyXCI+XG4gICAgPHh1aWxpYi1nb3YtdWstZmllbGRzZXRcbiAgICAgIFtjb25maWddPVwie1xuICAgICAgICBsZWdlbmQ6IGNvbmZpZy5sYWJlbCB8fCAnRGF0ZSBjb21wb25lbnQnLFxuICAgICAgICBjbGFzc2VzOiBjb25maWcuY2xhc3NlcyB8fCAnZ292dWstbGFiZWwtLW0nLFxuICAgICAgICBpZDogY29uZmlnLmlkLFxuICAgICAgICBoaW50OiBjb25maWcuaGludCAhPSBudWxsID8gY29uZmlnLmhpbnQgOiAnRm9yIGV4YW1wbGUsIDEyIDExIDIwMDcnLFxuICAgICAgICBpc1BhZ2VIZWFkaW5nOiBjb25maWcuaXNQYWdlSGVhZGluZyB8fCBmYWxzZX1cIlxuICAgICAgW2Vycm9yTWVzc2FnZV09XCJlcnJvck1lc3NhZ2VcIj5cbiAgICAgIDx4dWlsaWItZ292LXVrLWVycm9yLW1lc3NhZ2VcbiAgICAgICAgW2NvbmZpZ109XCJ7aWQ6ICdwYXNzcG9ydCd9XCJcbiAgICAgICAgKm5nSWY9XCJlcnJvck1lc3NhZ2VcIlxuICAgICAgICBbZXJyb3JNZXNzYWdlXT1cImVycm9yTWVzc2FnZVwiPlxuICAgICAgPC94dWlsaWItZ292LXVrLWVycm9yLW1lc3NhZ2U+XG4gICAgICA8ZGl2IGNsYXNzPVwiZ292dWstZGF0ZS1pbnB1dFwiIFtpZF09XCJjb25maWcuaWQrJy1kYXRlJ1wiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiZ292dWstZGF0ZS1pbnB1dF9faXRlbVwiPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJnb3Z1ay1mb3JtLWdyb3VwXCI+XG4gICAgICAgICAgICA8eHVpbGliLWdvdi1sYWJlbFxuICAgICAgICAgICAgICBbY29uZmlnXT1cIntsYWJlbDogJ0RheScgfCBycHhUcmFuc2xhdGUsIG5hbWU6IGNvbmZpZy5pZCsnLWRheScsIGlkOiBjb25maWcuaWQrJy1kYXknLCBjbGFzc2VzOiAnZ292dWstZGF0ZS1pbnB1dF9fbGFiZWwnfVwiPlxuICAgICAgICAgICAgPC94dWlsaWItZ292LWxhYmVsPlxuICAgICAgICAgICAgPGlucHV0IGNsYXNzPVwiZ292dWstaW5wdXQgZ292dWstZGF0ZS1pbnB1dF9faW5wdXQgZ292dWstaW5wdXQtLXdpZHRoLTJcIlxuICAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInsnZ292dWstaW5wdXQtLWVycm9yJzogZXJyb3JNZXNzYWdlPy5pc0ludmFsaWR9XCJcbiAgICAgICAgICAgICAgICAgICBbaWRdPVwiY29uZmlnLmlkKyctZGF5J1wiXG4gICAgICAgICAgICAgICAgICAgW25hbWVdPVwiY29uZmlnLmlkKyctZGF5J1wiIHR5cGU9XCJ0ZXh0XCIgdmFsdWU9XCJcIiBwYXR0ZXJuPVwiXFxkKlwiIG1heGxlbmd0aD1cIjJcIlxuICAgICAgICAgICAgICAgICAgIFtmb3JtQ29udHJvbE5hbWVdPVwiY29uZmlnLmlkKydfZGF5J1wiPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImdvdnVrLWRhdGUtaW5wdXRfX2l0ZW1cIj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiZ292dWstZm9ybS1ncm91cFwiPlxuICAgICAgICAgICAgPHh1aWxpYi1nb3YtbGFiZWxcbiAgICAgICAgICAgICAgW2NvbmZpZ109XCJ7bGFiZWw6ICdNb250aCcgfCBycHhUcmFuc2xhdGUsIG5hbWU6IGNvbmZpZy5pZCsnLW1vbnRoJywgaWQ6IGNvbmZpZy5pZCsnLW1vbnRoJywgY2xhc3NlczogJ2dvdnVrLWRhdGUtaW5wdXRfX2xhYmVsJ31cIj5cbiAgICAgICAgICAgIDwveHVpbGliLWdvdi1sYWJlbD5cbiAgICAgICAgICAgIDxpbnB1dCBjbGFzcz1cImdvdnVrLWlucHV0IGdvdnVrLWRhdGUtaW5wdXRfX2lucHV0IGdvdnVrLWlucHV0LS13aWR0aC0yXCJcbiAgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJ7J2dvdnVrLWlucHV0LS1lcnJvcic6IGVycm9yTWVzc2FnZT8uaXNJbnZhbGlkfVwiXG4gICAgICAgICAgICAgICAgICAgW2lkXT1cImNvbmZpZy5pZCsnLW1vbnRoJ1wiXG4gICAgICAgICAgICAgICAgICAgW25hbWVdPVwiY29uZmlnLmlkKyctbW9udGgnXCIgdHlwZT1cInRleHRcIiB2YWx1ZT1cIlwiIHBhdHRlcm49XCJcXGQqXCIgbWF4bGVuZ3RoPVwiMlwiXG4gICAgICAgICAgICAgICAgICAgW2Zvcm1Db250cm9sTmFtZV09XCJjb25maWcuaWQrJ19tb250aCdcIj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJnb3Z1ay1kYXRlLWlucHV0X19pdGVtXCI+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImdvdnVrLWZvcm0tZ3JvdXBcIj5cbiAgICAgICAgICAgIDx4dWlsaWItZ292LWxhYmVsXG4gICAgICAgICAgICAgIFtjb25maWddPVwie2xhYmVsOiAnWWVhcicgfCBycHhUcmFuc2xhdGUsIG5hbWU6IGNvbmZpZy5pZCsnLXllYXInLCBpZDogY29uZmlnLmlkKycteWVhcicsIGNsYXNzZXM6ICdnb3Z1ay1kYXRlLWlucHV0X19sYWJlbCd9XCI+XG4gICAgICAgICAgICA8L3h1aWxpYi1nb3YtbGFiZWw+XG4gICAgICAgICAgICA8aW5wdXQgY2xhc3M9XCJnb3Z1ay1pbnB1dCBnb3Z1ay1kYXRlLWlucHV0X19pbnB1dCBnb3Z1ay1pbnB1dC0td2lkdGgtNFwiXG4gICAgICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwieydnb3Z1ay1pbnB1dC0tZXJyb3InOiBlcnJvck1lc3NhZ2U/LmlzSW52YWxpZH1cIlxuICAgICAgICAgICAgICAgICAgIFtpZF09XCJjb25maWcuaWQrJy15ZWFyJ1wiXG4gICAgICAgICAgICAgICAgICAgW25hbWVdPVwiY29uZmlnLmlkKycteWVhcidcIiB0eXBlPVwidGV4dFwiIHZhbHVlPVwiXCIgcGF0dGVybj1cIlxcZCpcIiBtYXhsZW5ndGg9XCI0XCJcbiAgICAgICAgICAgICAgICAgICBbZm9ybUNvbnRyb2xOYW1lXT1cImNvbmZpZy5pZCsnX3llYXInXCI+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgPC94dWlsaWItZ292LXVrLWZpZWxkc2V0PlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { Component, Input } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "@angular/common";
|
|
4
|
+
import * as i2 from "rpx-xui-translation";
|
|
5
|
+
function GovUkErrorMessageComponent_span_0_Template(rf, ctx) { if (rf & 1) {
|
|
6
|
+
i0.ɵɵelementStart(0, "span", 1)(1, "span", 2);
|
|
7
|
+
i0.ɵɵtext(2);
|
|
8
|
+
i0.ɵɵpipe(3, "rpxTranslate");
|
|
9
|
+
i0.ɵɵelementEnd();
|
|
10
|
+
i0.ɵɵtext(4);
|
|
11
|
+
i0.ɵɵpipe(5, "rpxTranslate");
|
|
12
|
+
i0.ɵɵelementEnd();
|
|
13
|
+
} if (rf & 2) {
|
|
14
|
+
const message_r1 = ctx.$implicit;
|
|
15
|
+
const ctx_r1 = i0.ɵɵnextContext();
|
|
16
|
+
i0.ɵɵproperty("id", ctx_r1.config.id + "-error");
|
|
17
|
+
i0.ɵɵadvance(2);
|
|
18
|
+
i0.ɵɵtextInterpolate1("", i0.ɵɵpipeBind1(3, 3, "Error"), ":");
|
|
19
|
+
i0.ɵɵadvance(2);
|
|
20
|
+
i0.ɵɵtextInterpolate1("", i0.ɵɵpipeBind1(5, 5, message_r1), "\n");
|
|
21
|
+
} }
|
|
22
|
+
/*
|
|
23
|
+
* Gov UK Error Message
|
|
24
|
+
* Responsible for displaying in-line error messages
|
|
25
|
+
* @prop config - obj with properties
|
|
26
|
+
* @prop errorMessage - all error bject with messages property that is arry of strings.
|
|
27
|
+
* */
|
|
28
|
+
export class GovUkErrorMessageComponent {
|
|
29
|
+
constructor() { }
|
|
30
|
+
static { this.ɵfac = function GovUkErrorMessageComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || GovUkErrorMessageComponent)(); }; }
|
|
31
|
+
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: GovUkErrorMessageComponent, selectors: [["xuilib-gov-uk-error-message"]], inputs: { config: "config", errorMessage: "errorMessage" }, decls: 1, vars: 1, consts: [["class", "govuk-error-message", 3, "id", 4, "ngFor", "ngForOf"], [1, "govuk-error-message", 3, "id"], [1, "govuk-visually-hidden"]], template: function GovUkErrorMessageComponent_Template(rf, ctx) { if (rf & 1) {
|
|
32
|
+
i0.ɵɵtemplate(0, GovUkErrorMessageComponent_span_0_Template, 6, 7, "span", 0);
|
|
33
|
+
} if (rf & 2) {
|
|
34
|
+
i0.ɵɵproperty("ngForOf", ctx.errorMessage == null ? null : ctx.errorMessage.messages);
|
|
35
|
+
} }, dependencies: [i1.NgForOf, i2.RpxTranslatePipe], encapsulation: 2 }); }
|
|
36
|
+
}
|
|
37
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(GovUkErrorMessageComponent, [{
|
|
38
|
+
type: Component,
|
|
39
|
+
args: [{ selector: ' xuilib-gov-uk-error-message', template: "<span class=\"govuk-error-message\" [id]=\"config.id + '-error'\" *ngFor=\"let message of errorMessage?.messages\">\n <span class=\"govuk-visually-hidden\">{{'Error' | rpxTranslate}}:</span>{{message | rpxTranslate}}\n</span>\n" }]
|
|
40
|
+
}], () => [], { config: [{
|
|
41
|
+
type: Input
|
|
42
|
+
}], errorMessage: [{
|
|
43
|
+
type: Input
|
|
44
|
+
}] }); })();
|
|
45
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(GovUkErrorMessageComponent, { className: "GovUkErrorMessageComponent", filePath: "lib/gov-ui/components/gov-uk-error-message/gov-uk-error-message.component.ts", lineNumber: 14 }); })();
|
|
46
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ292LXVrLWVycm9yLW1lc3NhZ2UuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZXh1aS1jb21tb24tbGliL3NyYy9saWIvZ292LXVpL2NvbXBvbmVudHMvZ292LXVrLWVycm9yLW1lc3NhZ2UvZ292LXVrLWVycm9yLW1lc3NhZ2UuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZXh1aS1jb21tb24tbGliL3NyYy9saWIvZ292LXVpL2NvbXBvbmVudHMvZ292LXVrLWVycm9yLW1lc3NhZ2UvZ292LXVrLWVycm9yLW1lc3NhZ2UuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxLQUFLLEVBQUMsTUFBTSxlQUFlLENBQUM7Ozs7O0lDQzdDLEFBREYsK0JBQTZHLGNBQ3ZFO0lBQUEsWUFBMkI7O0lBQUEsaUJBQU87SUFBQSxZQUN4RTs7SUFBQSxpQkFBTzs7OztJQUYyQixnREFBMkI7SUFDdkIsZUFBMkI7SUFBM0IsNkRBQTJCO0lBQU8sZUFDeEU7SUFEd0UsaUVBQ3hFOztBRENBOzs7OztJQUtJO0FBS0osTUFBTSxPQUFPLDBCQUEwQjtJQUNyQyxnQkFBZ0IsQ0FBQzsySEFETiwwQkFBMEI7b0VBQTFCLDBCQUEwQjtZQ2J2Qyw2RUFBNkc7O1lBQTNCLHFGQUF5Qjs7O2lGRGE5RiwwQkFBMEI7Y0FKdEMsU0FBUzsyQkFDRSw4QkFBOEI7b0JBS3hCLE1BQU07a0JBQXJCLEtBQUs7WUFFVSxZQUFZO2tCQUEzQixLQUFLOztrRkFKSywwQkFBMEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgSW5wdXR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRXJyb3JNZXNzYWdlc01vZGVsIH0gZnJvbSAnLi4vLi4vbW9kZWxzJztcbmltcG9ydCB7IEdvdlVpQ29uZmlnTW9kZWwgfSBmcm9tICcuLi8uLi9tb2RlbHMvZ292LXVpLWNvbmZpZy1tb2RlbCc7XG4vKlxuKiBHb3YgVUsgRXJyb3IgTWVzc2FnZVxuKiBSZXNwb25zaWJsZSBmb3IgZGlzcGxheWluZyBpbi1saW5lIGVycm9yIG1lc3NhZ2VzXG4qIEBwcm9wIGNvbmZpZyAtIG9iaiB3aXRoIHByb3BlcnRpZXNcbiogQHByb3AgZXJyb3JNZXNzYWdlIC0gYWxsIGVycm9yIGJqZWN0IHdpdGggbWVzc2FnZXMgcHJvcGVydHkgdGhhdCBpcyBhcnJ5IG9mIHN0cmluZ3MuXG4qICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICcgeHVpbGliLWdvdi11ay1lcnJvci1tZXNzYWdlJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2dvdi11ay1lcnJvci1tZXNzYWdlLmNvbXBvbmVudC5odG1sJ1xufSlcbmV4cG9ydCBjbGFzcyBHb3ZVa0Vycm9yTWVzc2FnZUNvbXBvbmVudCB7XG4gIGNvbnN0cnVjdG9yKCkgeyB9XG4gIEBJbnB1dCgpIHB1YmxpYyBjb25maWc6IEdvdlVpQ29uZmlnTW9kZWw7XG4gIC8vIHsgaWQ6IHN0cmluZyB9O1xuICBASW5wdXQoKSBwdWJsaWMgZXJyb3JNZXNzYWdlOiBFcnJvck1lc3NhZ2VzTW9kZWw7XG59XG4iLCI8c3BhbiBjbGFzcz1cImdvdnVrLWVycm9yLW1lc3NhZ2VcIiBbaWRdPVwiY29uZmlnLmlkICsgJy1lcnJvcidcIiAqbmdGb3I9XCJsZXQgbWVzc2FnZSBvZiBlcnJvck1lc3NhZ2U/Lm1lc3NhZ2VzXCI+XG4gIDxzcGFuIGNsYXNzPVwiZ292dWstdmlzdWFsbHktaGlkZGVuXCI+e3snRXJyb3InIHwgcnB4VHJhbnNsYXRlfX06PC9zcGFuPnt7bWVzc2FnZSB8IHJweFRyYW5zbGF0ZX19XG48L3NwYW4+XG4iXX0=
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
import { Component, Input } from '@angular/core';
|
|
2
|
+
import { HtmlTemplatesHelper } from '../../util/helpers/html-templates.helper';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "@angular/common";
|
|
5
|
+
import * as i2 from "rpx-xui-translation";
|
|
6
|
+
const _c0 = ["*"];
|
|
7
|
+
function GovUkFieldsetComponent_legend_1_Template(rf, ctx) { if (rf & 1) {
|
|
8
|
+
i0.ɵɵelementStart(0, "legend");
|
|
9
|
+
i0.ɵɵtext(1);
|
|
10
|
+
i0.ɵɵpipe(2, "rpxTranslate");
|
|
11
|
+
i0.ɵɵelementEnd();
|
|
12
|
+
} if (rf & 2) {
|
|
13
|
+
const ctx_r0 = i0.ɵɵnextContext();
|
|
14
|
+
i0.ɵɵclassMap(ctx_r0.config.classes + " govuk-fieldset__legend");
|
|
15
|
+
i0.ɵɵadvance();
|
|
16
|
+
i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(2, 3, ctx_r0.config.legend), " ");
|
|
17
|
+
} }
|
|
18
|
+
function GovUkFieldsetComponent_legend_2_Template(rf, ctx) { if (rf & 1) {
|
|
19
|
+
i0.ɵɵelementStart(0, "legend")(1, "h1");
|
|
20
|
+
i0.ɵɵtext(2);
|
|
21
|
+
i0.ɵɵpipe(3, "rpxTranslate");
|
|
22
|
+
i0.ɵɵelementEnd()();
|
|
23
|
+
} if (rf & 2) {
|
|
24
|
+
const ctx_r0 = i0.ɵɵnextContext();
|
|
25
|
+
i0.ɵɵclassMap(ctx_r0.config.classes + " govuk-fieldset__legend");
|
|
26
|
+
i0.ɵɵadvance(2);
|
|
27
|
+
i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(3, 3, ctx_r0.config.legend));
|
|
28
|
+
} }
|
|
29
|
+
function GovUkFieldsetComponent_span_3_Template(rf, ctx) { if (rf & 1) {
|
|
30
|
+
i0.ɵɵelementStart(0, "span", 3);
|
|
31
|
+
i0.ɵɵtext(1);
|
|
32
|
+
i0.ɵɵpipe(2, "rpxTranslate");
|
|
33
|
+
i0.ɵɵelementEnd();
|
|
34
|
+
} if (rf & 2) {
|
|
35
|
+
const ctx_r0 = i0.ɵɵnextContext();
|
|
36
|
+
i0.ɵɵproperty("id", ctx_r0.config.id + "-hint");
|
|
37
|
+
i0.ɵɵadvance();
|
|
38
|
+
i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(2, 2, ctx_r0.config.hint), " ");
|
|
39
|
+
} }
|
|
40
|
+
/*
|
|
41
|
+
* Gov Uk Fieldset Component
|
|
42
|
+
* Used to wrap group fieldset elements
|
|
43
|
+
* it can conditionally display h1 tag
|
|
44
|
+
* @param config
|
|
45
|
+
* @param isHeading
|
|
46
|
+
* @param errorMessage - used for aria tag
|
|
47
|
+
* */
|
|
48
|
+
export class GovUkFieldsetComponent {
|
|
49
|
+
constructor() { }
|
|
50
|
+
setDescribedBy() {
|
|
51
|
+
return HtmlTemplatesHelper.setDescribedBy(this.errorMessage, this.config);
|
|
52
|
+
}
|
|
53
|
+
static { this.ɵfac = function GovUkFieldsetComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || GovUkFieldsetComponent)(); }; }
|
|
54
|
+
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: GovUkFieldsetComponent, selectors: [["xuilib-gov-uk-fieldset"]], inputs: { config: "config", errorMessage: "errorMessage" }, ngContentSelectors: _c0, decls: 5, vars: 4, consts: [[1, "govuk-fieldset"], [3, "class", 4, "ngIf"], ["class", "govuk-hint", 3, "id", 4, "ngIf"], [1, "govuk-hint", 3, "id"]], template: function GovUkFieldsetComponent_Template(rf, ctx) { if (rf & 1) {
|
|
55
|
+
i0.ɵɵprojectionDef();
|
|
56
|
+
i0.ɵɵelementStart(0, "fieldset", 0);
|
|
57
|
+
i0.ɵɵtemplate(1, GovUkFieldsetComponent_legend_1_Template, 3, 5, "legend", 1)(2, GovUkFieldsetComponent_legend_2_Template, 4, 5, "legend", 1)(3, GovUkFieldsetComponent_span_3_Template, 3, 4, "span", 2);
|
|
58
|
+
i0.ɵɵprojection(4);
|
|
59
|
+
i0.ɵɵelementEnd();
|
|
60
|
+
} if (rf & 2) {
|
|
61
|
+
i0.ɵɵattribute("aria-describedby", ctx.setDescribedBy());
|
|
62
|
+
i0.ɵɵadvance();
|
|
63
|
+
i0.ɵɵproperty("ngIf", !ctx.config.isPageHeading);
|
|
64
|
+
i0.ɵɵadvance();
|
|
65
|
+
i0.ɵɵproperty("ngIf", ctx.config.isPageHeading);
|
|
66
|
+
i0.ɵɵadvance();
|
|
67
|
+
i0.ɵɵproperty("ngIf", ctx.config.hint);
|
|
68
|
+
} }, dependencies: [i1.NgIf, i2.RpxTranslatePipe], encapsulation: 2 }); }
|
|
69
|
+
}
|
|
70
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(GovUkFieldsetComponent, [{
|
|
71
|
+
type: Component,
|
|
72
|
+
args: [{ selector: 'xuilib-gov-uk-fieldset', template: "<fieldset class=\"govuk-fieldset\" [attr.aria-describedby]=\"setDescribedBy()\">\n <legend [class]=\"config.classes + ' govuk-fieldset__legend'\" *ngIf=\"!config.isPageHeading\">\n {{config.legend | rpxTranslate}}\n </legend>\n\n <legend [class]=\"config.classes + ' govuk-fieldset__legend'\" *ngIf=\"config.isPageHeading\">\n <h1>{{config.legend | rpxTranslate}}</h1>\n </legend>\n\n <span [id]=\"config.id+'-hint'\" class=\"govuk-hint\" *ngIf=\"config.hint\">\n {{config.hint | rpxTranslate}}\n </span>\n <ng-content></ng-content>\n</fieldset>\n" }]
|
|
73
|
+
}], () => [], { config: [{
|
|
74
|
+
type: Input
|
|
75
|
+
}], errorMessage: [{
|
|
76
|
+
type: Input
|
|
77
|
+
}] }); })();
|
|
78
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(GovUkFieldsetComponent, { className: "GovUkFieldsetComponent", filePath: "lib/gov-ui/components/gov-uk-fieldset/gov-uk-fieldset.component.ts", lineNumber: 17 }); })();
|
|
79
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ292LXVrLWZpZWxkc2V0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2V4dWktY29tbW9uLWxpYi9zcmMvbGliL2dvdi11aS9jb21wb25lbnRzL2dvdi11ay1maWVsZHNldC9nb3YtdWstZmllbGRzZXQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZXh1aS1jb21tb24tbGliL3NyYy9saWIvZ292LXVpL2NvbXBvbmVudHMvZ292LXVrLWZpZWxkc2V0L2dvdi11ay1maWVsZHNldC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLEtBQUssRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUcvQyxPQUFPLEVBQUMsbUJBQW1CLEVBQUMsTUFBTSwwQ0FBMEMsQ0FBQzs7Ozs7O0lDRjNFLDhCQUEyRjtJQUN6RixZQUNGOztJQUFBLGlCQUFTOzs7SUFGRCxnRUFBb0Q7SUFDMUQsY0FDRjtJQURFLDJFQUNGOzs7SUFHRSxBQURGLDhCQUEwRixTQUNwRjtJQUFBLFlBQWdDOztJQUN0QyxBQURzQyxpQkFBSyxFQUNsQzs7O0lBRkQsZ0VBQW9EO0lBQ3RELGVBQWdDO0lBQWhDLGdFQUFnQzs7O0lBR3RDLCtCQUFzRTtJQUNwRSxZQUNGOztJQUFBLGlCQUFPOzs7SUFGRCwrQ0FBd0I7SUFDNUIsY0FDRjtJQURFLHlFQUNGOztBRFBGOzs7Ozs7O0lBT0k7QUFLSixNQUFNLE9BQU8sc0JBQXNCO0lBQ2pDLGdCQUFnQixDQUFDO0lBTVYsY0FBYztRQUNuQixPQUFPLG1CQUFtQixDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUM1RSxDQUFDO3VIQVRVLHNCQUFzQjtvRUFBdEIsc0JBQXNCOztZQ2hCbkMsbUNBQTRFO1lBUzFFLEFBSkEsQUFKQSw2RUFBMkYsZ0VBSUQsNERBSXBCO1lBR3RFLGtCQUF5QjtZQUMzQixpQkFBVzs7O1lBWnFELGNBQTJCO1lBQTNCLGdEQUEyQjtZQUkzQixjQUEwQjtZQUExQiwrQ0FBMEI7WUFJckMsY0FBaUI7WUFBakIsc0NBQWlCOzs7aUZET3pELHNCQUFzQjtjQUpsQyxTQUFTOzJCQUNFLHdCQUF3QjtvQkFLbEIsTUFBTTtrQkFBckIsS0FBSztZQUdVLFlBQVk7a0JBQTNCLEtBQUs7O2tGQUxLLHNCQUFzQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBJbnB1dH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBFcnJvck1lc3NhZ2VzTW9kZWwgfSBmcm9tICcuLi8uLi9tb2RlbHMnO1xuaW1wb3J0IHsgR292VWlDb25maWdNb2RlbCB9IGZyb20gJy4uLy4uL21vZGVscy9nb3YtdWktY29uZmlnLW1vZGVsJztcbmltcG9ydCB7SHRtbFRlbXBsYXRlc0hlbHBlcn0gZnJvbSAnLi4vLi4vdXRpbC9oZWxwZXJzL2h0bWwtdGVtcGxhdGVzLmhlbHBlcic7XG4vKlxuKiBHb3YgVWsgRmllbGRzZXQgQ29tcG9uZW50XG4qIFVzZWQgdG8gd3JhcCBncm91cCBmaWVsZHNldCBlbGVtZW50c1xuKiBpdCBjYW4gY29uZGl0aW9uYWxseSBkaXNwbGF5IGgxIHRhZ1xuKiBAcGFyYW0gY29uZmlnXG4qIEBwYXJhbSBpc0hlYWRpbmdcbiogQHBhcmFtIGVycm9yTWVzc2FnZSAtIHVzZWQgZm9yIGFyaWEgdGFnXG4qICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd4dWlsaWItZ292LXVrLWZpZWxkc2V0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2dvdi11ay1maWVsZHNldC5jb21wb25lbnQuaHRtbCdcbn0pXG5leHBvcnQgY2xhc3MgR292VWtGaWVsZHNldENvbXBvbmVudCB7XG4gIGNvbnN0cnVjdG9yKCkgeyB9XG4gIEBJbnB1dCgpIHB1YmxpYyBjb25maWc6IEdvdlVpQ29uZmlnTW9kZWw7XG4gIC8vIHtsZWdlbmQ6IHN0cmluZzsgY2xhc3Nlczogc3RyaW5nLCBpZDogc3RyaW5nLCBoaW50OiBzdHJpbmcsIGtleTogc3RyaW5nLCBpc1BhZ2VIZWFkaW5nOiBib29sZWFufTtcbiAgLy8gQElucHV0KCkgcHVibGljIGlzUGFnZUhlYWRpbmc6IGJvb2xlYW47XG4gIEBJbnB1dCgpIHB1YmxpYyBlcnJvck1lc3NhZ2U6IEVycm9yTWVzc2FnZXNNb2RlbDtcblxuICBwdWJsaWMgc2V0RGVzY3JpYmVkQnkoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gSHRtbFRlbXBsYXRlc0hlbHBlci5zZXREZXNjcmliZWRCeSh0aGlzLmVycm9yTWVzc2FnZSwgdGhpcy5jb25maWcpO1xuICB9XG59XG4iLCI8ZmllbGRzZXQgY2xhc3M9XCJnb3Z1ay1maWVsZHNldFwiIFthdHRyLmFyaWEtZGVzY3JpYmVkYnldPVwic2V0RGVzY3JpYmVkQnkoKVwiPlxuICA8bGVnZW5kIFtjbGFzc109XCJjb25maWcuY2xhc3NlcyArICcgZ292dWstZmllbGRzZXRfX2xlZ2VuZCdcIiAqbmdJZj1cIiFjb25maWcuaXNQYWdlSGVhZGluZ1wiPlxuICAgIHt7Y29uZmlnLmxlZ2VuZCB8IHJweFRyYW5zbGF0ZX19XG4gIDwvbGVnZW5kPlxuXG4gIDxsZWdlbmQgW2NsYXNzXT1cImNvbmZpZy5jbGFzc2VzICsgJyBnb3Z1ay1maWVsZHNldF9fbGVnZW5kJ1wiICpuZ0lmPVwiY29uZmlnLmlzUGFnZUhlYWRpbmdcIj5cbiAgICA8aDE+e3tjb25maWcubGVnZW5kIHwgcnB4VHJhbnNsYXRlfX08L2gxPlxuICA8L2xlZ2VuZD5cblxuICA8c3BhbiBbaWRdPVwiY29uZmlnLmlkKyctaGludCdcIiBjbGFzcz1cImdvdnVrLWhpbnRcIiAqbmdJZj1cImNvbmZpZy5oaW50XCI+XG4gICAge3tjb25maWcuaGludCB8IHJweFRyYW5zbGF0ZX19XG4gIDwvc3Bhbj5cbiAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuPC9maWVsZHNldD5cbiJdfQ==
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
import { Component, Input } from '@angular/core';
|
|
2
|
+
import { FormGroup } from '@angular/forms';
|
|
3
|
+
import { HtmlTemplatesHelper } from '../../util/helpers/html-templates.helper';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
import * as i1 from "@angular/common";
|
|
6
|
+
import * as i2 from "@angular/forms";
|
|
7
|
+
import * as i3 from "../gov-uk-label/gov-uk-label.component";
|
|
8
|
+
import * as i4 from "../gov-uk-error-message/gov-uk-error-message.component";
|
|
9
|
+
import * as i5 from "rpx-xui-translation";
|
|
10
|
+
const _c0 = a0 => ({ "govuk-form-group--error": a0 });
|
|
11
|
+
const _c1 = a0 => ({ "govuk-file-upload--error": a0 });
|
|
12
|
+
function GovUkFileUploadComponent_span_2_Template(rf, ctx) { if (rf & 1) {
|
|
13
|
+
i0.ɵɵelementStart(0, "span", 5);
|
|
14
|
+
i0.ɵɵtext(1);
|
|
15
|
+
i0.ɵɵpipe(2, "rpxTranslate");
|
|
16
|
+
i0.ɵɵelementEnd();
|
|
17
|
+
} if (rf & 2) {
|
|
18
|
+
const ctx_r0 = i0.ɵɵnextContext();
|
|
19
|
+
i0.ɵɵproperty("id", ctx_r0.config.id + "-hint");
|
|
20
|
+
i0.ɵɵadvance();
|
|
21
|
+
i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(2, 2, ctx_r0.config.hint), " ");
|
|
22
|
+
} }
|
|
23
|
+
function GovUkFileUploadComponent_input_4_Template(rf, ctx) { if (rf & 1) {
|
|
24
|
+
i0.ɵɵelement(0, "input", 6);
|
|
25
|
+
} if (rf & 2) {
|
|
26
|
+
const ctx_r0 = i0.ɵɵnextContext();
|
|
27
|
+
i0.ɵɵproperty("formControlName", ctx_r0.config.id)("ngClass", i0.ɵɵpureFunction1(5, _c1, ctx_r0.errorMessage == null ? null : ctx_r0.errorMessage.isInvalid))("id", ctx_r0.config.id)("name", ctx_r0.config.name);
|
|
28
|
+
i0.ɵɵattribute("aria-describedby", ctx_r0.setDescribedBy());
|
|
29
|
+
} }
|
|
30
|
+
/*
|
|
31
|
+
* Gov UK Input component
|
|
32
|
+
* Responsible for displaying input, hint and error messages
|
|
33
|
+
* @prop errorMessages - array of messages
|
|
34
|
+
* @prop focusOn - passing the FormGroup
|
|
35
|
+
* @prop config - adding configuration
|
|
36
|
+
* */
|
|
37
|
+
export class GovUkFileUploadComponent {
|
|
38
|
+
constructor() {
|
|
39
|
+
// { label: string, hint: string; name: string; id: string, type: string; isPageHeading: boolean, classes: string };
|
|
40
|
+
this.reloadInput = true;
|
|
41
|
+
}
|
|
42
|
+
ngOnInit() {
|
|
43
|
+
this.config.classes = 'govuk-label--m';
|
|
44
|
+
}
|
|
45
|
+
setDescribedBy() {
|
|
46
|
+
return HtmlTemplatesHelper.setDescribedBy(this.errorMessage, this.config);
|
|
47
|
+
}
|
|
48
|
+
static { this.ɵfac = function GovUkFileUploadComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || GovUkFileUploadComponent)(); }; }
|
|
49
|
+
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: GovUkFileUploadComponent, selectors: [["xuilib-gov-uk-file-upload"]], inputs: { errorMessage: "errorMessage", group: "group", config: "config" }, decls: 5, vars: 9, consts: [[1, "govuk-form-group", 3, "formGroup", "ngClass"], [3, "config"], ["class", "govuk-hint", 3, "id", 4, "ngIf"], [3, "config", "errorMessage"], ["class", "govuk-file-upload", "type", "file", 3, "formControlName", "ngClass", "id", "name", 4, "ngIf"], [1, "govuk-hint", 3, "id"], ["type", "file", 1, "govuk-file-upload", 3, "formControlName", "ngClass", "id", "name"]], template: function GovUkFileUploadComponent_Template(rf, ctx) { if (rf & 1) {
|
|
50
|
+
i0.ɵɵelementStart(0, "div", 0);
|
|
51
|
+
i0.ɵɵelement(1, "xuilib-gov-label", 1);
|
|
52
|
+
i0.ɵɵtemplate(2, GovUkFileUploadComponent_span_2_Template, 3, 4, "span", 2);
|
|
53
|
+
i0.ɵɵelement(3, "xuilib-gov-uk-error-message", 3);
|
|
54
|
+
i0.ɵɵtemplate(4, GovUkFileUploadComponent_input_4_Template, 1, 7, "input", 4);
|
|
55
|
+
i0.ɵɵelementEnd();
|
|
56
|
+
} if (rf & 2) {
|
|
57
|
+
i0.ɵɵproperty("formGroup", ctx.group)("ngClass", i0.ɵɵpureFunction1(7, _c0, ctx.errorMessage == null ? null : ctx.errorMessage.isInvalid));
|
|
58
|
+
i0.ɵɵadvance();
|
|
59
|
+
i0.ɵɵproperty("config", ctx.config);
|
|
60
|
+
i0.ɵɵadvance();
|
|
61
|
+
i0.ɵɵproperty("ngIf", ctx.config.hint);
|
|
62
|
+
i0.ɵɵadvance();
|
|
63
|
+
i0.ɵɵproperty("config", ctx.config)("errorMessage", ctx.errorMessage);
|
|
64
|
+
i0.ɵɵadvance();
|
|
65
|
+
i0.ɵɵproperty("ngIf", ctx.reloadInput);
|
|
66
|
+
} }, dependencies: [i1.NgClass, i1.NgIf, i2.DefaultValueAccessor, i2.NgControlStatus, i2.NgControlStatusGroup, i2.FormGroupDirective, i2.FormControlName, i3.GovUkLabelComponent, i4.GovUkErrorMessageComponent, i5.RpxTranslatePipe], encapsulation: 2 }); }
|
|
67
|
+
}
|
|
68
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(GovUkFileUploadComponent, [{
|
|
69
|
+
type: Component,
|
|
70
|
+
args: [{ selector: 'xuilib-gov-uk-file-upload', template: "<div class=\"govuk-form-group\" [formGroup]=\"group\"\n [ngClass]=\"{'govuk-form-group--error': errorMessage?.isInvalid}\">\n\n <xuilib-gov-label [config]=\"config\"></xuilib-gov-label>\n\n <span *ngIf=\"config.hint\" [id]=\"config.id +'-hint'\" class=\"govuk-hint\">\n {{config.hint | rpxTranslate}}\n </span>\n\n <xuilib-gov-uk-error-message [config]=\"config\" [errorMessage]=\"errorMessage\"></xuilib-gov-uk-error-message>\n\n <input class=\"govuk-file-upload\"\n *ngIf=\"reloadInput\"\n [formControlName]=\"config.id\"\n [ngClass]=\"{'govuk-file-upload--error': errorMessage?.isInvalid}\"\n [id]=\"config.id\" [name]=\"config.name\"\n [attr.aria-describedby]=\"setDescribedBy()\"\n type=\"file\">\n</div>\n" }]
|
|
71
|
+
}], () => [], { errorMessage: [{
|
|
72
|
+
type: Input
|
|
73
|
+
}], group: [{
|
|
74
|
+
type: Input
|
|
75
|
+
}], config: [{
|
|
76
|
+
type: Input
|
|
77
|
+
}] }); })();
|
|
78
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(GovUkFileUploadComponent, { className: "GovUkFileUploadComponent", filePath: "lib/gov-ui/components/gov-uk-file-upload/gov-uk-file-upload.component.ts", lineNumber: 17 }); })();
|
|
79
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ292LXVrLWZpbGUtdXBsb2FkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2V4dWktY29tbW9uLWxpYi9zcmMvbGliL2dvdi11aS9jb21wb25lbnRzL2dvdi11ay1maWxlLXVwbG9hZC9nb3YtdWstZmlsZS11cGxvYWQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZXh1aS1jb21tb24tbGliL3NyYy9saWIvZ292LXVpL2NvbXBvbmVudHMvZ292LXVrLWZpbGUtdXBsb2FkL2dvdi11ay1maWxlLXVwbG9hZC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLEtBQUssRUFBUyxNQUFNLGVBQWUsQ0FBQztBQUN2RCxPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFHekMsT0FBTyxFQUFDLG1CQUFtQixFQUFDLE1BQU0sMENBQTBDLENBQUM7Ozs7Ozs7Ozs7SUNDdkUsK0JBQXVFO0lBQ25FLFlBQ0o7O0lBQUEsaUJBQU87OztJQUZtQiwrQ0FBeUI7SUFDL0MsY0FDSjtJQURJLHlFQUNKOzs7SUFJQSwyQkFNbUI7OztJQUZLLEFBQWpCLEFBREEsQUFEQSxrREFBNkIsMkdBQ29DLHdCQUNqRCw0QkFBcUI7OztBRFZsRDs7Ozs7O0lBTUk7QUFLSixNQUFNLE9BQU8sd0JBQXdCO0lBQ25DO1FBSUEsb0hBQW9IO1FBRTdHLGdCQUFXLEdBQUcsSUFBSSxDQUFDO0lBTlYsQ0FBQztJQVFWLFFBQVE7UUFDYixJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sR0FBRyxnQkFBZ0IsQ0FBQztJQUN6QyxDQUFDO0lBRU0sY0FBYztRQUNuQixPQUFPLG1CQUFtQixDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUM1RSxDQUFDO3lIQWZVLHdCQUF3QjtvRUFBeEIsd0JBQXdCO1lDaEJyQyw4QkFDMEU7WUFFcEUsc0NBQXVEO1lBRXZELDJFQUF1RTtZQUl2RSxpREFBMkc7WUFFM0csNkVBTW1CO1lBQ3pCLGlCQUFNOztZQWpCRyxBQURxQixxQ0FBbUIscUdBQ3dCO1lBRWpELGNBQWlCO1lBQWpCLG1DQUFpQjtZQUU1QixjQUFpQjtZQUFqQixzQ0FBaUI7WUFJSyxjQUFpQjtZQUFDLEFBQWxCLG1DQUFpQixrQ0FBOEI7WUFHcEUsY0FBaUI7WUFBakIsc0NBQWlCOzs7aUZESWxCLHdCQUF3QjtjQUpwQyxTQUFTOzJCQUNFLDJCQUEyQjtvQkFLckIsWUFBWTtrQkFBM0IsS0FBSztZQUNVLEtBQUs7a0JBQXBCLEtBQUs7WUFDVSxNQUFNO2tCQUFyQixLQUFLOztrRkFKSyx3QkFBd0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgSW5wdXQsIE9uSW5pdH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0Zvcm1Hcm91cH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgRXJyb3JNZXNzYWdlc01vZGVsIH0gZnJvbSAnLi4vLi4vbW9kZWxzJztcbmltcG9ydCB7IEdvdlVpQ29uZmlnTW9kZWwgfSBmcm9tICcuLi8uLi9tb2RlbHMvZ292LXVpLWNvbmZpZy1tb2RlbCc7XG5pbXBvcnQge0h0bWxUZW1wbGF0ZXNIZWxwZXJ9IGZyb20gJy4uLy4uL3V0aWwvaGVscGVycy9odG1sLXRlbXBsYXRlcy5oZWxwZXInO1xuLypcbiogR292IFVLIElucHV0IGNvbXBvbmVudFxuKiBSZXNwb25zaWJsZSBmb3IgZGlzcGxheWluZyBpbnB1dCwgaGludCBhbmQgZXJyb3IgbWVzc2FnZXNcbiogQHByb3AgZXJyb3JNZXNzYWdlcyAtIGFycmF5IG9mIG1lc3NhZ2VzXG4qIEBwcm9wIGZvY3VzT24gLSBwYXNzaW5nIHRoZSBGb3JtR3JvdXBcbiogQHByb3AgY29uZmlnIC0gYWRkaW5nIGNvbmZpZ3VyYXRpb25cbiogKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3h1aWxpYi1nb3YtdWstZmlsZS11cGxvYWQnLFxuICB0ZW1wbGF0ZVVybDogJy4vZ292LXVrLWZpbGUtdXBsb2FkLmNvbXBvbmVudC5odG1sJ1xufSlcbmV4cG9ydCBjbGFzcyBHb3ZVa0ZpbGVVcGxvYWRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBjb25zdHJ1Y3RvcigpIHsgfVxuICBASW5wdXQoKSBwdWJsaWMgZXJyb3JNZXNzYWdlOiBFcnJvck1lc3NhZ2VzTW9kZWw7XG4gIEBJbnB1dCgpIHB1YmxpYyBncm91cDogRm9ybUdyb3VwO1xuICBASW5wdXQoKSBwdWJsaWMgY29uZmlnOiBHb3ZVaUNvbmZpZ01vZGVsO1xuICAvLyB7IGxhYmVsOiBzdHJpbmcsIGhpbnQ6IHN0cmluZzsgbmFtZTogc3RyaW5nOyBpZDogc3RyaW5nLCB0eXBlOiBzdHJpbmc7IGlzUGFnZUhlYWRpbmc6IGJvb2xlYW4sIGNsYXNzZXM6IHN0cmluZyB9O1xuXG4gIHB1YmxpYyByZWxvYWRJbnB1dCA9IHRydWU7XG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuY29uZmlnLmNsYXNzZXMgPSAnZ292dWstbGFiZWwtLW0nO1xuICB9XG5cbiAgcHVibGljIHNldERlc2NyaWJlZEJ5KCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIEh0bWxUZW1wbGF0ZXNIZWxwZXIuc2V0RGVzY3JpYmVkQnkodGhpcy5lcnJvck1lc3NhZ2UsIHRoaXMuY29uZmlnKTtcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImdvdnVrLWZvcm0tZ3JvdXBcIiBbZm9ybUdyb3VwXT1cImdyb3VwXCJcbiAgICAgICAgIFtuZ0NsYXNzXT1cInsnZ292dWstZm9ybS1ncm91cC0tZXJyb3InOiBlcnJvck1lc3NhZ2U/LmlzSW52YWxpZH1cIj5cblxuICAgICAgPHh1aWxpYi1nb3YtbGFiZWwgW2NvbmZpZ109XCJjb25maWdcIj48L3h1aWxpYi1nb3YtbGFiZWw+XG5cbiAgICAgIDxzcGFuICpuZ0lmPVwiY29uZmlnLmhpbnRcIiBbaWRdPVwiY29uZmlnLmlkICsnLWhpbnQnXCIgY2xhc3M9XCJnb3Z1ay1oaW50XCI+XG4gICAgICAgICAge3tjb25maWcuaGludCB8IHJweFRyYW5zbGF0ZX19XG4gICAgICA8L3NwYW4+XG5cbiAgICAgIDx4dWlsaWItZ292LXVrLWVycm9yLW1lc3NhZ2UgW2NvbmZpZ109XCJjb25maWdcIiBbZXJyb3JNZXNzYWdlXT1cImVycm9yTWVzc2FnZVwiPjwveHVpbGliLWdvdi11ay1lcnJvci1tZXNzYWdlPlxuXG4gICAgICA8aW5wdXQgY2xhc3M9XCJnb3Z1ay1maWxlLXVwbG9hZFwiXG4gICAgICAgICAgICAgKm5nSWY9XCJyZWxvYWRJbnB1dFwiXG4gICAgICAgICAgICAgW2Zvcm1Db250cm9sTmFtZV09XCJjb25maWcuaWRcIlxuICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInsnZ292dWstZmlsZS11cGxvYWQtLWVycm9yJzogZXJyb3JNZXNzYWdlPy5pc0ludmFsaWR9XCJcbiAgICAgICAgICAgICBbaWRdPVwiY29uZmlnLmlkXCIgW25hbWVdPVwiY29uZmlnLm5hbWVcIlxuICAgICAgICAgICAgIFthdHRyLmFyaWEtZGVzY3JpYmVkYnldPVwic2V0RGVzY3JpYmVkQnkoKVwiXG4gICAgICAgICAgICAgdHlwZT1cImZpbGVcIj5cbjwvZGl2PlxuIl19
|