@stack-spot/citric-react 0.20.0 → 0.20.1
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/dist/utils/checkbox.d.ts +1 -1
- package/dist/utils/checkbox.d.ts.map +1 -1
- package/dist/utils/checkbox.js +7 -8
- package/dist/utils/checkbox.js.map +1 -1
- package/dist/utils/radio.d.ts +2 -2
- package/dist/utils/radio.d.ts.map +1 -1
- package/dist/utils/radio.js +5 -6
- package/dist/utils/radio.js.map +1 -1
- package/package.json +1 -1
- package/src/utils/checkbox.ts +7 -8
- package/src/utils/radio.ts +6 -7
package/dist/utils/checkbox.d.ts
CHANGED
|
@@ -61,7 +61,7 @@ export declare function useCheckboxGroupControls<T, F = string>(params: Checkbox
|
|
|
61
61
|
/**
|
|
62
62
|
* Changes the current value, should be passed to the property `onChange` of the checkbox group.
|
|
63
63
|
*/
|
|
64
|
-
setValue: (
|
|
64
|
+
setValue: import("react").Dispatch<import("react").SetStateAction<T[]>>;
|
|
65
65
|
/**
|
|
66
66
|
* A function to render a unique key for an option. Should be passed to the property `renderKey` of the checkbox group.
|
|
67
67
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"checkbox.d.ts","sourceRoot":"","sources":["../../src/utils/checkbox.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,uBAAuB,CAAC,CAAC,EAAE,CAAC,GAAG,MAAM;IACpD;;;;OAIG;IACH,YAAY,CAAC,EAAE,CAAC,EAAE,CAAC;IACnB;;;;;OAKG;IACH,WAAW,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,KAAK,OAAO,CAAC;IAChD;;OAEG;IACH,OAAO,EAAE,CAAC,EAAE,CAAC;IACb;;;;OAIG;IACH,SAAS,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;IACtD;;;OAGG;IACH,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE,KAAK,IAAI,CAAC;CACjC;AAED;;;;GAIG;AACH,wBAAgB,wBAAwB,CAAC,CAAC,EAAE,CAAC,GAAG,MAAM,EAAE,MAAM,EAAE,uBAAuB,CAAC,CAAC,EAAE,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"checkbox.d.ts","sourceRoot":"","sources":["../../src/utils/checkbox.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,uBAAuB,CAAC,CAAC,EAAE,CAAC,GAAG,MAAM;IACpD;;;;OAIG;IACH,YAAY,CAAC,EAAE,CAAC,EAAE,CAAC;IACnB;;;;;OAKG;IACH,WAAW,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,KAAK,OAAO,CAAC;IAChD;;OAEG;IACH,OAAO,EAAE,CAAC,EAAE,CAAC;IACb;;;;OAIG;IACH,SAAS,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;IACtD;;;OAGG;IACH,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE,KAAK,IAAI,CAAC;CACjC;AAED;;;;GAIG;AACH,wBAAgB,wBAAwB,CAAC,CAAC,EAAE,CAAC,GAAG,MAAM,EAAE,MAAM,EAAE,uBAAuB,CAAC,CAAC,EAAE,CAAC,CAAC;IAmCzF;;OAEG;;IAEH;;OAEG;;IAEH;;OAEG;;IAEH;;OAEG;;IAEH;;OAEG;;IAEH;;OAEG;;IAEH;;OAEG;;IAEH;;OAEG;8BA9EqB,MAAM,GAAG,MAAM,GAAG,SAAS;IAgFnD;;;;OAIG;gCAhDmF,CAAC;IAkDvF;;OAEG;;EAGN"}
|
package/dist/utils/checkbox.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { useCallback, useMemo, useState } from 'react';
|
|
1
|
+
import { useCallback, useEffect, useMemo, useState } from 'react';
|
|
2
2
|
import { defaultRenderKey } from './options.js';
|
|
3
3
|
/**
|
|
4
4
|
* Use this hook to easily implement filtering and selection controls for a checkbox group.
|
|
@@ -9,10 +9,9 @@ export function useCheckboxGroupControls(params) {
|
|
|
9
9
|
const [value, setValue] = useState(params.initialValue ?? []);
|
|
10
10
|
const [filter, setFilter] = useState();
|
|
11
11
|
const renderKey = params.renderKey ?? defaultRenderKey;
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
}, []);
|
|
12
|
+
useEffect(() => {
|
|
13
|
+
params.onChange?.(value);
|
|
14
|
+
}, [value]);
|
|
16
15
|
const { options, isUnfilteredButChecked } = useMemo(() => {
|
|
17
16
|
if (!params.applyFilter || !filter)
|
|
18
17
|
return { options: params.options, isUnfilteredButChecked: () => false };
|
|
@@ -32,10 +31,10 @@ export function useCheckboxGroupControls(params) {
|
|
|
32
31
|
return { options: [...unfilteredButChecked, ...filtered], isUnfilteredButChecked: (o) => map.has(renderKey(o)) };
|
|
33
32
|
}, [params.options, filter]);
|
|
34
33
|
const selectAll = useCallback(() => {
|
|
35
|
-
|
|
34
|
+
setValue([...options]);
|
|
36
35
|
}, [options]);
|
|
37
36
|
const removeSelection = useCallback(() => {
|
|
38
|
-
|
|
37
|
+
setValue([]);
|
|
39
38
|
}, []);
|
|
40
39
|
return {
|
|
41
40
|
/**
|
|
@@ -65,7 +64,7 @@ export function useCheckboxGroupControls(params) {
|
|
|
65
64
|
/**
|
|
66
65
|
* Changes the current value, should be passed to the property `onChange` of the checkbox group.
|
|
67
66
|
*/
|
|
68
|
-
setValue
|
|
67
|
+
setValue,
|
|
69
68
|
/**
|
|
70
69
|
* A function to render a unique key for an option. Should be passed to the property `renderKey` of the checkbox group.
|
|
71
70
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"checkbox.js","sourceRoot":"","sources":["../../src/utils/checkbox.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;
|
|
1
|
+
{"version":3,"file":"checkbox.js","sourceRoot":"","sources":["../../src/utils/checkbox.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AACjE,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAA;AAiC5C;;;;GAIG;AACH,MAAM,UAAU,wBAAwB,CAAgB,MAAqC;IAC3F,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAC,MAAM,CAAC,YAAY,IAAI,EAAE,CAAC,CAAA;IAC7D,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,EAAiB,CAAA;IACrD,MAAM,SAAS,GAAG,MAAM,CAAC,SAAS,IAAI,gBAAgB,CAAA;IAEtD,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,CAAA;IAC1B,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAA;IAEX,MAAM,EAAE,OAAO,EAAE,sBAAsB,EAAE,GAAG,OAAO,CAAC,GAAG,EAAE;QACvD,IAAI,CAAC,MAAM,CAAC,WAAW,IAAI,CAAC,MAAM;YAAE,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,sBAAsB,EAAE,GAAG,EAAE,CAAC,KAAK,EAAE,CAAA;QAC3G,MAAM,QAAQ,GAAQ,EAAE,CAAA;QACxB,MAAM,oBAAoB,GAAQ,EAAE,CAAA;QACpC,MAAM,GAAG,GAAG,IAAI,GAAG,EAAwC,CAAA;QAC3D,MAAM,SAAS,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAA;QAC9C,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YAC/B,MAAM,GAAG,GAAG,SAAS,CAAC,CAAC,CAAC,CAAA;YACxB,IAAI,MAAM,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC;gBAAE,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;iBAC9C,IAAI,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;gBACjC,oBAAoB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;gBAC5B,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;YACpB,CAAC;QACH,CAAC;QACD,OAAO,EAAE,OAAO,EAAE,CAAC,GAAG,oBAAoB,EAAE,GAAG,QAAQ,CAAC,EAAE,sBAAsB,EAAE,CAAC,CAAI,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;IACrH,CAAC,EAAE,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAA;IAE5B,MAAM,SAAS,GAAG,WAAW,CAAC,GAAG,EAAE;QACjC,QAAQ,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAA;IACxB,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAA;IAEb,MAAM,eAAe,GAAG,WAAW,CAAC,GAAG,EAAE;QACvC,QAAQ,CAAC,EAAE,CAAC,CAAA;IACd,CAAC,EAAE,EAAE,CAAC,CAAA;IAEN,OAAO;QACL;;WAEG;QACH,SAAS;QACT;;WAEG;QACH,eAAe;QACf;;WAEG;QACH,MAAM;QACN;;WAEG;QACH,SAAS,EAAE,SAAS;QACpB;;WAEG;QACH,OAAO;QACP;;WAEG;QACH,KAAK;QACL;;WAEG;QACH,QAAQ;QACR;;WAEG;QACH,SAAS;QACT;;;;WAIG;QACH,sBAAsB;QACtB;;WAEG;QACH,aAAa,EAAE,KAAK,CAAC,MAAM,KAAK,OAAO,CAAC,MAAM;KAC/C,CAAA;AACH,CAAC"}
|
package/dist/utils/radio.d.ts
CHANGED
|
@@ -24,7 +24,7 @@ export interface RadioGroupHookParams<T, F = string> {
|
|
|
24
24
|
* A function to call whenever the value changes.
|
|
25
25
|
* @param value the new value.
|
|
26
26
|
*/
|
|
27
|
-
onChange?: (value: T) => void;
|
|
27
|
+
onChange?: (value: T | undefined) => void;
|
|
28
28
|
}
|
|
29
29
|
/**
|
|
30
30
|
* Use this hook to easily implement filtering for a radio group.
|
|
@@ -51,7 +51,7 @@ export declare function useRadioGroupControls<T, F = string>(params: RadioGroupH
|
|
|
51
51
|
/**
|
|
52
52
|
* Changes the current value, should be passed to the property `onChange` of the radio group.
|
|
53
53
|
*/
|
|
54
|
-
setValue: (
|
|
54
|
+
setValue: import("react").Dispatch<import("react").SetStateAction<T | undefined>>;
|
|
55
55
|
/**
|
|
56
56
|
* A function to render a unique key for an option. Should be passed to the property `renderKey` of the radio group.
|
|
57
57
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"radio.d.ts","sourceRoot":"","sources":["../../src/utils/radio.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,oBAAoB,CAAC,CAAC,EAAE,CAAC,GAAG,MAAM;IACjD;;OAEG;IACH,YAAY,CAAC,EAAE,CAAC,CAAC;IACjB;;;;;OAKG;IACH,WAAW,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,KAAK,OAAO,CAAC;IAChD;;OAEG;IACH,OAAO,EAAE,CAAC,EAAE,CAAC;IACb;;;;OAIG;IACH,SAAS,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;IACtD;;;OAGG;IACH,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"radio.d.ts","sourceRoot":"","sources":["../../src/utils/radio.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,oBAAoB,CAAC,CAAC,EAAE,CAAC,GAAG,MAAM;IACjD;;OAEG;IACH,YAAY,CAAC,EAAE,CAAC,CAAC;IACjB;;;;;OAKG;IACH,WAAW,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,KAAK,OAAO,CAAC;IAChD;;OAEG;IACH,OAAO,EAAE,CAAC,EAAE,CAAC;IACb;;;;OAIG;IACH,SAAS,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;IACtD;;;OAGG;IACH,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,GAAG,SAAS,KAAK,IAAI,CAAC;CAC3C;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,CAAC,EAAE,CAAC,GAAG,MAAM,EAAE,MAAM,EAAE,oBAAoB,CAAC,CAAC,EAAE,CAAC,CAAC;IAqBnF;;OAEG;;IAEH;;OAEG;;IAEH;;OAEG;;IAEH;;OAEG;;IAEH;;OAEG;;IAEH;;OAEG;8BAxDqB,MAAM,GAAG,MAAM,GAAG,SAAS;IA0DnD;;;;OAIG;gCAjC2B,CAAC;EAoClC"}
|
package/dist/utils/radio.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { useEffect, useMemo, useState } from 'react';
|
|
2
2
|
import { defaultRenderKey } from './options.js';
|
|
3
3
|
/**
|
|
4
4
|
* Use this hook to easily implement filtering for a radio group.
|
|
@@ -9,10 +9,9 @@ export function useRadioGroupControls(params) {
|
|
|
9
9
|
const [value, setValue] = useState(params.initialValue);
|
|
10
10
|
const [filter, setFilter] = useState();
|
|
11
11
|
const renderKey = params.renderKey ?? defaultRenderKey;
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
}, []);
|
|
12
|
+
useEffect(() => {
|
|
13
|
+
params.onChange?.(value);
|
|
14
|
+
}, [value]);
|
|
16
15
|
const { options, isUnfilteredButChecked } = useMemo(() => {
|
|
17
16
|
if (!params.applyFilter || !filter)
|
|
18
17
|
return { options: params.options, isUnfilteredButChecked: () => false };
|
|
@@ -44,7 +43,7 @@ export function useRadioGroupControls(params) {
|
|
|
44
43
|
/**
|
|
45
44
|
* Changes the current value, should be passed to the property `onChange` of the radio group.
|
|
46
45
|
*/
|
|
47
|
-
setValue
|
|
46
|
+
setValue,
|
|
48
47
|
/**
|
|
49
48
|
* A function to render a unique key for an option. Should be passed to the property `renderKey` of the radio group.
|
|
50
49
|
*/
|
package/dist/utils/radio.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"radio.js","sourceRoot":"","sources":["../../src/utils/radio.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"radio.js","sourceRoot":"","sources":["../../src/utils/radio.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AACpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAA;AA+B5C;;;;GAIG;AACH,MAAM,UAAU,qBAAqB,CAAgB,MAAkC;IACrF,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAC,MAAM,CAAC,YAAY,CAAC,CAAA;IACvD,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,EAAiB,CAAA;IACrD,MAAM,SAAS,GAAG,MAAM,CAAC,SAAS,IAAI,gBAAgB,CAAA;IAEtD,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,CAAA;IAC1B,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAA;IAEX,MAAM,EAAE,OAAO,EAAE,sBAAsB,EAAE,GAAG,OAAO,CAAC,GAAG,EAAE;QACvD,IAAI,CAAC,MAAM,CAAC,WAAW,IAAI,CAAC,MAAM;YAAE,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,sBAAsB,EAAE,GAAG,EAAE,CAAC,KAAK,EAAE,CAAA;QAC3G,MAAM,QAAQ,GAAG,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;QACrD,MAAM,kBAAkB,GAAG,KAAK,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,MAAM,EAAE,KAAK,CAAC,CAAA;QACxE,MAAM,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAA;QAC5E,OAAO;YACL,OAAO,EAAE,kBAAkB,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ;YAC7D,sBAAsB,EAAE,CAAC,CAAI,EAAE,EAAE,CAAC,kBAAkB,IAAI,SAAS,CAAC,CAAC,CAAC,KAAK,QAAQ;SAClF,CAAA;IACH,CAAC,EAAE,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAA;IAE5B,OAAO;QACL;;WAEG;QACH,MAAM;QACN;;WAEG;QACH,SAAS,EAAE,SAAS;QACpB;;WAEG;QACH,OAAO;QACP;;WAEG;QACH,KAAK;QACL;;WAEG;QACH,QAAQ;QACR;;WAEG;QACH,SAAS;QACT;;;;WAIG;QACH,sBAAsB;KACvB,CAAA;AACH,CAAC"}
|
package/package.json
CHANGED
package/src/utils/checkbox.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { useCallback, useMemo, useState } from 'react'
|
|
1
|
+
import { useCallback, useEffect, useMemo, useState } from 'react'
|
|
2
2
|
import { defaultRenderKey } from './options'
|
|
3
3
|
|
|
4
4
|
export interface CheckboxGroupHookParams<T, F = string> {
|
|
@@ -42,10 +42,9 @@ export function useCheckboxGroupControls<T, F = string>(params: CheckboxGroupHoo
|
|
|
42
42
|
const [filter, setFilter] = useState<F | undefined>()
|
|
43
43
|
const renderKey = params.renderKey ?? defaultRenderKey
|
|
44
44
|
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
}, [])
|
|
45
|
+
useEffect(() => {
|
|
46
|
+
params.onChange?.(value)
|
|
47
|
+
}, [value])
|
|
49
48
|
|
|
50
49
|
const { options, isUnfilteredButChecked } = useMemo(() => {
|
|
51
50
|
if (!params.applyFilter || !filter) return { options: params.options, isUnfilteredButChecked: () => false }
|
|
@@ -65,11 +64,11 @@ export function useCheckboxGroupControls<T, F = string>(params: CheckboxGroupHoo
|
|
|
65
64
|
}, [params.options, filter])
|
|
66
65
|
|
|
67
66
|
const selectAll = useCallback(() => {
|
|
68
|
-
|
|
67
|
+
setValue([...options])
|
|
69
68
|
}, [options])
|
|
70
69
|
|
|
71
70
|
const removeSelection = useCallback(() => {
|
|
72
|
-
|
|
71
|
+
setValue([])
|
|
73
72
|
}, [])
|
|
74
73
|
|
|
75
74
|
return {
|
|
@@ -100,7 +99,7 @@ export function useCheckboxGroupControls<T, F = string>(params: CheckboxGroupHoo
|
|
|
100
99
|
/**
|
|
101
100
|
* Changes the current value, should be passed to the property `onChange` of the checkbox group.
|
|
102
101
|
*/
|
|
103
|
-
setValue
|
|
102
|
+
setValue,
|
|
104
103
|
/**
|
|
105
104
|
* A function to render a unique key for an option. Should be passed to the property `renderKey` of the checkbox group.
|
|
106
105
|
*/
|
package/src/utils/radio.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { useEffect, useMemo, useState } from 'react'
|
|
2
2
|
import { defaultRenderKey } from './options'
|
|
3
3
|
|
|
4
4
|
export interface RadioGroupHookParams<T, F = string> {
|
|
@@ -27,7 +27,7 @@ export interface RadioGroupHookParams<T, F = string> {
|
|
|
27
27
|
* A function to call whenever the value changes.
|
|
28
28
|
* @param value the new value.
|
|
29
29
|
*/
|
|
30
|
-
onChange?: (value: T) => void,
|
|
30
|
+
onChange?: (value: T | undefined) => void,
|
|
31
31
|
}
|
|
32
32
|
|
|
33
33
|
/**
|
|
@@ -40,10 +40,9 @@ export function useRadioGroupControls<T, F = string>(params: RadioGroupHookParam
|
|
|
40
40
|
const [filter, setFilter] = useState<F | undefined>()
|
|
41
41
|
const renderKey = params.renderKey ?? defaultRenderKey
|
|
42
42
|
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
}, [])
|
|
43
|
+
useEffect(() => {
|
|
44
|
+
params.onChange?.(value)
|
|
45
|
+
}, [value])
|
|
47
46
|
|
|
48
47
|
const { options, isUnfilteredButChecked } = useMemo(() => {
|
|
49
48
|
if (!params.applyFilter || !filter) return { options: params.options, isUnfilteredButChecked: () => false }
|
|
@@ -76,7 +75,7 @@ export function useRadioGroupControls<T, F = string>(params: RadioGroupHookParam
|
|
|
76
75
|
/**
|
|
77
76
|
* Changes the current value, should be passed to the property `onChange` of the radio group.
|
|
78
77
|
*/
|
|
79
|
-
setValue
|
|
78
|
+
setValue,
|
|
80
79
|
/**
|
|
81
80
|
* A function to render a unique key for an option. Should be passed to the property `renderKey` of the radio group.
|
|
82
81
|
*/
|