govuk_publishing_components 28.2.0 → 28.6.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (214) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +1 -1
  3. data/app/assets/javascripts/govuk_publishing_components/analytics/auto-scroll-tracker.js +2 -1
  4. data/app/assets/javascripts/govuk_publishing_components/analytics/auto-track-event.js +22 -22
  5. data/app/assets/javascripts/govuk_publishing_components/analytics/pii.js +9 -5
  6. data/app/assets/javascripts/govuk_publishing_components/analytics/track-click.js +4 -3
  7. data/app/assets/javascripts/govuk_publishing_components/analytics/track-select-change.js +4 -3
  8. data/app/assets/javascripts/govuk_publishing_components/components/accordion.js +21 -291
  9. data/app/assets/javascripts/govuk_publishing_components/components/button.js +1 -1
  10. data/app/assets/javascripts/govuk_publishing_components/components/character-count.js +1 -1
  11. data/app/assets/javascripts/govuk_publishing_components/components/checkboxes.js +1 -2
  12. data/app/assets/javascripts/govuk_publishing_components/components/details.js +3 -4
  13. data/app/assets/javascripts/govuk_publishing_components/components/error-summary.js +1 -1
  14. data/app/assets/javascripts/govuk_publishing_components/components/layout-header.js +1 -1
  15. data/app/assets/javascripts/govuk_publishing_components/components/radio.js +1 -1
  16. data/app/assets/javascripts/govuk_publishing_components/components/skip-link.js +5 -0
  17. data/app/assets/javascripts/govuk_publishing_components/components/step-by-step-nav.js +40 -37
  18. data/app/assets/javascripts/govuk_publishing_components/components/tabs.js +1 -1
  19. data/app/assets/javascripts/govuk_publishing_components/lib/govspeak/barchart-enhancement.js +4 -3
  20. data/app/assets/javascripts/govuk_publishing_components/lib/govspeak/magna-charta.js +8 -10
  21. data/app/assets/javascripts/govuk_publishing_components/lib/initial-focus.js +4 -3
  22. data/app/assets/javascripts/govuk_publishing_components/lib/toggle-input-class-on-focus.js +4 -3
  23. data/app/assets/javascripts/govuk_publishing_components/lib/toggle.js +4 -3
  24. data/app/assets/stylesheets/govuk_publishing_components/components/_accordion.scss +1 -329
  25. data/app/assets/stylesheets/govuk_publishing_components/components/_big-number.scss +5 -2
  26. data/app/assets/stylesheets/govuk_publishing_components/components/_contextual-sidebar.scss +0 -5
  27. data/app/assets/stylesheets/govuk_publishing_components/components/_layout-super-navigation-header.scss +67 -21
  28. data/app/assets/stylesheets/govuk_publishing_components/components/_share-links.scss +3 -3
  29. data/app/assets/stylesheets/govuk_publishing_components/components/_step-by-step-nav.scss +95 -56
  30. data/app/assets/stylesheets/govuk_publishing_components/components/print/_accordion.scss +6 -17
  31. data/app/assets/stylesheets/govuk_publishing_components/govuk_frontend_support.scss +0 -9
  32. data/app/views/govuk_publishing_components/components/_accordion.html.erb +30 -15
  33. data/app/views/govuk_publishing_components/components/_action_link.html.erb +1 -1
  34. data/app/views/govuk_publishing_components/components/_big_number.html.erb +12 -8
  35. data/app/views/govuk_publishing_components/components/_button.html.erb +1 -1
  36. data/app/views/govuk_publishing_components/components/_character_count.html.erb +2 -2
  37. data/app/views/govuk_publishing_components/components/_checkboxes.html.erb +2 -2
  38. data/app/views/govuk_publishing_components/components/_contextual_sidebar.html.erb +0 -4
  39. data/app/views/govuk_publishing_components/components/_details.html.erb +1 -1
  40. data/app/views/govuk_publishing_components/components/_error_message.html.erb +1 -1
  41. data/app/views/govuk_publishing_components/components/_error_summary.html.erb +0 -1
  42. data/app/views/govuk_publishing_components/components/_heading.html.erb +1 -1
  43. data/app/views/govuk_publishing_components/components/_hint.html.erb +1 -1
  44. data/app/views/govuk_publishing_components/components/_inset_text.html.erb +12 -1
  45. data/app/views/govuk_publishing_components/components/_layout_footer.html.erb +1 -1
  46. data/app/views/govuk_publishing_components/components/_layout_super_navigation_header.html.erb +22 -18
  47. data/app/views/govuk_publishing_components/components/_list.html.erb +1 -1
  48. data/app/views/govuk_publishing_components/components/_modal_dialogue.html.erb +1 -1
  49. data/app/views/govuk_publishing_components/components/_notice.html.erb +1 -1
  50. data/app/views/govuk_publishing_components/components/_print_link.html.erb +2 -2
  51. data/app/views/govuk_publishing_components/components/_radio.html.erb +1 -1
  52. data/app/views/govuk_publishing_components/components/_search.html.erb +2 -2
  53. data/app/views/govuk_publishing_components/components/_select.html.erb +19 -1
  54. data/app/views/govuk_publishing_components/components/_share_links.html.erb +25 -22
  55. data/app/views/govuk_publishing_components/components/_skip_link.html.erb +1 -1
  56. data/app/views/govuk_publishing_components/components/_subscription_links.html.erb +1 -1
  57. data/app/views/govuk_publishing_components/components/_textarea.html.erb +1 -1
  58. data/app/views/govuk_publishing_components/components/_title.html.erb +3 -3
  59. data/app/views/govuk_publishing_components/components/docs/accordion.yml +2 -97
  60. data/app/views/govuk_publishing_components/components/docs/contextual_sidebar.yml +0 -47
  61. data/app/views/govuk_publishing_components/components/docs/govspeak.yml +1 -1
  62. data/app/views/govuk_publishing_components/components/docs/inset_text.yml +6 -0
  63. data/app/views/govuk_publishing_components/components/docs/select.yml +12 -0
  64. data/app/views/govuk_publishing_components/components/docs/share_links.yml +1 -1
  65. data/app/views/govuk_publishing_components/components/docs/step_by_step_nav.yml +13 -13
  66. data/app/views/govuk_publishing_components/components/docs/tabs.yml +1 -1
  67. data/app/views/govuk_publishing_components/components/docs/textarea.yml +1 -1
  68. data/app/views/govuk_publishing_components/components/feedback/_problem_form.html.erb +26 -0
  69. data/app/views/govuk_publishing_components/components/feedback/_yes_no_banner.html.erb +14 -8
  70. data/app/views/govuk_publishing_components/components/layout_header/_navigation_items.html.erb +11 -11
  71. data/config/locales/ar.yml +2 -0
  72. data/config/locales/az.yml +2 -1
  73. data/config/locales/be.yml +2 -0
  74. data/config/locales/bg.yml +2 -0
  75. data/config/locales/bn.yml +2 -0
  76. data/config/locales/cs.yml +2 -0
  77. data/config/locales/cy.yml +2 -0
  78. data/config/locales/da.yml +2 -0
  79. data/config/locales/de.yml +2 -0
  80. data/config/locales/dr.yml +2 -0
  81. data/config/locales/el.yml +2 -0
  82. data/config/locales/en.yml +0 -4
  83. data/config/locales/es-419.yml +2 -0
  84. data/config/locales/es.yml +2 -0
  85. data/config/locales/et.yml +2 -0
  86. data/config/locales/fa.yml +2 -1
  87. data/config/locales/fi.yml +2 -0
  88. data/config/locales/fr.yml +2 -0
  89. data/config/locales/gd.yml +2 -0
  90. data/config/locales/gu.yml +2 -0
  91. data/config/locales/he.yml +2 -0
  92. data/config/locales/hi.yml +2 -0
  93. data/config/locales/hr.yml +2 -0
  94. data/config/locales/hu.yml +2 -0
  95. data/config/locales/hy.yml +2 -0
  96. data/config/locales/id.yml +2 -1
  97. data/config/locales/is.yml +2 -0
  98. data/config/locales/it.yml +2 -0
  99. data/config/locales/ja.yml +2 -1
  100. data/config/locales/ka.yml +2 -0
  101. data/config/locales/kk.yml +2 -0
  102. data/config/locales/ko.yml +2 -1
  103. data/config/locales/lt.yml +2 -0
  104. data/config/locales/lv.yml +2 -0
  105. data/config/locales/ms.yml +2 -1
  106. data/config/locales/mt.yml +2 -0
  107. data/config/locales/nl.yml +2 -0
  108. data/config/locales/no.yml +2 -0
  109. data/config/locales/pa-pk.yml +2 -0
  110. data/config/locales/pa.yml +2 -0
  111. data/config/locales/pl.yml +2 -0
  112. data/config/locales/ps.yml +2 -0
  113. data/config/locales/pt.yml +2 -0
  114. data/config/locales/ro.yml +2 -0
  115. data/config/locales/ru.yml +2 -0
  116. data/config/locales/si.yml +2 -0
  117. data/config/locales/sk.yml +2 -0
  118. data/config/locales/sl.yml +2 -0
  119. data/config/locales/so.yml +2 -0
  120. data/config/locales/sq.yml +2 -0
  121. data/config/locales/sr.yml +2 -1
  122. data/config/locales/sv.yml +2 -0
  123. data/config/locales/sw.yml +2 -0
  124. data/config/locales/ta.yml +2 -0
  125. data/config/locales/th.yml +2 -1
  126. data/config/locales/tk.yml +2 -0
  127. data/config/locales/tr.yml +2 -0
  128. data/config/locales/uk.yml +2 -0
  129. data/config/locales/ur.yml +2 -0
  130. data/config/locales/uz.yml +2 -0
  131. data/config/locales/vi.yml +2 -1
  132. data/config/locales/zh-hk.yml +2 -1
  133. data/config/locales/zh-tw.yml +2 -1
  134. data/config/locales/zh.yml +2 -1
  135. data/lib/govuk_publishing_components/presenters/big_number_helper.rb +30 -0
  136. data/lib/govuk_publishing_components/presenters/contextual_navigation.rb +0 -38
  137. data/lib/govuk_publishing_components/version.rb +1 -1
  138. data/lib/govuk_publishing_components.rb +1 -0
  139. data/node_modules/govuk-frontend/govuk/all.js +294 -76
  140. data/node_modules/govuk-frontend/govuk/components/accordion/_index.scss +274 -99
  141. data/node_modules/govuk-frontend/govuk/components/accordion/accordion.js +169 -65
  142. data/node_modules/govuk-frontend/govuk/components/accordion/fixtures.json +37 -5
  143. data/node_modules/govuk-frontend/govuk/components/accordion/macro-options.json +4 -4
  144. data/node_modules/govuk-frontend/govuk/components/button/button.js +2 -2
  145. data/node_modules/govuk-frontend/govuk/components/character-count/character-count.js +3 -3
  146. data/node_modules/govuk-frontend/govuk/components/character-count/fixtures.json +15 -2
  147. data/node_modules/govuk-frontend/govuk/components/checkboxes/checkboxes.js +8 -10
  148. data/node_modules/govuk-frontend/govuk/components/checkboxes/fixtures.json +52 -15
  149. data/node_modules/govuk-frontend/govuk/components/cookie-banner/_index.scss +0 -2
  150. data/node_modules/govuk-frontend/govuk/components/cookie-banner/fixtures.json +31 -0
  151. data/node_modules/govuk-frontend/govuk/components/date-input/fixtures.json +25 -25
  152. data/node_modules/govuk-frontend/govuk/components/details/details.js +2 -2
  153. data/node_modules/govuk-frontend/govuk/components/error-message/_index.scss +1 -0
  154. data/node_modules/govuk-frontend/govuk/components/error-message/fixtures.json +8 -8
  155. data/node_modules/govuk-frontend/govuk/components/error-message/template.njk +2 -2
  156. data/node_modules/govuk-frontend/govuk/components/error-summary/error-summary.js +24 -3
  157. data/node_modules/govuk-frontend/govuk/components/error-summary/fixtures.json +25 -16
  158. data/node_modules/govuk-frontend/govuk/components/error-summary/macro-options.json +6 -0
  159. data/node_modules/govuk-frontend/govuk/components/error-summary/template.njk +2 -1
  160. data/node_modules/govuk-frontend/govuk/components/file-upload/fixtures.json +4 -4
  161. data/node_modules/govuk-frontend/govuk/components/footer/_index.scss +3 -37
  162. data/node_modules/govuk-frontend/govuk/components/footer/fixtures.json +119 -15
  163. data/node_modules/govuk-frontend/govuk/components/footer/macro-options.json +6 -0
  164. data/node_modules/govuk-frontend/govuk/components/footer/template.njk +1 -1
  165. data/node_modules/govuk-frontend/govuk/components/header/_index.scss +10 -4
  166. data/node_modules/govuk-frontend/govuk/components/header/fixtures.json +11 -11
  167. data/node_modules/govuk-frontend/govuk/components/header/header.js +4 -4
  168. data/node_modules/govuk-frontend/govuk/components/header/template.njk +4 -3
  169. data/node_modules/govuk-frontend/govuk/components/hint/_index.scss +1 -3
  170. data/node_modules/govuk-frontend/govuk/components/input/_index.scss +1 -1
  171. data/node_modules/govuk-frontend/govuk/components/input/fixtures.json +40 -40
  172. data/node_modules/govuk-frontend/govuk/components/input/template.njk +4 -3
  173. data/node_modules/govuk-frontend/govuk/components/notification-banner/notification-banner.js +499 -2
  174. data/node_modules/govuk-frontend/govuk/components/phase-banner/fixtures.json +2 -2
  175. data/node_modules/govuk-frontend/govuk/components/radios/_index.scss +0 -8
  176. data/node_modules/govuk-frontend/govuk/components/radios/fixtures.json +44 -45
  177. data/node_modules/govuk-frontend/govuk/components/radios/radios.js +4 -4
  178. data/node_modules/govuk-frontend/govuk/components/radios/template.njk +2 -9
  179. data/node_modules/govuk-frontend/govuk/components/select/_index.scss +6 -1
  180. data/node_modules/govuk-frontend/govuk/components/select/fixtures.json +3 -3
  181. data/node_modules/govuk-frontend/govuk/components/skip-link/_index.scss +13 -0
  182. data/node_modules/govuk-frontend/govuk/components/skip-link/fixtures.json +9 -9
  183. data/node_modules/govuk-frontend/govuk/components/skip-link/skip-link.js +1108 -0
  184. data/node_modules/govuk-frontend/govuk/components/skip-link/template.njk +1 -1
  185. data/node_modules/govuk-frontend/govuk/components/summary-list/_index.scss +20 -23
  186. data/node_modules/govuk-frontend/govuk/components/summary-list/fixtures.json +86 -1
  187. data/node_modules/govuk-frontend/govuk/components/summary-list/template.njk +1 -4
  188. data/node_modules/govuk-frontend/govuk/components/tabs/_index.scss +2 -2
  189. data/node_modules/govuk-frontend/govuk/components/tabs/tabs.js +2 -2
  190. data/node_modules/govuk-frontend/govuk/components/tag/_index.scss +0 -5
  191. data/node_modules/govuk-frontend/govuk/components/tag/fixtures.json +2 -2
  192. data/node_modules/govuk-frontend/govuk/components/textarea/_index.scss +1 -1
  193. data/node_modules/govuk-frontend/govuk/components/textarea/fixtures.json +4 -4
  194. data/node_modules/govuk-frontend/govuk/core/_all.scss +0 -1
  195. data/node_modules/govuk-frontend/govuk/core/_global-styles.scss +0 -6
  196. data/node_modules/govuk-frontend/govuk/core/_links.scss +0 -6
  197. data/node_modules/govuk-frontend/govuk/core/_lists.scss +0 -6
  198. data/node_modules/govuk-frontend/govuk/core/_section-break.scss +0 -6
  199. data/node_modules/govuk-frontend/govuk/core/_typography.scss +0 -6
  200. data/node_modules/govuk-frontend/govuk/objects/_all.scss +1 -0
  201. data/node_modules/govuk-frontend/govuk/objects/_main-wrapper.scss +15 -30
  202. data/node_modules/govuk-frontend/govuk/{core → objects}/_template.scss +1 -5
  203. data/node_modules/govuk-frontend/govuk/overrides/_display.scss +0 -6
  204. data/node_modules/govuk-frontend/govuk/overrides/_spacing.scss +0 -6
  205. data/node_modules/govuk-frontend/govuk/overrides/_text-align.scss +0 -6
  206. data/node_modules/govuk-frontend/govuk/overrides/_typography.scss +0 -6
  207. data/node_modules/govuk-frontend/govuk/overrides/_width.scss +0 -6
  208. data/node_modules/govuk-frontend/govuk/settings/_colours-organisations.scss +3 -0
  209. data/node_modules/govuk-frontend/govuk/settings/_measurements.scss +0 -10
  210. data/node_modules/govuk-frontend/govuk/tools/_all.scss +0 -1
  211. data/node_modules/govuk-frontend/package.json +1 -1
  212. metadata +11 -16
  213. data/app/views/govuk_publishing_components/components/contextual_sidebar/_covid_cta.html.erb +0 -27
  214. data/node_modules/govuk-frontend/govuk/tools/_iff.scss +0 -17
