@uncinc/uncinc-react-kitchen-sink 2.9.0 → 2.10.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.
@@ -29,6 +29,8 @@ export var Checkbox = function Checkbox(props) {
29
29
  var isTouched = touched[fieldName];
30
30
  var value = values[fieldName];
31
31
  var error = errors[fieldName];
32
+ var errorId = "".concat(props.fieldName, "--error");
33
+ var descriptionId = "".concat(props.fieldName, "--description");
32
34
  var handleValidation = function handleValidation(value) {
33
35
  if (validation) {
34
36
  return validation(value);
@@ -44,6 +46,8 @@ export var Checkbox = function Checkbox(props) {
44
46
  fieldName: fieldName,
45
47
  touched: isTouched,
46
48
  error: error,
49
+ errorId: errorId,
50
+ descriptionId: descriptionId,
47
51
  displayRequiredIndicator: displayRequiredIndicator
48
52
  }, /*#__PURE__*/React.createElement(Field, {
49
53
  required: required,
@@ -73,7 +77,10 @@ export var Checkbox = function Checkbox(props) {
73
77
  _onChange(!field.value);
74
78
  },
75
79
  disabled: disabled,
76
- className: className
80
+ className: className,
81
+ required: required,
82
+ "aria-describedby": "".concat(errorId, " ").concat(descriptionId),
83
+ "aria-invalid": Boolean(error)
77
84
  })), ReactHtmlParser(title));
78
85
  }));
79
86
  };
