govuk_publishing_components 32.1.0 → 35.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (496) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +1 -0
  3. data/app/assets/config/govuk_publishing_components_manifest.js +75 -1
  4. data/app/assets/images/govuk_publishing_components/icon-search.svg +3 -0
  5. data/app/assets/images/govuk_publishing_components/youtube-play-icon.png +0 -0
  6. data/app/assets/images/govuk_publishing_components/youtube-play-icon.svg +4 -0
  7. data/app/assets/javascripts/component_guide/accessibility-test.js +0 -1
  8. data/app/assets/javascripts/govuk_publishing_components/analytics/auto-scroll-tracker.js +2 -1
  9. data/app/assets/javascripts/govuk_publishing_components/analytics/linked-domains.js +135 -0
  10. data/app/assets/javascripts/govuk_publishing_components/analytics-ga4/ga4-auto-tracker.js +49 -0
  11. data/app/assets/javascripts/govuk_publishing_components/analytics-ga4/ga4-core.js +341 -27
  12. data/app/assets/javascripts/govuk_publishing_components/analytics-ga4/ga4-ecommerce-tracker.js +17 -92
  13. data/app/assets/javascripts/govuk_publishing_components/analytics-ga4/ga4-event-tracker.js +11 -23
  14. data/app/assets/javascripts/govuk_publishing_components/analytics-ga4/ga4-form-tracker.js +121 -0
  15. data/app/assets/javascripts/govuk_publishing_components/analytics-ga4/ga4-link-tracker.js +86 -305
  16. data/app/assets/javascripts/govuk_publishing_components/analytics-ga4/ga4-page-views.js +13 -6
  17. data/app/assets/javascripts/govuk_publishing_components/analytics-ga4/ga4-schemas.js +31 -1
  18. data/app/assets/javascripts/govuk_publishing_components/analytics-ga4/ga4-smart-answer-results-tracker.js +57 -0
  19. data/app/assets/javascripts/govuk_publishing_components/analytics-ga4/ga4-specialist-link-tracker.js +131 -0
  20. data/app/assets/javascripts/govuk_publishing_components/analytics-ga4/init-ga4.js +9 -4
  21. data/app/assets/javascripts/govuk_publishing_components/analytics-ga4/pii-remover.js +4 -2
  22. data/app/assets/javascripts/govuk_publishing_components/analytics-ga4.js +4 -0
  23. data/app/assets/javascripts/govuk_publishing_components/components/accordion.js +12 -1
  24. data/app/assets/javascripts/govuk_publishing_components/components/cookie-banner.js +2 -2
  25. data/app/assets/javascripts/govuk_publishing_components/components/image-card.js +19 -0
  26. data/app/assets/javascripts/govuk_publishing_components/components/layout-super-navigation-header.js +2 -81
  27. data/app/assets/javascripts/govuk_publishing_components/components/single-page-notification-button.js +24 -8
  28. data/app/assets/javascripts/govuk_publishing_components/components/step-by-step-nav.js +23 -1
  29. data/app/assets/javascripts/govuk_publishing_components/dependencies.js +13 -0
  30. data/app/assets/javascripts/govuk_publishing_components/lib/govspeak/youtube-link-enhancement.js +3 -2
  31. data/app/assets/javascripts/govuk_publishing_components/lib/trigger-event.js +1 -0
  32. data/app/assets/javascripts/govuk_publishing_components/load-analytics.js +116 -0
  33. data/app/assets/javascripts/govuk_publishing_components/modules.js +7 -2
  34. data/app/assets/javascripts/govuk_publishing_components/vendor/lux/lux-reporter.js +140 -191
  35. data/app/assets/stylesheets/govuk_publishing_components/_individual_component_support.scss +10 -0
  36. data/app/assets/stylesheets/govuk_publishing_components/components/_accordion.scss +29 -0
  37. data/app/assets/stylesheets/govuk_publishing_components/components/_action-link.scss +2 -0
  38. data/app/assets/stylesheets/govuk_publishing_components/components/_attachment.scss +2 -0
  39. data/app/assets/stylesheets/govuk_publishing_components/components/_back-link.scss +1 -0
  40. data/app/assets/stylesheets/govuk_publishing_components/components/_big-number.scss +4 -5
  41. data/app/assets/stylesheets/govuk_publishing_components/components/_breadcrumbs.scss +1 -0
  42. data/app/assets/stylesheets/govuk_publishing_components/components/_button.scss +12 -0
  43. data/app/assets/stylesheets/govuk_publishing_components/components/_cards.scss +20 -0
  44. data/app/assets/stylesheets/govuk_publishing_components/components/_character-count.scss +1 -0
  45. data/app/assets/stylesheets/govuk_publishing_components/components/_checkboxes.scss +1 -0
  46. data/app/assets/stylesheets/govuk_publishing_components/components/_contents-list.scss +21 -0
  47. data/app/assets/stylesheets/govuk_publishing_components/components/_contextual-guidance.scss +2 -0
  48. data/app/assets/stylesheets/govuk_publishing_components/components/_contextual-sidebar.scss +2 -0
  49. data/app/assets/stylesheets/govuk_publishing_components/components/_cookie-banner.scss +7 -0
  50. data/app/assets/stylesheets/govuk_publishing_components/components/_date-input.scss +1 -0
  51. data/app/assets/stylesheets/govuk_publishing_components/components/_details.scss +1 -0
  52. data/app/assets/stylesheets/govuk_publishing_components/components/_devolved-nations.scss +2 -0
  53. data/app/assets/stylesheets/govuk_publishing_components/components/_document-list.scss +8 -0
  54. data/app/assets/stylesheets/govuk_publishing_components/components/_emergency-banner.scss +8 -0
  55. data/app/assets/stylesheets/govuk_publishing_components/components/_error-alert.scss +2 -0
  56. data/app/assets/stylesheets/govuk_publishing_components/components/_error-message.scss +1 -0
  57. data/app/assets/stylesheets/govuk_publishing_components/components/_error-summary.scss +1 -0
  58. data/app/assets/stylesheets/govuk_publishing_components/components/_feedback.scss +17 -19
  59. data/app/assets/stylesheets/govuk_publishing_components/components/_fieldset.scss +1 -0
  60. data/app/assets/stylesheets/govuk_publishing_components/components/_file-upload.scss +1 -0
  61. data/app/assets/stylesheets/govuk_publishing_components/components/_govspeak-html-publication.scss +10 -0
  62. data/app/assets/stylesheets/govuk_publishing_components/components/_govspeak.scss +85 -0
  63. data/app/assets/stylesheets/govuk_publishing_components/components/_heading.scss +2 -0
  64. data/app/assets/stylesheets/govuk_publishing_components/components/_hint.scss +1 -0
  65. data/app/assets/stylesheets/govuk_publishing_components/components/_image-card.scss +85 -6
  66. data/app/assets/stylesheets/govuk_publishing_components/components/_input.scss +6 -6
  67. data/app/assets/stylesheets/govuk_publishing_components/components/_inset-text.scss +1 -0
  68. data/app/assets/stylesheets/govuk_publishing_components/components/_intervention.scss +2 -0
  69. data/app/assets/stylesheets/govuk_publishing_components/components/_inverse-header.scss +2 -0
  70. data/app/assets/stylesheets/govuk_publishing_components/components/_label.scss +1 -0
  71. data/app/assets/stylesheets/govuk_publishing_components/components/_layout-footer.scss +1 -0
  72. data/app/assets/stylesheets/govuk_publishing_components/components/_layout-for-public.scss +2 -0
  73. data/app/assets/stylesheets/govuk_publishing_components/components/_layout-super-navigation-header.scss +253 -483
  74. data/app/assets/stylesheets/govuk_publishing_components/components/_lead-paragraph.scss +2 -0
  75. data/app/assets/stylesheets/govuk_publishing_components/components/_metadata.scss +2 -0
  76. data/app/assets/stylesheets/govuk_publishing_components/components/_modal-dialogue.scss +2 -0
  77. data/app/assets/stylesheets/govuk_publishing_components/components/_notice.scss +1 -0
  78. data/app/assets/stylesheets/govuk_publishing_components/components/_organisation-logo.scss +2 -0
  79. data/app/assets/stylesheets/govuk_publishing_components/components/_panel.scss +1 -0
  80. data/app/assets/stylesheets/govuk_publishing_components/components/_phase-banner.scss +1 -0
  81. data/app/assets/stylesheets/govuk_publishing_components/components/_previous-and-next-navigation.scss +1 -0
  82. data/app/assets/stylesheets/govuk_publishing_components/components/_print-link.scss +2 -0
  83. data/app/assets/stylesheets/govuk_publishing_components/components/_radio.scss +1 -0
  84. data/app/assets/stylesheets/govuk_publishing_components/components/_related-navigation.scss +2 -0
  85. data/app/assets/stylesheets/govuk_publishing_components/components/_reorderable-list.scss +2 -0
  86. data/app/assets/stylesheets/govuk_publishing_components/components/_search.scss +2 -7
  87. data/app/assets/stylesheets/govuk_publishing_components/components/_select.scss +1 -0
  88. data/app/assets/stylesheets/govuk_publishing_components/components/_share-links.scss +2 -0
  89. data/app/assets/stylesheets/govuk_publishing_components/components/_show-password.scss +2 -0
  90. data/app/assets/stylesheets/govuk_publishing_components/components/_signup-link.scss +2 -0
  91. data/app/assets/stylesheets/govuk_publishing_components/components/_single-page-notification-button.scss +2 -0
  92. data/app/assets/stylesheets/govuk_publishing_components/components/_skip-link.scss +1 -0
  93. data/app/assets/stylesheets/govuk_publishing_components/components/_step-by-step-nav-header.scss +17 -0
  94. data/app/assets/stylesheets/govuk_publishing_components/components/_step-by-step-nav-related.scss +2 -0
  95. data/app/assets/stylesheets/govuk_publishing_components/components/_step-by-step-nav.scss +8 -0
  96. data/app/assets/stylesheets/govuk_publishing_components/components/_subscription-links.scss +2 -1
  97. data/app/assets/stylesheets/govuk_publishing_components/components/_success-alert.scss +1 -0
  98. data/app/assets/stylesheets/govuk_publishing_components/components/_summary-list.scss +1 -0
  99. data/app/assets/stylesheets/govuk_publishing_components/components/_table.scss +1 -0
  100. data/app/assets/stylesheets/govuk_publishing_components/components/_tabs.scss +1 -0
  101. data/app/assets/stylesheets/govuk_publishing_components/components/_textarea.scss +17 -0
  102. data/app/assets/stylesheets/govuk_publishing_components/components/_title.scss +12 -0
  103. data/app/assets/stylesheets/govuk_publishing_components/components/_translation-nav.scss +2 -0
  104. data/app/assets/stylesheets/govuk_publishing_components/components/_warning-text.scss +1 -0
  105. data/app/assets/stylesheets/govuk_publishing_components/components/govspeak/_steps.scss +26 -9
  106. data/app/assets/stylesheets/govuk_publishing_components/components/govspeak/_tables.scss +12 -0
  107. data/app/assets/stylesheets/govuk_publishing_components/components/helpers/_brand-colours.scss +2 -2
  108. data/app/assets/stylesheets/govuk_publishing_components/components/helpers/_contents-list-helper.scss +0 -1
  109. data/app/controllers/govuk_publishing_components/application_controller.rb +0 -13
  110. data/app/controllers/govuk_publishing_components/audit_controller.rb +1 -1
  111. data/app/controllers/govuk_publishing_components/component_guide_controller.rb +6 -9
  112. data/app/models/govuk_publishing_components/audit_applications.rb +10 -19
  113. data/app/models/govuk_publishing_components/audit_comparer.rb +29 -24
  114. data/app/models/govuk_publishing_components/audit_components.rb +157 -82
  115. data/app/models/govuk_publishing_components/component_doc.rb +14 -0
  116. data/app/models/govuk_publishing_components/component_wrapper_helper_options.rb +15 -0
  117. data/app/views/govuk_publishing_components/audit/_applications.html.erb +3 -3
  118. data/app/views/govuk_publishing_components/audit/_component_contents.html.erb +47 -39
  119. data/app/views/govuk_publishing_components/audit/_components.html.erb +47 -2
  120. data/app/views/govuk_publishing_components/component_guide/_application_stylesheet.html.erb +0 -3
  121. data/app/views/govuk_publishing_components/component_guide/index.html.erb +0 -7
  122. data/app/views/govuk_publishing_components/component_guide/show.html.erb +21 -6
  123. data/app/views/govuk_publishing_components/components/_accordion.html.erb +30 -36
  124. data/app/views/govuk_publishing_components/components/_action_link.html.erb +7 -2
  125. data/app/views/govuk_publishing_components/components/_attachment.html.erb +2 -0
  126. data/app/views/govuk_publishing_components/components/_attachment_link.html.erb +2 -0
  127. data/app/views/govuk_publishing_components/components/_back_link.html.erb +2 -0
  128. data/app/views/govuk_publishing_components/components/_big_number.html.erb +3 -1
  129. data/app/views/govuk_publishing_components/components/_breadcrumbs.html.erb +8 -2
  130. data/app/views/govuk_publishing_components/components/_button.html.erb +2 -0
  131. data/app/views/govuk_publishing_components/components/_cards.html.erb +6 -4
  132. data/app/views/govuk_publishing_components/components/_character_count.html.erb +2 -0
  133. data/app/views/govuk_publishing_components/components/_checkboxes.html.erb +6 -2
  134. data/app/views/govuk_publishing_components/components/_contents_list.html.erb +11 -15
  135. data/app/views/govuk_publishing_components/components/_contextual_breadcrumbs.html.erb +7 -4
  136. data/app/views/govuk_publishing_components/components/_contextual_footer.html.erb +2 -0
  137. data/app/views/govuk_publishing_components/components/_contextual_guidance.html.erb +2 -0
  138. data/app/views/govuk_publishing_components/components/_contextual_sidebar.html.erb +13 -6
  139. data/app/views/govuk_publishing_components/components/_cookie_banner.html.erb +12 -6
  140. data/app/views/govuk_publishing_components/components/_date_input.html.erb +2 -0
  141. data/app/views/govuk_publishing_components/components/_details.html.erb +5 -1
  142. data/app/views/govuk_publishing_components/components/_devolved_nations.html.erb +2 -0
  143. data/app/views/govuk_publishing_components/components/_document_list.html.erb +3 -0
  144. data/app/views/govuk_publishing_components/components/_emergency_banner.html.erb +2 -0
  145. data/app/views/govuk_publishing_components/components/_error_alert.html.erb +2 -0
  146. data/app/views/govuk_publishing_components/components/_error_message.html.erb +4 -1
  147. data/app/views/govuk_publishing_components/components/_error_summary.html.erb +29 -26
  148. data/app/views/govuk_publishing_components/components/_feedback.html.erb +2 -0
  149. data/app/views/govuk_publishing_components/components/_fieldset.html.erb +2 -0
  150. data/app/views/govuk_publishing_components/components/_file_upload.html.erb +2 -0
  151. data/app/views/govuk_publishing_components/components/_google_tag_manager_script.html.erb +2 -2
  152. data/app/views/govuk_publishing_components/components/_govspeak.html.erb +1 -0
  153. data/app/views/govuk_publishing_components/components/_govspeak_html_publication.html.erb +2 -0
  154. data/app/views/govuk_publishing_components/components/_heading.html.erb +2 -0
  155. data/app/views/govuk_publishing_components/components/_hint.html.erb +4 -1
  156. data/app/views/govuk_publishing_components/components/_image_card.html.erb +17 -12
  157. data/app/views/govuk_publishing_components/components/_input.html.erb +10 -2
  158. data/app/views/govuk_publishing_components/components/_inset_text.html.erb +2 -0
  159. data/app/views/govuk_publishing_components/components/_intervention.html.erb +2 -0
  160. data/app/views/govuk_publishing_components/components/_inverse_header.html.erb +2 -0
  161. data/app/views/govuk_publishing_components/components/_label.html.erb +7 -3
  162. data/app/views/govuk_publishing_components/components/_layout_footer.html.erb +2 -0
  163. data/app/views/govuk_publishing_components/components/_layout_for_admin.html.erb +8 -5
  164. data/app/views/govuk_publishing_components/components/_layout_for_public.html.erb +8 -3
  165. data/app/views/govuk_publishing_components/components/_layout_header.html.erb +2 -0
  166. data/app/views/govuk_publishing_components/components/_layout_super_navigation_header.html.erb +238 -267
  167. data/app/views/govuk_publishing_components/components/_lead_paragraph.html.erb +2 -0
  168. data/app/views/govuk_publishing_components/components/_metadata.html.erb +2 -0
  169. data/app/views/govuk_publishing_components/components/_modal_dialogue.html.erb +2 -0
  170. data/app/views/govuk_publishing_components/components/_notice.html.erb +2 -0
  171. data/app/views/govuk_publishing_components/components/_organisation_logo.html.erb +2 -0
  172. data/app/views/govuk_publishing_components/components/_panel.html.erb +2 -0
  173. data/app/views/govuk_publishing_components/components/_phase_banner.html.erb +3 -1
  174. data/app/views/govuk_publishing_components/components/_previous_and_next_navigation.html.erb +6 -1
  175. data/app/views/govuk_publishing_components/components/_print_link.html.erb +2 -0
  176. data/app/views/govuk_publishing_components/components/_radio.html.erb +2 -0
  177. data/app/views/govuk_publishing_components/components/_related_navigation.html.erb +16 -6
  178. data/app/views/govuk_publishing_components/components/_reorderable_list.html.erb +2 -0
  179. data/app/views/govuk_publishing_components/components/_search.html.erb +2 -0
  180. data/app/views/govuk_publishing_components/components/_select.html.erb +2 -0
  181. data/app/views/govuk_publishing_components/components/_share_links.html.erb +13 -13
  182. data/app/views/govuk_publishing_components/components/_show_password.html.erb +2 -0
  183. data/app/views/govuk_publishing_components/components/_signup_link.html.erb +2 -0
  184. data/app/views/govuk_publishing_components/components/_single_page_notification_button.html.erb +8 -2
  185. data/app/views/govuk_publishing_components/components/_skip_link.html.erb +2 -0
  186. data/app/views/govuk_publishing_components/components/_step_by_step_nav.html.erb +8 -1
  187. data/app/views/govuk_publishing_components/components/_step_by_step_nav_header.html.erb +12 -2
  188. data/app/views/govuk_publishing_components/components/_step_by_step_nav_related.html.erb +21 -8
  189. data/app/views/govuk_publishing_components/components/_subscription_links.html.erb +3 -1
  190. data/app/views/govuk_publishing_components/components/_success_alert.html.erb +2 -0
  191. data/app/views/govuk_publishing_components/components/_summary_list.html.erb +2 -0
  192. data/app/views/govuk_publishing_components/components/_table.html.erb +3 -1
  193. data/app/views/govuk_publishing_components/components/_tabs.html.erb +22 -2
  194. data/app/views/govuk_publishing_components/components/_textarea.html.erb +12 -2
  195. data/app/views/govuk_publishing_components/components/_title.html.erb +2 -0
  196. data/app/views/govuk_publishing_components/components/_translation_nav.html.erb +2 -0
  197. data/app/views/govuk_publishing_components/components/_warning_text.html.erb +2 -0
  198. data/app/views/govuk_publishing_components/components/contextual_sidebar/_ukraine_cta.html.erb +16 -6
  199. data/app/views/govuk_publishing_components/components/docs/accordion.yml +16 -3
  200. data/app/views/govuk_publishing_components/components/docs/action_link.yml +1 -0
  201. data/app/views/govuk_publishing_components/components/docs/breadcrumbs.yml +2 -1
  202. data/app/views/govuk_publishing_components/components/docs/button.yml +10 -0
  203. data/app/views/govuk_publishing_components/components/docs/cards.yml +1 -0
  204. data/app/views/govuk_publishing_components/components/docs/checkboxes.yml +1 -0
  205. data/app/views/govuk_publishing_components/components/docs/contents_list.yml +1 -12
  206. data/app/views/govuk_publishing_components/components/docs/contextual_breadcrumbs.yml +13 -0
  207. data/app/views/govuk_publishing_components/components/docs/contextual_footer.yml +43 -0
  208. data/app/views/govuk_publishing_components/components/docs/contextual_sidebar.yml +65 -0
  209. data/app/views/govuk_publishing_components/components/docs/details.yml +17 -0
  210. data/app/views/govuk_publishing_components/components/docs/document_list.yml +18 -1
  211. data/app/views/govuk_publishing_components/components/docs/emergency_banner.yml +3 -1
  212. data/app/views/govuk_publishing_components/components/docs/error_message.yml +13 -0
  213. data/app/views/govuk_publishing_components/components/docs/govspeak.yml +22 -1
  214. data/app/views/govuk_publishing_components/components/docs/hint.yml +6 -0
  215. data/app/views/govuk_publishing_components/components/docs/image_card.yml +24 -1
  216. data/app/views/govuk_publishing_components/components/docs/input.yml +32 -0
  217. data/app/views/govuk_publishing_components/components/docs/intervention.yml +2 -1
  218. data/app/views/govuk_publishing_components/components/docs/label.yml +17 -0
  219. data/app/views/govuk_publishing_components/components/docs/layout_header.yml +1 -0
  220. data/app/views/govuk_publishing_components/components/docs/previous_and_next_navigation.yml +2 -0
  221. data/app/views/govuk_publishing_components/components/docs/related_navigation.yml +47 -0
  222. data/app/views/govuk_publishing_components/components/docs/share_links.yml +59 -30
  223. data/app/views/govuk_publishing_components/components/docs/single_page_notification_button.yml +16 -1
  224. data/app/views/govuk_publishing_components/components/docs/step_by_step_nav.yml +54 -0
  225. data/app/views/govuk_publishing_components/components/docs/step_by_step_nav_header.yml +6 -0
  226. data/app/views/govuk_publishing_components/components/docs/step_by_step_nav_related.yml +10 -0
  227. data/app/views/govuk_publishing_components/components/docs/tabs.yml +15 -0
  228. data/app/views/govuk_publishing_components/components/docs/textarea.yml +31 -0
  229. data/app/views/govuk_publishing_components/components/docs/translation_nav.yml +2 -0
  230. data/app/views/govuk_publishing_components/components/feedback/_problem_form.html.erb +3 -3
  231. data/app/views/govuk_publishing_components/components/feedback/_survey_signup_form.html.erb +1 -1
  232. data/app/views/govuk_publishing_components/components/feedback/_yes_no_banner.html.erb +4 -5
  233. data/app/views/govuk_publishing_components/components/metadata/_sentence.html.erb +4 -2
  234. data/app/views/govuk_publishing_components/components/related_navigation/_section.html.erb +36 -16
  235. data/app/views/layouts/govuk_publishing_components/application.html.erb +3 -4
  236. data/config/locales/ar.yml +14 -14
  237. data/config/locales/az.yml +15 -14
  238. data/config/locales/be.yml +14 -14
  239. data/config/locales/bg.yml +14 -14
  240. data/config/locales/bn.yml +14 -14
  241. data/config/locales/cs.yml +14 -14
  242. data/config/locales/cy.yml +14 -14
  243. data/config/locales/da.yml +14 -14
  244. data/config/locales/de.yml +14 -14
  245. data/config/locales/dr.yml +14 -14
  246. data/config/locales/el.yml +14 -14
  247. data/config/locales/en.yml +21 -28
  248. data/config/locales/es-419.yml +14 -14
  249. data/config/locales/es.yml +14 -14
  250. data/config/locales/et.yml +14 -14
  251. data/config/locales/fa.yml +15 -14
  252. data/config/locales/fi.yml +14 -14
  253. data/config/locales/fr.yml +14 -14
  254. data/config/locales/gd.yml +14 -14
  255. data/config/locales/gu.yml +14 -14
  256. data/config/locales/he.yml +14 -14
  257. data/config/locales/hi.yml +14 -14
  258. data/config/locales/hr.yml +14 -14
  259. data/config/locales/hu.yml +14 -14
  260. data/config/locales/hy.yml +14 -14
  261. data/config/locales/id.yml +14 -14
  262. data/config/locales/is.yml +14 -14
  263. data/config/locales/it.yml +14 -14
  264. data/config/locales/ja.yml +14 -14
  265. data/config/locales/ka.yml +14 -14
  266. data/config/locales/kk.yml +14 -14
  267. data/config/locales/ko.yml +14 -14
  268. data/config/locales/lt.yml +14 -14
  269. data/config/locales/lv.yml +14 -14
  270. data/config/locales/ms.yml +14 -14
  271. data/config/locales/mt.yml +14 -14
  272. data/config/locales/nl.yml +14 -14
  273. data/config/locales/no.yml +14 -14
  274. data/config/locales/pa-pk.yml +14 -14
  275. data/config/locales/pa.yml +14 -14
  276. data/config/locales/pl.yml +14 -14
  277. data/config/locales/ps.yml +14 -14
  278. data/config/locales/pt.yml +14 -14
  279. data/config/locales/ro.yml +14 -14
  280. data/config/locales/ru.yml +14 -14
  281. data/config/locales/si.yml +14 -14
  282. data/config/locales/sk.yml +14 -14
  283. data/config/locales/sl.yml +14 -14
  284. data/config/locales/so.yml +14 -14
  285. data/config/locales/sq.yml +14 -14
  286. data/config/locales/sr.yml +14 -14
  287. data/config/locales/sv.yml +14 -14
  288. data/config/locales/sw.yml +14 -14
  289. data/config/locales/ta.yml +14 -14
  290. data/config/locales/th.yml +14 -14
  291. data/config/locales/tk.yml +14 -14
  292. data/config/locales/tr.yml +14 -14
  293. data/config/locales/uk.yml +14 -14
  294. data/config/locales/ur.yml +14 -14
  295. data/config/locales/uz.yml +14 -14
  296. data/config/locales/vi.yml +14 -14
  297. data/config/locales/zh-hk.yml +14 -14
  298. data/config/locales/zh-tw.yml +14 -14
  299. data/config/locales/zh.yml +14 -14
  300. data/lib/govuk_publishing_components/app_helpers/asset_helper.rb +86 -0
  301. data/lib/govuk_publishing_components/config.rb +3 -3
  302. data/lib/govuk_publishing_components/presenters/accordion_helper.rb +38 -0
  303. data/lib/govuk_publishing_components/presenters/breadcrumb_selector.rb +3 -2
  304. data/lib/govuk_publishing_components/presenters/{breadcrumbs.rb → breadcrumbs_helper.rb} +8 -0
  305. data/lib/govuk_publishing_components/presenters/button_helper.rb +9 -2
  306. data/lib/govuk_publishing_components/presenters/component_wrapper_helper.rb +95 -0
  307. data/lib/govuk_publishing_components/presenters/image_card_helper.rb +65 -2
  308. data/lib/govuk_publishing_components/presenters/page_with_step_by_step_navigation.rb +3 -2
  309. data/lib/govuk_publishing_components/presenters/related_navigation_helper.rb +16 -7
  310. data/lib/govuk_publishing_components/presenters/single_page_notification_button_helper.rb +43 -2
  311. data/lib/govuk_publishing_components/presenters/step_by_step_nav_helper.rb +16 -0
  312. data/lib/govuk_publishing_components/railtie.rb +7 -0
  313. data/lib/govuk_publishing_components/version.rb +1 -1
  314. data/lib/govuk_publishing_components.rb +6 -1
  315. data/node_modules/axe-core/README.md +1 -1
  316. data/node_modules/axe-core/axe.d.ts +76 -24
  317. data/node_modules/axe-core/axe.js +9200 -9059
  318. data/node_modules/axe-core/axe.min.js +3 -3
  319. data/node_modules/axe-core/package.json +29 -29
  320. data/node_modules/axe-core/sri-history.json +20 -0
  321. data/node_modules/govuk-frontend/README.md +1 -2
  322. data/node_modules/govuk-frontend/govuk/all.js +4035 -2673
  323. data/node_modules/govuk-frontend/govuk/all.js.map +1 -0
  324. data/node_modules/govuk-frontend/govuk/common/closest-attribute-value.js +71 -0
  325. data/node_modules/govuk-frontend/govuk/common/closest-attribute-value.js.map +1 -0
  326. data/node_modules/govuk-frontend/govuk/common/index.js +180 -0
  327. data/node_modules/govuk-frontend/govuk/common/index.js.map +1 -0
  328. data/node_modules/govuk-frontend/govuk/common/normalise-dataset.js +376 -0
  329. data/node_modules/govuk-frontend/govuk/common/normalise-dataset.js.map +1 -0
  330. data/node_modules/govuk-frontend/govuk/common.js +173 -30
  331. data/node_modules/govuk-frontend/govuk/common.js.map +1 -0
  332. data/node_modules/govuk-frontend/govuk/components/_all.scss +1 -1
  333. data/node_modules/govuk-frontend/govuk/components/accordion/_index.scss +23 -4
  334. data/node_modules/govuk-frontend/govuk/components/accordion/accordion.js +2116 -983
  335. data/node_modules/govuk-frontend/govuk/components/accordion/accordion.js.map +1 -0
  336. data/node_modules/govuk-frontend/govuk/components/accordion/fixtures.json +54 -22
  337. data/node_modules/govuk-frontend/govuk/components/accordion/macro-options.json +36 -0
  338. data/node_modules/govuk-frontend/govuk/components/accordion/template.njk +8 -2
  339. data/node_modules/govuk-frontend/govuk/components/back-link/_index.scss +19 -19
  340. data/node_modules/govuk-frontend/govuk/components/back-link/fixtures.json +12 -12
  341. data/node_modules/govuk-frontend/govuk/components/breadcrumbs/_index.scss +21 -10
  342. data/node_modules/govuk-frontend/govuk/components/breadcrumbs/fixtures.json +22 -22
  343. data/node_modules/govuk-frontend/govuk/components/button/_index.scss +23 -5
  344. data/node_modules/govuk-frontend/govuk/components/button/button.js +958 -690
  345. data/node_modules/govuk-frontend/govuk/components/button/button.js.map +1 -0
  346. data/node_modules/govuk-frontend/govuk/components/button/fixtures.json +85 -66
  347. data/node_modules/govuk-frontend/govuk/components/button/template.njk +1 -1
  348. data/node_modules/govuk-frontend/govuk/components/character-count/_index.scss +9 -0
  349. data/node_modules/govuk-frontend/govuk/components/character-count/character-count.js +2083 -1161
  350. data/node_modules/govuk-frontend/govuk/components/character-count/character-count.js.map +1 -0
  351. data/node_modules/govuk-frontend/govuk/components/character-count/fixtures.json +112 -36
  352. data/node_modules/govuk-frontend/govuk/components/character-count/macro-options.json +42 -0
  353. data/node_modules/govuk-frontend/govuk/components/character-count/template.njk +27 -3
  354. data/node_modules/govuk-frontend/govuk/components/checkboxes/checkboxes.js +1155 -1119
  355. data/node_modules/govuk-frontend/govuk/components/checkboxes/checkboxes.js.map +1 -0
  356. data/node_modules/govuk-frontend/govuk/components/checkboxes/fixtures.json +96 -93
  357. data/node_modules/govuk-frontend/govuk/components/cookie-banner/fixtures.json +46 -46
  358. data/node_modules/govuk-frontend/govuk/components/cookie-banner/template.njk +1 -1
  359. data/node_modules/govuk-frontend/govuk/components/date-input/fixtures.json +50 -50
  360. data/node_modules/govuk-frontend/govuk/components/details/details.js +797 -766
  361. data/node_modules/govuk-frontend/govuk/components/details/details.js.map +1 -0
  362. data/node_modules/govuk-frontend/govuk/components/details/fixtures.json +20 -20
  363. data/node_modules/govuk-frontend/govuk/components/error-message/fixtures.json +20 -20
  364. data/node_modules/govuk-frontend/govuk/components/error-summary/error-summary.js +1089 -814
  365. data/node_modules/govuk-frontend/govuk/components/error-summary/error-summary.js.map +1 -0
  366. data/node_modules/govuk-frontend/govuk/components/error-summary/fixtures.json +44 -35
  367. data/node_modules/govuk-frontend/govuk/components/error-summary/template.njk +25 -21
  368. data/node_modules/govuk-frontend/govuk/components/fieldset/fixtures.json +51 -39
  369. data/node_modules/govuk-frontend/govuk/components/file-upload/fixtures.json +26 -26
  370. data/node_modules/govuk-frontend/govuk/components/footer/_index.scss +1 -1
  371. data/node_modules/govuk-frontend/govuk/components/footer/fixtures.json +46 -46
  372. data/node_modules/govuk-frontend/govuk/components/footer/macro-options.json +2 -2
  373. data/node_modules/govuk-frontend/govuk/components/header/_index.scss +6 -0
  374. data/node_modules/govuk-frontend/govuk/components/header/fixtures.json +93 -38
  375. data/node_modules/govuk-frontend/govuk/components/header/header.js +646 -992
  376. data/node_modules/govuk-frontend/govuk/components/header/header.js.map +1 -0
  377. data/node_modules/govuk-frontend/govuk/components/header/macro-options.json +8 -2
  378. data/node_modules/govuk-frontend/govuk/components/header/template.njk +4 -2
  379. data/node_modules/govuk-frontend/govuk/components/hint/fixtures.json +12 -12
  380. data/node_modules/govuk-frontend/govuk/components/input/fixtures.json +80 -80
  381. data/node_modules/govuk-frontend/govuk/components/inset-text/fixtures.json +12 -12
  382. data/node_modules/govuk-frontend/govuk/components/label/fixtures.json +34 -34
  383. data/node_modules/govuk-frontend/govuk/components/notification-banner/fixtures.json +56 -46
  384. data/node_modules/govuk-frontend/govuk/components/notification-banner/notification-banner.js +790 -532
  385. data/node_modules/govuk-frontend/govuk/components/notification-banner/notification-banner.js.map +1 -0
  386. data/node_modules/govuk-frontend/govuk/components/notification-banner/template.njk +1 -1
  387. data/node_modules/govuk-frontend/govuk/components/pagination/_index.scss +10 -7
  388. data/node_modules/govuk-frontend/govuk/components/pagination/fixtures.json +94 -26
  389. data/node_modules/govuk-frontend/govuk/components/pagination/template.njk +1 -1
  390. data/node_modules/govuk-frontend/govuk/components/panel/fixtures.json +18 -18
  391. data/node_modules/govuk-frontend/govuk/components/phase-banner/fixtures.json +14 -14
  392. data/node_modules/govuk-frontend/govuk/components/phase-banner/macro-options.json +1 -1
  393. data/node_modules/govuk-frontend/govuk/components/radios/fixtures.json +94 -91
  394. data/node_modules/govuk-frontend/govuk/components/radios/radios.js +1110 -1079
  395. data/node_modules/govuk-frontend/govuk/components/radios/radios.js.map +1 -0
  396. data/node_modules/govuk-frontend/govuk/components/select/fixtures.json +32 -32
  397. data/node_modules/govuk-frontend/govuk/components/skip-link/fixtures.json +22 -20
  398. data/node_modules/govuk-frontend/govuk/components/skip-link/skip-link.js +1017 -1008
  399. data/node_modules/govuk-frontend/govuk/components/skip-link/skip-link.js.map +1 -0
  400. data/node_modules/govuk-frontend/govuk/components/summary-list/_index.scss +107 -0
  401. data/node_modules/govuk-frontend/govuk/components/summary-list/fixtures.json +345 -50
  402. data/node_modules/govuk-frontend/govuk/components/summary-list/macro-options.json +110 -0
  403. data/node_modules/govuk-frontend/govuk/components/summary-list/template.njk +72 -28
  404. data/node_modules/govuk-frontend/govuk/components/table/_index.scss +1 -1
  405. data/node_modules/govuk-frontend/govuk/components/table/fixtures.json +40 -40
  406. data/node_modules/govuk-frontend/govuk/components/tabs/fixtures.json +29 -29
  407. data/node_modules/govuk-frontend/govuk/components/tabs/tabs.js +1389 -1233
  408. data/node_modules/govuk-frontend/govuk/components/tabs/tabs.js.map +1 -0
  409. data/node_modules/govuk-frontend/govuk/components/tag/fixtures.json +28 -28
  410. data/node_modules/govuk-frontend/govuk/components/textarea/fixtures.json +34 -34
  411. data/node_modules/govuk-frontend/govuk/components/warning-text/fixtures.json +14 -14
  412. data/node_modules/govuk-frontend/govuk/core/_section-break.scss +1 -1
  413. data/node_modules/govuk-frontend/govuk/helpers/_colour.scss +2 -2
  414. data/node_modules/govuk-frontend/govuk/helpers/_focused.scss +5 -0
  415. data/node_modules/govuk-frontend/govuk/helpers/_links.scss +6 -6
  416. data/node_modules/govuk-frontend/govuk/i18n.js +389 -0
  417. data/node_modules/govuk-frontend/govuk/i18n.js.map +1 -0
  418. data/node_modules/govuk-frontend/govuk/macros/i18n.njk +15 -0
  419. data/node_modules/govuk-frontend/govuk/settings/_all.scss +1 -0
  420. data/node_modules/govuk-frontend/govuk/settings/_colours-palette.scss +12 -0
  421. data/node_modules/govuk-frontend/govuk/settings/_compatibility.scss +26 -0
  422. data/node_modules/govuk-frontend/govuk/settings/_measurements.scss +5 -5
  423. data/node_modules/govuk-frontend/govuk/settings/_typography-font.scss +23 -0
  424. data/node_modules/govuk-frontend/govuk/settings/_typography-responsive.scss +12 -0
  425. data/node_modules/govuk-frontend/govuk/settings/_warnings.scss +53 -0
  426. data/node_modules/govuk-frontend/govuk/tools/_compatibility.scss +20 -6
  427. data/node_modules/govuk-frontend/govuk/vendor/polyfills/DOMTokenList.js +242 -241
  428. data/node_modules/govuk-frontend/govuk/vendor/polyfills/DOMTokenList.js.map +1 -0
  429. data/node_modules/govuk-frontend/govuk/vendor/polyfills/Date/now.js +22 -0
  430. data/node_modules/govuk-frontend/govuk/vendor/polyfills/Date/now.js.map +1 -0
  431. data/node_modules/govuk-frontend/govuk/vendor/polyfills/Document.js +17 -16
  432. data/node_modules/govuk-frontend/govuk/vendor/polyfills/Document.js.map +1 -0
  433. data/node_modules/govuk-frontend/govuk/vendor/polyfills/Element/prototype/classList.js +547 -546
  434. data/node_modules/govuk-frontend/govuk/vendor/polyfills/Element/prototype/classList.js.map +1 -0
  435. data/node_modules/govuk-frontend/govuk/vendor/polyfills/Element/prototype/closest.js +37 -36
  436. data/node_modules/govuk-frontend/govuk/vendor/polyfills/Element/prototype/closest.js.map +1 -0
  437. data/node_modules/govuk-frontend/govuk/vendor/polyfills/Element/prototype/dataset.js +301 -0
  438. data/node_modules/govuk-frontend/govuk/vendor/polyfills/Element/prototype/dataset.js.map +1 -0
  439. data/node_modules/govuk-frontend/govuk/vendor/polyfills/Element/prototype/matches.js +21 -20
  440. data/node_modules/govuk-frontend/govuk/vendor/polyfills/Element/prototype/matches.js.map +1 -0
  441. data/node_modules/govuk-frontend/govuk/vendor/polyfills/Element/prototype/nextElementSibling.js +198 -197
  442. data/node_modules/govuk-frontend/govuk/vendor/polyfills/Element/prototype/nextElementSibling.js.map +1 -0
  443. data/node_modules/govuk-frontend/govuk/vendor/polyfills/Element/prototype/previousElementSibling.js +198 -197
  444. data/node_modules/govuk-frontend/govuk/vendor/polyfills/Element/prototype/previousElementSibling.js.map +1 -0
  445. data/node_modules/govuk-frontend/govuk/vendor/polyfills/Element.js +106 -105
  446. data/node_modules/govuk-frontend/govuk/vendor/polyfills/Element.js.map +1 -0
  447. data/node_modules/govuk-frontend/govuk/vendor/polyfills/Event.js +400 -399
  448. data/node_modules/govuk-frontend/govuk/vendor/polyfills/Event.js.map +1 -0
  449. data/node_modules/govuk-frontend/govuk/vendor/polyfills/Function/prototype/bind.js +239 -238
  450. data/node_modules/govuk-frontend/govuk/vendor/polyfills/Function/prototype/bind.js.map +1 -0
  451. data/node_modules/govuk-frontend/govuk/vendor/polyfills/Object/defineProperty.js +72 -71
  452. data/node_modules/govuk-frontend/govuk/vendor/polyfills/Object/defineProperty.js.map +1 -0
  453. data/node_modules/govuk-frontend/govuk/vendor/polyfills/String/prototype/trim.js +22 -0
  454. data/node_modules/govuk-frontend/govuk/vendor/polyfills/String/prototype/trim.js.map +1 -0
  455. data/node_modules/govuk-frontend/govuk/vendor/polyfills/Window.js +17 -16
  456. data/node_modules/govuk-frontend/govuk/vendor/polyfills/Window.js.map +1 -0
  457. data/node_modules/govuk-frontend/govuk-esm/all.mjs +52 -29
  458. data/node_modules/govuk-frontend/govuk-esm/common/closest-attribute-value.mjs +15 -0
  459. data/node_modules/govuk-frontend/govuk-esm/common/index.mjs +166 -0
  460. data/node_modules/govuk-frontend/govuk-esm/common/normalise-dataset.mjs +60 -0
  461. data/node_modules/govuk-frontend/govuk-esm/common.mjs +6 -28
  462. data/node_modules/govuk-frontend/govuk-esm/components/accordion/accordion.mjs +238 -85
  463. data/node_modules/govuk-frontend/govuk-esm/components/button/button.mjs +73 -34
  464. data/node_modules/govuk-frontend/govuk-esm/components/character-count/character-count.mjs +329 -124
  465. data/node_modules/govuk-frontend/govuk-esm/components/checkboxes/checkboxes.mjs +32 -20
  466. data/node_modules/govuk-frontend/govuk-esm/components/details/details.mjs +41 -20
  467. data/node_modules/govuk-frontend/govuk-esm/components/error-summary/error-summary.mjs +60 -14
  468. data/node_modules/govuk-frontend/govuk-esm/components/header/header.mjs +9 -2
  469. data/node_modules/govuk-frontend/govuk-esm/components/notification-banner/notification-banner.mjs +33 -4
  470. data/node_modules/govuk-frontend/govuk-esm/components/radios/radios.mjs +18 -11
  471. data/node_modules/govuk-frontend/govuk-esm/components/skip-link/skip-link.mjs +15 -7
  472. data/node_modules/govuk-frontend/govuk-esm/components/tabs/tabs.mjs +171 -38
  473. data/node_modules/govuk-frontend/govuk-esm/i18n.mjs +378 -0
  474. data/node_modules/govuk-frontend/govuk-esm/vendor/polyfills/Date/now.mjs +13 -0
  475. data/node_modules/govuk-frontend/govuk-esm/vendor/polyfills/Element/prototype/dataset.mjs +68 -0
  476. data/node_modules/govuk-frontend/govuk-esm/vendor/polyfills/String/prototype/trim.mjs +13 -0
  477. data/node_modules/govuk-frontend/govuk-prototype-kit/init.js +7 -0
  478. data/node_modules/govuk-frontend/govuk-prototype-kit/init.scss +12 -0
  479. data/node_modules/govuk-frontend/govuk-prototype-kit.config.json +138 -7
  480. data/node_modules/govuk-frontend/package.json +1 -1
  481. metadata +70 -19
  482. data/app/assets/stylesheets/component_guide/print.scss +0 -1
  483. data/app/assets/stylesheets/govuk_publishing_components/_all_components_print.scss +0 -18
  484. data/app/assets/stylesheets/govuk_publishing_components/components/print/_accordion.scss +0 -28
  485. data/app/assets/stylesheets/govuk_publishing_components/components/print/_button.scss +0 -8
  486. data/app/assets/stylesheets/govuk_publishing_components/components/print/_cards.scss +0 -4
  487. data/app/assets/stylesheets/govuk_publishing_components/components/print/_contents-list.scss +0 -19
  488. data/app/assets/stylesheets/govuk_publishing_components/components/print/_emergency-banner.scss +0 -3
  489. data/app/assets/stylesheets/govuk_publishing_components/components/print/_govspeak-html-publication.scss +0 -5
  490. data/app/assets/stylesheets/govuk_publishing_components/components/print/_govspeak.scss +0 -80
  491. data/app/assets/stylesheets/govuk_publishing_components/components/print/_layout-super-navigation-header.scss +0 -3
  492. data/app/assets/stylesheets/govuk_publishing_components/components/print/_organisation-logo.scss +0 -7
  493. data/app/assets/stylesheets/govuk_publishing_components/components/print/_step-by-step-nav-header.scss +0 -7
  494. data/app/assets/stylesheets/govuk_publishing_components/components/print/_step-by-step-nav.scss +0 -116
  495. data/app/assets/stylesheets/govuk_publishing_components/components/print/_textarea.scss +0 -13
  496. data/app/assets/stylesheets/govuk_publishing_components/components/print/_title.scss +0 -7