@@ -14,7 +14,6 @@
14
14
  data: { module: "govuk-error-summary" }.merge(data_attributes),
15
15
  aria: { labelledby: title_id },
16
16
  role: "alert",
17
- tabindex: -1,
18
17
  id: id,
19
18
  ) do %>
20
19
  <% if title %>
@@ -10,7 +10,7 @@
10
10
  classes << heading_helper.classes
11
11
  classes << brand_helper.brand_class
12
12
  classes << brand_helper.border_color_class
13
- classes << (shared_helper.get_margin_bottom) if [*0..9].include?(local_assigns[:margin_bottom])
13
+ classes << shared_helper.get_margin_bottom if [*0..9].include?(local_assigns[:margin_bottom])
14
14
  %>
15
15
  <%= content_tag(shared_helper.get_heading_level, text,
16
16
  class: classes,
@@ -3,7 +3,7 @@
3
3
  shared_helper = GovukPublishingComponents::Presenters::SharedHelper.new(local_assigns)
4
4
 
5
5
  css_classes = %w( gem-c-hint govuk-hint )
6
- css_classes << (shared_helper.get_margin_bottom)
6
+ css_classes << shared_helper.get_margin_bottom
7
7
  %>
8
8
 
9
9
  <%= tag.div id: id, class: css_classes do %>
@@ -1,7 +1,18 @@
1
1
  <%
2
2
  id ||= "inset-text-#{SecureRandom.hex(4)}"
3
+ margin_top ||= 6
4
+ margin_bottom ||= 6
5
+
6
+ shared_helper = GovukPublishingComponents::Presenters::SharedHelper.new({
7
+ margin_top: margin_top,
8
+ margin_bottom: margin_bottom
9
+ })
10
+
11
+ classes = %w[gem-c-inset-text govuk-inset-text]
12
+ classes << shared_helper.get_margin_top
13
+ classes << shared_helper.get_margin_bottom
3
14
  %>
4
- <%= tag.div id: id, class: "gem-c-inset-text govuk-inset-text" do %>
15
+ <%= tag.div id: id, class: classes do %>
5
16
  <% if defined? text %>
6
17
  <%= text %>
7
18
  <% elsif block_given? %>
@@ -72,7 +72,7 @@
72
72
  <% end %>
73
73
  </ul>
74
74
  <% end %>
75
- <svg role="presentation" focusable="false" class="govuk-footer__licence-logo" xmlns="http://www.w3.org/2000/svg" viewbox="0 0 483.2 195.7" height="17" width="41">
75
+ <svg aria-hidden="true" focusable="false" class="govuk-footer__licence-logo" xmlns="http://www.w3.org/2000/svg" viewbox="0 0 483.2 195.7" height="17" width="41">
76
76
  <path
77
77
  fill="currentColor"
78
78
  d="M421.5 142.8V.1l-50.7 32.3v161.1h112.4v-50.7zm-122.3-9.6A47.12 47.12 0 0 1 221 97.8c0-26 21.1-47.1 47.1-47.1 16.7 0 31.4 8.7 39.7 21.8l42.7-27.2A97.63 97.63 0 0 0 268.1 0c-36.5 0-68.3 20.1-85.1 49.7A98 98 0 0 0 97.8 0C43.9 0 0 43.9 0 97.8s43.9 97.8 97.8 97.8c36.5 0 68.3-20.1 85.1-49.7a97.76 97.76 0 0 0 149.6 25.4l19.4 22.2h3v-87.8h-80l24.3 27.5zM97.8 145c-26 0-47.1-21.1-47.1-47.1s21.1-47.1 47.1-47.1 47.2 21 47.2 47S123.8 145 97.8 145"
@@ -108,24 +108,28 @@
108
108
  track_dimension_index: "29",
109
109
  }
