defra_ruby_template 5.11.0 → 6.4.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.
Files changed (1308) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +133 -9
  3. data/Rakefile +146 -22
  4. data/app/views/layouts/defra_ruby_template.html.erb +107 -63
  5. data/lib/defra_ruby_template/version.rb +1 -1
  6. data/lib/defra_ruby_template.rb +12 -8
  7. data/node_modules/govuk-frontend/README.md +1 -1
  8. data/node_modules/govuk-frontend/dist/govuk/_base.import.scss +6 -0
  9. data/node_modules/govuk-frontend/dist/govuk/_base.scss +4 -4
  10. data/node_modules/govuk-frontend/dist/govuk/all.bundle.js +214 -325
  11. data/node_modules/govuk-frontend/dist/govuk/all.bundle.js.map +1 -1
  12. data/node_modules/govuk-frontend/dist/govuk/all.bundle.mjs +215 -325
  13. data/node_modules/govuk-frontend/dist/govuk/all.bundle.mjs.map +1 -1
  14. data/node_modules/govuk-frontend/dist/govuk/all.mjs +0 -1
  15. data/node_modules/govuk-frontend/dist/govuk/all.mjs.map +1 -1
  16. data/node_modules/govuk-frontend/dist/govuk/assets/images/favicon.ico +0 -0
  17. data/node_modules/govuk-frontend/dist/govuk/assets/images/favicon.svg +1 -1
  18. data/node_modules/govuk-frontend/dist/govuk/assets/images/govuk-icon-180.png +0 -0
  19. data/node_modules/govuk-frontend/dist/govuk/assets/images/govuk-icon-192.png +0 -0
  20. data/node_modules/govuk-frontend/dist/govuk/assets/images/govuk-icon-512.png +0 -0
  21. data/node_modules/govuk-frontend/dist/govuk/assets/images/govuk-opengraph-image.png +0 -0
  22. data/node_modules/govuk-frontend/dist/govuk/common/configuration.mjs +29 -2
  23. data/node_modules/govuk-frontend/dist/govuk/common/configuration.mjs.map +1 -1
  24. data/node_modules/govuk-frontend/dist/govuk/common/govuk-frontend-version.mjs +1 -1
  25. data/node_modules/govuk-frontend/dist/govuk/common/index.mjs +5 -11
  26. data/node_modules/govuk-frontend/dist/govuk/common/index.mjs.map +1 -1
  27. data/node_modules/govuk-frontend/dist/govuk/component.mjs.map +1 -1
  28. data/node_modules/govuk-frontend/dist/govuk/components/_index.import.scss +38 -0
  29. data/node_modules/govuk-frontend/dist/govuk/components/_index.scss +37 -39
  30. data/node_modules/govuk-frontend/dist/govuk/components/accordion/_accordion.import.scss +6 -0
  31. data/node_modules/govuk-frontend/dist/govuk/components/accordion/_index.import.scss +8 -0
  32. data/node_modules/govuk-frontend/dist/govuk/components/accordion/_index.scss +3 -368
  33. data/node_modules/govuk-frontend/dist/govuk/components/accordion/_mixin.scss +375 -0
  34. data/node_modules/govuk-frontend/dist/govuk/components/accordion/accordion.bundle.js +14 -137
  35. data/node_modules/govuk-frontend/dist/govuk/components/accordion/accordion.bundle.js.map +1 -1
  36. data/node_modules/govuk-frontend/dist/govuk/components/accordion/accordion.bundle.mjs +14 -137
  37. data/node_modules/govuk-frontend/dist/govuk/components/accordion/accordion.bundle.mjs.map +1 -1
  38. data/node_modules/govuk-frontend/dist/govuk/components/accordion/accordion.mjs +4 -4
  39. data/node_modules/govuk-frontend/dist/govuk/components/accordion/accordion.mjs.map +1 -1
  40. data/node_modules/govuk-frontend/dist/govuk/components/accordion/fixtures.json +102 -97
  41. data/node_modules/govuk-frontend/dist/govuk/components/back-link/_back-link.import.scss +6 -0
  42. data/node_modules/govuk-frontend/dist/govuk/components/back-link/_index.import.scss +8 -0
  43. data/node_modules/govuk-frontend/dist/govuk/components/back-link/_index.scss +3 -81
  44. data/node_modules/govuk-frontend/dist/govuk/components/back-link/_mixin.scss +87 -0
  45. data/node_modules/govuk-frontend/dist/govuk/components/back-link/fixtures.json +21 -32
  46. data/node_modules/govuk-frontend/dist/govuk/components/breadcrumbs/_breadcrumbs.import.scss +6 -0
  47. data/node_modules/govuk-frontend/dist/govuk/components/breadcrumbs/_index.import.scss +8 -0
  48. data/node_modules/govuk-frontend/dist/govuk/components/breadcrumbs/_index.scss +3 -132
  49. data/node_modules/govuk-frontend/dist/govuk/components/breadcrumbs/_mixin.scss +134 -0
  50. data/node_modules/govuk-frontend/dist/govuk/components/breadcrumbs/fixtures.json +25 -45
  51. data/node_modules/govuk-frontend/dist/govuk/components/breadcrumbs/template-default.html +6 -0
  52. data/node_modules/govuk-frontend/dist/govuk/components/button/_button.import.scss +6 -0
  53. data/node_modules/govuk-frontend/dist/govuk/components/button/_index.import.scss +13 -0
  54. data/node_modules/govuk-frontend/dist/govuk/components/button/_index.scss +9 -260
  55. data/node_modules/govuk-frontend/dist/govuk/components/button/_mixin.scss +233 -0
  56. data/node_modules/govuk-frontend/dist/govuk/components/button/_settings.import.scss +32 -0
  57. data/node_modules/govuk-frontend/dist/govuk/components/button/_settings.scss +34 -0
  58. data/node_modules/govuk-frontend/dist/govuk/components/button/button.bundle.js +7 -5
  59. data/node_modules/govuk-frontend/dist/govuk/components/button/button.bundle.js.map +1 -1
  60. data/node_modules/govuk-frontend/dist/govuk/components/button/button.bundle.mjs +7 -5
  61. data/node_modules/govuk-frontend/dist/govuk/components/button/button.bundle.mjs.map +1 -1
  62. data/node_modules/govuk-frontend/dist/govuk/components/button/button.mjs.map +1 -1
  63. data/node_modules/govuk-frontend/dist/govuk/components/button/fixtures.json +193 -209
  64. data/node_modules/govuk-frontend/dist/govuk/components/button/macro-options.json +12 -19
  65. data/node_modules/govuk-frontend/dist/govuk/components/button/template-default-active-state.html +3 -0
  66. data/node_modules/govuk-frontend/dist/govuk/components/button/template-default-focus-state.html +3 -0
  67. data/node_modules/govuk-frontend/dist/govuk/components/button/template-default-hover-state.html +3 -0
  68. data/node_modules/govuk-frontend/dist/govuk/components/button/template-inverse-active-state.html +3 -0
  69. data/node_modules/govuk-frontend/dist/govuk/components/button/template-inverse-disabled.html +1 -1
  70. data/node_modules/govuk-frontend/dist/govuk/components/button/template-inverse-focus-state.html +3 -0
  71. data/node_modules/govuk-frontend/dist/govuk/components/button/template-inverse-hover-state.html +3 -0
  72. data/node_modules/govuk-frontend/dist/govuk/components/button/template-secondary-active-state.html +3 -0
  73. data/node_modules/govuk-frontend/dist/govuk/components/button/template-secondary-focus-state.html +3 -0
  74. data/node_modules/govuk-frontend/dist/govuk/components/button/template-secondary-hover-state.html +3 -0
  75. data/node_modules/govuk-frontend/dist/govuk/components/button/template-warning-active-state.html +3 -0
  76. data/node_modules/govuk-frontend/dist/govuk/components/button/template-warning-focus-state.html +3 -0
  77. data/node_modules/govuk-frontend/dist/govuk/components/button/template-warning-hover-state.html +3 -0
  78. data/node_modules/govuk-frontend/dist/govuk/components/button/template.njk +20 -20
  79. data/node_modules/govuk-frontend/dist/govuk/components/character-count/_character-count.import.scss +6 -0
  80. data/node_modules/govuk-frontend/dist/govuk/components/character-count/_index.import.scss +12 -0
  81. data/node_modules/govuk-frontend/dist/govuk/components/character-count/_index.scss +7 -42
  82. data/node_modules/govuk-frontend/dist/govuk/components/character-count/_mixin.scss +41 -0
  83. data/node_modules/govuk-frontend/dist/govuk/components/character-count/character-count.bundle.js +30 -143
  84. data/node_modules/govuk-frontend/dist/govuk/components/character-count/character-count.bundle.js.map +1 -1
  85. data/node_modules/govuk-frontend/dist/govuk/components/character-count/character-count.bundle.mjs +30 -143
  86. data/node_modules/govuk-frontend/dist/govuk/components/character-count/character-count.bundle.mjs.map +1 -1
  87. data/node_modules/govuk-frontend/dist/govuk/components/character-count/character-count.mjs +20 -10
  88. data/node_modules/govuk-frontend/dist/govuk/components/character-count/character-count.mjs.map +1 -1
  89. data/node_modules/govuk-frontend/dist/govuk/components/character-count/fixtures.json +72 -86
  90. data/node_modules/govuk-frontend/dist/govuk/components/checkboxes/_checkboxes.import.scss +6 -0
  91. data/node_modules/govuk-frontend/dist/govuk/components/checkboxes/_index.import.scss +12 -0
  92. data/node_modules/govuk-frontend/dist/govuk/components/checkboxes/_index.scss +7 -309
  93. data/node_modules/govuk-frontend/dist/govuk/components/checkboxes/_mixin.scss +317 -0
  94. data/node_modules/govuk-frontend/dist/govuk/components/checkboxes/checkboxes.bundle.js +10 -5
  95. data/node_modules/govuk-frontend/dist/govuk/components/checkboxes/checkboxes.bundle.js.map +1 -1
  96. data/node_modules/govuk-frontend/dist/govuk/components/checkboxes/checkboxes.bundle.mjs +10 -5
  97. data/node_modules/govuk-frontend/dist/govuk/components/checkboxes/checkboxes.bundle.mjs.map +1 -1
  98. data/node_modules/govuk-frontend/dist/govuk/components/checkboxes/checkboxes.mjs.map +1 -1
  99. data/node_modules/govuk-frontend/dist/govuk/components/checkboxes/fixtures.json +326 -480
  100. data/node_modules/govuk-frontend/dist/govuk/components/checkboxes/macro-options.json +1 -1
  101. data/node_modules/govuk-frontend/dist/govuk/components/checkboxes/template-default.html +5 -0
  102. data/node_modules/govuk-frontend/dist/govuk/components/checkboxes/template-small-with-conditional-reveal.html +21 -21
  103. data/node_modules/govuk-frontend/dist/govuk/components/checkboxes/template-small-with-divider-and-none.html +30 -30
  104. data/node_modules/govuk-frontend/dist/govuk/components/checkboxes/template-small-with-error.html +26 -26
  105. data/node_modules/govuk-frontend/dist/govuk/components/checkboxes/template-small-with-hint.html +25 -25
  106. data/node_modules/govuk-frontend/dist/govuk/components/checkboxes/template-small-with-long-text.html +23 -23
  107. data/node_modules/govuk-frontend/dist/govuk/components/checkboxes/template-small.html +23 -23
  108. data/node_modules/govuk-frontend/dist/govuk/components/checkboxes/template-with-conditional-items.html +35 -35
  109. data/node_modules/govuk-frontend/dist/govuk/components/checkboxes/template-with-divider-and-none.html +30 -32
  110. data/node_modules/govuk-frontend/dist/govuk/components/checkboxes/template-with-divider-none-and-conditional-items.html +40 -42
  111. data/node_modules/govuk-frontend/dist/govuk/components/checkboxes/template-with-error-message.html +32 -23
  112. data/node_modules/govuk-frontend/dist/govuk/components/checkboxes/template-with-hint.html +30 -0
  113. data/node_modules/govuk-frontend/dist/govuk/components/checkboxes/template-with-hints-on-items.html +21 -23
  114. data/node_modules/govuk-frontend/dist/govuk/components/checkboxes/template-with-legend-as-a-page-heading.html +27 -27
  115. data/node_modules/govuk-frontend/dist/govuk/components/checkboxes/template-with-optional-form-group-classes-showing-group-error.html +36 -36
  116. data/node_modules/govuk-frontend/dist/govuk/components/checkboxes/template-with-pre-checked-values.html +25 -16
  117. data/node_modules/govuk-frontend/dist/govuk/components/checkboxes/template-with-very-long-option-text.html +27 -30
  118. data/node_modules/govuk-frontend/dist/govuk/components/checkboxes/template.njk +1 -1
  119. data/node_modules/govuk-frontend/dist/govuk/components/cookie-banner/_cookie-banner.import.scss +6 -0
  120. data/node_modules/govuk-frontend/dist/govuk/components/cookie-banner/_index.import.scss +9 -0
  121. data/node_modules/govuk-frontend/dist/govuk/components/cookie-banner/_index.scss +4 -56
  122. data/node_modules/govuk-frontend/dist/govuk/components/cookie-banner/_mixin.scss +56 -0
  123. data/node_modules/govuk-frontend/dist/govuk/components/cookie-banner/fixtures.json +82 -82
  124. data/node_modules/govuk-frontend/dist/govuk/components/cookie-banner/template-default.html +2 -2
  125. data/node_modules/govuk-frontend/dist/govuk/components/cookie-banner/template-with-html.html +2 -2
  126. data/node_modules/govuk-frontend/dist/govuk/components/date-input/_date-input.import.scss +6 -0
  127. data/node_modules/govuk-frontend/dist/govuk/components/date-input/_index.import.scss +13 -0
  128. data/node_modules/govuk-frontend/dist/govuk/components/date-input/_index.scss +8 -26
  129. data/node_modules/govuk-frontend/dist/govuk/components/date-input/_mixin.scss +29 -0
  130. data/node_modules/govuk-frontend/dist/govuk/components/date-input/fixtures.json +780 -150
  131. data/node_modules/govuk-frontend/dist/govuk/components/date-input/macro-options.json +50 -0
  132. data/node_modules/govuk-frontend/dist/govuk/components/date-input/template-day-and-month-using-items.html +28 -0
  133. data/node_modules/govuk-frontend/dist/govuk/components/date-input/template-default.html +30 -22
  134. data/node_modules/govuk-frontend/dist/govuk/components/date-input/template-month-and-year-using-items.html +28 -0
  135. data/node_modules/govuk-frontend/dist/govuk/components/date-input/template-with-error-message-and-hint-using-items.html +39 -0
  136. data/node_modules/govuk-frontend/dist/govuk/components/date-input/template-with-error-message-and-hint.html +39 -0
  137. data/node_modules/govuk-frontend/dist/govuk/components/date-input/template-with-error-on-day-input-using-items.html +39 -0
  138. data/node_modules/govuk-frontend/dist/govuk/components/date-input/template-with-error-on-day-input.html +3 -3
  139. data/node_modules/govuk-frontend/dist/govuk/components/date-input/template-with-error-on-month-input-using-items.html +39 -0
  140. data/node_modules/govuk-frontend/dist/govuk/components/date-input/template-with-error-on-month-input.html +3 -3
  141. data/node_modules/govuk-frontend/dist/govuk/components/date-input/template-with-error-on-year-input-using-items.html +39 -0
  142. data/node_modules/govuk-frontend/dist/govuk/components/date-input/template-with-error-on-year-input.html +3 -3
  143. data/node_modules/govuk-frontend/dist/govuk/components/date-input/template-with-errors-only-using-classes.html +33 -0
  144. data/node_modules/govuk-frontend/dist/govuk/components/date-input/template-with-errors-only-using-items-and-classes.html +33 -0
  145. data/node_modules/govuk-frontend/dist/govuk/components/date-input/template-with-errors-only-using-items.html +33 -0
  146. data/node_modules/govuk-frontend/dist/govuk/components/date-input/template-with-errors-only.html +5 -8
  147. data/node_modules/govuk-frontend/dist/govuk/components/date-input/template-with-translations.html +36 -0
  148. data/node_modules/govuk-frontend/dist/govuk/components/date-input/template-with-values-and-name-prefix.html +36 -0
  149. data/node_modules/govuk-frontend/dist/govuk/components/date-input/template-with-values-name-prefix-and-custom-names.html +36 -0
  150. data/node_modules/govuk-frontend/dist/govuk/components/date-input/template-with-values.html +36 -0
  151. data/node_modules/govuk-frontend/dist/govuk/components/date-input/template.njk +84 -29
  152. data/node_modules/govuk-frontend/dist/govuk/components/details/_details.import.scss +6 -0
  153. data/node_modules/govuk-frontend/dist/govuk/components/details/_index.import.scss +8 -0
  154. data/node_modules/govuk-frontend/dist/govuk/components/details/_index.scss +3 -137
  155. data/node_modules/govuk-frontend/dist/govuk/components/details/_mixin.scss +143 -0
  156. data/node_modules/govuk-frontend/dist/govuk/components/details/fixtures.json +22 -22
  157. data/node_modules/govuk-frontend/dist/govuk/components/error-message/_error-message.import.scss +6 -0
  158. data/node_modules/govuk-frontend/dist/govuk/components/error-message/_index.import.scss +8 -0
  159. data/node_modules/govuk-frontend/dist/govuk/components/error-message/_index.scss +3 -12
  160. data/node_modules/govuk-frontend/dist/govuk/components/error-message/_mixin.scss +16 -0
  161. data/node_modules/govuk-frontend/dist/govuk/components/error-message/fixtures.json +10 -10
  162. data/node_modules/govuk-frontend/dist/govuk/components/error-summary/_error-summary.import.scss +6 -0
  163. data/node_modules/govuk-frontend/dist/govuk/components/error-summary/_index.import.scss +8 -0
  164. data/node_modules/govuk-frontend/dist/govuk/components/error-summary/_index.scss +3 -53
  165. data/node_modules/govuk-frontend/dist/govuk/components/error-summary/_mixin.scss +58 -0
  166. data/node_modules/govuk-frontend/dist/govuk/components/error-summary/error-summary.bundle.js +8 -12
  167. data/node_modules/govuk-frontend/dist/govuk/components/error-summary/error-summary.bundle.js.map +1 -1
  168. data/node_modules/govuk-frontend/dist/govuk/components/error-summary/error-summary.bundle.mjs +8 -12
  169. data/node_modules/govuk-frontend/dist/govuk/components/error-summary/error-summary.bundle.mjs.map +1 -1
  170. data/node_modules/govuk-frontend/dist/govuk/components/error-summary/error-summary.mjs +2 -2
  171. data/node_modules/govuk-frontend/dist/govuk/components/error-summary/error-summary.mjs.map +1 -1
  172. data/node_modules/govuk-frontend/dist/govuk/components/error-summary/fixtures.json +21 -21
  173. data/node_modules/govuk-frontend/dist/govuk/components/exit-this-page/_exit-this-page.import.scss +6 -0
  174. data/node_modules/govuk-frontend/dist/govuk/components/exit-this-page/_index.import.scss +9 -0
  175. data/node_modules/govuk-frontend/dist/govuk/components/exit-this-page/_index.scss +4 -89
  176. data/node_modules/govuk-frontend/dist/govuk/components/exit-this-page/_mixin.scss +96 -0
  177. data/node_modules/govuk-frontend/dist/govuk/components/exit-this-page/exit-this-page.bundle.js +10 -133
  178. data/node_modules/govuk-frontend/dist/govuk/components/exit-this-page/exit-this-page.bundle.js.map +1 -1
  179. data/node_modules/govuk-frontend/dist/govuk/components/exit-this-page/exit-this-page.bundle.mjs +10 -133
  180. data/node_modules/govuk-frontend/dist/govuk/components/exit-this-page/exit-this-page.bundle.mjs.map +1 -1
  181. data/node_modules/govuk-frontend/dist/govuk/components/exit-this-page/exit-this-page.mjs.map +1 -1
  182. data/node_modules/govuk-frontend/dist/govuk/components/exit-this-page/fixtures.json +19 -19
  183. data/node_modules/govuk-frontend/dist/govuk/components/fieldset/_fieldset.import.scss +6 -0
  184. data/node_modules/govuk-frontend/dist/govuk/components/fieldset/_index.import.scss +8 -0
  185. data/node_modules/govuk-frontend/dist/govuk/components/fieldset/_index.scss +3 -67
  186. data/node_modules/govuk-frontend/dist/govuk/components/fieldset/_mixin.scss +71 -0
  187. data/node_modules/govuk-frontend/dist/govuk/components/fieldset/fixtures.json +19 -19
  188. data/node_modules/govuk-frontend/dist/govuk/components/file-upload/_file-upload.import.scss +6 -0
  189. data/node_modules/govuk-frontend/dist/govuk/components/file-upload/_index.import.scss +11 -0
  190. data/node_modules/govuk-frontend/dist/govuk/components/file-upload/_index.scss +6 -216
  191. data/node_modules/govuk-frontend/dist/govuk/components/file-upload/_mixin.scss +217 -0
  192. data/node_modules/govuk-frontend/dist/govuk/components/file-upload/file-upload.bundle.js +76 -164
  193. data/node_modules/govuk-frontend/dist/govuk/components/file-upload/file-upload.bundle.js.map +1 -1
  194. data/node_modules/govuk-frontend/dist/govuk/components/file-upload/file-upload.bundle.mjs +76 -164
  195. data/node_modules/govuk-frontend/dist/govuk/components/file-upload/file-upload.bundle.mjs.map +1 -1
  196. data/node_modules/govuk-frontend/dist/govuk/components/file-upload/file-upload.mjs +66 -32
  197. data/node_modules/govuk-frontend/dist/govuk/components/file-upload/file-upload.mjs.map +1 -1
  198. data/node_modules/govuk-frontend/dist/govuk/components/file-upload/fixtures.json +125 -138
  199. data/node_modules/govuk-frontend/dist/govuk/components/file-upload/macro-options.json +15 -10
  200. data/node_modules/govuk-frontend/dist/govuk/components/file-upload/template-enhanced-custom-wrapper-classes-and-attributes.html +11 -0
  201. data/node_modules/govuk-frontend/dist/govuk/components/file-upload/template-enhanced-multiple-files.html +11 -0
  202. data/node_modules/govuk-frontend/dist/govuk/components/file-upload/template-enhanced-with-error-message-and-hint.html +3 -2
  203. data/node_modules/govuk-frontend/dist/govuk/components/file-upload/template-enhanced.html +3 -2
  204. data/node_modules/govuk-frontend/dist/govuk/components/file-upload/template-translated.html +3 -2
  205. data/node_modules/govuk-frontend/dist/govuk/components/file-upload/template.njk +2 -2
  206. data/node_modules/govuk-frontend/dist/govuk/components/footer/_footer.import.scss +6 -0
  207. data/node_modules/govuk-frontend/dist/govuk/components/footer/_index.import.scss +8 -0
  208. data/node_modules/govuk-frontend/dist/govuk/components/footer/_index.scss +3 -192
  209. data/node_modules/govuk-frontend/dist/govuk/components/footer/_mixin.scss +199 -0
  210. data/node_modules/govuk-frontend/dist/govuk/components/footer/fixtures.json +129 -81
  211. data/node_modules/govuk-frontend/dist/govuk/components/footer/macro-options.json +1 -7
  212. data/node_modules/govuk-frontend/dist/govuk/components/footer/template-default.html +45 -24
  213. data/node_modules/govuk-frontend/dist/govuk/components/footer/template-full-gds-example.html +45 -24
  214. data/node_modules/govuk-frontend/dist/govuk/components/footer/template-three-equal-columns.html +45 -24
  215. data/node_modules/govuk-frontend/dist/govuk/components/footer/template-with-custom-html-content-licence-and-copyright-notice.html +40 -19
  216. data/node_modules/govuk-frontend/dist/govuk/components/footer/template-with-custom-meta.html +45 -24
  217. data/node_modules/govuk-frontend/dist/govuk/components/footer/template-with-custom-text-content-licence-and-copyright-notice.html +40 -19
  218. data/node_modules/govuk-frontend/dist/govuk/components/footer/template-with-default-width-navigation-one-column.html +45 -24
  219. data/node_modules/govuk-frontend/dist/govuk/components/footer/template-with-default-width-navigation-two-columns.html +45 -24
  220. data/node_modules/govuk-frontend/dist/govuk/components/footer/template-with-meta-links-and-meta-content.html +45 -24
  221. data/node_modules/govuk-frontend/dist/govuk/components/footer/template-with-navigation.html +45 -24
  222. data/node_modules/govuk-frontend/dist/govuk/components/footer/template-with-no-content-licence.html +37 -0
  223. data/node_modules/govuk-frontend/dist/govuk/components/footer/template-with-only-custom-meta.html +41 -0
  224. data/node_modules/govuk-frontend/dist/govuk/components/footer/template-with-only-meta-links.html +80 -0
  225. data/node_modules/govuk-frontend/dist/govuk/components/footer/template.njk +36 -39
  226. data/node_modules/govuk-frontend/dist/govuk/components/generic-header/README.md +15 -0
  227. data/node_modules/govuk-frontend/dist/govuk/components/generic-header/_generic-header.import.scss +6 -0
  228. data/node_modules/govuk-frontend/dist/govuk/components/generic-header/_index.import.scss +8 -0
  229. data/node_modules/govuk-frontend/dist/govuk/components/generic-header/_index.scss +5 -0
  230. data/node_modules/govuk-frontend/dist/govuk/components/generic-header/_mixin.scss +140 -0
  231. data/node_modules/govuk-frontend/dist/govuk/components/generic-header/fixtures.json +90 -0
  232. data/node_modules/govuk-frontend/dist/govuk/components/generic-header/macro-options.json +38 -0
  233. data/node_modules/govuk-frontend/dist/govuk/components/generic-header/macro.njk +3 -0
  234. data/node_modules/govuk-frontend/dist/govuk/components/generic-header/template-default.html +11 -0
  235. data/node_modules/govuk-frontend/dist/govuk/components/generic-header/template-full-width.html +20 -0
  236. data/node_modules/govuk-frontend/dist/govuk/components/generic-header/template-with-image-logo.html +20 -0
  237. data/node_modules/govuk-frontend/dist/govuk/components/generic-header/template-with-text-and-image-logo.html +20 -0
  238. data/node_modules/govuk-frontend/dist/govuk/components/generic-header/template.njk +14 -0
  239. data/node_modules/govuk-frontend/dist/govuk/components/header/README.md +1 -1
  240. data/node_modules/govuk-frontend/dist/govuk/components/header/_header.import.scss +6 -0
  241. data/node_modules/govuk-frontend/dist/govuk/components/header/_index.import.scss +8 -0
  242. data/node_modules/govuk-frontend/dist/govuk/components/header/_index.scss +3 -546
  243. data/node_modules/govuk-frontend/dist/govuk/components/header/_mixin.scss +119 -0
  244. data/node_modules/govuk-frontend/dist/govuk/components/header/fixtures.json +15 -492
  245. data/node_modules/govuk-frontend/dist/govuk/components/header/macro-options.json +2 -101
  246. data/node_modules/govuk-frontend/dist/govuk/components/header/template-default.html +12 -7
  247. data/node_modules/govuk-frontend/dist/govuk/components/header/template-full-width.html +12 -8
  248. data/node_modules/govuk-frontend/dist/govuk/components/header/template-with-product-name.html +11 -7
  249. data/node_modules/govuk-frontend/dist/govuk/components/header/template.njk +20 -63
  250. data/node_modules/govuk-frontend/dist/govuk/components/hint/_hint.import.scss +6 -0
  251. data/node_modules/govuk-frontend/dist/govuk/components/hint/_index.import.scss +8 -0
  252. data/node_modules/govuk-frontend/dist/govuk/components/hint/_index.scss +3 -43
  253. data/node_modules/govuk-frontend/dist/govuk/components/hint/_mixin.scss +47 -0
  254. data/node_modules/govuk-frontend/dist/govuk/components/hint/fixtures.json +7 -7
  255. data/node_modules/govuk-frontend/dist/govuk/components/input/_index.import.scss +11 -0
  256. data/node_modules/govuk-frontend/dist/govuk/components/input/_index.scss +6 -166
  257. data/node_modules/govuk-frontend/dist/govuk/components/input/_input.import.scss +6 -0
  258. data/node_modules/govuk-frontend/dist/govuk/components/input/_mixin.scss +161 -0
  259. data/node_modules/govuk-frontend/dist/govuk/components/input/fixtures.json +161 -180
  260. data/node_modules/govuk-frontend/dist/govuk/components/input/template-with-extra-letter-spacing.html +1 -1
  261. data/node_modules/govuk-frontend/dist/govuk/components/inset-text/_index.import.scss +8 -0
  262. data/node_modules/govuk-frontend/dist/govuk/components/inset-text/_index.scss +3 -24
  263. data/node_modules/govuk-frontend/dist/govuk/components/inset-text/_inset-text.import.scss +6 -0
  264. data/node_modules/govuk-frontend/dist/govuk/components/inset-text/_mixin.scss +31 -0
  265. data/node_modules/govuk-frontend/dist/govuk/components/inset-text/fixtures.json +7 -7
  266. data/node_modules/govuk-frontend/dist/govuk/components/label/_index.import.scss +8 -0
  267. data/node_modules/govuk-frontend/dist/govuk/components/label/_index.scss +3 -44
  268. data/node_modules/govuk-frontend/dist/govuk/components/label/_label.import.scss +6 -0
  269. data/node_modules/govuk-frontend/dist/govuk/components/label/_mixin.scss +48 -0
  270. data/node_modules/govuk-frontend/dist/govuk/components/label/fixtures.json +20 -20
  271. data/node_modules/govuk-frontend/dist/govuk/components/notification-banner/_index.import.scss +8 -0
  272. data/node_modules/govuk-frontend/dist/govuk/components/notification-banner/_index.scss +3 -91
  273. data/node_modules/govuk-frontend/dist/govuk/components/notification-banner/_mixin.scss +100 -0
  274. data/node_modules/govuk-frontend/dist/govuk/components/notification-banner/_notification-banner.import.scss +6 -0
  275. data/node_modules/govuk-frontend/dist/govuk/components/notification-banner/fixtures.json +74 -108
  276. data/node_modules/govuk-frontend/dist/govuk/components/notification-banner/notification-banner.bundle.js +7 -5
  277. data/node_modules/govuk-frontend/dist/govuk/components/notification-banner/notification-banner.bundle.js.map +1 -1
  278. data/node_modules/govuk-frontend/dist/govuk/components/notification-banner/notification-banner.bundle.mjs +7 -5
  279. data/node_modules/govuk-frontend/dist/govuk/components/notification-banner/notification-banner.bundle.mjs.map +1 -1
  280. data/node_modules/govuk-frontend/dist/govuk/components/notification-banner/notification-banner.mjs.map +1 -1
  281. data/node_modules/govuk-frontend/dist/govuk/components/notification-banner/template-with-text-as-html.html +7 -1
  282. data/node_modules/govuk-frontend/dist/govuk/components/pagination/_index.import.scss +8 -0
  283. data/node_modules/govuk-frontend/dist/govuk/components/pagination/_index.scss +3 -226
  284. data/node_modules/govuk-frontend/dist/govuk/components/pagination/_mixin.scss +235 -0
  285. data/node_modules/govuk-frontend/dist/govuk/components/pagination/_pagination.import.scss +6 -0
  286. data/node_modules/govuk-frontend/dist/govuk/components/pagination/fixtures.json +109 -105
  287. data/node_modules/govuk-frontend/dist/govuk/components/pagination/template-default.html +3 -3
  288. data/node_modules/govuk-frontend/dist/govuk/components/pagination/template-first-page.html +3 -3
  289. data/node_modules/govuk-frontend/dist/govuk/components/pagination/template-last-page.html +3 -3
  290. data/node_modules/govuk-frontend/dist/govuk/components/pagination/template-with-custom-link-and-item-text.html +3 -3
  291. data/node_modules/govuk-frontend/dist/govuk/components/pagination/template-with-many-pages.html +9 -9
  292. data/node_modules/govuk-frontend/dist/govuk/components/pagination/template.njk +4 -2
  293. data/node_modules/govuk-frontend/dist/govuk/components/panel/_index.import.scss +8 -0
  294. data/node_modules/govuk-frontend/dist/govuk/components/panel/_index.scss +3 -56
  295. data/node_modules/govuk-frontend/dist/govuk/components/panel/_mixin.scss +94 -0
  296. data/node_modules/govuk-frontend/dist/govuk/components/panel/_panel.import.scss +6 -0
  297. data/node_modules/govuk-frontend/dist/govuk/components/panel/fixtures.json +249 -16
  298. data/node_modules/govuk-frontend/dist/govuk/components/panel/macro-options.json +58 -0
  299. data/node_modules/govuk-frontend/dist/govuk/components/panel/template-default.html +1 -1
  300. data/node_modules/govuk-frontend/dist/govuk/components/panel/template-interruption-with-content-with-long-line-length.html +17 -0
  301. data/node_modules/govuk-frontend/dist/govuk/components/panel/template-interruption-with-headings-content-and-lists.html +18 -0
  302. data/node_modules/govuk-frontend/dist/govuk/components/panel/template-interruption.html +14 -0
  303. data/node_modules/govuk-frontend/dist/govuk/components/panel/template.njk +42 -2
  304. data/node_modules/govuk-frontend/dist/govuk/components/password-input/_index.import.scss +10 -0
  305. data/node_modules/govuk-frontend/dist/govuk/components/password-input/_index.scss +5 -54
  306. data/node_modules/govuk-frontend/dist/govuk/components/password-input/_mixin.scss +56 -0
  307. data/node_modules/govuk-frontend/dist/govuk/components/password-input/_password-input.import.scss +6 -0
  308. data/node_modules/govuk-frontend/dist/govuk/components/password-input/fixtures.json +53 -48
  309. data/node_modules/govuk-frontend/dist/govuk/components/password-input/password-input.bundle.js +10 -133
  310. data/node_modules/govuk-frontend/dist/govuk/components/password-input/password-input.bundle.js.map +1 -1
  311. data/node_modules/govuk-frontend/dist/govuk/components/password-input/password-input.bundle.mjs +10 -133
  312. data/node_modules/govuk-frontend/dist/govuk/components/password-input/password-input.bundle.mjs.map +1 -1
  313. data/node_modules/govuk-frontend/dist/govuk/components/password-input/password-input.mjs.map +1 -1
  314. data/node_modules/govuk-frontend/dist/govuk/components/phase-banner/_index.import.scss +9 -0
  315. data/node_modules/govuk-frontend/dist/govuk/components/phase-banner/_index.scss +4 -33
  316. data/node_modules/govuk-frontend/dist/govuk/components/phase-banner/_mixin.scss +42 -0
  317. data/node_modules/govuk-frontend/dist/govuk/components/phase-banner/_phase-banner.import.scss +6 -0
  318. data/node_modules/govuk-frontend/dist/govuk/components/phase-banner/fixtures.json +15 -15
  319. data/node_modules/govuk-frontend/dist/govuk/components/phase-banner/template-default.html +1 -1
  320. data/node_modules/govuk-frontend/dist/govuk/components/phase-banner/template.njk +1 -1
  321. data/node_modules/govuk-frontend/dist/govuk/components/radios/_index.import.scss +12 -0
  322. data/node_modules/govuk-frontend/dist/govuk/components/radios/_index.scss +7 -325
  323. data/node_modules/govuk-frontend/dist/govuk/components/radios/_mixin.scss +336 -0
  324. data/node_modules/govuk-frontend/dist/govuk/components/radios/_radios.import.scss +6 -0
  325. data/node_modules/govuk-frontend/dist/govuk/components/radios/fixtures.json +244 -354
  326. data/node_modules/govuk-frontend/dist/govuk/components/radios/macro-options.json +3 -3
  327. data/node_modules/govuk-frontend/dist/govuk/components/radios/radios.bundle.js +10 -5
  328. data/node_modules/govuk-frontend/dist/govuk/components/radios/radios.bundle.js.map +1 -1
  329. data/node_modules/govuk-frontend/dist/govuk/components/radios/radios.bundle.mjs +10 -5
  330. data/node_modules/govuk-frontend/dist/govuk/components/radios/radios.bundle.mjs.map +1 -1
  331. data/node_modules/govuk-frontend/dist/govuk/components/radios/radios.mjs.map +1 -1
  332. data/node_modules/govuk-frontend/dist/govuk/components/radios/template-default.html +5 -3
  333. data/node_modules/govuk-frontend/dist/govuk/components/radios/template-inline.html +19 -19
  334. data/node_modules/govuk-frontend/dist/govuk/components/radios/template-small-inline.html +23 -23
  335. data/node_modules/govuk-frontend/dist/govuk/components/radios/template-small-with-a-divider.html +24 -24
  336. data/node_modules/govuk-frontend/dist/govuk/components/radios/template-small-with-conditional-reveal.html +27 -27
  337. data/node_modules/govuk-frontend/dist/govuk/components/radios/template-small-with-error.html +26 -26
  338. data/node_modules/govuk-frontend/dist/govuk/components/radios/template-small-with-hint.html +25 -25
  339. data/node_modules/govuk-frontend/dist/govuk/components/radios/template-small-with-long-text.html +23 -23
  340. data/node_modules/govuk-frontend/dist/govuk/components/radios/template-small.html +23 -23
  341. data/node_modules/govuk-frontend/dist/govuk/components/radios/template-with-a-divider.html +24 -24
  342. data/node_modules/govuk-frontend/dist/govuk/components/radios/template-with-conditional-item-checked.html +35 -35
  343. data/node_modules/govuk-frontend/dist/govuk/components/radios/template-with-conditional-items-and-pre-checked-value.html +35 -35
  344. data/node_modules/govuk-frontend/dist/govuk/components/radios/template-with-conditional-items.html +35 -35
  345. data/node_modules/govuk-frontend/dist/govuk/components/radios/template-with-fieldset-and-error-message.html +20 -20
  346. data/node_modules/govuk-frontend/dist/govuk/components/radios/template-with-hint.html +24 -0
  347. data/node_modules/govuk-frontend/dist/govuk/components/radios/template-with-hints-on-items.html +23 -23
  348. data/node_modules/govuk-frontend/dist/govuk/components/radios/template-with-legend-as-page-heading.html +21 -21
  349. data/node_modules/govuk-frontend/dist/govuk/components/radios/template-with-optional-form-group-classes-showing-group-error.html +36 -36
  350. data/node_modules/govuk-frontend/dist/govuk/components/radios/template-with-very-long-option-text.html +28 -28
  351. data/node_modules/govuk-frontend/dist/govuk/components/radios/template.njk +1 -1
  352. data/node_modules/govuk-frontend/dist/govuk/components/select/_index.import.scss +11 -0
  353. data/node_modules/govuk-frontend/dist/govuk/components/select/_index.scss +6 -56
  354. data/node_modules/govuk-frontend/dist/govuk/components/select/_mixin.scss +45 -0
  355. data/node_modules/govuk-frontend/dist/govuk/components/select/_select.import.scss +6 -0
  356. data/node_modules/govuk-frontend/dist/govuk/components/select/fixtures.json +99 -115
  357. data/node_modules/govuk-frontend/dist/govuk/components/service-navigation/_index.import.scss +8 -0
  358. data/node_modules/govuk-frontend/dist/govuk/components/service-navigation/_index.scss +3 -185
  359. data/node_modules/govuk-frontend/dist/govuk/components/service-navigation/_mixin.scss +238 -0
  360. data/node_modules/govuk-frontend/dist/govuk/components/service-navigation/_service-navigation.import.scss +6 -0
  361. data/node_modules/govuk-frontend/dist/govuk/components/service-navigation/fixtures.json +210 -69
  362. data/node_modules/govuk-frontend/dist/govuk/components/service-navigation/macro-options.json +6 -0
  363. data/node_modules/govuk-frontend/dist/govuk/components/service-navigation/service-navigation.bundle.js +41 -8
  364. data/node_modules/govuk-frontend/dist/govuk/components/service-navigation/service-navigation.bundle.js.map +1 -1
  365. data/node_modules/govuk-frontend/dist/govuk/components/service-navigation/service-navigation.bundle.mjs +41 -8
  366. data/node_modules/govuk-frontend/dist/govuk/components/service-navigation/service-navigation.bundle.mjs.map +1 -1
  367. data/node_modules/govuk-frontend/dist/govuk/components/service-navigation/service-navigation.mjs +30 -2
  368. data/node_modules/govuk-frontend/dist/govuk/components/service-navigation/service-navigation.mjs.map +1 -1
  369. data/node_modules/govuk-frontend/dist/govuk/components/service-navigation/template-default.html +1 -1
  370. data/node_modules/govuk-frontend/dist/govuk/components/service-navigation/template-inverse.html +63 -0
  371. data/node_modules/govuk-frontend/dist/govuk/components/service-navigation/template-with-a-single-navigation-item-and-collapsenavigationonmobile-set-to-true.html +38 -0
  372. data/node_modules/govuk-frontend/dist/govuk/components/service-navigation/template-with-a-single-navigation-item.html +35 -0
  373. data/node_modules/govuk-frontend/dist/govuk/components/service-navigation/template-with-collapsenavigationonmobile-set-to-false.html +60 -0
  374. data/node_modules/govuk-frontend/dist/govuk/components/service-navigation/template-with-html-navigation-items.html +1 -1
  375. data/node_modules/govuk-frontend/dist/govuk/components/service-navigation/template-with-large-navigation.html +1 -1
  376. data/node_modules/govuk-frontend/dist/govuk/components/service-navigation/template-with-navigation-with-a-current-item.html +1 -1
  377. data/node_modules/govuk-frontend/dist/govuk/components/service-navigation/template-with-non-link-navigation-items.html +1 -1
  378. data/node_modules/govuk-frontend/dist/govuk/components/service-navigation/template-with-service-name-and-navigation.html +1 -1
  379. data/node_modules/govuk-frontend/dist/govuk/components/service-navigation/template.njk +4 -1
  380. data/node_modules/govuk-frontend/dist/govuk/components/skip-link/_index.import.scss +8 -0
  381. data/node_modules/govuk-frontend/dist/govuk/components/skip-link/_index.scss +3 -50
  382. data/node_modules/govuk-frontend/dist/govuk/components/skip-link/_mixin.scss +60 -0
  383. data/node_modules/govuk-frontend/dist/govuk/components/skip-link/_skip-link.import.scss +6 -0
  384. data/node_modules/govuk-frontend/dist/govuk/components/skip-link/fixtures.json +10 -10
  385. data/node_modules/govuk-frontend/dist/govuk/components/skip-link/skip-link.bundle.js +12 -19
  386. data/node_modules/govuk-frontend/dist/govuk/components/skip-link/skip-link.bundle.js.map +1 -1
  387. data/node_modules/govuk-frontend/dist/govuk/components/skip-link/skip-link.bundle.mjs +12 -19
  388. data/node_modules/govuk-frontend/dist/govuk/components/skip-link/skip-link.bundle.mjs.map +1 -1
  389. data/node_modules/govuk-frontend/dist/govuk/components/skip-link/skip-link.mjs +3 -9
  390. data/node_modules/govuk-frontend/dist/govuk/components/skip-link/skip-link.mjs.map +1 -1
  391. data/node_modules/govuk-frontend/dist/govuk/components/summary-list/_index.import.scss +8 -0
  392. data/node_modules/govuk-frontend/dist/govuk/components/summary-list/_index.scss +3 -267
  393. data/node_modules/govuk-frontend/dist/govuk/components/summary-list/_mixin.scss +286 -0
  394. data/node_modules/govuk-frontend/dist/govuk/components/summary-list/_summary-list.import.scss +6 -0
  395. data/node_modules/govuk-frontend/dist/govuk/components/summary-list/fixtures.json +282 -518
  396. data/node_modules/govuk-frontend/dist/govuk/components/table/_index.import.scss +8 -0
  397. data/node_modules/govuk-frontend/dist/govuk/components/table/_index.scss +3 -73
  398. data/node_modules/govuk-frontend/dist/govuk/components/table/_mixin.scss +77 -0
  399. data/node_modules/govuk-frontend/dist/govuk/components/table/_table.import.scss +6 -0
  400. data/node_modules/govuk-frontend/dist/govuk/components/table/fixtures.json +75 -75
  401. data/node_modules/govuk-frontend/dist/govuk/components/tabs/_index.import.scss +8 -0
  402. data/node_modules/govuk-frontend/dist/govuk/components/tabs/_index.scss +3 -132
  403. data/node_modules/govuk-frontend/dist/govuk/components/tabs/_mixin.scss +140 -0
  404. data/node_modules/govuk-frontend/dist/govuk/components/tabs/_tabs.import.scss +6 -0
  405. data/node_modules/govuk-frontend/dist/govuk/components/tabs/fixtures.json +44 -39
  406. data/node_modules/govuk-frontend/dist/govuk/components/tabs/tabs.bundle.js +13 -14
  407. data/node_modules/govuk-frontend/dist/govuk/components/tabs/tabs.bundle.js.map +1 -1
  408. data/node_modules/govuk-frontend/dist/govuk/components/tabs/tabs.bundle.mjs +13 -14
  409. data/node_modules/govuk-frontend/dist/govuk/components/tabs/tabs.bundle.mjs.map +1 -1
  410. data/node_modules/govuk-frontend/dist/govuk/components/tabs/tabs.mjs +3 -3
  411. data/node_modules/govuk-frontend/dist/govuk/components/tabs/tabs.mjs.map +1 -1
  412. data/node_modules/govuk-frontend/dist/govuk/components/tag/_index.import.scss +8 -0
  413. data/node_modules/govuk-frontend/dist/govuk/components/tag/_index.scss +3 -94
  414. data/node_modules/govuk-frontend/dist/govuk/components/tag/_mixin.scss +135 -0
  415. data/node_modules/govuk-frontend/dist/govuk/components/tag/_tag.import.scss +6 -0
  416. data/node_modules/govuk-frontend/dist/govuk/components/tag/fixtures.json +19 -43
  417. data/node_modules/govuk-frontend/dist/govuk/components/tag/template-pink.html +2 -2
  418. data/node_modules/govuk-frontend/dist/govuk/components/tag/template-turquoise.html +2 -2
  419. data/node_modules/govuk-frontend/dist/govuk/components/task-list/_index.import.scss +9 -0
  420. data/node_modules/govuk-frontend/dist/govuk/components/task-list/_index.scss +4 -76
  421. data/node_modules/govuk-frontend/dist/govuk/components/task-list/_mixin.scss +83 -0
  422. data/node_modules/govuk-frontend/dist/govuk/components/task-list/_task-list.import.scss +6 -0
  423. data/node_modules/govuk-frontend/dist/govuk/components/task-list/fixtures.json +35 -58
  424. data/node_modules/govuk-frontend/dist/govuk/components/task-list/template-forced-hover-state.html +37 -0
  425. data/node_modules/govuk-frontend/dist/govuk/components/task-list/template-with-all-possible-colours.html +131 -0
  426. data/node_modules/govuk-frontend/dist/govuk/components/task-list/template-with-hint-text-and-additional-states.html +77 -0
  427. data/node_modules/govuk-frontend/dist/govuk/components/textarea/_index.import.scss +11 -0
  428. data/node_modules/govuk-frontend/dist/govuk/components/textarea/_index.scss +6 -47
  429. data/node_modules/govuk-frontend/dist/govuk/components/textarea/_mixin.scss +43 -0
  430. data/node_modules/govuk-frontend/dist/govuk/components/textarea/_textarea.import.scss +6 -0
  431. data/node_modules/govuk-frontend/dist/govuk/components/textarea/fixtures.json +81 -81
  432. data/node_modules/govuk-frontend/dist/govuk/components/warning-text/_index.import.scss +8 -0
  433. data/node_modules/govuk-frontend/dist/govuk/components/warning-text/_index.scss +3 -64
  434. data/node_modules/govuk-frontend/dist/govuk/components/warning-text/_mixin.scss +69 -0
  435. data/node_modules/govuk-frontend/dist/govuk/components/warning-text/_warning-text.import.scss +6 -0
  436. data/node_modules/govuk-frontend/dist/govuk/components/warning-text/fixtures.json +9 -9
  437. data/node_modules/govuk-frontend/dist/govuk/core/_global-styles.import.scss +10 -0
  438. data/node_modules/govuk-frontend/dist/govuk/core/_global-styles.mixin.scss +19 -0
  439. data/node_modules/govuk-frontend/dist/govuk/core/_global-styles.scss +5 -18
  440. data/node_modules/govuk-frontend/dist/govuk/core/_index.import.scss +6 -0
  441. data/node_modules/govuk-frontend/dist/govuk/core/_index.scss +6 -7
  442. data/node_modules/govuk-frontend/dist/govuk/core/_links.import.scss +10 -0
  443. data/node_modules/govuk-frontend/dist/govuk/core/_links.mixin.scss +44 -0
  444. data/node_modules/govuk-frontend/dist/govuk/core/_links.scss +3 -40
  445. data/node_modules/govuk-frontend/dist/govuk/core/_lists.import.scss +14 -0
  446. data/node_modules/govuk-frontend/dist/govuk/core/_lists.mixin.scss +74 -0
  447. data/node_modules/govuk-frontend/dist/govuk/core/_lists.scss +6 -64
  448. data/node_modules/govuk-frontend/dist/govuk/core/_section-break.import.scss +8 -0
  449. data/node_modules/govuk-frontend/dist/govuk/core/_section-break.mixin.scss +54 -0
  450. data/node_modules/govuk-frontend/dist/govuk/core/_section-break.scss +3 -49
  451. data/node_modules/govuk-frontend/dist/govuk/core/_typography.import.scss +8 -0
  452. data/node_modules/govuk-frontend/dist/govuk/core/_typography.mixin.scss +173 -0
  453. data/node_modules/govuk-frontend/dist/govuk/core/_typography.scss +3 -187
  454. data/node_modules/govuk-frontend/dist/govuk/custom-properties/_breakpoints.import.scss +8 -0
  455. data/node_modules/govuk-frontend/dist/govuk/custom-properties/_breakpoints.mixin.scss +15 -0
  456. data/node_modules/govuk-frontend/dist/govuk/custom-properties/_breakpoints.scss +4 -0
  457. data/node_modules/govuk-frontend/dist/govuk/custom-properties/_frontend-version.import.scss +8 -0
  458. data/node_modules/govuk-frontend/dist/govuk/custom-properties/_frontend-version.mixin.scss +13 -0
  459. data/node_modules/govuk-frontend/dist/govuk/custom-properties/_frontend-version.scss +4 -0
  460. data/node_modules/govuk-frontend/dist/govuk/custom-properties/_functional-colours.import.scss +8 -0
  461. data/node_modules/govuk-frontend/dist/govuk/custom-properties/_functional-colours.mixin.scss +21 -0
  462. data/node_modules/govuk-frontend/dist/govuk/custom-properties/_functional-colours.scss +4 -0
  463. data/node_modules/govuk-frontend/dist/govuk/custom-properties/_index.import.scss +4 -0
  464. data/node_modules/govuk-frontend/dist/govuk/custom-properties/_index.scss +4 -0
  465. data/node_modules/govuk-frontend/dist/govuk/errors/index.mjs +5 -3
  466. data/node_modules/govuk-frontend/dist/govuk/errors/index.mjs.map +1 -1
  467. data/node_modules/govuk-frontend/dist/govuk/govuk-frontend.min.css +2 -2
  468. data/node_modules/govuk-frontend/dist/govuk/govuk-frontend.min.css.map +1 -1
  469. data/node_modules/govuk-frontend/dist/govuk/govuk-frontend.min.js +1 -1
  470. data/node_modules/govuk-frontend/dist/govuk/govuk-frontend.min.js.map +1 -1
  471. data/node_modules/govuk-frontend/dist/govuk/helpers/_clearfix.import.scss +2 -0
  472. data/node_modules/govuk-frontend/dist/govuk/helpers/_clearfix.scss +0 -1
  473. data/node_modules/govuk-frontend/dist/govuk/helpers/_colour.import.scss +2 -0
  474. data/node_modules/govuk-frontend/dist/govuk/helpers/_colour.scss +190 -89
  475. data/node_modules/govuk-frontend/dist/govuk/helpers/_device-pixels.import.scss +2 -0
  476. data/node_modules/govuk-frontend/dist/govuk/helpers/_device-pixels.scss +2 -1
  477. data/node_modules/govuk-frontend/dist/govuk/helpers/_focused.import.scss +2 -0
  478. data/node_modules/govuk-frontend/dist/govuk/helpers/_focused.scss +44 -7
  479. data/node_modules/govuk-frontend/dist/govuk/helpers/_font-faces--internal.scss +41 -0
  480. data/node_modules/govuk-frontend/dist/govuk/helpers/_grid.import.scss +2 -0
  481. data/node_modules/govuk-frontend/dist/govuk/helpers/_grid.scss +7 -4
  482. data/node_modules/govuk-frontend/dist/govuk/helpers/_index.import.scss +2 -0
  483. data/node_modules/govuk-frontend/dist/govuk/helpers/_index.scss +12 -13
  484. data/node_modules/govuk-frontend/dist/govuk/helpers/_links.import.scss +2 -0
  485. data/node_modules/govuk-frontend/dist/govuk/helpers/_links.scss +35 -46
  486. data/node_modules/govuk-frontend/dist/govuk/helpers/_media-queries.import.scss +2 -0
  487. data/node_modules/govuk-frontend/dist/govuk/helpers/_media-queries.scss +174 -34
  488. data/node_modules/govuk-frontend/dist/govuk/helpers/_shape-arrow.import.scss +2 -0
  489. data/node_modules/govuk-frontend/dist/govuk/helpers/_shape-arrow.scss +2 -3
  490. data/node_modules/govuk-frontend/dist/govuk/helpers/_spacing--internal.scss +80 -0
  491. data/node_modules/govuk-frontend/dist/govuk/helpers/_spacing.import.scss +2 -0
  492. data/node_modules/govuk-frontend/dist/govuk/helpers/_spacing.scss +27 -82
  493. data/node_modules/govuk-frontend/dist/govuk/helpers/_typography--internal.scss +24 -0
  494. data/node_modules/govuk-frontend/dist/govuk/helpers/_typography.import.scss +2 -0
  495. data/node_modules/govuk-frontend/dist/govuk/helpers/_typography.scss +55 -74
  496. data/node_modules/govuk-frontend/dist/govuk/helpers/_visually-hidden.import.scss +2 -0
  497. data/node_modules/govuk-frontend/dist/govuk/helpers/_visually-hidden.scss +17 -13
  498. data/node_modules/govuk-frontend/dist/govuk/helpers/_width-container.import.scss +2 -0
  499. data/node_modules/govuk-frontend/dist/govuk/helpers/_width-container.scss +73 -0
  500. data/node_modules/govuk-frontend/dist/govuk/i18n.mjs +5 -128
  501. data/node_modules/govuk-frontend/dist/govuk/i18n.mjs.map +1 -1
  502. data/node_modules/govuk-frontend/dist/govuk/index.import.scss +10 -0
  503. data/node_modules/govuk-frontend/dist/govuk/index.scss +6 -7
  504. data/node_modules/govuk-frontend/dist/govuk/init.mjs +53 -45
  505. data/node_modules/govuk-frontend/dist/govuk/init.mjs.map +1 -1
  506. data/node_modules/govuk-frontend/dist/govuk/macros/attributes.njk +30 -14
  507. data/node_modules/govuk-frontend/dist/govuk/macros/logo.njk +7 -29
  508. data/node_modules/govuk-frontend/dist/govuk/objects/_button-group.import.scss +8 -0
  509. data/node_modules/govuk-frontend/dist/govuk/objects/_button-group.mixin.scss +80 -0
  510. data/node_modules/govuk-frontend/dist/govuk/objects/_button-group.scss +3 -78
  511. data/node_modules/govuk-frontend/dist/govuk/objects/_form-group.import.scss +8 -0
  512. data/node_modules/govuk-frontend/dist/govuk/objects/_form-group.mixin.scss +26 -0
  513. data/node_modules/govuk-frontend/dist/govuk/objects/_form-group.scss +3 -23
  514. data/node_modules/govuk-frontend/dist/govuk/objects/_grid.import.scss +8 -0
  515. data/node_modules/govuk-frontend/dist/govuk/objects/_grid.mixin.scss +28 -0
  516. data/node_modules/govuk-frontend/dist/govuk/objects/_grid.scss +3 -24
  517. data/node_modules/govuk-frontend/dist/govuk/objects/_index.import.scss +7 -0
  518. data/node_modules/govuk-frontend/dist/govuk/objects/_index.scss +6 -7
  519. data/node_modules/govuk-frontend/dist/govuk/objects/_main-wrapper.import.scss +8 -0
  520. data/node_modules/govuk-frontend/dist/govuk/objects/_main-wrapper.mixin.scss +55 -0
  521. data/node_modules/govuk-frontend/dist/govuk/objects/_main-wrapper.scss +3 -53
  522. data/node_modules/govuk-frontend/dist/govuk/objects/_template.import.scss +8 -0
  523. data/node_modules/govuk-frontend/dist/govuk/objects/_template.mixin.scss +53 -0
  524. data/node_modules/govuk-frontend/dist/govuk/objects/_template.scss +3 -55
  525. data/node_modules/govuk-frontend/dist/govuk/objects/_width-container.import.scss +8 -0
  526. data/node_modules/govuk-frontend/dist/govuk/objects/_width-container.mixin.scss +9 -0
  527. data/node_modules/govuk-frontend/dist/govuk/objects/_width-container.scss +3 -75
  528. data/node_modules/govuk-frontend/dist/govuk/overrides/_display.import.scss +8 -0
  529. data/node_modules/govuk-frontend/dist/govuk/overrides/_display.mixin.scss +26 -0
  530. data/node_modules/govuk-frontend/dist/govuk/overrides/_display.scss +2 -24
  531. data/node_modules/govuk-frontend/dist/govuk/overrides/_index.import.scss +6 -0
  532. data/node_modules/govuk-frontend/dist/govuk/overrides/_index.scss +5 -6
  533. data/node_modules/govuk-frontend/dist/govuk/overrides/_spacing.import.scss +8 -0
  534. data/node_modules/govuk-frontend/dist/govuk/overrides/_spacing.mixin.scss +89 -0
  535. data/node_modules/govuk-frontend/dist/govuk/overrides/_spacing.scss +2 -84
  536. data/node_modules/govuk-frontend/dist/govuk/overrides/_text-align.import.scss +8 -0
  537. data/node_modules/govuk-frontend/dist/govuk/overrides/_text-align.mixin.scss +16 -0
  538. data/node_modules/govuk-frontend/dist/govuk/overrides/_text-align.scss +2 -14
  539. data/node_modules/govuk-frontend/dist/govuk/overrides/_typography.import.scss +8 -0
  540. data/node_modules/govuk-frontend/dist/govuk/overrides/_typography.mixin.scss +43 -0
  541. data/node_modules/govuk-frontend/dist/govuk/overrides/_typography.scss +2 -40
  542. data/node_modules/govuk-frontend/dist/govuk/overrides/_width.import.scss +8 -0
  543. data/node_modules/govuk-frontend/dist/govuk/overrides/_width.mixin.scss +50 -0
  544. data/node_modules/govuk-frontend/dist/govuk/overrides/_width.scss +2 -46
  545. data/node_modules/govuk-frontend/dist/govuk/settings/_assets.import.scss +13 -0
  546. data/node_modules/govuk-frontend/dist/govuk/settings/_assets.scss +50 -21
  547. data/node_modules/govuk-frontend/dist/govuk/settings/_colours-applied.import.scss +13 -0
  548. data/node_modules/govuk-frontend/dist/govuk/settings/_colours-functional.import.scss +2 -0
  549. data/node_modules/govuk-frontend/dist/govuk/settings/_colours-functional.scss +168 -0
  550. data/node_modules/govuk-frontend/dist/govuk/settings/_colours-legacy-functional.import.scss +2 -0
  551. data/node_modules/govuk-frontend/dist/govuk/settings/_colours-legacy-functional.scss +188 -0
  552. data/node_modules/govuk-frontend/dist/govuk/settings/_colours-organisations.import.scss +2 -0
  553. data/node_modules/govuk-frontend/dist/govuk/settings/_colours-organisations.scss +9 -274
  554. data/node_modules/govuk-frontend/dist/govuk/settings/_colours-palette--internal.scss +128 -0
  555. data/node_modules/govuk-frontend/dist/govuk/settings/_custom-properties.import.scss +2 -0
  556. data/node_modules/govuk-frontend/dist/govuk/settings/_custom-properties.scss +17 -0
  557. data/node_modules/govuk-frontend/dist/govuk/settings/_global-styles.import.scss +2 -0
  558. data/node_modules/govuk-frontend/dist/govuk/settings/_global-styles.scss +0 -1
  559. data/node_modules/govuk-frontend/dist/govuk/settings/_index.import.scss +24 -0
  560. data/node_modules/govuk-frontend/dist/govuk/settings/_index.scss +14 -13
  561. data/node_modules/govuk-frontend/dist/govuk/settings/_links.import.scss +2 -0
  562. data/node_modules/govuk-frontend/dist/govuk/settings/_links.scss +3 -3
  563. data/node_modules/govuk-frontend/dist/govuk/settings/_measurements.import.scss +2 -0
  564. data/node_modules/govuk-frontend/dist/govuk/settings/_measurements.scss +8 -17
  565. data/node_modules/govuk-frontend/dist/govuk/settings/_media-queries.import.scss +2 -0
  566. data/node_modules/govuk-frontend/dist/govuk/settings/_media-queries.scss +0 -10
  567. data/node_modules/govuk-frontend/dist/govuk/settings/_spacing.import.scss +2 -0
  568. data/node_modules/govuk-frontend/dist/govuk/settings/_spacing.scss +0 -1
  569. data/node_modules/govuk-frontend/dist/govuk/settings/_typography-font.import.scss +2 -0
  570. data/node_modules/govuk-frontend/dist/govuk/settings/_typography-font.scss +3 -2
  571. data/node_modules/govuk-frontend/dist/govuk/settings/_typography-responsive.import.scss +2 -0
  572. data/node_modules/govuk-frontend/dist/govuk/settings/_typography-responsive.scss +12 -190
  573. data/node_modules/govuk-frontend/dist/govuk/settings/_warnings--internal.scss +69 -0
  574. data/node_modules/govuk-frontend/dist/govuk/settings/_warnings.import.scss +2 -0
  575. data/node_modules/govuk-frontend/dist/govuk/settings/_warnings.scss +9 -56
  576. data/node_modules/govuk-frontend/dist/govuk/template.njk +61 -23
  577. data/node_modules/govuk-frontend/dist/govuk/tools/_exports.import.scss +2 -0
  578. data/node_modules/govuk-frontend/dist/govuk/tools/_exports.scss +12 -6
  579. data/node_modules/govuk-frontend/dist/govuk/tools/_font-url.import.scss +31 -0
  580. data/node_modules/govuk-frontend/dist/govuk/tools/_font-url.scss +22 -6
  581. data/node_modules/govuk-frontend/dist/govuk/tools/_if.import.scss +2 -0
  582. data/node_modules/govuk-frontend/dist/govuk/tools/_if.scss +23 -0
  583. data/node_modules/govuk-frontend/dist/govuk/tools/_image-url.import.scss +31 -0
  584. data/node_modules/govuk-frontend/dist/govuk/tools/_image-url.scss +22 -6
  585. data/node_modules/govuk-frontend/dist/govuk/tools/_index.import.scss +2 -0
  586. data/node_modules/govuk-frontend/dist/govuk/tools/_index.scss +6 -7
  587. data/node_modules/govuk-frontend/dist/govuk/tools/_px-to-em.import.scss +2 -0
  588. data/node_modules/govuk-frontend/dist/govuk/tools/_px-to-em.scss +9 -6
  589. data/node_modules/govuk-frontend/dist/govuk/tools/_px-to-rem.import.scss +2 -0
  590. data/node_modules/govuk-frontend/dist/govuk/tools/_px-to-rem.scss +6 -3
  591. data/node_modules/govuk-frontend/dist/govuk/utilities/_clearfix.import.scss +8 -0
  592. data/node_modules/govuk-frontend/dist/govuk/utilities/_clearfix.mixin.scss +10 -0
  593. data/node_modules/govuk-frontend/dist/govuk/utilities/_clearfix.scss +3 -6
  594. data/node_modules/govuk-frontend/dist/govuk/utilities/_index.import.scss +3 -0
  595. data/node_modules/govuk-frontend/dist/govuk/utilities/_index.scss +2 -3
  596. data/node_modules/govuk-frontend/dist/govuk/utilities/_visually-hidden.import.scss +8 -0
  597. data/node_modules/govuk-frontend/dist/govuk/utilities/_visually-hidden.mixin.scss +14 -0
  598. data/node_modules/govuk-frontend/dist/govuk/utilities/_visually-hidden.scss +2 -9
  599. data/node_modules/govuk-frontend/dist/govuk-prototype-kit/init.scss +4 -3
  600. data/node_modules/govuk-frontend/govuk-prototype-kit.config.json +5 -4
  601. data/node_modules/govuk-frontend/package.json +27 -22
  602. data/vendor/assets/assets/images/favicon.ico +0 -0
  603. data/vendor/assets/assets/images/favicon.svg +1 -1
  604. data/vendor/assets/assets/images/govuk-icon-180.png +0 -0
  605. data/vendor/assets/assets/images/govuk-icon-192.png +0 -0
  606. data/vendor/assets/assets/images/govuk-icon-512.png +0 -0
  607. data/vendor/assets/assets/images/govuk-opengraph-image.png +0 -0
  608. data/vendor/assets/assets/manifest.json.erb +39 -0
  609. data/vendor/assets/images/favicon.ico +0 -0
  610. data/vendor/assets/images/favicon.svg +1 -1
  611. data/vendor/assets/images/govuk-icon-180.png +0 -0
  612. data/vendor/assets/images/govuk-icon-192.png +0 -0
  613. data/vendor/assets/images/govuk-icon-512.png +0 -0
  614. data/vendor/assets/images/govuk-opengraph-image.png +0 -0
  615. data/vendor/assets/javascripts/defra_ruby_template.js +214 -325
  616. data/vendor/assets/javascripts/defra_ruby_template_supported.js +4 -0
  617. data/vendor/assets/stylesheets/_base.import.scss +6 -0
  618. data/vendor/assets/stylesheets/_base.scss +4 -4
  619. data/vendor/assets/stylesheets/components/_index.import.scss +38 -0
  620. data/vendor/assets/stylesheets/components/_index.scss +37 -39
  621. data/vendor/assets/stylesheets/components/accordion/_accordion.import.scss +6 -0
  622. data/vendor/assets/stylesheets/components/accordion/_index.import.scss +8 -0
  623. data/vendor/assets/stylesheets/components/accordion/_index.scss +3 -368
  624. data/vendor/assets/stylesheets/components/accordion/_mixin.scss +375 -0
  625. data/vendor/assets/stylesheets/components/back-link/_back-link.import.scss +6 -0
  626. data/vendor/assets/stylesheets/components/back-link/_index.import.scss +8 -0
  627. data/vendor/assets/stylesheets/components/back-link/_index.scss +3 -81
  628. data/vendor/assets/stylesheets/components/back-link/_mixin.scss +87 -0
  629. data/vendor/assets/stylesheets/components/breadcrumbs/_breadcrumbs.import.scss +6 -0
  630. data/vendor/assets/stylesheets/components/breadcrumbs/_index.import.scss +8 -0
  631. data/vendor/assets/stylesheets/components/breadcrumbs/_index.scss +3 -132
  632. data/vendor/assets/stylesheets/components/breadcrumbs/_mixin.scss +134 -0
  633. data/vendor/assets/stylesheets/components/button/_button.import.scss +6 -0
  634. data/vendor/assets/stylesheets/components/button/_index.import.scss +13 -0
  635. data/vendor/assets/stylesheets/components/button/_index.scss +9 -260
  636. data/vendor/assets/stylesheets/components/button/_mixin.scss +233 -0
  637. data/vendor/assets/stylesheets/components/button/_settings.import.scss +32 -0
  638. data/vendor/assets/stylesheets/components/button/_settings.scss +34 -0
  639. data/vendor/assets/stylesheets/components/character-count/_character-count.import.scss +6 -0
  640. data/vendor/assets/stylesheets/components/character-count/_index.import.scss +12 -0
  641. data/vendor/assets/stylesheets/components/character-count/_index.scss +7 -42
  642. data/vendor/assets/stylesheets/components/character-count/_mixin.scss +41 -0
  643. data/vendor/assets/stylesheets/components/checkboxes/_checkboxes.import.scss +6 -0
  644. data/vendor/assets/stylesheets/components/checkboxes/_index.import.scss +12 -0
  645. data/vendor/assets/stylesheets/components/checkboxes/_index.scss +7 -309
  646. data/vendor/assets/stylesheets/components/checkboxes/_mixin.scss +317 -0
  647. data/vendor/assets/stylesheets/components/cookie-banner/_cookie-banner.import.scss +6 -0
  648. data/vendor/assets/stylesheets/components/cookie-banner/_index.import.scss +9 -0
  649. data/vendor/assets/stylesheets/components/cookie-banner/_index.scss +4 -56
  650. data/vendor/assets/stylesheets/components/cookie-banner/_mixin.scss +56 -0
  651. data/vendor/assets/stylesheets/components/date-input/_date-input.import.scss +6 -0
  652. data/vendor/assets/stylesheets/components/date-input/_index.import.scss +13 -0
  653. data/vendor/assets/stylesheets/components/date-input/_index.scss +8 -26
  654. data/vendor/assets/stylesheets/components/date-input/_mixin.scss +29 -0
  655. data/vendor/assets/stylesheets/components/details/_details.import.scss +6 -0
  656. data/vendor/assets/stylesheets/components/details/_index.import.scss +8 -0
  657. data/vendor/assets/stylesheets/components/details/_index.scss +3 -137
  658. data/vendor/assets/stylesheets/components/details/_mixin.scss +143 -0
  659. data/vendor/assets/stylesheets/components/error-message/_error-message.import.scss +6 -0
  660. data/vendor/assets/stylesheets/components/error-message/_index.import.scss +8 -0
  661. data/vendor/assets/stylesheets/components/error-message/_index.scss +3 -12
  662. data/vendor/assets/stylesheets/components/error-message/_mixin.scss +16 -0
  663. data/vendor/assets/stylesheets/components/error-summary/_error-summary.import.scss +6 -0
  664. data/vendor/assets/stylesheets/components/error-summary/_index.import.scss +8 -0
  665. data/vendor/assets/stylesheets/components/error-summary/_index.scss +3 -53
  666. data/vendor/assets/stylesheets/components/error-summary/_mixin.scss +58 -0
  667. data/vendor/assets/stylesheets/components/exit-this-page/_exit-this-page.import.scss +6 -0
  668. data/vendor/assets/stylesheets/components/exit-this-page/_index.import.scss +9 -0
  669. data/vendor/assets/stylesheets/components/exit-this-page/_index.scss +4 -89
  670. data/vendor/assets/stylesheets/components/exit-this-page/_mixin.scss +96 -0
  671. data/vendor/assets/stylesheets/components/fieldset/_fieldset.import.scss +6 -0
  672. data/vendor/assets/stylesheets/components/fieldset/_index.import.scss +8 -0
  673. data/vendor/assets/stylesheets/components/fieldset/_index.scss +3 -67
  674. data/vendor/assets/stylesheets/components/fieldset/_mixin.scss +71 -0
  675. data/vendor/assets/stylesheets/components/file-upload/_file-upload.import.scss +6 -0
  676. data/vendor/assets/stylesheets/components/file-upload/_index.import.scss +11 -0
  677. data/vendor/assets/stylesheets/components/file-upload/_index.scss +6 -216
  678. data/vendor/assets/stylesheets/components/file-upload/_mixin.scss +217 -0
  679. data/vendor/assets/stylesheets/components/footer/_footer.import.scss +6 -0
  680. data/vendor/assets/stylesheets/components/footer/_index.import.scss +8 -0
  681. data/vendor/assets/stylesheets/components/footer/_index.scss +3 -192
  682. data/vendor/assets/stylesheets/components/footer/_mixin.scss +199 -0
  683. data/vendor/assets/stylesheets/components/generic-header/_generic-header.import.scss +6 -0
  684. data/vendor/assets/stylesheets/components/generic-header/_index.import.scss +8 -0
  685. data/vendor/assets/stylesheets/components/generic-header/_index.scss +5 -0
  686. data/vendor/assets/stylesheets/components/generic-header/_mixin.scss +140 -0
  687. data/vendor/assets/stylesheets/components/header/_header.import.scss +6 -0
  688. data/vendor/assets/stylesheets/components/header/_index.import.scss +8 -0
  689. data/vendor/assets/stylesheets/components/header/_index.scss +3 -546
  690. data/vendor/assets/stylesheets/components/header/_mixin.scss +119 -0
  691. data/vendor/assets/stylesheets/components/hint/_hint.import.scss +6 -0
  692. data/vendor/assets/stylesheets/components/hint/_index.import.scss +8 -0
  693. data/vendor/assets/stylesheets/components/hint/_index.scss +3 -43
  694. data/vendor/assets/stylesheets/components/hint/_mixin.scss +47 -0
  695. data/vendor/assets/stylesheets/components/input/_index.import.scss +11 -0
  696. data/vendor/assets/stylesheets/components/input/_index.scss +6 -166
  697. data/vendor/assets/stylesheets/components/input/_input.import.scss +6 -0
  698. data/vendor/assets/stylesheets/components/input/_mixin.scss +161 -0
  699. data/vendor/assets/stylesheets/components/inset-text/_index.import.scss +8 -0
  700. data/vendor/assets/stylesheets/components/inset-text/_index.scss +3 -24
  701. data/vendor/assets/stylesheets/components/inset-text/_inset-text.import.scss +6 -0
  702. data/vendor/assets/stylesheets/components/inset-text/_mixin.scss +31 -0
  703. data/vendor/assets/stylesheets/components/label/_index.import.scss +8 -0
  704. data/vendor/assets/stylesheets/components/label/_index.scss +3 -44
  705. data/vendor/assets/stylesheets/components/label/_label.import.scss +6 -0
  706. data/vendor/assets/stylesheets/components/label/_mixin.scss +48 -0
  707. data/vendor/assets/stylesheets/components/notification-banner/_index.import.scss +8 -0
  708. data/vendor/assets/stylesheets/components/notification-banner/_index.scss +3 -91
  709. data/vendor/assets/stylesheets/components/notification-banner/_mixin.scss +100 -0
  710. data/vendor/assets/stylesheets/components/notification-banner/_notification-banner.import.scss +6 -0
  711. data/vendor/assets/stylesheets/components/pagination/_index.import.scss +8 -0
  712. data/vendor/assets/stylesheets/components/pagination/_index.scss +3 -226
  713. data/vendor/assets/stylesheets/components/pagination/_mixin.scss +235 -0
  714. data/vendor/assets/stylesheets/components/pagination/_pagination.import.scss +6 -0
  715. data/vendor/assets/stylesheets/components/panel/_index.import.scss +8 -0
  716. data/vendor/assets/stylesheets/components/panel/_index.scss +3 -56
  717. data/vendor/assets/stylesheets/components/panel/_mixin.scss +94 -0
  718. data/vendor/assets/stylesheets/components/panel/_panel.import.scss +6 -0
  719. data/vendor/assets/stylesheets/components/password-input/_index.import.scss +10 -0
  720. data/vendor/assets/stylesheets/components/password-input/_index.scss +5 -54
  721. data/vendor/assets/stylesheets/components/password-input/_mixin.scss +56 -0
  722. data/vendor/assets/stylesheets/components/password-input/_password-input.import.scss +6 -0
  723. data/vendor/assets/stylesheets/components/phase-banner/_index.import.scss +9 -0
  724. data/vendor/assets/stylesheets/components/phase-banner/_index.scss +4 -33
  725. data/vendor/assets/stylesheets/components/phase-banner/_mixin.scss +42 -0
  726. data/vendor/assets/stylesheets/components/phase-banner/_phase-banner.import.scss +6 -0
  727. data/vendor/assets/stylesheets/components/radios/_index.import.scss +12 -0
  728. data/vendor/assets/stylesheets/components/radios/_index.scss +7 -325
  729. data/vendor/assets/stylesheets/components/radios/_mixin.scss +336 -0
  730. data/vendor/assets/stylesheets/components/radios/_radios.import.scss +6 -0
  731. data/vendor/assets/stylesheets/components/select/_index.import.scss +11 -0
  732. data/vendor/assets/stylesheets/components/select/_index.scss +6 -56
  733. data/vendor/assets/stylesheets/components/select/_mixin.scss +45 -0
  734. data/vendor/assets/stylesheets/components/select/_select.import.scss +6 -0
  735. data/vendor/assets/stylesheets/components/service-navigation/_index.import.scss +8 -0
  736. data/vendor/assets/stylesheets/components/service-navigation/_index.scss +3 -185
  737. data/vendor/assets/stylesheets/components/service-navigation/_mixin.scss +238 -0
  738. data/vendor/assets/stylesheets/components/service-navigation/_service-navigation.import.scss +6 -0
  739. data/vendor/assets/stylesheets/components/skip-link/_index.import.scss +8 -0
  740. data/vendor/assets/stylesheets/components/skip-link/_index.scss +3 -50
  741. data/vendor/assets/stylesheets/components/skip-link/_mixin.scss +60 -0
  742. data/vendor/assets/stylesheets/components/skip-link/_skip-link.import.scss +6 -0
  743. data/vendor/assets/stylesheets/components/summary-list/_index.import.scss +8 -0
  744. data/vendor/assets/stylesheets/components/summary-list/_index.scss +3 -267
  745. data/vendor/assets/stylesheets/components/summary-list/_mixin.scss +286 -0
  746. data/vendor/assets/stylesheets/components/summary-list/_summary-list.import.scss +6 -0
  747. data/vendor/assets/stylesheets/components/table/_index.import.scss +8 -0
  748. data/vendor/assets/stylesheets/components/table/_index.scss +3 -73
  749. data/vendor/assets/stylesheets/components/table/_mixin.scss +77 -0
  750. data/vendor/assets/stylesheets/components/table/_table.import.scss +6 -0
  751. data/vendor/assets/stylesheets/components/tabs/_index.import.scss +8 -0
  752. data/vendor/assets/stylesheets/components/tabs/_index.scss +3 -132
  753. data/vendor/assets/stylesheets/components/tabs/_mixin.scss +140 -0
  754. data/vendor/assets/stylesheets/components/tabs/_tabs.import.scss +6 -0
  755. data/vendor/assets/stylesheets/components/tag/_index.import.scss +8 -0
  756. data/vendor/assets/stylesheets/components/tag/_index.scss +3 -94
  757. data/vendor/assets/stylesheets/components/tag/_mixin.scss +135 -0
  758. data/vendor/assets/stylesheets/components/tag/_tag.import.scss +6 -0
  759. data/vendor/assets/stylesheets/components/task-list/_index.import.scss +9 -0
  760. data/vendor/assets/stylesheets/components/task-list/_index.scss +4 -76
  761. data/vendor/assets/stylesheets/components/task-list/_mixin.scss +83 -0
  762. data/vendor/assets/stylesheets/components/task-list/_task-list.import.scss +6 -0
  763. data/vendor/assets/stylesheets/components/textarea/_index.import.scss +11 -0
  764. data/vendor/assets/stylesheets/components/textarea/_index.scss +6 -47
  765. data/vendor/assets/stylesheets/components/textarea/_mixin.scss +43 -0
  766. data/vendor/assets/stylesheets/components/textarea/_textarea.import.scss +6 -0
  767. data/vendor/assets/stylesheets/components/warning-text/_index.import.scss +8 -0
  768. data/vendor/assets/stylesheets/components/warning-text/_index.scss +3 -64
  769. data/vendor/assets/stylesheets/components/warning-text/_mixin.scss +69 -0
  770. data/vendor/assets/stylesheets/components/warning-text/_warning-text.import.scss +6 -0
  771. data/vendor/assets/stylesheets/core/_global-styles.import.scss +10 -0
  772. data/vendor/assets/stylesheets/core/_global-styles.mixin.scss +19 -0
  773. data/vendor/assets/stylesheets/core/_global-styles.scss +5 -18
  774. data/vendor/assets/stylesheets/core/_index.import.scss +6 -0
  775. data/vendor/assets/stylesheets/core/_index.scss +6 -7
  776. data/vendor/assets/stylesheets/core/_links.import.scss +10 -0
  777. data/vendor/assets/stylesheets/core/_links.mixin.scss +44 -0
  778. data/vendor/assets/stylesheets/core/_links.scss +3 -40
  779. data/vendor/assets/stylesheets/core/_lists.import.scss +14 -0
  780. data/vendor/assets/stylesheets/core/_lists.mixin.scss +74 -0
  781. data/vendor/assets/stylesheets/core/_lists.scss +6 -64
  782. data/vendor/assets/stylesheets/core/_section-break.import.scss +8 -0
  783. data/vendor/assets/stylesheets/core/_section-break.mixin.scss +54 -0
  784. data/vendor/assets/stylesheets/core/_section-break.scss +3 -49
  785. data/vendor/assets/stylesheets/core/_typography.import.scss +8 -0
  786. data/vendor/assets/stylesheets/core/_typography.mixin.scss +173 -0
  787. data/vendor/assets/stylesheets/core/_typography.scss +3 -187
  788. data/vendor/assets/stylesheets/custom-properties/_breakpoints.import.scss +8 -0
  789. data/vendor/assets/stylesheets/custom-properties/_breakpoints.mixin.scss +15 -0
  790. data/vendor/assets/stylesheets/custom-properties/_breakpoints.scss +4 -0
  791. data/vendor/assets/stylesheets/custom-properties/_frontend-version.import.scss +8 -0
  792. data/vendor/assets/stylesheets/custom-properties/_frontend-version.mixin.scss +13 -0
  793. data/vendor/assets/stylesheets/custom-properties/_frontend-version.scss +4 -0
  794. data/vendor/assets/stylesheets/custom-properties/_functional-colours.import.scss +8 -0
  795. data/vendor/assets/stylesheets/custom-properties/_functional-colours.mixin.scss +21 -0
  796. data/vendor/assets/stylesheets/custom-properties/_functional-colours.scss +4 -0
  797. data/vendor/assets/stylesheets/custom-properties/_index.import.scss +4 -0
  798. data/vendor/assets/stylesheets/custom-properties/_index.scss +4 -0
  799. data/vendor/assets/stylesheets/defra_ruby_template.scss +29 -10
  800. data/vendor/assets/stylesheets/govuk-frontend.min.css +2 -2
  801. data/vendor/assets/stylesheets/helpers/_clearfix.import.scss +2 -0
  802. data/vendor/assets/stylesheets/helpers/_clearfix.scss +0 -1
  803. data/vendor/assets/stylesheets/helpers/_colour.import.scss +2 -0
  804. data/vendor/assets/stylesheets/helpers/_colour.scss +190 -89
  805. data/vendor/assets/stylesheets/helpers/_device-pixels.import.scss +2 -0
  806. data/vendor/assets/stylesheets/helpers/_device-pixels.scss +2 -1
  807. data/vendor/assets/stylesheets/helpers/_focused.import.scss +2 -0
  808. data/vendor/assets/stylesheets/helpers/_focused.scss +44 -7
  809. data/vendor/assets/stylesheets/helpers/_font-faces--internal.scss +41 -0
  810. data/vendor/assets/stylesheets/helpers/_grid.import.scss +2 -0
  811. data/vendor/assets/stylesheets/helpers/_grid.scss +7 -4
  812. data/vendor/assets/stylesheets/helpers/_index.import.scss +2 -0
  813. data/vendor/assets/stylesheets/helpers/_index.scss +12 -13
  814. data/vendor/assets/stylesheets/helpers/_links.import.scss +2 -0
  815. data/vendor/assets/stylesheets/helpers/_links.scss +35 -46
  816. data/vendor/assets/stylesheets/helpers/_media-queries.import.scss +2 -0
  817. data/vendor/assets/stylesheets/helpers/_media-queries.scss +174 -34
  818. data/vendor/assets/stylesheets/helpers/_shape-arrow.import.scss +2 -0
  819. data/vendor/assets/stylesheets/helpers/_shape-arrow.scss +2 -3
  820. data/vendor/assets/stylesheets/helpers/_spacing--internal.scss +80 -0
  821. data/vendor/assets/stylesheets/helpers/_spacing.import.scss +2 -0
  822. data/vendor/assets/stylesheets/helpers/_spacing.scss +27 -82
  823. data/vendor/assets/stylesheets/helpers/_typography--internal.scss +24 -0
  824. data/vendor/assets/stylesheets/helpers/_typography.import.scss +2 -0
  825. data/vendor/assets/stylesheets/helpers/_typography.scss +55 -74
  826. data/vendor/assets/stylesheets/helpers/_visually-hidden.import.scss +2 -0
  827. data/vendor/assets/stylesheets/helpers/_visually-hidden.scss +17 -13
  828. data/vendor/assets/stylesheets/helpers/_width-container.import.scss +2 -0
  829. data/vendor/assets/stylesheets/helpers/_width-container.scss +73 -0
  830. data/vendor/assets/stylesheets/index.import.scss +10 -0
  831. data/vendor/assets/stylesheets/index.scss +6 -7
  832. data/vendor/assets/stylesheets/objects/_button-group.import.scss +8 -0
  833. data/vendor/assets/stylesheets/objects/_button-group.mixin.scss +80 -0
  834. data/vendor/assets/stylesheets/objects/_button-group.scss +3 -78
  835. data/vendor/assets/stylesheets/objects/_form-group.import.scss +8 -0
  836. data/vendor/assets/stylesheets/objects/_form-group.mixin.scss +26 -0
  837. data/vendor/assets/stylesheets/objects/_form-group.scss +3 -23
  838. data/vendor/assets/stylesheets/objects/_grid.import.scss +8 -0
  839. data/vendor/assets/stylesheets/objects/_grid.mixin.scss +28 -0
  840. data/vendor/assets/stylesheets/objects/_grid.scss +3 -24
  841. data/vendor/assets/stylesheets/objects/_index.import.scss +7 -0
  842. data/vendor/assets/stylesheets/objects/_index.scss +6 -7
  843. data/vendor/assets/stylesheets/objects/_main-wrapper.import.scss +8 -0
  844. data/vendor/assets/stylesheets/objects/_main-wrapper.mixin.scss +55 -0
  845. data/vendor/assets/stylesheets/objects/_main-wrapper.scss +3 -53
  846. data/vendor/assets/stylesheets/objects/_template.import.scss +8 -0
  847. data/vendor/assets/stylesheets/objects/_template.mixin.scss +53 -0
  848. data/vendor/assets/stylesheets/objects/_template.scss +3 -55
  849. data/vendor/assets/stylesheets/objects/_width-container.import.scss +8 -0
  850. data/vendor/assets/stylesheets/objects/_width-container.mixin.scss +9 -0
  851. data/vendor/assets/stylesheets/objects/_width-container.scss +3 -75
  852. data/vendor/assets/stylesheets/overrides/_display.import.scss +8 -0
  853. data/vendor/assets/stylesheets/overrides/_display.mixin.scss +26 -0
  854. data/vendor/assets/stylesheets/overrides/_display.scss +2 -24
  855. data/vendor/assets/stylesheets/overrides/_index.import.scss +6 -0
  856. data/vendor/assets/stylesheets/overrides/_index.scss +5 -6
  857. data/vendor/assets/stylesheets/overrides/_spacing.import.scss +8 -0
  858. data/vendor/assets/stylesheets/overrides/_spacing.mixin.scss +89 -0
  859. data/vendor/assets/stylesheets/overrides/_spacing.scss +2 -84
  860. data/vendor/assets/stylesheets/overrides/_text-align.import.scss +8 -0
  861. data/vendor/assets/stylesheets/overrides/_text-align.mixin.scss +16 -0
  862. data/vendor/assets/stylesheets/overrides/_text-align.scss +2 -14
  863. data/vendor/assets/stylesheets/overrides/_typography.import.scss +8 -0
  864. data/vendor/assets/stylesheets/overrides/_typography.mixin.scss +43 -0
  865. data/vendor/assets/stylesheets/overrides/_typography.scss +2 -40
  866. data/vendor/assets/stylesheets/overrides/_width.import.scss +8 -0
  867. data/vendor/assets/stylesheets/overrides/_width.mixin.scss +50 -0
  868. data/vendor/assets/stylesheets/overrides/_width.scss +2 -46
  869. data/vendor/assets/stylesheets/settings/_assets.import.scss +13 -0
  870. data/vendor/assets/stylesheets/settings/_assets.scss +50 -21
  871. data/vendor/assets/stylesheets/settings/_colours-applied.import.scss +13 -0
  872. data/vendor/assets/stylesheets/settings/_colours-functional.import.scss +2 -0
  873. data/vendor/assets/stylesheets/settings/_colours-functional.scss +168 -0
  874. data/vendor/assets/stylesheets/settings/_colours-legacy-functional.import.scss +2 -0
  875. data/vendor/assets/stylesheets/settings/_colours-legacy-functional.scss +188 -0
  876. data/vendor/assets/stylesheets/settings/_colours-organisations.import.scss +2 -0
  877. data/vendor/assets/stylesheets/settings/_colours-organisations.scss +9 -274
  878. data/vendor/assets/stylesheets/settings/_colours-palette--internal.scss +128 -0
  879. data/vendor/assets/stylesheets/settings/_custom-properties.import.scss +2 -0
  880. data/vendor/assets/stylesheets/settings/_custom-properties.scss +17 -0
  881. data/vendor/assets/stylesheets/settings/_global-styles.import.scss +2 -0
  882. data/vendor/assets/stylesheets/settings/_global-styles.scss +0 -1
  883. data/vendor/assets/stylesheets/settings/_index.import.scss +24 -0
  884. data/vendor/assets/stylesheets/settings/_index.scss +14 -13
  885. data/vendor/assets/stylesheets/settings/_links.import.scss +2 -0
  886. data/vendor/assets/stylesheets/settings/_links.scss +3 -3
  887. data/vendor/assets/stylesheets/settings/_measurements.import.scss +2 -0
  888. data/vendor/assets/stylesheets/settings/_measurements.scss +8 -17
  889. data/vendor/assets/stylesheets/settings/_media-queries.import.scss +2 -0
  890. data/vendor/assets/stylesheets/settings/_media-queries.scss +0 -10
  891. data/vendor/assets/stylesheets/settings/_spacing.import.scss +2 -0
  892. data/vendor/assets/stylesheets/settings/_spacing.scss +0 -1
  893. data/vendor/assets/stylesheets/settings/_typography-font.import.scss +2 -0
  894. data/vendor/assets/stylesheets/settings/_typography-font.scss +3 -2
  895. data/vendor/assets/stylesheets/settings/_typography-responsive.import.scss +2 -0
  896. data/vendor/assets/stylesheets/settings/_typography-responsive.scss +12 -190
  897. data/vendor/assets/stylesheets/settings/_warnings--internal.scss +69 -0
  898. data/vendor/assets/stylesheets/settings/_warnings.import.scss +2 -0
  899. data/vendor/assets/stylesheets/settings/_warnings.scss +9 -56
  900. data/vendor/assets/stylesheets/tools/_exports.import.scss +2 -0
  901. data/vendor/assets/stylesheets/tools/_exports.scss +12 -6
  902. data/vendor/assets/stylesheets/tools/_font-url.import.scss +31 -0
  903. data/vendor/assets/stylesheets/tools/_font-url.scss +22 -6
  904. data/vendor/assets/stylesheets/tools/_if.import.scss +2 -0
  905. data/vendor/assets/stylesheets/tools/_if.scss +23 -0
  906. data/vendor/assets/stylesheets/tools/_image-url.import.scss +31 -0
  907. data/vendor/assets/stylesheets/tools/_image-url.scss +22 -6
  908. data/vendor/assets/stylesheets/tools/_index.import.scss +2 -0
  909. data/vendor/assets/stylesheets/tools/_index.scss +6 -7
  910. data/vendor/assets/stylesheets/tools/_px-to-em.import.scss +2 -0
  911. data/vendor/assets/stylesheets/tools/_px-to-em.scss +9 -6
  912. data/vendor/assets/stylesheets/tools/_px-to-rem.import.scss +2 -0
  913. data/vendor/assets/stylesheets/tools/_px-to-rem.scss +6 -3
  914. data/vendor/assets/stylesheets/utilities/_clearfix.import.scss +8 -0
  915. data/vendor/assets/stylesheets/utilities/_clearfix.mixin.scss +10 -0
  916. data/vendor/assets/stylesheets/utilities/_clearfix.scss +3 -6
  917. data/vendor/assets/stylesheets/utilities/_index.import.scss +3 -0
  918. data/vendor/assets/stylesheets/utilities/_index.scss +2 -3
  919. data/vendor/assets/stylesheets/utilities/_visually-hidden.import.scss +8 -0
  920. data/vendor/assets/stylesheets/utilities/_visually-hidden.mixin.scss +14 -0
  921. data/vendor/assets/stylesheets/utilities/_visually-hidden.scss +2 -9
  922. metadata +490 -408
  923. data/node_modules/govuk-frontend/dist/govuk/_base.scss.map +0 -1
  924. data/node_modules/govuk-frontend/dist/govuk/all.scss +0 -9
  925. data/node_modules/govuk-frontend/dist/govuk/all.scss.map +0 -1
  926. data/node_modules/govuk-frontend/dist/govuk/assets/rebrand/images/favicon.ico +0 -0
  927. data/node_modules/govuk-frontend/dist/govuk/assets/rebrand/images/favicon.svg +0 -1
  928. data/node_modules/govuk-frontend/dist/govuk/assets/rebrand/images/govuk-crest.svg +0 -1
  929. data/node_modules/govuk-frontend/dist/govuk/assets/rebrand/images/govuk-icon-180.png +0 -0
  930. data/node_modules/govuk-frontend/dist/govuk/assets/rebrand/images/govuk-icon-192.png +0 -0
  931. data/node_modules/govuk-frontend/dist/govuk/assets/rebrand/images/govuk-icon-512.png +0 -0
  932. data/node_modules/govuk-frontend/dist/govuk/assets/rebrand/images/govuk-icon-mask.svg +0 -1
  933. data/node_modules/govuk-frontend/dist/govuk/assets/rebrand/images/govuk-opengraph-image.png +0 -0
  934. data/node_modules/govuk-frontend/dist/govuk/assets/rebrand/manifest.json +0 -39
  935. data/node_modules/govuk-frontend/dist/govuk/components/_all.scss +0 -10
  936. data/node_modules/govuk-frontend/dist/govuk/components/_all.scss.map +0 -1
  937. data/node_modules/govuk-frontend/dist/govuk/components/_index.scss.map +0 -1
  938. data/node_modules/govuk-frontend/dist/govuk/components/accordion/_accordion.scss +0 -4
  939. data/node_modules/govuk-frontend/dist/govuk/components/accordion/_accordion.scss.map +0 -1
  940. data/node_modules/govuk-frontend/dist/govuk/components/accordion/_index.scss.map +0 -1
  941. data/node_modules/govuk-frontend/dist/govuk/components/accordion/template-with-focusable-elements-inside.html +0 -26
  942. data/node_modules/govuk-frontend/dist/govuk/components/accordion/template-with-one-section-open.html +0 -30
  943. data/node_modules/govuk-frontend/dist/govuk/components/accordion/template-with-translations.html +0 -30
  944. data/node_modules/govuk-frontend/dist/govuk/components/back-link/_back-link.scss +0 -4
  945. data/node_modules/govuk-frontend/dist/govuk/components/back-link/_back-link.scss.map +0 -1
  946. data/node_modules/govuk-frontend/dist/govuk/components/back-link/_index.scss.map +0 -1
  947. data/node_modules/govuk-frontend/dist/govuk/components/back-link/template-with-custom-link.html +0 -1
  948. data/node_modules/govuk-frontend/dist/govuk/components/back-link/template-with-custom-text.html +0 -1
  949. data/node_modules/govuk-frontend/dist/govuk/components/breadcrumbs/_breadcrumbs.scss +0 -4
  950. data/node_modules/govuk-frontend/dist/govuk/components/breadcrumbs/_breadcrumbs.scss.map +0 -1
  951. data/node_modules/govuk-frontend/dist/govuk/components/breadcrumbs/_index.scss.map +0 -1
  952. data/node_modules/govuk-frontend/dist/govuk/components/breadcrumbs/template-with-multiple-levels.html +0 -16
  953. data/node_modules/govuk-frontend/dist/govuk/components/button/_button.scss +0 -4
  954. data/node_modules/govuk-frontend/dist/govuk/components/button/_button.scss.map +0 -1
  955. data/node_modules/govuk-frontend/dist/govuk/components/button/_index.scss.map +0 -1
  956. data/node_modules/govuk-frontend/dist/govuk/components/button/template-input-disabled.html +0 -1
  957. data/node_modules/govuk-frontend/dist/govuk/components/button/template-input.html +0 -1
  958. data/node_modules/govuk-frontend/dist/govuk/components/button/template-inverse-link.html +0 -3
  959. data/node_modules/govuk-frontend/dist/govuk/components/button/template-inverse-start.html +0 -6
  960. data/node_modules/govuk-frontend/dist/govuk/components/button/template-prevent-double-click.html +0 -3
  961. data/node_modules/govuk-frontend/dist/govuk/components/button/template-secondary-link.html +0 -3
  962. data/node_modules/govuk-frontend/dist/govuk/components/button/template-start-link.html +0 -6
  963. data/node_modules/govuk-frontend/dist/govuk/components/button/template-warning-link.html +0 -3
  964. data/node_modules/govuk-frontend/dist/govuk/components/button/template-with-active-state.html +0 -3
  965. data/node_modules/govuk-frontend/dist/govuk/components/button/template-with-focus-state.html +0 -3
  966. data/node_modules/govuk-frontend/dist/govuk/components/button/template-with-hover-state.html +0 -3
  967. data/node_modules/govuk-frontend/dist/govuk/components/character-count/_character-count.scss +0 -4
  968. data/node_modules/govuk-frontend/dist/govuk/components/character-count/_character-count.scss.map +0 -1
  969. data/node_modules/govuk-frontend/dist/govuk/components/character-count/_index.scss.map +0 -1
  970. data/node_modules/govuk-frontend/dist/govuk/components/character-count/template-with-custom-textarea-description.html +0 -9
  971. data/node_modules/govuk-frontend/dist/govuk/components/character-count/template-with-error.html +0 -12
  972. data/node_modules/govuk-frontend/dist/govuk/components/character-count/template-with-translations.html +0 -9
  973. data/node_modules/govuk-frontend/dist/govuk/components/checkboxes/_checkboxes.scss +0 -4
  974. data/node_modules/govuk-frontend/dist/govuk/components/checkboxes/_checkboxes.scss.map +0 -1
  975. data/node_modules/govuk-frontend/dist/govuk/components/checkboxes/_index.scss.map +0 -1
  976. data/node_modules/govuk-frontend/dist/govuk/components/checkboxes/template-small-with-disabled.html +0 -27
  977. data/node_modules/govuk-frontend/dist/govuk/components/checkboxes/template-with-a-medium-legend.html +0 -33
  978. data/node_modules/govuk-frontend/dist/govuk/components/checkboxes/template-with-conditional-item-checked.html +0 -39
  979. data/node_modules/govuk-frontend/dist/govuk/components/checkboxes/template-with-conditional-items-with-special-characters.html +0 -39
  980. data/node_modules/govuk-frontend/dist/govuk/components/checkboxes/template-with-disabled-item.html +0 -29
  981. data/node_modules/govuk-frontend/dist/govuk/components/checkboxes/template-with-error-message-and-hints-on-items.html +0 -39
  982. data/node_modules/govuk-frontend/dist/govuk/components/checkboxes/template-with-fieldset-and-error-message.html +0 -30
  983. data/node_modules/govuk-frontend/dist/govuk/components/checkboxes/template-with-id-and-name.html +0 -30
  984. data/node_modules/govuk-frontend/dist/govuk/components/checkboxes/template-with-single-option-and-hint-set-aria-describedby-on-input.html +0 -16
  985. data/node_modules/govuk-frontend/dist/govuk/components/checkboxes/template-with-single-option-set-aria-describedby-on-input.html +0 -13
  986. data/node_modules/govuk-frontend/dist/govuk/components/checkboxes/template-without-fieldset.html +0 -22
  987. data/node_modules/govuk-frontend/dist/govuk/components/cookie-banner/_cookie-banner.scss +0 -4
  988. data/node_modules/govuk-frontend/dist/govuk/components/cookie-banner/_cookie-banner.scss.map +0 -1
  989. data/node_modules/govuk-frontend/dist/govuk/components/cookie-banner/_index.scss.map +0 -1
  990. data/node_modules/govuk-frontend/dist/govuk/components/cookie-banner/template-client-side-implementation.html +0 -60
  991. data/node_modules/govuk-frontend/dist/govuk/components/date-input/_date-input.scss +0 -4
  992. data/node_modules/govuk-frontend/dist/govuk/components/date-input/_date-input.scss.map +0 -1
  993. data/node_modules/govuk-frontend/dist/govuk/components/date-input/_index.scss.map +0 -1
  994. data/node_modules/govuk-frontend/dist/govuk/components/date-input/template-with-autocomplete-values.html +0 -36
  995. data/node_modules/govuk-frontend/dist/govuk/components/date-input/template-with-default-items.html +0 -36
  996. data/node_modules/govuk-frontend/dist/govuk/components/date-input/template-with-errors-and-hint.html +0 -39
  997. data/node_modules/govuk-frontend/dist/govuk/components/date-input/template-with-input-attributes.html +0 -36
  998. data/node_modules/govuk-frontend/dist/govuk/components/date-input/template-with-optional-form-group-classes.html +0 -36
  999. data/node_modules/govuk-frontend/dist/govuk/components/details/_details.scss +0 -4
  1000. data/node_modules/govuk-frontend/dist/govuk/components/details/_details.scss.map +0 -1
  1001. data/node_modules/govuk-frontend/dist/govuk/components/details/_index.scss.map +0 -1
  1002. data/node_modules/govuk-frontend/dist/govuk/components/error-message/_error-message.scss +0 -4
  1003. data/node_modules/govuk-frontend/dist/govuk/components/error-message/_error-message.scss.map +0 -1
  1004. data/node_modules/govuk-frontend/dist/govuk/components/error-message/_index.scss.map +0 -1
  1005. data/node_modules/govuk-frontend/dist/govuk/components/error-summary/_error-summary.scss +0 -4
  1006. data/node_modules/govuk-frontend/dist/govuk/components/error-summary/_error-summary.scss.map +0 -1
  1007. data/node_modules/govuk-frontend/dist/govuk/components/error-summary/_index.scss.map +0 -1
  1008. data/node_modules/govuk-frontend/dist/govuk/components/exit-this-page/_exit-this-page.scss +0 -4
  1009. data/node_modules/govuk-frontend/dist/govuk/components/exit-this-page/_exit-this-page.scss.map +0 -1
  1010. data/node_modules/govuk-frontend/dist/govuk/components/exit-this-page/_index.scss.map +0 -1
  1011. data/node_modules/govuk-frontend/dist/govuk/components/exit-this-page/template-translated.html +0 -5
  1012. data/node_modules/govuk-frontend/dist/govuk/components/fieldset/_fieldset.scss +0 -4
  1013. data/node_modules/govuk-frontend/dist/govuk/components/fieldset/_fieldset.scss.map +0 -1
  1014. data/node_modules/govuk-frontend/dist/govuk/components/fieldset/_index.scss.map +0 -1
  1015. data/node_modules/govuk-frontend/dist/govuk/components/file-upload/_file-upload.scss +0 -4
  1016. data/node_modules/govuk-frontend/dist/govuk/components/file-upload/_file-upload.scss.map +0 -1
  1017. data/node_modules/govuk-frontend/dist/govuk/components/file-upload/_index.scss.map +0 -1
  1018. data/node_modules/govuk-frontend/dist/govuk/components/file-upload/template-allows-direct-media-capture.html +0 -6
  1019. data/node_modules/govuk-frontend/dist/govuk/components/file-upload/template-allows-image-files-only.html +0 -6
  1020. data/node_modules/govuk-frontend/dist/govuk/components/file-upload/template-allows-multiple-files.html +0 -6
  1021. data/node_modules/govuk-frontend/dist/govuk/components/file-upload/template-disabled.html +0 -6
  1022. data/node_modules/govuk-frontend/dist/govuk/components/file-upload/template-enhanced-disabled.html +0 -13
  1023. data/node_modules/govuk-frontend/dist/govuk/components/file-upload/template-with-optional-form-group-classes.html +0 -6
  1024. data/node_modules/govuk-frontend/dist/govuk/components/footer/_footer.scss +0 -4
  1025. data/node_modules/govuk-frontend/dist/govuk/components/footer/_footer.scss.map +0 -1
  1026. data/node_modules/govuk-frontend/dist/govuk/components/footer/_index.scss.map +0 -1
  1027. data/node_modules/govuk-frontend/dist/govuk/components/footer/template-with-meta.html +0 -56
  1028. data/node_modules/govuk-frontend/dist/govuk/components/header/_header.scss +0 -4
  1029. data/node_modules/govuk-frontend/dist/govuk/components/header/_header.scss.map +0 -1
  1030. data/node_modules/govuk-frontend/dist/govuk/components/header/_index.scss.map +0 -1
  1031. data/node_modules/govuk-frontend/dist/govuk/components/header/header.bundle.js +0 -233
  1032. data/node_modules/govuk-frontend/dist/govuk/components/header/header.bundle.js.map +0 -1
  1033. data/node_modules/govuk-frontend/dist/govuk/components/header/header.bundle.mjs +0 -225
  1034. data/node_modules/govuk-frontend/dist/govuk/components/header/header.bundle.mjs.map +0 -1
  1035. data/node_modules/govuk-frontend/dist/govuk/components/header/header.mjs +0 -89
  1036. data/node_modules/govuk-frontend/dist/govuk/components/header/header.mjs.map +0 -1
  1037. data/node_modules/govuk-frontend/dist/govuk/components/header/template-full-width-with-navigation.html +0 -55
  1038. data/node_modules/govuk-frontend/dist/govuk/components/header/template-navigation-item-with-html.html +0 -57
  1039. data/node_modules/govuk-frontend/dist/govuk/components/header/template-navigation-item-with-text-without-link.html +0 -51
  1040. data/node_modules/govuk-frontend/dist/govuk/components/header/template-with-custom-menu-button-label.html +0 -59
  1041. data/node_modules/govuk-frontend/dist/govuk/components/header/template-with-custom-menu-button-text.html +0 -59
  1042. data/node_modules/govuk-frontend/dist/govuk/components/header/template-with-custom-navigation-label.html +0 -59
  1043. data/node_modules/govuk-frontend/dist/govuk/components/header/template-with-full-width-border.html +0 -30
  1044. data/node_modules/govuk-frontend/dist/govuk/components/header/template-with-large-navigation.html +0 -119
  1045. data/node_modules/govuk-frontend/dist/govuk/components/header/template-with-navigation.html +0 -59
  1046. data/node_modules/govuk-frontend/dist/govuk/components/header/template-with-service-name-and-navigation.html +0 -62
  1047. data/node_modules/govuk-frontend/dist/govuk/components/header/template-with-service-name-but-no-service-url.html +0 -34
  1048. data/node_modules/govuk-frontend/dist/govuk/components/header/template-with-service-name.html +0 -34
  1049. data/node_modules/govuk-frontend/dist/govuk/components/header/template-with-st-edwards-crown.html +0 -19
  1050. data/node_modules/govuk-frontend/dist/govuk/components/hint/_hint.scss +0 -4
  1051. data/node_modules/govuk-frontend/dist/govuk/components/hint/_hint.scss.map +0 -1
  1052. data/node_modules/govuk-frontend/dist/govuk/components/hint/_index.scss.map +0 -1
  1053. data/node_modules/govuk-frontend/dist/govuk/components/input/_index.scss.map +0 -1
  1054. data/node_modules/govuk-frontend/dist/govuk/components/input/_input.scss +0 -4
  1055. data/node_modules/govuk-frontend/dist/govuk/components/input/_input.scss.map +0 -1
  1056. data/node_modules/govuk-frontend/dist/govuk/components/input/template-disabled.html +0 -6
  1057. data/node_modules/govuk-frontend/dist/govuk/components/input/template-with-autocapitalize-turned-off.html +0 -6
  1058. data/node_modules/govuk-frontend/dist/govuk/components/input/template-with-autocomplete-attribute.html +0 -6
  1059. data/node_modules/govuk-frontend/dist/govuk/components/input/template-with-optional-form-group-classes.html +0 -6
  1060. data/node_modules/govuk-frontend/dist/govuk/components/input/template-with-pattern-attribute.html +0 -6
  1061. data/node_modules/govuk-frontend/dist/govuk/components/input/template-with-prefix-and-long-suffix.html +0 -10
  1062. data/node_modules/govuk-frontend/dist/govuk/components/input/template-with-spellcheck-disabled.html +0 -6
  1063. data/node_modules/govuk-frontend/dist/govuk/components/input/template-with-spellcheck-enabled.html +0 -6
  1064. data/node_modules/govuk-frontend/dist/govuk/components/inset-text/_index.scss.map +0 -1
  1065. data/node_modules/govuk-frontend/dist/govuk/components/inset-text/_inset-text.scss +0 -4
  1066. data/node_modules/govuk-frontend/dist/govuk/components/inset-text/_inset-text.scss.map +0 -1
  1067. data/node_modules/govuk-frontend/dist/govuk/components/label/_index.scss.map +0 -1
  1068. data/node_modules/govuk-frontend/dist/govuk/components/label/_label.scss +0 -4
  1069. data/node_modules/govuk-frontend/dist/govuk/components/label/_label.scss.map +0 -1
  1070. data/node_modules/govuk-frontend/dist/govuk/components/notification-banner/_index.scss.map +0 -1
  1071. data/node_modules/govuk-frontend/dist/govuk/components/notification-banner/_notification-banner.scss +0 -4
  1072. data/node_modules/govuk-frontend/dist/govuk/components/notification-banner/_notification-banner.scss.map +0 -1
  1073. data/node_modules/govuk-frontend/dist/govuk/components/notification-banner/template-auto-focus-disabled-with-type-as-success.html +0 -12
  1074. data/node_modules/govuk-frontend/dist/govuk/components/notification-banner/template-auto-focus-explicitly-enabled-with-type-as-success.html +0 -12
  1075. data/node_modules/govuk-frontend/dist/govuk/components/notification-banner/template-custom-tabindex.html +0 -12
  1076. data/node_modules/govuk-frontend/dist/govuk/components/notification-banner/template-paragraph-as-html-heading.html +0 -10
  1077. data/node_modules/govuk-frontend/dist/govuk/components/notification-banner/template-rolealert-overridden-to-roleregion-with-type-as-success.html +0 -12
  1078. data/node_modules/govuk-frontend/dist/govuk/components/notification-banner/template-success-with-custom-html.html +0 -16
  1079. data/node_modules/govuk-frontend/dist/govuk/components/notification-banner/template-with-a-list.html +0 -16
  1080. data/node_modules/govuk-frontend/dist/govuk/components/pagination/_index.scss.map +0 -1
  1081. data/node_modules/govuk-frontend/dist/govuk/components/pagination/_pagination.scss +0 -4
  1082. data/node_modules/govuk-frontend/dist/govuk/components/pagination/_pagination.scss.map +0 -1
  1083. data/node_modules/govuk-frontend/dist/govuk/components/pagination/template-with-custom-accessible-labels-on-item-links.html +0 -39
  1084. data/node_modules/govuk-frontend/dist/govuk/components/pagination/template-with-custom-navigation-landmark.html +0 -39
  1085. data/node_modules/govuk-frontend/dist/govuk/components/pagination/template-with-prev-and-next-only-in-a-different-language.html +0 -22
  1086. data/node_modules/govuk-frontend/dist/govuk/components/panel/_index.scss.map +0 -1
  1087. data/node_modules/govuk-frontend/dist/govuk/components/panel/_panel.scss +0 -4
  1088. data/node_modules/govuk-frontend/dist/govuk/components/panel/_panel.scss.map +0 -1
  1089. data/node_modules/govuk-frontend/dist/govuk/components/panel/template-custom-heading-level.html +0 -8
  1090. data/node_modules/govuk-frontend/dist/govuk/components/password-input/_index.scss.map +0 -1
  1091. data/node_modules/govuk-frontend/dist/govuk/components/password-input/_password-input.scss +0 -4
  1092. data/node_modules/govuk-frontend/dist/govuk/components/password-input/_password-input.scss.map +0 -1
  1093. data/node_modules/govuk-frontend/dist/govuk/components/password-input/template-with-new-password-autocomplete.html +0 -11
  1094. data/node_modules/govuk-frontend/dist/govuk/components/password-input/template-with-translations.html +0 -11
  1095. data/node_modules/govuk-frontend/dist/govuk/components/phase-banner/_index.scss.map +0 -1
  1096. data/node_modules/govuk-frontend/dist/govuk/components/phase-banner/_phase-banner.scss +0 -4
  1097. data/node_modules/govuk-frontend/dist/govuk/components/phase-banner/_phase-banner.scss.map +0 -1
  1098. data/node_modules/govuk-frontend/dist/govuk/components/radios/_index.scss.map +0 -1
  1099. data/node_modules/govuk-frontend/dist/govuk/components/radios/_radios.scss +0 -4
  1100. data/node_modules/govuk-frontend/dist/govuk/components/radios/_radios.scss.map +0 -1
  1101. data/node_modules/govuk-frontend/dist/govuk/components/radios/template-prechecked-using-value.html +0 -16
  1102. data/node_modules/govuk-frontend/dist/govuk/components/radios/template-prechecked.html +0 -19
  1103. data/node_modules/govuk-frontend/dist/govuk/components/radios/template-small-inline-extreme.html +0 -69
  1104. data/node_modules/govuk-frontend/dist/govuk/components/radios/template-small-with-disabled.html +0 -27
  1105. data/node_modules/govuk-frontend/dist/govuk/components/radios/template-with-a-medium-legend.html +0 -24
  1106. data/node_modules/govuk-frontend/dist/govuk/components/radios/template-with-conditional-items-with-special-characters.html +0 -39
  1107. data/node_modules/govuk-frontend/dist/govuk/components/radios/template-with-disabled.html +0 -29
  1108. data/node_modules/govuk-frontend/dist/govuk/components/radios/template-with-idprefix.html +0 -16
  1109. data/node_modules/govuk-frontend/dist/govuk/components/select/_index.scss.map +0 -1
  1110. data/node_modules/govuk-frontend/dist/govuk/components/select/_select.scss +0 -4
  1111. data/node_modules/govuk-frontend/dist/govuk/components/select/_select.scss.map +0 -1
  1112. data/node_modules/govuk-frontend/dist/govuk/components/select/template-id.html +0 -7
  1113. data/node_modules/govuk-frontend/dist/govuk/components/select/template-with-no-items.html +0 -7
  1114. data/node_modules/govuk-frontend/dist/govuk/components/select/template-with-optional-form-group-classes.html +0 -10
  1115. data/node_modules/govuk-frontend/dist/govuk/components/select/template-with-selected-value.html +0 -10
  1116. data/node_modules/govuk-frontend/dist/govuk/components/service-navigation/_index.scss.map +0 -1
  1117. data/node_modules/govuk-frontend/dist/govuk/components/service-navigation/_service-navigation.scss +0 -4
  1118. data/node_modules/govuk-frontend/dist/govuk/components/service-navigation/_service-navigation.scss.map +0 -1
  1119. data/node_modules/govuk-frontend/dist/govuk/components/service-navigation/template-with-navigation-with-an-active-item.html +0 -58
  1120. data/node_modules/govuk-frontend/dist/govuk/components/skip-link/_index.scss.map +0 -1
  1121. data/node_modules/govuk-frontend/dist/govuk/components/skip-link/_skip-link.scss +0 -4
  1122. data/node_modules/govuk-frontend/dist/govuk/components/skip-link/_skip-link.scss.map +0 -1
  1123. data/node_modules/govuk-frontend/dist/govuk/components/summary-list/_index.scss.map +0 -1
  1124. data/node_modules/govuk-frontend/dist/govuk/components/summary-list/_summary-list.scss +0 -4
  1125. data/node_modules/govuk-frontend/dist/govuk/components/summary-list/_summary-list.scss.map +0 -1
  1126. data/node_modules/govuk-frontend/dist/govuk/components/summary-list/template-as-a-summary-card-with-a-custom-header-level.html +0 -28
  1127. data/node_modules/govuk-frontend/dist/govuk/components/summary-list/template-check-your-answers.html +0 -98
  1128. data/node_modules/govuk-frontend/dist/govuk/components/summary-list/template-overridden-widths.html +0 -58
  1129. data/node_modules/govuk-frontend/dist/govuk/components/summary-list/template-translated.html +0 -51
  1130. data/node_modules/govuk-frontend/dist/govuk/components/summary-list/template-with-no-first-action.html +0 -58
  1131. data/node_modules/govuk-frontend/dist/govuk/components/summary-list/template-with-some-actions.html +0 -45
  1132. data/node_modules/govuk-frontend/dist/govuk/components/table/_index.scss.map +0 -1
  1133. data/node_modules/govuk-frontend/dist/govuk/components/table/_table.scss +0 -4
  1134. data/node_modules/govuk-frontend/dist/govuk/components/table/_table.scss.map +0 -1
  1135. data/node_modules/govuk-frontend/dist/govuk/components/table/template-with-small-text-modifier-for-tables-with-a-lot-of-data.html +0 -19
  1136. data/node_modules/govuk-frontend/dist/govuk/components/tabs/_index.scss.map +0 -1
  1137. data/node_modules/govuk-frontend/dist/govuk/components/tabs/_tabs.scss +0 -4
  1138. data/node_modules/govuk-frontend/dist/govuk/components/tabs/_tabs.scss.map +0 -1
  1139. data/node_modules/govuk-frontend/dist/govuk/components/tag/_index.scss.map +0 -1
  1140. data/node_modules/govuk-frontend/dist/govuk/components/tag/_tag.scss +0 -4
  1141. data/node_modules/govuk-frontend/dist/govuk/components/tag/_tag.scss.map +0 -1
  1142. data/node_modules/govuk-frontend/dist/govuk/components/tag/template-blue.html +0 -3
  1143. data/node_modules/govuk-frontend/dist/govuk/components/tag/template-light-blue.html +0 -3
  1144. data/node_modules/govuk-frontend/dist/govuk/components/task-list/_index.scss.map +0 -1
  1145. data/node_modules/govuk-frontend/dist/govuk/components/task-list/_task-list.scss +0 -4
  1146. data/node_modules/govuk-frontend/dist/govuk/components/task-list/_task-list.scss.map +0 -1
  1147. data/node_modules/govuk-frontend/dist/govuk/components/task-list/template-example-with-3-states.html +0 -49
  1148. data/node_modules/govuk-frontend/dist/govuk/components/task-list/template-example-with-all-possible-colours.html +0 -143
  1149. data/node_modules/govuk-frontend/dist/govuk/components/task-list/template-example-with-hint-text-and-additional-states.html +0 -77
  1150. data/node_modules/govuk-frontend/dist/govuk/components/textarea/_index.scss.map +0 -1
  1151. data/node_modules/govuk-frontend/dist/govuk/components/textarea/_textarea.scss +0 -4
  1152. data/node_modules/govuk-frontend/dist/govuk/components/textarea/_textarea.scss.map +0 -1
  1153. data/node_modules/govuk-frontend/dist/govuk/components/textarea/template-with-autocomplete-attribute.html +0 -6
  1154. data/node_modules/govuk-frontend/dist/govuk/components/textarea/template-with-optional-form-group-classes.html +0 -6
  1155. data/node_modules/govuk-frontend/dist/govuk/components/textarea/template-with-spellcheck-disabled.html +0 -6
  1156. data/node_modules/govuk-frontend/dist/govuk/components/textarea/template-with-spellcheck-enabled.html +0 -6
  1157. data/node_modules/govuk-frontend/dist/govuk/components/warning-text/_index.scss.map +0 -1
  1158. data/node_modules/govuk-frontend/dist/govuk/components/warning-text/_warning-text.scss +0 -4
  1159. data/node_modules/govuk-frontend/dist/govuk/components/warning-text/_warning-text.scss.map +0 -1
  1160. data/node_modules/govuk-frontend/dist/govuk/core/_all.scss +0 -10
  1161. data/node_modules/govuk-frontend/dist/govuk/core/_all.scss.map +0 -1
  1162. data/node_modules/govuk-frontend/dist/govuk/core/_global-styles.scss.map +0 -1
  1163. data/node_modules/govuk-frontend/dist/govuk/core/_govuk-frontend-properties.scss +0 -12
  1164. data/node_modules/govuk-frontend/dist/govuk/core/_govuk-frontend-properties.scss.map +0 -1
  1165. data/node_modules/govuk-frontend/dist/govuk/core/_index.scss.map +0 -1
  1166. data/node_modules/govuk-frontend/dist/govuk/core/_links.scss.map +0 -1
  1167. data/node_modules/govuk-frontend/dist/govuk/core/_lists.scss.map +0 -1
  1168. data/node_modules/govuk-frontend/dist/govuk/core/_section-break.scss.map +0 -1
  1169. data/node_modules/govuk-frontend/dist/govuk/core/_typography.scss.map +0 -1
  1170. data/node_modules/govuk-frontend/dist/govuk/helpers/_all.scss +0 -10
  1171. data/node_modules/govuk-frontend/dist/govuk/helpers/_all.scss.map +0 -1
  1172. data/node_modules/govuk-frontend/dist/govuk/helpers/_clearfix.scss.map +0 -1
  1173. data/node_modules/govuk-frontend/dist/govuk/helpers/_colour.scss.map +0 -1
  1174. data/node_modules/govuk-frontend/dist/govuk/helpers/_device-pixels.scss.map +0 -1
  1175. data/node_modules/govuk-frontend/dist/govuk/helpers/_focused.scss.map +0 -1
  1176. data/node_modules/govuk-frontend/dist/govuk/helpers/_font-faces.scss +0 -41
  1177. data/node_modules/govuk-frontend/dist/govuk/helpers/_font-faces.scss.map +0 -1
  1178. data/node_modules/govuk-frontend/dist/govuk/helpers/_grid.scss.map +0 -1
  1179. data/node_modules/govuk-frontend/dist/govuk/helpers/_index.scss.map +0 -1
  1180. data/node_modules/govuk-frontend/dist/govuk/helpers/_links.scss.map +0 -1
  1181. data/node_modules/govuk-frontend/dist/govuk/helpers/_media-queries.scss.map +0 -1
  1182. data/node_modules/govuk-frontend/dist/govuk/helpers/_shape-arrow.scss.map +0 -1
  1183. data/node_modules/govuk-frontend/dist/govuk/helpers/_spacing.scss.map +0 -1
  1184. data/node_modules/govuk-frontend/dist/govuk/helpers/_typography.scss.map +0 -1
  1185. data/node_modules/govuk-frontend/dist/govuk/helpers/_visually-hidden.scss.map +0 -1
  1186. data/node_modules/govuk-frontend/dist/govuk/index.scss.map +0 -1
  1187. data/node_modules/govuk-frontend/dist/govuk/objects/_all.scss +0 -10
  1188. data/node_modules/govuk-frontend/dist/govuk/objects/_all.scss.map +0 -1
  1189. data/node_modules/govuk-frontend/dist/govuk/objects/_button-group.scss.map +0 -1
  1190. data/node_modules/govuk-frontend/dist/govuk/objects/_form-group.scss.map +0 -1
  1191. data/node_modules/govuk-frontend/dist/govuk/objects/_grid.scss.map +0 -1
  1192. data/node_modules/govuk-frontend/dist/govuk/objects/_index.scss.map +0 -1
  1193. data/node_modules/govuk-frontend/dist/govuk/objects/_main-wrapper.scss.map +0 -1
  1194. data/node_modules/govuk-frontend/dist/govuk/objects/_template.scss.map +0 -1
  1195. data/node_modules/govuk-frontend/dist/govuk/objects/_width-container.scss.map +0 -1
  1196. data/node_modules/govuk-frontend/dist/govuk/overrides/_all.scss +0 -9
  1197. data/node_modules/govuk-frontend/dist/govuk/overrides/_all.scss.map +0 -1
  1198. data/node_modules/govuk-frontend/dist/govuk/overrides/_display.scss.map +0 -1
  1199. data/node_modules/govuk-frontend/dist/govuk/overrides/_index.scss.map +0 -1
  1200. data/node_modules/govuk-frontend/dist/govuk/overrides/_spacing.scss.map +0 -1
  1201. data/node_modules/govuk-frontend/dist/govuk/overrides/_text-align.scss.map +0 -1
  1202. data/node_modules/govuk-frontend/dist/govuk/overrides/_typography.scss.map +0 -1
  1203. data/node_modules/govuk-frontend/dist/govuk/overrides/_width.scss.map +0 -1
  1204. data/node_modules/govuk-frontend/dist/govuk/settings/_all.scss +0 -10
  1205. data/node_modules/govuk-frontend/dist/govuk/settings/_all.scss.map +0 -1
  1206. data/node_modules/govuk-frontend/dist/govuk/settings/_assets.scss.map +0 -1
  1207. data/node_modules/govuk-frontend/dist/govuk/settings/_colours-applied.scss +0 -195
  1208. data/node_modules/govuk-frontend/dist/govuk/settings/_colours-applied.scss.map +0 -1
  1209. data/node_modules/govuk-frontend/dist/govuk/settings/_colours-organisations.scss.map +0 -1
  1210. data/node_modules/govuk-frontend/dist/govuk/settings/_colours-palette.scss +0 -37
  1211. data/node_modules/govuk-frontend/dist/govuk/settings/_colours-palette.scss.map +0 -1
  1212. data/node_modules/govuk-frontend/dist/govuk/settings/_global-styles.scss.map +0 -1
  1213. data/node_modules/govuk-frontend/dist/govuk/settings/_index.scss.map +0 -1
  1214. data/node_modules/govuk-frontend/dist/govuk/settings/_links.scss.map +0 -1
  1215. data/node_modules/govuk-frontend/dist/govuk/settings/_measurements.scss.map +0 -1
  1216. data/node_modules/govuk-frontend/dist/govuk/settings/_media-queries.scss.map +0 -1
  1217. data/node_modules/govuk-frontend/dist/govuk/settings/_spacing.scss.map +0 -1
  1218. data/node_modules/govuk-frontend/dist/govuk/settings/_typography-font.scss.map +0 -1
  1219. data/node_modules/govuk-frontend/dist/govuk/settings/_typography-responsive.scss.map +0 -1
  1220. data/node_modules/govuk-frontend/dist/govuk/settings/_warnings.scss.map +0 -1
  1221. data/node_modules/govuk-frontend/dist/govuk/tools/_all.scss +0 -10
  1222. data/node_modules/govuk-frontend/dist/govuk/tools/_all.scss.map +0 -1
  1223. data/node_modules/govuk-frontend/dist/govuk/tools/_exports.scss.map +0 -1
  1224. data/node_modules/govuk-frontend/dist/govuk/tools/_font-url.scss.map +0 -1
  1225. data/node_modules/govuk-frontend/dist/govuk/tools/_image-url.scss.map +0 -1
  1226. data/node_modules/govuk-frontend/dist/govuk/tools/_index.scss.map +0 -1
  1227. data/node_modules/govuk-frontend/dist/govuk/tools/_px-to-em.scss.map +0 -1
  1228. data/node_modules/govuk-frontend/dist/govuk/tools/_px-to-rem.scss.map +0 -1
  1229. data/node_modules/govuk-frontend/dist/govuk/tools/_rebrand.scss +0 -65
  1230. data/node_modules/govuk-frontend/dist/govuk/tools/_rebrand.scss.map +0 -1
  1231. data/node_modules/govuk-frontend/dist/govuk/utilities/_all.scss +0 -10
  1232. data/node_modules/govuk-frontend/dist/govuk/utilities/_all.scss.map +0 -1
  1233. data/node_modules/govuk-frontend/dist/govuk/utilities/_clearfix.scss.map +0 -1
  1234. data/node_modules/govuk-frontend/dist/govuk/utilities/_index.scss.map +0 -1
  1235. data/node_modules/govuk-frontend/dist/govuk/utilities/_visually-hidden.scss.map +0 -1
  1236. data/node_modules/govuk-frontend/dist/govuk/vendor/_sass-mq.scss +0 -349
  1237. data/node_modules/govuk-frontend/dist/govuk/vendor/_sass-mq.scss.map +0 -1
  1238. data/node_modules/govuk-frontend/dist/govuk-prototype-kit/functions.js +0 -25
  1239. data/node_modules/govuk-frontend/dist/govuk-prototype-kit/init.scss.map +0 -1
  1240. data/spec/spec_helper.rb +0 -98
  1241. data/spec/tasks/assets_spec.rb +0 -53
  1242. data/vendor/assets/assets/manifest.json +0 -39
  1243. data/vendor/assets/assets/rebrand/images/favicon.ico +0 -0
  1244. data/vendor/assets/assets/rebrand/images/favicon.svg +0 -1
  1245. data/vendor/assets/assets/rebrand/images/govuk-crest.svg +0 -1
  1246. data/vendor/assets/assets/rebrand/images/govuk-icon-180.png +0 -0
  1247. data/vendor/assets/assets/rebrand/images/govuk-icon-192.png +0 -0
  1248. data/vendor/assets/assets/rebrand/images/govuk-icon-512.png +0 -0
  1249. data/vendor/assets/assets/rebrand/images/govuk-icon-mask.svg +0 -1
  1250. data/vendor/assets/assets/rebrand/images/govuk-opengraph-image.png +0 -0
  1251. data/vendor/assets/assets/rebrand/manifest.json +0 -39
  1252. data/vendor/assets/images/govuk-crest-2x.png +0 -0
  1253. data/vendor/assets/images/govuk-crest.png +0 -0
  1254. data/vendor/assets/stylesheets/all.scss +0 -9
  1255. data/vendor/assets/stylesheets/components/_all.scss +0 -10
  1256. data/vendor/assets/stylesheets/components/accordion/_accordion.scss +0 -4
  1257. data/vendor/assets/stylesheets/components/back-link/_back-link.scss +0 -4
  1258. data/vendor/assets/stylesheets/components/breadcrumbs/_breadcrumbs.scss +0 -4
  1259. data/vendor/assets/stylesheets/components/button/_button.scss +0 -4
  1260. data/vendor/assets/stylesheets/components/character-count/_character-count.scss +0 -4
  1261. data/vendor/assets/stylesheets/components/checkboxes/_checkboxes.scss +0 -4
  1262. data/vendor/assets/stylesheets/components/cookie-banner/_cookie-banner.scss +0 -4
  1263. data/vendor/assets/stylesheets/components/date-input/_date-input.scss +0 -4
  1264. data/vendor/assets/stylesheets/components/details/_details.scss +0 -4
  1265. data/vendor/assets/stylesheets/components/error-message/_error-message.scss +0 -4
  1266. data/vendor/assets/stylesheets/components/error-summary/_error-summary.scss +0 -4
  1267. data/vendor/assets/stylesheets/components/exit-this-page/_exit-this-page.scss +0 -4
  1268. data/vendor/assets/stylesheets/components/fieldset/_fieldset.scss +0 -4
  1269. data/vendor/assets/stylesheets/components/file-upload/_file-upload.scss +0 -4
  1270. data/vendor/assets/stylesheets/components/footer/_footer.scss +0 -4
  1271. data/vendor/assets/stylesheets/components/header/_header.scss +0 -4
  1272. data/vendor/assets/stylesheets/components/hint/_hint.scss +0 -4
  1273. data/vendor/assets/stylesheets/components/input/_input.scss +0 -4
  1274. data/vendor/assets/stylesheets/components/inset-text/_inset-text.scss +0 -4
  1275. data/vendor/assets/stylesheets/components/label/_label.scss +0 -4
  1276. data/vendor/assets/stylesheets/components/notification-banner/_notification-banner.scss +0 -4
  1277. data/vendor/assets/stylesheets/components/pagination/_pagination.scss +0 -4
  1278. data/vendor/assets/stylesheets/components/panel/_panel.scss +0 -4
  1279. data/vendor/assets/stylesheets/components/password-input/_password-input.scss +0 -4
  1280. data/vendor/assets/stylesheets/components/phase-banner/_phase-banner.scss +0 -4
  1281. data/vendor/assets/stylesheets/components/radios/_radios.scss +0 -4
  1282. data/vendor/assets/stylesheets/components/select/_select.scss +0 -4
  1283. data/vendor/assets/stylesheets/components/service-navigation/_service-navigation.scss +0 -4
  1284. data/vendor/assets/stylesheets/components/skip-link/_skip-link.scss +0 -4
  1285. data/vendor/assets/stylesheets/components/summary-list/_summary-list.scss +0 -4
  1286. data/vendor/assets/stylesheets/components/table/_table.scss +0 -4
  1287. data/vendor/assets/stylesheets/components/tabs/_tabs.scss +0 -4
  1288. data/vendor/assets/stylesheets/components/tag/_tag.scss +0 -4
  1289. data/vendor/assets/stylesheets/components/task-list/_task-list.scss +0 -4
  1290. data/vendor/assets/stylesheets/components/textarea/_textarea.scss +0 -4
  1291. data/vendor/assets/stylesheets/components/warning-text/_warning-text.scss +0 -4
  1292. data/vendor/assets/stylesheets/core/_all.scss +0 -10
  1293. data/vendor/assets/stylesheets/core/_govuk-frontend-properties.scss +0 -12
  1294. data/vendor/assets/stylesheets/helpers/_all.scss +0 -10
  1295. data/vendor/assets/stylesheets/helpers/_font-faces.scss +0 -41
  1296. data/vendor/assets/stylesheets/objects/_all.scss +0 -10
  1297. data/vendor/assets/stylesheets/overrides/_all.scss +0 -9
  1298. data/vendor/assets/stylesheets/settings/_all.scss +0 -10
  1299. data/vendor/assets/stylesheets/settings/_colours-applied.scss +0 -195
  1300. data/vendor/assets/stylesheets/settings/_colours-palette.scss +0 -37
  1301. data/vendor/assets/stylesheets/tools/_all.scss +0 -10
  1302. data/vendor/assets/stylesheets/tools/_rebrand.scss +0 -65
  1303. data/vendor/assets/stylesheets/utilities/_all.scss +0 -10
  1304. data/vendor/assets/stylesheets/vendor/_sass-mq.scss +0 -349
  1305. /data/node_modules/govuk-frontend/dist/govuk/components/date-input/{template-complete-question.html → template-with-items.html} +0 -0
  1306. /data/node_modules/govuk-frontend/dist/govuk/components/table/{template-table-with-head-and-caption.html → template-with-head-and-caption.html} +0 -0
  1307. /data/node_modules/govuk-frontend/dist/govuk/components/table/{template-table-with-head.html → template-with-head.html} +0 -0
  1308. /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,9 +1,3 @@
