govuk_tech_docs 6.3.0.beta → 6.4.0.beta

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 (452) hide show
  1. checksums.yaml +4 -4
  2. data/.github/ISSUE_TEMPLATE/documentation.yaml +29 -0
  3. data/.github/workflows/build-middleman-artifact.yaml +41 -0
  4. data/.github/workflows/check-documentation-updates.yaml +32 -0
  5. data/.github/workflows/check-gem-version.yaml +36 -0
  6. data/.github/workflows/dependency-review.yaml +2 -5
  7. data/.github/workflows/pipeline.yaml +50 -0
  8. data/.github/workflows/publish-gem.yaml +61 -0
  9. data/.github/workflows/publish-github-pages.yaml +38 -0
  10. data/.github/workflows/test.yaml +17 -10
  11. data/.gitignore +5 -4
  12. data/.rspec +1 -0
  13. data/CHANGELOG.md +17 -4
  14. data/README.md +10 -10
  15. data/Rakefile +1 -1
  16. data/documentation/.nvmrc +1 -0
  17. data/documentation/Gemfile +11 -0
  18. data/documentation/LICENSE +21 -0
  19. data/documentation/README.md +30 -0
  20. data/documentation/Staticfile +4 -0
  21. data/documentation/config/tech-docs.yml +45 -0
  22. data/{example → documentation}/config.rb +3 -6
  23. data/documentation/source/accessibility/index.html.md.erb +64 -0
  24. data/documentation/source/configure_project/frontmatter/index.html.md.erb +206 -0
  25. data/documentation/source/configure_project/global_configuration/index.html.md.erb +328 -0
  26. data/documentation/source/configure_project/index.html.md.erb +17 -0
  27. data/documentation/source/configure_project/page_expiry_and_review/index.html.md.erb +93 -0
  28. data/documentation/source/configure_project/structure_docs/index.html.md.erb +117 -0
  29. data/documentation/source/create_project/build/index.html.md.erb +20 -0
  30. data/documentation/source/create_project/create_new_project/index.html.md.erb +23 -0
  31. data/documentation/source/create_project/get_started/index.html.md.erb +58 -0
  32. data/documentation/source/create_project/index.html.md.erb +17 -0
  33. data/documentation/source/create_project/preview/index.html.md.erb +26 -0
  34. data/documentation/source/images/Basic multipage.svg +1 -0
  35. data/documentation/source/images/Basic_multipage.svg +1 -0
  36. data/documentation/source/images/Nested multipage.svg +1 -0
  37. data/documentation/source/images/Nested_multipage.svg +1 -0
  38. data/documentation/source/images/Single_page.svg +1 -0
  39. data/documentation/source/images/core-layout-without-sidebar.png +0 -0
  40. data/documentation/source/images/core-layout.png +0 -0
  41. data/documentation/source/images/daniel-the-manual-spaniel-screenshot.svg +1 -0
  42. data/documentation/source/images/expired-page.png +0 -0
  43. data/documentation/source/images/last-reviewed-only.png +0 -0
  44. data/documentation/source/images/last-reviewed-only.svg +1 -0
  45. data/documentation/source/images/layout-layout.png +0 -0
  46. data/documentation/source/images/multipage.svg +3 -0
  47. data/documentation/source/images/not-expired-page.png +0 -0
  48. data/documentation/source/index.html.md.erb +19 -0
  49. data/documentation/source/maintain_project/index.html.md.erb +18 -0
  50. data/documentation/source/maintain_project/redirects/index.html.md.erb +22 -0
  51. data/documentation/source/maintain_project/review_content/index.html.md.erb +45 -0
  52. data/documentation/source/maintain_project/use_latest_template/index.html.md.erb +34 -0
  53. data/documentation/source/partials/_links.erb +81 -0
  54. data/documentation/source/publish_project/deploy/index.html.md.erb +44 -0
  55. data/documentation/source/publish_project/index.html.md.erb +15 -0
  56. data/documentation/source/publish_project/version/index.html.md.erb +12 -0
  57. data/documentation/source/support/index.html.md.erb +46 -0
  58. data/documentation/source/write_docs/add_openapi_spec/index.html.md.erb +48 -0
  59. data/documentation/source/write_docs/content/index.html.md.erb +128 -0
  60. data/documentation/source/write_docs/index.html.md.erb +15 -0
  61. data/lib/govuk_tech_docs/version.rb +1 -1
  62. data/lib/source/layouts/_footer.erb +2 -2
  63. data/lib/source/layouts/_header.erb +2 -2
  64. data/lib/source/layouts/_service_navigation.erb +2 -5
  65. data/lib/source/layouts/core.erb +12 -6
  66. data/node_modules/govuk-frontend/dist/govuk/_base.import.scss +6 -0
  67. data/node_modules/govuk-frontend/dist/govuk/_base.scss +4 -5
  68. data/node_modules/govuk-frontend/dist/govuk/all.bundle.js +32 -26
  69. data/node_modules/govuk-frontend/dist/govuk/all.bundle.mjs +32 -26
  70. data/node_modules/govuk-frontend/dist/govuk/assets/images/govuk-icon-180.png +0 -0
  71. data/node_modules/govuk-frontend/dist/govuk/assets/images/govuk-icon-192.png +0 -0
  72. data/node_modules/govuk-frontend/dist/govuk/assets/images/govuk-icon-512.png +0 -0
  73. data/node_modules/govuk-frontend/dist/govuk/common/govuk-frontend-version.mjs +1 -1
  74. data/node_modules/govuk-frontend/dist/govuk/components/_index.import.scss +38 -0
  75. data/node_modules/govuk-frontend/dist/govuk/components/_index.scss +37 -39
  76. data/node_modules/govuk-frontend/dist/govuk/components/accordion/_accordion.import.scss +6 -0
  77. data/node_modules/govuk-frontend/dist/govuk/components/accordion/_index.import.scss +8 -0
  78. data/node_modules/govuk-frontend/dist/govuk/components/accordion/_index.scss +3 -373
  79. data/node_modules/govuk-frontend/dist/govuk/components/accordion/_mixin.scss +375 -0
  80. data/node_modules/govuk-frontend/dist/govuk/components/back-link/_back-link.import.scss +6 -0
  81. data/node_modules/govuk-frontend/dist/govuk/components/back-link/_index.import.scss +8 -0
  82. data/node_modules/govuk-frontend/dist/govuk/components/back-link/_index.scss +3 -85
  83. data/node_modules/govuk-frontend/dist/govuk/components/back-link/_mixin.scss +87 -0
  84. data/node_modules/govuk-frontend/dist/govuk/components/breadcrumbs/_breadcrumbs.import.scss +6 -0
  85. data/node_modules/govuk-frontend/dist/govuk/components/breadcrumbs/_index.import.scss +8 -0
  86. data/node_modules/govuk-frontend/dist/govuk/components/breadcrumbs/_index.scss +3 -136
  87. data/node_modules/govuk-frontend/dist/govuk/components/breadcrumbs/_mixin.scss +134 -0
  88. data/node_modules/govuk-frontend/dist/govuk/components/button/_button.import.scss +6 -0
  89. data/node_modules/govuk-frontend/dist/govuk/components/button/_index.import.scss +13 -0
  90. data/node_modules/govuk-frontend/dist/govuk/components/button/_index.scss +9 -259
  91. data/node_modules/govuk-frontend/dist/govuk/components/button/_mixin.scss +233 -0
  92. data/node_modules/govuk-frontend/dist/govuk/components/button/_settings.import.scss +32 -0
  93. data/node_modules/govuk-frontend/dist/govuk/components/button/_settings.scss +34 -0
  94. data/node_modules/govuk-frontend/dist/govuk/components/character-count/_character-count.import.scss +6 -0
  95. data/node_modules/govuk-frontend/dist/govuk/components/character-count/_index.import.scss +12 -0
  96. data/node_modules/govuk-frontend/dist/govuk/components/character-count/_index.scss +7 -44
  97. data/node_modules/govuk-frontend/dist/govuk/components/character-count/_mixin.scss +41 -0
  98. data/node_modules/govuk-frontend/dist/govuk/components/checkboxes/_checkboxes.import.scss +6 -0
  99. data/node_modules/govuk-frontend/dist/govuk/components/checkboxes/_index.import.scss +12 -0
  100. data/node_modules/govuk-frontend/dist/govuk/components/checkboxes/_index.scss +7 -314
  101. data/node_modules/govuk-frontend/dist/govuk/components/checkboxes/_mixin.scss +317 -0
  102. data/node_modules/govuk-frontend/dist/govuk/components/cookie-banner/_cookie-banner.import.scss +6 -0
  103. data/node_modules/govuk-frontend/dist/govuk/components/cookie-banner/_index.import.scss +9 -0
  104. data/node_modules/govuk-frontend/dist/govuk/components/cookie-banner/_index.scss +4 -55
  105. data/node_modules/govuk-frontend/dist/govuk/components/cookie-banner/_mixin.scss +56 -0
  106. data/node_modules/govuk-frontend/dist/govuk/components/date-input/_date-input.import.scss +6 -0
  107. data/node_modules/govuk-frontend/dist/govuk/components/date-input/_index.import.scss +13 -0
  108. data/node_modules/govuk-frontend/dist/govuk/components/date-input/_index.scss +8 -33
  109. data/node_modules/govuk-frontend/dist/govuk/components/date-input/_mixin.scss +29 -0
  110. data/node_modules/govuk-frontend/dist/govuk/components/details/_details.import.scss +6 -0
  111. data/node_modules/govuk-frontend/dist/govuk/components/details/_index.import.scss +8 -0
  112. data/node_modules/govuk-frontend/dist/govuk/components/details/_index.scss +3 -141
  113. data/node_modules/govuk-frontend/dist/govuk/components/details/_mixin.scss +143 -0
  114. data/node_modules/govuk-frontend/dist/govuk/components/error-message/_error-message.import.scss +6 -0
  115. data/node_modules/govuk-frontend/dist/govuk/components/error-message/_index.import.scss +8 -0
  116. data/node_modules/govuk-frontend/dist/govuk/components/error-message/_index.scss +3 -14
  117. data/node_modules/govuk-frontend/dist/govuk/components/error-message/_mixin.scss +16 -0
  118. data/node_modules/govuk-frontend/dist/govuk/components/error-summary/_error-summary.import.scss +6 -0
  119. data/node_modules/govuk-frontend/dist/govuk/components/error-summary/_index.import.scss +8 -0
  120. data/node_modules/govuk-frontend/dist/govuk/components/error-summary/_index.scss +3 -57
  121. data/node_modules/govuk-frontend/dist/govuk/components/error-summary/_mixin.scss +58 -0
  122. data/node_modules/govuk-frontend/dist/govuk/components/exit-this-page/_exit-this-page.import.scss +6 -0
  123. data/node_modules/govuk-frontend/dist/govuk/components/exit-this-page/_index.import.scss +9 -0
  124. data/node_modules/govuk-frontend/dist/govuk/components/exit-this-page/_index.scss +4 -91
  125. data/node_modules/govuk-frontend/dist/govuk/components/exit-this-page/_mixin.scss +96 -0
  126. data/node_modules/govuk-frontend/dist/govuk/components/fieldset/_fieldset.import.scss +6 -0
  127. data/node_modules/govuk-frontend/dist/govuk/components/fieldset/_index.import.scss +8 -0
  128. data/node_modules/govuk-frontend/dist/govuk/components/fieldset/_index.scss +3 -69
  129. data/node_modules/govuk-frontend/dist/govuk/components/fieldset/_mixin.scss +71 -0
  130. data/node_modules/govuk-frontend/dist/govuk/components/file-upload/_file-upload.import.scss +6 -0
  131. data/node_modules/govuk-frontend/dist/govuk/components/file-upload/_index.import.scss +11 -0
  132. data/node_modules/govuk-frontend/dist/govuk/components/file-upload/_index.scss +6 -211
  133. data/node_modules/govuk-frontend/dist/govuk/components/file-upload/_mixin.scss +217 -0
  134. data/node_modules/govuk-frontend/dist/govuk/components/file-upload/file-upload.bundle.js +31 -25
  135. data/node_modules/govuk-frontend/dist/govuk/components/file-upload/file-upload.bundle.mjs +31 -25
  136. data/node_modules/govuk-frontend/dist/govuk/components/file-upload/file-upload.mjs +31 -26
  137. data/node_modules/govuk-frontend/dist/govuk/components/footer/_footer.import.scss +6 -0
  138. data/node_modules/govuk-frontend/dist/govuk/components/footer/_index.import.scss +8 -0
  139. data/node_modules/govuk-frontend/dist/govuk/components/footer/_index.scss +3 -197
  140. data/node_modules/govuk-frontend/dist/govuk/components/footer/_mixin.scss +199 -0
  141. data/node_modules/govuk-frontend/dist/govuk/components/generic-header/_generic-header.import.scss +6 -0
  142. data/node_modules/govuk-frontend/dist/govuk/components/generic-header/_index.import.scss +8 -0
  143. data/node_modules/govuk-frontend/dist/govuk/components/generic-header/_index.scss +5 -0
  144. data/node_modules/govuk-frontend/dist/govuk/components/generic-header/_mixin.scss +140 -0
  145. data/node_modules/govuk-frontend/dist/govuk/components/header/_header.import.scss +6 -0
  146. data/node_modules/govuk-frontend/dist/govuk/components/header/_index.import.scss +8 -0
  147. data/node_modules/govuk-frontend/dist/govuk/components/header/_index.scss +3 -188
  148. data/node_modules/govuk-frontend/dist/govuk/components/header/_mixin.scss +119 -0
  149. data/node_modules/govuk-frontend/dist/govuk/components/hint/_hint.import.scss +6 -0
  150. data/node_modules/govuk-frontend/dist/govuk/components/hint/_index.import.scss +8 -0
  151. data/node_modules/govuk-frontend/dist/govuk/components/hint/_index.scss +3 -45
  152. data/node_modules/govuk-frontend/dist/govuk/components/hint/_mixin.scss +47 -0
  153. data/node_modules/govuk-frontend/dist/govuk/components/input/_index.import.scss +11 -0
  154. data/node_modules/govuk-frontend/dist/govuk/components/input/_index.scss +6 -162
  155. data/node_modules/govuk-frontend/dist/govuk/components/input/_input.import.scss +6 -0
  156. data/node_modules/govuk-frontend/dist/govuk/components/input/_mixin.scss +161 -0
  157. data/node_modules/govuk-frontend/dist/govuk/components/inset-text/_index.import.scss +8 -0
  158. data/node_modules/govuk-frontend/dist/govuk/components/inset-text/_index.scss +3 -29
  159. data/node_modules/govuk-frontend/dist/govuk/components/inset-text/_inset-text.import.scss +6 -0
  160. data/node_modules/govuk-frontend/dist/govuk/components/inset-text/_mixin.scss +31 -0
  161. data/node_modules/govuk-frontend/dist/govuk/components/label/_index.import.scss +8 -0
  162. data/node_modules/govuk-frontend/dist/govuk/components/label/_index.scss +3 -46
  163. data/node_modules/govuk-frontend/dist/govuk/components/label/_label.import.scss +6 -0
  164. data/node_modules/govuk-frontend/dist/govuk/components/label/_mixin.scss +48 -0
  165. data/node_modules/govuk-frontend/dist/govuk/components/notification-banner/_index.import.scss +8 -0
  166. data/node_modules/govuk-frontend/dist/govuk/components/notification-banner/_index.scss +3 -97
  167. data/node_modules/govuk-frontend/dist/govuk/components/notification-banner/_mixin.scss +100 -0
  168. data/node_modules/govuk-frontend/dist/govuk/components/notification-banner/_notification-banner.import.scss +6 -0
  169. data/node_modules/govuk-frontend/dist/govuk/components/pagination/_index.import.scss +8 -0
  170. data/node_modules/govuk-frontend/dist/govuk/components/pagination/_index.scss +3 -233
  171. data/node_modules/govuk-frontend/dist/govuk/components/pagination/_mixin.scss +235 -0
  172. data/node_modules/govuk-frontend/dist/govuk/components/pagination/_pagination.import.scss +6 -0
  173. data/node_modules/govuk-frontend/dist/govuk/components/panel/_index.import.scss +8 -0
  174. data/node_modules/govuk-frontend/dist/govuk/components/panel/_index.scss +3 -58
  175. data/node_modules/govuk-frontend/dist/govuk/components/panel/_mixin.scss +94 -0
  176. data/node_modules/govuk-frontend/dist/govuk/components/panel/_panel.import.scss +6 -0
  177. data/node_modules/govuk-frontend/dist/govuk/components/password-input/_index.import.scss +10 -0
  178. data/node_modules/govuk-frontend/dist/govuk/components/password-input/_index.scss +5 -56
  179. data/node_modules/govuk-frontend/dist/govuk/components/password-input/_mixin.scss +56 -0
  180. data/node_modules/govuk-frontend/dist/govuk/components/password-input/_password-input.import.scss +6 -0
  181. data/node_modules/govuk-frontend/dist/govuk/components/phase-banner/_index.import.scss +9 -0
  182. data/node_modules/govuk-frontend/dist/govuk/components/phase-banner/_index.scss +4 -41
  183. data/node_modules/govuk-frontend/dist/govuk/components/phase-banner/_mixin.scss +42 -0
  184. data/node_modules/govuk-frontend/dist/govuk/components/phase-banner/_phase-banner.import.scss +6 -0
  185. data/node_modules/govuk-frontend/dist/govuk/components/radios/_index.import.scss +12 -0
  186. data/node_modules/govuk-frontend/dist/govuk/components/radios/_index.scss +7 -330
  187. data/node_modules/govuk-frontend/dist/govuk/components/radios/_mixin.scss +336 -0
  188. data/node_modules/govuk-frontend/dist/govuk/components/radios/_radios.import.scss +6 -0
  189. data/node_modules/govuk-frontend/dist/govuk/components/select/_index.import.scss +11 -0
  190. data/node_modules/govuk-frontend/dist/govuk/components/select/_index.scss +6 -53
  191. data/node_modules/govuk-frontend/dist/govuk/components/select/_mixin.scss +45 -0
  192. data/node_modules/govuk-frontend/dist/govuk/components/select/_select.import.scss +6 -0
  193. data/node_modules/govuk-frontend/dist/govuk/components/service-navigation/_index.import.scss +8 -0
  194. data/node_modules/govuk-frontend/dist/govuk/components/service-navigation/_index.scss +3 -235
  195. data/node_modules/govuk-frontend/dist/govuk/components/service-navigation/_mixin.scss +238 -0
  196. data/node_modules/govuk-frontend/dist/govuk/components/service-navigation/_service-navigation.import.scss +6 -0
  197. data/node_modules/govuk-frontend/dist/govuk/components/skip-link/_index.import.scss +8 -0
  198. data/node_modules/govuk-frontend/dist/govuk/components/skip-link/_index.scss +3 -58
  199. data/node_modules/govuk-frontend/dist/govuk/components/skip-link/_mixin.scss +60 -0
  200. data/node_modules/govuk-frontend/dist/govuk/components/skip-link/_skip-link.import.scss +6 -0
  201. data/node_modules/govuk-frontend/dist/govuk/components/summary-list/_index.import.scss +8 -0
  202. data/node_modules/govuk-frontend/dist/govuk/components/summary-list/_index.scss +3 -284
  203. data/node_modules/govuk-frontend/dist/govuk/components/summary-list/_mixin.scss +286 -0
  204. data/node_modules/govuk-frontend/dist/govuk/components/summary-list/_summary-list.import.scss +6 -0
  205. data/node_modules/govuk-frontend/dist/govuk/components/table/_index.import.scss +8 -0
  206. data/node_modules/govuk-frontend/dist/govuk/components/table/_index.scss +3 -75
  207. data/node_modules/govuk-frontend/dist/govuk/components/table/_mixin.scss +77 -0
  208. data/node_modules/govuk-frontend/dist/govuk/components/table/_table.import.scss +6 -0
  209. data/node_modules/govuk-frontend/dist/govuk/components/tabs/_index.import.scss +8 -0
  210. data/node_modules/govuk-frontend/dist/govuk/components/tabs/_index.scss +3 -138
  211. data/node_modules/govuk-frontend/dist/govuk/components/tabs/_mixin.scss +140 -0
  212. data/node_modules/govuk-frontend/dist/govuk/components/tabs/_tabs.import.scss +6 -0
  213. data/node_modules/govuk-frontend/dist/govuk/components/tag/_index.import.scss +8 -0
  214. data/node_modules/govuk-frontend/dist/govuk/components/tag/_index.scss +3 -132
  215. data/node_modules/govuk-frontend/dist/govuk/components/tag/_mixin.scss +135 -0
  216. data/node_modules/govuk-frontend/dist/govuk/components/tag/_tag.import.scss +6 -0
  217. data/node_modules/govuk-frontend/dist/govuk/components/task-list/_index.import.scss +9 -0
  218. data/node_modules/govuk-frontend/dist/govuk/components/task-list/_index.scss +4 -82
  219. data/node_modules/govuk-frontend/dist/govuk/components/task-list/_mixin.scss +83 -0
  220. data/node_modules/govuk-frontend/dist/govuk/components/task-list/_task-list.import.scss +6 -0
  221. data/node_modules/govuk-frontend/dist/govuk/components/textarea/_index.import.scss +11 -0
  222. data/node_modules/govuk-frontend/dist/govuk/components/textarea/_index.scss +6 -44
  223. data/node_modules/govuk-frontend/dist/govuk/components/textarea/_mixin.scss +43 -0
  224. data/node_modules/govuk-frontend/dist/govuk/components/textarea/_textarea.import.scss +6 -0
  225. data/node_modules/govuk-frontend/dist/govuk/components/warning-text/_index.import.scss +8 -0
  226. data/node_modules/govuk-frontend/dist/govuk/components/warning-text/_index.scss +3 -67
  227. data/node_modules/govuk-frontend/dist/govuk/components/warning-text/_mixin.scss +69 -0
  228. data/node_modules/govuk-frontend/dist/govuk/components/warning-text/_warning-text.import.scss +6 -0
  229. data/node_modules/govuk-frontend/dist/govuk/core/_global-styles.import.scss +10 -0
  230. data/node_modules/govuk-frontend/dist/govuk/core/_global-styles.mixin.scss +19 -0
  231. data/node_modules/govuk-frontend/dist/govuk/core/_global-styles.scss +5 -22
  232. data/node_modules/govuk-frontend/dist/govuk/core/_index.import.scss +6 -0
  233. data/node_modules/govuk-frontend/dist/govuk/core/_index.scss +6 -10
  234. data/node_modules/govuk-frontend/dist/govuk/core/_links.import.scss +10 -0
  235. data/node_modules/govuk-frontend/dist/govuk/core/_links.mixin.scss +44 -0
  236. data/node_modules/govuk-frontend/dist/govuk/core/_links.scss +3 -48
  237. data/node_modules/govuk-frontend/dist/govuk/core/_lists.import.scss +14 -0
  238. data/node_modules/govuk-frontend/dist/govuk/core/_lists.mixin.scss +74 -0
  239. data/node_modules/govuk-frontend/dist/govuk/core/_lists.scss +6 -73
  240. data/node_modules/govuk-frontend/dist/govuk/core/_section-break.import.scss +8 -0
  241. data/node_modules/govuk-frontend/dist/govuk/core/_section-break.mixin.scss +54 -0
  242. data/node_modules/govuk-frontend/dist/govuk/core/_section-break.scss +3 -55
  243. data/node_modules/govuk-frontend/dist/govuk/core/_typography.import.scss +8 -0
  244. data/node_modules/govuk-frontend/dist/govuk/core/_typography.mixin.scss +173 -0
  245. data/node_modules/govuk-frontend/dist/govuk/core/_typography.scss +3 -174
  246. data/node_modules/govuk-frontend/dist/govuk/custom-properties/_breakpoints.import.scss +8 -0
  247. data/node_modules/govuk-frontend/dist/govuk/custom-properties/_breakpoints.mixin.scss +15 -0
  248. data/node_modules/govuk-frontend/dist/govuk/custom-properties/_breakpoints.scss +2 -15
  249. data/node_modules/govuk-frontend/dist/govuk/custom-properties/_frontend-version.import.scss +8 -0
  250. data/node_modules/govuk-frontend/dist/govuk/custom-properties/_frontend-version.mixin.scss +13 -0
  251. data/node_modules/govuk-frontend/dist/govuk/custom-properties/_frontend-version.scss +2 -13
  252. data/node_modules/govuk-frontend/dist/govuk/custom-properties/_functional-colours.import.scss +8 -0
  253. data/node_modules/govuk-frontend/dist/govuk/custom-properties/_functional-colours.mixin.scss +21 -0
  254. data/node_modules/govuk-frontend/dist/govuk/custom-properties/_functional-colours.scss +2 -20
  255. data/node_modules/govuk-frontend/dist/govuk/custom-properties/_index.import.scss +4 -0
  256. data/node_modules/govuk-frontend/dist/govuk/custom-properties/_index.scss +3 -4
  257. data/node_modules/govuk-frontend/dist/govuk/govuk-frontend.min.js +1 -1
  258. data/node_modules/govuk-frontend/dist/govuk/helpers/_clearfix.import.scss +2 -0
  259. data/node_modules/govuk-frontend/dist/govuk/helpers/_clearfix.scss +0 -1
  260. data/node_modules/govuk-frontend/dist/govuk/helpers/_colour.import.scss +2 -0
  261. data/node_modules/govuk-frontend/dist/govuk/helpers/_colour.scss +35 -17
  262. data/node_modules/govuk-frontend/dist/govuk/helpers/_device-pixels.import.scss +2 -0
  263. data/node_modules/govuk-frontend/dist/govuk/helpers/_device-pixels.scss +2 -3
  264. data/node_modules/govuk-frontend/dist/govuk/helpers/_focused.import.scss +2 -0
  265. data/node_modules/govuk-frontend/dist/govuk/helpers/_focused.scss +3 -1
  266. data/node_modules/govuk-frontend/dist/govuk/helpers/{_font-faces.scss → _font-faces--internal.scss} +5 -5
  267. data/node_modules/govuk-frontend/dist/govuk/helpers/_grid.import.scss +2 -0
  268. data/node_modules/govuk-frontend/dist/govuk/helpers/_grid.scss +3 -1
  269. data/node_modules/govuk-frontend/dist/govuk/helpers/_index.import.scss +2 -0
  270. data/node_modules/govuk-frontend/dist/govuk/helpers/_index.scss +12 -13
  271. data/node_modules/govuk-frontend/dist/govuk/helpers/_links.import.scss +2 -0
  272. data/node_modules/govuk-frontend/dist/govuk/helpers/_links.scss +7 -2
  273. data/node_modules/govuk-frontend/dist/govuk/helpers/_media-queries.import.scss +2 -0
  274. data/node_modules/govuk-frontend/dist/govuk/helpers/_media-queries.scss +2 -3
  275. data/node_modules/govuk-frontend/dist/govuk/helpers/_shape-arrow.import.scss +2 -0
  276. data/node_modules/govuk-frontend/dist/govuk/helpers/_shape-arrow.scss +0 -1
  277. data/node_modules/govuk-frontend/dist/govuk/helpers/_spacing--internal.scss +80 -0
  278. data/node_modules/govuk-frontend/dist/govuk/helpers/_spacing.import.scss +2 -0
  279. data/node_modules/govuk-frontend/dist/govuk/helpers/_spacing.scss +18 -79
  280. data/node_modules/govuk-frontend/dist/govuk/helpers/_typography--internal.scss +24 -0
  281. data/node_modules/govuk-frontend/dist/govuk/helpers/_typography.import.scss +2 -0
  282. data/node_modules/govuk-frontend/dist/govuk/helpers/_typography.scss +20 -37
  283. data/node_modules/govuk-frontend/dist/govuk/helpers/_visually-hidden.import.scss +2 -0
  284. data/node_modules/govuk-frontend/dist/govuk/helpers/_visually-hidden.scss +1 -2
  285. data/node_modules/govuk-frontend/dist/govuk/helpers/_width-container.import.scss +2 -0
  286. data/node_modules/govuk-frontend/dist/govuk/helpers/_width-container.scss +73 -0
  287. data/node_modules/govuk-frontend/dist/govuk/index.import.scss +10 -0
  288. data/node_modules/govuk-frontend/dist/govuk/index.scss +6 -7
  289. data/node_modules/govuk-frontend/dist/govuk/objects/_button-group.import.scss +8 -0
  290. data/node_modules/govuk-frontend/dist/govuk/objects/_button-group.mixin.scss +80 -0
  291. data/node_modules/govuk-frontend/dist/govuk/objects/_button-group.scss +3 -78
  292. data/node_modules/govuk-frontend/dist/govuk/objects/_form-group.import.scss +8 -0
  293. data/node_modules/govuk-frontend/dist/govuk/objects/_form-group.mixin.scss +26 -0
  294. data/node_modules/govuk-frontend/dist/govuk/objects/_form-group.scss +3 -24
  295. data/node_modules/govuk-frontend/dist/govuk/objects/_grid.import.scss +8 -0
  296. data/node_modules/govuk-frontend/dist/govuk/objects/_grid.mixin.scss +28 -0
  297. data/node_modules/govuk-frontend/dist/govuk/objects/_grid.scss +3 -26
  298. data/node_modules/govuk-frontend/dist/govuk/objects/_index.import.scss +7 -0
  299. data/node_modules/govuk-frontend/dist/govuk/objects/_index.scss +6 -7
  300. data/node_modules/govuk-frontend/dist/govuk/objects/_main-wrapper.import.scss +8 -0
  301. data/node_modules/govuk-frontend/dist/govuk/objects/_main-wrapper.mixin.scss +55 -0
  302. data/node_modules/govuk-frontend/dist/govuk/objects/_main-wrapper.scss +3 -53
  303. data/node_modules/govuk-frontend/dist/govuk/objects/_template.import.scss +8 -0
  304. data/node_modules/govuk-frontend/dist/govuk/objects/_template.mixin.scss +53 -0
  305. data/node_modules/govuk-frontend/dist/govuk/objects/_template.scss +3 -51
  306. data/node_modules/govuk-frontend/dist/govuk/objects/_width-container.import.scss +8 -0
  307. data/node_modules/govuk-frontend/dist/govuk/objects/_width-container.mixin.scss +9 -0
  308. data/node_modules/govuk-frontend/dist/govuk/objects/_width-container.scss +3 -76
  309. data/node_modules/govuk-frontend/dist/govuk/overrides/_display.import.scss +8 -0
  310. data/node_modules/govuk-frontend/dist/govuk/overrides/_display.mixin.scss +26 -0
  311. data/node_modules/govuk-frontend/dist/govuk/overrides/_display.scss +2 -26
  312. data/node_modules/govuk-frontend/dist/govuk/overrides/_index.import.scss +6 -0
  313. data/node_modules/govuk-frontend/dist/govuk/overrides/_index.scss +5 -9
  314. data/node_modules/govuk-frontend/dist/govuk/overrides/_spacing.import.scss +8 -0
  315. data/node_modules/govuk-frontend/dist/govuk/overrides/_spacing.mixin.scss +89 -0
  316. data/node_modules/govuk-frontend/dist/govuk/overrides/_spacing.scss +2 -88
  317. data/node_modules/govuk-frontend/dist/govuk/overrides/_text-align.import.scss +8 -0
  318. data/node_modules/govuk-frontend/dist/govuk/overrides/_text-align.mixin.scss +16 -0
  319. data/node_modules/govuk-frontend/dist/govuk/overrides/_text-align.scss +2 -16
  320. data/node_modules/govuk-frontend/dist/govuk/overrides/_typography.import.scss +8 -0
  321. data/node_modules/govuk-frontend/dist/govuk/overrides/_typography.mixin.scss +43 -0
  322. data/node_modules/govuk-frontend/dist/govuk/overrides/_typography.scss +2 -43
  323. data/node_modules/govuk-frontend/dist/govuk/overrides/_width.import.scss +8 -0
  324. data/node_modules/govuk-frontend/dist/govuk/overrides/_width.mixin.scss +50 -0
  325. data/node_modules/govuk-frontend/dist/govuk/overrides/_width.scss +2 -49
  326. data/node_modules/govuk-frontend/dist/govuk/settings/_assets.import.scss +13 -0
  327. data/node_modules/govuk-frontend/dist/govuk/settings/_assets.scss +46 -35
  328. data/node_modules/govuk-frontend/dist/govuk/settings/_colours-applied.import.scss +13 -0
  329. data/node_modules/govuk-frontend/dist/govuk/settings/_colours-functional.import.scss +2 -0
  330. data/node_modules/govuk-frontend/dist/govuk/settings/_colours-functional.scss +13 -235
  331. data/node_modules/govuk-frontend/dist/govuk/settings/_colours-legacy-functional.import.scss +2 -0
  332. data/node_modules/govuk-frontend/dist/govuk/settings/_colours-legacy-functional.scss +188 -0
  333. data/node_modules/govuk-frontend/dist/govuk/settings/_colours-organisations.import.scss +2 -0
  334. data/node_modules/govuk-frontend/dist/govuk/settings/_colours-organisations.scss +1 -20
  335. data/node_modules/govuk-frontend/dist/govuk/settings/{_colours-palette.scss → _colours-palette--internal.scss} +2 -3
  336. data/node_modules/govuk-frontend/dist/govuk/settings/_custom-properties.import.scss +2 -0
  337. data/node_modules/govuk-frontend/dist/govuk/settings/_custom-properties.scss +0 -1
  338. data/node_modules/govuk-frontend/dist/govuk/settings/_global-styles.import.scss +2 -0
  339. data/node_modules/govuk-frontend/dist/govuk/settings/_global-styles.scss +0 -1
  340. data/node_modules/govuk-frontend/dist/govuk/settings/_index.import.scss +24 -0
  341. data/node_modules/govuk-frontend/dist/govuk/settings/_index.scss +13 -14
  342. data/node_modules/govuk-frontend/dist/govuk/settings/_links.import.scss +2 -0
  343. data/node_modules/govuk-frontend/dist/govuk/settings/_links.scss +0 -1
  344. data/node_modules/govuk-frontend/dist/govuk/settings/_measurements.import.scss +2 -0
  345. data/node_modules/govuk-frontend/dist/govuk/settings/_measurements.scss +2 -3
  346. data/node_modules/govuk-frontend/dist/govuk/settings/_media-queries.import.scss +2 -0
  347. data/node_modules/govuk-frontend/dist/govuk/settings/_media-queries.scss +0 -1
  348. data/node_modules/govuk-frontend/dist/govuk/settings/_spacing.import.scss +2 -0
  349. data/node_modules/govuk-frontend/dist/govuk/settings/_spacing.scss +0 -1
  350. data/node_modules/govuk-frontend/dist/govuk/settings/_typography-font.import.scss +2 -0
  351. data/node_modules/govuk-frontend/dist/govuk/settings/_typography-font.scss +2 -4
  352. data/node_modules/govuk-frontend/dist/govuk/settings/_typography-responsive.import.scss +2 -0
  353. data/node_modules/govuk-frontend/dist/govuk/settings/_typography-responsive.scss +0 -1
  354. data/node_modules/govuk-frontend/dist/govuk/settings/_warnings--internal.scss +69 -0
  355. data/node_modules/govuk-frontend/dist/govuk/settings/_warnings.import.scss +2 -0
  356. data/node_modules/govuk-frontend/dist/govuk/settings/_warnings.scss +9 -69
  357. data/node_modules/govuk-frontend/dist/govuk/tools/_exports.import.scss +2 -0
  358. data/node_modules/govuk-frontend/dist/govuk/tools/_exports.scss +11 -6
  359. data/node_modules/govuk-frontend/dist/govuk/tools/_font-url.import.scss +31 -0
  360. data/node_modules/govuk-frontend/dist/govuk/tools/_font-url.scss +9 -1
  361. data/node_modules/govuk-frontend/dist/govuk/tools/_if.import.scss +2 -0
  362. data/node_modules/govuk-frontend/dist/govuk/tools/_if.scss +0 -1
  363. data/node_modules/govuk-frontend/dist/govuk/tools/_image-url.import.scss +31 -0
  364. data/node_modules/govuk-frontend/dist/govuk/tools/_image-url.scss +9 -1
  365. data/node_modules/govuk-frontend/dist/govuk/tools/_index.import.scss +2 -0
  366. data/node_modules/govuk-frontend/dist/govuk/tools/_index.scss +6 -7
  367. data/node_modules/govuk-frontend/dist/govuk/tools/_px-to-em.import.scss +2 -0
  368. data/node_modules/govuk-frontend/dist/govuk/tools/_px-to-em.scss +1 -2
  369. data/node_modules/govuk-frontend/dist/govuk/tools/_px-to-rem.import.scss +2 -0
  370. data/node_modules/govuk-frontend/dist/govuk/tools/_px-to-rem.scss +1 -2
  371. data/node_modules/govuk-frontend/dist/govuk/utilities/_clearfix.import.scss +8 -0
  372. data/node_modules/govuk-frontend/dist/govuk/utilities/_clearfix.mixin.scss +10 -0
  373. data/node_modules/govuk-frontend/dist/govuk/utilities/_clearfix.scss +2 -8
  374. data/node_modules/govuk-frontend/dist/govuk/utilities/_index.import.scss +3 -0
  375. data/node_modules/govuk-frontend/dist/govuk/utilities/_index.scss +2 -4
  376. data/node_modules/govuk-frontend/dist/govuk/utilities/_visually-hidden.import.scss +8 -0
  377. data/node_modules/govuk-frontend/dist/govuk/utilities/_visually-hidden.mixin.scss +14 -0
  378. data/node_modules/govuk-frontend/dist/govuk/utilities/_visually-hidden.scss +2 -12
  379. data/node_modules/govuk-frontend/dist/govuk-prototype-kit/init.scss +2 -3
  380. data/package-lock.json +229 -599
  381. data/package.json +3 -3
  382. metadata +263 -74
  383. data/.github/workflows/publish.yaml +0 -83
  384. data/docs/configuration.md +0 -3
  385. data/docs/frontmatter.md +0 -3
  386. data/docs/page-expiry.md +0 -3
  387. data/example/.ruby-version +0 -1
  388. data/example/Gemfile +0 -3
  389. data/example/config/tech-docs.yml +0 -67
  390. data/example/source/active-pages/index.html.md.erb +0 -7
  391. data/example/source/active-pages/sub-section/index.html.md.erb +0 -7
  392. data/example/source/api-path.html.md +0 -7
  393. data/example/source/api-reference.html.md +0 -5
  394. data/example/source/child-of-expired-page.html.md +0 -8
  395. data/example/source/code.html.md +0 -42
  396. data/example/source/core-layout-without-sidebar.html.md.erb +0 -7
  397. data/example/source/core-layout.html.md.erb +0 -12
  398. data/example/source/expired-page-with-owner.html.md +0 -10
  399. data/example/source/expired-page.html.md +0 -9
  400. data/example/source/headings.html.md +0 -11
  401. data/example/source/hidden-page.html.md +0 -10
  402. data/example/source/index.html.md.erb +0 -27
  403. data/example/source/javascripts/govuk_frontend.js +0 -1
  404. data/example/source/nested-page/another-nested-nested-page/index.html.md +0 -5
  405. data/example/source/nested-page/another-nested-page/index.html.md +0 -5
  406. data/example/source/nested-page/index.html.md +0 -5
  407. data/example/source/not-expired-page.html.md +0 -9
  408. data/example/source/pets.yml +0 -113
  409. data/example/source/prevent-index-page.html.md +0 -10
  410. data/example/source/single-page-nav.html.md +0 -13
  411. data/example/source/templates/proxy_template.html.md +0 -8
  412. data/node_modules/govuk-frontend/dist/govuk/components/accordion/_accordion.scss +0 -7
  413. data/node_modules/govuk-frontend/dist/govuk/components/back-link/_back-link.scss +0 -7
  414. data/node_modules/govuk-frontend/dist/govuk/components/breadcrumbs/_breadcrumbs.scss +0 -7
  415. data/node_modules/govuk-frontend/dist/govuk/components/button/_button.scss +0 -7
  416. data/node_modules/govuk-frontend/dist/govuk/components/character-count/_character-count.scss +0 -7
  417. data/node_modules/govuk-frontend/dist/govuk/components/checkboxes/_checkboxes.scss +0 -7
  418. data/node_modules/govuk-frontend/dist/govuk/components/cookie-banner/_cookie-banner.scss +0 -7
  419. data/node_modules/govuk-frontend/dist/govuk/components/date-input/_date-input.scss +0 -7
  420. data/node_modules/govuk-frontend/dist/govuk/components/details/_details.scss +0 -7
  421. data/node_modules/govuk-frontend/dist/govuk/components/error-message/_error-message.scss +0 -7
  422. data/node_modules/govuk-frontend/dist/govuk/components/error-summary/_error-summary.scss +0 -7
  423. data/node_modules/govuk-frontend/dist/govuk/components/exit-this-page/_exit-this-page.scss +0 -7
  424. data/node_modules/govuk-frontend/dist/govuk/components/fieldset/_fieldset.scss +0 -7
  425. data/node_modules/govuk-frontend/dist/govuk/components/file-upload/_file-upload.scss +0 -7
  426. data/node_modules/govuk-frontend/dist/govuk/components/footer/_footer.scss +0 -7
  427. data/node_modules/govuk-frontend/dist/govuk/components/header/_header.scss +0 -7
  428. data/node_modules/govuk-frontend/dist/govuk/components/hint/_hint.scss +0 -7
  429. data/node_modules/govuk-frontend/dist/govuk/components/input/_input.scss +0 -7
  430. data/node_modules/govuk-frontend/dist/govuk/components/inset-text/_inset-text.scss +0 -7
  431. data/node_modules/govuk-frontend/dist/govuk/components/label/_label.scss +0 -7
  432. data/node_modules/govuk-frontend/dist/govuk/components/notification-banner/_notification-banner.scss +0 -7
  433. data/node_modules/govuk-frontend/dist/govuk/components/pagination/_pagination.scss +0 -7
  434. data/node_modules/govuk-frontend/dist/govuk/components/panel/_panel.scss +0 -7
  435. data/node_modules/govuk-frontend/dist/govuk/components/password-input/_password-input.scss +0 -7
  436. data/node_modules/govuk-frontend/dist/govuk/components/phase-banner/_phase-banner.scss +0 -7
  437. data/node_modules/govuk-frontend/dist/govuk/components/radios/_radios.scss +0 -7
  438. data/node_modules/govuk-frontend/dist/govuk/components/select/_select.scss +0 -7
  439. data/node_modules/govuk-frontend/dist/govuk/components/service-navigation/_service-navigation.scss +0 -7
  440. data/node_modules/govuk-frontend/dist/govuk/components/skip-link/_skip-link.scss +0 -7
  441. data/node_modules/govuk-frontend/dist/govuk/components/summary-list/_summary-list.scss +0 -7
  442. data/node_modules/govuk-frontend/dist/govuk/components/table/_table.scss +0 -7
  443. data/node_modules/govuk-frontend/dist/govuk/components/tabs/_tabs.scss +0 -7
  444. data/node_modules/govuk-frontend/dist/govuk/components/tag/_tag.scss +0 -7
  445. data/node_modules/govuk-frontend/dist/govuk/components/task-list/_task-list.scss +0 -7
  446. data/node_modules/govuk-frontend/dist/govuk/components/textarea/_textarea.scss +0 -7
  447. data/node_modules/govuk-frontend/dist/govuk/components/warning-text/_warning-text.scss +0 -7
  448. data/node_modules/govuk-frontend/dist/govuk/settings/_colours-applied.scss +0 -10
  449. /data/{example → documentation}/source/javascripts/application.js +0 -0
  450. /data/{example → documentation}/source/stylesheets/print.css.scss +0 -0
  451. /data/{example → documentation}/source/stylesheets/screen-old-ie.css.scss +0 -0
  452. /data/{example → documentation}/source/stylesheets/screen.css.scss +0 -0