110
110
  } %>
111
- <%= content_tag(:button, link[:label], {
112
- aria: {
113
- controls: "super-navigation-menu__section-#{unique_id}",
114
- expanded: false,
115
- label: show_menu_text,
116
- },
117
- class: "gem-c-layout-super-navigation-header__navigation-second-toggle-button",
118
- data: {
119
- text_for_hide: hide_menu_text,
120
- text_for_show: show_menu_text,
121
- toggle_desktop_group: "top",
122
- toggle_mobile_group: "second",
123
- tracking_key: tracking_label,
124
- },
125
- hidden: true,
126
- id: "super-navigation-menu__section-#{unique_id}-toggle",
127
- type: "button",
128
- }) if has_children %>
111
+ <% if has_children %>
112
+ <%= content_tag(:button, {
113
+ aria: {
114
+ controls: "super-navigation-menu__section-#{unique_id}",
115
+ expanded: false,
116
+ label: show_menu_text,
117
+ },
118
+ class: "gem-c-layout-super-navigation-header__navigation-second-toggle-button",
119
+ data: {
120
+ text_for_hide: hide_menu_text,
121
+ text_for_show: show_menu_text,
122
+ toggle_desktop_group: "top",
123
+ toggle_mobile_group: "second",
124
+ tracking_key: tracking_label,
125
+ },
126
+ hidden: true,
127
+ id: "super-navigation-menu__section-#{unique_id}-toggle",
128
+ type: "button",
129
+ }) do %>
130
+ <%= tag.span link[:label], class: "gem-c-layout-super-navigation-header__navigation-second-toggle-button-inner" %>
131
+ <% end %>
132
+ <% end %>
129
133
  </div>
130
134
  <% if has_children %>
131
135
  <div
@@ -14,7 +14,7 @@
14
14
  classes << "govuk-list--spaced" if extra_spacing
15
15
  # Setting the `margin_bottom` to 4 is the same as the default margin - so we
16
16
  # can omit the override class. To do this we leave out `4` from the array:
17
- classes << (shared_helper.get_margin_bottom) if [0,1,2,3,5,6,7,8,9].include?(local_assigns[:margin_bottom])
17
+ classes << shared_helper.get_margin_bottom if [0,1,2,3,5,6,7,8,9].include?(local_assigns[:margin_bottom])
18
18
 
19
19
  # Default list type is unordered list.
20
20
  list_tag = "ul"
@@ -11,7 +11,7 @@
11
11
  <%= tag.div class: "gem-c-modal-dialogue__overlay" %>
12
12
  <%= tag.dialog class: dialog_classes, data: data_attributes, aria: { modal: true, label: aria_label }, role: "dialog", tabindex: 0 do %>
13
13
  <%= tag.div class: "gem-c-modal-dialogue__header" do %>
14
- <svg role="presentation" focusable="false" class="gem-c-modal-dialogue__logotype-crown" xmlns="http://www.w3.org/2000/svg" viewbox="0 0 132 97" height="26" width="30">
14
+ <svg aria-hidden="true" focusable="false" class="gem-c-modal-dialogue__logotype-crown" xmlns="http://www.w3.org/2000/svg" viewbox="0 0 132 97" height="26" width="30">
15
15
  <path fill="currentColor" fill-rule="evenodd"