1
- function getFragmentFromUrl(url) {
2
- if (!url.includes('#')) {
3
- return undefined;
4
- }
5
- return url.split('#').pop();
6
- }
7
1
  function setFocus($element, options = {}) {
8
2
  var _options$onBeforeFocu;
9
3
  const isFocusable = $element.getAttribute('tabindex');
@@ -47,6 +41,12 @@ function isSupported($scope = document.body) {
47
41
  }
48
42
  return $scope.classList.contains('govuk-frontend-supported');
49
43
  }
44
+ function isArray(option) {
45
+ return Array.isArray(option);
46
+ }
47
+ function isObject(option) {
48
+ return !!option && typeof option === 'object' && !isArray(option);
49
+ }
50
50
  function formatErrorMessage(Component, message) {
51
51
  return `${Component.moduleName}: ${message}`;
52
52
  }
@@ -54,9 +54,6 @@ function formatErrorMessage(Component, message) {
54
54
  * @typedef ComponentWithModuleName
55
55
  * @property {string} moduleName - Name of the component
56
56
  */
57
- /**
58
- * @import { ObjectNested } from './configuration.mjs'
59
- */
60
57
 
61
58
  class GOVUKFrontendError extends Error {
62
59
  constructor(...args) {
@@ -79,7 +76,7 @@ class SupportError extends GOVUKFrontendError {
79
76
  class ElementError extends GOVUKFrontendError {
80
77
  constructor(messageOrOptions) {
81
78
  let message = typeof messageOrOptions === 'string' ? messageOrOptions : '';
82
- if (typeof messageOrOptions === 'object') {
79
+ if (isObject(messageOrOptions)) {
83
80
  const {
84
81
  component,
85
82
  identifier,
@@ -88,7 +85,9 @@ class ElementError extends GOVUKFrontendError {
88
85
  } = messageOrOptions;
89
86
  message = identifier;
90
87
  message += element ? ` is not of type ${expectedType != null ? expectedType : 'HTMLElement'}` : ' not found';
91
- message = formatErrorMessage(component, message);
88
+ if (component) {
89
+ message = formatErrorMessage(component, message);
90
+ }
92
91
  }
93
92
  super(message);
94
93
  this.name = 'ElementError';
@@ -178,16 +177,10 @@ class SkipLink extends Component {
178
177
  super($root);
179
178
  const hash = this.$root.hash;
180
179
  const href = (_this$$root$getAttrib = this.$root.getAttribute('href')) != null ? _this$$root$getAttrib : '';
181
- let url;
182
- try {
183
- url = new window.URL(this.$root.href);
184
- } catch (error) {
185
- throw new ElementError(`Skip link: Target link (\`href="${href}"\`) is invalid`);
186
- }
187
- if (url.origin !== window.location.origin || url.pathname !== window.location.pathname) {
180
+ if (this.$root.origin !== window.location.origin || this.$root.pathname !== window.location.pathname) {
188
181
  return;
189
182
  }
190
- const linkedElementId = getFragmentFromUrl(hash);
183
+ const linkedElementId = hash.replace('#', '');
191
184
  if (!linkedElementId) {
192
185
  throw new ElementError(`Skip link: Target link (\`href="${href}"\`) has no hash fragment`);
193
186
  }
@@ -1 +1 @@
1
- {"version":3,"file":"skip-link.bundle.mjs","sources":["../../../../src/govuk/common/index.mjs","../../../../src/govuk/errors/index.mjs","../../../../src/govuk/component.mjs","../../../../src/govuk/components/skip-link/skip-link.mjs"],"sourcesContent":["/**\n * Common helpers which do not require polyfill.\n *\n * IMPORTANT: If a helper require a polyfill, please isolate it in its own module\n * so that the polyfill can be properly tree-shaken and does not burden\n * the components that do not need that helper\n */\n\n/**\n * Get hash fragment from URL\n *\n * Extract the hash fragment (everything after the hash) from a URL,\n * but not including the hash symbol\n *\n * @private\n * @param {string} url - URL\n * @returns {string | undefined} Fragment from URL, without the hash\n */\nexport function getFragmentFromUrl(url) {\n if (!url.includes('#')) {\n return undefined\n }\n\n return url.split('#').pop()\n}\n\n/**\n * Get GOV.UK Frontend breakpoint value from CSS custom property\n *\n * @private\n * @param {string} name - Breakpoint name\n * @returns {{ property: string, value?: string }} Breakpoint object\n */\nexport function getBreakpoint(name) {\n const property = `--govuk-frontend-breakpoint-${name}`\n\n // Get value from `<html>` with breakpoints on CSS :root\n const value = window\n .getComputedStyle(document.documentElement)\n .getPropertyValue(property)\n\n return {\n property,\n value: value || undefined\n }\n}\n\n/**\n * Move focus to element\n *\n * Sets tabindex to -1 to make the element programmatically focusable,\n * but removes it on blur as the element doesn't need to be focused again.\n *\n * @private\n * @template {HTMLElement} FocusElement\n * @param {FocusElement} $element - HTML element\n * @param {object} [options] - Handler options\n * @param {function(this: FocusElement): void} [options.onBeforeFocus] - Callback before focus\n * @param {function(this: FocusElement): void} [options.onBlur] - Callback on blur\n */\nexport function setFocus($element, options = {}) {\n const isFocusable = $element.getAttribute('tabindex')\n\n if (!isFocusable) {\n $element.setAttribute('tabindex', '-1')\n }\n\n /**\n * Handle element focus\n */\n function onFocus() {\n $element.addEventListener('blur', onBlur, { once: true })\n }\n\n /**\n * Handle element blur\n */\n function onBlur() {\n options.onBlur?.call($element)\n\n if (!isFocusable) {\n $element.removeAttribute('tabindex')\n }\n }\n\n // Add listener to reset element on blur, after focus\n $element.addEventListener('focus', onFocus, { once: true })\n\n // Focus element\n options.onBeforeFocus?.call($element)\n $element.focus()\n}\n\n/**\n * Checks if component is already initialised\n *\n * @internal\n * @param {Element} $root - HTML element to be checked\n * @param {string} moduleName - name of component module\n * @returns {boolean} Whether component is already initialised\n */\nexport function isInitialised($root, moduleName) {\n return (\n $root instanceof HTMLElement &&\n $root.hasAttribute(`data-${moduleName}-init`)\n )\n}\n\n/**\n * Checks if GOV.UK Frontend is supported on this page\n *\n * Some browsers will load and run our JavaScript but GOV.UK Frontend\n * won't be supported.\n *\n * @param {HTMLElement | null} [$scope] - (internal) `<body>` HTML element checked for browser support\n * @returns {boolean} Whether GOV.UK Frontend is supported on this page\n */\nexport function isSupported($scope = document.body) {\n if (!$scope) {\n return false\n }\n\n return $scope.classList.contains('govuk-frontend-supported')\n}\n\n/**\n * Check for an array\n *\n * @internal\n * @param {unknown} option - Option to check\n * @returns {boolean} Whether the option is an array\n */\nfunction isArray(option) {\n return Array.isArray(option)\n}\n\n/**\n * Check for an object\n *\n * @internal\n * @template {Partial<Record<keyof ObjectType, unknown>>} [ObjectType=ObjectNested]\n * @param {unknown | ObjectType} option - Option to check\n * @returns {option is ObjectType} Whether the option is an object\n */\nexport function isObject(option) {\n return !!option && typeof option === 'object' && !isArray(option)\n}\n\n/**\n * Format error message\n *\n * @internal\n * @param {ComponentWithModuleName} Component - Component that threw the error\n * @param {string} message - Error message\n * @returns {string} - Formatted error message\n */\nexport function formatErrorMessage(Component, message) {\n return `${Component.moduleName}: ${message}`\n}\n\n/* eslint-disable jsdoc/valid-types --\n * `{new(...args: any[] ): object}` is not recognised as valid\n * https://github.com/gajus/eslint-plugin-jsdoc/issues/145#issuecomment-1308722878\n * https://github.com/jsdoc-type-pratt-parser/jsdoc-type-pratt-parser/issues/131\n **/\n\n/**\n * @typedef ComponentWithModuleName\n * @property {string} moduleName - Name of the component\n */\n\n/* eslint-enable jsdoc/valid-types */\n\n/**\n * @import { ObjectNested } from './configuration.mjs'\n */\n","import { formatErrorMessage } from '../common/index.mjs'\n\n/**\n * GOV.UK Frontend error\n *\n * A base class for `Error`s thrown by GOV.UK Frontend.\n *\n * It is meant to be extended into specific types of errors\n * to be thrown by our code.\n *\n * @example\n * ```js\n * class MissingRootError extends GOVUKFrontendError {\n * // Setting an explicit name is important as extending the class will not\n * // set a new `name` on the subclass. The `name` property is important\n * // to ensure intelligible error names even if the class name gets\n * // mangled by a minifier\n * name = \"MissingRootError\"\n * }\n * ```\n * @virtual\n */\nexport class GOVUKFrontendError extends Error {\n name = 'GOVUKFrontendError'\n}\n\n/**\n * Indicates that GOV.UK Frontend is not supported\n */\nexport class SupportError extends GOVUKFrontendError {\n name = 'SupportError'\n\n /**\n * Checks if GOV.UK Frontend is supported on this page\n *\n * @param {HTMLElement | null} [$scope] - HTML element `<body>` checked for browser support\n */\n constructor($scope = document.body) {\n const supportMessage =\n 'noModule' in HTMLScriptElement.prototype\n ? 'GOV.UK Frontend initialised without `<body class=\"govuk-frontend-supported\">` from template `<script>` snippet'\n : 'GOV.UK Frontend is not supported in this browser'\n\n super(\n $scope\n ? supportMessage\n : 'GOV.UK Frontend initialised without `<script type=\"module\">`'\n )\n }\n}\n\n/**\n * Indicates that a component has received an illegal configuration\n */\nexport class ConfigError extends GOVUKFrontendError {\n name = 'ConfigError'\n}\n\n/**\n * Indicates an issue with an element (possibly `null` or `undefined`)\n */\nexport class ElementError extends GOVUKFrontendError {\n name = 'ElementError'\n\n /**\n * @internal\n * @overload\n * @param {string} message - Element error message\n */\n\n /**\n * @internal\n * @overload\n * @param {ElementErrorOptions} options - Element error options\n */\n\n /**\n * @internal\n * @param {string | ElementErrorOptions} messageOrOptions - Element error message or options\n */\n constructor(messageOrOptions) {\n let message = typeof messageOrOptions === 'string' ? messageOrOptions : ''\n\n // Build message from options\n if (typeof messageOrOptions === 'object') {\n const { component, identifier, element, expectedType } = messageOrOptions\n\n message = identifier\n\n // Append reason\n message += element\n ? ` is not of type ${expectedType ?? 'HTMLElement'}`\n : ' not found'\n\n message = formatErrorMessage(component, message)\n }\n\n super(message)\n }\n}\n\n/**\n * Indicates that a component is already initialised\n */\nexport class InitError extends GOVUKFrontendError {\n name = 'InitError'\n\n /**\n * @internal\n * @param {ComponentWithModuleName | string} componentOrMessage - name of the component module\n */\n constructor(componentOrMessage) {\n const message =\n typeof componentOrMessage === 'string'\n ? componentOrMessage\n : formatErrorMessage(\n componentOrMessage,\n `Root element (\\`$root\\`) already initialised`\n )\n\n super(message)\n }\n}\n\n/**\n * Element error options\n *\n * @internal\n * @typedef {object} ElementErrorOptions\n * @property {string} identifier - An identifier that'll let the user understand which element has an error. This is whatever makes the most sense\n * @property {Element | null} [element] - The element in error\n * @property {string} [expectedType] - The type that was expected for the identifier\n * @property {ComponentWithModuleName} component - Component throwing the error\n */\n\n/**\n * @import { ComponentWithModuleName } from '../common/index.mjs'\n */\n","import { isInitialised, isSupported } from './common/index.mjs'\nimport { ElementError, InitError, SupportError } from './errors/index.mjs'\n\n/**\n * Base Component class\n *\n * Centralises the behaviours shared by our components\n *\n * @virtual\n * @template {Element} [RootElementType=HTMLElement]\n */\nexport class Component {\n /**\n * @type {typeof Element}\n */\n static elementType = HTMLElement\n\n // allows Typescript user to work around the lack of types\n // in GOVUKFrontend package, Typescript is not aware of $root\n // in components that extend GOVUKFrontendComponent\n /**\n * Returns the root element of the component\n *\n * @protected\n * @returns {RootElementType} - the root element of component\n */\n get $root() {\n return this._$root\n }\n\n /**\n * @protected\n * @type {RootElementType}\n */\n _$root\n\n /**\n * Constructs a new component, validating that GOV.UK Frontend is supported\n *\n * @internal\n * @param {Element | null} [$root] - HTML element to use for component\n */\n constructor($root) {\n const childConstructor = /** @type {ChildClassConstructor} */ (\n this.constructor\n )\n\n // TypeScript does not enforce that inheriting classes will define a `moduleName`\n // (even if we add a `@virtual` `static moduleName` property to this class).\n // While we trust users to do this correctly, we do a little check to provide them\n // a helpful error message.\n //\n // After this, we'll be sure that `childConstructor` has a `moduleName`\n // as expected of the `ChildClassConstructor` we've cast `this.constructor` to.\n if (typeof childConstructor.moduleName !== 'string') {\n throw new InitError(`\\`moduleName\\` not defined in component`)\n }\n\n if (!($root instanceof childConstructor.elementType)) {\n throw new ElementError({\n element: $root,\n component: childConstructor,\n identifier: 'Root element (`$root`)',\n expectedType: childConstructor.elementType.name\n })\n } else {\n this._$root = /** @type {RootElementType} */ ($root)\n }\n\n childConstructor.checkSupport()\n\n this.checkInitialised()\n\n const moduleName = childConstructor.moduleName\n\n this.$root.setAttribute(`data-${moduleName}-init`, '')\n }\n\n /**\n * Validates whether component is already initialised\n *\n * @private\n * @throws {InitError} when component is already initialised\n */\n checkInitialised() {\n const constructor = /** @type {ChildClassConstructor} */ (this.constructor)\n const moduleName = constructor.moduleName\n\n if (moduleName && isInitialised(this.$root, moduleName)) {\n throw new InitError(constructor)\n }\n }\n\n /**\n * Validates whether components are supported\n *\n * @throws {SupportError} when the components are not supported\n */\n static checkSupport() {\n if (!isSupported()) {\n throw new SupportError()\n }\n }\n}\n\n/**\n * @typedef ChildClass\n * @property {string} moduleName - The module name that'll be looked for in the DOM when initialising the component\n */\n\n/**\n * @typedef {typeof Component & ChildClass} ChildClassConstructor\n */\n","import { getFragmentFromUrl, setFocus } from '../../common/index.mjs'\nimport { Component } from '../../component.mjs'\nimport { ElementError } from '../../errors/index.mjs'\n\n/**\n * Skip link component\n *\n * @preserve\n * @augments Component<HTMLAnchorElement>\n */\nexport class SkipLink extends Component {\n static elementType = HTMLAnchorElement\n\n /**\n * @param {Element | null} $root - HTML element to use for skip link\n * @throws {ElementError} when $root is not set or the wrong type\n * @throws {ElementError} when $root.hash does not contain a hash\n * @throws {ElementError} when the linked element is missing or the wrong type\n */\n constructor($root) {\n super($root)\n\n const hash = this.$root.hash\n const href = this.$root.getAttribute('href') ?? ''\n\n /** @type {URL | undefined} */\n let url\n\n /**\n * Check for valid link URL\n *\n * {@link https://caniuse.com/url}\n * {@link https://url.spec.whatwg.org}\n *\n */\n try {\n url = new window.URL(this.$root.href)\n } catch (error) {\n throw new ElementError(\n `Skip link: Target link (\\`href=\"${href}\"\\`) is invalid`\n )\n }\n\n // Return early for external URLs or links to other pages\n if (\n url.origin !== window.location.origin ||\n url.pathname !== window.location.pathname\n ) {\n return\n }\n\n const linkedElementId = getFragmentFromUrl(hash)\n\n // Check link path matching current page\n if (!linkedElementId) {\n throw new ElementError(\n `Skip link: Target link (\\`href=\"${href}\"\\`) has no hash fragment`\n )\n }\n\n const $linkedElement = document.getElementById(linkedElementId)\n\n // Check for link target element\n if (!$linkedElement) {\n throw new ElementError({\n component: SkipLink,\n element: $linkedElement,\n identifier: `Target content (\\`id=\"${linkedElementId}\"\\`)`\n })\n }\n\n /**\n * Focus the linked element on click\n *\n * Adds a helper CSS class to hide native focus styles,\n * but removes it on blur to restore native focus styles\n */\n this.$root.addEventListener('click', () =>\n setFocus($linkedElement, {\n onBeforeFocus() {\n $linkedElement.classList.add('govuk-skip-link-focused-element')\n },\n onBlur() {\n $linkedElement.classList.remove('govuk-skip-link-focused-element')\n }\n })\n )\n }\n\n /**\n * Name for the component used when initialising using data-module attributes.\n */\n static moduleName = 'govuk-skip-link'\n}\n"],"names":["getFragmentFromUrl","url","includes","undefined","split","pop","setFocus","$element","options","_options$onBeforeFocu","isFocusable","getAttribute","setAttribute","onFocus","addEventListener","onBlur","once","_options$onBlur","call","removeAttribute","onBeforeFocus","focus","isInitialised","$root","moduleName","HTMLElement","hasAttribute","isSupported","$scope","document","body","classList","contains","formatErrorMessage","Component","message","GOVUKFrontendError","Error","constructor","args","name","SupportError","supportMessage","HTMLScriptElement","prototype","ElementError","messageOrOptions","component","identifier","element","expectedType","InitError","componentOrMessage","_$root","childConstructor","elementType","checkSupport","checkInitialised","SkipLink","_this$$root$getAttrib","hash","href","window","URL","error","origin","location","pathname","linkedElementId","$linkedElement","getElementById","add","remove","HTMLAnchorElement"],"mappings":"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"}
1
+ {"version":3,"file":"skip-link.bundle.mjs","sources":["../../../../src/govuk/common/index.mjs","../../../../src/govuk/errors/index.mjs","../../../../src/govuk/component.mjs","../../../../src/govuk/components/skip-link/skip-link.mjs"],"sourcesContent":["/**\n * Common helpers which do not require polyfill.\n *\n * IMPORTANT: If a helper require a polyfill, please isolate it in its own module\n * so that the polyfill can be properly tree-shaken and does not burden\n * the components that do not need that helper\n */\n\n/**\n * Get GOV.UK Frontend breakpoint value from CSS custom property\n *\n * @private\n * @param {string} name - Breakpoint name\n * @returns {{ property: string, value?: string }} Breakpoint object\n */\nexport function getBreakpoint(name) {\n const property = `--govuk-breakpoint-${name}`\n\n // Get value from `<html>` with breakpoints on CSS :root\n const value = window\n .getComputedStyle(document.documentElement)\n .getPropertyValue(property)\n\n return {\n property,\n value: value || undefined\n }\n}\n\n/**\n * Move focus to element\n *\n * Sets tabindex to -1 to make the element programmatically focusable,\n * but removes it on blur as the element doesn't need to be focused again.\n *\n * @private\n * @template {HTMLElement} FocusElement\n * @param {FocusElement} $element - HTML element\n * @param {object} [options] - Handler options\n * @param {function(this: FocusElement): void} [options.onBeforeFocus] - Callback before focus\n * @param {function(this: FocusElement): void} [options.onBlur] - Callback on blur\n */\nexport function setFocus($element, options = {}) {\n const isFocusable = $element.getAttribute('tabindex')\n\n if (!isFocusable) {\n $element.setAttribute('tabindex', '-1')\n }\n\n /**\n * Handle element focus\n */\n function onFocus() {\n $element.addEventListener('blur', onBlur, { once: true })\n }\n\n /**\n * Handle element blur\n */\n function onBlur() {\n options.onBlur?.call($element)\n\n if (!isFocusable) {\n $element.removeAttribute('tabindex')\n }\n }\n\n // Add listener to reset element on blur, after focus\n $element.addEventListener('focus', onFocus, { once: true })\n\n // Focus element\n options.onBeforeFocus?.call($element)\n $element.focus()\n}\n\n/**\n * Checks if component is already initialised\n *\n * @internal\n * @param {Element} $root - HTML element to be checked\n * @param {string} moduleName - name of component module\n * @returns {boolean} Whether component is already initialised\n */\nexport function isInitialised($root, moduleName) {\n return (\n $root instanceof HTMLElement &&\n $root.hasAttribute(`data-${moduleName}-init`)\n )\n}\n\n/**\n * Checks if GOV.UK Frontend is supported on this page\n *\n * Some browsers will load and run our JavaScript but GOV.UK Frontend\n * won't be supported.\n *\n * @param {HTMLElement | null} [$scope] - (internal) `<body>` HTML element checked for browser support\n * @returns {boolean} Whether GOV.UK Frontend is supported on this page\n */\nexport function isSupported($scope = document.body) {\n if (!$scope) {\n return false\n }\n\n return $scope.classList.contains('govuk-frontend-supported')\n}\n\n/**\n * Check for an array\n *\n * @internal\n * @param {unknown} option - Option to check\n * @returns {boolean} Whether the option is an array\n */\nfunction isArray(option) {\n return Array.isArray(option)\n}\n\n/**\n * Check for an object\n *\n * @internal\n * @template {Partial<Record<keyof ObjectType, unknown>>} ObjectType\n * @param {unknown | ObjectType} option - Option to check\n * @returns {option is ObjectType} Whether the option is an object\n */\nexport function isObject(option) {\n return !!option && typeof option === 'object' && !isArray(option)\n}\n\n/**\n * Check for valid scope\n *\n * @internal\n * @template {Element | Document} ScopeType\n * @param {unknown | ScopeType} $scope - Scope of the document to search within\n * @returns {$scope is ScopeType} Whether the scope can be queried\n */\nexport function isScope($scope) {\n return !!$scope && ($scope instanceof Element || $scope instanceof Document)\n}\n\n/**\n * Format error message\n *\n * @internal\n * @param {ComponentWithModuleName} Component - Component that threw the error\n * @param {string} message - Error message\n * @returns {string} - Formatted error message\n */\nexport function formatErrorMessage(Component, message) {\n return `${Component.moduleName}: ${message}`\n}\n\n/* eslint-disable jsdoc/valid-types --\n * `{new(...args: any[] ): object}` is not recognised as valid\n * https://github.com/gajus/eslint-plugin-jsdoc/issues/145#issuecomment-1308722878\n * https://github.com/jsdoc-type-pratt-parser/jsdoc-type-pratt-parser/issues/131\n **/\n\n/**\n * @typedef ComponentWithModuleName\n * @property {string} moduleName - Name of the component\n */\n\n/* eslint-enable jsdoc/valid-types */\n","import { formatErrorMessage, isObject } from '../common/index.mjs'\n\n/**\n * GOV.UK Frontend error\n *\n * A base class for `Error`s thrown by GOV.UK Frontend.\n *\n * It is meant to be extended into specific types of errors\n * to be thrown by our code.\n *\n * @example\n * ```js\n * class MissingRootError extends GOVUKFrontendError {\n * // Setting an explicit name is important as extending the class will not\n * // set a new `name` on the subclass. The `name` property is important\n * // to ensure intelligible error names even if the class name gets\n * // mangled by a minifier\n * name = \"MissingRootError\"\n * }\n * ```\n * @virtual\n */\nexport class GOVUKFrontendError extends Error {\n name = 'GOVUKFrontendError'\n}\n\n/**\n * Indicates that GOV.UK Frontend is not supported\n */\nexport class SupportError extends GOVUKFrontendError {\n name = 'SupportError'\n\n /**\n * Checks if GOV.UK Frontend is supported on this page\n *\n * @param {HTMLElement | null} [$scope] - HTML element `<body>` checked for browser support\n */\n constructor($scope = document.body) {\n const supportMessage =\n 'noModule' in HTMLScriptElement.prototype\n ? 'GOV.UK Frontend initialised without `<body class=\"govuk-frontend-supported\">` from template `<script>` snippet'\n : 'GOV.UK Frontend is not supported in this browser'\n\n super(\n $scope\n ? supportMessage\n : 'GOV.UK Frontend initialised without `<script type=\"module\">`'\n )\n }\n}\n\n/**\n * Indicates that a component has received an illegal configuration\n */\nexport class ConfigError extends GOVUKFrontendError {\n name = 'ConfigError'\n}\n\n/**\n * Indicates an issue with an element (possibly `null` or `undefined`)\n */\nexport class ElementError extends GOVUKFrontendError {\n name = 'ElementError'\n\n /**\n * @internal\n * @overload\n * @param {string} message - Element error message\n */\n\n /**\n * @internal\n * @overload\n * @param {ElementErrorOptions} options - Element error options\n */\n\n /**\n * @internal\n * @param {string | ElementErrorOptions} messageOrOptions - Element error message or options\n */\n constructor(messageOrOptions) {\n let message = typeof messageOrOptions === 'string' ? messageOrOptions : ''\n\n // Build message from options\n if (isObject(messageOrOptions)) {\n const { component, identifier, element, expectedType } = messageOrOptions\n\n message = identifier\n\n // Append reason\n message += element\n ? ` is not of type ${expectedType ?? 'HTMLElement'}`\n : ' not found'\n\n // Prepend with module name (optional)\n if (component) {\n message = formatErrorMessage(component, message)\n }\n }\n\n super(message)\n }\n}\n\n/**\n * Indicates that a component is already initialised\n */\nexport class InitError extends GOVUKFrontendError {\n name = 'InitError'\n\n /**\n * @internal\n * @param {ComponentWithModuleName | string} componentOrMessage - name of the component module\n */\n constructor(componentOrMessage) {\n const message =\n typeof componentOrMessage === 'string'\n ? componentOrMessage\n : formatErrorMessage(\n componentOrMessage,\n `Root element (\\`$root\\`) already initialised`\n )\n\n super(message)\n }\n}\n\n/**\n * Element error options\n *\n * @internal\n * @typedef {object} ElementErrorOptions\n * @property {Element | Document | null} [element] - The element in error (optional)\n * @property {ComponentWithModuleName} [component] - Component throwing the error (optional)\n * @property {string} identifier - An identifier that'll let the user understand which element has an error. This is whatever makes the most sense\n * @property {string} [expectedType] - The type that was expected for the identifier (optional)\n */\n\n/**\n * @import { ComponentWithModuleName } from '../common/index.mjs'\n */\n","import { isInitialised, isSupported } from './common/index.mjs'\nimport { ElementError, InitError, SupportError } from './errors/index.mjs'\n\n/**\n * Base Component class\n *\n * Centralises the behaviours shared by our components\n *\n * @virtual\n * @template {Element} [RootElementType=HTMLElement]\n */\nexport class Component {\n /**\n * @type {typeof Element}\n */\n static elementType = HTMLElement\n\n // allows Typescript user to work around the lack of types\n // in GOVUKFrontend package, Typescript is not aware of $root\n // in components that extend GOVUKFrontendComponent\n /**\n * Returns the root element of the component\n *\n * @protected\n * @returns {RootElementType} - the root element of component\n */\n get $root() {\n return this._$root\n }\n\n /**\n * @protected\n * @type {RootElementType}\n */\n _$root\n\n /**\n * Constructs a new component, validating that GOV.UK Frontend is supported\n *\n * @internal\n * @param {Element | null} [$root] - HTML element to use for component\n */\n constructor($root) {\n const childConstructor = /** @type {ChildClassConstructor} */ (\n this.constructor\n )\n\n // TypeScript does not enforce that inheriting classes will define a `moduleName`\n // (even if we add a `@virtual` `static moduleName` property to this class).\n // While we trust users to do this correctly, we do a little check to provide them\n // a helpful error message.\n //\n // After this, we'll be sure that `childConstructor` has a `moduleName`\n // as expected of the `ChildClassConstructor` we've cast `this.constructor` to.\n if (typeof childConstructor.moduleName !== 'string') {\n throw new InitError(`\\`moduleName\\` not defined in component`)\n }\n\n if (!($root instanceof childConstructor.elementType)) {\n throw new ElementError({\n element: $root,\n component: childConstructor,\n identifier: 'Root element (`$root`)',\n expectedType: childConstructor.elementType.name\n })\n } else {\n this._$root = /** @type {RootElementType} */ ($root)\n }\n\n childConstructor.checkSupport()\n\n this.checkInitialised()\n\n const moduleName = childConstructor.moduleName\n\n this.$root.setAttribute(`data-${moduleName}-init`, '')\n }\n\n /**\n * Validates whether component is already initialised\n *\n * @private\n * @throws {InitError} when component is already initialised\n */\n checkInitialised() {\n const constructor = /** @type {ChildClassConstructor} */ (this.constructor)\n const moduleName = constructor.moduleName\n\n if (moduleName && isInitialised(this.$root, moduleName)) {\n throw new InitError(constructor)\n }\n }\n\n /**\n * Validates whether components are supported\n *\n * @throws {SupportError} when the components are not supported\n */\n static checkSupport() {\n if (!isSupported()) {\n throw new SupportError()\n }\n }\n}\n\n/**\n * @typedef ChildClass\n * @property {string} moduleName - The module name that'll be looked for in the DOM when initialising the component\n */\n\n/**\n * @typedef {typeof Component & ChildClass} ChildClassConstructor\n */\n","import { setFocus } from '../../common/index.mjs'\nimport { Component } from '../../component.mjs'\nimport { ElementError } from '../../errors/index.mjs'\n\n/**\n * Skip link component\n *\n * @preserve\n * @augments Component<HTMLAnchorElement>\n */\nexport class SkipLink extends Component {\n static elementType = HTMLAnchorElement\n\n /**\n * @param {Element | null} $root - HTML element to use for skip link\n * @throws {ElementError} when $root is not set or the wrong type\n * @throws {ElementError} when $root.hash does not contain a hash\n * @throws {ElementError} when the linked element is missing or the wrong type\n */\n constructor($root) {\n super($root)\n\n const hash = this.$root.hash\n const href = this.$root.getAttribute('href') ?? ''\n\n // Return early for external URLs or links to other pages\n if (\n this.$root.origin !== window.location.origin ||\n this.$root.pathname !== window.location.pathname\n ) {\n return\n }\n\n const linkedElementId = hash.replace('#', '')\n\n // Check link path matching current page\n if (!linkedElementId) {\n throw new ElementError(\n `Skip link: Target link (\\`href=\"${href}\"\\`) has no hash fragment`\n )\n }\n\n const $linkedElement = document.getElementById(linkedElementId)\n\n // Check for link target element\n if (!$linkedElement) {\n throw new ElementError({\n component: SkipLink,\n element: $linkedElement,\n identifier: `Target content (\\`id=\"${linkedElementId}\"\\`)`\n })\n }\n\n /**\n * Focus the linked element on click\n *\n * Adds a helper CSS class to hide native focus styles,\n * but removes it on blur to restore native focus styles\n */\n this.$root.addEventListener('click', () =>\n setFocus($linkedElement, {\n onBeforeFocus() {\n $linkedElement.classList.add('govuk-skip-link-focused-element')\n },\n onBlur() {\n $linkedElement.classList.remove('govuk-skip-link-focused-element')\n }\n })\n )\n }\n\n /**\n * Name for the component used when initialising using data-module attributes.\n */\n static moduleName = 'govuk-skip-link'\n}\n"],"names":["setFocus","$element","options","_options$onBeforeFocu","isFocusable","getAttribute","setAttribute","onFocus","addEventListener","onBlur","once","_options$onBlur","call","removeAttribute","onBeforeFocus","focus","isInitialised","$root","moduleName","HTMLElement","hasAttribute","isSupported","$scope","document","body","classList","contains","isArray","option","Array","isObject","formatErrorMessage","Component","message","GOVUKFrontendError","Error","constructor","args","name","SupportError","supportMessage","HTMLScriptElement","prototype","ElementError","messageOrOptions","component","identifier","element","expectedType","InitError","componentOrMessage","_$root","childConstructor","elementType","checkSupport","checkInitialised","SkipLink","_this$$root$getAttrib","hash","href","origin","window","location","pathname","linkedElementId","replace","$linkedElement","getElementById","add","remove","HTMLAnchorElement"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { getFragmentFromUrl, setFocus } from '../../common/index.mjs';
1
+ import { setFocus } from '../../common/index.mjs';
2
2
  import { Component } from '../../component.mjs';
3
3
  import { ElementError } from '../../errors/index.mjs';
4
4
 
@@ -20,16 +20,10 @@ class SkipLink extends Component {
20
20
  super($root);
21
21
  const hash = this.$root.hash;
22
22
  const href = (_this$$root$getAttrib = this.$root.getAttribute('href')) != null ? _this$$root$getAttrib : '';
23
- let url;
24
- try {
25
- url = new window.URL(this.$root.href);
26
- } catch (error) {
27
- throw new ElementError(`Skip link: Target link (\`href="${href}"\`) is invalid`);
28
- }
29
- if (url.origin !== window.location.origin || url.pathname !== window.location.pathname) {
23
+ if (this.$root.origin !== window.location.origin || this.$root.pathname !== window.location.pathname) {
30
24
  return;
31
25
  }
32
- const linkedElementId = getFragmentFromUrl(hash);
26
+ const linkedElementId = hash.replace('#', '');
33
27
  if (!linkedElementId) {
34
28
  throw new ElementError(`Skip link: Target link (\`href="${href}"\`) has no hash fragment`);
35
29
  }
@@ -1 +1 @@
1
- {"version":3,"file":"skip-link.mjs","sources":["../../../../src/govuk/components/skip-link/skip-link.mjs"],"sourcesContent":["import { getFragmentFromUrl, setFocus } from '../../common/index.mjs'\nimport { Component } from '../../component.mjs'\nimport { ElementError } from '../../errors/index.mjs'\n\n/**\n * Skip link component\n *\n * @preserve\n * @augments Component<HTMLAnchorElement>\n */\nexport class SkipLink extends Component {\n static elementType = HTMLAnchorElement\n\n /**\n * @param {Element | null} $root - HTML element to use for skip link\n * @throws {ElementError} when $root is not set or the wrong type\n * @throws {ElementError} when $root.hash does not contain a hash\n * @throws {ElementError} when the linked element is missing or the wrong type\n */\n constructor($root) {\n super($root)\n\n const hash = this.$root.hash\n const href = this.$root.getAttribute('href') ?? ''\n\n /** @type {URL | undefined} */\n let url\n\n /**\n * Check for valid link URL\n *\n * {@link https://caniuse.com/url}\n * {@link https://url.spec.whatwg.org}\n *\n */\n try {\n url = new window.URL(this.$root.href)\n } catch (error) {\n throw new ElementError(\n `Skip link: Target link (\\`href=\"${href}\"\\`) is invalid`\n )\n }\n\n // Return early for external URLs or links to other pages\n if (\n url.origin !== window.location.origin ||\n url.pathname !== window.location.pathname\n ) {\n return\n }\n\n const linkedElementId = getFragmentFromUrl(hash)\n\n // Check link path matching current page\n if (!linkedElementId) {\n throw new ElementError(\n `Skip link: Target link (\\`href=\"${href}\"\\`) has no hash fragment`\n )\n }\n\n const $linkedElement = document.getElementById(linkedElementId)\n\n // Check for link target element\n if (!$linkedElement) {\n throw new ElementError({\n component: SkipLink,\n element: $linkedElement,\n identifier: `Target content (\\`id=\"${linkedElementId}\"\\`)`\n })\n }\n\n /**\n * Focus the linked element on click\n *\n * Adds a helper CSS class to hide native focus styles,\n * but removes it on blur to restore native focus styles\n */\n this.$root.addEventListener('click', () =>\n setFocus($linkedElement, {\n onBeforeFocus() {\n $linkedElement.classList.add('govuk-skip-link-focused-element')\n },\n onBlur() {\n $linkedElement.classList.remove('govuk-skip-link-focused-element')\n }\n })\n )\n }\n\n /**\n * Name for the component used when initialising using data-module attributes.\n */\n static moduleName = 'govuk-skip-link'\n}\n"],"names":["SkipLink","Component","constructor","$root","_this$$root$getAttrib","hash","href","getAttribute","url","window","URL","error","ElementError","origin","location","pathname","linkedElementId","getFragmentFromUrl","$linkedElement","document","getElementById","component","element","identifier","addEventListener","setFocus","onBeforeFocus","classList","add","onBlur","remove","elementType","HTMLAnchorElement","moduleName"],"mappings":";;;;AAIA;AACA;AACA;AACA;AACA;AACA;AACO,MAAMA,QAAQ,SAASC,SAAS,CAAC;AAGtC;AACF;AACA;AACA;AACA;AACA;EACEC,WAAWA,CAACC,KAAK,EAAE;AAAA,IAAA,IAAAC,qBAAA;IACjB,KAAK,CAACD,KAAK,CAAC;AAEZ,IAAA,MAAME,IAAI,GAAG,IAAI,CAACF,KAAK,CAACE,IAAI;AAC5B,IAAA,MAAMC,IAAI,GAAA,CAAAF,qBAAA,GAAG,IAAI,CAACD,KAAK,CAACI,YAAY,CAAC,MAAM,CAAC,KAAAH,IAAAA,GAAAA,qBAAA,GAAI,EAAE;AAGlD,IAAA,IAAII,GAAG;IASP,IAAI;MACFA,GAAG,GAAG,IAAIC,MAAM,CAACC,GAAG,CAAC,IAAI,CAACP,KAAK,CAACG,IAAI,CAAC;KACtC,CAAC,OAAOK,KAAK,EAAE;AACd,MAAA,MAAM,IAAIC,YAAY,CACpB,CAAmCN,gCAAAA,EAAAA,IAAI,iBACzC,CAAC;AACH;AAGA,IAAA,IACEE,GAAG,CAACK,MAAM,KAAKJ,MAAM,CAACK,QAAQ,CAACD,MAAM,IACrCL,GAAG,CAACO,QAAQ,KAAKN,MAAM,CAACK,QAAQ,CAACC,QAAQ,EACzC;AACA,MAAA;AACF;AAEA,IAAA,MAAMC,eAAe,GAAGC,kBAAkB,CAACZ,IAAI,CAAC;IAGhD,IAAI,CAACW,eAAe,EAAE;AACpB,MAAA,MAAM,IAAIJ,YAAY,CACpB,CAAmCN,gCAAAA,EAAAA,IAAI,2BACzC,CAAC;AACH;AAEA,IAAA,MAAMY,cAAc,GAAGC,QAAQ,CAACC,cAAc,CAACJ,eAAe,CAAC;IAG/D,IAAI,CAACE,cAAc,EAAE;MACnB,MAAM,IAAIN,YAAY,CAAC;AACrBS,QAAAA,SAAS,EAAErB,QAAQ;AACnBsB,QAAAA,OAAO,EAAEJ,cAAc;QACvBK,UAAU,EAAE,yBAAyBP,eAAe,CAAA,IAAA;AACtD,OAAC,CAAC;AACJ;IAQA,IAAI,CAACb,KAAK,CAACqB,gBAAgB,CAAC,OAAO,EAAE,MACnCC,QAAQ,CAACP,cAAc,EAAE;AACvBQ,MAAAA,aAAaA,GAAG;AACdR,QAAAA,cAAc,CAACS,SAAS,CAACC,GAAG,CAAC,iCAAiC,CAAC;OAChE;AACDC,MAAAA,MAAMA,GAAG;AACPX,QAAAA,cAAc,CAACS,SAAS,CAACG,MAAM,CAAC,iCAAiC,CAAC;AACpE;AACF,KAAC,CACH,CAAC;AACH;AAMF;AAnFa9B,QAAQ,CACZ+B,WAAW,GAAGC,iBAAiB;AAD3BhC,QAAQ,CAkFZiC,UAAU,GAAG,iBAAiB;;;;"}
1
+ {"version":3,"file":"skip-link.mjs","sources":["../../../../src/govuk/components/skip-link/skip-link.mjs"],"sourcesContent":["import { setFocus } from '../../common/index.mjs'\nimport { Component } from '../../component.mjs'\nimport { ElementError } from '../../errors/index.mjs'\n\n/**\n * Skip link component\n *\n * @preserve\n * @augments Component<HTMLAnchorElement>\n */\nexport class SkipLink extends Component {\n static elementType = HTMLAnchorElement\n\n /**\n * @param {Element | null} $root - HTML element to use for skip link\n * @throws {ElementError} when $root is not set or the wrong type\n * @throws {ElementError} when $root.hash does not contain a hash\n * @throws {ElementError} when the linked element is missing or the wrong type\n */\n constructor($root) {\n super($root)\n\n const hash = this.$root.hash\n const href = this.$root.getAttribute('href') ?? ''\n\n // Return early for external URLs or links to other pages\n if (\n this.$root.origin !== window.location.origin ||\n this.$root.pathname !== window.location.pathname\n ) {\n return\n }\n\n const linkedElementId = hash.replace('#', '')\n\n // Check link path matching current page\n if (!linkedElementId) {\n throw new ElementError(\n `Skip link: Target link (\\`href=\"${href}\"\\`) has no hash fragment`\n )\n }\n\n const $linkedElement = document.getElementById(linkedElementId)\n\n // Check for link target element\n if (!$linkedElement) {\n throw new ElementError({\n component: SkipLink,\n element: $linkedElement,\n identifier: `Target content (\\`id=\"${linkedElementId}\"\\`)`\n })\n }\n\n /**\n * Focus the linked element on click\n *\n * Adds a helper CSS class to hide native focus styles,\n * but removes it on blur to restore native focus styles\n */\n this.$root.addEventListener('click', () =>\n setFocus($linkedElement, {\n onBeforeFocus() {\n $linkedElement.classList.add('govuk-skip-link-focused-element')\n },\n onBlur() {\n $linkedElement.classList.remove('govuk-skip-link-focused-element')\n }\n })\n )\n }\n\n /**\n * Name for the component used when initialising using data-module attributes.\n */\n static moduleName = 'govuk-skip-link'\n}\n"],"names":["SkipLink","Component","constructor","$root","_this$$root$getAttrib","hash","href","getAttribute","origin","window","location","pathname","linkedElementId","replace","ElementError","$linkedElement","document","getElementById","component","element","identifier","addEventListener","setFocus","onBeforeFocus","classList","add","onBlur","remove","elementType","HTMLAnchorElement","moduleName"],"mappings":";;;;AAIA;AACA;AACA;AACA;AACA;AACA;AACO,MAAMA,QAAQ,SAASC,SAAS,CAAC;AAGtC;AACF;AACA;AACA;AACA;AACA;EACEC,WAAWA,CAACC,KAAK,EAAE;AAAA,IAAA,IAAAC,qBAAA;IACjB,KAAK,CAACD,KAAK,CAAC;AAEZ,IAAA,MAAME,IAAI,GAAG,IAAI,CAACF,KAAK,CAACE,IAAI;AAC5B,IAAA,MAAMC,IAAI,GAAA,CAAAF,qBAAA,GAAG,IAAI,CAACD,KAAK,CAACI,YAAY,CAAC,MAAM,CAAC,KAAA,IAAA,GAAAH,qBAAA,GAAI,EAAE;IAGlD,IACE,IAAI,CAACD,KAAK,CAACK,MAAM,KAAKC,MAAM,CAACC,QAAQ,CAACF,MAAM,IAC5C,IAAI,CAACL,KAAK,CAACQ,QAAQ,KAAKF,MAAM,CAACC,QAAQ,CAACC,QAAQ,EAChD;AACA,MAAA;AACF,IAAA;IAEA,MAAMC,eAAe,GAAGP,IAAI,CAACQ,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC;IAG7C,IAAI,CAACD,eAAe,EAAE;AACpB,MAAA,MAAM,IAAIE,YAAY,CACpB,CAAA,gCAAA,EAAmCR,IAAI,2BACzC,CAAC;AACH,IAAA;AAEA,IAAA,MAAMS,cAAc,GAAGC,QAAQ,CAACC,cAAc,CAACL,eAAe,CAAC;IAG/D,IAAI,CAACG,cAAc,EAAE;MACnB,MAAM,IAAID,YAAY,CAAC;AACrBI,QAAAA,SAAS,EAAElB,QAAQ;AACnBmB,QAAAA,OAAO,EAAEJ,cAAc;QACvBK,UAAU,EAAE,yBAAyBR,eAAe,CAAA,IAAA;AACtD,OAAC,CAAC;AACJ,IAAA;IAQA,IAAI,CAACT,KAAK,CAACkB,gBAAgB,CAAC,OAAO,EAAE,MACnCC,QAAQ,CAACP,cAAc,EAAE;AACvBQ,MAAAA,aAAaA,GAAG;AACdR,QAAAA,cAAc,CAACS,SAAS,CAACC,GAAG,CAAC,iCAAiC,CAAC;MACjE,CAAC;AACDC,MAAAA,MAAMA,GAAG;AACPX,QAAAA,cAAc,CAACS,SAAS,CAACG,MAAM,CAAC,iCAAiC,CAAC;AACpE,MAAA;AACF,KAAC,CACH,CAAC;AACH,EAAA;AAMF;AAjEa3B,QAAQ,CACZ4B,WAAW,GAAGC,iBAAiB;AAD3B7B,QAAQ,CAgEZ8B,UAAU,GAAG,iBAAiB;;;;"}
@@ -0,0 +1,8 @@
1
+ @use "mixin";
2
+
3
+ @import "../../base";
4
+
5
+ @include govuk-exports("govuk/component/summary-list") {
6
+ @include mixin.styles;
7
+ }
8
+
@@ -1,269 +1,5 @@
1
- @include govuk-exports("govuk/component/summary-list") {
2
- .govuk-summary-list {
3
- @include govuk-font($size: 19);
4
- @include govuk-text-colour;
5
- @include govuk-media-query($from: tablet) {
6
- display: table;
7
- width: 100%;
8
- table-layout: fixed; // Required to allow us to wrap words that overflow.
9
- border-collapse: collapse;
10
- }
11
- margin: 0; // Reset default user agent styles
12
- @include govuk-responsive-margin(6, "bottom");
13
- }
1
+ @use "../../custom-properties";
2
+ @use "mixin";
14
3
 
15
- .govuk-summary-list__row {
16
- border-bottom: 1px solid $govuk-border-colour;
4
+ @include mixin.styles;
17
5
 
18
- @include govuk-media-query($until: tablet) {
19
- margin-bottom: govuk-spacing(3);
20
- }
21
- @include govuk-media-query($from: tablet) {
22
- display: table-row;
23
- }
24
- }
25
-
26
- // Remove right padding from the last column in the row
27
- .govuk-summary-list__row:not(.govuk-summary-list__row--no-actions) > :last-child {
28
- padding-right: 0;
29
- }
30
-
31
- // Provide an empty 'cell' for rows that don't have actions – otherwise the
32
- // bottom border is not drawn for that part of the row in some browsers.
33
- .govuk-summary-list__row--no-actions {
34
- @include govuk-media-query($from: tablet) {
35
- &::after {
36
- content: "";
37
- display: table-cell;
38
- width: 20%;
39
- }
40
- }
41
- }
42
-
43
- .govuk-summary-list__key,
44
- .govuk-summary-list__value,
45
- .govuk-summary-list__actions {
46
- margin: 0; // Reset default user agent styles
47
-
48
- @include govuk-media-query($from: tablet) {
49
- display: table-cell;
50
- padding-top: govuk-spacing(2);
51
- padding-right: govuk-spacing(4);
52
- padding-bottom: govuk-spacing(2);
53
- }
54
- }
55
-
56
- .govuk-summary-list__actions {
57
- margin-bottom: govuk-spacing(3);
58
- @include govuk-media-query($from: tablet) {
59
- width: 20%;
60
- text-align: right;
61
- }
62
- }
63
-
64
- .govuk-summary-list__key,
65
- .govuk-summary-list__value {
66
- // Automatic wrapping for unbreakable text (e.g. URLs)
67
- word-wrap: break-word; // Fallback for older browsers only
68
- overflow-wrap: break-word;
69
- }
70
-
71
- .govuk-summary-list__key {
72
- margin-bottom: govuk-spacing(1);
73
- @include govuk-typography-weight-bold;
74
- @include govuk-media-query($from: tablet) {
75
- width: 30%;
76
- }
77
- }
78
-
79
- .govuk-summary-list__value {
80
- @include govuk-media-query($until: tablet) {
81
- margin-bottom: govuk-spacing(3);
82
- }
83
- }
84
-
85
- .govuk-summary-list__value > p {
86
- margin-bottom: govuk-spacing(2);
87
- }
88
-
89
- .govuk-summary-list__value > :last-child {
90
- margin-bottom: 0;
91
- }
92
-
93
- .govuk-summary-list__actions-list {
94
- width: 100%;
95
- margin: 0; // Reset default user agent styles
96
- padding: 0; // Reset default user agent styles
97
- }
98
-
99
- .govuk-summary-list__actions-list-item,
100
- .govuk-summary-card__action {
101
- display: inline-block;
102
- }
103
-
104
- @include govuk-media-query($until: tablet) {
105
- .govuk-summary-list__actions-list-item,
106
- .govuk-summary-card__action {
107
- margin-right: govuk-spacing(2);
108
- padding-right: govuk-spacing(2);
109
- border-right: 1px solid $govuk-border-colour;
110
- }
111
-
112
- .govuk-summary-list__actions-list-item:last-child,
113
- .govuk-summary-card__action:last-child {
114
- margin-right: 0;
115
- padding-right: 0;
116
- border: 0;
117
- }
118
- }
119
-
120
- @include govuk-media-query($from: tablet) {
121
- .govuk-summary-list__actions-list-item,
122
- .govuk-summary-card__action {
123
- margin-left: govuk-spacing(2);
124
- padding-left: govuk-spacing(2);
125
- }
126
-
127
- .govuk-summary-list__actions-list-item:not(:first-child),
128
- .govuk-summary-card__action:not(:first-child) {
129
- border-left: 1px solid $govuk-border-colour;
130
- }
131
-
132
- .govuk-summary-list__actions-list-item:first-child,
133
- .govuk-summary-card__action:first-child {
134
- margin-left: 0;
135
- padding-left: 0;
136
- border: 0;
137
- }
138
- }
139
-
140
- // Large groups of action links may wrap onto multiple lines. Because the link
141
- // focus styles are applied outside of the link's bounding box, there are
142
- // situations where the focus style on a link can be overlapped by subsequent
143
- // links. We don't want this, so let's create a new stacking context on focus
144
- // so the link always appears to be 'on top'.
145
- .govuk-summary-list__actions-list-item .govuk-link:focus {
146
- isolation: isolate;
147
- }
148
-
149
- // No border on entire summary list
150
- .govuk-summary-list--no-border {
151
- .govuk-summary-list__row {
152
- border: 0;
153
- }
154
-
155
- // Increase padding by 1px to compensate for 'missing' border
156
- @include govuk-media-query($from: tablet) {
157
- .govuk-summary-list__key,
158
- .govuk-summary-list__value,
159
- .govuk-summary-list__actions {
160
- padding-bottom: govuk-spacing(2) + 1px;
161
- }
162
- }
163
- }
164
-
165
- // No border on specific rows
166
- .govuk-summary-list__row--no-border {
167
- border: 0;
168
-
169
- // Increase padding by 1px to compensate for 'missing' border
170
- @include govuk-media-query($from: tablet) {
171
- .govuk-summary-list__key,
172
- .govuk-summary-list__value,
173
- .govuk-summary-list__actions {
174
- padding-bottom: govuk-spacing(2) + 1px;
175
- }
176
- }
177
- }
178
-
179
- // Additional block for the summary card
180
- .govuk-summary-card {
181
- @include govuk-responsive-margin(6, "bottom");
182
- border: 1px solid $govuk-border-colour;
183
- }
184
-
185
- .govuk-summary-card__title-wrapper {
186
- padding: govuk-spacing(3);
187
-
188
- // Ensures the card header appears separate to the summary list in forced
189
- // colours mode
190
- border-bottom: 1px solid transparent;
191
- background-color: govuk-colour("light-grey");
192
-
193
- @include govuk-media-query($from: "tablet") {
194
- display: flex;
195
- justify-content: space-between;
196
- flex-wrap: nowrap;
197
- padding: govuk-spacing(3) govuk-spacing(4);
198
- }
199
- }
200
-
201
- .govuk-summary-card__title {
202
- @include govuk-font($size: 19, $weight: bold);
203
- @include govuk-text-colour;
204
- margin: govuk-spacing(1) govuk-spacing(4) govuk-spacing(2) 0;
205
-
206
- @include govuk-media-query($from: "tablet") {
207
- margin-bottom: govuk-spacing(1);
208
- }
209
- }
210
-
211
- .govuk-summary-card__actions {
212
- @include govuk-font-size($size: 19);
213
- @include govuk-typography-weight-bold;
214
- display: flex;
215
- flex-wrap: wrap;
216
- row-gap: 10px;
217
- margin: govuk-spacing(1) 0;
218
- padding: 0;
219
- list-style: none;
220
-
221
- @include govuk-media-query($from: "tablet") {
222
- justify-content: right;
223
- text-align: right;
224
- }
225
- }
226
-
227
- .govuk-summary-card__action {
228
- display: inline;
229
-
230
- // We use the following media query to target IE11 and 10 only to add margin
231
- // between actions.
232
- //
233
- // We do this because we're using row-gap to create space between actions on
234
- // more evergreen browsers which IE doesn't support. @supports currently isn't
235
- // a viable solution, see https://github.com/w3c/csswg-drafts/issues/3559.
236
- //
237
- // Solution taken from https://stackoverflow.com/questions/11173106/apply-style-only-on-ie#answer-36448860
238
- // which also includes an explanation of why this works
239
- @media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
240
- margin-bottom: govuk-spacing(1);
241
- }
242
- }
243
-
244
- .govuk-summary-card__action:last-child {
245
- // See above comment for why this is here
246
- @media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
247
- margin-bottom: 0;
248
- }
249
- }
250
-
251
- .govuk-summary-card__content {
252
- padding: govuk-spacing(3) govuk-spacing(3) 0;
253
-
254
- @include govuk-media-query($from: "tablet") {
255
- padding: govuk-spacing(3) govuk-spacing(4);
256
- }
257
-
258
- .govuk-summary-list {
259
- margin-bottom: 0;
260
- }
261
-
262
- .govuk-summary-list__row:last-of-type {
263
- margin-bottom: 0;
264
- border-bottom: none;
265
- }
266
- }
267
- }
268
-
269
- /*# sourceMappingURL=_index.scss.map */