@etsoo/materialui 1.0.66 → 1.0.67

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.
@@ -8,6 +8,7 @@ import React from 'react';
8
8
  * @returns Component
9
9
  */
10
10
  export function OptionGroup(props) {
11
+ var _a;
11
12
  // Destruct
12
13
  const { getOptionLabel, defaultValue, idField = 'id', label, labelField = 'label', multiple = false, mRef, name, onValueChange, options, readOnly, row, itemSize, helperText, variant, required, ...rest } = props;
13
14
  // Theme
@@ -23,11 +24,11 @@ export function OptionGroup(props) {
23
24
  // Checkbox values
24
25
  const [values, setValues] = React.useState([]);
25
26
  // Values
26
- const dv = defaultValue == null
27
+ const dv = React.useMemo(() => defaultValue == null
27
28
  ? []
28
29
  : Array.isArray(defaultValue)
29
30
  ? defaultValue
30
- : [defaultValue];
31
+ : [defaultValue], [defaultValue]);
31
32
  React.useEffect(() => {
32
33
  setValues(dv);
33
34
  }, [dv]);
@@ -83,7 +84,7 @@ export function OptionGroup(props) {
83
84
  return (React.createElement(FormControlLabel, { key: value, control: control, value: value, label: label }));
84
85
  });
85
86
  // Group
86
- const group = multiple ? (React.createElement(FormGroup, { row: row }, list)) : (React.createElement(RadioGroup, { row: row, name: name, value: values[0], onChange: (_event, value) => {
87
+ const group = multiple ? (React.createElement(FormGroup, { row: row }, list)) : (React.createElement(RadioGroup, { row: row, name: name, value: (_a = values[0]) !== null && _a !== void 0 ? _a : '', onChange: (_event, value) => {
87
88
  if (firstOptionValue == null)
88
89
  return;
89
90
  const typeValue = Utils.parseString(value, firstOptionValue);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@etsoo/materialui",
3
- "version": "1.0.66",
3
+ "version": "1.0.67",
4
4
  "description": "TypeScript Material-UI Implementation",
5
5
  "main": "lib/index.js",
6
6
  "types": "lib/index.d.ts",
@@ -157,12 +157,15 @@ export function OptionGroup<
157
157
  const [values, setValues] = React.useState<T[D][]>([]);
158
158
 
159
159
  // Values
160
- const dv =
161
- defaultValue == null
162
- ? []
163
- : Array.isArray(defaultValue)
164
- ? defaultValue
165
- : [defaultValue];
160
+ const dv = React.useMemo(
161
+ () =>
162
+ defaultValue == null
163
+ ? []
164
+ : Array.isArray(defaultValue)
165
+ ? defaultValue
166
+ : [defaultValue],
167
+ [defaultValue]
168
+ );
166
169
 
167
170
  React.useEffect(() => {
168
171
  setValues(dv);
@@ -261,7 +264,7 @@ export function OptionGroup<
261
264
  <RadioGroup
262
265
  row={row}
263
266
  name={name}
264
- value={values[0]}
267
+ value={values[0] ?? ''}
265
268
  onChange={(_event, value) => {
266
269
  if (firstOptionValue == null) return;
267
270
  const typeValue = Utils.parseString(value, firstOptionValue);