defra_ruby_template 3.13.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (479) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +8 -0
  3. data/Gemfile +6 -0
  4. data/Gemfile.lock +20 -0
  5. data/README.md +71 -0
  6. data/Rakefile +50 -0
  7. data/app/views/layouts/defra_ruby_template.html.erb +83 -0
  8. data/bin/console +14 -0
  9. data/bin/setup +8 -0
  10. data/defra_ruby_template.gemspec +24 -0
  11. data/lib/defra_ruby_template.rb +23 -0
  12. data/lib/defra_ruby_template/version.rb +3 -0
  13. data/node_modules/govuk-frontend/README.md +91 -0
  14. data/node_modules/govuk-frontend/govuk-prototype-kit.config.json +14 -0
  15. data/node_modules/govuk-frontend/govuk/_base.scss +3 -0
  16. data/node_modules/govuk-frontend/govuk/all-ie8.scss +6 -0
  17. data/node_modules/govuk-frontend/govuk/all.js +2616 -0
  18. data/node_modules/govuk-frontend/govuk/all.scss +9 -0
  19. data/node_modules/govuk-frontend/govuk/assets/fonts/bold-affa96571d-v2.woff +0 -0
  20. data/node_modules/govuk-frontend/govuk/assets/fonts/bold-b542beb274-v2.woff2 +0 -0
  21. data/node_modules/govuk-frontend/govuk/assets/fonts/light-94a07e06a1-v2.woff2 +0 -0
  22. data/node_modules/govuk-frontend/govuk/assets/fonts/light-f591b13f7d-v2.woff +0 -0
  23. data/node_modules/govuk-frontend/govuk/assets/images/favicon.ico +0 -0
  24. data/node_modules/govuk-frontend/govuk/assets/images/govuk-apple-touch-icon-152x152.png +0 -0
  25. data/node_modules/govuk-frontend/govuk/assets/images/govuk-apple-touch-icon-167x167.png +0 -0
  26. data/node_modules/govuk-frontend/govuk/assets/images/govuk-apple-touch-icon-180x180.png +0 -0
  27. data/node_modules/govuk-frontend/govuk/assets/images/govuk-apple-touch-icon.png +0 -0
  28. data/node_modules/govuk-frontend/govuk/assets/images/govuk-crest-2x.png +0 -0
  29. data/node_modules/govuk-frontend/govuk/assets/images/govuk-crest.png +0 -0
  30. data/node_modules/govuk-frontend/govuk/assets/images/govuk-logotype-crown.png +0 -0
  31. data/node_modules/govuk-frontend/govuk/assets/images/govuk-mask-icon.svg +7 -0
  32. data/node_modules/govuk-frontend/govuk/assets/images/govuk-opengraph-image.png +0 -0
  33. data/node_modules/govuk-frontend/govuk/common.js +39 -0
  34. data/node_modules/govuk-frontend/govuk/components/_all.scss +33 -0
  35. data/node_modules/govuk-frontend/govuk/components/accordion/README.md +15 -0
  36. data/node_modules/govuk-frontend/govuk/components/accordion/_accordion.scss +2 -0
  37. data/node_modules/govuk-frontend/govuk/components/accordion/_index.scss +197 -0
  38. data/node_modules/govuk-frontend/govuk/components/accordion/accordion.js +1011 -0
  39. data/node_modules/govuk-frontend/govuk/components/accordion/fixtures.json +250 -0
  40. data/node_modules/govuk-frontend/govuk/components/accordion/macro-options.json +76 -0
  41. data/node_modules/govuk-frontend/govuk/components/accordion/macro.njk +3 -0
  42. data/node_modules/govuk-frontend/govuk/components/accordion/template.njk +27 -0
  43. data/node_modules/govuk-frontend/govuk/components/back-link/README.md +15 -0
  44. data/node_modules/govuk-frontend/govuk/components/back-link/_back-link.scss +2 -0
  45. data/node_modules/govuk-frontend/govuk/components/back-link/_index.scss +99 -0
  46. data/node_modules/govuk-frontend/govuk/components/back-link/fixtures.json +62 -0
  47. data/node_modules/govuk-frontend/govuk/components/back-link/macro-options.json +32 -0
  48. data/node_modules/govuk-frontend/govuk/components/back-link/macro.njk +3 -0
  49. data/node_modules/govuk-frontend/govuk/components/back-link/template.njk +2 -0
  50. data/node_modules/govuk-frontend/govuk/components/breadcrumbs/README.md +15 -0
  51. data/node_modules/govuk-frontend/govuk/components/breadcrumbs/_breadcrumbs.scss +2 -0
  52. data/node_modules/govuk-frontend/govuk/components/breadcrumbs/_index.scss +138 -0
  53. data/node_modules/govuk-frontend/govuk/components/breadcrumbs/fixtures.json +193 -0
  54. data/node_modules/govuk-frontend/govuk/components/breadcrumbs/macro-options.json +52 -0
  55. data/node_modules/govuk-frontend/govuk/components/breadcrumbs/macro.njk +3 -0
  56. data/node_modules/govuk-frontend/govuk/components/breadcrumbs/template.njk +24 -0
  57. data/node_modules/govuk-frontend/govuk/components/button/README.md +15 -0
  58. data/node_modules/govuk-frontend/govuk/components/button/_button.scss +2 -0
  59. data/node_modules/govuk-frontend/govuk/components/button/_index.scss +288 -0
  60. data/node_modules/govuk-frontend/govuk/components/button/button.js +724 -0
  61. data/node_modules/govuk-frontend/govuk/components/button/fixtures.json +318 -0
  62. data/node_modules/govuk-frontend/govuk/components/button/macro-options.json +74 -0
  63. data/node_modules/govuk-frontend/govuk/components/button/macro.njk +3 -0
  64. data/node_modules/govuk-frontend/govuk/components/button/template.njk +60 -0
  65. data/node_modules/govuk-frontend/govuk/components/character-count/README.md +15 -0
  66. data/node_modules/govuk-frontend/govuk/components/character-count/_character-count.scss +2 -0
  67. data/node_modules/govuk-frontend/govuk/components/character-count/_index.scss +25 -0
  68. data/node_modules/govuk-frontend/govuk/components/character-count/character-count.js +1194 -0
  69. data/node_modules/govuk-frontend/govuk/components/character-count/fixtures.json +240 -0
  70. data/node_modules/govuk-frontend/govuk/components/character-count/macro-options.json +111 -0
  71. data/node_modules/govuk-frontend/govuk/components/character-count/macro.njk +3 -0
  72. data/node_modules/govuk-frontend/govuk/components/character-count/template.njk +37 -0
  73. data/node_modules/govuk-frontend/govuk/components/checkboxes/README.md +15 -0
  74. data/node_modules/govuk-frontend/govuk/components/checkboxes/_checkboxes.scss +2 -0
  75. data/node_modules/govuk-frontend/govuk/components/checkboxes/_index.scss +320 -0
  76. data/node_modules/govuk-frontend/govuk/components/checkboxes/checkboxes.js +1192 -0
  77. data/node_modules/govuk-frontend/govuk/components/checkboxes/fixtures.json +1189 -0
  78. data/node_modules/govuk-frontend/govuk/components/checkboxes/macro-options.json +161 -0
  79. data/node_modules/govuk-frontend/govuk/components/checkboxes/macro.njk +3 -0
  80. data/node_modules/govuk-frontend/govuk/components/checkboxes/template.njk +119 -0
  81. data/node_modules/govuk-frontend/govuk/components/cookie-banner/README.md +15 -0
  82. data/node_modules/govuk-frontend/govuk/components/cookie-banner/_cookie-banner.scss +2 -0
  83. data/node_modules/govuk-frontend/govuk/components/cookie-banner/_index.scss +51 -0
  84. data/node_modules/govuk-frontend/govuk/components/cookie-banner/fixtures.json +443 -0
  85. data/node_modules/govuk-frontend/govuk/components/cookie-banner/macro-options.json +132 -0
  86. data/node_modules/govuk-frontend/govuk/components/cookie-banner/macro.njk +3 -0
  87. data/node_modules/govuk-frontend/govuk/components/cookie-banner/template.njk +73 -0
  88. data/node_modules/govuk-frontend/govuk/components/date-input/README.md +15 -0
  89. data/node_modules/govuk-frontend/govuk/components/date-input/_date-input.scss +2 -0
  90. data/node_modules/govuk-frontend/govuk/components/date-input/_index.scss +26 -0
  91. data/node_modules/govuk-frontend/govuk/components/date-input/fixtures.json +549 -0
  92. data/node_modules/govuk-frontend/govuk/components/date-input/macro-options.json +117 -0
  93. data/node_modules/govuk-frontend/govuk/components/date-input/macro.njk +3 -0
  94. data/node_modules/govuk-frontend/govuk/components/date-input/template.njk +97 -0
  95. data/node_modules/govuk-frontend/govuk/components/details/README.md +15 -0
  96. data/node_modules/govuk-frontend/govuk/components/details/_details.scss +2 -0
  97. data/node_modules/govuk-frontend/govuk/components/details/_index.scss +87 -0
  98. data/node_modules/govuk-frontend/govuk/components/details/details.js +828 -0
  99. data/node_modules/govuk-frontend/govuk/components/details/fixtures.json +103 -0
  100. data/node_modules/govuk-frontend/govuk/components/details/implementation.md +43 -0
  101. data/node_modules/govuk-frontend/govuk/components/details/macro-options.json +50 -0
  102. data/node_modules/govuk-frontend/govuk/components/details/macro.njk +3 -0
  103. data/node_modules/govuk-frontend/govuk/components/details/template.njk +10 -0
  104. data/node_modules/govuk-frontend/govuk/components/error-message/README.md +15 -0
  105. data/node_modules/govuk-frontend/govuk/components/error-message/_error-message.scss +2 -0
  106. data/node_modules/govuk-frontend/govuk/components/error-message/_index.scss +11 -0
  107. data/node_modules/govuk-frontend/govuk/components/error-message/fixtures.json +77 -0
  108. data/node_modules/govuk-frontend/govuk/components/error-message/macro-options.json +38 -0
  109. data/node_modules/govuk-frontend/govuk/components/error-message/macro.njk +3 -0
  110. data/node_modules/govuk-frontend/govuk/components/error-message/template.njk +6 -0
  111. data/node_modules/govuk-frontend/govuk/components/error-summary/README.md +15 -0
  112. data/node_modules/govuk-frontend/govuk/components/error-summary/_error-summary.scss +2 -0
  113. data/node_modules/govuk-frontend/govuk/components/error-summary/_index.scss +43 -0
  114. data/node_modules/govuk-frontend/govuk/components/error-summary/error-summary.js +853 -0
  115. data/node_modules/govuk-frontend/govuk/components/error-summary/fixtures.json +242 -0
  116. data/node_modules/govuk-frontend/govuk/components/error-summary/macro-options.json +70 -0
  117. data/node_modules/govuk-frontend/govuk/components/error-summary/macro.njk +3 -0
  118. data/node_modules/govuk-frontend/govuk/components/error-summary/template.njk +25 -0
  119. data/node_modules/govuk-frontend/govuk/components/fieldset/README.md +15 -0
  120. data/node_modules/govuk-frontend/govuk/components/fieldset/_fieldset.scss +2 -0
  121. data/node_modules/govuk-frontend/govuk/components/fieldset/_index.scss +64 -0
  122. data/node_modules/govuk-frontend/govuk/components/fieldset/fixtures.json +103 -0
  123. data/node_modules/govuk-frontend/govuk/components/fieldset/macro-options.json +70 -0
  124. data/node_modules/govuk-frontend/govuk/components/fieldset/macro.njk +3 -0
  125. data/node_modules/govuk-frontend/govuk/components/fieldset/template.njk +22 -0
  126. data/node_modules/govuk-frontend/govuk/components/file-upload/README.md +15 -0
  127. data/node_modules/govuk-frontend/govuk/components/file-upload/_file-upload.scss +2 -0
  128. data/node_modules/govuk-frontend/govuk/components/file-upload/_index.scss +49 -0
  129. data/node_modules/govuk-frontend/govuk/components/file-upload/fixtures.json +198 -0
  130. data/node_modules/govuk-frontend/govuk/components/file-upload/macro-options.json +73 -0
  131. data/node_modules/govuk-frontend/govuk/components/file-upload/macro.njk +3 -0
  132. data/node_modules/govuk-frontend/govuk/components/file-upload/template.njk +44 -0
  133. data/node_modules/govuk-frontend/govuk/components/footer/README.md +15 -0
  134. data/node_modules/govuk-frontend/govuk/components/footer/_footer.scss +2 -0
  135. data/node_modules/govuk-frontend/govuk/components/footer/_index.scss +241 -0
  136. data/node_modules/govuk-frontend/govuk/components/footer/fixtures.json +501 -0
  137. data/node_modules/govuk-frontend/govuk/components/footer/macro-options.json +118 -0
  138. data/node_modules/govuk-frontend/govuk/components/footer/macro.njk +3 -0
  139. data/node_modules/govuk-frontend/govuk/components/footer/template.njk +87 -0
  140. data/node_modules/govuk-frontend/govuk/components/header/README.md +15 -0
  141. data/node_modules/govuk-frontend/govuk/components/header/_header.scss +2 -0
  142. data/node_modules/govuk-frontend/govuk/components/header/_index.scss +331 -0
  143. data/node_modules/govuk-frontend/govuk/components/header/fixtures.json +378 -0
  144. data/node_modules/govuk-frontend/govuk/components/header/header.js +1066 -0
  145. data/node_modules/govuk-frontend/govuk/components/header/macro-options.json +106 -0
  146. data/node_modules/govuk-frontend/govuk/components/header/macro.njk +3 -0
  147. data/node_modules/govuk-frontend/govuk/components/header/template.njk +79 -0
  148. data/node_modules/govuk-frontend/govuk/components/hint/README.md +15 -0
  149. data/node_modules/govuk-frontend/govuk/components/hint/_hint.scss +2 -0
  150. data/node_modules/govuk-frontend/govuk/components/hint/_index.scss +44 -0
  151. data/node_modules/govuk-frontend/govuk/components/hint/fixtures.json +59 -0
  152. data/node_modules/govuk-frontend/govuk/components/hint/macro-options.json +32 -0
  153. data/node_modules/govuk-frontend/govuk/components/hint/macro.njk +3 -0
  154. data/node_modules/govuk-frontend/govuk/components/hint/template.njk +4 -0
  155. data/node_modules/govuk-frontend/govuk/components/input/README.md +15 -0
  156. data/node_modules/govuk-frontend/govuk/components/input/_index.scss +191 -0
  157. data/node_modules/govuk-frontend/govuk/components/input/_input.scss +2 -0
  158. data/node_modules/govuk-frontend/govuk/components/input/fixtures.json +628 -0
  159. data/node_modules/govuk-frontend/govuk/components/input/macro-options.json +167 -0
  160. data/node_modules/govuk-frontend/govuk/components/input/macro.njk +3 -0
  161. data/node_modules/govuk-frontend/govuk/components/input/template.njk +65 -0
  162. data/node_modules/govuk-frontend/govuk/components/inset-text/README.md +15 -0
  163. data/node_modules/govuk-frontend/govuk/components/inset-text/_index.scss +24 -0
  164. data/node_modules/govuk-frontend/govuk/components/inset-text/_inset-text.scss +2 -0
  165. data/node_modules/govuk-frontend/govuk/components/inset-text/fixtures.json +58 -0
  166. data/node_modules/govuk-frontend/govuk/components/inset-text/macro-options.json +32 -0
  167. data/node_modules/govuk-frontend/govuk/components/inset-text/macro.njk +3 -0
  168. data/node_modules/govuk-frontend/govuk/components/inset-text/template.njk +4 -0
  169. data/node_modules/govuk-frontend/govuk/components/label/README.md +15 -0
  170. data/node_modules/govuk-frontend/govuk/components/label/_index.scss +41 -0
  171. data/node_modules/govuk-frontend/govuk/components/label/_label.scss +2 -0
  172. data/node_modules/govuk-frontend/govuk/components/label/fixtures.json +84 -0
  173. data/node_modules/govuk-frontend/govuk/components/label/macro-options.json +38 -0
  174. data/node_modules/govuk-frontend/govuk/components/label/macro.njk +3 -0
  175. data/node_modules/govuk-frontend/govuk/components/label/template.njk +15 -0
  176. data/node_modules/govuk-frontend/govuk/components/notification-banner/README.md +15 -0
  177. data/node_modules/govuk-frontend/govuk/components/notification-banner/_index.scss +89 -0
  178. data/node_modules/govuk-frontend/govuk/components/notification-banner/_notification-banner.scss +2 -0
  179. data/node_modules/govuk-frontend/govuk/components/notification-banner/fixtures.json +212 -0
  180. data/node_modules/govuk-frontend/govuk/components/notification-banner/macro-options.json +68 -0
  181. data/node_modules/govuk-frontend/govuk/components/notification-banner/macro.njk +3 -0
  182. data/node_modules/govuk-frontend/govuk/components/notification-banner/notification-banner.js +61 -0
  183. data/node_modules/govuk-frontend/govuk/components/notification-banner/template.njk +47 -0
  184. data/node_modules/govuk-frontend/govuk/components/panel/README.md +15 -0
  185. data/node_modules/govuk-frontend/govuk/components/panel/_index.scss +44 -0
  186. data/node_modules/govuk-frontend/govuk/components/panel/_panel.scss +2 -0
  187. data/node_modules/govuk-frontend/govuk/components/panel/fixtures.json +91 -0
  188. data/node_modules/govuk-frontend/govuk/components/panel/macro-options.json +44 -0
  189. data/node_modules/govuk-frontend/govuk/components/panel/macro.njk +3 -0
  190. data/node_modules/govuk-frontend/govuk/components/panel/template.njk +13 -0
  191. data/node_modules/govuk-frontend/govuk/components/phase-banner/README.md +15 -0
  192. data/node_modules/govuk-frontend/govuk/components/phase-banner/_index.scss +27 -0
  193. data/node_modules/govuk-frontend/govuk/components/phase-banner/_phase-banner.scss +2 -0
  194. data/node_modules/govuk-frontend/govuk/components/phase-banner/fixtures.json +76 -0
  195. data/node_modules/govuk-frontend/govuk/components/phase-banner/macro-options.json +33 -0
  196. data/node_modules/govuk-frontend/govuk/components/phase-banner/macro.njk +3 -0
  197. data/node_modules/govuk-frontend/govuk/components/phase-banner/template.njk +15 -0
  198. data/node_modules/govuk-frontend/govuk/components/radios/README.md +15 -0
  199. data/node_modules/govuk-frontend/govuk/components/radios/_index.scss +342 -0
  200. data/node_modules/govuk-frontend/govuk/components/radios/_radios.scss +2 -0
  201. data/node_modules/govuk-frontend/govuk/components/radios/fixtures.json +1183 -0
  202. data/node_modules/govuk-frontend/govuk/components/radios/macro-options.json +143 -0
  203. data/node_modules/govuk-frontend/govuk/components/radios/macro.njk +3 -0
  204. data/node_modules/govuk-frontend/govuk/components/radios/radios.js +1148 -0
  205. data/node_modules/govuk-frontend/govuk/components/radios/template.njk +116 -0
  206. data/node_modules/govuk-frontend/govuk/components/select/README.md +15 -0
  207. data/node_modules/govuk-frontend/govuk/components/select/_index.scss +49 -0
  208. data/node_modules/govuk-frontend/govuk/components/select/_select.scss +2 -0
  209. data/node_modules/govuk-frontend/govuk/components/select/fixtures.json +327 -0
  210. data/node_modules/govuk-frontend/govuk/components/select/macro-options.json +105 -0
  211. data/node_modules/govuk-frontend/govuk/components/select/macro.njk +3 -0
  212. data/node_modules/govuk-frontend/govuk/components/select/template.njk +51 -0
  213. data/node_modules/govuk-frontend/govuk/components/skip-link/README.md +15 -0
  214. data/node_modules/govuk-frontend/govuk/components/skip-link/_index.scss +36 -0
  215. data/node_modules/govuk-frontend/govuk/components/skip-link/_skip-link.scss +2 -0
  216. data/node_modules/govuk-frontend/govuk/components/skip-link/fixtures.json +84 -0
  217. data/node_modules/govuk-frontend/govuk/components/skip-link/macro-options.json +32 -0
  218. data/node_modules/govuk-frontend/govuk/components/skip-link/macro.njk +3 -0
  219. data/node_modules/govuk-frontend/govuk/components/skip-link/template.njk +3 -0
  220. data/node_modules/govuk-frontend/govuk/components/summary-list/README.md +15 -0
  221. data/node_modules/govuk-frontend/govuk/components/summary-list/_index.scss +145 -0
  222. data/node_modules/govuk-frontend/govuk/components/summary-list/_summary-list.scss +2 -0
  223. data/node_modules/govuk-frontend/govuk/components/summary-list/fixtures.json +1084 -0
  224. data/node_modules/govuk-frontend/govuk/components/summary-list/macro-options.json +113 -0
  225. data/node_modules/govuk-frontend/govuk/components/summary-list/macro.njk +3 -0
  226. data/node_modules/govuk-frontend/govuk/components/summary-list/template.njk +47 -0
  227. data/node_modules/govuk-frontend/govuk/components/table/README.md +15 -0
  228. data/node_modules/govuk-frontend/govuk/components/table/_index.scss +71 -0
  229. data/node_modules/govuk-frontend/govuk/components/table/_table.scss +2 -0
  230. data/node_modules/govuk-frontend/govuk/components/table/fixtures.json +538 -0
  231. data/node_modules/govuk-frontend/govuk/components/table/macro-options.json +132 -0
  232. data/node_modules/govuk-frontend/govuk/components/table/macro.njk +3 -0
  233. data/node_modules/govuk-frontend/govuk/components/table/template.njk +45 -0
  234. data/node_modules/govuk-frontend/govuk/components/tabs/README.md +15 -0
  235. data/node_modules/govuk-frontend/govuk/components/tabs/_index.scss +130 -0
  236. data/node_modules/govuk-frontend/govuk/components/tabs/_tabs.scss +2 -0
  237. data/node_modules/govuk-frontend/govuk/components/tabs/fixtures.json +286 -0
  238. data/node_modules/govuk-frontend/govuk/components/tabs/macro-options.json +84 -0
  239. data/node_modules/govuk-frontend/govuk/components/tabs/macro.njk +3 -0
  240. data/node_modules/govuk-frontend/govuk/components/tabs/tabs.js +1347 -0
  241. data/node_modules/govuk-frontend/govuk/components/tabs/template.njk +32 -0
  242. data/node_modules/govuk-frontend/govuk/components/tag/README.md +15 -0
  243. data/node_modules/govuk-frontend/govuk/components/tag/_index.scss +86 -0
  244. data/node_modules/govuk-frontend/govuk/components/tag/_tag.scss +2 -0
  245. data/node_modules/govuk-frontend/govuk/components/tag/fixtures.json +131 -0
  246. data/node_modules/govuk-frontend/govuk/components/tag/macro-options.json +26 -0
  247. data/node_modules/govuk-frontend/govuk/components/tag/macro.njk +3 -0
  248. data/node_modules/govuk-frontend/govuk/components/tag/template.njk +3 -0
  249. data/node_modules/govuk-frontend/govuk/components/textarea/README.md +15 -0
  250. data/node_modules/govuk-frontend/govuk/components/textarea/_index.scss +47 -0
  251. data/node_modules/govuk-frontend/govuk/components/textarea/_textarea.scss +2 -0
  252. data/node_modules/govuk-frontend/govuk/components/textarea/fixtures.json +250 -0
  253. data/node_modules/govuk-frontend/govuk/components/textarea/macro-options.json +91 -0
  254. data/node_modules/govuk-frontend/govuk/components/textarea/macro.njk +3 -0
  255. data/node_modules/govuk-frontend/govuk/components/textarea/template.njk +45 -0
  256. data/node_modules/govuk-frontend/govuk/components/warning-text/README.md +15 -0
  257. data/node_modules/govuk-frontend/govuk/components/warning-text/_index.scss +66 -0
  258. data/node_modules/govuk-frontend/govuk/components/warning-text/_warning-text.scss +2 -0
  259. data/node_modules/govuk-frontend/govuk/components/warning-text/fixtures.json +73 -0
  260. data/node_modules/govuk-frontend/govuk/components/warning-text/macro-options.json +32 -0
  261. data/node_modules/govuk-frontend/govuk/components/warning-text/macro.njk +3 -0
  262. data/node_modules/govuk-frontend/govuk/components/warning-text/template.njk +9 -0
  263. data/node_modules/govuk-frontend/govuk/core/_all.scss +6 -0
  264. data/node_modules/govuk-frontend/govuk/core/_global-styles.scss +25 -0
  265. data/node_modules/govuk-frontend/govuk/core/_links.scss +41 -0
  266. data/node_modules/govuk-frontend/govuk/core/_lists.scss +72 -0
  267. data/node_modules/govuk-frontend/govuk/core/_section-break.scss +62 -0
  268. data/node_modules/govuk-frontend/govuk/core/_template.scss +36 -0
  269. data/node_modules/govuk-frontend/govuk/core/_typography.scss +192 -0
  270. data/node_modules/govuk-frontend/govuk/helpers/_all.scss +12 -0
  271. data/node_modules/govuk-frontend/govuk/helpers/_clearfix.scss +15 -0
  272. data/node_modules/govuk-frontend/govuk/helpers/_colour.scss +95 -0
  273. data/node_modules/govuk-frontend/govuk/helpers/_device-pixels.scss +37 -0
  274. data/node_modules/govuk-frontend/govuk/helpers/_focused.scss +28 -0
  275. data/node_modules/govuk-frontend/govuk/helpers/_font-faces.scss +41 -0
  276. data/node_modules/govuk-frontend/govuk/helpers/_grid.scss +61 -0
  277. data/node_modules/govuk-frontend/govuk/helpers/_links.scss +427 -0
  278. data/node_modules/govuk-frontend/govuk/helpers/_media-queries.scss +91 -0
  279. data/node_modules/govuk-frontend/govuk/helpers/_shape-arrow.scss +80 -0
  280. data/node_modules/govuk-frontend/govuk/helpers/_spacing.scss +153 -0
  281. data/node_modules/govuk-frontend/govuk/helpers/_typography.scss +207 -0
  282. data/node_modules/govuk-frontend/govuk/helpers/_visually-hidden.scss +84 -0
  283. data/node_modules/govuk-frontend/govuk/objects/_all.scss +5 -0
  284. data/node_modules/govuk-frontend/govuk/objects/_button-group.scss +101 -0
  285. data/node_modules/govuk-frontend/govuk/objects/_form-group.scss +23 -0
  286. data/node_modules/govuk-frontend/govuk/objects/_grid.scss +24 -0
  287. data/node_modules/govuk-frontend/govuk/objects/_main-wrapper.scss +68 -0
  288. data/node_modules/govuk-frontend/govuk/objects/_width-container.scss +88 -0
  289. data/node_modules/govuk-frontend/govuk/overrides/_all.scss +4 -0
  290. data/node_modules/govuk-frontend/govuk/overrides/_display.scss +30 -0
  291. data/node_modules/govuk-frontend/govuk/overrides/_spacing.scss +64 -0
  292. data/node_modules/govuk-frontend/govuk/overrides/_typography.scss +27 -0
  293. data/node_modules/govuk-frontend/govuk/overrides/_width.scss +52 -0
  294. data/node_modules/govuk-frontend/govuk/settings/_all.scss +23 -0
  295. data/node_modules/govuk-frontend/govuk/settings/_assets.scss +82 -0
  296. data/node_modules/govuk-frontend/govuk/settings/_colours-applied.scss +155 -0
  297. data/node_modules/govuk-frontend/govuk/settings/_colours-organisations.scss +139 -0
  298. data/node_modules/govuk-frontend/govuk/settings/_colours-palette.scss +108 -0
  299. data/node_modules/govuk-frontend/govuk/settings/_compatibility.scss +74 -0
  300. data/node_modules/govuk-frontend/govuk/settings/_global-styles.scss +13 -0
  301. data/node_modules/govuk-frontend/govuk/settings/_ie8.scss +18 -0
  302. data/node_modules/govuk-frontend/govuk/settings/_links.scss +62 -0
  303. data/node_modules/govuk-frontend/govuk/settings/_measurements.scss +105 -0
  304. data/node_modules/govuk-frontend/govuk/settings/_media-queries.scss +23 -0
  305. data/node_modules/govuk-frontend/govuk/settings/_spacing.scss +80 -0
  306. data/node_modules/govuk-frontend/govuk/settings/_typography-font-families.scss +32 -0
  307. data/node_modules/govuk-frontend/govuk/settings/_typography-font.scss +89 -0
  308. data/node_modules/govuk-frontend/govuk/settings/_typography-responsive.scss +183 -0
  309. data/node_modules/govuk-frontend/govuk/template.njk +60 -0
  310. data/node_modules/govuk-frontend/govuk/tools/_all.scss +8 -0
  311. data/node_modules/govuk-frontend/govuk/tools/_compatibility.scss +36 -0
  312. data/node_modules/govuk-frontend/govuk/tools/_exports.scss +33 -0
  313. data/node_modules/govuk-frontend/govuk/tools/_font-url.scss +25 -0
  314. data/node_modules/govuk-frontend/govuk/tools/_ie8.scss +51 -0
  315. data/node_modules/govuk-frontend/govuk/tools/_iff.scss +17 -0
  316. data/node_modules/govuk-frontend/govuk/tools/_image-url.scss +25 -0
  317. data/node_modules/govuk-frontend/govuk/tools/_px-to-em.scss +20 -0
  318. data/node_modules/govuk-frontend/govuk/tools/_px-to-rem.scss +20 -0
  319. data/node_modules/govuk-frontend/govuk/utilities/_all.scss +2 -0
  320. data/node_modules/govuk-frontend/govuk/utilities/_clearfix.scss +5 -0
  321. data/node_modules/govuk-frontend/govuk/utilities/_visually-hidden.scss +9 -0
  322. data/node_modules/govuk-frontend/govuk/vendor/_sass-mq.scss +347 -0
  323. data/node_modules/govuk-frontend/govuk/vendor/polyfills/DOMTokenList.js +272 -0
  324. data/node_modules/govuk-frontend/govuk/vendor/polyfills/Document.js +34 -0
  325. data/node_modules/govuk-frontend/govuk/vendor/polyfills/Element.js +147 -0
  326. data/node_modules/govuk-frontend/govuk/vendor/polyfills/Element/prototype/classList.js +589 -0
  327. data/node_modules/govuk-frontend/govuk/vendor/polyfills/Element/prototype/closest.js +54 -0
  328. data/node_modules/govuk-frontend/govuk/vendor/polyfills/Element/prototype/matches.js +31 -0
  329. data/node_modules/govuk-frontend/govuk/vendor/polyfills/Element/prototype/nextElementSibling.js +254 -0
  330. data/node_modules/govuk-frontend/govuk/vendor/polyfills/Element/prototype/previousElementSibling.js +254 -0
  331. data/node_modules/govuk-frontend/govuk/vendor/polyfills/Event.js +504 -0
  332. data/node_modules/govuk-frontend/govuk/vendor/polyfills/Function/prototype/bind.js +252 -0
  333. data/node_modules/govuk-frontend/govuk/vendor/polyfills/Object/defineProperty.js +94 -0
  334. data/node_modules/govuk-frontend/govuk/vendor/polyfills/Window.js +28 -0
  335. data/node_modules/govuk-frontend/package.json +56 -0
  336. data/package-lock.json +13 -0
  337. data/package.json +29 -0
  338. data/vendor/assets/fonts/bold-affa96571d-v2.woff +0 -0
  339. data/vendor/assets/fonts/bold-b542beb274-v2.woff2 +0 -0
  340. data/vendor/assets/fonts/light-94a07e06a1-v2.woff2 +0 -0
  341. data/vendor/assets/fonts/light-f591b13f7d-v2.woff +0 -0
  342. data/vendor/assets/images/favicon.ico +0 -0
  343. data/vendor/assets/images/govuk-apple-touch-icon-152x152.png +0 -0
  344. data/vendor/assets/images/govuk-apple-touch-icon-167x167.png +0 -0
  345. data/vendor/assets/images/govuk-apple-touch-icon-180x180.png +0 -0
  346. data/vendor/assets/images/govuk-apple-touch-icon.png +0 -0
  347. data/vendor/assets/images/govuk-crest-2x.png +0 -0
  348. data/vendor/assets/images/govuk-crest.png +0 -0
  349. data/vendor/assets/images/govuk-logotype-crown.png +0 -0
  350. data/vendor/assets/images/govuk-mask-icon.svg +7 -0
  351. data/vendor/assets/images/govuk-opengraph-image.png +0 -0
  352. data/vendor/assets/javascripts/defra_ruby_template.js +2616 -0
  353. data/vendor/assets/stylesheets/_base.scss +3 -0
  354. data/vendor/assets/stylesheets/all-ie8.scss +6 -0
  355. data/vendor/assets/stylesheets/all.scss +9 -0
  356. data/vendor/assets/stylesheets/components/_all.scss +33 -0
  357. data/vendor/assets/stylesheets/components/accordion/_accordion.scss +2 -0
  358. data/vendor/assets/stylesheets/components/accordion/_index.scss +197 -0
  359. data/vendor/assets/stylesheets/components/back-link/_back-link.scss +2 -0
  360. data/vendor/assets/stylesheets/components/back-link/_index.scss +99 -0
  361. data/vendor/assets/stylesheets/components/breadcrumbs/_breadcrumbs.scss +2 -0
  362. data/vendor/assets/stylesheets/components/breadcrumbs/_index.scss +138 -0
  363. data/vendor/assets/stylesheets/components/button/_button.scss +2 -0
  364. data/vendor/assets/stylesheets/components/button/_index.scss +288 -0
  365. data/vendor/assets/stylesheets/components/character-count/_character-count.scss +2 -0
  366. data/vendor/assets/stylesheets/components/character-count/_index.scss +25 -0
  367. data/vendor/assets/stylesheets/components/checkboxes/_checkboxes.scss +2 -0
  368. data/vendor/assets/stylesheets/components/checkboxes/_index.scss +320 -0
  369. data/vendor/assets/stylesheets/components/cookie-banner/_cookie-banner.scss +2 -0
  370. data/vendor/assets/stylesheets/components/cookie-banner/_index.scss +51 -0
  371. data/vendor/assets/stylesheets/components/date-input/_date-input.scss +2 -0
  372. data/vendor/assets/stylesheets/components/date-input/_index.scss +26 -0
  373. data/vendor/assets/stylesheets/components/details/_details.scss +2 -0
  374. data/vendor/assets/stylesheets/components/details/_index.scss +87 -0
  375. data/vendor/assets/stylesheets/components/error-message/_error-message.scss +2 -0
  376. data/vendor/assets/stylesheets/components/error-message/_index.scss +11 -0
  377. data/vendor/assets/stylesheets/components/error-summary/_error-summary.scss +2 -0
  378. data/vendor/assets/stylesheets/components/error-summary/_index.scss +43 -0
  379. data/vendor/assets/stylesheets/components/fieldset/_fieldset.scss +2 -0
  380. data/vendor/assets/stylesheets/components/fieldset/_index.scss +64 -0
  381. data/vendor/assets/stylesheets/components/file-upload/_file-upload.scss +2 -0
  382. data/vendor/assets/stylesheets/components/file-upload/_index.scss +49 -0
  383. data/vendor/assets/stylesheets/components/footer/_footer.scss +2 -0
  384. data/vendor/assets/stylesheets/components/footer/_index.scss +241 -0
  385. data/vendor/assets/stylesheets/components/header/_header.scss +2 -0
  386. data/vendor/assets/stylesheets/components/header/_index.scss +331 -0
  387. data/vendor/assets/stylesheets/components/hint/_hint.scss +2 -0
  388. data/vendor/assets/stylesheets/components/hint/_index.scss +44 -0
  389. data/vendor/assets/stylesheets/components/input/_index.scss +191 -0
  390. data/vendor/assets/stylesheets/components/input/_input.scss +2 -0
  391. data/vendor/assets/stylesheets/components/inset-text/_index.scss +24 -0
  392. data/vendor/assets/stylesheets/components/inset-text/_inset-text.scss +2 -0
  393. data/vendor/assets/stylesheets/components/label/_index.scss +41 -0
  394. data/vendor/assets/stylesheets/components/label/_label.scss +2 -0
  395. data/vendor/assets/stylesheets/components/notification-banner/_index.scss +89 -0
  396. data/vendor/assets/stylesheets/components/notification-banner/_notification-banner.scss +2 -0
  397. data/vendor/assets/stylesheets/components/panel/_index.scss +44 -0
  398. data/vendor/assets/stylesheets/components/panel/_panel.scss +2 -0
  399. data/vendor/assets/stylesheets/components/phase-banner/_index.scss +27 -0
  400. data/vendor/assets/stylesheets/components/phase-banner/_phase-banner.scss +2 -0
  401. data/vendor/assets/stylesheets/components/radios/_index.scss +342 -0
  402. data/vendor/assets/stylesheets/components/radios/_radios.scss +2 -0
  403. data/vendor/assets/stylesheets/components/select/_index.scss +49 -0
  404. data/vendor/assets/stylesheets/components/select/_select.scss +2 -0
  405. data/vendor/assets/stylesheets/components/skip-link/_index.scss +36 -0
  406. data/vendor/assets/stylesheets/components/skip-link/_skip-link.scss +2 -0
  407. data/vendor/assets/stylesheets/components/summary-list/_index.scss +145 -0
  408. data/vendor/assets/stylesheets/components/summary-list/_summary-list.scss +2 -0
  409. data/vendor/assets/stylesheets/components/table/_index.scss +71 -0
  410. data/vendor/assets/stylesheets/components/table/_table.scss +2 -0
  411. data/vendor/assets/stylesheets/components/tabs/_index.scss +130 -0
  412. data/vendor/assets/stylesheets/components/tabs/_tabs.scss +2 -0
  413. data/vendor/assets/stylesheets/components/tag/_index.scss +86 -0
  414. data/vendor/assets/stylesheets/components/tag/_tag.scss +2 -0
  415. data/vendor/assets/stylesheets/components/textarea/_index.scss +47 -0
  416. data/vendor/assets/stylesheets/components/textarea/_textarea.scss +2 -0
  417. data/vendor/assets/stylesheets/components/warning-text/_index.scss +66 -0
  418. data/vendor/assets/stylesheets/components/warning-text/_warning-text.scss +2 -0
  419. data/vendor/assets/stylesheets/core/_all.scss +6 -0
  420. data/vendor/assets/stylesheets/core/_global-styles.scss +25 -0
  421. data/vendor/assets/stylesheets/core/_links.scss +41 -0
  422. data/vendor/assets/stylesheets/core/_lists.scss +72 -0
  423. data/vendor/assets/stylesheets/core/_section-break.scss +62 -0
  424. data/vendor/assets/stylesheets/core/_template.scss +36 -0
  425. data/vendor/assets/stylesheets/core/_typography.scss +192 -0
  426. data/vendor/assets/stylesheets/defra_ruby_template.scss +16 -0
  427. data/vendor/assets/stylesheets/helpers/_all.scss +12 -0
  428. data/vendor/assets/stylesheets/helpers/_clearfix.scss +15 -0
  429. data/vendor/assets/stylesheets/helpers/_colour.scss +95 -0
  430. data/vendor/assets/stylesheets/helpers/_device-pixels.scss +37 -0
  431. data/vendor/assets/stylesheets/helpers/_focused.scss +28 -0
  432. data/vendor/assets/stylesheets/helpers/_font-faces.scss +41 -0
  433. data/vendor/assets/stylesheets/helpers/_grid.scss +61 -0
  434. data/vendor/assets/stylesheets/helpers/_links.scss +427 -0
  435. data/vendor/assets/stylesheets/helpers/_media-queries.scss +91 -0
  436. data/vendor/assets/stylesheets/helpers/_shape-arrow.scss +80 -0
  437. data/vendor/assets/stylesheets/helpers/_spacing.scss +153 -0
  438. data/vendor/assets/stylesheets/helpers/_typography.scss +207 -0
  439. data/vendor/assets/stylesheets/helpers/_visually-hidden.scss +84 -0
  440. data/vendor/assets/stylesheets/objects/_all.scss +5 -0
  441. data/vendor/assets/stylesheets/objects/_button-group.scss +101 -0
  442. data/vendor/assets/stylesheets/objects/_form-group.scss +23 -0
  443. data/vendor/assets/stylesheets/objects/_grid.scss +24 -0
  444. data/vendor/assets/stylesheets/objects/_main-wrapper.scss +68 -0
  445. data/vendor/assets/stylesheets/objects/_width-container.scss +88 -0
  446. data/vendor/assets/stylesheets/overrides/_all.scss +4 -0
  447. data/vendor/assets/stylesheets/overrides/_display.scss +30 -0
  448. data/vendor/assets/stylesheets/overrides/_spacing.scss +64 -0
  449. data/vendor/assets/stylesheets/overrides/_typography.scss +27 -0
  450. data/vendor/assets/stylesheets/overrides/_width.scss +52 -0
  451. data/vendor/assets/stylesheets/settings/_all.scss +23 -0
  452. data/vendor/assets/stylesheets/settings/_assets.scss +82 -0
  453. data/vendor/assets/stylesheets/settings/_colours-applied.scss +155 -0
  454. data/vendor/assets/stylesheets/settings/_colours-organisations.scss +139 -0
  455. data/vendor/assets/stylesheets/settings/_colours-palette.scss +108 -0
  456. data/vendor/assets/stylesheets/settings/_compatibility.scss +74 -0
  457. data/vendor/assets/stylesheets/settings/_global-styles.scss +13 -0
  458. data/vendor/assets/stylesheets/settings/_ie8.scss +18 -0
  459. data/vendor/assets/stylesheets/settings/_links.scss +62 -0
  460. data/vendor/assets/stylesheets/settings/_measurements.scss +105 -0
  461. data/vendor/assets/stylesheets/settings/_media-queries.scss +23 -0
  462. data/vendor/assets/stylesheets/settings/_spacing.scss +80 -0
  463. data/vendor/assets/stylesheets/settings/_typography-font-families.scss +32 -0
  464. data/vendor/assets/stylesheets/settings/_typography-font.scss +89 -0
  465. data/vendor/assets/stylesheets/settings/_typography-responsive.scss +183 -0
  466. data/vendor/assets/stylesheets/tools/_all.scss +8 -0
  467. data/vendor/assets/stylesheets/tools/_compatibility.scss +36 -0
  468. data/vendor/assets/stylesheets/tools/_exports.scss +33 -0
  469. data/vendor/assets/stylesheets/tools/_font-url.scss +25 -0
  470. data/vendor/assets/stylesheets/tools/_ie8.scss +51 -0
  471. data/vendor/assets/stylesheets/tools/_iff.scss +17 -0
  472. data/vendor/assets/stylesheets/tools/_image-url.scss +25 -0
  473. data/vendor/assets/stylesheets/tools/_px-to-em.scss +20 -0
  474. data/vendor/assets/stylesheets/tools/_px-to-rem.scss +20 -0
  475. data/vendor/assets/stylesheets/utilities/_all.scss +2 -0
  476. data/vendor/assets/stylesheets/utilities/_clearfix.scss +5 -0
  477. data/vendor/assets/stylesheets/utilities/_visually-hidden.scss +9 -0
  478. data/vendor/assets/stylesheets/vendor/_sass-mq.scss +347 -0
  479. metadata +520 -0
