@ons/design-system 50.0.1 → 53.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (182) hide show
  1. package/README.md +35 -15
  2. package/components/access-code/_macro.njk +1 -1
  3. package/components/access-code/_macro.spec.js +162 -0
  4. package/components/access-code/uac.spec.js +26 -0
  5. package/components/accordion/_macro.spec.js +224 -0
  6. package/components/accordion/accordion.spec.js +134 -0
  7. package/components/address-input/_macro.njk +1 -1
  8. package/components/address-input/_macro.spec.js +465 -0
  9. package/components/address-input/autosuggest.address.js +5 -4
  10. package/components/address-input/autosuggest.address.setter.js +9 -3
  11. package/components/address-input/autosuggest.address.spec.js +733 -0
  12. package/components/address-output/_macro.njk +6 -6
  13. package/components/address-output/_macro.spec.js +122 -0
  14. package/components/autosuggest/_macro.njk +1 -1
  15. package/components/autosuggest/_macro.spec.js +229 -0
  16. package/components/autosuggest/autosuggest.helpers.js +2 -3
  17. package/components/autosuggest/autosuggest.helpers.spec.js +85 -0
  18. package/components/autosuggest/autosuggest.js +4 -2
  19. package/components/autosuggest/autosuggest.spec.js +625 -0
  20. package/components/autosuggest/autosuggest.ui.js +6 -2
  21. package/components/breadcrumbs/_macro.spec.js +129 -0
  22. package/components/button/_button.scss +75 -33
  23. package/components/button/_macro.njk +6 -6
  24. package/components/button/_macro.spec.js +446 -0
  25. package/components/button/button.spec.js +290 -0
  26. package/components/call-to-action/_macro.njk +3 -1
  27. package/components/call-to-action/_macro.spec.js +52 -0
  28. package/components/card/_macro.njk +26 -19
  29. package/components/card/_macro.spec.js +261 -0
  30. package/components/char-check-limit/_macro.spec.js +73 -0
  31. package/components/char-check-limit/character-check.spec.js +196 -0
  32. package/components/char-check-limit/character-limit.js +1 -1
  33. package/components/checkboxes/_checkbox-macro.spec.js +419 -0
  34. package/components/checkboxes/_macro.njk +1 -3
  35. package/components/checkboxes/_macro.spec.js +306 -0
  36. package/components/checkboxes/checkbox-with-autoselect.js +2 -1
  37. package/components/checkboxes/checkboxes.spec.js +208 -0
  38. package/components/code-highlight/_macro.spec.js +56 -0
  39. package/components/code-highlight/code-highlight.spec.js +18 -0
  40. package/components/collapsible/_macro.spec.js +204 -0
  41. package/components/collapsible/collapsible.js +2 -1
  42. package/components/collapsible/collapsible.spec.js +236 -0
  43. package/components/content-pagination/_macro.spec.js +199 -0
  44. package/components/cookies-banner/_macro.njk +1 -1
  45. package/components/cookies-banner/_macro.spec.js +171 -0
  46. package/components/cookies-banner/cookies-banner.spec.js +90 -0
  47. package/components/date-input/_macro.njk +6 -3
  48. package/components/date-input/_macro.spec.js +286 -0
  49. package/components/document-list/_macro.njk +3 -5
  50. package/components/document-list/_macro.spec.js +491 -0
  51. package/components/download-resources/download-resources.spec.js +540 -0
  52. package/components/duration/_macro.njk +7 -6
  53. package/components/duration/_macro.spec.js +251 -0
  54. package/components/error/_macro.spec.js +97 -0
  55. package/components/external-link/_macro.njk +5 -2
  56. package/components/external-link/_macro.spec.js +77 -0
  57. package/components/feedback/_macro.njk +5 -3
  58. package/components/feedback/_macro.spec.js +122 -0
  59. package/components/field/_macro.njk +2 -2
  60. package/components/field/_macro.spec.js +97 -0
  61. package/components/fieldset/_macro.njk +3 -3
  62. package/components/fieldset/_macro.spec.js +173 -0
  63. package/components/footer/_footer.scss +19 -4
  64. package/components/footer/_macro.njk +106 -137
  65. package/components/footer/_macro.spec.js +678 -0
  66. package/components/header/_header.scss +65 -46
  67. package/components/header/_macro.njk +173 -121
  68. package/components/header/_macro.spec.js +618 -0
  69. package/components/hero/_hero.scss +30 -143
  70. package/components/hero/_macro.njk +12 -23
  71. package/components/hero/_macro.spec.js +218 -0
  72. package/components/icons/_macro.njk +258 -30
  73. package/components/icons/_macro.spec.js +140 -0
  74. package/components/images/_macro.njk +1 -1
  75. package/components/images/_macro.spec.js +121 -0
  76. package/components/input/_input-type.scss +12 -5
  77. package/components/input/_input.scss +8 -0
  78. package/components/input/_macro.njk +4 -5
  79. package/components/input/_macro.spec.js +658 -0
  80. package/components/label/_macro.spec.js +189 -0
  81. package/components/language-selector/_macro.njk +1 -1
  82. package/components/language-selector/_macro.spec.js +137 -0
  83. package/components/lists/_list.scss +4 -0
  84. package/components/lists/_macro.njk +4 -7
  85. package/components/lists/_macro.spec.js +618 -0
  86. package/components/message/_macro.spec.js +137 -0
  87. package/components/message-list/_macro.njk +7 -7
  88. package/components/message-list/_macro.spec.js +159 -0
  89. package/components/metadata/_macro.spec.js +167 -0
  90. package/components/modal/_macro.njk +6 -6
  91. package/components/modal/_macro.spec.js +87 -0
  92. package/components/modal/modal.spec.js +59 -0
  93. package/components/mutually-exclusive/_macro.njk +2 -2
  94. package/components/mutually-exclusive/_macro.spec.js +184 -0
  95. package/components/mutually-exclusive/mutually-exclusive.checkboxes.spec.js +203 -0
  96. package/components/mutually-exclusive/mutually-exclusive.date.spec.js +142 -0
  97. package/components/mutually-exclusive/mutually-exclusive.duration.spec.js +141 -0
  98. package/components/mutually-exclusive/mutually-exclusive.email.spec.js +117 -0
  99. package/components/mutually-exclusive/mutually-exclusive.multiple-options.checkboxes.spec.js +213 -0
  100. package/components/mutually-exclusive/mutually-exclusive.number.spec.js +125 -0
  101. package/components/mutually-exclusive/mutually-exclusive.textarea.spec.js +131 -0
  102. package/components/navigation/_macro.njk +45 -38
  103. package/components/navigation/_macro.spec.js +329 -0
  104. package/components/navigation/_navigation.scss +20 -4
  105. package/components/navigation/navigation.dom.js +1 -1
  106. package/components/navigation/navigation.spec.js +232 -0
  107. package/components/pagination/_macro.njk +1 -1
  108. package/components/pagination/_macro.spec.js +411 -0
  109. package/components/panel/_macro.njk +6 -6
  110. package/components/panel/_macro.spec.js +423 -0
  111. package/components/password/_macro.spec.js +137 -0
  112. package/components/password/password.spec.js +40 -0
  113. package/components/phase-banner/_macro.spec.js +73 -0
  114. package/components/promotional-banner/_macro.spec.js +97 -0
  115. package/components/question/_macro.njk +16 -22
  116. package/components/question/_macro.spec.js +309 -0
  117. package/components/quote/_macro.spec.js +81 -0
  118. package/components/radios/_macro.njk +3 -6
  119. package/components/radios/_macro.spec.js +575 -0
  120. package/components/radios/radios.spec.js +180 -0
  121. package/components/related-content/_macro.njk +14 -21
  122. package/components/related-content/_macro.spec.js +133 -0
  123. package/components/related-content/_section-macro.njk +10 -0
  124. package/components/related-content/_section-macro.spec.js +43 -0
  125. package/components/relationships/_macro.spec.js +108 -0
  126. package/components/relationships/relationships.spec.js +84 -0
  127. package/components/reply/_macro.njk +2 -2
  128. package/components/reply/_macro.spec.js +69 -0
  129. package/components/reply/reply.spec.js +78 -0
  130. package/components/search/_macro.njk +14 -12
  131. package/components/search/_macro.spec.js +44 -0
  132. package/components/search/_search.scss +7 -7
  133. package/components/section-navigation/_macro.njk +7 -2
  134. package/components/section-navigation/_macro.spec.js +206 -0
  135. package/components/select/_macro.njk +3 -3
  136. package/components/select/_macro.spec.js +203 -0
  137. package/components/select/select.spec.js +56 -0
  138. package/components/share-page/_macro.njk +6 -4
  139. package/components/share-page/_macro.spec.js +110 -0
  140. package/components/skip-to-content/_macro.spec.js +57 -0
  141. package/components/skip-to-content/skip-to-content.spec.js +44 -0
  142. package/components/status/_macro.spec.js +77 -0
  143. package/components/summary/_macro.njk +5 -5
  144. package/components/summary/_macro.spec.js +472 -0
  145. package/components/table/_macro.njk +2 -2
  146. package/components/table/_macro.spec.js +557 -0
  147. package/components/table/table.spec.js +155 -0
  148. package/components/table-of-contents/_macro.njk +35 -35
  149. package/components/table-of-contents/_macro.spec.js +178 -0
  150. package/components/table-of-contents/toc.js +29 -25
  151. package/components/table-of-contents/toc.spec.js +61 -0
  152. package/components/tabs/_macro.njk +1 -1
  153. package/components/tabs/_macro.spec.js +79 -0
  154. package/components/tabs/tabs.spec.js +162 -0
  155. package/components/text-indent/_macro.spec.js +52 -0
  156. package/components/textarea/_macro.njk +5 -3
  157. package/components/textarea/_macro.spec.js +300 -0
  158. package/components/textarea/textarea.spec.js +98 -0
  159. package/components/timeline/_macro.njk +3 -3
  160. package/components/timeline/_macro.spec.js +81 -0
  161. package/components/timeout-modal/_macro.spec.js +68 -0
  162. package/components/timeout-modal/timeout-modal.spec.js +226 -0
  163. package/components/timeout-panel/_macro.njk +0 -1
  164. package/components/timeout-panel/_macro.spec.js +54 -0
  165. package/components/timeout-panel/timeout-panel.dom.js +1 -2
  166. package/components/timeout-panel/timeout-panel.spec.js +161 -0
  167. package/components/upload/_macro.spec.js +75 -0
  168. package/components/video/_macro.spec.js +34 -0
  169. package/css/census.css +3 -1
  170. package/css/ids.css +2 -0
  171. package/css/main.css +1 -1
  172. package/img/dummy-brand-logo.svg +1 -0
  173. package/js/cookies-settings.spec.js +154 -0
  174. package/layout/_template.njk +7 -4
  175. package/package.json +10 -23
  176. package/scripts/main.es5.js +2 -2
  177. package/scripts/main.js +1 -1
  178. package/scss/ids.scss +2 -0
  179. package/scss/settings/_census.scss +141 -0
  180. package/scss/settings/_ids.scss +48 -0
  181. package/scss/utilities/_margin.scss +1 -0
  182. package/scss/vars/_colors.scss +5 -2