@@ -19,12 +19,13 @@ function Checkbox(props) {
19
19
  validate = props.validate,
20
20
  disabled = props.disabled,
21
21
  className = props.className,
22
- _onChange = props.onChange;
22
+ _onChange = props.onChange,
23
+ required = props.required;
23
24
  return /*#__PURE__*/React.createElement(Field, {
24
- required: true,
25
25
  name: name,
26
26
  value: value,
27
- validate: validate
27
+ validate: validate,
28
+ required: required
28
29
  }, function (_ref) {
29
30
  var field = _ref.field,
30
31
  form = _ref.form;
@@ -69,6 +70,7 @@ function Checkbox(props) {
69
70
  checked: checked,
70
71
  disabled: disabled,
71
72
  className: className,
73
+ required: required,
72
74
  onChange: function onChange(event) {
73
75
  if (_onChange) {
74
76
  _onChange(value, checkedValues());
@@ -94,6 +96,7 @@ function Checkbox(props) {
94
96
  checked: checked,
95
97
  disabled: disabled,
96
98
  className: className,
99
+ required: required,
97
100
  onChange: function onChange(event) {
98
101
  if (_onChange) {
99
102
  _onChange(value, checkedValues());
@@ -120,7 +123,8 @@ var Checkboxes = function Checkboxes(props) {
120
123
  disabled = _props$disabled === void 0 ? false : _props$disabled,
121
124
  otherLabel = props.otherLabel,
122
125
  otherPlaceholder = props.otherPlaceholder,
123
- onChange = props.onChange;
126
+ onChange = props.onChange,
127
+ includeFieldSet = props.includeFieldSet;
124
128
  var _useExtendedFormikCon = useExtendedFormikContext(),
125
129
  errors = _useExtendedFormikCon.errors,
126
130
  touched = _useExtendedFormikCon.touched,
@@ -129,6 +133,8 @@ var Checkboxes = function Checkboxes(props) {
129
133
  t = _useTranslation.t;
130
134
  var isTouched = touched[fieldName];
131
135
  var error = errors[fieldName];
136
+ var errorId = "".concat(props.fieldName, "--error");
137
+ var descriptionId = "".concat(props.fieldName, "--description");
132
138
  var handleValidation = function handleValidation(value) {
133
139
  if (validation) {
134
140
  return validation(value);
@@ -145,7 +151,11 @@ var Checkboxes = function Checkboxes(props) {
145
151
  fieldName: fieldName,
146
152
  touched: isTouched,
147
153
  error: error,
148
- displayRequiredIndicator: displayRequiredIndicator
154
+ errorId: errorId,
155
+ isTouched: isTouched,
156
+ descriptionId: descriptionId,
157
+ displayRequiredIndicator: displayRequiredIndicator,
158
+ includeFieldSet: includeFieldSet
149
159
  }, Object.keys(options).map(function (item) {
150
160
  var label = _typeof(options[item]) === 'object' ? options[item].label : options[item];
151
161
  var value = _typeof(options[item]) === 'object' ? options[item].value : item;
@@ -166,7 +176,11 @@ var Checkboxes = function Checkboxes(props) {
166
176
  disabled: optionDisabled,
167
177
  otherLabel: otherLabel,
168
178
  otherPlaceholder: otherPlaceholder,
169
- onChange: onChange
179
+ onChange: onChange,
180
+ errorId: errorId,
181
+ error: error,
182
+ isTouched: isTouched,
183
+ required: required
170
184
  });
171
185
  }));
172
186
  };
@@ -1,4 +1,4 @@
1
- var _excluded = ["title", "required", "description", "placeholder", "fieldName", "validation", "className", "wrapperClassName", "disabled", "minDate", "maxDate", "onChange"];
1
+ var _excluded = ["title", "required", "description", "placeholder", "fieldName", "validation", "className", "wrapperClassName", "disabled", "minDate", "maxDate", "onChange", "includeFieldSet"];
2
2
  function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
3
3
  function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
4
4
  function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
@@ -25,6 +25,7 @@ var DatePicker = function DatePicker(props) {
25
25
  minDate = props.minDate,
26
26
  maxDate = props.maxDate,
27
27
  _onChange = props.onChange,
28
+ includeFieldSet = props.includeFieldSet,
28
29
  restProps = _objectWithoutProperties(props, _excluded);
29
30
  var _useExtendedFormikCon = useExtendedFormikContext(),
30
31
  values = _useExtendedFormikCon.values,
@@ -37,6 +38,8 @@ var DatePicker = function DatePicker(props) {
37
38
  var isTouched = touched[fieldName];
38
39
  var value = values[fieldName];
39
40
  var error = errors[fieldName];
41
+ var errorId = "".concat(props.fieldName, "--error");
42
+ var descriptionId = "".concat(props.fieldName, "--description");
40
43
  var handleValidation = function handleValidation(value) {
41
44
  if (validation) {
42
45
  return validation(value);
@@ -65,7 +68,10 @@ var DatePicker = function DatePicker(props) {
65
68
  fieldName: fieldName,
66
69
  touched: isTouched,
67
70
  error: error,
68
- displayRequiredIndicator: displayRequiredIndicator
71
+ displayRequiredIndicator: displayRequiredIndicator,
72
+ errorId: errorId,
73
+ descriptionId: descriptionId,
74
+ includeFieldSet: includeFieldSet
69
75
  }, /*#__PURE__*/React.createElement(Field, {
70
76
  id: fieldName,
71
77
  name: fieldName,
@@ -89,6 +95,7 @@ var DatePicker = function DatePicker(props) {
89
95
  name: fieldName,
90
96
  className: className,
91
97
  disabled: disabled,
98
+ required: required,
92
99
  placeholderText: placeholder
93
100
  }, restProps));
94
101
  }));
@@ -1,4 +1,4 @@
1
- var _excluded = ["title", "placeholder", "value", "startDate", "endDate", "minDate", "maxDate", "className", "disabled", "onChange"];
1
+ var _excluded = ["title", "placeholder", "value", "startDate", "endDate", "minDate", "maxDate", "className", "disabled", "onChange", "required"];
2
2
  function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
3
3
  function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
4
4
  function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
@@ -18,6 +18,7 @@ var Picker = function Picker(props) {
18
18
  className = props.className,
19
19
  disabled = props.disabled,
20
20
  onChange = props.onChange,
21
+ required = props.required,
21
22
  restProps = _objectWithoutProperties(props, _excluded);
22
23
  return /*#__PURE__*/React.createElement(GenericFormElement, {
23
24
  className: className,
@@ -34,7 +35,8 @@ var Picker = function Picker(props) {
34
35
  minDate: minDate,
35
36
  maxDate: maxDate,
36
37
  disabled: disabled,
37
- placeholderText: placeholder
38
+ placeholderText: placeholder,
39
+ required: required
38
40
  }, restProps)));
39
41
  };
40
42
  Picker.defaultProps = {
@@ -1,4 +1,4 @@
1
- var _excluded = ["isSinglePicker", "title", "startDateTitle", "endDateTitle", "required", "description", "startDatePlaceholder", "endDatePlaceholder", "fieldName", "validation", "defaultValue", "minDate", "maxDate", "startDateClassName", "endDateClassName", "wrapperClassName", "disabled", "onChange"];
1
+ var _excluded = ["isSinglePicker", "title", "startDateTitle", "endDateTitle", "required", "description", "startDatePlaceholder", "endDatePlaceholder", "fieldName", "validation", "defaultValue", "minDate", "maxDate", "startDateClassName", "endDateClassName", "wrapperClassName", "disabled", "onChange", "includeFieldSet"];
2
2
  function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
3
3
  function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
4
4
  function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
@@ -38,6 +38,7 @@ var DatePickerRange = function DatePickerRange(props) {
38
38
  wrapperClassName = props.wrapperClassName,
39
39
  disabled = props.disabled,
40
40
  _onChange = props.onChange,
41
+ includeFieldSet = props.includeFieldSet,
41
42
  restProps = _objectWithoutProperties(props, _excluded);
42
43
  var _useExtendedFormikCon = useExtendedFormikContext(),
43
44
  values = _useExtendedFormikCon.values,
@@ -47,6 +48,8 @@ var DatePickerRange = function DatePickerRange(props) {
47
48
  displayRequiredIndicator = _useExtendedFormikCon.displayRequiredIndicator;
48
49
  var isTouched = touched[fieldName];
49
50
  var error = errors[fieldName];
51
+ var errorId = "".concat(props.fieldName, "--error");
52
+ var descriptionId = "".concat(props.fieldName, "--description");
50
53
  var startDateClassNames = c('DatePickerRange--start', startDateClassName);
51
54
  var endDateClassNames = c('DatePickerRange--end', endDateClassName);
52
55
  var wrapperClassNames = c('DatePickerRange', wrapperClassName);
@@ -88,7 +91,8 @@ var DatePickerRange = function DatePickerRange(props) {
88
91
  fieldName: fieldName,
89
92
  touched: isTouched,
90
93
  error: error,
91
- displayRequiredIndicator: displayRequiredIndicator
94
+ displayRequiredIndicator: displayRequiredIndicator,
95
+ includeFieldSet: includeFieldSet
92
96
  }, /*#__PURE__*/React.createElement(Field, {
93
97
  name: fieldName,
94
98
  value: [startDate, endDate],
@@ -107,6 +111,7 @@ var DatePickerRange = function DatePickerRange(props) {
107
111
  className: startDateClassNames,
108
112
  disabled: disabled,
109
113
  shouldCloseOnSelect: !isSinglePicker,
114
+ required: required,
110
115
  onChange: function onChange(date) {
111
116
  // When selectsRange is true, date is an array of Date values.
112
117
  // Otherwise date is a single Date value.
@@ -127,6 +132,7 @@ var DatePickerRange = function DatePickerRange(props) {
127
132
  maxDate: maxDate,
128
133
  className: endDateClassNames,
129
134
  disabled: disabled,
135
+ required: required,
130
136
  onChange: function onChange(date) {
131
137
  setFieldValue(fieldName, [startDate, date]);
132
138
  if (_onChange) {
@@ -27,7 +27,8 @@ var DateSelect = function DateSelect(props) {
27
27
  dayPlaceholder = props.dayPlaceholder,
28
28
  monthPlaceholder = props.monthPlaceholder,
29
29
  yearPlaceholder = props.yearPlaceholder,
30
- onChange = props.onChange;
30
+ onChange = props.onChange,
31
+ includeFieldSet = props.includeFieldSet;
31
32
  var _useExtendedFormikCon = useExtendedFormikContext(),
32
33
  setFieldValue = _useExtendedFormikCon.setFieldValue,
33
34
  setFieldError = _useExtendedFormikCon.setFieldError,
@@ -39,6 +40,8 @@ var DateSelect = function DateSelect(props) {
39
40
  var isTouched = touched[fieldName];
40
41
  var value = values[fieldName];
41
42
  var error = errors[fieldName];
43
+ var errorId = "".concat(props.fieldName, "--error");
44
+ var descriptionId = "".concat(props.fieldName, "--description");
42
45
  var _useTranslation = useTranslation(),
43
46
  t = _useTranslation.t;
44
47
 
@@ -159,7 +162,10 @@ var DateSelect = function DateSelect(props) {
159
162
  displayRequiredIndicator: displayRequiredIndicator,
160
163
  error: error,
161
164
  touched: isTouched,
162
- fieldName: fieldName
165
+ fieldName: fieldName,
166
+ errorId: errorId,
167
+ descriptionId: descriptionId,
168
+ includeFieldSet: includeFieldSet
163
169
  }, /*#__PURE__*/React.createElement(Field, {
164
170
  id: fieldName,
165
171
  name: fieldName,
@@ -14,7 +14,11 @@ var GenericFormElement = function GenericFormElement(props) {
14
14
  touched = props.touched,
15
15
  error = props.error,
16
16
  children = props.children,
17
- displayRequiredIndicator = props.displayRequiredIndicator;
17
+ displayRequiredIndicator = props.displayRequiredIndicator,
18
+ errorId = props.errorId,
19
+ descriptionId = props.descriptionId,
20
+ _props$includeFieldSe = props.includeFieldSet,
21
+ includeFieldSet = _props$includeFieldSe === void 0 ? false : _props$includeFieldSe;
18
22
  return /*#__PURE__*/React.createElement("div", {
19
23
  className: error ? "FormElement ".concat(className, " error") : "FormElement ".concat(className)
20
24
  }, title && /*#__PURE__*/React.createElement("label", {
@@ -25,11 +29,16 @@ var GenericFormElement = function GenericFormElement(props) {
25
29
  className: "FormElement__required ".concat(className, "__required")
26
30
  }, t(['form.required', ' - vereist']))), /*#__PURE__*/React.createElement("div", {
27
31
  className: "FormElement__inner ".concat(className, "__inner")
28
- }, children), description && /*#__PURE__*/React.createElement(WysiwygField, {
32
+ }, includeFieldSet && /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("fieldset", {
33
+ "aria-describedby": "".concat(errorId, " ").concat(descriptionId),
34
+ "aria-invalid": Boolean(error && touched)
35
+ }, children)), !includeFieldSet && /*#__PURE__*/React.createElement(React.Fragment, null, children)), description && /*#__PURE__*/React.createElement(WysiwygField, {
36
+ id: descriptionId,
29
37
  property: "schema:text",
30
38
  html: description,
31
39
  className: "FormElement__description ".concat(className, "__description")
32
40
  }), error && touched ? /*#__PURE__*/React.createElement("div", {
41
+ id: errorId,
33
42
  className: "FormElement__error ".concat(className, "__error")
34
43
  }, error) : null);
35
44
  };
@@ -11,6 +11,14 @@
11
11
  margin-bottom: 5px;
12
12
  }
13
13
 
14
+ fieldset {
15
+ display: flex;
16
+ flex-direction: column;
17
+ padding: 0;
18
+ margin: 0;
19
+ border: none;
20
+ }
21
+
14
22
  &__description {
15
23
  margin-top: 1rem;
16
24
  font-size: 1.4rem;
@@ -10,10 +10,12 @@ import './style.scss';
10
10
  var Radio = function Radio(props) {
11
11
  var className = props.className,
12
12
  disabled = props.disabled,
13
- _onChange = props.onChange;
13
+ _onChange = props.onChange,
14
+ required = props.required;
14
15
  return /*#__PURE__*/React.createElement(Field, {
15
16
  name: props.name,
16
- validate: props.validate
17
+ validate: props.validate,
18
+ required: required
17
19
  }, function (_ref) {
18
20
  var field = _ref.field,
19
21
  form = _ref.form;
@@ -43,6 +45,7 @@ var Radio = function Radio(props) {
43
45
  value: props.value,
44
46
  disabled: disabled,
45
47
  className: className,
48
+ required: required,
46
49
  onChange: function onChange(event) {
47
50
  if (_onChange) {
48
51
  _onChange(props.value);
@@ -66,6 +69,7 @@ var Radio = function Radio(props) {
66
69
  value: props.value,
67
70
  disabled: disabled,
68
71
  className: className,
72
+ required: required,
69
73
  onChange: function onChange(event) {
70
74
  if (_onChange) {
71
75
  _onChange(props.value);
@@ -92,7 +96,8 @@ var RadioButtons = function RadioButtons(props) {
92
96
  disabled = _props$disabled === void 0 ? false : _props$disabled,
93
97
  otherLabel = props.otherLabel,
94
98
  otherPlaceholder = props.otherPlaceholder,
95
- onChange = props.onChange;
99
+ onChange = props.onChange,
100
+ includeFieldSet = props.includeFieldSet;
96
101
  var _useTranslation = useTranslation(),
97
102
  t = _useTranslation.t;
98
103
  var _useExtendedFormikCon = useExtendedFormikContext(),
@@ -101,6 +106,8 @@ var RadioButtons = function RadioButtons(props) {
101
106
  displayRequiredIndicator = _useExtendedFormikCon.displayRequiredIndicator;
102
107
  var isTouched = touched[fieldName];
103
108
  var error = errors[fieldName];
109
+ var errorId = "".concat(props.fieldName, "--").concat(props.value, "-error");
110
+ var descriptionId = "".concat(props.fieldName, "--description");
104
111
  var handleValidation = function handleValidation(value) {
105
112
  if (validation) {
106
113
  return validation(value);
@@ -117,7 +124,10 @@ var RadioButtons = function RadioButtons(props) {
117
124
  fieldName: fieldName,
118
125
  touched: isTouched,
119
126
  error: error,
120
- displayRequiredIndicator: displayRequiredIndicator
127
+ errorId: errorId,
128
+ descriptionId: descriptionId,
129
+ displayRequiredIndicator: displayRequiredIndicator,
130
+ includeFieldSet: includeFieldSet
121
131
  }, Object.keys(options).map(function (item) {
122
132
  var label = _typeof(options[item]) === 'object' ? options[item].label : options[item];
123
133
  var value = _typeof(options[item]) === 'object' ? options[item].value : item;
@@ -138,7 +148,11 @@ var RadioButtons = function RadioButtons(props) {
138
148
  otherLabel: otherLabel,
139
149
  otherPlaceholder: otherPlaceholder,
140
150
  disabled: optionDisabled,
141
- onChange: onChange
151
+ onChange: onChange,
152
+ errorId: errorId,
153
+ error: error,
154
+ isTouched: isTouched,
155
+ required: required
142
156
  });
143
157
  }));
144
158
  };
@@ -20,13 +20,16 @@ var Select = function Select(props) {
20
20
  isSearchable = _props$isSearchable === void 0 ? true : _props$isSearchable,
21
21
  _props$isClearable = props.isClearable,
22
22
  isClearable = _props$isClearable === void 0 ? true : _props$isClearable,
23
- validation = props.validation;
23
+ validation = props.validation,
24
+ includeFieldSet = props.includeFieldSet;
24
25
  var _useExtendedFormikCon = useExtendedFormikContext(),
25
26
  errors = _useExtendedFormikCon.errors,
26
27
  touched = _useExtendedFormikCon.touched,
27
28
  displayRequiredIndicator = _useExtendedFormikCon.displayRequiredIndicator;
28
29
  var error = errors[fieldName];
29
30
  var isTouched = touched[fieldName];
31
+ var errorId = "".concat(props.fieldName, "--error");
32
+ var descriptionId = "".concat(props.fieldName, "--description");
30
33
  return /*#__PURE__*/React.createElement(GenericFormElement, {
31
34
  className: c('Select', wrapperClassName),
32
35
  title: title,
@@ -35,7 +38,10 @@ var Select = function Select(props) {
35
38
  fieldName: fieldName,
36
39
  touched: isTouched,
37
40
  error: error,
38
- displayRequiredIndicator: displayRequiredIndicator
41
+ displayRequiredIndicator: displayRequiredIndicator,
42
+ errorId: errorId,
43
+ descriptionId: descriptionId,
44
+ includeFieldSet: includeFieldSet
39
45
  }, /*#__PURE__*/React.createElement(SelectInput, _extends({}, props, {
40
46
  fieldName: fieldName,
41
47
  className: c(className, {
@@ -45,8 +51,11 @@ var Select = function Select(props) {
45
51
  multiple: multiple,
46
52
  isSearchable: isSearchable,
47
53
  isClearable: isClearable,
54
+ isTouched: isTouched,
48
55
  required: required,
49
- validate: validation
56
+ validate: validation,
57
+ error: error,
58
+ errorId: errorId
50
59
  })));
51
60
  };
52
61
  export default Select;
@@ -66,6 +66,8 @@ export var TextField = function TextField(props) {
66
66
  error = nestedFieldname[1] ? errors[nestedFieldname[0]][nestedFieldname[1]] : errors[fieldName];
67
67
  }
68
68
  var value = nestedFieldname[1] ? values[nestedFieldname[0]][nestedFieldname[1]] : values[fieldName];
69
+ var errorId = "".concat(props.fieldName, "--error");
70
+ var descriptionId = "".concat(props.fieldName, "--description");
69
71
  return /*#__PURE__*/React.createElement(GenericFormElement, {
70
72
  className: c('TextField', wrapperClassName),
71
73
  title: title,
@@ -74,6 +76,8 @@ export var TextField = function TextField(props) {
74
76
  fieldName: fieldName,
75
77
  touched: isTouched,
76
78
  error: error,
79
+ errorId: errorId,
80
+ descriptionId: descriptionId,
77
81
  displayRequiredIndicator: displayRequiredIndicator
78
82
  }, /*#__PURE__*/React.createElement(Field, _extends({}, restProps, {
79
83
  className: c(className, {
@@ -86,7 +90,10 @@ export var TextField = function TextField(props) {
86
90
  placeholder: placeholder,
87
91
  validate: handleValidation,
88
92
  onKeyUp: handleChange,
89
- disabled: disabled
93
+ disabled: disabled,
94
+ required: required,
95
+ "aria-describedby": "".concat(errorId, " ").concat(descriptionId),
96
+ "aria-invalid": Boolean(error && isTouched)
90
97
  })));
91
98
  };
92
99
  export default withMapping(TextField);
@@ -33,6 +33,8 @@ var Textarea = function Textarea(props) {
33
33
  var isTouched = touched[fieldName];
34
34
  var value = values[fieldName];
35
35
  var error = errors[fieldName];
36
+ var errorId = "".concat(props.fieldName, "--error");
37
+ var descriptionId = "".concat(props.fieldName, "--description");
36
38
  var handleValidation = function handleValidation(value) {
37
39
  if (validation) {
38
40
  return validation(value);
@@ -49,7 +51,9 @@ var Textarea = function Textarea(props) {
49
51
  fieldName: fieldName,
50
52
  touched: isTouched,
51
53
  error: error,
52
- displayRequiredIndicator: displayRequiredIndicator
54
+ displayRequiredIndicator: displayRequiredIndicator,
55
+ errorId: errorId,
56
+ descriptionId: descriptionId
53
57
  }, /*#__PURE__*/React.createElement(Field, _extends({}, restProps, {
54
58
  className: c(className, {
55
59
  'error': error && isTouched
@@ -58,6 +62,7 @@ var Textarea = function Textarea(props) {
58
62
  name: fieldName,
59
63
  component: "textarea",
60
64
  value: value,
65
+ required: required,
61
66
  placeholder: placeholder,
62
67
  rows: rows,
63
68
  validate: handleValidation,
@@ -66,7 +71,9 @@ var Textarea = function Textarea(props) {
66
71
  if (onChange) {
67
72
  onChange(event);
68
73
  }
69
- }
74
+ },
75
+ "aria-describedby": "".concat(errorId, " ").concat(descriptionId),
76
+ "aria-invalid": Boolean(error && isTouched)
70
77
  })));
71
78
  };
72
79
  export default Textarea;
@@ -63,8 +63,7 @@ var Share = function Share(_ref2) {
63
63
  }, /*#__PURE__*/React.createElement("div", {
64
64
  className: "Share__wrapper"
65
65
  }, /*#__PURE__*/React.createElement("div", {
66
- className: "Share__title",
67
- tabIndex: "0"
66
+ className: "Share__title"
68
67
  }, title), /*#__PURE__*/React.createElement("div", {
69
68
  className: "Share__buttons"
70
69
  }, buttons)));
@@ -1,7 +1,8 @@
1
1
  export default WysiwygField;
2
- declare function WysiwygField({ html, customElementHandler, className, ...props }: {
2
+ declare function WysiwygField({ html, id, customElementHandler, className, ...props }: {
3
3
  [x: string]: any;
4
4
  html: any;
5
+ id?: string | undefined;
5
6
  customElementHandler?: (() => void) | undefined;
6
7
  className?: string | undefined;
7
8
  }): React.JSX.Element;
@@ -10,12 +11,15 @@ declare namespace WysiwygField {
10
11
  let html: PropTypes.Validator<string>;
11
12
  let customElementHandler: PropTypes.Requireable<(...args: any[]) => any>;
12
13
  let className: PropTypes.Requireable<string>;
14
+ let id: PropTypes.Requireable<string>;
13
15
  }
14
16
  namespace defaultProps {
15
17
  export function customElementHandler_1(): void;
16
18
  export { customElementHandler_1 as customElementHandler };
17
19
  let className_1: string;
18
20
  export { className_1 as className };
21
+ let id_1: string;
22
+ export { id_1 as id };
19
23
  }
20
24
  }
21
25
  import React from 'react';
@@ -1,4 +1,4 @@
1
- var _excluded = ["html", "customElementHandler", "className"];
1
+ var _excluded = ["html", "id", "customElementHandler", "className"];
2
2
  function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
3
3
  function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
4
4
  function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
@@ -9,6 +9,8 @@ import c from 'classnames';
9
9
  import Button from '../Button';
10
10
  var WysiwygField = function WysiwygField(_ref) {
11
11
  var html = _ref.html,
12
+ _ref$id = _ref.id,
13
+ id = _ref$id === void 0 ? '' : _ref$id,
12
14
  _ref$customElementHan = _ref.customElementHandler,
13
15
  customElementHandler = _ref$customElementHan === void 0 ? function () {} : _ref$customElementHan,
14
16
  _ref$className = _ref.className,
@@ -46,16 +48,19 @@ var WysiwygField = function WysiwygField(_ref) {
46
48
  }
47
49
  });
48
50
  return /*#__PURE__*/React.createElement("div", _extends({
51
+ id: id,
49
52
  className: classes
50
53
  }, props), parsedHtml);
51
54
  };
52
55
  WysiwygField.propTypes = {
53
56
  html: PropTypes.string.isRequired,
54
57
  customElementHandler: PropTypes.func,
55
- className: PropTypes.string
58
+ className: PropTypes.string,
59
+ id: PropTypes.string
56
60
  };
57
61
  WysiwygField.defaultProps = {
58
62
  customElementHandler: function customElementHandler() {},
59
- className: ''
63
+ className: '',
64
+ id: ''
60
65
  };
61
66
  export default WysiwygField;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@uncinc/uncinc-react-kitchen-sink",
3
- "version": "2.9.0",
3
+ "version": "2.10.0",
4
4
  "description": "Default React components that are easily extended.",
5
5
  "author": "uncinc",
6
6
  "license": "MIT",