mui-extended
Version:
Extended UI Components built on Material UI
22 lines (21 loc) • 1.02 kB
JavaScript
import { __assign, __rest } from "tslib";
import { jsx as _jsx } from "react/jsx-runtime";
import { RadioGroup } from "@mui/material";
import { useMemo } from "react";
import { withFormField } from "../FormField";
import { withFormInputControl } from "./FormInputControl";
var ControlledRadioGroup = function (_a) {
var name = _a.name, value = _a.value, onChange = _a.onChange, onBlur = _a.onBlur, children = _a.children, props = __rest(_a, ["name", "value", "onChange", "onBlur", "children"]);
var _onChange = useMemo(function () {
return function (event) {
onChange(name, event.target.value);
};
}, [onChange, name]);
var _onBlur = useMemo(function () {
return function () {
onBlur(name);
};
}, [onBlur, name]);
return (_jsx(RadioGroup, __assign({}, props, { name: name, value: value, onChange: _onChange, onBlur: _onBlur, children: children })));
};
export var FormRadioGroup = withFormField(withFormInputControl(ControlledRadioGroup));