@@ -0,0 +1,336 @@
1
+ @use "../../base";
2
+
3
+ /// @access private
4
+ @mixin styles {
5
+ $govuk-touch-target-gutter: 4px;
6
+ $govuk-radios-size: 40px;
7
+ $govuk-touch-target-size: ($govuk-radios-size + $govuk-touch-target-gutter);
8
+ $govuk-small-radios-size: 24px;
9
+ $govuk-radios-label-padding-left-right: base.govuk-spacing(3);
10
+ // When the default focus width is used on a curved edge it looks visually
11
+ // smaller. So for the circular radios we bump the default to make it look
12
+ // visually consistent.
13
+ $govuk-radios-focus-width: base.$govuk-focus-width + 1px;
14
+
15
+ .govuk-radios__item {
16
+ display: flex;
17
+ position: relative;
18
+ flex-wrap: wrap;
19
+ margin-bottom: base.govuk-spacing(2);
20
+ }
21
+
22
+ .govuk-radios__item:last-child,
23
+ .govuk-radios__item:last-of-type {
24
+ margin-bottom: 0;
25
+ }
26
+
27
+ .govuk-radios__input {
28
+ // Allow the input to sit above the label, enabling its proper detection
29
+ // when exploring by touch or using automation tools like Selenium
30
+ z-index: 1;
31
+ width: $govuk-touch-target-size;
32
+ height: $govuk-touch-target-size;
33
+ margin: 0;
34
+ opacity: 0;
35
+ cursor: pointer;
36
+ }
37
+
38
+ .govuk-radios__label {
39
+ align-self: center;
40
+
41
+ // Ensure that the width of the label is never more than the width of the
42
+ // container minus the input width minus the padding on either side of
43
+ // the label. This prevents the label from going onto the next line due to
44
+ // __item using flex-wrap because we want hints on a separate line
45
+ max-width: calc(
46
+ 100% - #{($govuk-radios-label-padding-left-right + $govuk-touch-target-size + base.govuk-spacing(3))}
47
+ );
48
+ margin-bottom: 0;
49
+ padding: (base.govuk-spacing(1) + base.$govuk-border-width-form-element) $govuk-radios-label-padding-left-right;
50
+ cursor: pointer;
51
+ // remove 300ms pause on mobile
52
+ touch-action: manipulation;
53
+ }
54
+
55
+ // ( ) Radio ring
56
+ .govuk-radios__label::before {
57
+ content: "";
58
+ box-sizing: border-box;
59
+ position: absolute;
60
+ top: ($govuk-touch-target-gutter * 0.5);
61
+ left: ($govuk-touch-target-gutter * 0.5);
62
+ width: $govuk-radios-size;
63
+ height: $govuk-radios-size;
64
+ border: base.$govuk-border-width-form-element solid currentcolor;
65
+ border-radius: 50%;
66
+ background: transparent;
67
+ }
68
+
69
+ // • Radio button
70
+ //
71
+ // We create the 'button' entirely out of 'border' so that they remain
72
+ // 'filled' even when colours are overridden in the browser.
73
+ .govuk-radios__label::after {
74
+ $radio-button-size: base.govuk-spacing(2);
75
+
76
+ content: "";
77
+ position: absolute;
78
+
79
+ // Positioned by getting half the touch target, so we have the centre of the
80
+ // input, and then moving back by the button's border width, thus positioning
81
+ // the centre of the button in the centre of the input.
82
+ top: (($govuk-touch-target-size * 0.5) - $radio-button-size);
83
+ left: (($govuk-touch-target-size * 0.5) - $radio-button-size);
84
+ width: 0;
85
+ height: 0;
86
+ border: $radio-button-size solid currentcolor;
87
+ border-radius: 50%;
88
+ opacity: 0;
89
+ background: currentcolor;
90
+ }
91
+
92
+ .govuk-radios__hint {
93
+ display: block;
94
+ width: 100%;
95
+ margin-top: base.govuk-spacing(-1);
96
+ padding-right: $govuk-radios-label-padding-left-right;
97
+ padding-left: ($govuk-radios-label-padding-left-right + $govuk-touch-target-size);
98
+ }
99
+
100
+ // This is to bypass govuk-hint's specificity on hints following labels having
101
+ // a margin bottom of 10px (govuk-spacing(2)). Because radios are flexbox,
102
+ // the margin doesn't collapse so we have to do this manually.
103
+ .govuk-label:not(.govuk-label--m):not(.govuk-label--l):not(.govuk-label--xl) + .govuk-radios__hint {
104
+ margin-bottom: 0;
105
+ }
106
+
107
+ // Focused state
108
+ .govuk-radios__input:focus + .govuk-radios__label::before {
109
+ border-width: 4px;
110
+
111
+ // When colours are overridden, the yellow box-shadow becomes invisible
112
+ // which means the focus state is less obvious. By adding a transparent
113
+ // outline, which becomes solid (text-coloured) in that context, we ensure
114
+ // the focus remains clearly visible.
115
+ outline: base.$govuk-focus-width solid transparent;
116
+ outline-offset: 1px;
117
+
118
+ // When in an explicit forced-color mode, we can use the Highlight system
119
+ // color for the outline to better match focus states of native controls
120
+ @media screen and (forced-colors: active), (-ms-high-contrast: active) {
121
+ outline-color: Highlight;
122
+ }
123
+
124
+ box-shadow: 0 0 0 $govuk-radios-focus-width base.govuk-functional-colour(focus);
125
+ }
126
+
127
+ // Selected state
128
+ .govuk-radios__input:checked + .govuk-radios__label::after {
129
+ opacity: 1;
130
+ }
131
+
132
+ // Disabled state
133
+ .govuk-radios__input:disabled,
134
+ .govuk-radios__input:disabled + .govuk-radios__label {
135
+ cursor: not-allowed;
136
+ }
137
+
138
+ .govuk-radios__input:disabled + .govuk-radios__label,
139
+ .govuk-radios__input:disabled ~ .govuk-hint {
140
+ opacity: 0.5;
141
+ }
142
+
143
+ // =========================================================
144
+ // Inline radios
145
+ // =========================================================
146
+
147
+ .govuk-radios--inline {
148
+ @media #{base.govuk-from-breakpoint(tablet)} {
149
+ display: flex;
150
+ flex-wrap: wrap;
151
+ align-items: flex-start;
152
+
153
+ .govuk-radios__item {
154
+ margin-right: base.govuk-spacing(4);
155
+ }
156
+ }
157
+ }
158
+
159
+ // =========================================================
160
+ // Dividers ('or')
161
+ // =========================================================
162
+
163
+ .govuk-radios__divider {
164
+ @include base.govuk-font($size: 19);
165
+
166
+ $govuk-divider-size: $govuk-radios-size !default;
167
+ width: $govuk-divider-size;
168
+
169
+ margin-bottom: base.govuk-spacing(2);
170
+ color: base.govuk-functional-colour(text);
171
+ text-align: center;
172
+ }
173
+
174
+ // =========================================================
175
+ // Conditional reveals
176
+ // =========================================================
177
+
178
+ // The narrow border is used in the conditional reveals because the border has
179
+ // to be an even number in order to be centred under the 40px checkbox radio.
180
+ $conditional-border-width: base.$govuk-border-width-narrow;
181
+ // Calculate the amount of padding needed to keep the border centered against
182
+ // the radios.
183
+ $conditional-border-padding: ($govuk-touch-target-size * 0.5) - ($conditional-border-width * 0.5);
184
+ // Move the border centered with the radios
185
+ $conditional-margin-left: $conditional-border-padding;
186
+ // Move the contents of the conditional inline with the label
187
+ $conditional-padding-left: $conditional-border-padding + $govuk-radios-label-padding-left-right;
188
+
189
+ .govuk-radios__conditional {
190
+ @include base.govuk-responsive-margin(4, "bottom");
191
+ margin-left: $conditional-margin-left;
192
+ padding-left: $conditional-padding-left;
193
+ border-left: $conditional-border-width solid;
194
+ border-left-color: base.govuk-functional-colour(border);
195
+
196
+ .govuk-frontend-supported &--hidden {
197
+ display: none;
198
+ }
199
+
200
+ & > :last-child {
201
+ margin-bottom: 0;
202
+ }
203
+ }
204
+
205
+ // =========================================================
206
+ // Small checkboxes
207
+ // =========================================================
208
+
209
+ .govuk-radios--small {
210
+ $input-offset: ($govuk-touch-target-size - $govuk-small-radios-size) * 0.5;
211
+
212
+ .govuk-radios__item {
213
+ margin-bottom: 0;
214
+ }
215
+
216
+ // Shift the touch target into the left margin so that the visible edge of
217
+ // the control is aligned
218
+ //
219
+ // ┆Which colour is your favourite?
220
+ // ┌┆───┐
221
+ // │┆() │ Purple
222
+ // └┆▲──┘
223
+ // ▲┆└─ Radio pseudo element, aligned with margin
224
+ // └─── Touch target (invisible input), shifted into the margin
225
+ .govuk-radios__input {
226
+ margin-left: $input-offset * -1;
227
+ }
228
+
229
+ .govuk-radios__label {
230
+ // Recalculate max-width to account for the smaller radio size
231
+ // 1px comes from padding-left (defined below)
232
+ max-width: calc(
233
+ 100% - #{($govuk-touch-target-size - $input-offset) + $govuk-radios-label-padding-left-right + 1px}
234
+ );
235
+
236
+ // Create a tiny space between the small radio hover state so that it
237
+ // doesn't clash with the label
238
+ padding-left: 1px;
239
+ }
240
+
241
+ // ( ) Radio ring
242
+ //
243
+ // Reduce the size of the control [1], vertically centering it within the
244
+ // touch target [2]
245
+ // Left here is 0 because we've shifted the input into the left margin
246
+ .govuk-radios__label::before {
247
+ top: $input-offset; // 2
248
+ left: 0;
249
+ width: $govuk-small-radios-size; // 1
250
+ height: $govuk-small-radios-size; // 1
251
+ }
252
+
253
+ // • Radio button
254
+ //
255
+ // Reduce the size of the 'button' and center it within the ring
256
+ .govuk-radios__label::after {
257
+ $radio-button-size: base.govuk-spacing(1);
258
+
259
+ // The same calculation as normal radio buttons but reduce the border width
260
+ top: (($govuk-touch-target-size * 0.5) - $radio-button-size);
261
+ left: ((($govuk-touch-target-size * 0.5) - $radio-button-size) - $input-offset);
262
+ border-width: $radio-button-size;
263
+ }
264
+
265
+ // Fix position of hint with small radios
266
+ //
267
+ // Do not use hints with small radios – because they're within the input
268
+ // wrapper they trigger the hover state, but clicking them doesn't actually
269
+ // activate the control.
270
+ //
271
+ // (If you do use them, they won't look completely broken... but seriously,
272
+ // don't use them)
273
+ .govuk-radios__hint {
274
+ padding-left: ($govuk-small-radios-size + $input-offset);
275
+ }
276
+
277
+ // Align conditional reveals with small radios
278
+ .govuk-radios__conditional {
279
+ $margin-left: ($govuk-small-radios-size * 0.5) - ($conditional-border-width * 0.5);
280
+ margin-left: $margin-left;
281
+ padding-left: ($govuk-touch-target-size - $input-offset) - ($margin-left + $conditional-border-width);
282
+ }
283
+
284
+ .govuk-radios__divider {
285
+ width: $govuk-small-radios-size;
286
+ margin-bottom: base.govuk-spacing(1);
287
+ }
288
+
289
+ // Hover state for small radios.
290
+ //
291
+ // We use a hover state for small radios because the touch target size
292
+ // is so much larger than their visible size, and so we need to provide
293
+ // feedback to the user as to which radio they will select when their
294
+ // cursor is outside of the visible area.
295
+ .govuk-radios__input:not(:disabled):hover + .govuk-radios__label::before {
296
+ // Forced colours modes tend to ignore box-shadow.
297
+ // Apply an outline for those modes to use instead.
298
+ outline: $govuk-radios-focus-width dashed transparent;
299
+ outline-offset: 1px;
300
+ box-shadow: 0 0 0 base.$govuk-hover-width base.govuk-functional-colour(hover);
301
+ }
302
+
303
+ // Because we've overridden the border-shadow provided by the focus state,
304
+ // we need to redefine that too.
305
+ //
306
+ // We use two box shadows, one that restores the original focus state [1]
307
+ // and another that then applies the hover state [2].
308
+ .govuk-radios__input:focus:hover + .govuk-radios__label::before {
309
+ // Set different HCM colour when we have both hover/focus applied at once
310
+ @media screen and (forced-colors: active), (-ms-high-contrast: active) {
311
+ outline-color: Highlight;
312
+ }
313
+ // prettier-ignore
314
+ box-shadow:
315
+ 0 0 0 $govuk-radios-focus-width base.govuk-functional-colour(focus), // 1
316
+ 0 0 0 base.$govuk-hover-width base.govuk-functional-colour(hover); // 2
317
+ }
318
+
319
+ // For devices that explicitly don't support hover, don't provide a hover
320
+ // state (e.g. on touch devices like iOS).
321
+ //
322
+ // We can't use `@media (hover: hover)` because we wouldn't get the hover
323
+ // state in browsers that don't support `@media (hover)` (like Internet
324
+ // Explorer) – so we have to 'undo' the hover state instead.
325
+ @media (hover: none), (pointer: coarse) {
326
+ .govuk-radios__input:not(:disabled):hover + .govuk-radios__label::before {
327
+ box-shadow: initial;
328
+ }
329
+
330
+ .govuk-radios__input:focus:hover + .govuk-radios__label::before {
331
+ box-shadow: 0 0 0 $govuk-radios-focus-width base.govuk-functional-colour(focus);
332
+ }
333
+ }
334
+ }
335
+ }
336
+
@@ -0,0 +1,6 @@
1
+ @use "../../settings/warnings--internal";
2
+
3
+ @include warnings--internal.component-scss-file-warning("radios");
4
+
5
+ @import "index";
6
+
@@ -0,0 +1,11 @@
1
+ @use "mixin";
2
+
3
+ @import "../../base";
4
+ @import "../error-message";
5
+ @import "../hint";
6
+ @import "../label";
7
+
8
+ @include govuk-exports("govuk/component/select") {
9
+ @include mixin.styles;
10
+ }
11
+
@@ -1,56 +1,9 @@
1
- @import "../../base";
1
+ @use "../../custom-properties";
2
2
 
