govuk_publishing_components 21.52.1 → 21.55.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (131) hide show
  1. checksums.yaml +4 -4
  2. data/app/assets/images/govuk_publishing_components/action-link--nhs.png +0 -0
  3. data/app/assets/images/govuk_publishing_components/action-link--nhs.svg +1 -0
  4. data/app/assets/images/govuk_publishing_components/action-link-arrow--dark.png +0 -0
  5. data/app/assets/images/govuk_publishing_components/action-link-arrow--simple.png +0 -0
  6. data/app/assets/images/govuk_publishing_components/action-link-arrow.png +0 -0
  7. data/app/assets/stylesheets/govuk_publishing_components/components/_action-link.scss +38 -7
  8. data/app/assets/stylesheets/govuk_publishing_components/components/_back-link.scss +0 -38
  9. data/app/controllers/govuk_publishing_components/component_guide_controller.rb +34 -22
  10. data/app/views/govuk_publishing_components/components/_action_link.html.erb +23 -3
  11. data/app/views/govuk_publishing_components/components/_contextual_breadcrumbs.html.erb +5 -36
  12. data/app/views/govuk_publishing_components/components/_step_by_step_nav_header.html.erb +28 -8
  13. data/app/views/govuk_publishing_components/components/docs/action_link.yml +43 -15
  14. data/app/views/govuk_publishing_components/components/docs/step_by_step_nav_header.yml +23 -0
  15. data/lib/govuk_publishing_components.rb +1 -0
  16. data/lib/govuk_publishing_components/presenters/breadcrumb_selector.rb +107 -0
  17. data/lib/govuk_publishing_components/presenters/content_breadcrumbs_based_on_priority.rb +14 -1
  18. data/lib/govuk_publishing_components/presenters/content_breadcrumbs_based_on_taxons.rb +1 -3
  19. data/lib/govuk_publishing_components/presenters/contextual_navigation.rb +40 -19
  20. data/lib/govuk_publishing_components/presenters/machine_readable/faq_page_schema.rb +7 -6
  21. data/lib/govuk_publishing_components/presenters/machine_readable/html_publication_schema.rb +77 -0
  22. data/lib/govuk_publishing_components/presenters/schema_org.rb +24 -16
  23. data/lib/govuk_publishing_components/version.rb +1 -1
  24. data/node_modules/axe-core/CHANGELOG.md +6 -0
  25. data/node_modules/axe-core/axe.js +19 -3
  26. data/node_modules/axe-core/axe.min.js +2 -2
  27. data/node_modules/axe-core/bower.json +1 -1
  28. data/node_modules/axe-core/lib/commons/dom/get-element-stack.js +27 -1
  29. data/node_modules/axe-core/package.json +23 -23
  30. data/node_modules/axe-core/sri-history.json +4 -0
  31. data/node_modules/govuk-frontend/README.md +6 -6
  32. data/node_modules/govuk-frontend/govuk/_base.scss +3 -0
  33. data/node_modules/govuk-frontend/govuk/all.js +1 -1
  34. data/node_modules/govuk-frontend/govuk/all.scss +1 -3
  35. data/node_modules/govuk-frontend/govuk/components/_all.scss +31 -29
  36. data/node_modules/govuk-frontend/govuk/components/accordion/_accordion.scss +2 -208
  37. data/node_modules/govuk-frontend/govuk/components/accordion/_index.scss +207 -0
  38. data/node_modules/govuk-frontend/govuk/components/accordion/accordion.js +1 -1
  39. data/node_modules/govuk-frontend/govuk/components/back-link/_back-link.scss +2 -65
  40. data/node_modules/govuk-frontend/govuk/components/back-link/_index.scss +112 -0
  41. data/node_modules/govuk-frontend/govuk/components/breadcrumbs/_breadcrumbs.scss +2 -118
  42. data/node_modules/govuk-frontend/govuk/components/breadcrumbs/_index.scss +138 -0
  43. data/node_modules/govuk-frontend/govuk/components/breadcrumbs/macro-options.json +6 -0
  44. data/node_modules/govuk-frontend/govuk/components/breadcrumbs/template.njk +12 -1
  45. data/node_modules/govuk-frontend/govuk/components/button/_button.scss +2 -284
  46. data/node_modules/govuk-frontend/govuk/components/button/_index.scss +280 -0
  47. data/node_modules/govuk-frontend/govuk/components/character-count/_character-count.scss +2 -31
  48. data/node_modules/govuk-frontend/govuk/components/character-count/_index.scss +28 -0
  49. data/node_modules/govuk-frontend/govuk/components/checkboxes/_checkboxes.scss +2 -308
  50. data/node_modules/govuk-frontend/govuk/components/checkboxes/_index.scss +304 -0
  51. data/node_modules/govuk-frontend/govuk/components/date-input/_date-input.scss +2 -30
  52. data/node_modules/govuk-frontend/govuk/components/date-input/_index.scss +26 -0
  53. data/node_modules/govuk-frontend/govuk/components/details/_details.scss +2 -88
  54. data/node_modules/govuk-frontend/govuk/components/details/_index.scss +84 -0
  55. data/node_modules/govuk-frontend/govuk/components/error-message/_error-message.scss +2 -15
  56. data/node_modules/govuk-frontend/govuk/components/error-message/_index.scss +11 -0
  57. data/node_modules/govuk-frontend/govuk/components/error-summary/_error-summary.scss +2 -59
  58. data/node_modules/govuk-frontend/govuk/components/error-summary/_index.scss +55 -0
  59. data/node_modules/govuk-frontend/govuk/components/fieldset/_fieldset.scss +2 -68
  60. data/node_modules/govuk-frontend/govuk/components/fieldset/_index.scss +64 -0
  61. data/node_modules/govuk-frontend/govuk/components/file-upload/_file-upload.scss +2 -81
  62. data/node_modules/govuk-frontend/govuk/components/file-upload/_index.scss +77 -0
  63. data/node_modules/govuk-frontend/govuk/components/footer/_footer.scss +2 -244
  64. data/node_modules/govuk-frontend/govuk/components/footer/_index.scss +238 -0
  65. data/node_modules/govuk-frontend/govuk/components/header/_header.scss +2 -318
  66. data/node_modules/govuk-frontend/govuk/components/header/_index.scss +312 -0
  67. data/node_modules/govuk-frontend/govuk/components/header/macro-options.json +7 -1
  68. data/node_modules/govuk-frontend/govuk/components/header/template.njk +2 -2
  69. data/node_modules/govuk-frontend/govuk/components/hint/_hint.scss +2 -50
  70. data/node_modules/govuk-frontend/govuk/components/hint/_index.scss +46 -0
  71. data/node_modules/govuk-frontend/govuk/components/input/_index.scss +99 -0
  72. data/node_modules/govuk-frontend/govuk/components/input/_input.scss +2 -103
  73. data/node_modules/govuk-frontend/govuk/components/inset-text/_index.scss +24 -0
  74. data/node_modules/govuk-frontend/govuk/components/inset-text/_inset-text.scss +2 -28
  75. data/node_modules/govuk-frontend/govuk/components/label/_index.scss +41 -0
  76. data/node_modules/govuk-frontend/govuk/components/label/_label.scss +2 -45
  77. data/node_modules/govuk-frontend/govuk/components/panel/_index.scss +40 -0
  78. data/node_modules/govuk-frontend/govuk/components/panel/_panel.scss +2 -44
  79. data/node_modules/govuk-frontend/govuk/components/phase-banner/_index.scss +27 -0
  80. data/node_modules/govuk-frontend/govuk/components/phase-banner/_phase-banner.scss +2 -31
  81. data/node_modules/govuk-frontend/govuk/components/radios/_index.scss +342 -0
  82. data/node_modules/govuk-frontend/govuk/components/radios/_radios.scss +2 -346
  83. data/node_modules/govuk-frontend/govuk/components/select/_index.scss +53 -0
  84. data/node_modules/govuk-frontend/govuk/components/select/_select.scss +2 -57
  85. data/node_modules/govuk-frontend/govuk/components/skip-link/_index.scss +33 -0
  86. data/node_modules/govuk-frontend/govuk/components/skip-link/_skip-link.scss +2 -37
  87. data/node_modules/govuk-frontend/govuk/components/summary-list/_index.scss +153 -0
  88. data/node_modules/govuk-frontend/govuk/components/summary-list/_summary-list.scss +2 -157
  89. data/node_modules/govuk-frontend/govuk/components/table/_index.scss +50 -0
  90. data/node_modules/govuk-frontend/govuk/components/table/_table.scss +2 -54
  91. data/node_modules/govuk-frontend/govuk/components/tabs/_index.scss +138 -0
  92. data/node_modules/govuk-frontend/govuk/components/tabs/_tabs.scss +2 -142
  93. data/node_modules/govuk-frontend/govuk/components/tag/_index.scss +87 -0
  94. data/node_modules/govuk-frontend/govuk/components/tag/_tag.scss +2 -91
  95. data/node_modules/govuk-frontend/govuk/components/textarea/_index.scss +51 -0
  96. data/node_modules/govuk-frontend/govuk/components/textarea/_textarea.scss +2 -55
  97. data/node_modules/govuk-frontend/govuk/components/warning-text/_index.scss +56 -0
  98. data/node_modules/govuk-frontend/govuk/components/warning-text/_warning-text.scss +2 -60
  99. data/node_modules/govuk-frontend/govuk/core/_global-styles.scss +5 -3
  100. data/node_modules/govuk-frontend/govuk/core/_links.scss +5 -3
  101. data/node_modules/govuk-frontend/govuk/core/_lists.scss +17 -3
  102. data/node_modules/govuk-frontend/govuk/core/_section-break.scss +5 -3
  103. data/node_modules/govuk-frontend/govuk/core/_template.scss +5 -3
  104. data/node_modules/govuk-frontend/govuk/core/_typography.scss +5 -3
  105. data/node_modules/govuk-frontend/govuk/helpers/_clearfix.scss +1 -1
  106. data/node_modules/govuk-frontend/govuk/helpers/_focused.scss +1 -1
  107. data/node_modules/govuk-frontend/govuk/helpers/_grid.scss +2 -1
  108. data/node_modules/govuk-frontend/govuk/helpers/_links.scss +1 -1
  109. data/node_modules/govuk-frontend/govuk/helpers/_media-queries.scss +1 -1
  110. data/node_modules/govuk-frontend/govuk/helpers/_shape-arrow.scss +1 -1
  111. data/node_modules/govuk-frontend/govuk/helpers/_spacing.scss +1 -1
  112. data/node_modules/govuk-frontend/govuk/helpers/_typography.scss +1 -1
  113. data/node_modules/govuk-frontend/govuk/helpers/_visually-hidden.scss +1 -1
  114. data/node_modules/govuk-frontend/govuk/objects/_form-group.scss +1 -3
  115. data/node_modules/govuk-frontend/govuk/objects/_grid.scss +1 -3
  116. data/node_modules/govuk-frontend/govuk/objects/_main-wrapper.scss +5 -3
  117. data/node_modules/govuk-frontend/govuk/objects/_width-container.scss +2 -4
  118. data/node_modules/govuk-frontend/govuk/overrides/_display.scss +5 -3
  119. data/node_modules/govuk-frontend/govuk/overrides/_spacing.scss +5 -3
  120. data/node_modules/govuk-frontend/govuk/overrides/_typography.scss +5 -3
  121. data/node_modules/govuk-frontend/govuk/overrides/_width.scss +5 -3
  122. data/node_modules/govuk-frontend/govuk/settings/_ie8.scss +1 -1
  123. data/node_modules/govuk-frontend/govuk/tools/_compatibility.scss +1 -1
  124. data/node_modules/govuk-frontend/govuk/tools/_font-url.scss +1 -1
  125. data/node_modules/govuk-frontend/govuk/tools/_ie8.scss +1 -1
  126. data/node_modules/govuk-frontend/govuk/tools/_image-url.scss +1 -1
  127. data/node_modules/govuk-frontend/govuk/tools/_px-to-em.scss +1 -1
  128. data/node_modules/govuk-frontend/govuk/tools/_px-to-rem.scss +1 -1
  129. data/node_modules/govuk-frontend/package.json +23 -23
  130. data/node_modules/jquery/package.json +2 -2
  131. metadata +50 -2