16
16
  d="M25 30.2c3.5 1.5 7.7-.2 9.1-3.7 1.5-3.6-.2-7.8-3.9-9.2-3.6-1.4-7.6.3-9.1 3.9-1.4 3.5.3 7.5 3.9 9zM9 39.5c3.6 1.5 7.8-.2 9.2-3.7 1.5-3.6-.2-7.8-3.9-9.1-3.6-1.5-7.6.2-9.1 3.8-1.4 3.5.3 7.5 3.8 9zM4.4 57.2c3.5 1.5 7.7-.2 9.1-3.8 1.5-3.6-.2-7.7-3.9-9.1-3.5-1.5-7.6.3-9.1 3.8-1.4 3.5.3 7.6 3.9 9.1zm38.3-21.4c3.5 1.5 7.7-.2 9.1-3.8 1.5-3.6-.2-7.7-3.9-9.1-3.6-1.5-7.6.3-9.1 3.8-1.3 3.6.4 7.7 3.9 9.1zm64.4-5.6c-3.6 1.5-7.8-.2-9.1-3.7-1.5-3.6.2-7.8 3.8-9.2 3.6-1.4 7.7.3 9.2 3.9 1.3 3.5-.4 7.5-3.9 9zm15.9 9.3c-3.6 1.5-7.7-.2-9.1-3.7-1.5-3.6.2-7.8 3.7-9.1 3.6-1.5 7.7.2 9.2 3.8 1.5 3.5-.3 7.5-3.8 9zm4.7 17.7c-3.6 1.5-7.8-.2-9.2-3.8-1.5-3.6.2-7.7 3.9-9.1 3.6-1.5 7.7.3 9.2 3.8 1.3 3.5-.4 7.6-3.9 9.1zM89.3 35.8c-3.6 1.5-7.8-.2-9.2-3.8-1.4-3.6.2-7.7 3.9-9.1 3.6-1.5 7.7.3 9.2 3.8 1.4 3.6-.3 7.7-3.9 9.1zM69.7 17.7l8.9 4.7V9.3l-8.9 2.8c-.2-.3-.5-.6-.9-.9L72.4 0H59.6l3.5 11.2c-.3.3-.6.5-.9.9l-8.8-2.8v13.1l8.8-4.7c.3.3.6.7.9.9l-5 15.4v.1c-.2.8-.4 1.6-.4 2.4 0 4.1 3.1 7.5 7 8.1h.2c.3 0 .7.1 1 .1.4 0 .7 0 1-.1h.2c4-.6 7.1-4.1 7.1-8.1 0-.8-.1-1.7-.4-2.4V34l-5.1-15.4c.4-.2.7-.6 1-.9zM66 92.8c16.9 0 32.8 1.1 47.1 3.2 4-16.9 8.9-26.7 14-33.5l-9.6-3.4c1 4.9 1.1 7.2 0 10.2-1.5-1.4-3-4.3-4.2-8.7L108.6 76c2.8-2 5-3.2 7.5-3.3-4.4 9.4-10 11.9-13.6 11.2-4.3-.8-6.3-4.6-5.6-7.9 1-4.7 5.7-5.9 8-.5 4.3-8.7-3-11.4-7.6-8.8 7.1-7.2 7.9-13.5 2.1-21.1-8 6.1-8.1 12.3-4.5 20.8-4.7-5.4-12.1-2.5-9.5 6.2 3.4-5.2 7.9-2 7.2 3.1-.6 4.3-6.4 7.8-13.5 7.2-10.3-.9-10.9-8-11.2-13.8 2.5-.5 7.1 1.8 11 7.3L80.2 60c-4.1 4.4-8 5.3-12.3 5.4 1.4-4.4 8-11.6 8-11.6H55.5s6.4 7.2 7.9 11.6c-4.2-.1-8-1-12.3-5.4l1.4 16.4c3.9-5.5 8.5-7.7 10.9-7.3-.3 5.8-.9 12.8-11.1 13.8-7.2.6-12.9-2.9-13.5-7.2-.7-5 3.8-8.3 7.1-3.1 2.7-8.7-4.6-11.6-9.4-6.2 3.7-8.5 3.6-14.7-4.6-20.8-5.8 7.6-5 13.9 2.2 21.1-4.7-2.6-11.9.1-7.7 8.8 2.3-5.5 7.1-4.2 8.1.5.7 3.3-1.3 7.1-5.7 7.9-3.5.7-9-1.8-13.5-11.2 2.5.1 4.7 1.3 7.5 3.3l-4.7-15.4c-1.2 4.4-2.7 7.2-4.3 8.7-1.1-3-.9-5.3 0-10.2l-9.5 3.4c5 6.9 9.9 16.7 14 33.5 14.8-2.1 30.8-3.2 47.7-3.2z"></path>
17
17
  <image src="<%= asset_path('govuk-logotype-crown.png') %>" class="gem-c-modal-dialogue__logotype-crown-fallback-image"></image>
@@ -16,7 +16,7 @@
16
16
  shared_helper = GovukPublishingComponents::Presenters::SharedHelper.new(local_assigns)
17
17
 
18
18
  css_classes = %w[govuk-notification-banner gem-c-notice]
19
- css_classes << (shared_helper.get_margin_bottom)
19
+ css_classes << shared_helper.get_margin_bottom
20
20
 
21
21
  aria_attributes = {label: 'Notice'}
22
22
  aria_attributes[:live] = 'polite' if aria_live
@@ -15,8 +15,8 @@
15
15
 
16
16
  wrapper_classes = %w(gem-c-print-link govuk-!-display-none-print)
17
17
  wrapper_classes << "gem-c-print-link--show-without-js" unless require_js
18
- wrapper_classes << (shared_helper.get_margin_top)
19
- wrapper_classes << (shared_helper.get_margin_bottom)
18
+ wrapper_classes << shared_helper.get_margin_top
19
+ wrapper_classes << shared_helper.get_margin_bottom
20
20
 
21
21
  classes = %w[govuk-link]
22
22
  classes << "govuk-body-s gem-c-print-link__button" if href.nil?
@@ -122,7 +122,7 @@
122
122
  <% end %>
123
123
 
124
124
  <% if item[:conditional] %>
125
- <%= tag.div item[:conditional], class:"govuk-radios__conditional govuk-radios__conditional--hidden", id: conditional_id %>
125
+ <%= tag.div item[:conditional], class:"govuk-radios__conditional govuk-radios__conditional--hidden govuk-body", id: conditional_id %>
126
126
  <% end %>
127
127
 
128
128
  <% end %>
@@ -18,8 +18,8 @@
18
18
  data_attributes[:module] = 'gem-track-click'
19
19
 
20
20
  classes = %w[gem-c-search govuk-!-display-none-print]
21
- classes << (shared_helper.get_margin_top)
22
- classes << (shared_helper.get_margin_bottom) if local_assigns[:margin_bottom]
21
+ classes << shared_helper.get_margin_top
22
+ classes << shared_helper.get_margin_bottom if local_assigns[:margin_bottom]
23
23
  classes << "gem-c-search--large" if size == "large"
24
24
  classes << "gem-c-search--large-on-mobile" if size == "large-mobile"
25
25
  classes << "gem-c-search--no-border" if no_border
@@ -10,12 +10,23 @@
10
10
  heading_size = false unless shared_helper.valid_heading_size?(heading_size)
11
11
  error_message ||= nil
12
12
  error_id ||= nil
13
+ hint ||= nil
14
+ hint_id ||= nil
15
+
16
+ describedby = %w[]
13
17
 
14
18
  if error_message || error_id
15
19
  error_id = "error-#{SecureRandom.hex(4)}" unless error_id
16
- aria_describedby = { describedby: error_id }
20
+ describedby << error_id
21
+ end
22
+
23
+ if hint
24
+ hint_id = "hint-#{SecureRandom.hex(4)}" unless hint_id
25
+ describedby << hint_id
17
26
  end
18
27
 
28
+ aria_describedby = { describedby: describedby } if describedby
29
+
19
30
  css_classes = %w(govuk-form-group gem-c-select)
20
31
  css_classes << "govuk-form-group--error" if error_message
21
32
 
@@ -37,6 +48,13 @@
37
48
  <%= label_tag(id, label, class: label_classes) %>
38
49
  <% end %>
39
50
 
51
+ <% if hint %>
52
+ <%= render "govuk_publishing_components/components/hint", {
53
+ id: hint_id,
54
+ text: hint
55
+ } %>
56
+ <% end %>
57
+
40
58
  <% if error_message %>