@@ -1,272 +1,273 @@
1
1
  (function (global, factory) {
2
- typeof exports === 'object' && typeof module !== 'undefined' ? factory() :
3
- typeof define === 'function' && define.amd ? define('GOVUKFrontend', factory) :
4
- (factory());
2
+ typeof exports === 'object' && typeof module !== 'undefined' ? factory() :
3
+ typeof define === 'function' && define.amd ? define('GOVUKFrontend', factory) :
4
+ (factory());
5
5
  }(this, (function () { 'use strict';
6
6
 
7
- (function(undefined) {
8
-
9
- // Detection from https://raw.githubusercontent.com/Financial-Times/polyfill-service/master/packages/polyfill-library/polyfills/DOMTokenList/detect.js
10
- var detect = (
11
- 'DOMTokenList' in this && (function (x) {
12
- return 'classList' in x ? !x.classList.toggle('x', false) && !x.className : true;
13
- })(document.createElement('x'))
14
- );
15
-
16
- if (detect) return
17
-
18
- // Polyfill from https://raw.githubusercontent.com/Financial-Times/polyfill-service/master/packages/polyfill-library/polyfills/DOMTokenList/polyfill.js
19
- (function (global) {
20
- var nativeImpl = "DOMTokenList" in global && global.DOMTokenList;
21
-
22
- if (
23
- !nativeImpl ||
24
- (
25
- !!document.createElementNS &&
26
- !!document.createElementNS('http://www.w3.org/2000/svg', 'svg') &&
27
- !(document.createElementNS("http://www.w3.org/2000/svg", "svg").classList instanceof DOMTokenList)
28
- )
29
- ) {
30
- global.DOMTokenList = (function() { // eslint-disable-line no-unused-vars
31
- var dpSupport = true;
32
- var defineGetter = function (object, name, fn, configurable) {
33
- if (Object.defineProperty)
34
- Object.defineProperty(object, name, {
35
- configurable: false === dpSupport ? true : !!configurable,
36
- get: fn
37
- });
38
-
39
- else object.__defineGetter__(name, fn);
40
- };
41
-
42
- /** Ensure the browser allows Object.defineProperty to be used on native JavaScript objects. */
43
- try {
44
- defineGetter({}, "support");
45
- }
46
- catch (e) {
47
- dpSupport = false;
48
- }
49
-
50
-
51
- var _DOMTokenList = function (el, prop) {
52
- var that = this;
53
- var tokens = [];
54
- var tokenMap = {};
55
- var length = 0;
56
- var maxLength = 0;
57
- var addIndexGetter = function (i) {
58
- defineGetter(that, i, function () {
59
- preop();
60
- return tokens[i];
61
- }, false);
7
+ (function(undefined) {
8
+
9
+ // Detection from https://raw.githubusercontent.com/Financial-Times/polyfill-service/master/packages/polyfill-library/polyfills/DOMTokenList/detect.js
10
+ var detect = (
11
+ 'DOMTokenList' in this && (function (x) {
12
+ return 'classList' in x ? !x.classList.toggle('x', false) && !x.className : true;
13
+ })(document.createElement('x'))
14
+ );
15
+
16
+ if (detect) return
17
+
18
+ // Polyfill from https://raw.githubusercontent.com/Financial-Times/polyfill-service/master/packages/polyfill-library/polyfills/DOMTokenList/polyfill.js
19
+ (function (global) {
20
+ var nativeImpl = "DOMTokenList" in global && global.DOMTokenList;
21
+
22
+ if (
23
+ !nativeImpl ||
24
+ (
25
+ !!document.createElementNS &&
26
+ !!document.createElementNS('http://www.w3.org/2000/svg', 'svg') &&
27
+ !(document.createElementNS("http://www.w3.org/2000/svg", "svg").classList instanceof DOMTokenList)
28
+ )
29
+ ) {
30
+ global.DOMTokenList = (function() { // eslint-disable-line no-unused-vars
31
+ var dpSupport = true;
32
+ var defineGetter = function (object, name, fn, configurable) {
33
+ if (Object.defineProperty)
34
+ Object.defineProperty(object, name, {
35
+ configurable: false === dpSupport ? true : !!configurable,
36
+ get: fn
37
+ });
38
+
39
+ else object.__defineGetter__(name, fn);
40
+ };
62
41
 
63
- };
64
- var reindex = function () {
42
+ /** Ensure the browser allows Object.defineProperty to be used on native JavaScript objects. */
43
+ try {
44
+ defineGetter({}, "support");
45
+ }
46
+ catch (e) {
47
+ dpSupport = false;
48
+ }
65
49
 
66
- /** Define getter functions for array-like access to the tokenList's contents. */
67
- if (length >= maxLength)
68
- for (; maxLength < length; ++maxLength) {
69
- addIndexGetter(maxLength);
70
- }
71
- };
72
50
 
73
- /** Helper function called at the start of each class method. Internal use only. */
74
- var preop = function () {
75
- var error;
76
- var i;
77
- var args = arguments;
78
- var rSpace = /\s+/;
79
-
80
- /** Validate the token/s passed to an instance method, if any. */
81
- if (args.length)
82
- for (i = 0; i < args.length; ++i)
83
- if (rSpace.test(args[i])) {
84
- error = new SyntaxError('String "' + args[i] + '" ' + "contains" + ' an invalid character');
85
- error.code = 5;
86
- error.name = "InvalidCharacterError";
87
- throw error;
51
+ var _DOMTokenList = function (el, prop) {
52
+ var that = this;
53
+ var tokens = [];
54
+ var tokenMap = {};
55
+ var length = 0;
56
+ var maxLength = 0;
57
+ var addIndexGetter = function (i) {
58
+ defineGetter(that, i, function () {
59
+ preop();
60
+ return tokens[i];
61
+ }, false);
62
+
63
+ };
64
+ var reindex = function () {
65
+
66
+ /** Define getter functions for array-like access to the tokenList's contents. */
67
+ if (length >= maxLength)
68
+ for (; maxLength < length; ++maxLength) {
69
+ addIndexGetter(maxLength);
70
+ }
71
+ };
72
+
73
+ /** Helper function called at the start of each class method. Internal use only. */
74
+ var preop = function () {
75
+ var error;
76
+ var i;
77
+ var args = arguments;
78
+ var rSpace = /\s+/;
79
+
80
+ /** Validate the token/s passed to an instance method, if any. */
81
+ if (args.length)
82
+ for (i = 0; i < args.length; ++i)
83
+ if (rSpace.test(args[i])) {
84
+ error = new SyntaxError('String "' + args[i] + '" ' + "contains" + ' an invalid character');
85
+ error.code = 5;
86
+ error.name = "InvalidCharacterError";
87
+ throw error;
88
+ }
89
+
90
+
91
+ /** Split the new value apart by whitespace*/
92
+ if (typeof el[prop] === "object") {
93
+ tokens = ("" + el[prop].baseVal).replace(/^\s+|\s+$/g, "").split(rSpace);
94
+ } else {
95
+ tokens = ("" + el[prop]).replace(/^\s+|\s+$/g, "").split(rSpace);
88
96
  }
89
97
 
98
+ /** Avoid treating blank strings as single-item token lists */
99
+ if ("" === tokens[0]) tokens = [];
90
100
 
91
- /** Split the new value apart by whitespace*/
92
- if (typeof el[prop] === "object") {
93
- tokens = ("" + el[prop].baseVal).replace(/^\s+|\s+$/g, "").split(rSpace);
94
- } else {
95
- tokens = ("" + el[prop]).replace(/^\s+|\s+$/g, "").split(rSpace);
96
- }
97
-
98
- /** Avoid treating blank strings as single-item token lists */
99
- if ("" === tokens[0]) tokens = [];
100
-
101
- /** Repopulate the internal token lists */
102
- tokenMap = {};
103
- for (i = 0; i < tokens.length; ++i)
104
- tokenMap[tokens[i]] = true;
105
- length = tokens.length;
106
- reindex();
107
- };
101
+ /** Repopulate the internal token lists */
102
+ tokenMap = {};
103
+ for (i = 0; i < tokens.length; ++i)
104
+ tokenMap[tokens[i]] = true;
105
+ length = tokens.length;
106
+ reindex();
107
+ };
108
108
 
109
- /** Populate our internal token list if the targeted attribute of the subject element isn't empty. */
110
- preop();
109
+ /** Populate our internal token list if the targeted attribute of the subject element isn't empty. */
110
+ preop();
111
111
 
112
- /** Return the number of tokens in the underlying string. Read-only. */
113
- defineGetter(that, "length", function () {
114
- preop();
115
- return length;
116
- });
112
+ /** Return the number of tokens in the underlying string. Read-only. */
113
+ defineGetter(that, "length", function () {
114
+ preop();
115
+ return length;
116
+ });
117
+
118
+ /** Override the default toString/toLocaleString methods to return a space-delimited list of tokens when typecast. */
119
+ that.toLocaleString =
120
+ that.toString = function () {
121
+ preop();
122
+ return tokens.join(" ");
123
+ };
124
+
125
+ that.item = function (idx) {
126
+ preop();
127
+ return tokens[idx];
128
+ };
129
+
130
+ that.contains = function (token) {
131
+ preop();
132
+ return !!tokenMap[token];
133
+ };
134
+
135
+ that.add = function () {
136
+ preop.apply(that, args = arguments);
137
+
138
+ for (var args, token, i = 0, l = args.length; i < l; ++i) {
139
+ token = args[i];
140
+ if (!tokenMap[token]) {
141
+ tokens.push(token);
142
+ tokenMap[token] = true;
143
+ }
144
+ }
117
145
 
118
- /** Override the default toString/toLocaleString methods to return a space-delimited list of tokens when typecast. */
119
- that.toLocaleString =
120
- that.toString = function () {
121
- preop();
122
- return tokens.join(" ");
123
- };
146
+ /** Update the targeted attribute of the attached element if the token list's changed. */
147
+ if (length !== tokens.length) {
148
+ length = tokens.length >>> 0;
149
+ if (typeof el[prop] === "object") {
150
+ el[prop].baseVal = tokens.join(" ");
151
+ } else {
152
+ el[prop] = tokens.join(" ");
153
+ }
154
+ reindex();
155
+ }
156
+ };
124
157
 
125
- that.item = function (idx) {
126
- preop();
127
- return tokens[idx];
128
- };
158
+ that.remove = function () {
159
+ preop.apply(that, args = arguments);
129
160
 
130
- that.contains = function (token) {
131
- preop();
132
- return !!tokenMap[token];
133
- };
161
+ /** Build a hash of token names to compare against when recollecting our token list. */
162
+ for (var args, ignore = {}, i = 0, t = []; i < args.length; ++i) {
163
+ ignore[args[i]] = true;
164
+ delete tokenMap[args[i]];
165
+ }
134
166
 
135
- that.add = function () {
136
- preop.apply(that, args = arguments);
167
+ /** Run through our tokens list and reassign only those that aren't defined in the hash declared above. */
168
+ for (i = 0; i < tokens.length; ++i)
169
+ if (!ignore[tokens[i]]) t.push(tokens[i]);
137
170
 
138
- for (var args, token, i = 0, l = args.length; i < l; ++i) {
139
- token = args[i];
140
- if (!tokenMap[token]) {
141
- tokens.push(token);
142
- tokenMap[token] = true;
143
- }
144
- }
171
+ tokens = t;
172
+ length = t.length >>> 0;
145
173
 
146
- /** Update the targeted attribute of the attached element if the token list's changed. */
147
- if (length !== tokens.length) {
148
- length = tokens.length >>> 0;
149
- if (typeof el[prop] === "object") {
150
- el[prop].baseVal = tokens.join(" ");
151
- } else {
152
- el[prop] = tokens.join(" ");
153
- }
154
- reindex();
155
- }
156
- };
174
+ /** Update the targeted attribute of the attached element. */
175
+ if (typeof el[prop] === "object") {
176
+ el[prop].baseVal = tokens.join(" ");
177
+ } else {
178
+ el[prop] = tokens.join(" ");
179
+ }
180
+ reindex();
181
+ };
182
+
183
+ that.toggle = function (token, force) {
184
+ preop.apply(that, [token]);
185
+
186
+ /** Token state's being forced. */
187
+ if (undefined !== force) {
188
+ if (force) {
189
+ that.add(token);
190
+ return true;
191
+ } else {
192
+ that.remove(token);
193
+ return false;
194
+ }
195
+ }
157
196
 
158
- that.remove = function () {
159
- preop.apply(that, args = arguments);
197
+ /** Token already exists in tokenList. Remove it, and return FALSE. */
198
+ if (tokenMap[token]) {
199
+ that.remove(token);
200
+ return false;
201
+ }
160
202
 
161
- /** Build a hash of token names to compare against when recollecting our token list. */
162
- for (var args, ignore = {}, i = 0, t = []; i < args.length; ++i) {
163
- ignore[args[i]] = true;
164
- delete tokenMap[args[i]];
165
- }
203
+ /** Otherwise, add the token and return TRUE. */
204
+ that.add(token);
205
+ return true;
206
+ };
166
207
 
167
- /** Run through our tokens list and reassign only those that aren't defined in the hash declared above. */
168
- for (i = 0; i < tokens.length; ++i)
169
- if (!ignore[tokens[i]]) t.push(tokens[i]);
208
+ return that;
209
+ };
170
210
 
171
- tokens = t;
172
- length = t.length >>> 0;
211
+ return _DOMTokenList;
212
+ }());
213
+ }
173
214
 
174
- /** Update the targeted attribute of the attached element. */
175
- if (typeof el[prop] === "object") {
176
- el[prop].baseVal = tokens.join(" ");
177
- } else {
178
- el[prop] = tokens.join(" ");
215
+ // Add second argument to native DOMTokenList.toggle() if necessary
216
+ (function () {
217
+ var e = document.createElement('span');
218
+ if (!('classList' in e)) return;
219
+ e.classList.toggle('x', false);
220
+ if (!e.classList.contains('x')) return;
221
+ e.classList.constructor.prototype.toggle = function toggle(token /*, force*/) {
222
+ var force = arguments[1];
223
+ if (force === undefined) {
224
+ var add = !this.contains(token);
225
+ this[add ? 'add' : 'remove'](token);
226
+ return add;
179
227
  }
180
- reindex();
228
+ force = !!force;
229
+ this[force ? 'add' : 'remove'](token);
230
+ return force;
181
231
  };
182
-
183
- that.toggle = function (token, force) {
184
- preop.apply(that, [token]);
185
-
186
- /** Token state's being forced. */
187
- if (undefined !== force) {
188
- if (force) {
189
- that.add(token);
190
- return true;
191
- } else {
192
- that.remove(token);
193
- return false;
194
- }
232
+ }());
233
+
234
+ // Add multiple arguments to native DOMTokenList.add() if necessary
235
+ (function () {
236
+ var e = document.createElement('span');
237
+ if (!('classList' in e)) return;
238
+ e.classList.add('a', 'b');
239
+ if (e.classList.contains('b')) return;
240
+ var native = e.classList.constructor.prototype.add;
241
+ e.classList.constructor.prototype.add = function () {
242
+ var args = arguments;
243
+ var l = arguments.length;
244
+ for (var i = 0; i < l; i++) {
245
+ native.call(this, args[i]);
195
246
  }
196
-
197
- /** Token already exists in tokenList. Remove it, and return FALSE. */
198
- if (tokenMap[token]) {
199
- that.remove(token);
200
- return false;
247
+ };
248
+ }());
249
+
250
+ // Add multiple arguments to native DOMTokenList.remove() if necessary
251
+ (function () {
252
+ var e = document.createElement('span');
253
+ if (!('classList' in e)) return;
254
+ e.classList.add('a');
255
+ e.classList.add('b');
256
+ e.classList.remove('a', 'b');
257
+ if (!e.classList.contains('b')) return;
258
+ var native = e.classList.constructor.prototype.remove;
259
+ e.classList.constructor.prototype.remove = function () {
260
+ var args = arguments;
261
+ var l = arguments.length;
262
+ for (var i = 0; i < l; i++) {
263
+ native.call(this, args[i]);
201
264
  }
202
-
203
- /** Otherwise, add the token and return TRUE. */
204
- that.add(token);
205
- return true;
206
265
  };
266
+ }());
207
267
 
208
- return that;
209
- };
210
-
211
- return _DOMTokenList;
212
- }());
213
- }
214
-
215
- // Add second argument to native DOMTokenList.toggle() if necessary
216
- (function () {
217
- var e = document.createElement('span');
218
- if (!('classList' in e)) return;
219
- e.classList.toggle('x', false);
220
- if (!e.classList.contains('x')) return;
221
- e.classList.constructor.prototype.toggle = function toggle(token /*, force*/) {
222
- var force = arguments[1];
223
- if (force === undefined) {
224
- var add = !this.contains(token);
225
- this[add ? 'add' : 'remove'](token);
226
- return add;
227
- }
228
- force = !!force;
229
- this[force ? 'add' : 'remove'](token);
230
- return force;
231
- };
232
- }());
233
-
234
- // Add multiple arguments to native DOMTokenList.add() if necessary
235
- (function () {
236
- var e = document.createElement('span');
237
- if (!('classList' in e)) return;
238
- e.classList.add('a', 'b');
239
- if (e.classList.contains('b')) return;
240
- var native = e.classList.constructor.prototype.add;
241
- e.classList.constructor.prototype.add = function () {
242
- var args = arguments;
243
- var l = arguments.length;
244
- for (var i = 0; i < l; i++) {
245
- native.call(this, args[i]);
246
- }
247
- };
248
- }());
249
-
250
- // Add multiple arguments to native DOMTokenList.remove() if necessary
251
- (function () {
252
- var e = document.createElement('span');
253
- if (!('classList' in e)) return;
254
- e.classList.add('a');
255
- e.classList.add('b');
256
- e.classList.remove('a', 'b');
257
- if (!e.classList.contains('b')) return;
258
- var native = e.classList.constructor.prototype.remove;
259
- e.classList.constructor.prototype.remove = function () {
260
- var args = arguments;
261
- var l = arguments.length;
262
- for (var i = 0; i < l; i++) {
263
- native.call(this, args[i]);
264
- }
265
- };
266
- }());
267
-
268
- }(this));
268
+ }(this));
269
269
 
270
- }).call('object' === typeof window && window || 'object' === typeof self && self || 'object' === typeof global && global || {});
270
+ }).call('object' === typeof window && window || 'object' === typeof self && self || 'object' === typeof global && global || {});
271
271
 
272
272
  })));
273
+ //# sourceMappingURL=DOMTokenList.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DOMTokenList.js","sources":["../../../../src/govuk/vendor/polyfills/DOMTokenList.mjs"],"sourcesContent":["(function(undefined) {\n\n // Detection from https://raw.githubusercontent.com/Financial-Times/polyfill-service/master/packages/polyfill-library/polyfills/DOMTokenList/detect.js\n var detect = (\n 'DOMTokenList' in this && (function (x) {\n return 'classList' in x ? !x.classList.toggle('x', false) && !x.className : true;\n })(document.createElement('x'))\n )\n\n if (detect) return\n\n // Polyfill from https://raw.githubusercontent.com/Financial-Times/polyfill-service/master/packages/polyfill-library/polyfills/DOMTokenList/polyfill.js\n (function (global) {\n var nativeImpl = \"DOMTokenList\" in global && global.DOMTokenList;\n\n if (\n !nativeImpl ||\n (\n !!document.createElementNS &&\n !!document.createElementNS('http://www.w3.org/2000/svg', 'svg') &&\n !(document.createElementNS(\"http://www.w3.org/2000/svg\", \"svg\").classList instanceof DOMTokenList)\n )\n ) {\n global.DOMTokenList = (function() { // eslint-disable-line no-unused-vars\n var dpSupport = true;\n var defineGetter = function (object, name, fn, configurable) {\n if (Object.defineProperty)\n Object.defineProperty(object, name, {\n configurable: false === dpSupport ? true : !!configurable,\n get: fn\n });\n\n else object.__defineGetter__(name, fn);\n };\n\n /** Ensure the browser allows Object.defineProperty to be used on native JavaScript objects. */\n try {\n defineGetter({}, \"support\");\n }\n catch (e) {\n dpSupport = false;\n }\n\n\n var _DOMTokenList = function (el, prop) {\n var that = this;\n var tokens = [];\n var tokenMap = {};\n var length = 0;\n var maxLength = 0;\n var addIndexGetter = function (i) {\n defineGetter(that, i, function () {\n preop();\n return tokens[i];\n }, false);\n\n };\n var reindex = function () {\n\n /** Define getter functions for array-like access to the tokenList's contents. */\n if (length >= maxLength)\n for (; maxLength < length; ++maxLength) {\n addIndexGetter(maxLength);\n }\n };\n\n /** Helper function called at the start of each class method. Internal use only. */\n var preop = function () {\n var error;\n var i;\n var args = arguments;\n var rSpace = /\\s+/;\n\n /** Validate the token/s passed to an instance method, if any. */\n if (args.length)\n for (i = 0; i < args.length; ++i)\n if (rSpace.test(args[i])) {\n error = new SyntaxError('String \"' + args[i] + '\" ' + \"contains\" + ' an invalid character');\n error.code = 5;\n error.name = \"InvalidCharacterError\";\n throw error;\n }\n\n\n /** Split the new value apart by whitespace*/\n if (typeof el[prop] === \"object\") {\n tokens = (\"\" + el[prop].baseVal).replace(/^\\s+|\\s+$/g, \"\").split(rSpace);\n } else {\n tokens = (\"\" + el[prop]).replace(/^\\s+|\\s+$/g, \"\").split(rSpace);\n }\n\n /** Avoid treating blank strings as single-item token lists */\n if (\"\" === tokens[0]) tokens = [];\n\n /** Repopulate the internal token lists */\n tokenMap = {};\n for (i = 0; i < tokens.length; ++i)\n tokenMap[tokens[i]] = true;\n length = tokens.length;\n reindex();\n };\n\n /** Populate our internal token list if the targeted attribute of the subject element isn't empty. */\n preop();\n\n /** Return the number of tokens in the underlying string. Read-only. */\n defineGetter(that, \"length\", function () {\n preop();\n return length;\n });\n\n /** Override the default toString/toLocaleString methods to return a space-delimited list of tokens when typecast. */\n that.toLocaleString =\n that.toString = function () {\n preop();\n return tokens.join(\" \");\n };\n\n that.item = function (idx) {\n preop();\n return tokens[idx];\n };\n\n that.contains = function (token) {\n preop();\n return !!tokenMap[token];\n };\n\n that.add = function () {\n preop.apply(that, args = arguments);\n\n for (var args, token, i = 0, l = args.length; i < l; ++i) {\n token = args[i];\n if (!tokenMap[token]) {\n tokens.push(token);\n tokenMap[token] = true;\n }\n }\n\n /** Update the targeted attribute of the attached element if the token list's changed. */\n if (length !== tokens.length) {\n length = tokens.length >>> 0;\n if (typeof el[prop] === \"object\") {\n el[prop].baseVal = tokens.join(\" \");\n } else {\n el[prop] = tokens.join(\" \");\n }\n reindex();\n }\n };\n\n that.remove = function () {\n preop.apply(that, args = arguments);\n\n /** Build a hash of token names to compare against when recollecting our token list. */\n for (var args, ignore = {}, i = 0, t = []; i < args.length; ++i) {\n ignore[args[i]] = true;\n delete tokenMap[args[i]];\n }\n\n /** Run through our tokens list and reassign only those that aren't defined in the hash declared above. */\n for (i = 0; i < tokens.length; ++i)\n if (!ignore[tokens[i]]) t.push(tokens[i]);\n\n tokens = t;\n length = t.length >>> 0;\n\n /** Update the targeted attribute of the attached element. */\n if (typeof el[prop] === \"object\") {\n el[prop].baseVal = tokens.join(\" \");\n } else {\n el[prop] = tokens.join(\" \");\n }\n reindex();\n };\n\n that.toggle = function (token, force) {\n preop.apply(that, [token]);\n\n /** Token state's being forced. */\n if (undefined !== force) {\n if (force) {\n that.add(token);\n return true;\n } else {\n that.remove(token);\n return false;\n }\n }\n\n /** Token already exists in tokenList. Remove it, and return FALSE. */\n if (tokenMap[token]) {\n that.remove(token);\n return false;\n }\n\n /** Otherwise, add the token and return TRUE. */\n that.add(token);\n return true;\n };\n\n return that;\n };\n\n return _DOMTokenList;\n }());\n }\n\n // Add second argument to native DOMTokenList.toggle() if necessary\n (function () {\n var e = document.createElement('span');\n if (!('classList' in e)) return;\n e.classList.toggle('x', false);\n if (!e.classList.contains('x')) return;\n e.classList.constructor.prototype.toggle = function toggle(token /*, force*/) {\n var force = arguments[1];\n if (force === undefined) {\n var add = !this.contains(token);\n this[add ? 'add' : 'remove'](token);\n return add;\n }\n force = !!force;\n this[force ? 'add' : 'remove'](token);\n return force;\n };\n }());\n\n // Add multiple arguments to native DOMTokenList.add() if necessary\n (function () {\n var e = document.createElement('span');\n if (!('classList' in e)) return;\n e.classList.add('a', 'b');\n if (e.classList.contains('b')) return;\n var native = e.classList.constructor.prototype.add;\n e.classList.constructor.prototype.add = function () {\n var args = arguments;\n var l = arguments.length;\n for (var i = 0; i < l; i++) {\n native.call(this, args[i]);\n }\n };\n }());\n\n // Add multiple arguments to native DOMTokenList.remove() if necessary\n (function () {\n var e = document.createElement('span');\n if (!('classList' in e)) return;\n e.classList.add('a');\n e.classList.add('b');\n e.classList.remove('a', 'b');\n if (!e.classList.contains('b')) return;\n var native = e.classList.constructor.prototype.remove;\n e.classList.constructor.prototype.remove = function () {\n var args = arguments;\n var l = arguments.length;\n for (var i = 0; i < l; i++) {\n native.call(this, args[i]);\n }\n };\n }());\n\n }(this));\n\n}).call('object' === typeof window && window || 'object' === typeof self && self || 'object' === typeof global && global || {});"],"names":[],"mappings":"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"}
@@ -0,0 +1,22 @@
1
+ (function (global, factory) {
2
+ typeof exports === 'object' && typeof module !== 'undefined' ? factory() :
3
+ typeof define === 'function' && define.amd ? define('GOVUKFrontend', factory) :
4
+ (factory());
5
+ }(this, (function () { 'use strict';
6
+
7
+ (function(undefined) {
8
+
9
+ // Detection from https://github.com/Financial-Times/polyfill-library/blob/v3.111.0/polyfills/Date/now/detect.js
10
+ var detect = ('Date' in self && 'now' in self.Date && 'getTime' in self.Date.prototype);
11
+
12
+ if (detect) return
13
+
14
+ // Polyfill from https://polyfill.io/v3/polyfill.js?version=3.111.0&features=Date.now&flags=always
15
+ Date.now = function () {
16
+ return new Date().getTime();
17
+ };
18
+
19
+ }).call('object' === typeof window && window || 'object' === typeof self && self || 'object' === typeof global && global || {});
20
+
21
+ })));
22
+ //# sourceMappingURL=now.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"now.js","sources":["../../../../../src/govuk/vendor/polyfills/Date/now.mjs"],"sourcesContent":["(function(undefined) {\n\n // Detection from https://github.com/Financial-Times/polyfill-library/blob/v3.111.0/polyfills/Date/now/detect.js\n var detect = ('Date' in self && 'now' in self.Date && 'getTime' in self.Date.prototype)\n\n if (detect) return\n\n // Polyfill from https://polyfill.io/v3/polyfill.js?version=3.111.0&features=Date.now&flags=always\n Date.now = function () {\n return new Date().getTime();\n };\n\n}).call('object' === typeof window && window || 'object' === typeof self && self || 'object' === typeof global && global || {});\n"],"names":[],"mappings":";;;;;;IAAA,CAAC,SAAS,SAAS,EAAE;;IAErB;IACA,IAAI,IAAI,MAAM,IAAI,MAAM,IAAI,IAAI,IAAI,KAAK,IAAI,IAAI,CAAC,IAAI,IAAI,SAAS,IAAI,IAAI,CAAC,IAAI,CAAC,SAAS,EAAC;;IAE3F,IAAI,IAAI,MAAM,EAAE,MAAM;;IAEtB;IACA,IAAI,IAAI,CAAC,GAAG,GAAG,YAAY;IAC3B,QAAQ,OAAO,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC;IACpC,KAAK,CAAC;;IAEN,CAAC,EAAE,IAAI,CAAC,QAAQ,KAAK,OAAO,MAAM,IAAI,MAAM,IAAI,QAAQ,KAAK,OAAO,IAAI,IAAI,IAAI,IAAI,QAAQ,KAAK,OAAO,MAAM,IAAI,MAAM,IAAI,EAAE,CAAC,CAAC;;;;"}
@@ -4,31 +4,32 @@
4
4
  (factory());
5
5
  }(this, (function () { 'use strict';
6
6
 
7
- (function(undefined) {
7
+ (function(undefined) {
8
8
 
9
- // Detection from https://github.com/Financial-Times/polyfill-service/blob/master/packages/polyfill-library/polyfills/Document/detect.js
10
- var detect = ("Document" in this);
9
+ // Detection from https://github.com/Financial-Times/polyfill-service/blob/master/packages/polyfill-library/polyfills/Document/detect.js
10
+ var detect = ("Document" in this);
11
11
 
12
- if (detect) return
12
+ if (detect) return
13
13
 
14
- // Polyfill from https://cdn.polyfill.io/v2/polyfill.js?features=Document&flags=always
15
- if ((typeof WorkerGlobalScope === "undefined") && (typeof importScripts !== "function")) {
14
+ // Polyfill from https://cdn.polyfill.io/v2/polyfill.js?features=Document&flags=always
15
+ if ((typeof WorkerGlobalScope === "undefined") && (typeof importScripts !== "function")) {
16
16
 
17
- if (this.HTMLDocument) { // IE8
17
+ if (this.HTMLDocument) { // IE8
18
18
 
19
- // HTMLDocument is an extension of Document. If the browser has HTMLDocument but not Document, the former will suffice as an alias for the latter.
20
- this.Document = this.HTMLDocument;
19
+ // HTMLDocument is an extension of Document. If the browser has HTMLDocument but not Document, the former will suffice as an alias for the latter.
20
+ this.Document = this.HTMLDocument;
21
21
 
22
- } else {
22
+ } else {
23
23
 
24
- // Create an empty function to act as the missing constructor for the document object, attach the document object as its prototype. The function needs to be anonymous else it is hoisted and causes the feature detect to prematurely pass, preventing the assignments below being made.
25
- this.Document = this.HTMLDocument = document.constructor = (new Function('return function Document() {}')());
26
- this.Document.prototype = document;
24
+ // Create an empty function to act as the missing constructor for the document object, attach the document object as its prototype. The function needs to be anonymous else it is hoisted and causes the feature detect to prematurely pass, preventing the assignments below being made.
25
+ this.Document = this.HTMLDocument = document.constructor = (new Function('return function Document() {}')());
26
+ this.Document.prototype = document;
27
+ }
27
28
  }
28
- }
29
29
 
30
30
 
31
- })
32
- .call('object' === typeof window && window || 'object' === typeof self && self || 'object' === typeof global && global || {});
31
+ })
32
+ .call('object' === typeof window && window || 'object' === typeof self && self || 'object' === typeof global && global || {});
33
33
 
34
34
  })));
35
+ //# sourceMappingURL=Document.js.map