@@ -0,0 +1,140 @@
1
+ /** @jest-environment jsdom */
2
+
3
+ import * as cheerio from 'cheerio';
4
+
5
+ import axe from '../../tests/helpers/axe';
6
+ import { renderComponent } from '../../tests/helpers/rendering';
7
+
8
+ describe('macro: icons', () => {
9
+ describe.each([
10
+ 'arrow-forward',
11
+ 'arrow-next',
12
+ 'arrow-previous',
13
+ 'check',
14
+ 'chevron',
15
+ 'download',
16
+ 'exit',
17
+ 'external-link',
18
+ 'lock',
19
+ 'person',
20
+ 'print',
21
+ 'quote',
22
+ 'search',
23
+ 'sort-sprite',
24
+ 'facebook',
25
+ 'twitter',
26
+ 'instagram',
27
+ 'linkedin',
28
+ 'loader',
29
+ 'census-logo-cy',
30
+ 'census-logo-en',
31
+ 'ons-logo-en',
32
+ 'ons-logo-cy',
33
+ 'ons-logo-stacked-en',
34
+ 'ons-logo-stacked-cy',
35
+ 'nisra-logo',
36
+ 'nisra-logo-mobile',
37
+ 'ni-finance-logo',
38
+ 'ni-finance-logo-mobile',
39
+ 'crest',
40
+ 'ogl',
41
+ 'circle-lined',
42
+ ])('icon type: %s', iconType => {
43
+ it('passes jest-axe checks', async () => {
44
+ const $ = cheerio.load(renderComponent('icons', { iconType }));
45
+
46
+ const results = await axe($.html());
47
+ expect(results).toHaveNoViolations();
48
+ });
49
+
50
+ it('has an svg element', () => {
51
+ const $ = cheerio.load(renderComponent('icons', { iconType }));
52
+
53
+ expect($('svg').length).toBe(1);
54
+ });
55
+
56
+ it('has additionally provided style classes', () => {
57
+ const $ = cheerio.load(
58
+ renderComponent('icons', {
59
+ iconType,
60
+ classes: 'extra-class another-extra-class',
61
+ }),
62
+ );
63
+
64
+ expect($('svg').hasClass('extra-class')).toBe(true);
65
+ expect($('svg').hasClass('another-extra-class')).toBe(true);
66
+ });
67
+ });
68
+
69
+ describe.each([
70
+ 'arrow-next',
71
+ 'arrow-previous',
72
+ 'check',
73
+ 'chevron',
74
+ 'download',
75
+ 'exit',
76
+ 'external-link',
77
+ 'lock',
78
+ 'person',
79
+ 'print',
80
+ 'quote',
81
+ 'search',
82
+ 'facebook',
83
+ 'twitter',
84
+ 'instagram',
85
+ 'linkedin',
86
+ ])('icon type: %s', iconType => {
87
+ it('has style variation class for provided icon size', () => {
88
+ const $ = cheerio.load(
89
+ renderComponent('icons', {
90
+ iconType,
91
+ iconSize: 'xxl',
92
+ }),
93
+ );
94
+
95
+ expect($('svg').hasClass('ons-svg-icon--xxl')).toBe(true);
96
+ });
97
+ });
98
+
99
+ describe.each([
100
+ ['census-logo-cy', 'Logo Cyfrifiad 2021'],
101
+ ['census-logo-en', 'Census 2021 logo'],
102
+ ['ons-logo-en', 'Office for National Statistics logo'],
103
+ ['ons-logo-cy', 'Logo Swyddfa Ystadegau Gwladol'],
104
+ ['ons-logo-stacked-en', 'Office for National Statistics logo'],
105
+ ['ons-logo-stacked-cy', 'Logo Swyddfa Ystadegau Gwladol'],
106
+ ['nisra-logo', 'Nisra logo'],
107
+ ['nisra-logo-mobile', 'Nisra logo'],
108
+ ['ni-finance-logo', 'Northern Ireland Department of Finance logo'],
109
+ ['ni-finance-logo-mobile', 'Northern Ireland Department of Finance logo'],
110
+ ['crest', 'Royal coat of arms of the United Kingdom'],
111
+ ['ogl', 'Open Government License logo'],
112
+ ['hm-gov-logo-en', 'HM Government logo'],
113
+ ['hm-gov-logo-cy', 'Logo Llywodraeth EM'],
114
+ ])('icon type: %s', (iconType, expectedAltText) => {
115
+ it(`has default alt text '${expectedAltText}'`, () => {
116
+ const $ = cheerio.load(renderComponent('icons', { iconType }));
117
+
118
+ expect(
119
+ $('title')
120
+ .text()
121
+ .trim(),
122
+ ).toBe(expectedAltText);
123
+ });
124
+
125
+ it('has provided alt text', () => {
126
+ const $ = cheerio.load(
127
+ renderComponent('icons', {
128
+ iconType,
129
+ altText: 'Example alt text',
130
+ }),
131
+ );
132
+
133
+ expect(
134
+ $('title')
135
+ .text()
136
+ .trim(),
137
+ ).toBe('Example alt text');
138
+ });
139
+ });
140
+ });
@@ -2,7 +2,7 @@
2
2
  <figure class="ons-figure">
