govuk_publishing_components 21.58.0 → 21.60.3
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +31 -6
- data/app/assets/javascripts/component_guide/accessibility-test.js +21 -21
- data/app/assets/javascripts/component_guide/filter-components.js +19 -19
- data/app/assets/javascripts/component_guide/visual-regression.js +38 -37
- data/app/assets/javascripts/govuk_publishing_components/components/checkboxes.js +2 -2
- data/app/assets/javascripts/govuk_publishing_components/components/details.js +5 -3
- data/app/assets/javascripts/govuk_publishing_components/components/step-by-step-nav.js +4 -4
- data/app/assets/javascripts/govuk_publishing_components/lib/auto-track-event.js +31 -0
- data/app/assets/javascripts/govuk_publishing_components/lib/cookie-functions.js +24 -24
- data/app/assets/javascripts/govuk_publishing_components/lib/govspeak/youtube-link-enhancement.js +17 -17
- data/app/assets/stylesheets/component_guide/application.scss +15 -15
- data/app/assets/stylesheets/govuk_publishing_components/components/_action-link.scss +0 -8
- data/app/assets/stylesheets/govuk_publishing_components/components/_breadcrumbs.scss +1 -1
- data/app/assets/stylesheets/govuk_publishing_components/components/_checkboxes.scss +4 -0
- data/app/assets/stylesheets/govuk_publishing_components/components/_cookie-banner.scss +1 -8
- data/app/assets/stylesheets/govuk_publishing_components/components/_feedback.scss +0 -1
- data/app/assets/stylesheets/govuk_publishing_components/components/_govspeak-html-publication.scss +4 -5
- data/app/assets/stylesheets/govuk_publishing_components/components/_heading.scss +3 -8
- data/app/assets/stylesheets/govuk_publishing_components/components/_image-card.scss +1 -1
- data/app/assets/stylesheets/govuk_publishing_components/components/_input.scss +1 -1
- data/app/assets/stylesheets/govuk_publishing_components/components/_inverse-header.scss +5 -8
- data/app/assets/stylesheets/govuk_publishing_components/components/_radio.scss +4 -0
- data/app/assets/stylesheets/govuk_publishing_components/components/_related-navigation.scss +2 -2
- data/app/assets/stylesheets/govuk_publishing_components/components/_search.scss +0 -1
- data/app/assets/stylesheets/govuk_publishing_components/components/_step-by-step-nav-header.scss +0 -5
- data/app/assets/stylesheets/govuk_publishing_components/components/_step-by-step-nav-related.scss +1 -4
- data/app/assets/stylesheets/govuk_publishing_components/components/_step-by-step-nav.scss +8 -12
- data/app/assets/stylesheets/govuk_publishing_components/components/_table.scss +21 -24
- data/app/assets/stylesheets/govuk_publishing_components/components/_tabs.scss +4 -8
- data/app/assets/stylesheets/govuk_publishing_components/components/govspeak/_attachment.scss +2 -0
- data/app/assets/stylesheets/govuk_publishing_components/components/govspeak/_button.scss +1 -4
- data/app/assets/stylesheets/govuk_publishing_components/components/govspeak/_charts.scss +6 -6
- data/app/assets/stylesheets/govuk_publishing_components/components/govspeak/_contact.scss +2 -0
- data/app/assets/stylesheets/govuk_publishing_components/components/govspeak/_footnotes.scss +2 -0
- data/app/assets/stylesheets/govuk_publishing_components/components/govspeak/_highlight-answer.scss +2 -0
- data/app/assets/stylesheets/govuk_publishing_components/components/govspeak/_place.scss +1 -1
- data/app/assets/stylesheets/govuk_publishing_components/components/govspeak/_typography.scss +2 -0
- data/app/assets/stylesheets/govuk_publishing_components/components/helpers/_markdown-typography.scss +1 -1
- data/app/assets/stylesheets/govuk_publishing_components/components/print/_govspeak.scss +2 -0
- data/app/assets/stylesheets/govuk_publishing_components/components/print/_step-by-step-nav-header.scss +0 -4
- data/app/assets/stylesheets/govuk_publishing_components/components/print/_step-by-step-nav.scss +2 -10
- data/app/controllers/govuk_publishing_components/audit_controller.rb +52 -0
- data/app/controllers/govuk_publishing_components/component_guide_controller.rb +2 -2
- data/app/models/govuk_publishing_components/audit_applications.rb +117 -0
- data/app/models/govuk_publishing_components/audit_comparer.rb +198 -0
- data/app/models/govuk_publishing_components/audit_components.rb +158 -0
- data/app/views/govuk_publishing_components/audit/show.html.erb +258 -0
- data/app/views/govuk_publishing_components/component_guide/index.html.erb +7 -1
- data/app/views/govuk_publishing_components/components/_breadcrumbs.html.erb +1 -1
- data/app/views/govuk_publishing_components/components/_image_card.html.erb +1 -1
- data/app/views/govuk_publishing_components/components/_machine_readable_metadata.html.erb +1 -1
- data/app/views/govuk_publishing_components/components/_radio.html.erb +13 -5
- data/app/views/govuk_publishing_components/components/_share_links.html.erb +9 -9
- data/app/views/govuk_publishing_components/components/_step_by_step_nav_header.html.erb +2 -2
- data/app/views/govuk_publishing_components/components/docs/checkboxes.yml +4 -0
- data/app/views/govuk_publishing_components/components/docs/govspeak.yml +45 -0
- data/app/views/govuk_publishing_components/components/docs/heading.yml +6 -3
- data/app/views/govuk_publishing_components/components/docs/image_card.yml +13 -1
- data/app/views/govuk_publishing_components/components/docs/radio.yml +4 -0
- data/config/routes.rb +1 -0
- data/lib/govuk_publishing_components/presenters/checkboxes_helper.rb +15 -7
- data/lib/govuk_publishing_components/presenters/heading_helper.rb +21 -1
- data/lib/govuk_publishing_components/presenters/image_card_helper.rb +2 -1
- data/lib/govuk_publishing_components/version.rb +1 -1
- data/node_modules/axe-core/package.json +145 -220
- data/node_modules/govuk-frontend/govuk/all.js +160 -57
- data/node_modules/govuk-frontend/govuk/components/character-count/character-count.js +16 -8
- data/node_modules/govuk-frontend/govuk/components/character-count/macro-options.json +6 -0
- data/node_modules/govuk-frontend/govuk/components/character-count/template.njk +1 -0
- data/node_modules/govuk-frontend/govuk/components/checkboxes/_index.scss +6 -5
- data/node_modules/govuk-frontend/govuk/components/checkboxes/checkboxes.js +68 -21
- data/node_modules/govuk-frontend/govuk/components/date-input/macro-options.json +1 -1
- data/node_modules/govuk-frontend/govuk/components/file-upload/_index.scss +0 -27
- data/node_modules/govuk-frontend/govuk/components/footer/_index.scss +0 -3
- data/node_modules/govuk-frontend/govuk/components/footer/template.njk +1 -1
- data/node_modules/govuk-frontend/govuk/components/header/template.njk +1 -1
- data/node_modules/govuk-frontend/govuk/components/hint/_index.scss +2 -2
- data/node_modules/govuk-frontend/govuk/components/hint/template.njk +2 -2
- data/node_modules/govuk-frontend/govuk/components/input/_index.scss +0 -3
- data/node_modules/govuk-frontend/govuk/components/input/macro-options.json +6 -0
- data/node_modules/govuk-frontend/govuk/components/input/template.njk +1 -0
- data/node_modules/govuk-frontend/govuk/components/radios/radios.js +76 -28
- data/node_modules/govuk-frontend/govuk/components/select/_index.scss +0 -3
- data/node_modules/govuk-frontend/govuk/components/skip-link/_index.scss +1 -0
- data/node_modules/govuk-frontend/govuk/components/textarea/_index.scss +0 -3
- data/node_modules/govuk-frontend/govuk/components/textarea/macro-options.json +6 -0
- data/node_modules/govuk-frontend/govuk/components/textarea/template.njk +1 -0
- data/node_modules/govuk-frontend/govuk/components/warning-text/_index.scss +4 -2
- data/node_modules/govuk-frontend/govuk/helpers/_colour.scss +1 -1
- data/node_modules/govuk-frontend/govuk/settings/_colours-applied.scss +2 -2
- data/node_modules/govuk-frontend/govuk/settings/_colours-palette.scss +1 -1
- data/node_modules/govuk-frontend/govuk/settings/_measurements.scss +4 -1
- data/node_modules/govuk-frontend/package.json +14 -81
- data/node_modules/jquery/package.json +44 -116
- metadata +29 -66
- data/Rakefile +0 -37
@@ -2,7 +2,13 @@
|
|
2
2
|
|
3
3
|
<div class="component-markdown">
|
4
4
|
<p>Components are packages of template, style, behaviour and documentation that live in your application.</p>
|
5
|
-
<p>See the <a href="https://github.com/alphagov/govuk_publishing_components">govuk_publishing_components gem</a> for further details, or <a href="https://docs.publishing.service.gov.uk/manual/components.html#component-guides">a list of all component guides</a
|
5
|
+
<p>See the <a href="https://github.com/alphagov/govuk_publishing_components">govuk_publishing_components gem</a> for further details, or <a href="https://docs.publishing.service.gov.uk/manual/components.html#component-guides">a list of all component guides</a>.</p>
|
6
|
+
<ul>
|
7
|
+
<li>Read about how to <a href="https://github.com/alphagov/govuk_publishing_components/blob/master/docs/publishing-to-rubygems.md">release a new version of the gem</a></li>
|
8
|
+
<% if ENV["MAIN_COMPONENT_GUIDE"] %>
|
9
|
+
<li><a href="/component-guide/audit">View component audits</a></li>
|
10
|
+
<% end %>
|
11
|
+
</ul>
|
6
12
|
</div>
|
7
13
|
|
8
14
|
<form role="search" data-module="filter-components" class="component-search">
|
@@ -7,7 +7,7 @@
|
|
7
7
|
<% if card_helper.href || card_helper.extra_links.any? %>
|
8
8
|
<div class="gem-c-image-card <%= "gem-c-image-card--large" if card_helper.large %> <%= brand_helper.brand_class %>"
|
9
9
|
<%= "data-module=track-click" if card_helper.is_tracking? %>
|
10
|
-
|
10
|
+
<%= "lang=#{card_helper.lang}" if card_helper.lang %>>
|
11
11
|
<%= card_helper.image %>
|
12
12
|
|
13
13
|
<div class="gem-c-image-card__text-wrapper">
|
@@ -9,7 +9,7 @@
|
|
9
9
|
<% structured_data = GovukPublishingComponents::Presenters::SchemaOrg.new(page).structured_data %>
|
10
10
|
|
11
11
|
<script type="application/ld+json">
|
12
|
-
<%= raw structured_data
|
12
|
+
<%= raw JSON.pretty_generate(structured_data) %>
|
13
13
|
</script>
|
14
14
|
|
15
15
|
<link rel="canonical" href="<%= page.canonical_url %>" />
|
@@ -6,10 +6,18 @@
|
|
6
6
|
label ||= nil
|
7
7
|
heading ||= nil
|
8
8
|
heading_caption ||= nil
|
9
|
+
heading_size ||= nil
|
9
10
|
small ||= false
|
10
11
|
inline ||= false
|
11
12
|
is_page_heading ||= false
|
12
|
-
|
13
|
+
|
14
|
+
if ['s', 'm', 'l', 'xl'].include?(heading_size)
|
15
|
+
size = heading_size
|
16
|
+
elsif is_page_heading
|
17
|
+
size = 'xl'
|
18
|
+
else
|
19
|
+
size = 'm'
|
20
|
+
end
|
13
21
|
|
14
22
|
description ||= nil
|
15
23
|
hint ||= nil
|
@@ -28,7 +36,7 @@
|
|
28
36
|
radio_classes << "govuk-radios--inline" if inline
|
29
37
|
|
30
38
|
legend_classes = %w(govuk-fieldset__legend)
|
31
|
-
legend_classes << "govuk-fieldset__legend--#{
|
39
|
+
legend_classes << "govuk-fieldset__legend--#{size}"
|
32
40
|
|
33
41
|
aria = "#{hint_id} #{"#{error_id}" if has_error}".strip if hint or has_error
|
34
42
|
|
@@ -40,9 +48,9 @@
|
|
40
48
|
|
41
49
|
<% if heading.present? %>
|
42
50
|
<% if is_page_heading %>
|
43
|
-
<%= tag.legend class:
|
44
|
-
<%= tag.span(heading_caption, class: "govuk-caption
|
45
|
-
<%= tag.h1 heading, class: "gem-c-
|
51
|
+
<%= tag.legend class: legend_classes do %>
|
52
|
+
<%= tag.span(heading_caption, class: "govuk-caption-#{size}") if heading_caption.present? %>
|
53
|
+
<%= tag.h1 heading, class: "gem-c-radio__heading-text govuk-fieldset__heading" %>
|
46
54
|
<% end %>
|
47
55
|
<% else %>
|
48
56
|
<%= tag.legend heading, class: legend_classes %>
|
@@ -55,37 +55,37 @@
|
|
55
55
|
class: "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">
|
58
|
+
<svg xmlns="http://www.w3.org/2000/svg" width="32" height="32" aria-hidden="true">
|
59
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
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"/>
|
61
61
|
</svg>
|
62
62
|
|
63
63
|
<% elsif link[:icon] == 'twitter' %>
|
64
|
-
<svg xmlns="http://www.w3.org/2000/svg" width="32" height="32">
|
64
|
+
<svg xmlns="http://www.w3.org/2000/svg" width="32" height="32" aria-hidden="true">
|
65
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
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"/>
|
67
67
|
</svg>
|
68
68
|
|
69
69
|
<% elsif link[:icon] == 'email' %>
|
70
|
-
<svg xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="9 9 32 32"><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>
|
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
71
|
|
72
72
|
<% 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"><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>
|
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
74
|
|
75
75
|
<% 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"><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>
|
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
77
|
|
78
78
|
<% 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"><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>
|
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
80
|
|
81
81
|
<% elsif link[:icon] == 'youtube' %>
|
82
|
-
<svg xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="9 9 32 32"><path fill="currentColor" d="M9 9h32v32H9V9z"/><path fill="#FFF" d="M19.88 33.32V16.68L33.32 25l-13.44 8.32z"/></svg>
|
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
83
|
|
84
84
|
<% elsif link[:icon] == 'whatsapp' %>
|
85
|
-
<svg xmlns="http://www.w3.org/2000/svg" width="32" height="32"><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>
|
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
|
|
87
87
|
<% else %>
|
88
|
-
<svg xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="9 9 32 32"><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>
|
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
89
|
|
90
90
|
<% end %>
|
91
91
|
</span><%= link_text %><% end %>
|
@@ -25,14 +25,14 @@
|
|
25
25
|
%>
|
26
26
|
<% if title %>
|
27
27
|
<script type="application/ld+json">
|
28
|
-
<%= raw breadcrumb_presenter.structured_data
|
28
|
+
<%= raw JSON.pretty_generate(breadcrumb_presenter.structured_data) %>
|
29
29
|
</script>
|
30
30
|
|
31
31
|
<div class="<%= classes %>" data-module="track-click">
|
32
32
|
<span class="gem-c-step-nav-header__part-of">Part of</span>
|
33
33
|
<% if path %>
|
34
34
|
<a href="<%= path %>"
|
35
|
-
class="gem-c-step-nav-header__title"
|
35
|
+
class="gem-c-step-nav-header__title govuk-link"
|
36
36
|
data-track-category="<%= tracking_category %>"
|
37
37
|
data-track-action="<%= tracking_action %>"
|
38
38
|
data-track-label="<%= tracking_label %>"
|
@@ -184,6 +184,10 @@ examples:
|
|
184
184
|
- label: "Blue"
|
185
185
|
value: "blue"
|
186
186
|
with_custom_heading_size:
|
187
|
+
description: |
|
188
|
+
This allows the size of the legend to be changed. Valid options are s, m, l, xl, defaulting to m if no option is passed.
|
189
|
+
|
190
|
+
If the is_page_heading option is true and heading_size is not set, the text size will be xl.
|
187
191
|
data:
|
188
192
|
name: "favourite_colour"
|
189
193
|
heading: "What is your favourite colour?"
|
@@ -190,6 +190,51 @@ examples:
|
|
190
190
|
</tr>
|
191
191
|
</tbody>
|
192
192
|
</table>
|
193
|
+
chart_with_colours:
|
194
|
+
data:
|
195
|
+
block: |
|
196
|
+
<table class="js-barchart-table mc-auto-outdent">
|
197
|
+
<thead>
|
198
|
+
<tr>
|
199
|
+
<th scope="col">Number position</th>
|
200
|
+
<th scope="col">Apples</th>
|
201
|
+
<th scope="col">Oranges</th>
|
202
|
+
<th scope="col">Bananas</th>
|
203
|
+
<th scope="col">Pears</th>
|
204
|
+
<th scope="col">Grapes</th>
|
205
|
+
<th scope="col">Strawberries</th>
|
206
|
+
<th scope="col">Plums</th>
|
207
|
+
<th scope="col">Apricots</th>
|
208
|
+
<th scope="col">Pineapples</th>
|
209
|
+
</tr>
|
210
|
+
</thead>
|
211
|
+
<tbody>
|
212
|
+
<tr>
|
213
|
+
<td>Numbers inside bar</td>
|
214
|
+
<td>16</td>
|
215
|
+
<td>48</td>
|
216
|
+
<td>39</td>
|
217
|
+
<td>50</td>
|
218
|
+
<td>24</td>
|
219
|
+
<td>10</td>
|
220
|
+
<td>62</td>
|
221
|
+
<td>29</td>
|
222
|
+
<td>81</td>
|
223
|
+
</tr>
|
224
|
+
<tr>
|
225
|
+
<td>Numbers outside bar</td>
|
226
|
+
<td>2</td>
|
227
|
+
<td>1</td>
|
228
|
+
<td>2</td>
|
229
|
+
<td>1</td>
|
230
|
+
<td>1</td>
|
231
|
+
<td>3</td>
|
232
|
+
<td>3</td>
|
233
|
+
<td>1</td>
|
234
|
+
<td>2</td>
|
235
|
+
</tr>
|
236
|
+
</tbody>
|
237
|
+
</table>
|
193
238
|
address:
|
194
239
|
data:
|
195
240
|
block: |
|
@@ -24,10 +24,13 @@ examples:
|
|
24
24
|
text: 'Original consultation'
|
25
25
|
heading_level: 3
|
26
26
|
different_font_sizes:
|
27
|
-
description:
|
27
|
+
description: |
|
28
|
+
Set a different font size for the heading. Uses the [GOV.UK Frontend heading sizes](https://design-system.service.gov.uk/styles/typography/#headings) but defaults to 27px for legacy reasons. Valid options are `xl`, `l`, `m` and `s`.
|
29
|
+
|
30
|
+
This option is not tied to the heading_level option in order to give flexibility.
|
28
31
|
data:
|
29
|
-
text: '
|
30
|
-
font_size:
|
32
|
+
text: 'One big heading'
|
33
|
+
font_size: "xl"
|
31
34
|
with_id_attribute:
|
32
35
|
data:
|
33
36
|
text: 'Detail of outcome'
|
@@ -9,6 +9,7 @@ accessibility_criteria: |
|
|
9
9
|
|
10
10
|
- include alt text for images when present
|
11
11
|
- not have duplicate links for the image and the text
|
12
|
+
- if the contents of the component are in a different language than the rest of the document, include an appropriate `lang` attribute to correctly identify the language used in the component
|
12
13
|
shared_accessibility_criteria:
|
13
14
|
- link
|
14
15
|
examples:
|
@@ -191,7 +192,7 @@ examples:
|
|
191
192
|
description: Can be used for links to people pages to indicate payment type
|
192
193
|
data:
|
193
194
|
href: "/government/people/"
|
194
|
-
image_src: "
|
195
|
+
image_src: "https://assets.publishing.service.gov.uk/government/uploads/system/uploads/feature/image/62756/s300_courts-of-justice.JPG"
|
195
196
|
image_alt: "some meaningful alt text please"
|
196
197
|
context:
|
197
198
|
text: "The Rt Hon"
|
@@ -204,3 +205,14 @@ examples:
|
|
204
205
|
}
|
205
206
|
]
|
206
207
|
extra_links_no_indent: true
|
208
|
+
with_lang:
|
209
|
+
description: |
|
210
|
+
Pass through an appropriate `lang` to set a HTML lang attribute for the component.
|
211
|
+
|
212
|
+
The `lang` attribute **must** be set to a [valid BCP47 string](https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/lang#Language_tag_syntax). A valid code can be the two or three letter language code - for example, English is `en` or `eng`, Korean is `ko` or `kor` - but if in doubt please check.
|
213
|
+
data:
|
214
|
+
href: "/not-a-page"
|
215
|
+
image_src: "https://assets.publishing.service.gov.uk/government/uploads/system/uploads/feature/image/62756/s300_courts-of-justice.JPG"
|
216
|
+
image_alt: "some meaningful alt text please"
|
217
|
+
heading_text: Yr hyn rydym ni'n ei wneud
|
218
|
+
lang: cy
|
@@ -183,6 +183,10 @@ examples:
|
|
183
183
|
- value: "blue"
|
184
184
|
text: "Blue"
|
185
185
|
with_custom_heading_size:
|
186
|
+
description: |
|
187
|
+
This allows the size of the legend to be changed. Valid options are s, m, l, xl, defaulting to m if no option is passed.
|
188
|
+
|
189
|
+
If the is_page_heading option is true and heading_size is not set, the text size will be xl.
|
186
190
|
data:
|
187
191
|
name: "radio-group-description"
|
188
192
|
heading: "What is your favourite colour?"
|
data/config/routes.rb
CHANGED
@@ -1,4 +1,5 @@
|
|
1
1
|
GovukPublishingComponents::Engine.routes.draw do
|
2
|
+
get "/audit" => "audit#show", as: :audit
|
2
3
|
root to: "component_guide#index", as: :component_guide
|
3
4
|
get ":component/preview" => "component_guide#preview", as: :component_preview_all
|
4
5
|
get ":component/:example/preview" => "component_guide#preview", as: :component_preview
|
@@ -14,7 +14,6 @@ module GovukPublishingComponents
|
|
14
14
|
:id,
|
15
15
|
:hint_text,
|
16
16
|
:description,
|
17
|
-
:heading_size,
|
18
17
|
:heading_caption,
|
19
18
|
:has_exclusive
|
20
19
|
|
@@ -35,9 +34,8 @@ module GovukPublishingComponents
|
|
35
34
|
|
36
35
|
@id = options[:id] || "checkboxes-#{SecureRandom.hex(4)}"
|
37
36
|
@heading = options[:heading] || nil
|
38
|
-
@heading_size = options[:heading_size]
|
39
|
-
@heading_size = "m" unless %w[s m l xl].include?(@heading_size)
|
40
37
|
@heading_caption = options[:heading_caption] || nil
|
38
|
+
@heading_size = options[:heading_size] || nil
|
41
39
|
@is_page_heading = options[:is_page_heading]
|
42
40
|
@description = options[:description] || nil
|
43
41
|
@no_hint_text = options[:no_hint_text]
|
@@ -60,20 +58,30 @@ module GovukPublishingComponents
|
|
60
58
|
end
|
61
59
|
end
|
62
60
|
|
61
|
+
def size
|
62
|
+
if %w[s m l xl].include?(@heading_size)
|
63
|
+
@heading_size
|
64
|
+
elsif @is_page_heading
|
65
|
+
"xl"
|
66
|
+
else
|
67
|
+
"m"
|
68
|
+
end
|
69
|
+
end
|
70
|
+
|
63
71
|
def heading_markup
|
64
72
|
return unless @heading.present?
|
65
73
|
|
66
74
|
if @is_page_heading
|
67
75
|
content_tag(
|
68
76
|
:legend,
|
69
|
-
class: "govuk-fieldset__legend govuk-fieldset__legend
|
77
|
+
class: "govuk-fieldset__legend govuk-fieldset__legend--#{size}",
|
70
78
|
) do
|
71
|
-
concat content_tag(:span, heading_caption, class: "govuk-caption
|
72
|
-
concat content_tag(:h1, @heading, class: "gem-c-
|
79
|
+
concat content_tag(:span, heading_caption, class: "govuk-caption-#{size}") if heading_caption.present?
|
80
|
+
concat content_tag(:h1, @heading, class: "gem-c-checkboxes__heading-text govuk-fieldset__heading")
|
73
81
|
end
|
74
82
|
else
|
75
83
|
classes = %w[govuk-fieldset__legend]
|
76
|
-
classes << "govuk-fieldset__legend--#{
|
84
|
+
classes << "govuk-fieldset__legend--#{size}"
|
77
85
|
classes << "gem-c-checkboxes__legend--hidden" if @visually_hide_heading
|
78
86
|
|
79
87
|
content_tag(:legend, @heading, class: classes)
|
@@ -7,12 +7,32 @@ module GovukPublishingComponents
|
|
7
7
|
@id = options[:id]
|
8
8
|
|
9
9
|
@classes = ""
|
10
|
-
@classes <<
|
10
|
+
@classes << heading_size(options[:font_size])
|
11
11
|
@classes << " gem-c-heading--mobile-top-margin" if options[:mobile_top_margin]
|
12
12
|
@classes << " gem-c-heading--padding" if options[:padding]
|
13
13
|
@classes << " gem-c-heading--border-top-#{options[:border_top]}" if [1, 2, 5].include? options[:border_top]
|
14
14
|
@classes << " gem-c-heading--inverse" if options[:inverse]
|
15
15
|
end
|
16
|
+
|
17
|
+
private
|
18
|
+
|
19
|
+
def heading_size(option)
|
20
|
+
gem_class = "gem-c-heading--font-size-"
|
21
|
+
govuk_class = "govuk-heading-"
|
22
|
+
|
23
|
+
case option
|
24
|
+
when "xl"
|
25
|
+
"#{govuk_class}xl"
|
26
|
+
when "l"
|
27
|
+
"#{govuk_class}l"
|
28
|
+
when 24, "m"
|
29
|
+
"#{govuk_class}m"
|
30
|
+
when 19, "s"
|
31
|
+
"#{govuk_class}s"
|
32
|
+
else
|
33
|
+
"#{gem_class}27"
|
34
|
+
end
|
35
|
+
end
|
16
36
|
end
|
17
37
|
end
|
18
38
|
end
|
@@ -4,7 +4,7 @@ module GovukPublishingComponents
|
|
4
4
|
include ActionView::Helpers
|
5
5
|
include ActionView::Context
|
6
6
|
|
7
|
-
attr_reader :href, :href_data_attributes, :extra_links, :large, :extra_links_no_indent, :heading_text, :metadata
|
7
|
+
attr_reader :href, :href_data_attributes, :extra_links, :large, :extra_links_no_indent, :heading_text, :metadata, :lang
|
8
8
|
|
9
9
|
def initialize(local_assigns)
|
10
10
|
@href = local_assigns[:href]
|
@@ -18,6 +18,7 @@ module GovukPublishingComponents
|
|
18
18
|
@heading_text = local_assigns[:heading_text]
|
19
19
|
@extra_links_no_indent = local_assigns[:extra_links_no_indent]
|
20
20
|
@metadata = local_assigns[:metadata]
|
21
|
+
@lang = local_assigns[:lang]
|
21
22
|
end
|
22
23
|
|
23
24
|
def is_tracking?
|
@@ -1,222 +1,147 @@
|
|
1
1
|
{
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
|
77
|
-
|
78
|
-
|
79
|
-
|
80
|
-
|
81
|
-
|
82
|
-
|
83
|
-
|
84
|
-
|
85
|
-
|
86
|
-
|
87
|
-
|
88
|
-
|
89
|
-
|
90
|
-
|
91
|
-
|
92
|
-
|
93
|
-
|
94
|
-
|
95
|
-
|
96
|
-
|
97
|
-
|
98
|
-
|
99
|
-
|
100
|
-
|
101
|
-
|
102
|
-
|
103
|
-
|
104
|
-
|
105
|
-
|
106
|
-
|
107
|
-
|
108
|
-
|
109
|
-
|
110
|
-
|
111
|
-
|
112
|
-
|
113
|
-
|
114
|
-
|
115
|
-
|
116
|
-
|
117
|
-
|
118
|
-
|
119
|
-
|
120
|
-
|
121
|
-
|
122
|
-
|
123
|
-
|
124
|
-
|
125
|
-
|
126
|
-
|
127
|
-
|
128
|
-
|
129
|
-
|
130
|
-
|
131
|
-
|
132
|
-
|
133
|
-
|
134
|
-
|
135
|
-
|
136
|
-
|
137
|
-
|
138
|
-
|
139
|
-
|
140
|
-
|
141
|
-
|
142
|
-
|
143
|
-
|
144
|
-
|
145
|
-
|
146
|
-
|
147
|
-
"keywords": [
|
148
|
-
"Accessibility",
|
149
|
-
"a11y",
|
150
|
-
"testing",
|
151
|
-
"unit",
|
152
|
-
"tdd",
|
153
|
-
"bdd",
|
154
|
-
"axe"
|
155
|
-
],
|
156
|
-
"license": "MPL-2.0",
|
157
|
-
"lint-staged": {
|
158
|
-
"*.{md,json,ts,html}": [
|
159
|
-
"prettier --write",
|
160
|
-
"git add"
|
161
|
-
],
|
162
|
-
"*.js": [
|
163
|
-
"eslint --fix",
|
164
|
-
"prettier --write",
|
165
|
-
"git add"
|
166
|
-
]
|
167
|
-
},
|
168
|
-
"main": "axe.js",
|
169
|
-
"maintainers": [
|
170
|
-
{
|
171
|
-
"name": "dequelabs",
|
172
|
-
"email": "labs@deque.com"
|
173
|
-
},
|
174
|
-
{
|
175
|
-
"name": "dylanb",
|
176
|
-
"email": "dylan@barrell.com"
|
177
|
-
},
|
178
|
-
{
|
179
|
-
"name": "marcysutton",
|
180
|
-
"email": "marcy.sutton@deque.com"
|
181
|
-
},
|
182
|
-
{
|
183
|
-
"name": "wilcofiers",
|
184
|
-
"email": "wilcofiers@gmail.com"
|
185
|
-
}
|
186
|
-
],
|
187
|
-
"name": "axe-core",
|
188
|
-
"optionalDependencies": {},
|
189
|
-
"readme": "ERROR: No README data found!",
|
190
|
-
"repository": {
|
191
|
-
"type": "git",
|
192
|
-
"url": "git+https://github.com/dequelabs/axe-core.git"
|
193
|
-
},
|
194
|
-
"scripts": {
|
195
|
-
"api-docs": "jsdoc --configure .jsdoc.json",
|
196
|
-
"build": "grunt",
|
197
|
-
"develop": "grunt dev --force",
|
198
|
-
"eslint": "eslint --color --format stylish '{lib,test,build,doc}/**/*.js' 'Gruntfile.js'",
|
199
|
-
"fmt": "prettier --write *.{json,md,js} **/*.ts './{.github,build,doc,lib,test}/**/*.{json,md,js,ts,html}'",
|
200
|
-
"imports-gen": "node ./build/imports-generator",
|
201
|
-
"next-release": "standard-version --scripts.prebump=./build/next-version.js --skip.commit=true --skip.tag=true",
|
202
|
-
"prepublishOnly": "grunt build && grunt file-exists",
|
203
|
-
"release": "standard-version -a",
|
204
|
-
"rule-gen": "node build/rule-generator",
|
205
|
-
"sri-update": "grunt build && node build/sri-update && git add sri-history.json",
|
206
|
-
"sri-validate": "node build/sri-update --validate",
|
207
|
-
"start": "npm run develop",
|
208
|
-
"test": "tsc && grunt test",
|
209
|
-
"test:examples": "node ./doc/examples/test-examples",
|
210
|
-
"test:headless": "node ./build/test/headless",
|
211
|
-
"test:locales": "mocha test/test-locales.js",
|
212
|
-
"test:rule-help-version": "mocha test/test-rule-help-version.js",
|
213
|
-
"version": "echo \"use 'npm run release' to bump axe-core version\" && exit 1"
|
214
|
-
},
|
215
|
-
"standard-version": {
|
216
|
-
"scripts": {
|
217
|
-
"postbump": "npm ci && npm run sri-update"
|
218
|
-
}
|
219
|
-
},
|
220
|
-
"typings": "axe.d.ts",
|
221
|
-
"version": "3.5.5"
|
2
|
+
"name": "axe-core",
|
3
|
+
"description": "Accessibility engine for automated Web UI testing",
|
4
|
+
"version": "3.5.5",
|
5
|
+
"license": "MPL-2.0",
|
6
|
+
"engines": {
|
7
|
+
"node": ">=4"
|
8
|
+
},
|
9
|
+
"contributors": [
|
10
|
+
{
|
11
|
+
"name": "David Sturley",
|
12
|
+
"organization": "Deque Systems, Inc.",
|
13
|
+
"url": "http://deque.com/"
|
14
|
+
},
|
15
|
+
{
|
16
|
+
"name": "Dylan Barrell",
|
17
|
+
"email": "dylan@barrell.com",
|
18
|
+
"organization": "Deque Systems, Inc.",
|
19
|
+
"url": "http://deque.com/"
|
20
|
+
},
|
21
|
+
{
|
22
|
+
"name": "Wilco Fiers",
|
23
|
+
"organization": "Deque Systems, Inc.",
|
24
|
+
"url": "http://deque.com/"
|
25
|
+
},
|
26
|
+
{
|
27
|
+
"name": "Dian Fay",
|
28
|
+
"organization": "Deque Systems, Inc.",
|
29
|
+
"url": "http://deque.com/"
|
30
|
+
},
|
31
|
+
{
|
32
|
+
"name": "Marcy Sutton",
|
33
|
+
"organization": "Deque Systems, Inc.",
|
34
|
+
"url": "http://deque.com/"
|
35
|
+
}
|
36
|
+
],
|
37
|
+
"homepage": "https://www.deque.com/axe/",
|
38
|
+
"repository": {
|
39
|
+
"type": "git",
|
40
|
+
"url": "https://github.com/dequelabs/axe-core.git"
|
41
|
+
},
|
42
|
+
"keywords": [
|
43
|
+
"Accessibility",
|
44
|
+
"a11y",
|
45
|
+
"testing",
|
46
|
+
"unit",
|
47
|
+
"tdd",
|
48
|
+
"bdd",
|
49
|
+
"axe"
|
50
|
+
],
|
51
|
+
"main": "axe.js",
|
52
|
+
"typings": "axe.d.ts",
|
53
|
+
"standard-version": {
|
54
|
+
"scripts": {
|
55
|
+
"postbump": "npm ci && npm run sri-update"
|
56
|
+
}
|
57
|
+
},
|
58
|
+
"scripts": {
|
59
|
+
"start": "npm run develop",
|
60
|
+
"develop": "grunt dev --force",
|
61
|
+
"api-docs": "jsdoc --configure .jsdoc.json",
|
62
|
+
"imports-gen": "node ./build/imports-generator",
|
63
|
+
"build": "grunt",
|
64
|
+
"eslint": "eslint --color --format stylish '{lib,test,build,doc}/**/*.js' 'Gruntfile.js'",
|
65
|
+
"test:headless": "node ./build/test/headless",
|
66
|
+
"test": "tsc && grunt test",
|
67
|
+
"test:examples": "node ./doc/examples/test-examples",
|
68
|
+
"test:locales": "mocha test/test-locales.js",
|
69
|
+
"test:rule-help-version": "mocha test/test-rule-help-version.js",
|
70
|
+
"version": "echo \"use 'npm run release' to bump axe-core version\" && exit 1",
|
71
|
+
"prepublishOnly": "grunt build && grunt file-exists",
|
72
|
+
"release": "standard-version -a",
|
73
|
+
"rule-gen": "node build/rule-generator",
|
74
|
+
"next-release": "standard-version --scripts.prebump=./build/next-version.js --skip.commit=true --skip.tag=true",
|
75
|
+
"sri-update": "grunt build && node build/sri-update && git add sri-history.json",
|
76
|
+
"sri-validate": "node build/sri-update --validate",
|
77
|
+
"fmt": "prettier --write *.{json,md,js} **/*.ts './{.github,build,doc,lib,test}/**/*.{json,md,js,ts,html}'"
|
78
|
+
},
|
79
|
+
"devDependencies": {
|
80
|
+
"@babel/core": "^7.5.4",
|
81
|
+
"@babel/plugin-proposal-object-rest-spread": "^7.5.4",
|
82
|
+
"@babel/polyfill": "^7.4.4",
|
83
|
+
"@babel/preset-env": "^7.5.4",
|
84
|
+
"@deque/dot": "^1.1.5",
|
85
|
+
"aria-query": "^3.0.0",
|
86
|
+
"axios": "^0.19.0",
|
87
|
+
"babelify": "^10.0.0",
|
88
|
+
"blanket": "~1.2.3",
|
89
|
+
"browserify": "^16.2.3",
|
90
|
+
"chai": "~4.2.0",
|
91
|
+
"clone": "~2.1.1",
|
92
|
+
"core-js": "^3.2.1",
|
93
|
+
"css-selector-parser": "^1.3.0",
|
94
|
+
"derequire": "^2.0.6",
|
95
|
+
"emoji-regex": "8.0.0",
|
96
|
+
"es6-promise": "^4.2.6",
|
97
|
+
"eslint": "^6.1.0",
|
98
|
+
"eslint-config-prettier": "^6.2.0",
|
99
|
+
"execa": "^2.0.2",
|
100
|
+
"fs-extra": "^8.0.1",
|
101
|
+
"globby": "^10.0.0",
|
102
|
+
"grunt": "^1.0.3",
|
103
|
+
"grunt-babel": "^8.0.0",
|
104
|
+
"grunt-contrib-clean": "^2.0.0",
|
105
|
+
"grunt-contrib-concat": "^1.0.1",
|
106
|
+
"grunt-contrib-connect": "^2.0.0",
|
107
|
+
"grunt-contrib-copy": "^1.0.0",
|
108
|
+
"grunt-contrib-uglify": "^4.0.0",
|
109
|
+
"grunt-contrib-watch": "^1.1.0",
|
110
|
+
"grunt-parallel": "^0.5.1",
|
111
|
+
"grunt-run": "^0.8.1",
|
112
|
+
"html-entities": "^1.2.0",
|
113
|
+
"husky": "^3.0.0",
|
114
|
+
"jquery": "^3.0.0",
|
115
|
+
"jsdoc": "^3.5.5",
|
116
|
+
"lint-staged": "^9.2.1",
|
117
|
+
"make-dir": "^3.0.0",
|
118
|
+
"markdown-table": "^1.1.2",
|
119
|
+
"memoizee": "^0.4.14",
|
120
|
+
"minami": "^1.2.3",
|
121
|
+
"mkdirp": "^0.5.1",
|
122
|
+
"mocha": "^6.1.2",
|
123
|
+
"mocha-headless-chrome": "^2.0.3",
|
124
|
+
"prettier": "^1.17.1",
|
125
|
+
"puppeteer": "^2.0.0",
|
126
|
+
"revalidator": "~0.3.1",
|
127
|
+
"selenium-webdriver": "~3.6.0",
|
128
|
+
"sinon": "^7.5.0",
|
129
|
+
"sri-toolbox": "^0.2.0",
|
130
|
+
"standard-version": "^7.0.0",
|
131
|
+
"typescript": "^3.5.3",
|
132
|
+
"uglify-js": "^3.4.4",
|
133
|
+
"weakmap-polyfill": "^2.0.0"
|
134
|
+
},
|
135
|
+
"dependencies": {},
|
136
|
+
"lint-staged": {
|
137
|
+
"*.{md,json,ts,html}": [
|
138
|
+
"prettier --write",
|
139
|
+
"git add"
|
140
|
+
],
|
141
|
+
"*.js": [
|
142
|
+
"eslint --fix",
|
143
|
+
"prettier --write",
|
144
|
+
"git add"
|
145
|
+
]
|
146
|
+
}
|
222
147
|
}
|