41
59
  <%= render "govuk_publishing_components/components/error_message", {
42
60
  id: error_id,
@@ -55,38 +55,41 @@
55
55
  class: "govuk-link govuk-link--no-underline gem-c-share-links__link #{brand_helper.color_class}" do %>
56
56
  <span class="gem-c-share-links__link-icon">
57
57
  <% if link[:icon] == 'facebook' %>
58
- <svg xmlns="http://www.w3.org/2000/svg" width="32" height="32" aria-hidden="true">
59
- <path fill="currentColor" d="M31.006 0H.993A.997.997 0 0 0 0 .993v30.014c0 .55.452.993.993.993h30.013a.998.998 0 0 0 .994-.993V.993A.999.999 0 0 0 31.006 0z"/>
60
- <path fill="#FFF" d="M17.892 10.751h1.787V8.009L17.216 8c-2.73 0-3.352 2.045-3.352 3.353v1.828h-1.581v2.824h1.581V24h3.322v-7.995h2.242l.291-2.824h-2.533V11.52c.001-.623.415-.769.706-.769z"/>
58
+ <svg viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false">
59
+ <path fill="currentColor" d="M24 12.073c0-6.627-5.373-12-12-12s-12 5.373-12 12c0 5.99 4.388 10.954 10.125 11.854v-8.385H7.078v-3.47h3.047V9.43c0-3.007 1.792-4.669 4.533-4.669 1.312 0 2.686.235 2.686.235v2.953H15.83c-1.491 0-1.956.925-1.956 1.874v2.25h3.328l-.532 3.47h-2.796v8.385C19.612 23.027 24 18.062 24 12.073z"/>
61
60
  </svg>
62
-
63
61
  <% elsif link[:icon] == 'twitter' %>
64
- <svg xmlns="http://www.w3.org/2000/svg" width="32" height="32" aria-hidden="true">
65
- <path fill="currentColor" d="M31.007 0H.993A.999.999 0 0 0 0 .993v30.014c0 .55.452.993.993.993h30.014a.997.997 0 0 0 .993-.993V.993A.998.998 0 0 0 31.007 0z"/>
66
- <path fill="#FFF" d="M8 21.027a9.286 9.286 0 0 0 5.032 1.475c6.038 0 9.34-5.002 9.34-9.339 0-.143-.004-.284-.012-.425a6.619 6.619 0 0 0 1.639-1.699c-.6.265-1.234.439-1.885.516a3.287 3.287 0 0 0 1.443-1.816 6.571 6.571 0 0 1-2.086.797 3.28 3.28 0 0 0-5.592 2.993 9.311 9.311 0 0 1-6.766-3.43 3.294 3.294 0 0 0-.443 1.651 3.28 3.28 0 0 0 1.46 2.732 3.278 3.278 0 0 1-1.488-.411v.041a3.288 3.288 0 0 0 2.633 3.22 3.28 3.28 0 0 1-1.481.055 3.285 3.285 0 0 0 3.065 2.281 6.59 6.59 0 0 1-4.076 1.404A6.76 6.76 0 0 1 8 21.027z"/>
62
+ <svg viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false">
63
+ <path fill="currentColor" d="M23.953 4.57a10 10 0 01-2.825.775 4.958 4.958 0 002.163-2.723c-.951.555-2.005.959-3.127 1.184a4.92 4.92 0 00-8.384 4.482C7.69 8.095 4.067 6.13 1.64 3.162a4.822 4.822 0 00-.666 2.475c0 1.71.87 3.213 2.188 4.096a4.904 4.904 0 01-2.228-.616v.06a4.923 4.923 0 003.946 4.827 4.996 4.996 0 01-2.212.085 4.936 4.936 0 004.604 3.417 9.867 9.867 0 01-6.102 2.105c-.39 0-.779-.023-1.17-.067a13.995 13.995 0 007.557 2.209c9.053 0 13.998-7.496 13.998-13.985 0-.21 0-.42-.015-.63A9.935 9.935 0 0024 4.59z"/>
67
64
  </svg>
68
-
69
65
  <% elsif link[:icon] == 'email' %>
70
- <svg xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="9 9 32 32" aria-hidden="true"><path fill="currentColor" d="M9 9h32v32H9V9z"/><path fill="#FFF" d="M34.983 18.76v12.48H15.016V18.76h19.967m2.496-2.496H12.52v17.472h24.959V16.264z"/><path fill="none" stroke="#FFF" stroke-width="2.496" stroke-miterlimit="10" d="M14.59 18.963L25 26.945l10.263-7.869"/></svg>
71
-
66
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 73.84 73.84" aria-hidden="true" focusable="false">
67
+ <path fill="currentColor" d="M36.92,0A36.92,36.92,0,1,0,73.84,36.92,36.92,36.92,0,0,0,36.92,0ZM58.37,21,36.92,39.45,15.47,21ZM11.65,23.66,26.27,36.23,11.65,49.9ZM15.1,52.83,29.7,39.18l7.22,6.21,7.22-6.21,14.6,13.65ZM62.19,49.9,47.57,36.23,62.19,23.66Z"/>
68
+ </svg>
72
69
  <% elsif link[:icon] == 'flickr' %>
73
- <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="32" height="32" viewBox="9 9 32 32" aria-hidden="true"><path fill="currentColor" d="M9 9h32v32H9V9z"/><defs><path d="M9 9h32v32H9z"/></defs><clipPath><use xlink:href="#a" overflow="visible"/></clipPath><path clip-path="url(#b)" fill="#FFF" d="M23.72 25a5.76 5.76 0 1 1-11.52 0 5.76 5.76 0 1 1 11.52 0m14.08 0c0 3.182-2.578 5.76-5.76 5.76s-5.76-2.578-5.76-5.76a5.76 5.76 0 1 1 11.52 0"/></svg>
74
-
70
+ <svg viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false">
71
+ <path fill="currentColor" d="M5.334 6.666C2.3884 6.666 0 9.055 0 12c0 2.9456 2.3884 5.334 5.334 5.334 2.9456 0 5.332-2.3884 5.332-5.334 0-2.945-2.3864-5.334-5.332-5.334zm13.332 0c-2.9456 0-5.332 2.389-5.332 5.334 0 2.9456 2.3864 5.334 5.332 5.334C21.6116 17.334 24 14.9456 24 12c0-2.945-2.3884-5.334-5.334-5.334Z"/>
72
+ </svg>
75
73
  <% elsif link[:icon] == 'instagram' %>
76
- <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="32" height="32" viewBox="9 9 32 32" aria-hidden="true"><path fill="currentColor" d="M9 9h32v32H9V9z"/><defs><path d="M9 9h32v32H9z"/></defs><clipPath><use xlink:href="#a" overflow="visible"/></clipPath><path clip-path="url(#b)" fill="#FFF" d="M25 28.2a3.204 3.204 0 0 1-3.2-3.2c0-1.764 1.436-3.2 3.2-3.2 1.765 0 3.2 1.436 3.2 3.2 0 1.765-1.435 3.2-3.2 3.2"/><defs><path d="M9 9h32v32H9z"/></defs><clipPath><use xlink:href="#c" overflow="visible"/></clipPath><path clip-path="url(#d)" fill="#FFF" d="M25 22.44c1.412 0 2.56 1.148 2.56 2.56s-1.147 2.56-2.56 2.56a2.561 2.561 0 0 1 0-5.12m0-1.28A3.844 3.844 0 0 0 21.16 25 3.844 3.844 0 0 0 25 28.84 3.845 3.845 0 0 0 28.84 25 3.844 3.844 0 0 0 25 21.16"/><defs><path d="M9 9h32v32H9z"/></defs><clipPath><use xlink:href="#e" overflow="visible"/></clipPath><path clip-path="url(#f)" fill="#FFF" d="M17.32 35.24c-1.555 0-2.56-1.005-2.56-2.561V17.373c0-1.611.981-2.613 2.56-2.613h15.36c1.58 0 2.561 1.002 2.561 2.613v15.36c0 1.522-1.005 2.507-2.561 2.507H17.32zM25 17.96c-3.881 0-7.04 3.159-7.04 7.04 0 3.881 3.159 7.04 7.04 7.04 3.881 0 7.04-3.159 7.04-7.04 0-3.881-3.159-7.04-7.04-7.04m7.36-2.56a2.243 2.243 0 0 0-2.24 2.24 2.243 2.243 0 0 0 2.24 2.24 2.241 2.241 0 0 0 0-4.48"/><defs><path d="M9 9h32v32H9z"/></defs><clipPath><use xlink:href="#g" overflow="visible"/></clipPath><path clip-path="url(#h)" fill="#FFF" d="M30.552 15.4a2.873 2.873 0 0 0-.704 3.648A7.64 7.64 0 0 0 25 17.319c-4.235 0-7.68 3.445-7.68 7.68 0 4.235 3.445 7.68 7.68 7.68 4.235 0 7.68-3.444 7.68-7.68a7.642 7.642 0 0 0-1.728-4.848 2.876 2.876 0 0 0 3.647-.703v13.285c0 1.169-.717 1.866-1.92 1.866H17.32c-1.22 0-1.92-.699-1.92-1.92V17.373c0-1.254.7-1.973 1.92-1.973h13.232m2.128-1.28H17.32c-1.92 0-3.2 1.28-3.2 3.253V32.68c0 1.92 1.28 3.2 3.2 3.2h15.36c1.92 0 3.2-1.28 3.2-3.146v-15.36c0-1.974-1.28-3.254-3.2-3.254m-.32 5.12a1.6 1.6 0 1 1-.001-3.2 1.6 1.6 0 0 1 .001 3.2M25 31.4a6.4 6.4 0 1 1 .002-12.802A6.4 6.4 0 0 1 25 31.4"/></svg>
77
-
74
+ <svg viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false">
75
+ <path fill="currentColor" d="M12 0C8.74 0 8.333.015 7.053.072 5.775.132 4.905.333 4.14.63c-.789.306-1.459.717-2.126 1.384S.935 3.35.63 4.14C.333 4.905.131 5.775.072 7.053.012 8.333 0 8.74 0 12s.015 3.667.072 4.947c.06 1.277.261 2.148.558 2.913.306.788.717 1.459 1.384 2.126.667.666 1.336 1.079 2.126 1.384.766.296 1.636.499 2.913.558C8.333 23.988 8.74 24 12 24s3.667-.015 4.947-.072c1.277-.06 2.148-.262 2.913-.558.788-.306 1.459-.718 2.126-1.384.666-.667 1.079-1.335 1.384-2.126.296-.765.499-1.636.558-2.913.06-1.28.072-1.687.072-4.947s-.015-3.667-.072-4.947c-.06-1.277-.262-2.149-.558-2.913-.306-.789-.718-1.459-1.384-2.126C21.319 1.347 20.651.935 19.86.63c-.765-.297-1.636-.499-2.913-.558C15.667.012 15.26 0 12 0zm0 2.16c3.203 0 3.585.016 4.85.071 1.17.055 1.805.249 2.227.415.562.217.96.477 1.382.896.419.42.679.819.896 1.381.164.422.36 1.057.413 2.227.057 1.266.07 1.646.07 4.85s-.015 3.585-.074 4.85c-.061 1.17-.256 1.805-.421 2.227-.224.562-.479.96-.899 1.382-.419.419-.824.679-1.38.896-.42.164-1.065.36-2.235.413-1.274.057-1.649.07-4.859.07-3.211 0-3.586-.015-4.859-.074-1.171-.061-1.816-.256-2.236-.421-.569-.224-.96-.479-1.379-.899-.421-.419-.69-.824-.9-1.38-.165-.42-.359-1.065-.42-2.235-.045-1.26-.061-1.649-.061-4.844 0-3.196.016-3.586.061-4.861.061-1.17.255-1.814.42-2.234.21-.57.479-.96.9-1.381.419-.419.81-.689 1.379-.898.42-.166 1.051-.361 2.221-.421 1.275-.045 1.65-.06 4.859-.06l.045.03zm0 3.678c-3.405 0-6.162 2.76-6.162 6.162 0 3.405 2.76 6.162 6.162 6.162 3.405 0 6.162-2.76 6.162-6.162 0-3.405-2.76-6.162-6.162-6.162zM12 16c-2.21 0-4-1.79-4-4s1.79-4 4-4 4 1.79 4 4-1.79 4-4 4zm7.846-10.405c0 .795-.646 1.44-1.44 1.44-.795 0-1.44-.646-1.44-1.44 0-.794.646-1.439 1.44-1.439.793-.001 1.44.645 1.44 1.439z"/>
76
+ </svg>
78
77
  <% elsif link[:icon] == 'linkedin' %>
79
- <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="32" height="32" viewBox="9 9 32 32" aria-hidden="true"><path fill="currentColor" d="M9 9h32v32H9V9z"/><path fill="#FFF" d="M19.24 35.24V21.8h-4.48v13.44h4.48z"/><defs><path d="M9 9h32v32H9z"/></defs><clipPath><use xlink:href="#a" overflow="visible"/></clipPath><path clip-path="url(#b)" fill="#FFF" d="M26.28 35.24V28.2c0-1.92.64-3.2 1.92-3.2h.64c1.28 0 1.92 1.28 1.92 4.48v5.76h4.48V28.2c0-4.48-1.28-6.4-4.48-6.4-3.84 0-4.479 1.92-4.479 1.92V21.8H21.8v13.44h4.48zm-6.72-17.92a2.56 2.56 0 1 1-5.12 0 2.56 2.56 0 0 1 5.12 0"/></svg>
80
-
78
+ <svg viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false">
79
+ <path fill="currentColor" d="M20.447 20.452h-3.554v-5.569c0-1.328-.027-3.037-1.852-3.037-1.853 0-2.136 1.445-2.136 2.939v5.667H9.351V9h3.414v1.561h.046c.477-.9 1.637-1.85 3.37-1.85 3.601 0 4.267 2.37 4.267 5.455v6.286zM5.337 7.433c-1.144 0-2.063-.926-2.063-2.065 0-1.138.92-2.063 2.063-2.063 1.14 0 2.064.925 2.064 2.063 0 1.139-.925 2.065-2.064 2.065zm1.782 13.019H3.555V9h3.564v11.452zM22.225 0H1.771C.792 0 0 .774 0 1.729v20.542C0 23.227.792 24 1.771 24h20.451C23.2 24 24 23.227 24 22.271V1.729C24 .774 23.2 0 22.222 0h.003z"/>
80
+ </svg>
81
81
  <% elsif link[:icon] == 'youtube' %>
82
- <svg xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="9 9 32 32" aria-hidden="true"><path fill="currentColor" d="M9 9h32v32H9V9z"/><path fill="#FFF" d="M19.88 33.32V16.68L33.32 25l-13.44 8.32z"/></svg>
83
-
82
+ <svg viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false">
83
+ <path fill="currentColor" d="M23.498 6.186a3.016 3.016 0 0 0-2.122-2.136C19.505 3.545 12 3.545 12 3.545s-7.505 0-9.377.505A3.017 3.017 0 0 0 .502 6.186C0 8.07 0 12 0 12s0 3.93.502 5.814a3.016 3.016 0 0 0 2.122 2.136c1.871.505 9.376.505 9.376.505s7.505 0 9.377-.505a3.015 3.015 0 0 0 2.122-2.136C24 15.93 24 12 24 12s0-3.93-.502-5.814zM9.545 15.568V8.432L15.818 12l-6.273 3.568z"/>
84
+ </svg>
84
85
  <% elsif link[:icon] == 'whatsapp' %>
85
- <svg xmlns="http://www.w3.org/2000/svg" width="32" height="32" aria-hidden="true"><path d="M0 32V0h32v32H0zm20.839-13.894c-.263-.131-1.555-.766-1.796-.854-.24-.088-.416-.132-.59.131-.176.263-.68.855-.833 1.03-.153.176-.307.198-.57.066-.262-.131-1.109-.41-2.113-1.304-.78-.697-1.308-1.557-1.461-1.82-.153-.263-.016-.406.115-.536.118-.118.263-.308.394-.46.131-.154.175-.264.263-.44.088-.174.044-.328-.022-.46-.066-.131-.591-1.424-.81-1.95-.214-.513-.43-.443-.59-.452a10.506 10.506 0 0 0-.505-.009.964.964 0 0 0-.7.329c-.241.263-.92.899-.92 2.192 0 1.293.942 2.542 1.073 2.718.131.176 1.852 2.83 4.489 3.967.626.27 1.116.433 1.497.554.63.2 1.202.172 1.655.104.505-.075 1.555-.636 1.774-1.25.219-.613.219-1.14.153-1.25-.066-.108-.24-.174-.503-.306zm-4.795 6.547h-.003a8.73 8.73 0 0 1-4.449-1.219l-.319-.19-3.308.869.883-3.226-.208-.33a8.718 8.718 0 0 1-1.336-4.652c.001-4.819 3.922-8.74 8.744-8.74a8.68 8.68 0 0 1 6.179 2.564 8.686 8.686 0 0 1 2.557 6.183c-.002 4.82-3.922 8.74-8.74 8.74zm7.44-16.18a10.449 10.449 0 0 0-7.44-3.084c-5.796 0-10.513 4.717-10.516 10.516 0 1.853.484 3.662 1.404 5.256l-1.492 5.45 5.574-1.463a10.504 10.504 0 0 0 5.026 1.28h.004c5.796 0 10.514-4.717 10.516-10.515a10.455 10.455 0 0 0-3.077-7.44z" fill="currentColor"/></svg>
86
-
86
+ <svg viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false">
87
+ <path fill="currentColor" d="M17.472 14.382c-.297-.149-1.758-.867-2.03-.967-.273-.099-.471-.148-.67.15-.197.297-.767.966-.94 1.164-.173.199-.347.223-.644.075-.297-.15-1.255-.463-2.39-1.475-.883-.788-1.48-1.761-1.653-2.059-.173-.297-.018-.458.13-.606.134-.133.298-.347.446-.52.149-.174.198-.298.298-.497.099-.198.05-.371-.025-.52-.075-.149-.669-1.612-.916-2.207-.242-.579-.487-.5-.669-.51-.173-.008-.371-.01-.57-.01-.198 0-.52.074-.792.372-.272.297-1.04 1.016-1.04 2.479 0 1.462 1.065 2.875 1.213 3.074.149.198 2.096 3.2 5.077 4.487.709.306 1.262.489 1.694.625.712.227 1.36.195 1.871.118.571-.085 1.758-.719 2.006-1.413.248-.694.248-1.289.173-1.413-.074-.124-.272-.198-.57-.347m-5.421 7.403h-.004a9.87 9.87 0 01-5.031-1.378l-.361-.214-3.741.982.998-3.648-.235-.374a9.86 9.86 0 01-1.51-5.26c.001-5.45 4.436-9.884 9.888-9.884 2.64 0 5.122 1.03 6.988 2.898a9.825 9.825 0 012.893 6.994c-.003 5.45-4.437 9.884-9.885 9.884m8.413-18.297A11.815 11.815 0 0012.05 0C5.495 0 .16 5.335.157 11.892c0 2.096.547 4.142 1.588 5.945L.057 24l6.305-1.654a11.882 11.882 0 005.683 1.448h.005c6.554 0 11.89-5.335 11.893-11.893a11.821 11.821 0 00-3.48-8.413Z"/>
88
+ </svg>
87
89
  <% else %>
88
- <svg xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="9 9 32 32" aria-hidden="true"><path fill="currentColor" d="M9 9h32v32H9V9z"/><path fill="#FFF" d="M12.84 14.12v19.2h5.76l5.76 5.76v-5.76h12.8v-19.2H12.84zm3.2 8.32H28.2V25H16.04v-2.56zm16 7.68h-16v-2.56h16v2.56zm1.92-10.24H16.04v-2.56h17.92v2.56z"/></svg>
89
-
90
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 73.84 73.84" aria-hidden="true" focusable="false">
91
+ <path fill="currentColor" d="M36.92,0A36.92,36.92,0,1,0,73.84,36.92,36.92,36.92,0,0,0,36.92,0ZM56.3,48.27a1.42,1.42,0,0,1-1.42,1.42h-19v9.18l-9.18-9.18H19a1.43,1.43,0,0,1-1.43-1.43V20.52A1.43,1.43,0,0,1,19,19.09H54.88a1.43,1.43,0,0,1,1.42,1.42Z"/>
92
+ </svg>
90
93
  <% end %>
91
94
  </span><%= link_text %><% end %>
92
95
  </li>
@@ -2,4 +2,4 @@
2
2
  href ||= '#main-content'
3
3
  text ||= t('components.skip_link.text')
4
4
  %>
5
- <%= link_to(text, href, class: "gem-c-skip-link govuk-skip-link govuk-!-display-none-print") %>
5
+ <%= link_to(text, href, class: "gem-c-skip-link govuk-skip-link govuk-!-display-none-print", data: { module: "govuk-skip-link" }) %>
@@ -9,7 +9,7 @@
9
9
  local_assigns[:margin_bottom] = 0 if local_assigns[:margin_bottom] > 9
10
10
 
11
11
  css_classes = %w( gem-c-subscription-links govuk-!-display-none-print )
12
- css_classes << (shared_helper.get_margin_bottom) unless local_assigns[:margin_bottom] == 0
12
+ css_classes << shared_helper.get_margin_bottom unless local_assigns[:margin_bottom] == 0
13
13
  css_classes << brand_helper.brand_class
14
14
  css_classes << "gem-c-subscription-links--with-feed-box" if sl_helper.feed_link_box_value
15
15
 
@@ -25,7 +25,7 @@
25
25
  css_classes << "govuk-textarea--error" if has_error
26
26
  form_group_css_classes = %w(gem-c-textarea govuk-form-group)
27
27
  form_group_css_classes << "govuk-form-group--error" if has_error
28
- form_group_css_classes << (shared_helper.get_margin_bottom)
28
+ form_group_css_classes << shared_helper.get_margin_bottom
29
29
 
30
30
  aria_described_by ||= nil
31
31
  if hint || has_error || describedby
@@ -13,8 +13,8 @@
13
13
 
14
14
  classes = %w[gem-c-title]
15
15
  classes << "gem-c-title--inverse" if inverse
16
- classes << (shared_helper.get_margin_top)
17
- classes << (shared_helper.get_margin_bottom)
16
+ classes << shared_helper.get_margin_top
17
+ classes << shared_helper.get_margin_bottom
18
18
 
19
19
  heading_classes = %w[gem-c-title__text]
20
20
  heading_classes << (average_title_length.present? ? 'govuk-heading-l' : 'govuk-heading-xl')
@@ -30,7 +30,7 @@
30
30
  <% if context && !context_inside %>
31
31
  <%= @context_block %>
32
32
  <% end %>
33
-
33
+
34
34
  <h1 class="<%= heading_classes.join(" ") %>">
35
35
  <% if context && context_inside %>
36
36
  <%= @context_block %>
@@ -296,11 +296,11 @@ examples:
296
296
  text: Writing well for the web
297
297
  id: writing-well-for-the-web
298
298
  content:
299
- html: <p class="govuk-body">This is the content for Writing well for the web.</p>
299
+ html: <p class="govuk-body">This is content for accordion 1 of 2</p><p class="govuk-body">This content contains a <a href="#anchor-nav-test" class="govuk-link">link</a></p>
300
300
  - heading:
301
301
  text: Writing well for specialists
302
302
  content:
303
- html: <p class="govuk-body">This is the content for Writing well for specialists.</p>
303
+ html: <p class="govuk-body" id="anchor-nav-test">This is content for accordion 2 of 2</p>
304
304
  - heading:
305
305
  text: Know your audience
306
306
  content:
@@ -309,98 +309,3 @@ examples:
309
309
  text: How people read
310
310
  content:
311
311
  html: <p class="govuk-body">This is the content for How people read.</p>
312
- condensed_layout:
313
- description: |
314
- This layout is for when a smaller accordion is required. Since smaller screens trigger a single column layout, this modifier only makes the accordion smaller when viewed on large screens.
315
- data:
316
- condensed: true
317
- items:
318
- - heading:
319
- text: Understanding agile project management
320
- content:
321
- html:
322
- '<ul class="govuk-list">
323
- <li>
324
- <a class="govuk-link govuk-body-s" href="#">Agile and government services: an introduction</a>
325
- </li>
326
- <li>
327
- <a class="govuk-link govuk-body-s" href="#">Agile methods: an introduction</a>
328
- </li>
329
- <li>
330
- <a class="govuk-link govuk-body-s" href="#">Core principles of agile</a>
331
- </li>
332
- </ul>'
333
- - heading:
334
- text: Working with agile methods
335
- summary:
336
- text: Workspaces, tools and techniques, user stories, planning.
337
- content:
338
- html:
339
- '<ul class="govuk-list">
340
- <li>
341
- <a class="govuk-link govuk-body-s" href="#">Creating an agile working environment</a>
342
- </li>
343
- <li>
344
- <a class="govuk-link govuk-body-s" href="#">Agile tools and techniques</a>
345
- </li>
346
- <li>
347
- <a class="govuk-link govuk-body-s" href="#">Set up a team wall</a>
348
- </li>
349
- <li>
350
- <a class="govuk-link govuk-body-s" href="#">Writing user stories</a>
351
- </li>
352
- <li>
353
- <a class="govuk-link govuk-body-s" href="#">Planning in agile</a>
354
- </li>
355
- <li>
356
- <a class="govuk-link govuk-body-s" href="#">Deciding on priorities</a>
357
- </li>
358
- <li>
359
- <a class="govuk-link govuk-body-s" href="#">Developing a roadmap</a>
360
- </li>
361
- </ul>'
362
- - heading:
363
- text: Governing agile services
364
- content:
365
- html:
366
- '<ul class="govuk-list">
367
- <li>
368
- <a class="govuk-link govuk-body-s" href="#">Governance principles for agile service delivery</a>
369
- </li>
370
- <li>
371
- <a class="govuk-link govuk-body-s" href="#">Measuring and reporting progress</a>
372
- </li>
373
- <li>
374
- <a class="govuk-link govuk-body-s" href="#">Spend controls: check if you need approval to spend money on a service</a>
375
- </li>
376
- <li>
377
- <a class="govuk-link govuk-body-s" href="#">Spend controls: apply for approval to spend money on a service</a>
378
- </li>
379
- <li>
380
- <a class="govuk-link govuk-body-s" href="#">Spend controls: the new pipeline process</a>
381
- </li>
382
- <li>
383
- <a class="govuk-link govuk-body-s" href="#">Working across organisational boundaries</a>
384
- </li>
385
- </ul>'
386
- - heading:
387
- text: Phases of an agile project
388
- content:
389
- html:
390
- '<ul class="govuk-list">
391
- <li>
392
- <a class="govuk-link govuk-body-s" href="#">How the discovery phase works</a>
393
- </li>
394
- <li>
395
- <a class="govuk-link govuk-body-s" href="#">How the alpha phase works</a>
396
- </li>
397
- <li>
398
- <a class="govuk-link govuk-body-s" href="#">How the beta phase works</a>
399
- </li>
400
- <li>
401
- <a class="govuk-link govuk-body-s" href="#">How the live phase works</a>
402
- </li>
403
- <li>
404
- <a class="govuk-link govuk-body-s" href="#">Retiring your service</a>
405
- </li>
406
- </ul>'
@@ -11,8 +11,6 @@ body: |
11
11
 
12
12
  It must always be used [with the contextual breadcrumbs component][contextual_breadcrumbs].
13
13
 
14
- The COVID CTA will displayed on all pages except for a few exemptions documented below.
15
-
16
14
  [preview]: /contextual-navigation
17
15
  [step-by-step]: /component-guide/step_by_step_nav
18
16
  [related_navigation]: /component-guide/related_navigation
@@ -114,48 +112,3 @@ examples:
114
112
  - content_id: "2f8b848d-23c8-4f42-a41a-df1f81c64d0f"
115
113
  title: "Exporting"
116
114
  phase: "live"
117
- with_covid_cta_taxon_exception:
118
- description: The COVID Booster call to action element is not displayed on content tagged to taxons in `covid_booster_cta_taxon_exception_list`.
119
- data:
120
- content_item:
121
- title: "A content item"
122
- links:
123
- taxons:
124
- - content_id: ac7b8472-5d09-4679-9551-87847b0ac827
125
- title: "Not Covid"
126
- phase: "live"
127
- ordered_related_items:
128
- - title: Find an apprenticeship
129
- base_path: /apply-apprenticeship
130
- - title: Training and study at work
131
- base_path: /training-study-work-your-rights
132
- - title: Careers helpline for teenagers
133
- base_path: /careers-helpline-for-teenagers
134
- document_collections:
135
- - title: Recruit an apprentice (formerly apprenticeship vacancies)
136
- base_path: /government/collections/apprenticeship-vacancies
137
- document_type: document_collection
138
- - title: The future of jobs and skills
139
- base_path: /government/collections/the-future-of-jobs-and-skills
140
- document_type: document_collection
141
- with_covid_cta_document_type_exception:
142
- description: Illustrates an exception to showing the custom COVID Booster call to action element as defined in `covid_booster_cta_document_type_exceptions`.
143
- data:
144
- content_item:
145
- title: "A content item"
146
- document_type: smart_answer
147
- links:
148
- ordered_related_items:
149
- - title: Find an apprenticeship
150
- base_path: /apply-apprenticeship
151
- - title: Training and study at work
152
- base_path: /training-study-work-your-rights
153
- - title: Careers helpline for teenagers
154
- base_path: /careers-helpline-for-teenagers
155
- document_collections:
156
- - title: Recruit an apprentice (formerly apprenticeship vacancies)
157
- base_path: /government/collections/apprenticeship-vacancies
158
- document_type: document_collection
159
- - title: The future of jobs and skills
160
- base_path: /government/collections/the-future-of-jobs-and-skills
161
- document_type: document_collection
@@ -816,7 +816,7 @@ examples:
816
816
  block: |
817
817
  <p>
818
818
  <a role="button" class="gem-c-button govuk-button" href="https://gov.uk/random">Button</a>
819
- <a class="gem-c-button govuk-button govuk-button--start" role="button" href="https://gov.uk/random"> Start button <svg class="govuk-button__start-icon" xmlns="http://www.w3.org/2000/svg" width="17.5" height="19" viewBox="0 0 33 40" role="presentation" focusable="false"><path fill="currentColor" d="M0 0h13l20 20-20 20H0l20-20z"></path></svg></a>
819
+ <a class="gem-c-button govuk-button govuk-button--start" role="button" href="https://gov.uk/random"> Start button <svg class="govuk-button__start-icon" xmlns="http://www.w3.org/2000/svg" width="17.5" height="19" viewBox="0 0 33 40" aria-hidden="true" focusable="false"><path fill="currentColor" d="M0 0h13l20 20-20 20H0l20-20z"></path></svg></a>
820
820
  </p>
821
821
  image:
822
822
  data:
@@ -18,3 +18,9 @@ examples:
18
18
  <h2 class="govuk-heading-m" id='heading'>To publish this step by step you need to</h2>
19
19
  <a class="govuk-link" href='/foo'>Check for broken links</a>
20
20
  </div>
21
+ with_custom_margins:
22
+ description: The component accepts a number for margin bottom from 0 to 9 (0px to 60px) using the [GOV.UK Frontend spacing scale](https://design-system.service.gov.uk/styles/spacing/#the-responsive-spacing-scale). It defaults to having margin of 6 (30px) top and bottom.
23
+ data:
24
+ text: "When a failure occurs, you must submit logbook, landing and transhipment data manually to the UK Fisheries Call Centre each day and by no later than 23.59 UTC"
25
+ margin_top: 0
26
+ margin_bottom: 9
@@ -42,6 +42,18 @@ examples:
42
42
  selected: true
43
43
  - text: 'Option three'
44
44
  value: 'option3'
45
+ with_hint:
46
+ description: When a hint is included the `aria-describedby` attribute of the select is included to point to the hint. When an error and a hint are present, that attribute includes the IDs of both the hint and the error.
47
+ data:
48
+ id: 'dropdown2-1'
49
+ label: 'Choose your preferred thing'
50
+ hint_text: 'You might need some more information here'
51
+ hint_id: 'optional-hint-id'
52
+ options:
53
+ - text: 'Something'
54
+ value: 'option1'
55
+ - text: 'Something else'
56
+ value: 'option2'
45
57
  with_tracking:
46
58
  description: 'Tracking can be enabled on the select component by passing a minimum of data_track_category and data_track_action. Other tracking attributes are optional. Note: tracking events do not currently fire within the component guide.'
47
59
  data:
@@ -125,7 +125,7 @@ examples:
125
125
  },
126
126
  {
127
127
  href: '/email-share-link',
128
- text: 'Share on email to someone you know',
128
+ text: 'Email',
129
129
  icon: 'email'
130
130
  },
131
131
  {