3
3
 
4
4
  {% if params.image is defined and params.image %}
5
- <img class="ons-figure__image" srcset="{{ params.image.smallSrc }} 1x, {{ params.image.largeSrc }} 2x" src="{{ params.image.smallSrc }}" alt="{{ params.alt }}">
5
+ <img class="ons-figure__image" {% if params.image.largeSrc is defined and params.image.largeSrc %}srcset="{{ params.image.smallSrc }} 1x, {{ params.image.largeSrc }} 2x"{% endif %}src="{{ params.image.smallSrc }}" alt="{{ params.alt if params.alt is defined and params.alt else '' }}">
6
6
  {% else %}
7
7
  <img class="ons-figure__image" src="{{ params.url }}" alt="{{ params.alt }}">
8
8
  {% endif %}
@@ -0,0 +1,121 @@
1
+ /** @jest-environment jsdom */
2
+
3
+ import * as cheerio from 'cheerio';
4
+
5
+ import axe from '../../tests/helpers/axe';
6
+ import { renderComponent } from '../../tests/helpers/rendering';
7
+
8
+ const EXAMPLE_IMAGE_URL_MINIMAL = {
9
+ url: 'example.png',
10
+ };
11
+
12
+ const EXAMPLE_IMAGE_IMAGE_MINIMAL = {
13
+ image: {
14
+ smallSrc: 'example-small.png',
15
+ largeSrc: 'example-large.png',
16
+ },
17
+ };
18
+
19
+ describe('macro: images', () => {
20
+ it('outputs a `figure` element', () => {
21
+ const $ = cheerio.load(renderComponent('images', EXAMPLE_IMAGE_URL_MINIMAL));
22
+
23
+ expect($('.ons-figure')[0].tagName).toBe('figure');
24
+ });
25
+
26
+ it('outputs a `figurecaption` element when `caption` is provided', () => {
27
+ const $ = cheerio.load(
28
+ renderComponent('images', {
29
+ ...EXAMPLE_IMAGE_URL_MINIMAL,
30
+ caption: 'Example image caption',
31
+ }),
32
+ );
33
+
34
+ expect($('.ons-figure__caption')[0].tagName).toBe('figcaption');
35
+ });
36
+
37
+ it('outputs a `figurecaption` element with provided `caption` text', () => {
38
+ const $ = cheerio.load(
39
+ renderComponent('images', {
40
+ ...EXAMPLE_IMAGE_URL_MINIMAL,
41
+ caption: 'Example image caption',
42
+ }),
43
+ );
44
+
45
+ expect(
46
+ $('.ons-figure__caption')
47
+ .text()
48
+ .trim(),
49
+ ).toBe('Example image caption');
50
+ });
51
+
52
+ describe('mode: url', () => {
53
+ it('passes jest-axe checks', async () => {
54
+ const $ = cheerio.load(renderComponent('images', EXAMPLE_IMAGE_URL_MINIMAL));
55
+
56
+ const results = await axe($.html());
57
+ expect(results).toHaveNoViolations();
58
+ });
59
+
60
+ it('outputs an `img` element', () => {
61
+ const $ = cheerio.load(renderComponent('images', EXAMPLE_IMAGE_URL_MINIMAL));
62
+
63
+ expect($('.ons-figure__image')[0].tagName).toBe('img');
64
+ });
65
+
66
+ it('outputs an `img` element with the expected `src`', () => {
67
+ const $ = cheerio.load(renderComponent('images', EXAMPLE_IMAGE_URL_MINIMAL));
68
+
69
+ expect($('.ons-figure__image').attr('src')).toBe('example.png');
70
+ });
71
+
72
+ it('outputs an `img` element with the expected alt text', () => {
73
+ const $ = cheerio.load(
74
+ renderComponent('images', {
75
+ ...EXAMPLE_IMAGE_URL_MINIMAL,
76
+ alt: 'Example alt text',
77
+ }),
78
+ );
79
+
80
+ expect($('.ons-figure__image').attr('alt')).toBe('Example alt text');
81
+ });
82
+ });
83
+
84
+ describe('mode: image', () => {
85
+ it('passes jest-axe checks', async () => {
86
+ const $ = cheerio.load(renderComponent('images', EXAMPLE_IMAGE_IMAGE_MINIMAL));
87
+
88
+ const results = await axe($.html());
89
+ expect(results).toHaveNoViolations();
90
+ });
91
+
92
+ it('outputs an `img` element', () => {
93
+ const $ = cheerio.load(renderComponent('images', EXAMPLE_IMAGE_IMAGE_MINIMAL));
94
+
95
+ expect($('.ons-figure__image')[0].tagName).toBe('img');
96
+ });
97
+
98
+ it('outputs an `img` element with the expected `srcset`', () => {
99
+ const $ = cheerio.load(renderComponent('images', EXAMPLE_IMAGE_IMAGE_MINIMAL));
100
+
101
+ expect($('.ons-figure__image').attr('srcset')).toBe('example-small.png 1x, example-large.png 2x');
102
+ });
103
+
104
+ it('outputs an `img` element with the expected `src`', () => {
105
+ const $ = cheerio.load(renderComponent('images', EXAMPLE_IMAGE_IMAGE_MINIMAL));
106
+
107
+ expect($('.ons-figure__image').attr('src')).toBe('example-small.png');
108
+ });
109
+
110
+ it('outputs an `img` element with the expected alt text', () => {
111
+ const $ = cheerio.load(
112
+ renderComponent('images', {
113
+ ...EXAMPLE_IMAGE_IMAGE_MINIMAL,
114
+ alt: 'Example alt text',
115
+ }),
116
+ );
117
+
118
+ expect($('.ons-figure__image').attr('alt')).toBe('Example alt text');
119
+ });
120
+ });
121
+ });
@@ -18,9 +18,8 @@
18
18
  }