@@ -0,0 +1,84 @@
1
+ @include govuk-exports("govuk/component/details") {
2
+
3
+ .govuk-details {
4
+ @include govuk-font($size: 19);
5
+ @include govuk-text-colour;
6
+ @include govuk-responsive-margin(6, "bottom");
7
+
8
+ display: block;
9
+ }
10
+
11
+ .govuk-details__summary {
12
+ // Make the focus outline shrink-wrap the text content of the summary
13
+ display: inline-block;
14
+
15
+ // Absolutely position the marker against this element
16
+ position: relative;
17
+
18
+ margin-bottom: govuk-spacing(1);
19
+
20
+ // Allow for absolutely positioned marker and align with disclosed text
21
+ padding-left: govuk-spacing(4) + $govuk-border-width;
22
+
23
+ // Style the summary to look like a link...
24
+ color: $govuk-link-colour;
25
+ cursor: pointer;
26
+
27
+ &:hover {
28
+ color: $govuk-link-hover-colour;
29
+ }
30
+
31
+ &:focus {
32
+ @include govuk-focused-text;
33
+ }
34
+ }
35
+
36
+ // ...but only underline the text, not the arrow
37
+ .govuk-details__summary-text {
38
+ text-decoration: underline;
39
+ }
40
+
41
+ // Remove the underline when focussed to avoid duplicate borders
42
+ .govuk-details__summary:focus .govuk-details__summary-text {
43
+ text-decoration: none;
44
+ }
45
+
46
+ // Remove the default details marker so we can style our own consistently and
47
+ // ensure it displays in Firefox (see implementation.md for details)
48
+ .govuk-details__summary::-webkit-details-marker {
49
+ display: none;
50
+ }
51
+
52
+ // Append our own open / closed marker using a pseudo-element
53
+ .govuk-details__summary:before {
54
+ content: "";
55
+ position: absolute;
56
+
57
+ top: -1px;
58
+ bottom: 0;
59
+ left: 0;
60
+
61
+ margin: auto;
62
+
63
+ @include govuk-shape-arrow($direction: right, $base: 14px);
64
+
65
+ .govuk-details[open] > & {
66
+ @include govuk-shape-arrow($direction: down, $base: 14px);
67
+ }
68
+ }
69
+
70
+ .govuk-details__text {
71
+ padding: govuk-spacing(3);
72
+ padding-left: govuk-spacing(4);
73
+ border-left: $govuk-border-width solid $govuk-border-colour;
74
+ }
75
+
76
+ .govuk-details__text p {
77
+ margin-top: 0;
78
+ margin-bottom: govuk-spacing(4);
79
+ }
80
+
81
+ .govuk-details__text > :last-child {
82
+ margin-bottom: 0;
83
+ }
84
+ }
@@ -1,15 +1,2 @@
1
- @import "../../settings/all";
2
- @import "../../tools/all";
3
- @import "../../helpers/all";
4
-
5
- @include govuk-exports("govuk/component/error-message") {
6
- .govuk-error-message {
7
- @include govuk-font($size: 19, $weight: bold);
8
-
9
- display: block;
10
- margin-bottom: govuk-spacing(3);
11
- clear: both;
12
-
13
- color: $govuk-error-colour;
14
- }
15
- }
1
+ @import "../../base";
2
+ @import "./index";
@@ -0,0 +1,11 @@
1
+ @include govuk-exports("govuk/component/error-message") {
2
+ .govuk-error-message {
3
+ @include govuk-font($size: 19, $weight: bold);
4
+
5
+ display: block;
6
+ margin-bottom: govuk-spacing(3);
7
+ clear: both;
8
+
9
+ color: $govuk-error-colour;
10
+ }
11
+ }
@@ -1,59 +1,2 @@
1
- @import "../../settings/all";
2
- @import "../../tools/all";
3
- @import "../../helpers/all";
4
-
5
- @import "../../core/lists";
6
-
7
- @include govuk-exports("govuk/component/error-summary") {
8
-
9
- .govuk-error-summary {
10
- @include govuk-text-colour;
11
- @include govuk-responsive-padding(4);
12
- @include govuk-responsive-margin(8, "bottom");
13
-
14
- border: $govuk-border-width solid $govuk-error-colour;
15
-
16
- &:focus {
17
- outline: $govuk-focus-width solid $govuk-focus-colour;
18
- }
19
- }
20
-
21
- .govuk-error-summary__title {
22
- @include govuk-font($size: 24, $weight: bold);
23
-
24
- margin-top: 0;
25
- @include govuk-responsive-margin(4, "bottom");
26
- }
27
-
28
- .govuk-error-summary__body {
29
- @include govuk-font($size: 19);
30
-
31
- p {
32
- margin-top: 0;
33
- @include govuk-responsive-margin(4, "bottom");
34
- }
35
- }
36
-
37
- // Cross-component class - adjusts styling of list component
38
- .govuk-error-summary__list {
39
- margin-top: 0;
40
- margin-bottom: 0;
41
- }
42
-
43
- .govuk-error-summary__list a {
44
- @include govuk-typography-weight-bold;
45
-
46
- // Override default link styling to use error colour
47
- &:link,
48
- &:visited,
49
- &:hover,
50
- &:active {
51
- color: $govuk-error-colour;
52
- }
53
-
54
- &:focus {
55
- @include govuk-focused-text;
56
- }
57
- }
58
-
59
- }
1
+ @import "../../base";
2
+ @import "./index";
@@ -0,0 +1,55 @@
1
+ @import "../../core/lists";
2
+
3
+ @include govuk-exports("govuk/component/error-summary") {
4
+
5
+ .govuk-error-summary {
6
+ @include govuk-text-colour;
7
+ @include govuk-responsive-padding(4);
8
+ @include govuk-responsive-margin(8, "bottom");
9
+
10
+ border: $govuk-border-width solid $govuk-error-colour;
11
+
12
+ &:focus {
13
+ outline: $govuk-focus-width solid $govuk-focus-colour;
14
+ }
15
+ }
16
+
17
+ .govuk-error-summary__title {
18
+ @include govuk-font($size: 24, $weight: bold);
19
+
20
+ margin-top: 0;
21
+ @include govuk-responsive-margin(4, "bottom");
22
+ }
23
+
24
+ .govuk-error-summary__body {
25
+ @include govuk-font($size: 19);
26
+
27
+ p {
28
+ margin-top: 0;
29
+ @include govuk-responsive-margin(4, "bottom");
30
+ }
31
+ }
32
+
33
+ // Cross-component class - adjusts styling of list component
34
+ .govuk-error-summary__list {
35
+ margin-top: 0;
36
+ margin-bottom: 0;
37
+ }
38
+
39
+ .govuk-error-summary__list a {
40
+ @include govuk-typography-weight-bold;
41
+
42
+ // Override default link styling to use error colour
43
+ &:link,
44
+ &:visited,
45
+ &:hover,
46
+ &:active {
47
+ color: $govuk-error-colour;
48
+ }
49
+
50
+ &:focus {
51
+ @include govuk-focused-text;
52
+ }
53
+ }
54
+
55
+ }
@@ -1,68 +1,2 @@
1
- @import "../../settings/all";
2
- @import "../../tools/all";
3
- @import "../../helpers/all";
4
-
5
- @include govuk-exports("govuk/component/fieldset") {
6
- .govuk-fieldset {
7
- min-width: 0;
8
- margin: 0;
9
- padding: 0;
10
- border: 0;
11
- @include govuk-clearfix;
12
- }
13
-
14
- // Fix for Firefox < 53
15
- // https://bugzilla.mozilla.org/show_bug.cgi?id=504622
16
- @supports not (caret-color: auto) {
17
- .govuk-fieldset,
18
- x:-moz-any-link {
19
- display: table-cell;
20
- }
21
- }
22
-
23
- .govuk-fieldset__legend {
24
- @include govuk-font($size: 19);
25
- @include govuk-text-colour;
26
-
27
- // Fix legend text wrapping in Edge and IE
28
- // 1. IE9-11 & Edge 12-13
29
- // 2. IE8-11
30
- box-sizing: border-box; // 1
31
- display: table; // 2
32
- max-width: 100%; // 1
33
- margin-bottom: govuk-spacing(2);
34
- padding: 0;
35
-
36
- white-space: normal; // 1
37
- }
38
-
39
- // Modifiers that make legends look more like their equivalent headings
40
-
41
- .govuk-fieldset__legend--xl {
42
- @include govuk-font($size: 48, $weight: bold);
43
- margin-bottom: govuk-spacing(3);
44
- }
45
-
46
- .govuk-fieldset__legend--l {
47
- @include govuk-font($size: 36, $weight: bold);
48
- margin-bottom: govuk-spacing(3);
49
- }
50
-
51
- .govuk-fieldset__legend--m {
52
- @include govuk-font($size: 24, $weight: bold);
53
- margin-bottom: govuk-spacing(3);
54
- }
55
-
56
- .govuk-fieldset__legend--s {
57
- @include govuk-font($size: 19, $weight: bold);
58
- }
59
-
60
- // When the legend contains an H1, we want the H1 to inherit all styles from
61
- // the legend. Effectively we want to be able to treat the heading as if it is
62
- // not there.
63
- .govuk-fieldset__heading {
64
- margin: 0;
65
- font-size: inherit;
66
- font-weight: inherit;
67
- }
68
- }
1
+ @import "../../base";
2
+ @import "./index";
@@ -0,0 +1,64 @@
1
+ @include govuk-exports("govuk/component/fieldset") {
2
+ .govuk-fieldset {
3
+ min-width: 0;
4
+ margin: 0;
5
+ padding: 0;
6
+ border: 0;
7
+ @include govuk-clearfix;
8
+ }
9
+
10
+ // Fix for Firefox < 53
11
+ // https://bugzilla.mozilla.org/show_bug.cgi?id=504622
12
+ @supports not (caret-color: auto) {
13
+ .govuk-fieldset,
14
+ x:-moz-any-link {
15
+ display: table-cell;
16
+ }
17
+ }
18
+
19
+ .govuk-fieldset__legend {
20
+ @include govuk-font($size: 19);
21
+ @include govuk-text-colour;
22
+
23
+ // Fix legend text wrapping in Edge and IE
24
+ // 1. IE9-11 & Edge 12-13
25
+ // 2. IE8-11
26
+ box-sizing: border-box; // 1
27
+ display: table; // 2
28
+ max-width: 100%; // 1
29
+ margin-bottom: govuk-spacing(2);
30
+ padding: 0;
31
+
32
+ white-space: normal; // 1
33
+ }
34
+
35
+ // Modifiers that make legends look more like their equivalent headings
36
+
37
+ .govuk-fieldset__legend--xl {
38
+ @include govuk-font($size: 48, $weight: bold);
39
+ margin-bottom: govuk-spacing(3);
40
+ }
41
+
42
+ .govuk-fieldset__legend--l {
43
+ @include govuk-font($size: 36, $weight: bold);
44
+ margin-bottom: govuk-spacing(3);
45
+ }
46
+
47
+ .govuk-fieldset__legend--m {
48
+ @include govuk-font($size: 24, $weight: bold);
49
+ margin-bottom: govuk-spacing(3);
50
+ }
51
+
52
+ .govuk-fieldset__legend--s {
53
+ @include govuk-font($size: 19, $weight: bold);
54
+ }
55
+
56
+ // When the legend contains an H1, we want the H1 to inherit all styles from
57
+ // the legend. Effectively we want to be able to treat the heading as if it is
58
+ // not there.
59
+ .govuk-fieldset__heading {
60
+ margin: 0;
61
+ font-size: inherit;
62
+ font-weight: inherit;
63
+ }
64
+ }
@@ -1,81 +1,2 @@
1
- @import "../../settings/all";
2
- @import "../../tools/all";
3
- @import "../../helpers/all";
4
-
5
- @import "../error-message/error-message";
6
- @import "../hint/hint";
7
- @import "../label/label";
8
-
9
- @include govuk-exports("govuk/component/file-upload") {
10
- $component-padding: govuk-spacing(1);
11
-
12
- .govuk-file-upload {
13
- @include govuk-font($size: 19);
14
- @include govuk-text-colour;
15
- padding-top: $component-padding;
16
- padding-bottom: $component-padding;
17
-
18
- &:focus {
19
- // "Yank" the padding with negative margin to avoid a jump
20
- // when element is focused
21
- margin-right: -$component-padding;
22
- margin-left: -$component-padding;
23
- padding-right: $component-padding;
24
- padding-left: $component-padding;
25
-
26
- outline: $govuk-focus-width solid $govuk-focus-colour;
27
- // Use `box-shadow` to add border instead of changing `border-width`
28
- // (which changes element size) and since `outline` is already used for the
29
- // yellow focus state.
30
- box-shadow: inset 0 0 0 4px $govuk-input-border-colour;
31
-
32
- @include govuk-if-ie8 {
33
- // IE8 doesn't support `box-shadow` so add an actual border
34
- border: 4px solid $govuk-input-border-colour;
35
- }
36
- }
37
-
38
- // Set "focus-within" to fix https://bugzilla.mozilla.org/show_bug.cgi?id=1430196
39
- // so that component receives focus in Firefox.
40
- // This can't be set together with `:focus` as all versions of IE fail
41
- // to recognise `focus-within` and don't set any styles from the block
42
- // when it's a selector.
43
- &:focus-within {
44
- margin-right: -$component-padding;
45
- margin-left: -$component-padding;
46
- padding-right: $component-padding;
47
- padding-left: $component-padding;
48
-
49
- outline: $govuk-focus-width solid $govuk-focus-colour;
50
-
51
- box-shadow: inset 0 0 0 4px $govuk-input-border-colour;
52
- }
53
- }
54
-
55
- .govuk-file-upload--error {
56
- // As `upload--error` has border, it needs to have the same padding as
57
- // the standard focused element.
58
- margin-right: -$component-padding;
59
- margin-left: -$component-padding;
60
- padding-right: $component-padding;
61
- padding-left: $component-padding;
62
- border: $govuk-border-width-form-element-error solid $govuk-error-colour;
63
-
64
- &:focus {
65
- border-color: $govuk-input-border-colour;
66
- // Remove `box-shadow` inherited from `:focus` as `file-upload--error`
67
- // already has the thicker border.
68
- box-shadow: none;
69
- }
70
-
71
- // Repeat `:focus` styles to prevent error styles from being applied when
72
- // input button is pressed as this moves the focus to "within".
73
- // This can't be set together with `:focus` as all versions of IE fail
74
- // to recognise `focus-within` and don't set any styles from the block
75
- // when it's a selector.
76
- &:focus-within {
77
- border-color: $govuk-input-border-colour;
78
- box-shadow: none;
79
- }
80
- }
81
- }
1
+ @import "../../base";
2
+ @import "./index";