3
- @import "../error-message/index";
4
- @import "../hint/index";
5
- @import "../label/index";
3
+ @use "mixin";
4
+ @use "../error-message";
5
+ @use "../hint";
6
+ @use "../label";
6
7
 
7
- @include govuk-exports("govuk/component/select") {
8
- .govuk-select {
9
- @include govuk-font($size: 19, $line-height: 1.25);
8
+ @include mixin.styles;
10
9
 
11
- box-sizing: border-box;
12
-
13
- // This min-width was chosen because:
14
- // - it makes the Select wider than it is tall (which is what users expect)
15
- // - 11.5em matches the 'length-10' variant of the input component
16
- // - it fits comfortably on screens as narrow as 240px wide
17
- min-width: 11.5em;
18
- max-width: 100%;
19
- height: govuk-px-to-rem(40px);
20
- padding: govuk-spacing(1);
21
- border: $govuk-border-width-form-element solid;
22
- border-color: govuk-functional-colour(input-border);
23
-
24
- // Default user agent colours for selects can have low contrast,
25
- // and may look disabled (#2435)
26
- color: govuk-functional-colour(text);
27
- background-color: govuk-colour("white");
28
-
29
- &:focus {
30
- @include govuk-focused-form-input;
31
- }
32
-
33
- &:disabled {
34
- opacity: 0.5;
35
- color: inherit;
36
- cursor: not-allowed;
37
- }
38
- }
39
-
40
- .govuk-select option:active,
41
- .govuk-select option:checked,
42
- .govuk-select:focus::-ms-value {
43
- color: govuk-colour("white");
44
- background-color: govuk-colour("blue");
45
- }
46
-
47
- .govuk-select--error {
48
- border-color: govuk-functional-colour(error);
49
-
50
- &:focus {
51
- border-color: govuk-functional-colour(input-border);
52
- }
53
- }
54
- }
55
-
56
- /*# sourceMappingURL=_index.scss.map */
@@ -0,0 +1,45 @@
1
+ @use "../../base";
2
+
3
+ /// @access private
4
+ @mixin styles {
5
+ .govuk-select {
6
+ @include base.govuk-font($size: 19, $line-height: 1.25);
7
+
8
+ box-sizing: border-box;
9
+
10
+ // This min-width was chosen because:
11
+ // - it makes the Select wider than it is tall (which is what users expect)
12
+ // - 11.5em matches the 'length-10' variant of the input component
13
+ // - it fits comfortably on screens as narrow as 240px wide
14
+ min-width: 11.5em;
15
+ max-width: 100%;
16
+ height: base.govuk-px-to-rem(40px);
17
+ padding: base.govuk-spacing(1);
18
+ border: base.$govuk-border-width-form-element solid;
19
+ border-color: base.govuk-functional-colour(input-border);
20
+
21
+ // Default user agent colours for selects can have low contrast,
22
+ // and may look disabled (#2435)
23
+ color: base.govuk-functional-colour(text);
24
+ background-color: base.govuk-colour("white");
25
+
26
+ &:focus {
27
+ @include base.govuk-focused-form-input;
28
+ }
29
+
30
+ &:disabled {
31
+ opacity: 0.5;
32
+ color: inherit;
33
+ cursor: not-allowed;
34
+ }
35
+ }
36
+
37
+ .govuk-select--error {
38
+ border-color: base.govuk-functional-colour(error);
39
+
40
+ &:focus {
41
+ border-color: base.govuk-functional-colour(input-border);
42
+ }
43
+ }
44
+ }
45
+
@@ -0,0 +1,6 @@
1
+ @use "../../settings/warnings--internal";
2
+
3
+ @include warnings--internal.component-scss-file-warning("select");
4
+
5
+ @import "index";
6
+
@@ -0,0 +1,8 @@
1
+ @use "mixin";
2
+
3
+ @import "../../base";
4
+
5
+ @include govuk-exports("govuk/component/service-navigation") {
6
+ @include mixin.styles;
7
+ }
8
+