govuk_publishing_components 60.0.2 → 60.2.0
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.
- checksums.yaml +4 -4
- data/README.md +2 -0
- data/app/assets/javascripts/govuk_publishing_components/analytics-ga4/ga4-page-views.js +11 -1
- data/app/assets/javascripts/govuk_publishing_components/components/feedback.js +0 -14
- data/app/assets/javascripts/govuk_publishing_components/vendor/lux/lux-reporter.js +570 -595
- data/app/assets/stylesheets/govuk_publishing_components/components/govspeak/_footnotes.scss +5 -0
- data/app/views/govuk_publishing_components/audit/_applications.html.erb +13 -13
- data/app/views/govuk_publishing_components/audit/_component_contents.html.erb +2 -2
- data/app/views/govuk_publishing_components/audit/_components.html.erb +17 -19
- data/app/views/govuk_publishing_components/audit/_items_in_applications.html.erb +3 -3
- data/app/views/govuk_publishing_components/audit/show.html.erb +5 -6
- data/app/views/govuk_publishing_components/component_guide/component_doc/_call.html.erb +2 -2
- data/app/views/govuk_publishing_components/component_guide/example.html.erb +4 -5
- data/app/views/govuk_publishing_components/component_guide/index.html.erb +9 -10
- data/app/views/govuk_publishing_components/component_guide/preview.html.erb +1 -1
- data/app/views/govuk_publishing_components/component_guide/show.html.erb +9 -10
- data/app/views/govuk_publishing_components/components/_accordion.html.erb +5 -5
- data/app/views/govuk_publishing_components/components/_action_link.html.erb +2 -2
- data/app/views/govuk_publishing_components/components/_add_another.html.erb +3 -3
- data/app/views/govuk_publishing_components/components/_attachment.html.erb +4 -4
- data/app/views/govuk_publishing_components/components/_back_link.html.erb +1 -1
- data/app/views/govuk_publishing_components/components/_back_to_top_link.html.erb +1 -1
- data/app/views/govuk_publishing_components/components/_big_number.html.erb +1 -1
- data/app/views/govuk_publishing_components/components/_cards.html.erb +4 -4
- data/app/views/govuk_publishing_components/components/_character_count.html.erb +1 -1
- data/app/views/govuk_publishing_components/components/_checkboxes.html.erb +3 -3
- data/app/views/govuk_publishing_components/components/_contents_list.html.erb +6 -9
- data/app/views/govuk_publishing_components/components/_contents_list_with_body.html.erb +2 -2
- data/app/views/govuk_publishing_components/components/_contextual_breadcrumbs.html.erb +2 -2
- data/app/views/govuk_publishing_components/components/_contextual_footer.html.erb +1 -1
- data/app/views/govuk_publishing_components/components/_contextual_sidebar.html.erb +6 -6
- data/app/views/govuk_publishing_components/components/_cookie_banner.html.erb +6 -6
- data/app/views/govuk_publishing_components/components/_date_input.html.erb +5 -5
- data/app/views/govuk_publishing_components/components/_details.html.erb +1 -1
- data/app/views/govuk_publishing_components/components/_devolved_nations.html.erb +1 -1
- data/app/views/govuk_publishing_components/components/_document_list.html.erb +8 -8
- data/app/views/govuk_publishing_components/components/_emergency_banner.html.erb +3 -3
- data/app/views/govuk_publishing_components/components/_feedback.html.erb +2 -2
- data/app/views/govuk_publishing_components/components/_fieldset.html.erb +3 -4
- data/app/views/govuk_publishing_components/components/_figure.html.erb +1 -1
- data/app/views/govuk_publishing_components/components/_file_upload.html.erb +5 -5
- data/app/views/govuk_publishing_components/components/_glance_metric.html.erb +1 -1
- data/app/views/govuk_publishing_components/components/_global_banner.html.erb +2 -2
- data/app/views/govuk_publishing_components/components/_google_tag_manager_script.html.erb +7 -7
- data/app/views/govuk_publishing_components/components/_govspeak_html_publication.html.erb +1 -1
- data/app/views/govuk_publishing_components/components/_image_card.html.erb +4 -5
- data/app/views/govuk_publishing_components/components/_input.html.erb +14 -14
- data/app/views/govuk_publishing_components/components/_intervention.html.erb +4 -6
- data/app/views/govuk_publishing_components/components/_label.html.erb +1 -1
- data/app/views/govuk_publishing_components/components/_layout_footer.html.erb +6 -9
- data/app/views/govuk_publishing_components/components/_layout_for_admin.html.erb +2 -2
- data/app/views/govuk_publishing_components/components/_layout_for_public.html.erb +15 -15
- data/app/views/govuk_publishing_components/components/_layout_super_navigation_header.html.erb +16 -19
- data/app/views/govuk_publishing_components/components/_machine_readable_metadata.html.erb +18 -17
- data/app/views/govuk_publishing_components/components/_metadata.html.erb +4 -4
- data/app/views/govuk_publishing_components/components/_notice.html.erb +1 -1
- data/app/views/govuk_publishing_components/components/_option_select.html.erb +8 -9
- data/app/views/govuk_publishing_components/components/_organisation_logo.html.erb +1 -1
- data/app/views/govuk_publishing_components/components/_password_input.html.erb +17 -17
- data/app/views/govuk_publishing_components/components/_phase_banner.html.erb +2 -3
- data/app/views/govuk_publishing_components/components/_previous_and_next_navigation.html.erb +6 -8
- data/app/views/govuk_publishing_components/components/_print_link.html.erb +3 -3
- data/app/views/govuk_publishing_components/components/_published_dates.html.erb +6 -7
- data/app/views/govuk_publishing_components/components/_radio.html.erb +7 -8
- data/app/views/govuk_publishing_components/components/_related_navigation.html.erb +4 -6
- data/app/views/govuk_publishing_components/components/_reorderable_list.html.erb +7 -7
- data/app/views/govuk_publishing_components/components/_search_with_autocomplete.html.erb +2 -2
- data/app/views/govuk_publishing_components/components/_secondary_navigation.html.erb +1 -1
- data/app/views/govuk_publishing_components/components/_select.html.erb +1 -1
- data/app/views/govuk_publishing_components/components/_select_with_search.html.erb +1 -1
- data/app/views/govuk_publishing_components/components/_share_links.html.erb +18 -18
- data/app/views/govuk_publishing_components/components/_signup_link.html.erb +3 -3
- data/app/views/govuk_publishing_components/components/_single_page_notification_button.html.erb +3 -3
- data/app/views/govuk_publishing_components/components/_skip_link.html.erb +2 -3
- data/app/views/govuk_publishing_components/components/_step_by_step_nav.html.erb +9 -10
- data/app/views/govuk_publishing_components/components/_step_by_step_nav_header.html.erb +2 -3
- data/app/views/govuk_publishing_components/components/_step_by_step_nav_related.html.erb +5 -9
- data/app/views/govuk_publishing_components/components/_subscription_links.html.erb +8 -8
- data/app/views/govuk_publishing_components/components/_summary_list.html.erb +1 -1
- data/app/views/govuk_publishing_components/components/_table.html.erb +3 -3
- data/app/views/govuk_publishing_components/components/_tag.html.erb +1 -1
- data/app/views/govuk_publishing_components/components/_textarea.html.erb +4 -4
- data/app/views/govuk_publishing_components/components/_translation_nav.html.erb +1 -2
- data/app/views/govuk_publishing_components/components/_warning_text.html.erb +2 -2
- data/app/views/govuk_publishing_components/components/attachment/_thumbnail_document.html.erb +1 -1
- data/app/views/govuk_publishing_components/components/attachment/_thumbnail_external.html.erb +1 -1
- data/app/views/govuk_publishing_components/components/attachment/_thumbnail_generic.html.erb +2 -2
- data/app/views/govuk_publishing_components/components/attachment/_thumbnail_html.html.erb +1 -1
- data/app/views/govuk_publishing_components/components/attachment/_thumbnail_pdf.html.erb +1 -1
- data/app/views/govuk_publishing_components/components/attachment/_thumbnail_spreadsheet.html.erb +3 -3
- data/app/views/govuk_publishing_components/components/cross_service_header/_one_login_header.html.erb +10 -10
- data/app/views/govuk_publishing_components/components/docs/govspeak.yml +7 -3
- data/app/views/govuk_publishing_components/components/feedback/_problem_form.html.erb +10 -10
- data/app/views/govuk_publishing_components/components/feedback/_yes_no_banner.html.erb +6 -8
- data/app/views/govuk_publishing_components/components/govuk_logo/_govuk_logo_crown_only.html.erb +1 -2
- data/app/views/govuk_publishing_components/components/layout_for_public/_account-layout.html.erb +2 -2
- data/app/views/govuk_publishing_components/components/layout_for_public/_account-navigation.html.erb +2 -2
- data/app/views/govuk_publishing_components/components/layout_header/_header_logo.html.erb +1 -1
- data/app/views/govuk_publishing_components/components/layout_header/_navigation_items.html.erb +2 -3
- data/app/views/govuk_publishing_components/components/metadata/_sentence.html.erb +1 -1
- data/app/views/govuk_publishing_components/components/related_navigation/_section.html.erb +4 -4
- data/app/views/govuk_publishing_components/components/search/_search_icon.html.erb +2 -3
- data/app/views/layouts/govuk_publishing_components/application.html.erb +3 -3
- data/lib/govuk_publishing_components/presenters/component_wrapper_helper.rb +1 -1
- data/lib/govuk_publishing_components/presenters/heading_helper.rb +3 -3
- data/lib/govuk_publishing_components/presenters/meta_tags.rb +1 -0
- data/lib/govuk_publishing_components/version.rb +1 -1
- data/node_modules/govuk-frontend/dist/govuk/all.bundle.js +99 -73
- data/node_modules/govuk-frontend/dist/govuk/all.bundle.js.map +1 -1
- data/node_modules/govuk-frontend/dist/govuk/all.bundle.mjs +99 -73
- data/node_modules/govuk-frontend/dist/govuk/all.bundle.mjs.map +1 -1
- data/node_modules/govuk-frontend/dist/govuk/common/configuration.mjs +29 -2
- data/node_modules/govuk-frontend/dist/govuk/common/configuration.mjs.map +1 -1
- data/node_modules/govuk-frontend/dist/govuk/common/govuk-frontend-version.mjs +1 -1
- data/node_modules/govuk-frontend/dist/govuk/common/index.mjs +5 -11
- data/node_modules/govuk-frontend/dist/govuk/common/index.mjs.map +1 -1
- data/node_modules/govuk-frontend/dist/govuk/component.mjs.map +1 -1
- data/node_modules/govuk-frontend/dist/govuk/components/accordion/accordion.bundle.js +13 -11
- data/node_modules/govuk-frontend/dist/govuk/components/accordion/accordion.bundle.js.map +1 -1
- data/node_modules/govuk-frontend/dist/govuk/components/accordion/accordion.bundle.mjs +13 -11
- data/node_modules/govuk-frontend/dist/govuk/components/accordion/accordion.bundle.mjs.map +1 -1
- data/node_modules/govuk-frontend/dist/govuk/components/accordion/accordion.mjs +4 -4
- data/node_modules/govuk-frontend/dist/govuk/components/accordion/accordion.mjs.map +1 -1
- data/node_modules/govuk-frontend/dist/govuk/components/accordion/fixtures.json +102 -97
- data/node_modules/govuk-frontend/dist/govuk/components/back-link/fixtures.json +21 -32
- data/node_modules/govuk-frontend/dist/govuk/components/breadcrumbs/fixtures.json +25 -45
- data/node_modules/govuk-frontend/dist/govuk/components/breadcrumbs/template-default.html +6 -0
- data/node_modules/govuk-frontend/dist/govuk/components/button/button.bundle.js +7 -5
- data/node_modules/govuk-frontend/dist/govuk/components/button/button.bundle.js.map +1 -1
- data/node_modules/govuk-frontend/dist/govuk/components/button/button.bundle.mjs +7 -5
- data/node_modules/govuk-frontend/dist/govuk/components/button/button.bundle.mjs.map +1 -1
- data/node_modules/govuk-frontend/dist/govuk/components/button/button.mjs.map +1 -1
- data/node_modules/govuk-frontend/dist/govuk/components/button/fixtures.json +66 -210
- data/node_modules/govuk-frontend/dist/govuk/components/character-count/character-count.bundle.js +10 -8
- data/node_modules/govuk-frontend/dist/govuk/components/character-count/character-count.bundle.js.map +1 -1
- data/node_modules/govuk-frontend/dist/govuk/components/character-count/character-count.bundle.mjs +10 -8
- data/node_modules/govuk-frontend/dist/govuk/components/character-count/character-count.bundle.mjs.map +1 -1
- data/node_modules/govuk-frontend/dist/govuk/components/character-count/character-count.mjs +1 -1
- data/node_modules/govuk-frontend/dist/govuk/components/character-count/character-count.mjs.map +1 -1
- data/node_modules/govuk-frontend/dist/govuk/components/character-count/fixtures.json +72 -86
- data/node_modules/govuk-frontend/dist/govuk/components/checkboxes/checkboxes.bundle.js +10 -5
- data/node_modules/govuk-frontend/dist/govuk/components/checkboxes/checkboxes.bundle.js.map +1 -1
- data/node_modules/govuk-frontend/dist/govuk/components/checkboxes/checkboxes.bundle.mjs +10 -5
- data/node_modules/govuk-frontend/dist/govuk/components/checkboxes/checkboxes.bundle.mjs.map +1 -1
- data/node_modules/govuk-frontend/dist/govuk/components/checkboxes/checkboxes.mjs.map +1 -1
- data/node_modules/govuk-frontend/dist/govuk/components/checkboxes/fixtures.json +305 -464
- data/node_modules/govuk-frontend/dist/govuk/components/checkboxes/template-default.html +24 -19
- data/node_modules/govuk-frontend/dist/govuk/components/checkboxes/template-with-divider-and-none.html +2 -4
- data/node_modules/govuk-frontend/dist/govuk/components/checkboxes/template-with-divider-none-and-conditional-items.html +2 -4
- data/node_modules/govuk-frontend/dist/govuk/components/checkboxes/template-with-error-message.html +12 -3
- data/node_modules/govuk-frontend/dist/govuk/components/checkboxes/{template-with-fieldset-and-error-message.html → template-with-hint.html} +5 -5
- data/node_modules/govuk-frontend/dist/govuk/components/checkboxes/template-with-hints-on-items.html +2 -4
- data/node_modules/govuk-frontend/dist/govuk/components/checkboxes/template-with-pre-checked-values.html +36 -27
- data/node_modules/govuk-frontend/dist/govuk/components/checkboxes/template-with-very-long-option-text.html +2 -5
- data/node_modules/govuk-frontend/dist/govuk/components/cookie-banner/fixtures.json +115 -79
- data/node_modules/govuk-frontend/dist/govuk/components/date-input/fixtures.json +147 -159
- data/node_modules/govuk-frontend/dist/govuk/components/date-input/template-default.html +30 -22
- data/node_modules/govuk-frontend/dist/govuk/components/details/fixtures.json +22 -22
- data/node_modules/govuk-frontend/dist/govuk/components/error-message/fixtures.json +10 -10
- data/node_modules/govuk-frontend/dist/govuk/components/error-summary/error-summary.bundle.js +8 -12
- data/node_modules/govuk-frontend/dist/govuk/components/error-summary/error-summary.bundle.js.map +1 -1
- data/node_modules/govuk-frontend/dist/govuk/components/error-summary/error-summary.bundle.mjs +8 -12
- data/node_modules/govuk-frontend/dist/govuk/components/error-summary/error-summary.bundle.mjs.map +1 -1
- data/node_modules/govuk-frontend/dist/govuk/components/error-summary/error-summary.mjs +2 -2
- data/node_modules/govuk-frontend/dist/govuk/components/error-summary/error-summary.mjs.map +1 -1
- data/node_modules/govuk-frontend/dist/govuk/components/error-summary/fixtures.json +21 -21
- data/node_modules/govuk-frontend/dist/govuk/components/exit-this-page/exit-this-page.bundle.js +9 -7
- data/node_modules/govuk-frontend/dist/govuk/components/exit-this-page/exit-this-page.bundle.js.map +1 -1
- data/node_modules/govuk-frontend/dist/govuk/components/exit-this-page/exit-this-page.bundle.mjs +9 -7
- data/node_modules/govuk-frontend/dist/govuk/components/exit-this-page/exit-this-page.bundle.mjs.map +1 -1
- data/node_modules/govuk-frontend/dist/govuk/components/exit-this-page/exit-this-page.mjs.map +1 -1
- data/node_modules/govuk-frontend/dist/govuk/components/exit-this-page/fixtures.json +19 -19
- data/node_modules/govuk-frontend/dist/govuk/components/fieldset/fixtures.json +19 -19
- data/node_modules/govuk-frontend/dist/govuk/components/file-upload/file-upload.bundle.js +10 -8
- data/node_modules/govuk-frontend/dist/govuk/components/file-upload/file-upload.bundle.js.map +1 -1
- data/node_modules/govuk-frontend/dist/govuk/components/file-upload/file-upload.bundle.mjs +10 -8
- data/node_modules/govuk-frontend/dist/govuk/components/file-upload/file-upload.bundle.mjs.map +1 -1
- data/node_modules/govuk-frontend/dist/govuk/components/file-upload/file-upload.mjs +1 -1
- data/node_modules/govuk-frontend/dist/govuk/components/file-upload/file-upload.mjs.map +1 -1
- data/node_modules/govuk-frontend/dist/govuk/components/file-upload/fixtures.json +99 -150
- data/node_modules/govuk-frontend/dist/govuk/components/footer/fixtures.json +53 -64
- data/node_modules/govuk-frontend/dist/govuk/components/header/_index.scss +10 -4
- data/node_modules/govuk-frontend/dist/govuk/components/header/_index.scss.map +1 -1
- data/node_modules/govuk-frontend/dist/govuk/components/header/fixtures.json +155 -103
- data/node_modules/govuk-frontend/dist/govuk/components/header/header.bundle.js +12 -6
- data/node_modules/govuk-frontend/dist/govuk/components/header/header.bundle.js.map +1 -1
- data/node_modules/govuk-frontend/dist/govuk/components/header/header.bundle.mjs +12 -6
- data/node_modules/govuk-frontend/dist/govuk/components/header/header.bundle.mjs.map +1 -1
- data/node_modules/govuk-frontend/dist/govuk/components/header/header.mjs +1 -0
- data/node_modules/govuk-frontend/dist/govuk/components/header/header.mjs.map +1 -1
- data/node_modules/govuk-frontend/dist/govuk/components/header/template-full-width-with-navigation.html +0 -1
- data/node_modules/govuk-frontend/dist/govuk/components/header/template-full-width.html +0 -1
- data/node_modules/govuk-frontend/dist/govuk/components/header/template-navigation-item-with-html.html +0 -3
- data/node_modules/govuk-frontend/dist/govuk/components/header/template-navigation-item-with-text-without-link.html +0 -3
- data/node_modules/govuk-frontend/dist/govuk/components/header/template-with-full-width-border.html +0 -1
- data/node_modules/govuk-frontend/dist/govuk/components/hint/fixtures.json +7 -7
- data/node_modules/govuk-frontend/dist/govuk/components/input/fixtures.json +158 -179
- data/node_modules/govuk-frontend/dist/govuk/components/inset-text/fixtures.json +7 -7
- data/node_modules/govuk-frontend/dist/govuk/components/label/fixtures.json +18 -18
- data/node_modules/govuk-frontend/dist/govuk/components/notification-banner/fixtures.json +74 -108
- data/node_modules/govuk-frontend/dist/govuk/components/notification-banner/notification-banner.bundle.js +7 -5
- data/node_modules/govuk-frontend/dist/govuk/components/notification-banner/notification-banner.bundle.js.map +1 -1
- data/node_modules/govuk-frontend/dist/govuk/components/notification-banner/notification-banner.bundle.mjs +7 -5
- data/node_modules/govuk-frontend/dist/govuk/components/notification-banner/notification-banner.bundle.mjs.map +1 -1
- data/node_modules/govuk-frontend/dist/govuk/components/notification-banner/notification-banner.mjs.map +1 -1
- data/node_modules/govuk-frontend/dist/govuk/components/notification-banner/template-with-text-as-html.html +7 -1
- data/node_modules/govuk-frontend/dist/govuk/components/pagination/_index.scss +4 -0
- data/node_modules/govuk-frontend/dist/govuk/components/pagination/_index.scss.map +1 -1
- data/node_modules/govuk-frontend/dist/govuk/components/pagination/fixtures.json +80 -98
- data/node_modules/govuk-frontend/dist/govuk/components/pagination/macro-options.json +4 -4
- data/node_modules/govuk-frontend/dist/govuk/components/panel/fixtures.json +22 -22
- data/node_modules/govuk-frontend/dist/govuk/components/password-input/fixtures.json +53 -48
- data/node_modules/govuk-frontend/dist/govuk/components/password-input/password-input.bundle.js +9 -7
- data/node_modules/govuk-frontend/dist/govuk/components/password-input/password-input.bundle.js.map +1 -1
- data/node_modules/govuk-frontend/dist/govuk/components/password-input/password-input.bundle.mjs +9 -7
- data/node_modules/govuk-frontend/dist/govuk/components/password-input/password-input.bundle.mjs.map +1 -1
- data/node_modules/govuk-frontend/dist/govuk/components/password-input/password-input.mjs.map +1 -1
- data/node_modules/govuk-frontend/dist/govuk/components/phase-banner/fixtures.json +8 -8
- data/node_modules/govuk-frontend/dist/govuk/components/radios/fixtures.json +213 -328
- data/node_modules/govuk-frontend/dist/govuk/components/radios/radios.bundle.js +10 -5
- data/node_modules/govuk-frontend/dist/govuk/components/radios/radios.bundle.js.map +1 -1
- data/node_modules/govuk-frontend/dist/govuk/components/radios/radios.bundle.mjs +10 -5
- data/node_modules/govuk-frontend/dist/govuk/components/radios/radios.bundle.mjs.map +1 -1
- data/node_modules/govuk-frontend/dist/govuk/components/radios/radios.mjs.map +1 -1
- data/node_modules/govuk-frontend/dist/govuk/components/radios/template-default.html +18 -16
- data/node_modules/govuk-frontend/dist/govuk/components/radios/template-with-hint.html +24 -0
- data/node_modules/govuk-frontend/dist/govuk/components/select/fixtures.json +99 -115
- data/node_modules/govuk-frontend/dist/govuk/components/service-navigation/_index.scss +72 -5
- data/node_modules/govuk-frontend/dist/govuk/components/service-navigation/_index.scss.map +1 -1
- data/node_modules/govuk-frontend/dist/govuk/components/service-navigation/fixtures.json +228 -62
- data/node_modules/govuk-frontend/dist/govuk/components/service-navigation/macro-options.json +6 -0
- data/node_modules/govuk-frontend/dist/govuk/components/service-navigation/service-navigation.bundle.js +11 -6
- data/node_modules/govuk-frontend/dist/govuk/components/service-navigation/service-navigation.bundle.js.map +1 -1
- data/node_modules/govuk-frontend/dist/govuk/components/service-navigation/service-navigation.bundle.mjs +11 -6
- data/node_modules/govuk-frontend/dist/govuk/components/service-navigation/service-navigation.bundle.mjs.map +1 -1
- data/node_modules/govuk-frontend/dist/govuk/components/service-navigation/service-navigation.mjs.map +1 -1
- data/node_modules/govuk-frontend/dist/govuk/components/service-navigation/{template-with-navigation-with-an-active-item.html → template-inverse.html} +7 -2
- data/node_modules/govuk-frontend/dist/govuk/components/service-navigation/template-with-a-single-navigation-item-and-collapsenavigationonmobile-set-to-true.html +38 -0
- data/node_modules/govuk-frontend/dist/govuk/components/service-navigation/template-with-a-single-navigation-item.html +35 -0
- data/node_modules/govuk-frontend/dist/govuk/components/service-navigation/template-with-collapsenavigationonmobile-set-to-false.html +60 -0
- data/node_modules/govuk-frontend/dist/govuk/components/service-navigation/template.njk +3 -0
- data/node_modules/govuk-frontend/dist/govuk/components/skip-link/_index.scss +1 -2
- data/node_modules/govuk-frontend/dist/govuk/components/skip-link/_index.scss.map +1 -1
- data/node_modules/govuk-frontend/dist/govuk/components/skip-link/fixtures.json +10 -10
- data/node_modules/govuk-frontend/dist/govuk/components/skip-link/skip-link.bundle.js +12 -19
- data/node_modules/govuk-frontend/dist/govuk/components/skip-link/skip-link.bundle.js.map +1 -1
- data/node_modules/govuk-frontend/dist/govuk/components/skip-link/skip-link.bundle.mjs +12 -19
- data/node_modules/govuk-frontend/dist/govuk/components/skip-link/skip-link.bundle.mjs.map +1 -1
- data/node_modules/govuk-frontend/dist/govuk/components/skip-link/skip-link.mjs +3 -9
- data/node_modules/govuk-frontend/dist/govuk/components/skip-link/skip-link.mjs.map +1 -1
- data/node_modules/govuk-frontend/dist/govuk/components/summary-list/fixtures.json +282 -518
- data/node_modules/govuk-frontend/dist/govuk/components/table/fixtures.json +75 -75
- data/node_modules/govuk-frontend/dist/govuk/components/tabs/fixtures.json +44 -39
- data/node_modules/govuk-frontend/dist/govuk/components/tabs/tabs.bundle.js +13 -14
- data/node_modules/govuk-frontend/dist/govuk/components/tabs/tabs.bundle.js.map +1 -1
- data/node_modules/govuk-frontend/dist/govuk/components/tabs/tabs.bundle.mjs +13 -14
- data/node_modules/govuk-frontend/dist/govuk/components/tabs/tabs.bundle.mjs.map +1 -1
- data/node_modules/govuk-frontend/dist/govuk/components/tabs/tabs.mjs +3 -3
- data/node_modules/govuk-frontend/dist/govuk/components/tabs/tabs.mjs.map +1 -1
- data/node_modules/govuk-frontend/dist/govuk/components/tag/fixtures.json +14 -26
- data/node_modules/govuk-frontend/dist/govuk/components/task-list/fixtures.json +14 -71
- data/node_modules/govuk-frontend/dist/govuk/components/textarea/fixtures.json +81 -81
- data/node_modules/govuk-frontend/dist/govuk/components/warning-text/fixtures.json +9 -9
- data/node_modules/govuk-frontend/dist/govuk/core/_govuk-frontend-properties.scss +5 -2
- data/node_modules/govuk-frontend/dist/govuk/core/_govuk-frontend-properties.scss.map +1 -1
- data/node_modules/govuk-frontend/dist/govuk/errors/index.mjs +5 -3
- data/node_modules/govuk-frontend/dist/govuk/errors/index.mjs.map +1 -1
- data/node_modules/govuk-frontend/dist/govuk/govuk-frontend.min.css +2 -2
- data/node_modules/govuk-frontend/dist/govuk/govuk-frontend.min.css.map +1 -1
- data/node_modules/govuk-frontend/dist/govuk/govuk-frontend.min.js +1 -1
- data/node_modules/govuk-frontend/dist/govuk/govuk-frontend.min.js.map +1 -1
- data/node_modules/govuk-frontend/dist/govuk/helpers/_colour.scss +31 -2
- data/node_modules/govuk-frontend/dist/govuk/helpers/_colour.scss.map +1 -1
- data/node_modules/govuk-frontend/dist/govuk/helpers/_visually-hidden.scss +4 -1
- data/node_modules/govuk-frontend/dist/govuk/helpers/_visually-hidden.scss.map +1 -1
- data/node_modules/govuk-frontend/dist/govuk/i18n.mjs +4 -2
- data/node_modules/govuk-frontend/dist/govuk/i18n.mjs.map +1 -1
- data/node_modules/govuk-frontend/dist/govuk/init.mjs +52 -43
- data/node_modules/govuk-frontend/dist/govuk/init.mjs.map +1 -1
- data/node_modules/govuk-frontend/dist/govuk/macros/logo.njk +2 -2
- data/node_modules/govuk-frontend/dist/govuk/settings/_colours-applied.scss +2 -2
- data/node_modules/govuk-frontend/dist/govuk/settings/_colours-applied.scss.map +1 -1
- data/node_modules/govuk-frontend/dist/govuk/settings/_index.scss +13 -0
- data/node_modules/govuk-frontend/dist/govuk/settings/_index.scss.map +1 -1
- data/node_modules/govuk-frontend/govuk-prototype-kit.config.json +1 -1
- data/node_modules/govuk-frontend/package.json +13 -13
- metadata +27 -102
- data/node_modules/govuk-frontend/dist/govuk/components/accordion/template-with-focusable-elements-inside.html +0 -26
- data/node_modules/govuk-frontend/dist/govuk/components/accordion/template-with-one-section-open.html +0 -30
- data/node_modules/govuk-frontend/dist/govuk/components/accordion/template-with-translations.html +0 -30
- data/node_modules/govuk-frontend/dist/govuk/components/back-link/template-with-custom-link.html +0 -1
- data/node_modules/govuk-frontend/dist/govuk/components/back-link/template-with-custom-text.html +0 -1
- data/node_modules/govuk-frontend/dist/govuk/components/breadcrumbs/template-with-multiple-levels.html +0 -16
- data/node_modules/govuk-frontend/dist/govuk/components/button/template-input-disabled.html +0 -1
- data/node_modules/govuk-frontend/dist/govuk/components/button/template-inverse-disabled.html +0 -3
- data/node_modules/govuk-frontend/dist/govuk/components/button/template-inverse-link.html +0 -3
- data/node_modules/govuk-frontend/dist/govuk/components/button/template-inverse-start.html +0 -6
- data/node_modules/govuk-frontend/dist/govuk/components/button/template-prevent-double-click.html +0 -3
- data/node_modules/govuk-frontend/dist/govuk/components/button/template-secondary-disabled.html +0 -3
- data/node_modules/govuk-frontend/dist/govuk/components/button/template-secondary-link.html +0 -3
- data/node_modules/govuk-frontend/dist/govuk/components/button/template-start-link.html +0 -6
- data/node_modules/govuk-frontend/dist/govuk/components/button/template-warning-disabled.html +0 -3
- data/node_modules/govuk-frontend/dist/govuk/components/button/template-warning-link.html +0 -3
- data/node_modules/govuk-frontend/dist/govuk/components/button/template-with-active-state.html +0 -3
- data/node_modules/govuk-frontend/dist/govuk/components/button/template-with-focus-state.html +0 -3
- data/node_modules/govuk-frontend/dist/govuk/components/button/template-with-hover-state.html +0 -3
- data/node_modules/govuk-frontend/dist/govuk/components/character-count/template-with-custom-textarea-description.html +0 -9
- data/node_modules/govuk-frontend/dist/govuk/components/character-count/template-with-error.html +0 -12
- data/node_modules/govuk-frontend/dist/govuk/components/character-count/template-with-translations.html +0 -9
- data/node_modules/govuk-frontend/dist/govuk/components/checkboxes/template-small-with-disabled.html +0 -27
- data/node_modules/govuk-frontend/dist/govuk/components/checkboxes/template-with-a-medium-legend.html +0 -33
- data/node_modules/govuk-frontend/dist/govuk/components/checkboxes/template-with-conditional-item-checked.html +0 -39
- data/node_modules/govuk-frontend/dist/govuk/components/checkboxes/template-with-conditional-items-with-special-characters.html +0 -39
- data/node_modules/govuk-frontend/dist/govuk/components/checkboxes/template-with-disabled-item.html +0 -29
- data/node_modules/govuk-frontend/dist/govuk/components/checkboxes/template-with-error-message-and-hints-on-items.html +0 -39
- data/node_modules/govuk-frontend/dist/govuk/components/checkboxes/template-with-id-and-name.html +0 -30
- data/node_modules/govuk-frontend/dist/govuk/components/checkboxes/template-with-single-option-and-hint-set-aria-describedby-on-input.html +0 -16
- data/node_modules/govuk-frontend/dist/govuk/components/checkboxes/template-with-single-option-set-aria-describedby-on-input.html +0 -13
- data/node_modules/govuk-frontend/dist/govuk/components/checkboxes/template-without-fieldset.html +0 -22
- data/node_modules/govuk-frontend/dist/govuk/components/cookie-banner/template-client-side-implementation.html +0 -60
- data/node_modules/govuk-frontend/dist/govuk/components/date-input/template-with-autocomplete-values.html +0 -36
- data/node_modules/govuk-frontend/dist/govuk/components/date-input/template-with-default-items.html +0 -36
- data/node_modules/govuk-frontend/dist/govuk/components/date-input/template-with-input-attributes.html +0 -36
- data/node_modules/govuk-frontend/dist/govuk/components/date-input/template-with-optional-form-group-classes.html +0 -36
- data/node_modules/govuk-frontend/dist/govuk/components/exit-this-page/template-translated.html +0 -5
- data/node_modules/govuk-frontend/dist/govuk/components/file-upload/template-allows-direct-media-capture.html +0 -6
- data/node_modules/govuk-frontend/dist/govuk/components/file-upload/template-allows-image-files-only.html +0 -6
- data/node_modules/govuk-frontend/dist/govuk/components/file-upload/template-allows-multiple-files.html +0 -6
- data/node_modules/govuk-frontend/dist/govuk/components/file-upload/template-disabled.html +0 -6
- data/node_modules/govuk-frontend/dist/govuk/components/file-upload/template-enhanced-disabled.html +0 -13
- data/node_modules/govuk-frontend/dist/govuk/components/file-upload/template-with-optional-form-group-classes.html +0 -6
- data/node_modules/govuk-frontend/dist/govuk/components/footer/template-with-meta.html +0 -56
- data/node_modules/govuk-frontend/dist/govuk/components/header/template-with-custom-menu-button-label.html +0 -59
- data/node_modules/govuk-frontend/dist/govuk/components/header/template-with-custom-navigation-label.html +0 -59
- data/node_modules/govuk-frontend/dist/govuk/components/input/template-disabled.html +0 -6
- data/node_modules/govuk-frontend/dist/govuk/components/input/template-with-autocapitalize-turned-off.html +0 -6
- data/node_modules/govuk-frontend/dist/govuk/components/input/template-with-autocomplete-attribute.html +0 -6
- data/node_modules/govuk-frontend/dist/govuk/components/input/template-with-optional-form-group-classes.html +0 -6
- data/node_modules/govuk-frontend/dist/govuk/components/input/template-with-pattern-attribute.html +0 -6
- data/node_modules/govuk-frontend/dist/govuk/components/input/template-with-prefix-and-long-suffix.html +0 -10
- data/node_modules/govuk-frontend/dist/govuk/components/input/template-with-spellcheck-disabled.html +0 -6
- data/node_modules/govuk-frontend/dist/govuk/components/input/template-with-spellcheck-enabled.html +0 -6
- data/node_modules/govuk-frontend/dist/govuk/components/notification-banner/template-auto-focus-disabled-with-type-as-success.html +0 -12
- data/node_modules/govuk-frontend/dist/govuk/components/notification-banner/template-auto-focus-explicitly-enabled-with-type-as-success.html +0 -12
- data/node_modules/govuk-frontend/dist/govuk/components/notification-banner/template-custom-tabindex.html +0 -12
- data/node_modules/govuk-frontend/dist/govuk/components/notification-banner/template-paragraph-as-html-heading.html +0 -10
- data/node_modules/govuk-frontend/dist/govuk/components/notification-banner/template-rolealert-overridden-to-roleregion-with-type-as-success.html +0 -12
- data/node_modules/govuk-frontend/dist/govuk/components/notification-banner/template-success-with-custom-html.html +0 -16
- data/node_modules/govuk-frontend/dist/govuk/components/notification-banner/template-with-a-list.html +0 -16
- data/node_modules/govuk-frontend/dist/govuk/components/pagination/template-with-custom-accessible-labels-on-item-links.html +0 -39
- data/node_modules/govuk-frontend/dist/govuk/components/pagination/template-with-custom-navigation-landmark.html +0 -39
- data/node_modules/govuk-frontend/dist/govuk/components/pagination/template-with-prev-and-next-only-in-a-different-language.html +0 -22
- data/node_modules/govuk-frontend/dist/govuk/components/panel/template-custom-heading-level.html +0 -8
- data/node_modules/govuk-frontend/dist/govuk/components/password-input/template-with-new-password-autocomplete.html +0 -11
- data/node_modules/govuk-frontend/dist/govuk/components/password-input/template-with-translations.html +0 -11
- data/node_modules/govuk-frontend/dist/govuk/components/radios/template-prechecked-using-value.html +0 -16
- data/node_modules/govuk-frontend/dist/govuk/components/radios/template-prechecked.html +0 -19
- data/node_modules/govuk-frontend/dist/govuk/components/radios/template-small-inline-extreme.html +0 -69
- data/node_modules/govuk-frontend/dist/govuk/components/radios/template-small-with-disabled.html +0 -27
- data/node_modules/govuk-frontend/dist/govuk/components/radios/template-with-a-medium-legend.html +0 -24
- data/node_modules/govuk-frontend/dist/govuk/components/radios/template-with-conditional-items-with-special-characters.html +0 -39
- data/node_modules/govuk-frontend/dist/govuk/components/radios/template-with-disabled.html +0 -29
- data/node_modules/govuk-frontend/dist/govuk/components/radios/template-with-idprefix.html +0 -16
- data/node_modules/govuk-frontend/dist/govuk/components/select/template-id.html +0 -7
- data/node_modules/govuk-frontend/dist/govuk/components/select/template-with-no-items.html +0 -7
- data/node_modules/govuk-frontend/dist/govuk/components/select/template-with-optional-form-group-classes.html +0 -10
- data/node_modules/govuk-frontend/dist/govuk/components/select/template-with-selected-value.html +0 -10
- data/node_modules/govuk-frontend/dist/govuk/components/summary-list/template-as-a-summary-card-with-a-custom-header-level.html +0 -28
- data/node_modules/govuk-frontend/dist/govuk/components/summary-list/template-check-your-answers.html +0 -98
- data/node_modules/govuk-frontend/dist/govuk/components/summary-list/template-overridden-widths.html +0 -58
- data/node_modules/govuk-frontend/dist/govuk/components/summary-list/template-translated.html +0 -51
- data/node_modules/govuk-frontend/dist/govuk/components/summary-list/template-with-no-first-action.html +0 -58
- data/node_modules/govuk-frontend/dist/govuk/components/summary-list/template-with-some-actions.html +0 -45
- data/node_modules/govuk-frontend/dist/govuk/components/table/template-with-small-text-modifier-for-tables-with-a-lot-of-data.html +0 -19
- data/node_modules/govuk-frontend/dist/govuk/components/tag/template-blue.html +0 -3
- data/node_modules/govuk-frontend/dist/govuk/components/task-list/template-example-with-3-states.html +0 -49
- data/node_modules/govuk-frontend/dist/govuk/components/textarea/template-with-autocomplete-attribute.html +0 -6
- data/node_modules/govuk-frontend/dist/govuk/components/textarea/template-with-optional-form-group-classes.html +0 -6
- data/node_modules/govuk-frontend/dist/govuk/components/textarea/template-with-spellcheck-disabled.html +0 -6
- data/node_modules/govuk-frontend/dist/govuk/components/textarea/template-with-spellcheck-enabled.html +0 -6
- /data/node_modules/govuk-frontend/dist/govuk/components/date-input/{template-complete-question.html → template-with-items.html} +0 -0
- /data/node_modules/govuk-frontend/dist/govuk/components/table/{template-table-with-head-and-caption.html → template-with-head-and-caption.html} +0 -0
- /data/node_modules/govuk-frontend/dist/govuk/components/table/{template-table-with-head.html → template-with-head.html} +0 -0
- /data/node_modules/govuk-frontend/dist/govuk/components/task-list/{template-example-with-all-possible-colours.html → template-with-all-possible-colours.html} +0 -0
- /data/node_modules/govuk-frontend/dist/govuk/components/task-list/{template-example-with-hint-text-and-additional-states.html → template-with-hint-text-and-additional-states.html} +0 -0
- /data/node_modules/govuk-frontend/dist/govuk/components/task-list/{template-example-with-very-long-single-word-tags.html → template-with-very-long-single-word-tags.html} +0 -0
@@ -1,13 +1,7 @@
|
|
1
|
-
const version = '5.
|
1
|
+
const version = '5.11.2';
|
2
2
|
|
3
|
-
function getFragmentFromUrl(url) {
|
4
|
-
if (!url.includes('#')) {
|
5
|
-
return undefined;
|
6
|
-
}
|
7
|
-
return url.split('#').pop();
|
8
|
-
}
|
9
3
|
function getBreakpoint(name) {
|
10
|
-
const property = `--govuk-
|
4
|
+
const property = `--govuk-breakpoint-${name}`;
|
11
5
|
const value = window.getComputedStyle(document.documentElement).getPropertyValue(property);
|
12
6
|
return {
|
13
7
|
property,
|
@@ -63,6 +57,9 @@ function isArray(option) {
|
|
63
57
|
function isObject(option) {
|
64
58
|
return !!option && typeof option === 'object' && !isArray(option);
|
65
59
|
}
|
60
|
+
function isScope($scope) {
|
61
|
+
return !!$scope && ($scope instanceof Element || $scope instanceof Document);
|
62
|
+
}
|
66
63
|
function formatErrorMessage(Component, message) {
|
67
64
|
return `${Component.moduleName}: ${message}`;
|
68
65
|
}
|
@@ -70,9 +67,6 @@ function formatErrorMessage(Component, message) {
|
|
70
67
|
* @typedef ComponentWithModuleName
|
71
68
|
* @property {string} moduleName - Name of the component
|
72
69
|
*/
|
73
|
-
/**
|
74
|
-
* @import { ObjectNested } from './configuration.mjs'
|
75
|
-
*/
|
76
70
|
|
77
71
|
class GOVUKFrontendError extends Error {
|
78
72
|
constructor(...args) {
|
@@ -101,7 +95,7 @@ class ConfigError extends GOVUKFrontendError {
|
|
101
95
|
class ElementError extends GOVUKFrontendError {
|
102
96
|
constructor(messageOrOptions) {
|
103
97
|
let message = typeof messageOrOptions === 'string' ? messageOrOptions : '';
|
104
|
-
if (
|
98
|
+
if (isObject(messageOrOptions)) {
|
105
99
|
const {
|
106
100
|
component,
|
107
101
|
identifier,
|
@@ -110,7 +104,9 @@ class ElementError extends GOVUKFrontendError {
|
|
110
104
|
} = messageOrOptions;
|
111
105
|
message = identifier;
|
112
106
|
message += element ? ` is not of type ${expectedType != null ? expectedType : 'HTMLElement'}` : ' not found';
|
113
|
-
|
107
|
+
if (component) {
|
108
|
+
message = formatErrorMessage(component, message);
|
109
|
+
}
|
114
110
|
}
|
115
111
|
super(message);
|
116
112
|
this.name = 'ElementError';
|
@@ -250,6 +246,30 @@ function normaliseDataset(Component, dataset) {
|
|
250
246
|
}
|
251
247
|
return out;
|
252
248
|
}
|
249
|
+
function normaliseOptions(scopeOrOptions) {
|
250
|
+
let $scope = document;
|
251
|
+
let onError;
|
252
|
+
if (isObject(scopeOrOptions)) {
|
253
|
+
const options = scopeOrOptions;
|
254
|
+
if (isScope(options.scope) || options.scope === null) {
|
255
|
+
$scope = options.scope;
|
256
|
+
}
|
257
|
+
if (typeof options.onError === 'function') {
|
258
|
+
onError = options.onError;
|
259
|
+
}
|
260
|
+
}
|
261
|
+
if (isScope(scopeOrOptions)) {
|
262
|
+
$scope = scopeOrOptions;
|
263
|
+
} else if (scopeOrOptions === null) {
|
264
|
+
$scope = null;
|
265
|
+
} else if (typeof scopeOrOptions === 'function') {
|
266
|
+
onError = scopeOrOptions;
|
267
|
+
}
|
268
|
+
return {
|
269
|
+
scope: $scope,
|
270
|
+
onError
|
271
|
+
};
|
272
|
+
}
|
253
273
|
function mergeConfigs(...configObjects) {
|
254
274
|
const formattedConfigObject = {};
|
255
275
|
for (const configObject of configObjects) {
|
@@ -344,6 +364,9 @@ function extractConfigByNamespace(schema, dataset, namespace) {
|
|
344
364
|
* @template {Partial<Record<keyof ConfigurationType, unknown>>} [ConfigurationType=ObjectNested]
|
345
365
|
* @typedef {typeof Component & ChildClass<ConfigurationType>} ChildClassConstructor<ConfigurationType>
|
346
366
|
*/
|
367
|
+
/**
|
368
|
+
* @import { CompatibleClass, Config, CreateAllOptions, OnErrorCallback } from '../init.mjs'
|
369
|
+
*/
|
347
370
|
|
348
371
|
class I18n {
|
349
372
|
constructor(translations = {}, config = {}) {
|
@@ -358,7 +381,7 @@ class I18n {
|
|
358
381
|
throw new Error('i18n: lookup key missing');
|
359
382
|
}
|
360
383
|
let translation = this.translations[lookupKey];
|
361
|
-
if (typeof (options == null ? void 0 : options.count) === 'number' &&
|
384
|
+
if (typeof (options == null ? void 0 : options.count) === 'number' && isObject(translation)) {
|
362
385
|
const translationPluralForm = translation[this.getPluralSuffix(lookupKey, options.count)];
|
363
386
|
if (translationPluralForm) {
|
364
387
|
translation = translationPluralForm;
|
@@ -401,7 +424,7 @@ class I18n {
|
|
401
424
|
}
|
402
425
|
const translation = this.translations[lookupKey];
|
403
426
|
const preferredForm = this.hasIntlPluralRulesSupport() ? new Intl.PluralRules(this.locale).select(count) : this.selectPluralFormUsingFallbackRules(count);
|
404
|
-
if (
|
427
|
+
if (isObject(translation)) {
|
405
428
|
if (preferredForm in translation) {
|
406
429
|
return preferredForm;
|
407
430
|
} else if ('other' in translation) {
|
@@ -737,11 +760,11 @@ class Accordion extends ConfigurableComponent {
|
|
737
760
|
const ariaLabelParts = [];
|
738
761
|
const $headingText = $section.querySelector(`.${this.sectionHeadingTextClass}`);
|
739
762
|
if ($headingText) {
|
740
|
-
ariaLabelParts.push(
|
763
|
+
ariaLabelParts.push($headingText.textContent.trim());
|
741
764
|
}
|
742
765
|
const $summary = $section.querySelector(`.${this.sectionSummaryClass}`);
|
743
766
|
if ($summary) {
|
744
|
-
ariaLabelParts.push(
|
767
|
+
ariaLabelParts.push($summary.textContent.trim());
|
745
768
|
}
|
746
769
|
const ariaLabelMessage = expanded ? this.i18n.t('hideSectionAriaLabel') : this.i18n.t('showSectionAriaLabel');
|
747
770
|
ariaLabelParts.push(ariaLabelMessage);
|
@@ -794,7 +817,7 @@ class Accordion extends ConfigurableComponent {
|
|
794
817
|
if (id) {
|
795
818
|
try {
|
796
819
|
window.sessionStorage.setItem(id, isExpanded.toString());
|
797
|
-
} catch (
|
820
|
+
} catch (_unused) {}
|
798
821
|
}
|
799
822
|
}
|
800
823
|
setInitialState($section) {
|
@@ -808,7 +831,7 @@ class Accordion extends ConfigurableComponent {
|
|
808
831
|
if (state !== null) {
|
809
832
|
this.setExpanded(state === 'true', $section);
|
810
833
|
}
|
811
|
-
} catch (
|
834
|
+
} catch (_unused2) {}
|
812
835
|
}
|
813
836
|
}
|
814
837
|
getButtonPunctuationEl() {
|
@@ -1017,7 +1040,7 @@ class CharacterCount extends ConfigurableComponent {
|
|
1017
1040
|
});
|
1018
1041
|
}
|
1019
1042
|
this.$errorMessage = this.$root.querySelector('.govuk-error-message');
|
1020
|
-
if (
|
1043
|
+
if ($textareaDescription.textContent.match(/^\s*$/)) {
|
1021
1044
|
$textareaDescription.textContent = this.i18n.t('textareaDescription', {
|
1022
1045
|
count: this.maxLength
|
1023
1046
|
});
|
@@ -1377,7 +1400,7 @@ class ErrorSummary extends ConfigurableComponent {
|
|
1377
1400
|
if (!($target instanceof HTMLAnchorElement)) {
|
1378
1401
|
return false;
|
1379
1402
|
}
|
1380
|
-
const inputId =
|
1403
|
+
const inputId = $target.hash.replace('#', '');
|
1381
1404
|
if (!inputId) {
|
1382
1405
|
return false;
|
1383
1406
|
}
|
@@ -1690,7 +1713,6 @@ class FileUpload extends ConfigurableComponent {
|
|
1690
1713
|
throw new ElementError(formatErrorMessage(FileUpload, 'File input (`<input type="file">`) attribute (`type`) is not `file`'));
|
1691
1714
|
}
|
1692
1715
|
this.$input = $input;
|
1693
|
-
this.$input.setAttribute('hidden', 'true');
|
1694
1716
|
if (!this.$input.id) {
|
1695
1717
|
throw new ElementError({
|
1696
1718
|
component: FileUpload,
|
@@ -1706,6 +1728,7 @@ class FileUpload extends ConfigurableComponent {
|
|
1706
1728
|
$label.id = `${this.id}-label`;
|
1707
1729
|
}
|
1708
1730
|
this.$input.id = `${this.id}-input`;
|
1731
|
+
this.$input.setAttribute('hidden', 'true');
|
1709
1732
|
const $button = document.createElement('button');
|
1710
1733
|
$button.classList.add('govuk-file-upload-button');
|
1711
1734
|
$button.type = 'button';
|
@@ -1930,6 +1953,7 @@ class Header extends Component {
|
|
1930
1953
|
if (!$menuButton) {
|
1931
1954
|
return this;
|
1932
1955
|
}
|
1956
|
+
this.$root.classList.add('govuk-header--with-js-navigation');
|
1933
1957
|
const menuId = $menuButton.getAttribute('aria-controls');
|
1934
1958
|
if (!menuId) {
|
1935
1959
|
throw new ElementError({
|
@@ -2357,16 +2381,10 @@ class SkipLink extends Component {
|
|
2357
2381
|
super($root);
|
2358
2382
|
const hash = this.$root.hash;
|
2359
2383
|
const href = (_this$$root$getAttrib = this.$root.getAttribute('href')) != null ? _this$$root$getAttrib : '';
|
2360
|
-
|
2361
|
-
try {
|
2362
|
-
url = new window.URL(this.$root.href);
|
2363
|
-
} catch (error) {
|
2364
|
-
throw new ElementError(`Skip link: Target link (\`href="${href}"\`) is invalid`);
|
2365
|
-
}
|
2366
|
-
if (url.origin !== window.location.origin || url.pathname !== window.location.pathname) {
|
2384
|
+
if (this.$root.origin !== window.location.origin || this.$root.pathname !== window.location.pathname) {
|
2367
2385
|
return;
|
2368
2386
|
}
|
2369
|
-
const linkedElementId =
|
2387
|
+
const linkedElementId = hash.replace('#', '');
|
2370
2388
|
if (!linkedElementId) {
|
2371
2389
|
throw new ElementError(`Skip link: Target link (\`href="${href}"\`) has no hash fragment`);
|
2372
2390
|
}
|
@@ -2522,7 +2540,7 @@ class Tabs extends Component {
|
|
2522
2540
|
return this.$root.querySelector(`a.govuk-tabs__tab[href="${hash}"]`);
|
2523
2541
|
}
|
2524
2542
|
setAttributes($tab) {
|
2525
|
-
const panelId =
|
2543
|
+
const panelId = $tab.hash.replace('#', '');
|
2526
2544
|
if (!panelId) {
|
2527
2545
|
return;
|
2528
2546
|
}
|
@@ -2626,7 +2644,7 @@ class Tabs extends Component {
|
|
2626
2644
|
this.createHistoryEntry($previousTab);
|
2627
2645
|
}
|
2628
2646
|
getPanel($tab) {
|
2629
|
-
const panelId =
|
2647
|
+
const panelId = $tab.hash.replace('#', '');
|
2630
2648
|
if (!panelId) {
|
2631
2649
|
return null;
|
2632
2650
|
}
|
@@ -2674,28 +2692,34 @@ Tabs.moduleName = 'govuk-tabs';
|
|
2674
2692
|
* Use the `data-module` attributes to find, instantiate and init all of the
|
2675
2693
|
* components provided as part of GOV.UK Frontend.
|
2676
2694
|
*
|
2677
|
-
* @param {Config
|
2695
|
+
* @param {Config | Element | Document | null} [scopeOrConfig] - Scope of the document to search within or config for all components (with optional scope)
|
2678
2696
|
*/
|
2679
|
-
function initAll(
|
2680
|
-
|
2681
|
-
|
2682
|
-
|
2683
|
-
if (
|
2684
|
-
|
2697
|
+
function initAll(scopeOrConfig = {}) {
|
2698
|
+
const config = isObject(scopeOrConfig) ? scopeOrConfig : {};
|
2699
|
+
const options = normaliseOptions(scopeOrConfig);
|
2700
|
+
try {
|
2701
|
+
if (!isSupported()) {
|
2702
|
+
throw new SupportError();
|
2703
|
+
}
|
2704
|
+
if (options.scope === null) {
|
2705
|
+
throw new ElementError({
|
2706
|
+
element: options.scope,
|
2707
|
+
identifier: 'GOV.UK Frontend scope element (`$scope`)'
|
2708
|
+
});
|
2709
|
+
}
|
2710
|
+
} catch (error) {
|
2711
|
+
if (options.onError) {
|
2712
|
+
options.onError(error, {
|
2685
2713
|
config
|
2686
2714
|
});
|
2687
2715
|
} else {
|
2688
|
-
console.log(
|
2716
|
+
console.log(error);
|
2689
2717
|
}
|
2690
2718
|
return;
|
2691
2719
|
}
|
2692
2720
|
const components = [[Accordion, config.accordion], [Button, config.button], [CharacterCount, config.characterCount], [Checkboxes], [ErrorSummary, config.errorSummary], [ExitThisPage, config.exitThisPage], [FileUpload, config.fileUpload], [Header], [NotificationBanner, config.notificationBanner], [PasswordInput, config.passwordInput], [Radios], [ServiceNavigation], [SkipLink], [Tabs]];
|
2693
|
-
|
2694
|
-
|
2695
|
-
onError: config.onError
|
2696
|
-
};
|
2697
|
-
components.forEach(([Component, config]) => {
|
2698
|
-
createAll(Component, config, options);
|
2721
|
+
components.forEach(([Component, componentConfig]) => {
|
2722
|
+
createAll(Component, componentConfig, options);
|
2699
2723
|
});
|
2700
2724
|
}
|
2701
2725
|
|
@@ -2711,42 +2735,42 @@ function initAll(config) {
|
|
2711
2735
|
* @template {CompatibleClass} ComponentClass
|
2712
2736
|
* @param {ComponentClass} Component - class of the component to create
|
2713
2737
|
* @param {ComponentConfig<ComponentClass>} [config] - Config supplied to component
|
2714
|
-
* @param {OnErrorCallback<ComponentClass> | Element | Document | CreateAllOptions<ComponentClass>
|
2738
|
+
* @param {OnErrorCallback<ComponentClass> | Element | Document | null | CreateAllOptions<ComponentClass>} [scopeOrOptions] - options for createAll including scope of the document to search within and callback function if error throw by component on init
|
2715
2739
|
* @returns {Array<InstanceType<ComponentClass>>} - array of instantiated components
|
2716
2740
|
*/
|
2717
|
-
function createAll(Component, config,
|
2718
|
-
let $
|
2719
|
-
|
2720
|
-
|
2721
|
-
var
|
2722
|
-
|
2723
|
-
|
2724
|
-
|
2725
|
-
|
2726
|
-
|
2727
|
-
|
2728
|
-
|
2729
|
-
|
2730
|
-
|
2731
|
-
|
2732
|
-
|
2733
|
-
|
2734
|
-
if (onError) {
|
2735
|
-
onError(
|
2741
|
+
function createAll(Component, config, scopeOrOptions) {
|
2742
|
+
let $elements;
|
2743
|
+
const options = normaliseOptions(scopeOrOptions);
|
2744
|
+
try {
|
2745
|
+
var _options$scope;
|
2746
|
+
if (!isSupported()) {
|
2747
|
+
throw new SupportError();
|
2748
|
+
}
|
2749
|
+
if (options.scope === null) {
|
2750
|
+
throw new ElementError({
|
2751
|
+
element: options.scope,
|
2752
|
+
component: Component,
|
2753
|
+
identifier: 'Scope element (`$scope`)'
|
2754
|
+
});
|
2755
|
+
}
|
2756
|
+
$elements = (_options$scope = options.scope) == null ? void 0 : _options$scope.querySelectorAll(`[data-module="${Component.moduleName}"]`);
|
2757
|
+
} catch (error) {
|
2758
|
+
if (options.onError) {
|
2759
|
+
options.onError(error, {
|
2736
2760
|
component: Component,
|
2737
2761
|
config
|
2738
2762
|
});
|
2739
2763
|
} else {
|
2740
|
-
console.log(
|
2764
|
+
console.log(error);
|
2741
2765
|
}
|
2742
2766
|
return [];
|
2743
2767
|
}
|
2744
|
-
return Array.from($elements).map($element => {
|
2768
|
+
return Array.from($elements != null ? $elements : []).map($element => {
|
2745
2769
|
try {
|
2746
2770
|
return typeof config !== 'undefined' ? new Component($element, config) : new Component($element);
|
2747
2771
|
} catch (error) {
|
2748
|
-
if (onError) {
|
2749
|
-
onError(error, {
|
2772
|
+
if (options.onError) {
|
2773
|
+
options.onError(error, {
|
2750
2774
|
element: $element,
|
2751
2775
|
component: Component,
|
2752
2776
|
config
|
@@ -2765,6 +2789,8 @@ function createAll(Component, config, createAllOptions) {
|
|
2765
2789
|
* Config for all components via `initAll()`
|
2766
2790
|
*
|
2767
2791
|
* @typedef {object} Config
|
2792
|
+
* @property {Element | Document | null} [scope] - Scope of the document to search within
|
2793
|
+
* @property {OnErrorCallback<CompatibleClass>} [onError] - Initialisation error callback
|
2768
2794
|
* @property {AccordionConfig} [accordion] - Accordion config
|
2769
2795
|
* @property {ButtonConfig} [button] - Button config
|
2770
2796
|
* @property {CharacterCountConfig} [characterCount] - Character Count config
|
@@ -2789,7 +2815,7 @@ function createAll(Component, config, createAllOptions) {
|
|
2789
2815
|
/**
|
2790
2816
|
* Component config keys, e.g. `accordion` and `characterCount`
|
2791
2817
|
*
|
2792
|
-
* @typedef {keyof Config} ConfigKey
|
2818
|
+
* @typedef {keyof Omit<Config, 'scope' | 'onError'>} ConfigKey
|
2793
2819
|
*/
|
2794
2820
|
/**
|
2795
2821
|
* @template {CompatibleClass} ComponentClass
|
@@ -2800,7 +2826,7 @@ function createAll(Component, config, createAllOptions) {
|
|
2800
2826
|
* @typedef {object} ErrorContext
|
2801
2827
|
* @property {Element} [element] - Element used for component module initialisation
|
2802
2828
|
* @property {ComponentClass} [component] - Class of component
|
2803
|
-
* @property {ComponentConfig<ComponentClass>} config - Config supplied to
|
2829
|
+
* @property {Config | ComponentConfig<ComponentClass>} [config] - Config supplied to components
|
2804
2830
|
*/
|
2805
2831
|
/**
|
2806
2832
|
* @template {CompatibleClass} ComponentClass
|
@@ -2811,7 +2837,7 @@ function createAll(Component, config, createAllOptions) {
|
|
2811
2837
|
/**
|
2812
2838
|
* @template {CompatibleClass} ComponentClass
|
2813
2839
|
* @typedef {object} CreateAllOptions
|
2814
|
-
* @property {Element | Document} [scope] - scope of the document to search within
|
2840
|
+
* @property {Element | Document | null} [scope] - scope of the document to search within
|
2815
2841
|
* @property {OnErrorCallback<ComponentClass>} [onError] - callback function if error throw by component on init
|
2816
2842
|
*/
|
2817
2843
|
|