19
19
  }
20
20
 
21
- &__type[title] {
21
+ &__type {
22
22
  background-color: $color-button-secondary;
23
- border: 1px solid $color-input;
24
23
  display: block;
25
24
  flex: 0 0 auto;
26
25
  font-size: 1rem;
@@ -28,11 +27,19 @@
28
27
  line-height: normal;
29
28
  padding: $input-padding-vertical $input-padding-horizontal * 2;
30
29
  text-align: center;
31
- text-decoration: none;
32
30
  white-space: nowrap;
31
+
32
+ &[title] {
33
+ text-decoration: none;
34
+ }
33
35
  }
34
36
 
35
- &__input:focus + &__type[title]::after {
37
+ &__type,
38
+ &__type[title] {
39
+ border: 1px solid $color-input;
40
+ }
41
+
42
+ &__input:focus + &__type::after {
36
43
  border-radius: $input-radius;
37
44
  bottom: 0;
38
45
  box-shadow: 0 0 0 3px $color-focus;
@@ -45,7 +52,7 @@
45
52
  }
46
53
 
47
54
  &:not(&--prefix) & {
48
- &__type[title] {
55
+ &__type {
49
56
  border-left: 0;
50
57
  border-radius: 0 $input-radius $input-radius 0;
51
58
  }
@@ -128,6 +128,7 @@
128
128
 
129
129
  .ons-input-search {
130
130
  @extend .ons-input--block;
131
+ @extend .ons-input--ghost;
131
132
 
132
133
  &--icon {
133
134
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' fill='%23ffffff'%3E%3Cpath d='M0 0h24v24H0V0z' fill='none'/%3E%3Cpath d='M11.86 10.23 8.62 6.99a4.63 4.63 0 1 0-6.34 1.64 4.55 4.55 0 0 0 2.36.64 4.65 4.65 0 0 0 2.33-.65l3.24 3.23a.46.46 0 0 0 .65 0l1-1a.48.48 0 0 0 0-.62Zm-5-3.32a3.28 3.28 0 0 1-2.31.93 3.22 3.22 0 1 1 2.35-.93Z'/%3E%3C/svg%3E");
@@ -147,4 +148,11 @@
147
148
  box-shadow: 0 0 0 3px $color-focus;
148
149
  }
149
150
  }
151
+
152
+ &--dark {
153
+ border: 2px solid $color-black;
154
+ &.ons-input-search--icon {
155
+ background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' fill='%23000000'%3E%3Cpath d='M0 0h24v24H0V0z' fill='none'/%3E%3Cpath d='M11.86 10.23 8.62 6.99a4.63 4.63 0 1 0-6.34 1.64 4.55 4.55 0 0 0 2.36.64 4.65 4.65 0 0 0 2.33-.65l3.24 3.23a.46.46 0 0 0 .65 0l1-1a.48.48 0 0 0 0-.62Zm-5-3.32a3.28 3.28 0 0 1-2.31.93 3.22 3.22 0 1 1 2.35-.93Z'/%3E%3C/svg%3E");
156
+ }
157
+ }
150
158
  }
@@ -27,7 +27,7 @@
27
27
  type="{{ type }}"
28
28
  id="{{ params.id }}"
29
29
  class="ons-input ons-input--text ons-input-type__input{% if params.error is defined and params.error %} ons-input--error{% endif %}{% if params.searchButton is defined and params.searchButton %} ons-search__input{% endif %}{% if params.classes is defined and params.classes %} {{ params.classes }}{% endif %}{% if params.width is defined and params.width %} ons-input{% if params.type is defined and (params.type == 'number' or params.type == 'tel') %}-number{% endif %}--w-{{ params.width }}{% endif %}{{ exclusiveClass }}{{ inputPlaceholder }}"
30
- {% if params.prefix is defined and params.prefix or params.suffix is defined and params.suffix %}title="{{ params.prefix.title if params.prefix }}{{ params.suffix.title if params.suffix }}"{% endif %}
30
+ {% if params.prefix is defined and params.prefix or params.suffix is defined and params.suffix %}aria-labelledby="{{ params.prefix.id if params.prefix }}{{ params.suffix.id if params.suffix }}"{% endif %}
31
31
  {% if params.name is defined and params.name %}name="{{ params.name }}"{% endif %}
32
32
  {% if params.value is defined and params.value %}value="{{ params.value }}"{% endif %}
33
33
  {% if params.accept is defined and params.accept %}accept="{{ params.accept }}"{% endif %}
@@ -53,7 +53,7 @@
53
53
  </script>
54
54
  {% endif %}
55
55
  {% if params.postTextboxLinkText is defined and params.postTextboxLinkText %}
56
- <a class="ons-u-fs-s" href="{{ params.postTextboxLinkUrl }}">{{ params.postTextboxLinkText }}</a>
56
+ <a class="ons-u-fs-s ons-input__post-link" href="{{ params.postTextboxLinkUrl }}">{{ params.postTextboxLinkText }}</a>
57
57
  {% endif %}
58
58
  {% endset %}
59
59
  {% set field %}
@@ -80,10 +80,9 @@
80
80
  {{ input | safe }}
81
81
  {% set abbr = params.prefix or params.suffix %}
82
82
  <abbr
83
+ {% if abbr.id is defined and abbr.id %}id="{{ abbr.id }}" {% endif %}
83
84
  class="ons-input-type__type ons-js-input-abbr"
84
- aria-hidden="true"
85
- title="{{ abbr.title }}"
86
- {% if abbr.id is defined and abbr.id %} id="{{ abbr.id }}"{% endif %}
85
+ title="{{ abbr.title }}"
87
86
  >{{ abbr.text or abbr.title }}</abbr>
88
87
  </span>
89
88
  </span>