govuk_publishing_components 9.20.0 → 9.21.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/app/assets/stylesheets/govuk_publishing_components/_all_components.scss +1 -0
- data/app/assets/stylesheets/govuk_publishing_components/components/_file-upload.scss +7 -0
- data/app/views/govuk_publishing_components/components/_error_alert.html.erb +1 -1
- data/app/views/govuk_publishing_components/components/_file_upload.html.erb +56 -0
- data/app/views/govuk_publishing_components/components/_success_alert.html.erb +1 -1
- data/app/views/govuk_publishing_components/components/docs/file_upload.yml +40 -0
- data/lib/govuk_publishing_components/version.rb +1 -1
- metadata +5 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 55ad79f1bb2e0d87fefc7c68af65e712885251ecf110806681bdb8a387e84fac
|
4
|
+
data.tar.gz: 61591e06015bcac46ec5646e43a7580f7afa018f88d38bd318cf061c0ada9b1a
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: cc27199d7464e20dcf691f0580ffc4304e50c2e4615f185337062fdaab57cd84d791b599cf2ae22141e31505e05eb16fb0e67a293a7834d14fc2e395721c5815
|
7
|
+
data.tar.gz: 97da9fd42557e53dc5505f4b5794d9e9e3349ce2b62738a8138f720d2bab7178da11082a7ef7df3e3bf1935272fd5c30e71a3e4a1c900784935a6ffa214ac54b
|
@@ -0,0 +1,7 @@
|
|
1
|
+
// This component relies on styles from GOV.UK Frontend
|
2
|
+
|
3
|
+
// Specify the functions used to resolve assets paths in SCSS
|
4
|
+
$govuk-font-url-function: "font-url";
|
5
|
+
|
6
|
+
@import "../../../../node_modules/govuk-frontend/components/file-upload/file-upload";
|
7
|
+
@import "../../../../node_modules/govuk-frontend/objects/form-group";
|
@@ -3,7 +3,7 @@
|
|
3
3
|
<%= tag.div class: "gem-c-error-alert", data: { module: "initial-focus" }, role: "alert", tabindex: "-1" do %>
|
4
4
|
<% if description.present? %>
|
5
5
|
<%= tag.h2 message, class: "gem-c-error-summary__title" %>
|
6
|
-
<%= tag.
|
6
|
+
<%= tag.div description, class: "gem-c-error-summary__body" %>
|
7
7
|
<% else %>
|
8
8
|
<%= tag.p message, class: "gem-c-error-alert__message" %>
|
9
9
|
<% end %>
|
@@ -0,0 +1,56 @@
|
|
1
|
+
<%
|
2
|
+
id ||= "file-upload-#{SecureRandom.hex(4)}"
|
3
|
+
value ||= nil
|
4
|
+
accept ||= nil
|
5
|
+
data ||= nil
|
6
|
+
|
7
|
+
label ||= nil
|
8
|
+
hint ||= nil
|
9
|
+
error_message ||= nil
|
10
|
+
hint_id = "hint-#{SecureRandom.hex(4)}" if hint
|
11
|
+
error_message_id = "error-message-#{SecureRandom.hex(4)}" if error_message
|
12
|
+
|
13
|
+
css_classes = %w(gem-c-file-upload govuk-file-upload)
|
14
|
+
css_classes << "govuk-file-upload--error" if error_message
|
15
|
+
form_group_css_classes = %w(govuk-form-group)
|
16
|
+
form_group_css_classes << "govuk-form-group--error" if error_message
|
17
|
+
|
18
|
+
aria_described_by ||= nil
|
19
|
+
if hint || error_message
|
20
|
+
aria_described_by = []
|
21
|
+
aria_described_by << hint_id if hint
|
22
|
+
aria_described_by << error_message_id if error_message
|
23
|
+
aria_described_by = aria_described_by.join(" ")
|
24
|
+
end
|
25
|
+
%>
|
26
|
+
|
27
|
+
<%= content_tag :div, class: form_group_css_classes do %>
|
28
|
+
<% if label %>
|
29
|
+
<%= render "govuk_publishing_components/components/label", { html_for: id, text: label[:text] }.merge(label) %>
|
30
|
+
<% end %>
|
31
|
+
|
32
|
+
<% if hint %>
|
33
|
+
<%= render "govuk_publishing_components/components/hint", {
|
34
|
+
id: hint_id,
|
35
|
+
text: hint
|
36
|
+
} %>
|
37
|
+
<% end %>
|
38
|
+
|
39
|
+
<% if error_message %>
|
40
|
+
<%= render "govuk_publishing_components/components/error_message", {
|
41
|
+
id: error_message_id,
|
42
|
+
text: error_message
|
43
|
+
} %>
|
44
|
+
<% end %>
|
45
|
+
|
46
|
+
<%= tag.input name: name,
|
47
|
+
type: "file",
|
48
|
+
value: value,
|
49
|
+
class: css_classes,
|
50
|
+
id: id,
|
51
|
+
data: data,
|
52
|
+
accept: accept,
|
53
|
+
aria: {
|
54
|
+
describedby: aria_described_by
|
55
|
+
} %>
|
56
|
+
<% end %>
|
@@ -3,7 +3,7 @@
|
|
3
3
|
<%= tag.div class: "gem-c-success-alert", data: { module: "initial-focus" }, role: "alert", tabindex: "-1" do %>
|
4
4
|
<% if description.present? %>
|
5
5
|
<%= tag.h2 message, class: "gem-c-success-summary__title" %>
|
6
|
-
<%= tag.
|
6
|
+
<%= tag.div description, class: "gem-c-success-summary__body" %>
|
7
7
|
<% else %>
|
8
8
|
<%= tag.p message, class: "gem-c-success-alert__message" %>
|
9
9
|
<% end %>
|
@@ -0,0 +1,40 @@
|
|
1
|
+
name: Form file upload
|
2
|
+
description: Help users select and upload a file
|
3
|
+
govuk_frontend_components:
|
4
|
+
- file-upload
|
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 input field elements
|
14
|
+
- have correctly associated labels
|
15
|
+
|
16
|
+
Labels use the [label component](/component-guide/label).
|
17
|
+
examples:
|
18
|
+
default:
|
19
|
+
data:
|
20
|
+
label:
|
21
|
+
text: "Upload a file"
|
22
|
+
name: "file-upload"
|
23
|
+
with_hint:
|
24
|
+
data:
|
25
|
+
label:
|
26
|
+
text: "Upload a file"
|
27
|
+
name: "file-upload-with-hint"
|
28
|
+
hint: "Your photo may be in your Pictures, Photos, Downloads or Desktop folder. Or in an app like iPhoto."
|
29
|
+
with_error:
|
30
|
+
data:
|
31
|
+
label:
|
32
|
+
text: "Upload a file"
|
33
|
+
name: "file-upload-with-error"
|
34
|
+
error_message: "Please upload a file"
|
35
|
+
with_file_accept:
|
36
|
+
data:
|
37
|
+
label:
|
38
|
+
text: "Upload an image"
|
39
|
+
name: "file-upload-specific"
|
40
|
+
accept: "image/*"
|
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: 9.
|
4
|
+
version: 9.21.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-09-
|
11
|
+
date: 2018-09-14 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: govuk_app_config
|
@@ -350,6 +350,7 @@ files:
|
|
350
350
|
- app/assets/stylesheets/govuk_publishing_components/components/_error-summary.scss
|
351
351
|
- app/assets/stylesheets/govuk_publishing_components/components/_feedback.scss
|
352
352
|
- app/assets/stylesheets/govuk_publishing_components/components/_fieldset.scss
|
353
|
+
- app/assets/stylesheets/govuk_publishing_components/components/_file-upload.scss
|
353
354
|
- app/assets/stylesheets/govuk_publishing_components/components/_govspeak-html-publication.scss
|
354
355
|
- app/assets/stylesheets/govuk_publishing_components/components/_govspeak.scss
|
355
356
|
- app/assets/stylesheets/govuk_publishing_components/components/_heading.scss
|
@@ -455,6 +456,7 @@ files:
|
|
455
456
|
- app/views/govuk_publishing_components/components/_error_summary.html.erb
|
456
457
|
- app/views/govuk_publishing_components/components/_feedback.html.erb
|
457
458
|
- app/views/govuk_publishing_components/components/_fieldset.html.erb
|
459
|
+
- app/views/govuk_publishing_components/components/_file_upload.html.erb
|
458
460
|
- app/views/govuk_publishing_components/components/_google_tag_manager_script.html.erb
|
459
461
|
- app/views/govuk_publishing_components/components/_government_navigation.html.erb
|
460
462
|
- app/views/govuk_publishing_components/components/_govspeak.html.erb
|
@@ -510,6 +512,7 @@ files:
|
|
510
512
|
- app/views/govuk_publishing_components/components/docs/error_summary.yml
|
511
513
|
- app/views/govuk_publishing_components/components/docs/feedback.yml
|
512
514
|
- app/views/govuk_publishing_components/components/docs/fieldset.yml
|
515
|
+
- app/views/govuk_publishing_components/components/docs/file_upload.yml
|
513
516
|
- app/views/govuk_publishing_components/components/docs/google_tag_manager_script.yml
|
514
517
|
- app/views/govuk_publishing_components/components/docs/government_navigation.yml
|
515
518
|
- app/views/govuk_publishing_components/components/docs/govspeak.yml
|