@utrecht/form-field-css 1.2.0 → 1.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.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,13 @@
1
1
  # @utrecht/form-field-css
2
2
 
3
+ ## 1.3.0
4
+
5
+ ### Minor Changes
6
+
7
+ - 9ba132c: Add `utrecht-form-field__error-message` class name and mixin.
8
+
9
+ Deprecate the `utrecht-form-field__description--invalid` mixin.
10
+
3
11
  ## 1.2.0
4
12
 
5
13
  ### Minor Changes
package/README.md CHANGED
@@ -2,42 +2,4 @@
2
2
 
3
3
  # Form field
4
4
 
5
- Gebruik het _form field_ component om een alle onderdelen van een formulierveld in te verzamelen: het label, de _form control_, eventueel een extra beschrijving of de status en eventueel een validatiemelding of foutmelding.
6
-
7
- De volgende componenten zijn vaak onderdeel van een _form field_:
8
-
9
- - _form label_ component
10
- - _form field description_ component met extra beschrijving
11
- - _form field description_ component met een validatiemelding
12
- - een form control component zoals bijvoorbeeld:
13
- - _textbox_ component
14
- - _textarea_ component
15
- - _checkbox_ component
16
- - _radio button_ component
17
- - _form select_ component
18
- - etcetera
19
- - _form field description_ component met een foutmelding
20
- - _form field description_ component status van component
21
-
22
- ## HTML
23
-
24
- Gebruik een element `<div>` element voor formuliervelden met één _form control_. Een formulierveld moet meerdere `<p>` elementen kunnen bevatten, gebruik daarom geen `<p>` element voor de form field. Je moet geen _landmark role_ gebruiken voor een formulierveld (dus geen `<section>`) element.
25
-
26
- Voor formuliervelden met meerdere _form controls_ mag je een `<fieldset>` element gebruiken, bijvoorbeeld voor: jaar, maand en dag. Voor CSS is het handig om dan nog steeds een `<div>` om de fieldset heen te hebben: `<div><fieldset>...</fieldset></div>`.
27
-
28
- ## Gebruikte termen
29
-
30
- - `form` komt van `<form>` in HTML en `role="form"` in WAI-ARIA.
31
- - `field` komt van `<fieldset>` in HTML.
32
- - `invalid` komt van `aria-invalid` in WAI-ARIA.
33
- - `radio` komt van `<input type="radio">` in HTML.
34
- - `checkbox` komt van `<input type="checkbox">` in HTML.
35
- - `label` komt van `<label>` in HTML en `aria-labelledby` in WAI-ARIA.
36
- - `description` komt van `aria-describedby` in WAI-ARIA.
37
-
38
- ## Relevante WCAG regels
39
-
40
- - [WCAG eis 2.4.6](https://www.w3.org/TR/WCAG21/#headings-and-labels): de tekst van het label moet duidelijk zijn
41
- - [WCAG eis 3.3.9](https://www.w3.org/TR/WCAG22/#redundant-entry): gebruik niet een formulierveld voor informatie die de gebruiker eerder al heeft ingevuld.
42
- - Vraag gebruikers niet twee keer achter elkaar identieke gegevens in te vullen, bijvoorbeeld om typfouten te herkennen en daarmee fouten te voorkomen. Bied liever een mogelijkheid aan om de gegevens te controleren als laatste stap.
43
- - Vul bestaande gegevens in als standaardwaarde wanneer je de gegevens al hebt maar je graag zeker wilt weken of de oude gegevens nog juist zijn.
5
+ Een invoerveld en bijbehorende onderdelen die helpen bij het invullen.
package/dist/index.css CHANGED
@@ -7,6 +7,7 @@
7
7
  * Copyright (c) 2021 Robbert Broersma
8
8
  */
9
9
  /* stylelint-disable-next-line block-no-empty */
10
+ /** @deprecated */
10
11
  .utrecht-form-field {
11
12
  break-inside: avoid;
12
13
  font-family: var(--utrecht-document-font-family, inherit);
@@ -29,7 +30,7 @@
29
30
  .utrecht-form-field--checkbox {
30
31
  display: grid;
31
32
  gap: 0 var(--utrecht-checkbox-margin-inline-end, 12px);
32
- grid-template-areas: "input label" "input description" "input description-invalid";
33
+ grid-template-areas: "input label" "input description" "input error-message";
33
34
  grid-template-columns: var(--utrecht-checkbox-size) 100fr;
34
35
  /*
35
36
  .utrecht-form-field__label .utrecht-form-field__input {
@@ -50,7 +51,7 @@
50
51
  .utrecht-form-field--radio {
51
52
  display: grid;
52
53
  gap: 0 var(--utrecht-radio-button-margin-inline-end, 12px);
53
- grid-template-areas: "input label" "input description" "input description-invalid";
54
+ grid-template-areas: "input label" "input description" "input error-message";
54
55
  grid-template-columns: var(--utrecht-radio-button-size) 100fr;
55
56
  /*
56
57
  .utrecht-form-field__label .utrecht-form-field__input {
@@ -92,7 +93,7 @@
92
93
  }
93
94
 
94
95
  .utrecht-form-field .utrecht-form-field-description--invalid {
95
- grid-area: description-invalid;
96
+ grid-area: error-message;
96
97
  order: 3;
97
98
  }
98
99
 
@@ -106,4 +107,9 @@
106
107
  .utrecht-form-field__description--before {
107
108
  grid-area: description-before;
108
109
  order: 4;
110
+ }
111
+
112
+ .utrecht-form-field__error-message {
113
+ grid-area: error-message;
114
+ order: 3;
109
115
  }
@@ -0,0 +1,30 @@
1
+ <!-- @license CC0-1.0 -->
2
+
3
+ # Anatomy
4
+
5
+ Gebruik het _form field_ component om een alle onderdelen van een formulierveld in te verzamelen: het label, de _form control_, eventueel een extra beschrijving of de status en eventueel een validatiemelding of foutmelding.
6
+
7
+ De volgende componenten zijn vaak onderdeel van een _form field_:
8
+
9
+ - _form label_ component
10
+ - _form field description_ component met extra beschrijving
11
+ - _form field description_ component met een validatiemelding
12
+ - een form control component zoals bijvoorbeeld:
13
+ - _textbox_ component
14
+ - _textarea_ component
15
+ - _checkbox_ component
16
+ - _radio button_ component
17
+ - _form select_ component
18
+ - etcetera
19
+ - _form field description_ component met een foutmelding
20
+ - _form field description_ component status van component
21
+
22
+ ## Gebruikte termen
23
+
24
+ - `form` komt van `<form>` in HTML en `role="form"` in WAI-ARIA.
25
+ - `field` komt van `<fieldset>` in HTML.
26
+ - `invalid` komt van `aria-invalid` in WAI-ARIA.
27
+ - `radio` komt van `<input type="radio">` in HTML.
28
+ - `checkbox` komt van `<input type="checkbox">` in HTML.
29
+ - `label` komt van `<label>` in HTML en `aria-labelledby` in WAI-ARIA.
30
+ - `description` komt van `aria-describedby` in WAI-ARIA.
@@ -0,0 +1,7 @@
1
+ <!-- @license CC0-1.0 -->
2
+
3
+ # HTML
4
+
5
+ Gebruik een element `<div>` element voor formuliervelden met één _form control_. Een formulierveld moet meerdere `<p>` elementen kunnen bevatten, gebruik daarom geen `<p>` element voor de form field. Je moet geen _landmark role_ gebruiken voor een formulierveld (dus geen `<section>`) element.
6
+
7
+ Voor formuliervelden met meerdere _form controls_ mag je een `<fieldset>` element gebruiken, bijvoorbeeld voor: jaar, maand en dag. Voor CSS is het handig om dan nog steeds een `<div>` om de fieldset heen te hebben: `<div><fieldset>...</fieldset></div>`.
@@ -0,0 +1,8 @@
1
+ <!-- @license CC0-1.0 -->
2
+
3
+ # Relevante WCAG regels
4
+
5
+ - [WCAG eis 2.4.6](https://www.w3.org/TR/WCAG21/#headings-and-labels): de tekst van het label moet duidelijk zijn
6
+ - [WCAG eis 3.3.9](https://www.w3.org/TR/WCAG22/#redundant-entry): gebruik niet een formulierveld voor informatie die de gebruiker eerder al heeft ingevuld.
7
+ - Vraag gebruikers niet twee keer achter elkaar identieke gegevens in te vullen, bijvoorbeeld om typfouten te herkennen en daarmee fouten te voorkomen. Bied liever een mogelijkheid aan om de gegevens te controleren als laatste stap.
8
+ - Vul bestaande gegevens in als standaardwaarde wanneer je de gegevens al hebt maar je graag zeker wilt weken of de oude gegevens nog juist zijn.
package/package.json CHANGED
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "1.2.0",
2
+ "version": "1.3.0",
3
3
  "author": "Community for NL Design System",
4
4
  "description": "Form field component for the Municipality of Utrecht based on the NL Design System architecture",
5
5
  "license": "EUPL-1.2",
package/src/_mixin.scss CHANGED
@@ -35,7 +35,7 @@
35
35
  --utrecht-space-around: 0;
36
36
 
37
37
  display: grid;
38
- grid-template-areas: "label" "description" "description-before" "description-invalid" "input" "description-after";
38
+ grid-template-areas: "label" "description" "description-before" "error-message" "input" "description-after";
39
39
  }
40
40
 
41
41
  @mixin utrecht-form-field--option {
@@ -83,11 +83,16 @@
83
83
  order: 2;
84
84
  }
85
85
 
86
- @mixin utrecht-form-field__description--invalid {
87
- grid-area: description-invalid;
86
+ @mixin utrecht-form-field__error-message {
87
+ grid-area: error-message;
88
88
  order: 3;
89
89
  }
90
90
 
91
+ /** @deprecated */
92
+ @mixin utrecht-form-field__description--invalid {
93
+ @include utrecht-form-field__error-message;
94
+ }
95
+
91
96
  @mixin utrecht-form-field__description--after {
92
97
  grid-area: description-after;
93
98
  order: 6;
@@ -101,7 +106,7 @@
101
106
  @mixin utrecht-form-field--checkbox {
102
107
  display: grid;
103
108
  gap: 0 var(--utrecht-checkbox-margin-inline-end, 12px);
104
- grid-template-areas: "input label" "input description" "input description-invalid";
109
+ grid-template-areas: "input label" "input description" "input error-message";
105
110
  grid-template-columns: var(--utrecht-checkbox-size) 100fr;
106
111
 
107
112
  /*
@@ -123,7 +128,7 @@
123
128
  @mixin utrecht-form-field--radio {
124
129
  display: grid;
125
130
  gap: 0 var(--utrecht-radio-button-margin-inline-end, 12px);
126
- grid-template-areas: "input label" "input description" "input description-invalid";
131
+ grid-template-areas: "input label" "input description" "input error-message";
127
132
  grid-template-columns: var(--utrecht-radio-button-size) 100fr;
128
133
 
129
134
  /*
package/src/index.scss CHANGED
@@ -42,7 +42,7 @@
42
42
  }
43
43
 
44
44
  .utrecht-form-field .utrecht-form-field-description--invalid {
45
- @include utrecht-form-field__description--invalid;
45
+ @include utrecht-form-field__error-message;
46
46
  }
47
47
 
48
48
  .utrecht-form-field__description {
@@ -52,3 +52,7 @@
52
52
  .utrecht-form-field__description--before {
53
53
  @include utrecht-form-field__description--before;
54
54
  }
55
+
56
+ .utrecht-form-field__error-message {
57
+ @include utrecht-form-field__error-message;
58
+ }