govuk_publishing_components 12.2.0 → 12.3.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.
- checksums.yaml +4 -4
- data/app/assets/javascripts/govuk_publishing_components/components/checkboxes.js +2 -0
- data/app/assets/javascripts/govuk_publishing_components/components/error-summary.js +2 -20
- data/app/assets/javascripts/govuk_publishing_components/components/radio.js +0 -30
- data/app/assets/stylesheets/govuk_publishing_components/_all_components.scss +2 -0
- data/app/assets/stylesheets/govuk_publishing_components/components/_checkboxes.scss +2 -0
- data/app/assets/stylesheets/govuk_publishing_components/components/_warning-text.scss +2 -0
- data/app/views/govuk_publishing_components/components/_checkboxes.html.erb +55 -0
- data/app/views/govuk_publishing_components/components/_warning_text.html.erb +16 -0
- data/app/views/govuk_publishing_components/components/docs/checkboxes.yml +82 -0
- data/app/views/govuk_publishing_components/components/docs/related_navigation.yml +40 -0
- data/app/views/govuk_publishing_components/components/docs/warning_text.yml +19 -0
- data/lib/govuk_publishing_components/presenters/machine_readable/page.rb +1 -1
- data/lib/govuk_publishing_components/version.rb +1 -1
- metadata +9 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 78d7656c28a7185b30c712e1cc5fd67ce22feb573f465bbc33854a29d31f3d93
|
4
|
+
data.tar.gz: 17e26835d2f10127ff196593640cf02baa0e09b65c96d5a61eee501d555086d8
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: b7f1e69e7c5a53cd73cdab140585e1189e84a43f62aafa08b51fb45d316da177078d8af82d9183b41bf260a60540ea43cac627ea96273e0e0b7ebf7d81c28f85
|
7
|
+
data.tar.gz: a5efd248664d8912343574d36b39ecb264520037709eb35f2536a4c532a59252f134bd9be72b8c4f118580614c4a52766018b85ecd6acefac23d5994d375cbda
|
@@ -1,20 +1,2 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
|
4
|
-
(function (global, GOVUK) {
|
5
|
-
'use strict'
|
6
|
-
|
7
|
-
var $ = global.jQuery
|
8
|
-
|
9
|
-
GOVUK.Modules.ErrorSummary = function () {
|
10
|
-
this.start = function (element) {
|
11
|
-
element.focus()
|
12
|
-
// Focus on inputs with errors, so they're easier to discover
|
13
|
-
element.on('click', '.js-error-summary__link', function (event) {
|
14
|
-
event.preventDefault()
|
15
|
-
var href = $(this).attr('href')
|
16
|
-
$(href).focus()
|
17
|
-
})
|
18
|
-
}
|
19
|
-
}
|
20
|
-
})(window, window.GOVUK)
|
1
|
+
// This component relies on JavaScript from GOV.UK Frontend
|
2
|
+
//= require govuk-frontend/components/error-summary/error-summary.js
|
@@ -1,32 +1,2 @@
|
|
1
1
|
// This component relies on JavaScript from GOV.UK Frontend
|
2
2
|
//= require govuk-frontend/components/radios/radios.js
|
3
|
-
|
4
|
-
window.GOVUK = window.GOVUK || {}
|
5
|
-
window.GOVUK.FrontendModules = window.GOVUK.FrontendModules || {};
|
6
|
-
|
7
|
-
(function (global, GOVUK) {
|
8
|
-
'use strict'
|
9
|
-
|
10
|
-
/**
|
11
|
-
* TODO: Ideally this would be a NodeList.prototype.forEach polyfill
|
12
|
-
*
|
13
|
-
* See: https://github.com/imagitama/nodelist-foreach-polyfill
|
14
|
-
* but the polyfill doesn't work in IE8 and needs more investigation
|
15
|
-
*/
|
16
|
-
function nodeListForEach (nodes, callback) {
|
17
|
-
if (window.NodeList.prototype.forEach) {
|
18
|
-
return nodes.forEach(callback)
|
19
|
-
}
|
20
|
-
for (var i = 0; i < nodes.length; i++) {
|
21
|
-
callback.call(window, nodes[i], i, nodes)
|
22
|
-
}
|
23
|
-
}
|
24
|
-
|
25
|
-
GOVUK.FrontendModules.Radios = window.GOVUKFrontend
|
26
|
-
|
27
|
-
var $radios = document.querySelectorAll('[data-module="radios"]')
|
28
|
-
|
29
|
-
nodeListForEach($radios, function ($radio) {
|
30
|
-
new GOVUK.FrontendModules.Radios($radio).init()
|
31
|
-
})
|
32
|
-
})(window, window.GOVUK)
|
@@ -16,6 +16,7 @@
|
|
16
16
|
@import "components/breadcrumbs";
|
17
17
|
@import "components/button";
|
18
18
|
@import "components/character-count";
|
19
|
+
@import "components/checkboxes";
|
19
20
|
@import "components/contents-list";
|
20
21
|
@import "components/copy-to-clipboard";
|
21
22
|
@import "components/details";
|
@@ -63,3 +64,4 @@
|
|
63
64
|
@import "components/textarea";
|
64
65
|
@import "components/title";
|
65
66
|
@import "components/translation-nav";
|
67
|
+
@import "components/warning-text";
|
@@ -0,0 +1,55 @@
|
|
1
|
+
<%
|
2
|
+
id ||= "checkboxes-#{SecureRandom.hex(4)}"
|
3
|
+
classes ||= ''
|
4
|
+
css_classes = %w( gem-c-checkboxes govuk-form-group )
|
5
|
+
css_classes << classes if classes
|
6
|
+
error ||= nil
|
7
|
+
css_classes << "govuk-form-group--error" if error
|
8
|
+
hint_text ||= "Select all that apply."
|
9
|
+
items ||= []
|
10
|
+
|
11
|
+
# check if any item is set as being conditional
|
12
|
+
has_conditional = items.any? { |item| item.is_a?(Hash) && item[:conditional] }
|
13
|
+
%>
|
14
|
+
|
15
|
+
<%= tag.div id: id, class: css_classes do %>
|
16
|
+
<%= tag.fieldset class: "govuk-fieldset", "aria-describedby": "#{id}-hint #{"#{id}-error" if error}" do %>
|
17
|
+
|
18
|
+
<%= tag.legend class: "govuk-fieldset__legend govuk-fieldset__legend--xl" do %>
|
19
|
+
<%= tag.h1 heading, class: "govuk-fieldset__heading" %>
|
20
|
+
<% end %>
|
21
|
+
|
22
|
+
<%= tag.span hint_text, id: "#{id}-hint", class: "govuk-hint" %>
|
23
|
+
|
24
|
+
<% if error.present? %>
|
25
|
+
<%= tag.span error, id: "#{id}-error", class: "govuk-error-message" %>
|
26
|
+
<% end %>
|
27
|
+
|
28
|
+
<%= tag.div class: "govuk-checkboxes", data: {
|
29
|
+
module: ('checkboxes' if has_conditional)
|
30
|
+
} do %>
|
31
|
+
<% items.each_with_index do |item, index| %>
|
32
|
+
<%= tag.div class: "govuk-checkboxes__item" do %>
|
33
|
+
<%= tag.input id: "#{id}-#{index}",
|
34
|
+
name: name,
|
35
|
+
type: "checkbox",
|
36
|
+
value: item[:value],
|
37
|
+
class: "govuk-checkboxes__input",
|
38
|
+
aria: {
|
39
|
+
describedby: item[:hint].present? ? "#{id}-#{index}-item-hint" : nil,
|
40
|
+
controls: item[:conditional].present? ? "#{id}-conditional-#{index}" : nil
|
41
|
+
} do %>
|
42
|
+
<%= tag.label item[:label], class: "govuk-label govuk-checkboxes__label", for: "#{id}-#{index}" %>
|
43
|
+
<% if item[:hint].present? %>
|
44
|
+
<%= tag.span item[:hint], id: "#{id}-#{index}-item-hint", class: "govuk-hint govuk-checkboxes__hint" %>
|
45
|
+
<% end %>
|
46
|
+
<% end %>
|
47
|
+
<% end %>
|
48
|
+
<% if item[:conditional] %>
|
49
|
+
<%= tag.div item[:conditional], id: "#{id}-conditional-#{index}", class: "govuk-checkboxes__conditional govuk-checkboxes__conditional--hidden" %>
|
50
|
+
<% end %>
|
51
|
+
<% end %>
|
52
|
+
<% end %>
|
53
|
+
|
54
|
+
<% end %>
|
55
|
+
<% end %>
|
@@ -0,0 +1,16 @@
|
|
1
|
+
<%
|
2
|
+
id ||= "warning-text-#{SecureRandom.hex(4)}"
|
3
|
+
classes ||= ''
|
4
|
+
css_classes = %w(gem-c-warning-text govuk-warning-text)
|
5
|
+
css_classes << classes if classes
|
6
|
+
text_assistive ||= 'Warning'
|
7
|
+
text_icon ||= '!'
|
8
|
+
%>
|
9
|
+
|
10
|
+
<%= tag.div id: id, class: css_classes do %>
|
11
|
+
<%= tag.span text_icon, class: "govuk-warning-text__icon", "aria-hidden": "true" %>
|
12
|
+
<%= tag.strong class: "govuk-warning-text__text" do %>
|
13
|
+
<%= tag.span text_assistive, class: "govuk-warning-text__assistive" %>
|
14
|
+
<%= text %>
|
15
|
+
<% end %>
|
16
|
+
<% end %>
|
@@ -0,0 +1,82 @@
|
|
1
|
+
name: Form checkboxes
|
2
|
+
description: Help users enter text when there is a limit on the number of characters they can type
|
3
|
+
govuk_frontend_components:
|
4
|
+
- checkboxes
|
5
|
+
accessibility_criteria: |
|
6
|
+
The component must:
|
7
|
+
|
8
|
+
- accept focus
|
9
|
+
- be focusable with a keyboard
|
10
|
+
- be usable with a keyboard
|
11
|
+
- be usable with touch
|
12
|
+
- indicate when they have focus
|
13
|
+
- be recognisable as form textarea elements
|
14
|
+
- have correctly associated labels
|
15
|
+
- inform the user about the character limit
|
16
|
+
- inform the user as the number of left characters changes
|
17
|
+
|
18
|
+
Labels use the [label component](/component-guide/label).
|
19
|
+
examples:
|
20
|
+
default:
|
21
|
+
data:
|
22
|
+
name: "favourite_colour"
|
23
|
+
heading: "What is your favourite colour?"
|
24
|
+
items:
|
25
|
+
- label: "Red"
|
26
|
+
value: "red"
|
27
|
+
- label: "Green"
|
28
|
+
value: "green"
|
29
|
+
- label: "Blue"
|
30
|
+
value: "blue"
|
31
|
+
custom_hint_text:
|
32
|
+
data:
|
33
|
+
name: "favourite_skittle"
|
34
|
+
heading: "What is your favourite skittle?"
|
35
|
+
hint_text: "Taste the rainbow"
|
36
|
+
items:
|
37
|
+
- label: "Red"
|
38
|
+
value: "red"
|
39
|
+
- label: "Green"
|
40
|
+
value: "green"
|
41
|
+
- label: "Blue"
|
42
|
+
value: "blue"
|
43
|
+
checkbox_items_with_hint:
|
44
|
+
data:
|
45
|
+
name: "nationality"
|
46
|
+
heading: "What is your nationality?"
|
47
|
+
hint_text: "If you have dual nationality, select all options that are relevant to you."
|
48
|
+
items:
|
49
|
+
- label: "British"
|
50
|
+
value: "british"
|
51
|
+
hint: "including English, Scottish, Welsh and Northern Irish"
|
52
|
+
- label: "Irish"
|
53
|
+
value: "irish"
|
54
|
+
- label: "Other"
|
55
|
+
value: "other"
|
56
|
+
checkbox_items_with_error:
|
57
|
+
data:
|
58
|
+
name: "nationality"
|
59
|
+
heading: "What is your nationality?"
|
60
|
+
error: "Select if you are British, Irish or a citizen of a different country"
|
61
|
+
hint_text: "If you have dual nationality, select all options that are relevant to you."
|
62
|
+
items:
|
63
|
+
- label: "British"
|
64
|
+
value: "british"
|
65
|
+
hint: "including English, Scottish, Welsh and Northern Irish"
|
66
|
+
- label: "Irish"
|
67
|
+
value: "irish"
|
68
|
+
- label: "Other"
|
69
|
+
value: "other"
|
70
|
+
checkbox_items_with_conditional_reveal:
|
71
|
+
data:
|
72
|
+
name: "nationality"
|
73
|
+
heading: "What is your nationality?"
|
74
|
+
hint_text: "If you have dual nationality, select all options that are relevant to you."
|
75
|
+
items:
|
76
|
+
- label: "British"
|
77
|
+
value: "british"
|
78
|
+
conditional: "including English, Scottish, Welsh and Northern Irish"
|
79
|
+
- label: "Irish"
|
80
|
+
value: "irish"
|
81
|
+
- label: "Other"
|
82
|
+
value: "other"
|
@@ -114,6 +114,31 @@ examples:
|
|
114
114
|
base_path: /world/united-kingdom/news
|
115
115
|
- title: USA
|
116
116
|
base_path: /world/usa/news
|
117
|
+
with_quick_links:
|
118
|
+
data:
|
119
|
+
details:
|
120
|
+
quick_links:
|
121
|
+
- title: "Money Laundering Regulations: introduction"
|
122
|
+
url: "https://www.gov.uk/money-laundering-regulations-introduction"
|
123
|
+
- title: "Money Laundering Regulations: report suspicious activities"
|
124
|
+
url: "https://www.gov.uk/money-laundering-regulations-report-suspicious-activities"
|
125
|
+
with_related_statistical_data_sets:
|
126
|
+
data:
|
127
|
+
links:
|
128
|
+
related_statistical_data_sets:
|
129
|
+
- title: International road fuel prices
|
130
|
+
base_path: /government/statistical-data-sets/comparisons-of-industrial-and-domestic-energy-prices-monthly-figures
|
131
|
+
document_type: statistical_data_set
|
132
|
+
- title: Weekly road fuel prices
|
133
|
+
base_path: /government/statistical-data-sets/oil-and-petroleum-products-weekly-statistics
|
134
|
+
document_type: statistical_data_set
|
135
|
+
with_related_contacts:
|
136
|
+
data:
|
137
|
+
links:
|
138
|
+
related:
|
139
|
+
- title: Pest Control
|
140
|
+
base_path: /pest-control
|
141
|
+
document_type: contact
|
117
142
|
with_all_related-content:
|
118
143
|
data:
|
119
144
|
links:
|
@@ -134,6 +159,21 @@ examples:
|
|
134
159
|
- title: Apprenticeships
|
135
160
|
base_path: /topic/further-education-skills/apprenticeships
|
136
161
|
document_type: topic
|
162
|
+
topical_events:
|
163
|
+
- title: UK-China High-Level People to People Dialogue 2017
|
164
|
+
base_path: /government/topical-events/uk-china-high-level-people-to-people-dialogue-2017
|
165
|
+
document_type: topical_event
|
166
|
+
related:
|
167
|
+
- title: Pest Control
|
168
|
+
base_path: /pest-control
|
169
|
+
document_type: contact
|
170
|
+
related_statistical_data_sets:
|
171
|
+
- title: International road fuel prices
|
172
|
+
base_path: /government/statistical-data-sets/comparisons-of-industrial-and-domestic-energy-prices-monthly-figures
|
173
|
+
document_type: statistical_data_set
|
174
|
+
- title: Weekly road fuel prices
|
175
|
+
base_path: /government/statistical-data-sets/oil-and-petroleum-products-weekly-statistics
|
176
|
+
document_type: statistical_data_set
|
137
177
|
document_collections:
|
138
178
|
- title: Recruit an apprentice (formerly apprenticeship vacancies)
|
139
179
|
base_path: /government/collections/apprenticeship-vacancies
|
@@ -0,0 +1,19 @@
|
|
1
|
+
name: Warning text
|
2
|
+
description: |
|
3
|
+
Use the warning text component when you need to warn users about something important, such as legal consequences of an action, or lack of action, that they might take.
|
4
|
+
govuk_frontend_components:
|
5
|
+
- warning-text
|
6
|
+
accessibility_criteria: |
|
7
|
+
All text must have a contrast ratio higher than 4.5:1 against the background colour to meet [WCAG AA](https://www.w3.org/TR/WCAG20/#visual-audio-contrast-contrast)
|
8
|
+
examples:
|
9
|
+
default:
|
10
|
+
data:
|
11
|
+
text: "You can be fined up to £5,000 if you don’t register."
|
12
|
+
custom_assistive_text:
|
13
|
+
data:
|
14
|
+
text_assistive: "Danger"
|
15
|
+
text: "You can be fined up to £5,000 if you don’t register."
|
16
|
+
custom_icon_text:
|
17
|
+
data:
|
18
|
+
text_icon: "£"
|
19
|
+
text: "You can be fined up to £5,000 if you don’t register."
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: govuk_publishing_components
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 12.
|
4
|
+
version: 12.3.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- GOV.UK Dev
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2018-10-
|
11
|
+
date: 2018-10-31 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: govuk_app_config
|
@@ -309,6 +309,7 @@ files:
|
|
309
309
|
- app/assets/javascripts/component_guide/visual-regression.js
|
310
310
|
- app/assets/javascripts/govuk_publishing_components/all_components.js
|
311
311
|
- app/assets/javascripts/govuk_publishing_components/components/character-count.js
|
312
|
+
- app/assets/javascripts/govuk_publishing_components/components/checkboxes.js
|
312
313
|
- app/assets/javascripts/govuk_publishing_components/components/copy-to-clipboard.js
|
313
314
|
- app/assets/javascripts/govuk_publishing_components/components/error-summary.js
|
314
315
|
- app/assets/javascripts/govuk_publishing_components/components/feedback.js
|
@@ -327,6 +328,7 @@ files:
|
|
327
328
|
- app/assets/stylesheets/govuk_publishing_components/components/_breadcrumbs.scss
|
328
329
|
- app/assets/stylesheets/govuk_publishing_components/components/_button.scss
|
329
330
|
- app/assets/stylesheets/govuk_publishing_components/components/_character-count.scss
|
331
|
+
- app/assets/stylesheets/govuk_publishing_components/components/_checkboxes.scss
|
330
332
|
- app/assets/stylesheets/govuk_publishing_components/components/_contents-list.scss
|
331
333
|
- app/assets/stylesheets/govuk_publishing_components/components/_copy-to-clipboard.scss
|
332
334
|
- app/assets/stylesheets/govuk_publishing_components/components/_details.scss
|
@@ -375,6 +377,7 @@ files:
|
|
375
377
|
- app/assets/stylesheets/govuk_publishing_components/components/_textarea.scss
|
376
378
|
- app/assets/stylesheets/govuk_publishing_components/components/_title.scss
|
377
379
|
- app/assets/stylesheets/govuk_publishing_components/components/_translation-nav.scss
|
380
|
+
- app/assets/stylesheets/govuk_publishing_components/components/_warning-text.scss
|
378
381
|
- app/assets/stylesheets/govuk_publishing_components/components/govspeak/_advisory.scss
|
379
382
|
- app/assets/stylesheets/govuk_publishing_components/components/govspeak/_attachment.scss
|
380
383
|
- app/assets/stylesheets/govuk_publishing_components/components/govspeak/_button.scss
|
@@ -434,6 +437,7 @@ files:
|
|
434
437
|
- app/views/govuk_publishing_components/components/_breadcrumbs.html.erb
|
435
438
|
- app/views/govuk_publishing_components/components/_button.html.erb
|
436
439
|
- app/views/govuk_publishing_components/components/_character_count.html.erb
|
440
|
+
- app/views/govuk_publishing_components/components/_checkboxes.html.erb
|
437
441
|
- app/views/govuk_publishing_components/components/_contents_list.html.erb
|
438
442
|
- app/views/govuk_publishing_components/components/_contextual_breadcrumbs.html.erb
|
439
443
|
- app/views/govuk_publishing_components/components/_contextual_sidebar.html.erb
|
@@ -488,11 +492,13 @@ files:
|
|
488
492
|
- app/views/govuk_publishing_components/components/_textarea.html.erb
|
489
493
|
- app/views/govuk_publishing_components/components/_title.html.erb
|
490
494
|
- app/views/govuk_publishing_components/components/_translation-nav.html.erb
|
495
|
+
- app/views/govuk_publishing_components/components/_warning_text.html.erb
|
491
496
|
- app/views/govuk_publishing_components/components/docs/admin_analytics.yml
|
492
497
|
- app/views/govuk_publishing_components/components/docs/back_link.yml
|
493
498
|
- app/views/govuk_publishing_components/components/docs/breadcrumbs.yml
|
494
499
|
- app/views/govuk_publishing_components/components/docs/button.yml
|
495
500
|
- app/views/govuk_publishing_components/components/docs/character_count.yml
|
501
|
+
- app/views/govuk_publishing_components/components/docs/checkboxes.yml
|
496
502
|
- app/views/govuk_publishing_components/components/docs/contents_list.yml
|
497
503
|
- app/views/govuk_publishing_components/components/docs/contextual_breadcrumbs.yml
|
498
504
|
- app/views/govuk_publishing_components/components/docs/contextual_sidebar.yml
|
@@ -547,6 +553,7 @@ files:
|
|
547
553
|
- app/views/govuk_publishing_components/components/docs/textarea.yml
|
548
554
|
- app/views/govuk_publishing_components/components/docs/title.yml
|
549
555
|
- app/views/govuk_publishing_components/components/docs/translation-nav.yml
|
556
|
+
- app/views/govuk_publishing_components/components/docs/warning_text.yml
|
550
557
|
- app/views/govuk_publishing_components/components/metadata/_sentence.html.erb
|
551
558
|
- app/views/govuk_publishing_components/components/related_navigation/_section.html.erb
|
552
559
|
- app/views/layouts/govuk_publishing_components/application.html.erb
|