@@ -0,0 +1,132 @@
1
+ [
2
+ {
3
+ "name": "ariaLabel",
4
+ "type": "string",
5
+ "required": false,
6
+ "description": "The text for the `aria-label` which labels the cookie banner region. This region applies to all messages that the cookie banner includes. For example, the cookie message and the confirmation message. Defaults to \"Cookie banner\"."
7
+ },
8
+ {
9
+ "name": "hidden",
10
+ "type": "boolean",
11
+ "required": false,
12
+ "description": "Defaults to `false`. If you set this option to `true`, the whole cookie banner is hidden, including all messages within the banner. You can use `hidden` for client-side implementations where the cookie banner HTML is present, but hidden until the cookie banner is shown using JavaScript."
13
+ },
14
+ {
15
+ "name": "classes",
16
+ "type": "string",
17
+ "required": false,
18
+ "description": "The additional classes that you want to add to the cookie banner."
19
+ },
20
+ {
21
+ "name": "attributes",
22
+ "type": "object",
23
+ "required": false,
24
+ "description": "The additional attributes that you want to add to the cookie banner. For example, data attributes."
25
+ },
26
+ {
27
+ "name": "messages",
28
+ "type": "array",
29
+ "required": true,
30
+ "description": "The different messages you can pass into the cookie banner. For example, the cookie message and the confirmation message.",
31
+ "params": [
32
+ {
33
+ "name": "headingText",
34
+ "type": "string",
35
+ "required": false,
36
+ "description": "The heading text that displays in the message. You can use any string with this option. If you set `headingHtml`, `headingText` is ignored."
37
+ },
38
+ {
39
+ "name": "headingHtml",
40
+ "type": "string",
41
+ "required": false,
42
+ "description": "The heading HTML to use within the message. You can use any string with this option. If you set `headingHtml`, `headingText` is ignored. If you are not passing HTML, use `headingText`."
43
+ },
44
+ {
45
+ "name": "text",
46
+ "type": "string",
47
+ "required": true,
48
+ "description": "The text for the main content within the message. You can use any string with this option. If you set `html`, `text` is not required and is ignored."
49
+ },
50
+ {
51
+ "name": "html",
52
+ "type": "string",
53
+ "required": true,
54
+ "description": "The HTML for the main content within the message. You can use any string with this option. If you set `html`, `text` is not required and is ignored. If you are not passing HTML, use `text`."
55
+ },
56
+ {
57
+ "name": "actions",
58
+ "type": "array",
59
+ "required": false,
60
+ "description": "The buttons and links that you want to display in the message. `actions` defaults to `button` unless you set `href`, which renders the action as a link.",
61
+ "params": [
62
+ {
63
+ "name": "text",
64
+ "type": "string",
65
+ "required": true,
66
+ "description": "The button or link text."
67
+ },
68
+ {
69
+ "name": "type",
70
+ "type": "string",
71
+ "required": false,
72
+ "description": "The type of button. You can set `button` or `submit`. Set `button` and `href` to render a link styled as a button. If you set `href`, it overrides `submit`."
73
+ },
74
+ {
75
+ "name": "href",
76
+ "type": "string",
77
+ "required": false,
78
+ "description": "The `href` for a link. Set `button` and `href` to render a link styled as a button."
79
+ },
80
+ {
81
+ "name": "name",
82
+ "type": "string",
83
+ "required": false,
84
+ "description": "The name attribute for the button. Does not apply if you set `href`, which makes a link."
85
+ },
86
+ {
87
+ "name": "value",
88
+ "type": "string",
89
+ "required": false,
90
+ "description": "The value attribute for the button. Does not apply if you set `href`, which makes a link."
91
+ },
92
+ {
93
+ "name": "classes",
94
+ "type": "string",
95
+ "required": false,
96
+ "description": "The additional classes that you want to add to the button or link."
97
+ },
98
+ {
99
+ "name": "attributes",
100
+ "type": "object",
101
+ "required": false,
102
+ "description": "The additional attributes that you want to add to the button or link. For example, data attributes."
103
+ }
104
+ ]
105
+ },
106
+ {
107
+ "name": "hidden",
108
+ "type": "boolean",
109
+ "required": false,
110
+ "description": "Defaults to `false`. If you set it to `true`, the message is hidden. You can use `hidden` for client-side implementations where the confirmation message HTML is present, but hidden on the page."
111
+ },
112
+ {
113
+ "name": "role",
114
+ "type": "string",
115
+ "required": false,
116
+ "description": "Set `role` to `alert` on confirmation messages to allow assistive tech to automatically read the message. You will also need to move focus to the confirmation message using JavaScript you have written yourself."
117
+ },
118
+ {
119
+ "name": "classes",
120
+ "type": "string",
121
+ "required": false,
122
+ "description": "The additional classes that you want to add to the message."
123
+ },
124
+ {
125
+ "name": "attributes",
126
+ "type": "object",
127
+ "required": false,
128
+ "description": "The additional attributes that you want to add to the message. For example, data attributes."
129
+ }
130
+ ]
131
+ }
132
+ ]
@@ -0,0 +1,3 @@
1
+ {% macro govukCookieBanner(params) %}
2
+ {%- include "./template.njk" -%}
3
+ {% endmacro %}
@@ -0,0 +1,73 @@
1
+ {% from "../button/macro.njk" import govukButton -%}
2
+
3
+ <div class="govuk-cookie-banner {{ params.classes if params.classes }}" data-nosnippet role="region" aria-label="{{ params.ariaLabel | default("Cookie banner") }}"
4
+ {%- if params.hidden %} hidden{% endif %}
5
+ {%- for attribute, value in params.attributes %} {{attribute}}="{{value}}"{% endfor %}>
6
+
7
+ {%- for message in params.messages %}
8
+ {% set classNames = "govuk-cookie-banner__message govuk-width-container" %}
9
+ {% if message.classes %}
10
+ {% set classNames = classNames + " " + message.classes %}
11
+ {% endif %}
12
+
13
+ <div class="{{classNames}}" {%- if message.role %} role="{{message.role}}"{% endif %}
14
+ {%- for attribute, value in message.attributes %} {{attribute}}="{{value}}"{% endfor %}
15
+ {% if message.hidden %} hidden{% endif %}>
16
+
17
+ <div class="govuk-grid-row">
18
+ <div class="govuk-grid-column-two-thirds">
19
+ {% if message.headingHtml or message.headingText %}
20
+ <h2 class="govuk-cookie-banner__heading govuk-heading-m">
21
+ {%- if message.headingHtml -%}
22
+ {{ message.headingHtml | safe }}
23
+ {%- else -%}
24
+ {{ message.headingText }}
25
+ {%- endif -%}
26
+ </h2>
27
+ {% endif %}
28
+
29
+ <div class="govuk-cookie-banner__content">
30
+ {%- if message.html -%}
31
+ {{ message.html | safe }}
32
+ {%- elif message.text -%}
33
+ <p class="govuk-body">{{ message.text }}</p>
34
+ {%- endif -%}
35
+ </div>
36
+ </div>
37
+ </div>
38
+
39
+ {% if message.actions %}
40
+ <div class="govuk-button-group">
41
+ {% for action in message.actions %}
42
+ {% if action.href %}
43
+ {% if action.type == "button" %}
44
+ {{ govukButton({
45
+ "text": action.text,
46
+ "type": "button",
47
+ "classes": action.classes,
48
+ "href": action.href,
49
+ "attributes": action.attributes
50
+ }) | indent(12) | trim }}
51
+ {% else %}
52
+ {% set linkClasses = "govuk-link" %}
53
+ {% if action.classes %}
54
+ {% set linkClasses = linkClasses + " " + action.classes %}
55
+ {% endif %}
56
+ <a class="{{ linkClasses }}" href="{{ action.href }}" {%- for attribute, value in action.attributes %} {{attribute}}="{{value}}"{% endfor %}>{{ action.text }}</a>
57
+ {% endif %}
58
+ {% else %}
59
+ {{ govukButton({
60
+ "text": action.text,
61
+ "value": action.value,
62
+ "name": action.name,
63
+ "type": action.type,
64
+ "classes": action.classes,
65
+ "attributes": action.attributes
66
+ }) | indent(12) | trim }}
67
+ {% endif %}
68
+ {% endfor %}
69
+ </div>
70
+ {% endif %}
71
+ </div>
72
+ {% endfor %}
73
+ </div>
@@ -0,0 +1,15 @@
1
+ # Date input
2
+
3
+ ## Installation
4
+
5
+ See the [main README quick start guide](https://github.com/alphagov/govuk-frontend#quick-start) for how to install this component.
6
+
7
+ ## Guidance and Examples
8
+
9
+ Find out when to use the date input component in your service in the [GOV.UK Design System](https://design-system.service.gov.uk/components/date-input).
10
+
11
+ ## Component options
12
+
13
+ Use options to customise the appearance, content and behaviour of a component when using a macro, for example, changing the text.
14
+
15
+ See [options table](https://design-system.service.gov.uk/components/date-input/#options-date-input-example) for details.
@@ -0,0 +1,2 @@
1
+ @import "../../base";
2
+ @import "./index";
@@ -0,0 +1,26 @@
1
+ @import "../error-message/index";
2
+ @import "../input/index";
3
+ @import "../hint/index";
4
+ @import "../label/index";
5
+
6
+ @include govuk-exports("govuk/component/date-input") {
7
+ .govuk-date-input {
8
+ @include govuk-clearfix;
9
+ // font-size: 0 removes whitespace caused by inline-block
10
+ font-size: 0;
11
+ }
12
+
13
+ .govuk-date-input__item {
14
+ display: inline-block;
15
+ margin-right: govuk-spacing(4);
16
+ margin-bottom: 0;
17
+ }
18
+
19
+ .govuk-date-input__label {
20
+ display: block;
21
+ }
22
+
23
+ .govuk-date-input__input {
24
+ margin-bottom: 0;
25
+ }
26
+ }
@@ -0,0 +1,549 @@
1
+ {
2
+ "component": "date-input",
3
+ "fixtures": [
4
+ {
5
+ "name": "default",
6
+ "options": {
7
+ "id": "dob"
8
+ },
9
+ "html": "<div class=\"govuk-form-group\">\n\n <div class=\"govuk-date-input\" id=\"dob\">\n \n <div class=\"govuk-date-input__item\">\n <div class=\"govuk-form-group\">\n <label class=\"govuk-label govuk-date-input__label\" for=\"dob-day\">\n Day\n </label>\n \n <input class=\"govuk-input govuk-date-input__input govuk-input--width-2\" id=\"dob-day\" name=\"day\" type=\"text\" pattern=\"[0-9]*\" inputmode=\"numeric\">\n </div>\n </div>\n \n <div class=\"govuk-date-input__item\">\n <div class=\"govuk-form-group\">\n <label class=\"govuk-label govuk-date-input__label\" for=\"dob-month\">\n Month\n </label>\n \n <input class=\"govuk-input govuk-date-input__input govuk-input--width-2\" id=\"dob-month\" name=\"month\" type=\"text\" pattern=\"[0-9]*\" inputmode=\"numeric\">\n </div>\n </div>\n \n <div class=\"govuk-date-input__item\">\n <div class=\"govuk-form-group\">\n <label class=\"govuk-label govuk-date-input__label\" for=\"dob-year\">\n Year\n </label>\n \n <input class=\"govuk-input govuk-date-input__input govuk-input--width-4\" id=\"dob-year\" name=\"year\" type=\"text\" pattern=\"[0-9]*\" inputmode=\"numeric\">\n </div>\n </div>\n \n </div>\n\n</div>",
10
+ "hidden": false
11
+ },
12
+ {
13
+ "name": "complete question",
14
+ "options": {
15
+ "id": "dob",
16
+ "namePrefix": "dob",
17
+ "fieldset": {
18
+ "legend": {
19
+ "text": "What is your date of birth?"
20
+ }
21
+ },
22
+ "hint": {
23
+ "text": "For example, 31 3 1980"
24
+ },
25
+ "items": [
26
+ {
27
+ "name": "day",
28
+ "classes": "govuk-input--width-2"
29
+ },
30
+ {
31
+ "name": "month",
32
+ "classes": "govuk-input--width-2"
33
+ },
34
+ {
35
+ "name": "year",
36
+ "classes": "govuk-input--width-4"
37
+ }
38
+ ]
39
+ },
40
+ "html": "<div class=\"govuk-form-group\">\n<fieldset class=\"govuk-fieldset\" role=\"group\" aria-describedby=\"dob-hint\">\n \n <legend class=\"govuk-fieldset__legend\">\n \n What is your date of birth?\n \n </legend>\n \n\n <div id=\"dob-hint\" class=\"govuk-hint\">\n For example, 31 3 1980\n </div>\n\n\n <div class=\"govuk-date-input\" id=\"dob\">\n \n <div class=\"govuk-date-input__item\">\n <div class=\"govuk-form-group\">\n <label class=\"govuk-label govuk-date-input__label\" for=\"dob-day\">\n Day\n </label>\n \n <input class=\"govuk-input govuk-date-input__input govuk-input--width-2\" id=\"dob-day\" name=\"dob-day\" type=\"text\" pattern=\"[0-9]*\" inputmode=\"numeric\">\n </div>\n </div>\n \n <div class=\"govuk-date-input__item\">\n <div class=\"govuk-form-group\">\n <label class=\"govuk-label govuk-date-input__label\" for=\"dob-month\">\n Month\n </label>\n \n <input class=\"govuk-input govuk-date-input__input govuk-input--width-2\" id=\"dob-month\" name=\"dob-month\" type=\"text\" pattern=\"[0-9]*\" inputmode=\"numeric\">\n </div>\n </div>\n \n <div class=\"govuk-date-input__item\">\n <div class=\"govuk-form-group\">\n <label class=\"govuk-label govuk-date-input__label\" for=\"dob-year\">\n Year\n </label>\n \n <input class=\"govuk-input govuk-date-input__input govuk-input--width-4\" id=\"dob-year\" name=\"dob-year\" type=\"text\" pattern=\"[0-9]*\" inputmode=\"numeric\">\n </div>\n </div>\n \n </div>\n \n\n</fieldset>\n\n\n</div>",
41
+ "hidden": false
42
+ },
43
+ {
44
+ "name": "with errors only",
45
+ "options": {
46
+ "id": "dob-errors",
47
+ "fieldset": {
48
+ "legend": {
49
+ "text": "What is your date of birth?"
50
+ }
51
+ },
52
+ "errorMessage": {
53
+ "text": "Error message goes here"
54
+ },
55
+ "items": [
56
+ {
57
+ "name": "day",
58
+ "classes": "govuk-input--width-2 govuk-input--error"
59
+ },
60
+ {
61
+ "name": "month",
62
+ "classes": "govuk-input--width-2 govuk-input--error"
63
+ },
64
+ {
65
+ "name": "year",
66
+ "classes": "govuk-input--width-4 govuk-input--error"
67
+ }
68
+ ]
69
+ },
70
+ "html": "<div class=\"govuk-form-group govuk-form-group--error\">\n<fieldset class=\"govuk-fieldset\" role=\"group\" aria-describedby=\"dob-errors-error\">\n \n <legend class=\"govuk-fieldset__legend\">\n \n What is your date of birth?\n \n </legend>\n \n\n <span id=\"dob-errors-error\" class=\"govuk-error-message\">\n <span class=\"govuk-visually-hidden\">Error:</span> Error message goes here\n </span>\n\n <div class=\"govuk-date-input\" id=\"dob-errors\">\n \n <div class=\"govuk-date-input__item\">\n <div class=\"govuk-form-group\">\n <label class=\"govuk-label govuk-date-input__label\" for=\"dob-errors-day\">\n Day\n </label>\n \n <input class=\"govuk-input govuk-date-input__input govuk-input--width-2 govuk-input--error\" id=\"dob-errors-day\" name=\"day\" type=\"text\" pattern=\"[0-9]*\" inputmode=\"numeric\">\n </div>\n </div>\n \n <div class=\"govuk-date-input__item\">\n <div class=\"govuk-form-group\">\n <label class=\"govuk-label govuk-date-input__label\" for=\"dob-errors-month\">\n Month\n </label>\n \n <input class=\"govuk-input govuk-date-input__input govuk-input--width-2 govuk-input--error\" id=\"dob-errors-month\" name=\"month\" type=\"text\" pattern=\"[0-9]*\" inputmode=\"numeric\">\n </div>\n </div>\n \n <div class=\"govuk-date-input__item\">\n <div class=\"govuk-form-group\">\n <label class=\"govuk-label govuk-date-input__label\" for=\"dob-errors-year\">\n Year\n </label>\n \n <input class=\"govuk-input govuk-date-input__input govuk-input--width-4 govuk-input--error\" id=\"dob-errors-year\" name=\"year\" type=\"text\" pattern=\"[0-9]*\" inputmode=\"numeric\">\n </div>\n </div>\n \n </div>\n \n\n</fieldset>\n\n\n</div>",
71
+ "hidden": false
72
+ },
73
+ {
74
+ "name": "with errors and hint",
75
+ "options": {
76
+ "id": "dob-errors",
77
+ "fieldset": {
78
+ "legend": {
79
+ "text": "What is your date of birth?"
80
+ }
81
+ },
82
+ "hint": {
83
+ "text": "For example, 31 3 1980"
84
+ },
85
+ "errorMessage": {
86
+ "text": "Error message goes here"
87
+ },
88
+ "items": [
89
+ {
90
+ "name": "day",
91
+ "classes": "govuk-input--width-2 govuk-input--error"
92
+ },
93
+ {
94
+ "name": "month",
95
+ "classes": "govuk-input--width-2 govuk-input--error"
96
+ },
97
+ {
98
+ "name": "year",
99
+ "classes": "govuk-input--width-4 govuk-input--error"
100
+ }
101
+ ]
102
+ },
103
+ "html": "<div class=\"govuk-form-group govuk-form-group--error\">\n<fieldset class=\"govuk-fieldset\" role=\"group\" aria-describedby=\"dob-errors-hint dob-errors-error\">\n \n <legend class=\"govuk-fieldset__legend\">\n \n What is your date of birth?\n \n </legend>\n \n\n <div id=\"dob-errors-hint\" class=\"govuk-hint\">\n For example, 31 3 1980\n </div>\n\n\n \n \n <span id=\"dob-errors-error\" class=\"govuk-error-message\">\n <span class=\"govuk-visually-hidden\">Error:</span> Error message goes here\n </span>\n\n <div class=\"govuk-date-input\" id=\"dob-errors\">\n \n <div class=\"govuk-date-input__item\">\n <div class=\"govuk-form-group\">\n <label class=\"govuk-label govuk-date-input__label\" for=\"dob-errors-day\">\n Day\n </label>\n \n <input class=\"govuk-input govuk-date-input__input govuk-input--width-2 govuk-input--error\" id=\"dob-errors-day\" name=\"day\" type=\"text\" pattern=\"[0-9]*\" inputmode=\"numeric\">\n </div>\n </div>\n \n <div class=\"govuk-date-input__item\">\n <div class=\"govuk-form-group\">\n <label class=\"govuk-label govuk-date-input__label\" for=\"dob-errors-month\">\n Month\n </label>\n \n <input class=\"govuk-input govuk-date-input__input govuk-input--width-2 govuk-input--error\" id=\"dob-errors-month\" name=\"month\" type=\"text\" pattern=\"[0-9]*\" inputmode=\"numeric\">\n </div>\n </div>\n \n <div class=\"govuk-date-input__item\">\n <div class=\"govuk-form-group\">\n <label class=\"govuk-label govuk-date-input__label\" for=\"dob-errors-year\">\n Year\n </label>\n \n <input class=\"govuk-input govuk-date-input__input govuk-input--width-4 govuk-input--error\" id=\"dob-errors-year\" name=\"year\" type=\"text\" pattern=\"[0-9]*\" inputmode=\"numeric\">\n </div>\n </div>\n \n </div>\n \n\n</fieldset>\n\n\n</div>",
104
+ "hidden": false
105
+ },
106
+ {
107
+ "name": "with error on day input",
108
+ "options": {
109
+ "id": "dob-day-error",
110
+ "namePrefix": "dob-day-error",
111
+ "fieldset": {
112
+ "legend": {
113
+ "text": "What is your date of birth?"
114
+ }
115
+ },
116
+ "hint": {
117
+ "text": "For example, 31 3 1980"
118
+ },
119
+ "errorMessage": {
120
+ "text": "Error message goes here"
121
+ },
122
+ "items": [
123
+ {
124
+ "name": "day",
125
+ "classes": "govuk-input--width-2 govuk-input--error"
126
+ },
127
+ {
128
+ "name": "month",
129
+ "classes": "govuk-input--width-2"
130
+ },
131
+ {
132
+ "name": "year",
133
+ "classes": "govuk-input--width-4"
134
+ }
135
+ ]
136
+ },
137
+ "html": "<div class=\"govuk-form-group govuk-form-group--error\">\n<fieldset class=\"govuk-fieldset\" role=\"group\" aria-describedby=\"dob-day-error-hint dob-day-error-error\">\n \n <legend class=\"govuk-fieldset__legend\">\n \n What is your date of birth?\n \n </legend>\n \n\n <div id=\"dob-day-error-hint\" class=\"govuk-hint\">\n For example, 31 3 1980\n </div>\n\n\n \n \n <span id=\"dob-day-error-error\" class=\"govuk-error-message\">\n <span class=\"govuk-visually-hidden\">Error:</span> Error message goes here\n </span>\n\n <div class=\"govuk-date-input\" id=\"dob-day-error\">\n \n <div class=\"govuk-date-input__item\">\n <div class=\"govuk-form-group\">\n <label class=\"govuk-label govuk-date-input__label\" for=\"dob-day-error-day\">\n Day\n </label>\n \n <input class=\"govuk-input govuk-date-input__input govuk-input--width-2 govuk-input--error\" id=\"dob-day-error-day\" name=\"dob-day-error-day\" type=\"text\" pattern=\"[0-9]*\" inputmode=\"numeric\">\n </div>\n </div>\n \n <div class=\"govuk-date-input__item\">\n <div class=\"govuk-form-group\">\n <label class=\"govuk-label govuk-date-input__label\" for=\"dob-day-error-month\">\n Month\n </label>\n \n <input class=\"govuk-input govuk-date-input__input govuk-input--width-2\" id=\"dob-day-error-month\" name=\"dob-day-error-month\" type=\"text\" pattern=\"[0-9]*\" inputmode=\"numeric\">\n </div>\n </div>\n \n <div class=\"govuk-date-input__item\">\n <div class=\"govuk-form-group\">\n <label class=\"govuk-label govuk-date-input__label\" for=\"dob-day-error-year\">\n Year\n </label>\n \n <input class=\"govuk-input govuk-date-input__input govuk-input--width-4\" id=\"dob-day-error-year\" name=\"dob-day-error-year\" type=\"text\" pattern=\"[0-9]*\" inputmode=\"numeric\">\n </div>\n </div>\n \n </div>\n \n\n</fieldset>\n\n\n</div>",
138
+ "hidden": false
139
+ },
140
+ {
141
+ "name": "with error on month input",
142
+ "options": {
143
+ "id": "dob-month-error",
144
+ "namePrefix": "dob-month-error",
145
+ "fieldset": {
146
+ "legend": {
147
+ "text": "What is your date of birth?"
148
+ }
149
+ },
150
+ "hint": {
151
+ "text": "For example, 31 3 1980"
152
+ },
153
+ "errorMessage": {
154
+ "text": "Error message goes here"
155
+ },
156
+ "items": [
157
+ {
158
+ "name": "day",
159
+ "classes": "govuk-input--width-2"
160
+ },
161
+ {
162
+ "name": "month",
163
+ "classes": "govuk-input--width-2 govuk-input--error"
164
+ },
165
+ {
166
+ "name": "year",
167
+ "classes": "govuk-input--width-4"
168
+ }
169
+ ]
170
+ },
171
+ "html": "<div class=\"govuk-form-group govuk-form-group--error\">\n<fieldset class=\"govuk-fieldset\" role=\"group\" aria-describedby=\"dob-month-error-hint dob-month-error-error\">\n \n <legend class=\"govuk-fieldset__legend\">\n \n What is your date of birth?\n \n </legend>\n \n\n <div id=\"dob-month-error-hint\" class=\"govuk-hint\">\n For example, 31 3 1980\n </div>\n\n\n \n \n <span id=\"dob-month-error-error\" class=\"govuk-error-message\">\n <span class=\"govuk-visually-hidden\">Error:</span> Error message goes here\n </span>\n\n <div class=\"govuk-date-input\" id=\"dob-month-error\">\n \n <div class=\"govuk-date-input__item\">\n <div class=\"govuk-form-group\">\n <label class=\"govuk-label govuk-date-input__label\" for=\"dob-month-error-day\">\n Day\n </label>\n \n <input class=\"govuk-input govuk-date-input__input govuk-input--width-2\" id=\"dob-month-error-day\" name=\"dob-month-error-day\" type=\"text\" pattern=\"[0-9]*\" inputmode=\"numeric\">\n </div>\n </div>\n \n <div class=\"govuk-date-input__item\">\n <div class=\"govuk-form-group\">\n <label class=\"govuk-label govuk-date-input__label\" for=\"dob-month-error-month\">\n Month\n </label>\n \n <input class=\"govuk-input govuk-date-input__input govuk-input--width-2 govuk-input--error\" id=\"dob-month-error-month\" name=\"dob-month-error-month\" type=\"text\" pattern=\"[0-9]*\" inputmode=\"numeric\">\n </div>\n </div>\n \n <div class=\"govuk-date-input__item\">\n <div class=\"govuk-form-group\">\n <label class=\"govuk-label govuk-date-input__label\" for=\"dob-month-error-year\">\n Year\n </label>\n \n <input class=\"govuk-input govuk-date-input__input govuk-input--width-4\" id=\"dob-month-error-year\" name=\"dob-month-error-year\" type=\"text\" pattern=\"[0-9]*\" inputmode=\"numeric\">\n </div>\n </div>\n \n </div>\n \n\n</fieldset>\n\n\n</div>",
172
+ "hidden": false
173
+ },
174
+ {
175
+ "name": "with error on year input",
176
+ "options": {
177
+ "id": "dob-year-error",
178
+ "namePrefix": "dob-year-error",
179
+ "fieldset": {
180
+ "legend": {
181
+ "text": "What is your date of birth?"
182
+ }
183
+ },
184
+ "hint": {
185
+ "text": "For example, 31 3 1980"
186
+ },
187
+ "errorMessage": {
188
+ "text": "Error message goes here"
189
+ },
190
+ "items": [
191
+ {
192
+ "name": "day",
193
+ "classes": "govuk-input--width-2"
194
+ },
195
+ {
196
+ "name": "month",
197
+ "classes": "govuk-input--width-2"
198
+ },
199
+ {
200
+ "name": "year",
201
+ "classes": "govuk-input--width-4 govuk-input--error"
202
+ }
203
+ ]
204
+ },
205
+ "html": "<div class=\"govuk-form-group govuk-form-group--error\">\n<fieldset class=\"govuk-fieldset\" role=\"group\" aria-describedby=\"dob-year-error-hint dob-year-error-error\">\n \n <legend class=\"govuk-fieldset__legend\">\n \n What is your date of birth?\n \n </legend>\n \n\n <div id=\"dob-year-error-hint\" class=\"govuk-hint\">\n For example, 31 3 1980\n </div>\n\n\n \n \n <span id=\"dob-year-error-error\" class=\"govuk-error-message\">\n <span class=\"govuk-visually-hidden\">Error:</span> Error message goes here\n </span>\n\n <div class=\"govuk-date-input\" id=\"dob-year-error\">\n \n <div class=\"govuk-date-input__item\">\n <div class=\"govuk-form-group\">\n <label class=\"govuk-label govuk-date-input__label\" for=\"dob-year-error-day\">\n Day\n </label>\n \n <input class=\"govuk-input govuk-date-input__input govuk-input--width-2\" id=\"dob-year-error-day\" name=\"dob-year-error-day\" type=\"text\" pattern=\"[0-9]*\" inputmode=\"numeric\">\n </div>\n </div>\n \n <div class=\"govuk-date-input__item\">\n <div class=\"govuk-form-group\">\n <label class=\"govuk-label govuk-date-input__label\" for=\"dob-year-error-month\">\n Month\n </label>\n \n <input class=\"govuk-input govuk-date-input__input govuk-input--width-2\" id=\"dob-year-error-month\" name=\"dob-year-error-month\" type=\"text\" pattern=\"[0-9]*\" inputmode=\"numeric\">\n </div>\n </div>\n \n <div class=\"govuk-date-input__item\">\n <div class=\"govuk-form-group\">\n <label class=\"govuk-label govuk-date-input__label\" for=\"dob-year-error-year\">\n Year\n </label>\n \n <input class=\"govuk-input govuk-date-input__input govuk-input--width-4 govuk-input--error\" id=\"dob-year-error-year\" name=\"dob-year-error-year\" type=\"text\" pattern=\"[0-9]*\" inputmode=\"numeric\">\n </div>\n </div>\n \n </div>\n \n\n</fieldset>\n\n\n</div>",
206
+ "hidden": false
207
+ },
208
+ {
209
+ "name": "with default items",
210
+ "options": {
211
+ "id": "dob",
212
+ "namePrefix": "dob",
213
+ "fieldset": {
214
+ "legend": {
215
+ "text": "What is your date of birth?"
216
+ }
217
+ },
218
+ "hint": {
219
+ "text": "For example, 31 3 1980"
220
+ }
221
+ },
222
+ "html": "<div class=\"govuk-form-group\">\n<fieldset class=\"govuk-fieldset\" role=\"group\" aria-describedby=\"dob-hint\">\n \n <legend class=\"govuk-fieldset__legend\">\n \n What is your date of birth?\n \n </legend>\n \n\n <div id=\"dob-hint\" class=\"govuk-hint\">\n For example, 31 3 1980\n </div>\n\n\n <div class=\"govuk-date-input\" id=\"dob\">\n \n <div class=\"govuk-date-input__item\">\n <div class=\"govuk-form-group\">\n <label class=\"govuk-label govuk-date-input__label\" for=\"dob-day\">\n Day\n </label>\n \n <input class=\"govuk-input govuk-date-input__input govuk-input--width-2\" id=\"dob-day\" name=\"dob-day\" type=\"text\" pattern=\"[0-9]*\" inputmode=\"numeric\">\n </div>\n </div>\n \n <div class=\"govuk-date-input__item\">\n <div class=\"govuk-form-group\">\n <label class=\"govuk-label govuk-date-input__label\" for=\"dob-month\">\n Month\n </label>\n \n <input class=\"govuk-input govuk-date-input__input govuk-input--width-2\" id=\"dob-month\" name=\"dob-month\" type=\"text\" pattern=\"[0-9]*\" inputmode=\"numeric\">\n </div>\n </div>\n \n <div class=\"govuk-date-input__item\">\n <div class=\"govuk-form-group\">\n <label class=\"govuk-label govuk-date-input__label\" for=\"dob-year\">\n Year\n </label>\n \n <input class=\"govuk-input govuk-date-input__input govuk-input--width-4\" id=\"dob-year\" name=\"dob-year\" type=\"text\" pattern=\"[0-9]*\" inputmode=\"numeric\">\n </div>\n </div>\n \n </div>\n \n\n</fieldset>\n\n\n</div>",
223
+ "hidden": false
224
+ },
225
+ {
226
+ "name": "with optional form-group classes",
227
+ "options": {
228
+ "id": "dob",
229
+ "namePrefix": "dob",
230
+ "fieldset": {
231
+ "legend": {
232
+ "text": "What is your date of birth?"
233
+ }
234
+ },
235
+ "hint": {
236
+ "text": "For example, 31 3 1980"
237
+ },
238
+ "formGroup": {
239
+ "classes": "extra-class"
240
+ }
241
+ },
242
+ "html": "<div class=\"govuk-form-group extra-class\">\n<fieldset class=\"govuk-fieldset\" role=\"group\" aria-describedby=\"dob-hint\">\n \n <legend class=\"govuk-fieldset__legend\">\n \n What is your date of birth?\n \n </legend>\n \n\n <div id=\"dob-hint\" class=\"govuk-hint\">\n For example, 31 3 1980\n </div>\n\n\n <div class=\"govuk-date-input\" id=\"dob\">\n \n <div class=\"govuk-date-input__item\">\n <div class=\"govuk-form-group\">\n <label class=\"govuk-label govuk-date-input__label\" for=\"dob-day\">\n Day\n </label>\n \n <input class=\"govuk-input govuk-date-input__input govuk-input--width-2\" id=\"dob-day\" name=\"dob-day\" type=\"text\" pattern=\"[0-9]*\" inputmode=\"numeric\">\n </div>\n </div>\n \n <div class=\"govuk-date-input__item\">\n <div class=\"govuk-form-group\">\n <label class=\"govuk-label govuk-date-input__label\" for=\"dob-month\">\n Month\n </label>\n \n <input class=\"govuk-input govuk-date-input__input govuk-input--width-2\" id=\"dob-month\" name=\"dob-month\" type=\"text\" pattern=\"[0-9]*\" inputmode=\"numeric\">\n </div>\n </div>\n \n <div class=\"govuk-date-input__item\">\n <div class=\"govuk-form-group\">\n <label class=\"govuk-label govuk-date-input__label\" for=\"dob-year\">\n Year\n </label>\n \n <input class=\"govuk-input govuk-date-input__input govuk-input--width-4\" id=\"dob-year\" name=\"dob-year\" type=\"text\" pattern=\"[0-9]*\" inputmode=\"numeric\">\n </div>\n </div>\n \n </div>\n \n\n</fieldset>\n\n\n</div>",
243
+ "hidden": false
244
+ },
245
+ {
246
+ "name": "with autocomplete values",
247
+ "options": {
248
+ "id": "dob-with-autocomplete-attribute",
249
+ "namePrefix": "dob-with-autocomplete",
250
+ "fieldset": {
251
+ "legend": {
252
+ "text": "What is your date of birth?"
253
+ }
254
+ },
255
+ "hint": {
256
+ "text": "For example, 31 3 1980"
257
+ },
258
+ "items": [
259
+ {
260
+ "name": "day",
261
+ "classes": "govuk-input--width-2",
262
+ "autocomplete": "bday-day"
263
+ },
264
+ {
265
+ "name": "month",
266
+ "classes": "govuk-input--width-2",
267
+ "autocomplete": "bday-month"
268
+ },
269
+ {
270
+ "name": "year",
271
+ "classes": "govuk-input--width-4",
272
+ "autocomplete": "bday-year"
273
+ }
274
+ ]
275
+ },
276
+ "html": "<div class=\"govuk-form-group\">\n<fieldset class=\"govuk-fieldset\" role=\"group\" aria-describedby=\"dob-with-autocomplete-attribute-hint\">\n \n <legend class=\"govuk-fieldset__legend\">\n \n What is your date of birth?\n \n </legend>\n \n\n <div id=\"dob-with-autocomplete-attribute-hint\" class=\"govuk-hint\">\n For example, 31 3 1980\n </div>\n\n\n <div class=\"govuk-date-input\" id=\"dob-with-autocomplete-attribute\">\n \n <div class=\"govuk-date-input__item\">\n <div class=\"govuk-form-group\">\n <label class=\"govuk-label govuk-date-input__label\" for=\"dob-with-autocomplete-attribute-day\">\n Day\n </label>\n \n <input class=\"govuk-input govuk-date-input__input govuk-input--width-2\" id=\"dob-with-autocomplete-attribute-day\" name=\"dob-with-autocomplete-day\" type=\"text\" autocomplete=\"bday-day\" pattern=\"[0-9]*\" inputmode=\"numeric\">\n </div>\n </div>\n \n <div class=\"govuk-date-input__item\">\n <div class=\"govuk-form-group\">\n <label class=\"govuk-label govuk-date-input__label\" for=\"dob-with-autocomplete-attribute-month\">\n Month\n </label>\n \n <input class=\"govuk-input govuk-date-input__input govuk-input--width-2\" id=\"dob-with-autocomplete-attribute-month\" name=\"dob-with-autocomplete-month\" type=\"text\" autocomplete=\"bday-month\" pattern=\"[0-9]*\" inputmode=\"numeric\">\n </div>\n </div>\n \n <div class=\"govuk-date-input__item\">\n <div class=\"govuk-form-group\">\n <label class=\"govuk-label govuk-date-input__label\" for=\"dob-with-autocomplete-attribute-year\">\n Year\n </label>\n \n <input class=\"govuk-input govuk-date-input__input govuk-input--width-4\" id=\"dob-with-autocomplete-attribute-year\" name=\"dob-with-autocomplete-year\" type=\"text\" autocomplete=\"bday-year\" pattern=\"[0-9]*\" inputmode=\"numeric\">\n </div>\n </div>\n \n </div>\n \n\n</fieldset>\n\n\n</div>",
277
+ "hidden": false
278
+ },
279
+ {
280
+ "name": "with input attributes",
281
+ "options": {
282
+ "id": "dob-with-input-attributes",
283
+ "namePrefix": "dob-with-input-attributes",
284
+ "fieldset": {
285
+ "legend": {
286
+ "text": "What is your date of birth?"
287
+ }
288
+ },
289
+ "hint": {
290
+ "text": "For example, 31 3 1980"
291
+ },
292
+ "items": [
293
+ {
294
+ "name": "day",
295
+ "classes": "govuk-input--width-2",
296
+ "attributes": {
297
+ "data-example-day": "day"
298
+ }
299
+ },
300
+ {
301
+ "name": "month",
302
+ "classes": "govuk-input--width-2",
303
+ "attributes": {
304
+ "data-example-month": "month"
305
+ }
306
+ },
307
+ {
308
+ "name": "year",
309
+ "classes": "govuk-input--width-4",
310
+ "attributes": {
311
+ "data-example-year": "year"
312
+ }
313
+ }
314
+ ]
315
+ },
316
+ "html": "<div class=\"govuk-form-group\">\n<fieldset class=\"govuk-fieldset\" role=\"group\" aria-describedby=\"dob-with-input-attributes-hint\">\n \n <legend class=\"govuk-fieldset__legend\">\n \n What is your date of birth?\n \n </legend>\n \n\n <div id=\"dob-with-input-attributes-hint\" class=\"govuk-hint\">\n For example, 31 3 1980\n </div>\n\n\n <div class=\"govuk-date-input\" id=\"dob-with-input-attributes\">\n \n <div class=\"govuk-date-input__item\">\n <div class=\"govuk-form-group\">\n <label class=\"govuk-label govuk-date-input__label\" for=\"dob-with-input-attributes-day\">\n Day\n </label>\n \n <input class=\"govuk-input govuk-date-input__input govuk-input--width-2\" id=\"dob-with-input-attributes-day\" name=\"dob-with-input-attributes-day\" type=\"text\" pattern=\"[0-9]*\" inputmode=\"numeric\" data-example-day=\"day\">\n </div>\n </div>\n \n <div class=\"govuk-date-input__item\">\n <div class=\"govuk-form-group\">\n <label class=\"govuk-label govuk-date-input__label\" for=\"dob-with-input-attributes-month\">\n Month\n </label>\n \n <input class=\"govuk-input govuk-date-input__input govuk-input--width-2\" id=\"dob-with-input-attributes-month\" name=\"dob-with-input-attributes-month\" type=\"text\" pattern=\"[0-9]*\" inputmode=\"numeric\" data-example-month=\"month\">\n </div>\n </div>\n \n <div class=\"govuk-date-input__item\">\n <div class=\"govuk-form-group\">\n <label class=\"govuk-label govuk-date-input__label\" for=\"dob-with-input-attributes-year\">\n Year\n </label>\n \n <input class=\"govuk-input govuk-date-input__input govuk-input--width-4\" id=\"dob-with-input-attributes-year\" name=\"dob-with-input-attributes-year\" type=\"text\" pattern=\"[0-9]*\" inputmode=\"numeric\" data-example-year=\"year\">\n </div>\n </div>\n \n </div>\n \n\n</fieldset>\n\n\n</div>",
317
+ "hidden": false
318
+ },
319
+ {
320
+ "name": "classes",
321
+ "options": {
322
+ "id": "with-classes",
323
+ "classes": "app-date-input--custom-modifier"
324
+ },
325
+ "html": "<div class=\"govuk-form-group\">\n\n <div class=\"govuk-date-input app-date-input--custom-modifier\" id=\"with-classes\">\n \n <div class=\"govuk-date-input__item\">\n <div class=\"govuk-form-group\">\n <label class=\"govuk-label govuk-date-input__label\" for=\"with-classes-day\">\n Day\n </label>\n \n <input class=\"govuk-input govuk-date-input__input govuk-input--width-2\" id=\"with-classes-day\" name=\"day\" type=\"text\" pattern=\"[0-9]*\" inputmode=\"numeric\">\n </div>\n </div>\n \n <div class=\"govuk-date-input__item\">\n <div class=\"govuk-form-group\">\n <label class=\"govuk-label govuk-date-input__label\" for=\"with-classes-month\">\n Month\n </label>\n \n <input class=\"govuk-input govuk-date-input__input govuk-input--width-2\" id=\"with-classes-month\" name=\"month\" type=\"text\" pattern=\"[0-9]*\" inputmode=\"numeric\">\n </div>\n </div>\n \n <div class=\"govuk-date-input__item\">\n <div class=\"govuk-form-group\">\n <label class=\"govuk-label govuk-date-input__label\" for=\"with-classes-year\">\n Year\n </label>\n \n <input class=\"govuk-input govuk-date-input__input govuk-input--width-4\" id=\"with-classes-year\" name=\"year\" type=\"text\" pattern=\"[0-9]*\" inputmode=\"numeric\">\n </div>\n </div>\n \n </div>\n\n</div>",
326
+ "hidden": true
327
+ },
328
+ {
329
+ "name": "attributes",
330
+ "options": {
331
+ "id": "with-attributes",
332
+ "attributes": {
333
+ "data-attribute": "my data value"
334
+ }
335
+ },
336
+ "html": "<div class=\"govuk-form-group\">\n\n <div class=\"govuk-date-input\" data-attribute=\"my data value\" id=\"with-attributes\">\n \n <div class=\"govuk-date-input__item\">\n <div class=\"govuk-form-group\">\n <label class=\"govuk-label govuk-date-input__label\" for=\"with-attributes-day\">\n Day\n </label>\n \n <input class=\"govuk-input govuk-date-input__input govuk-input--width-2\" id=\"with-attributes-day\" name=\"day\" type=\"text\" pattern=\"[0-9]*\" inputmode=\"numeric\">\n </div>\n </div>\n \n <div class=\"govuk-date-input__item\">\n <div class=\"govuk-form-group\">\n <label class=\"govuk-label govuk-date-input__label\" for=\"with-attributes-month\">\n Month\n </label>\n \n <input class=\"govuk-input govuk-date-input__input govuk-input--width-2\" id=\"with-attributes-month\" name=\"month\" type=\"text\" pattern=\"[0-9]*\" inputmode=\"numeric\">\n </div>\n </div>\n \n <div class=\"govuk-date-input__item\">\n <div class=\"govuk-form-group\">\n <label class=\"govuk-label govuk-date-input__label\" for=\"with-attributes-year\">\n Year\n </label>\n \n <input class=\"govuk-input govuk-date-input__input govuk-input--width-4\" id=\"with-attributes-year\" name=\"year\" type=\"text\" pattern=\"[0-9]*\" inputmode=\"numeric\">\n </div>\n </div>\n \n </div>\n\n</div>",
337
+ "hidden": true
338
+ },
339
+ {
340
+ "name": "with empty items",
341
+ "options": {
342
+ "id": "with-empty-items",
343
+ "items": []
344
+ },
345
+ "html": "<div class=\"govuk-form-group\">\n\n <div class=\"govuk-date-input\" id=\"with-empty-items\">\n \n <div class=\"govuk-date-input__item\">\n <div class=\"govuk-form-group\">\n <label class=\"govuk-label govuk-date-input__label\" for=\"with-empty-items-day\">\n Day\n </label>\n \n <input class=\"govuk-input govuk-date-input__input govuk-input--width-2\" id=\"with-empty-items-day\" name=\"day\" type=\"text\" pattern=\"[0-9]*\" inputmode=\"numeric\">\n </div>\n </div>\n \n <div class=\"govuk-date-input__item\">\n <div class=\"govuk-form-group\">\n <label class=\"govuk-label govuk-date-input__label\" for=\"with-empty-items-month\">\n Month\n </label>\n \n <input class=\"govuk-input govuk-date-input__input govuk-input--width-2\" id=\"with-empty-items-month\" name=\"month\" type=\"text\" pattern=\"[0-9]*\" inputmode=\"numeric\">\n </div>\n </div>\n \n <div class=\"govuk-date-input__item\">\n <div class=\"govuk-form-group\">\n <label class=\"govuk-label govuk-date-input__label\" for=\"with-empty-items-year\">\n Year\n </label>\n \n <input class=\"govuk-input govuk-date-input__input govuk-input--width-4\" id=\"with-empty-items-year\" name=\"year\" type=\"text\" pattern=\"[0-9]*\" inputmode=\"numeric\">\n </div>\n </div>\n \n </div>\n\n</div>",
346
+ "hidden": true
347
+ },
348
+ {
349
+ "name": "custom pattern",
350
+ "options": {
351
+ "id": "with-custom-pattern",
352
+ "items": [
353
+ {
354
+ "name": "day",
355
+ "pattern": "[0-8]*"
356
+ }
357
+ ]
358
+ },
359
+ "html": "<div class=\"govuk-form-group\">\n\n <div class=\"govuk-date-input\" id=\"with-custom-pattern\">\n \n <div class=\"govuk-date-input__item\">\n <div class=\"govuk-form-group\">\n <label class=\"govuk-label govuk-date-input__label\" for=\"with-custom-pattern-day\">\n Day\n </label>\n \n <input class=\"govuk-input govuk-date-input__input \" id=\"with-custom-pattern-day\" name=\"day\" type=\"text\" pattern=\"[0-8]*\" inputmode=\"numeric\">\n </div>\n </div>\n \n </div>\n\n</div>",
360
+ "hidden": true
361
+ },
362
+ {
363
+ "name": "custom inputmode",
364
+ "options": {
365
+ "id": "with-custom-inputmode",
366
+ "items": [
367
+ {
368
+ "name": "day",
369
+ "pattern": "[0-9X]*",
370
+ "inputmode": "text"
371
+ }
372
+ ]
373
+ },
374
+ "html": "<div class=\"govuk-form-group\">\n\n <div class=\"govuk-date-input\" id=\"with-custom-inputmode\">\n \n <div class=\"govuk-date-input__item\">\n <div class=\"govuk-form-group\">\n <label class=\"govuk-label govuk-date-input__label\" for=\"with-custom-inputmode-day\">\n Day\n </label>\n \n <input class=\"govuk-input govuk-date-input__input \" id=\"with-custom-inputmode-day\" name=\"day\" type=\"text\" pattern=\"[0-9X]*\" inputmode=\"text\">\n </div>\n </div>\n \n </div>\n\n</div>",
375
+ "hidden": true
376
+ },
377
+ {
378
+ "name": "with nested name",
379
+ "options": {
380
+ "id": "with-nested-name",
381
+ "items": [
382
+ {
383
+ "name": "day[dd]"
384
+ },
385
+ {
386
+ "name": "month[mm]"
387
+ },
388
+ {
389
+ "name": "year[yyyy]"
390
+ }
391
+ ]
392
+ },
393
+ "html": "<div class=\"govuk-form-group\">\n\n <div class=\"govuk-date-input\" id=\"with-nested-name\">\n \n <div class=\"govuk-date-input__item\">\n <div class=\"govuk-form-group\">\n <label class=\"govuk-label govuk-date-input__label\" for=\"with-nested-name-day[dd]\">\n Day[dd]\n </label>\n \n <input class=\"govuk-input govuk-date-input__input \" id=\"with-nested-name-day[dd]\" name=\"day[dd]\" type=\"text\" pattern=\"[0-9]*\" inputmode=\"numeric\">\n </div>\n </div>\n \n <div class=\"govuk-date-input__item\">\n <div class=\"govuk-form-group\">\n <label class=\"govuk-label govuk-date-input__label\" for=\"with-nested-name-month[mm]\">\n Month[mm]\n </label>\n \n <input class=\"govuk-input govuk-date-input__input \" id=\"with-nested-name-month[mm]\" name=\"month[mm]\" type=\"text\" pattern=\"[0-9]*\" inputmode=\"numeric\">\n </div>\n </div>\n \n <div class=\"govuk-date-input__item\">\n <div class=\"govuk-form-group\">\n <label class=\"govuk-label govuk-date-input__label\" for=\"with-nested-name-year[yyyy]\">\n Year[yyyy]\n </label>\n \n <input class=\"govuk-input govuk-date-input__input \" id=\"with-nested-name-year[yyyy]\" name=\"year[yyyy]\" type=\"text\" pattern=\"[0-9]*\" inputmode=\"numeric\">\n </div>\n </div>\n \n </div>\n\n</div>",
394
+ "hidden": true
395
+ },
396
+ {
397
+ "name": "with id on items",
398
+ "options": {
399
+ "id": "with-item-id",
400
+ "items": [
401
+ {
402
+ "id": "day",
403
+ "name": "day"
404
+ },
405
+ {
406
+ "id": "month",
407
+ "name": "month"
408
+ },
409
+ {
410
+ "id": "year",
411
+ "name": "year"
412
+ }
413
+ ]
414
+ },
415
+ "html": "<div class=\"govuk-form-group\">\n\n <div class=\"govuk-date-input\" id=\"with-item-id\">\n \n <div class=\"govuk-date-input__item\">\n <div class=\"govuk-form-group\">\n <label class=\"govuk-label govuk-date-input__label\" for=\"day\">\n Day\n </label>\n \n <input class=\"govuk-input govuk-date-input__input \" id=\"day\" name=\"day\" type=\"text\" pattern=\"[0-9]*\" inputmode=\"numeric\">\n </div>\n </div>\n \n <div class=\"govuk-date-input__item\">\n <div class=\"govuk-form-group\">\n <label class=\"govuk-label govuk-date-input__label\" for=\"month\">\n Month\n </label>\n \n <input class=\"govuk-input govuk-date-input__input \" id=\"month\" name=\"month\" type=\"text\" pattern=\"[0-9]*\" inputmode=\"numeric\">\n </div>\n </div>\n \n <div class=\"govuk-date-input__item\">\n <div class=\"govuk-form-group\">\n <label class=\"govuk-label govuk-date-input__label\" for=\"year\">\n Year\n </label>\n \n <input class=\"govuk-input govuk-date-input__input \" id=\"year\" name=\"year\" type=\"text\" pattern=\"[0-9]*\" inputmode=\"numeric\">\n </div>\n </div>\n \n </div>\n\n</div>",
416
+ "hidden": true
417
+ },
418
+ {
419
+ "name": "suffixed id",
420
+ "options": {
421
+ "id": "my-date-input",
422
+ "items": [
423
+ {
424
+ "name": "day"
425
+ },
426
+ {
427
+ "name": "month"
428
+ },
429
+ {
430
+ "name": "year"
431
+ }
432
+ ]
433
+ },
434
+ "html": "<div class=\"govuk-form-group\">\n\n <div class=\"govuk-date-input\" id=\"my-date-input\">\n \n <div class=\"govuk-date-input__item\">\n <div class=\"govuk-form-group\">\n <label class=\"govuk-label govuk-date-input__label\" for=\"my-date-input-day\">\n Day\n </label>\n \n <input class=\"govuk-input govuk-date-input__input \" id=\"my-date-input-day\" name=\"day\" type=\"text\" pattern=\"[0-9]*\" inputmode=\"numeric\">\n </div>\n </div>\n \n <div class=\"govuk-date-input__item\">\n <div class=\"govuk-form-group\">\n <label class=\"govuk-label govuk-date-input__label\" for=\"my-date-input-month\">\n Month\n </label>\n \n <input class=\"govuk-input govuk-date-input__input \" id=\"my-date-input-month\" name=\"month\" type=\"text\" pattern=\"[0-9]*\" inputmode=\"numeric\">\n </div>\n </div>\n \n <div class=\"govuk-date-input__item\">\n <div class=\"govuk-form-group\">\n <label class=\"govuk-label govuk-date-input__label\" for=\"my-date-input-year\">\n Year\n </label>\n \n <input class=\"govuk-input govuk-date-input__input \" id=\"my-date-input-year\" name=\"year\" type=\"text\" pattern=\"[0-9]*\" inputmode=\"numeric\">\n </div>\n </div>\n \n </div>\n\n</div>",
435
+ "hidden": true
436
+ },
437
+ {
438
+ "name": "with values",
439
+ "options": {
440
+ "id": "with-values",
441
+ "items": [
442
+ {
443
+ "id": "day",
444
+ "name": "day"
445
+ },
446
+ {
447
+ "id": "month",
448
+ "name": "month"
449
+ },
450
+ {
451
+ "id": "year",
452
+ "name": "year",
453
+ "value": 2018
454
+ }
455
+ ]
456
+ },
457
+ "html": "<div class=\"govuk-form-group\">\n\n <div class=\"govuk-date-input\" id=\"with-values\">\n \n <div class=\"govuk-date-input__item\">\n <div class=\"govuk-form-group\">\n <label class=\"govuk-label govuk-date-input__label\" for=\"day\">\n Day\n </label>\n \n <input class=\"govuk-input govuk-date-input__input \" id=\"day\" name=\"day\" type=\"text\" pattern=\"[0-9]*\" inputmode=\"numeric\">\n </div>\n </div>\n \n <div class=\"govuk-date-input__item\">\n <div class=\"govuk-form-group\">\n <label class=\"govuk-label govuk-date-input__label\" for=\"month\">\n Month\n </label>\n \n <input class=\"govuk-input govuk-date-input__input \" id=\"month\" name=\"month\" type=\"text\" pattern=\"[0-9]*\" inputmode=\"numeric\">\n </div>\n </div>\n \n <div class=\"govuk-date-input__item\">\n <div class=\"govuk-form-group\">\n <label class=\"govuk-label govuk-date-input__label\" for=\"year\">\n Year\n </label>\n \n <input class=\"govuk-input govuk-date-input__input \" id=\"year\" name=\"year\" type=\"text\" value=\"2018\" pattern=\"[0-9]*\" inputmode=\"numeric\">\n </div>\n </div>\n \n </div>\n\n</div>",
458
+ "hidden": true
459
+ },
460
+ {
461
+ "name": "with hint and describedBy",
462
+ "options": {
463
+ "id": "dob-errors",
464
+ "fieldset": {
465
+ "describedBy": "some-id",
466
+ "legend": {
467
+ "text": "What is your date of birth?"
468
+ }
469
+ },
470
+ "hint": {
471
+ "text": "For example, 31 3 1980"
472
+ }
473
+ },
474
+ "html": "<div class=\"govuk-form-group\">\n<fieldset class=\"govuk-fieldset\" role=\"group\" aria-describedby=\"some-id dob-errors-hint\">\n \n <legend class=\"govuk-fieldset__legend\">\n \n What is your date of birth?\n \n </legend>\n \n\n <div id=\"dob-errors-hint\" class=\"govuk-hint\">\n For example, 31 3 1980\n </div>\n\n\n <div class=\"govuk-date-input\" id=\"dob-errors\">\n \n <div class=\"govuk-date-input__item\">\n <div class=\"govuk-form-group\">\n <label class=\"govuk-label govuk-date-input__label\" for=\"dob-errors-day\">\n Day\n </label>\n \n <input class=\"govuk-input govuk-date-input__input govuk-input--width-2\" id=\"dob-errors-day\" name=\"day\" type=\"text\" pattern=\"[0-9]*\" inputmode=\"numeric\">\n </div>\n </div>\n \n <div class=\"govuk-date-input__item\">\n <div class=\"govuk-form-group\">\n <label class=\"govuk-label govuk-date-input__label\" for=\"dob-errors-month\">\n Month\n </label>\n \n <input class=\"govuk-input govuk-date-input__input govuk-input--width-2\" id=\"dob-errors-month\" name=\"month\" type=\"text\" pattern=\"[0-9]*\" inputmode=\"numeric\">\n </div>\n </div>\n \n <div class=\"govuk-date-input__item\">\n <div class=\"govuk-form-group\">\n <label class=\"govuk-label govuk-date-input__label\" for=\"dob-errors-year\">\n Year\n </label>\n \n <input class=\"govuk-input govuk-date-input__input govuk-input--width-4\" id=\"dob-errors-year\" name=\"year\" type=\"text\" pattern=\"[0-9]*\" inputmode=\"numeric\">\n </div>\n </div>\n \n </div>\n \n\n</fieldset>\n\n\n</div>",
475
+ "hidden": true
476
+ },
477
+ {
478
+ "name": "with error and describedBy",
479
+ "options": {
480
+ "id": "dob-errors",
481
+ "fieldset": {
482
+ "describedBy": "some-id",
483
+ "legend": {
484
+ "text": "What is your date of birth?"
485
+ }
486
+ },
487
+ "errorMessage": {
488
+ "text": "Error message goes here"
489
+ }
490
+ },
491
+ "html": "<div class=\"govuk-form-group govuk-form-group--error\">\n<fieldset class=\"govuk-fieldset\" role=\"group\" aria-describedby=\"some-id dob-errors-error\">\n \n <legend class=\"govuk-fieldset__legend\">\n \n What is your date of birth?\n \n </legend>\n \n\n <span id=\"dob-errors-error\" class=\"govuk-error-message\">\n <span class=\"govuk-visually-hidden\">Error:</span> Error message goes here\n </span>\n\n <div class=\"govuk-date-input\" id=\"dob-errors\">\n \n <div class=\"govuk-date-input__item\">\n <div class=\"govuk-form-group\">\n <label class=\"govuk-label govuk-date-input__label\" for=\"dob-errors-day\">\n Day\n </label>\n \n <input class=\"govuk-input govuk-date-input__input govuk-input--width-2\" id=\"dob-errors-day\" name=\"day\" type=\"text\" pattern=\"[0-9]*\" inputmode=\"numeric\">\n </div>\n </div>\n \n <div class=\"govuk-date-input__item\">\n <div class=\"govuk-form-group\">\n <label class=\"govuk-label govuk-date-input__label\" for=\"dob-errors-month\">\n Month\n </label>\n \n <input class=\"govuk-input govuk-date-input__input govuk-input--width-2\" id=\"dob-errors-month\" name=\"month\" type=\"text\" pattern=\"[0-9]*\" inputmode=\"numeric\">\n </div>\n </div>\n \n <div class=\"govuk-date-input__item\">\n <div class=\"govuk-form-group\">\n <label class=\"govuk-label govuk-date-input__label\" for=\"dob-errors-year\">\n Year\n </label>\n \n <input class=\"govuk-input govuk-date-input__input govuk-input--width-4\" id=\"dob-errors-year\" name=\"year\" type=\"text\" pattern=\"[0-9]*\" inputmode=\"numeric\">\n </div>\n </div>\n \n </div>\n \n\n</fieldset>\n\n\n</div>",
492
+ "hidden": true
493
+ },
494
+ {
495
+ "name": "fieldset html",
496
+ "options": {
497
+ "id": "with-fieldset-html",
498
+ "fieldset": {
499
+ "legend": {
500
+ "html": "What is your <b>date of birth</b>?"
501
+ }
502
+ }
503
+ },
504
+ "html": "<div class=\"govuk-form-group\">\n<fieldset class=\"govuk-fieldset\" role=\"group\">\n \n <legend class=\"govuk-fieldset__legend\">\n \n What is your <b>date of birth</b>?\n \n </legend>\n \n\n <div class=\"govuk-date-input\" id=\"with-fieldset-html\">\n \n <div class=\"govuk-date-input__item\">\n <div class=\"govuk-form-group\">\n <label class=\"govuk-label govuk-date-input__label\" for=\"with-fieldset-html-day\">\n Day\n </label>\n \n <input class=\"govuk-input govuk-date-input__input govuk-input--width-2\" id=\"with-fieldset-html-day\" name=\"day\" type=\"text\" pattern=\"[0-9]*\" inputmode=\"numeric\">\n </div>\n </div>\n \n <div class=\"govuk-date-input__item\">\n <div class=\"govuk-form-group\">\n <label class=\"govuk-label govuk-date-input__label\" for=\"with-fieldset-html-month\">\n Month\n </label>\n \n <input class=\"govuk-input govuk-date-input__input govuk-input--width-2\" id=\"with-fieldset-html-month\" name=\"month\" type=\"text\" pattern=\"[0-9]*\" inputmode=\"numeric\">\n </div>\n </div>\n \n <div class=\"govuk-date-input__item\">\n <div class=\"govuk-form-group\">\n <label class=\"govuk-label govuk-date-input__label\" for=\"with-fieldset-html-year\">\n Year\n </label>\n \n <input class=\"govuk-input govuk-date-input__input govuk-input--width-4\" id=\"with-fieldset-html-year\" name=\"year\" type=\"text\" pattern=\"[0-9]*\" inputmode=\"numeric\">\n </div>\n </div>\n \n </div>\n \n\n</fieldset>\n\n\n</div>",
505
+ "hidden": true
506
+ },
507
+ {
508
+ "name": "items with classes",
509
+ "options": {
510
+ "id": "with-item-classes",
511
+ "items": [
512
+ {
513
+ "name": "day",
514
+ "classes": "app-date-input__day"
515
+ },
516
+ {
517
+ "name": "month",
518
+ "classes": "app-date-input__month"
519
+ },
520
+ {
521
+ "name": "year",
522
+ "classes": "app-date-input__year"
523
+ }
524
+ ]
525
+ },
526
+ "html": "<div class=\"govuk-form-group\">\n\n <div class=\"govuk-date-input\" id=\"with-item-classes\">\n \n <div class=\"govuk-date-input__item\">\n <div class=\"govuk-form-group\">\n <label class=\"govuk-label govuk-date-input__label\" for=\"with-item-classes-day\">\n Day\n </label>\n \n <input class=\"govuk-input govuk-date-input__input app-date-input__day\" id=\"with-item-classes-day\" name=\"day\" type=\"text\" pattern=\"[0-9]*\" inputmode=\"numeric\">\n </div>\n </div>\n \n <div class=\"govuk-date-input__item\">\n <div class=\"govuk-form-group\">\n <label class=\"govuk-label govuk-date-input__label\" for=\"with-item-classes-month\">\n Month\n </label>\n \n <input class=\"govuk-input govuk-date-input__input app-date-input__month\" id=\"with-item-classes-month\" name=\"month\" type=\"text\" pattern=\"[0-9]*\" inputmode=\"numeric\">\n </div>\n </div>\n \n <div class=\"govuk-date-input__item\">\n <div class=\"govuk-form-group\">\n <label class=\"govuk-label govuk-date-input__label\" for=\"with-item-classes-year\">\n Year\n </label>\n \n <input class=\"govuk-input govuk-date-input__input app-date-input__year\" id=\"with-item-classes-year\" name=\"year\" type=\"text\" pattern=\"[0-9]*\" inputmode=\"numeric\">\n </div>\n </div>\n \n </div>\n\n</div>",
527
+ "hidden": true
528
+ },
529
+ {
530
+ "name": "items without classes",
531
+ "options": {
532
+ "id": "without-item-classes",
533
+ "items": [
534
+ {
535
+ "name": "day"
536
+ },
537
+ {
538
+ "name": "month"
539
+ },
540
+ {
541
+ "name": "year"
542
+ }
543
+ ]
544
+ },
545
+ "html": "<div class=\"govuk-form-group\">\n\n <div class=\"govuk-date-input\" id=\"without-item-classes\">\n \n <div class=\"govuk-date-input__item\">\n <div class=\"govuk-form-group\">\n <label class=\"govuk-label govuk-date-input__label\" for=\"without-item-classes-day\">\n Day\n </label>\n \n <input class=\"govuk-input govuk-date-input__input \" id=\"without-item-classes-day\" name=\"day\" type=\"text\" pattern=\"[0-9]*\" inputmode=\"numeric\">\n </div>\n </div>\n \n <div class=\"govuk-date-input__item\">\n <div class=\"govuk-form-group\">\n <label class=\"govuk-label govuk-date-input__label\" for=\"without-item-classes-month\">\n Month\n </label>\n \n <input class=\"govuk-input govuk-date-input__input \" id=\"without-item-classes-month\" name=\"month\" type=\"text\" pattern=\"[0-9]*\" inputmode=\"numeric\">\n </div>\n </div>\n \n <div class=\"govuk-date-input__item\">\n <div class=\"govuk-form-group\">\n <label class=\"govuk-label govuk-date-input__label\" for=\"without-item-classes-year\">\n Year\n </label>\n \n <input class=\"govuk-input govuk-date-input__input \" id=\"without-item-classes-year\" name=\"year\" type=\"text\" pattern=\"[0-9]*\" inputmode=\"numeric\">\n </div>\n </div>\n \n </div>\n\n</div>",
546
+ "hidden": true
547
+ }
548
+ ]
549
+ }