epn-ui
Version:
Дизайн система кабинета ВМ
24 lines (21 loc) • 1.29 kB
JavaScript
import React, { useState } from 'react';
import clsx from 'clsx';
import RadioAnt from 'antd/lib/radio';
var Group = RadioAnt.Group, Button = RadioAnt.Button;
var BaseRadio = function (_a) {
var id = _a.id, name = _a.name, _b = _a.autoFocus, autoFocus = _b === void 0 ? false : _b, _c = _a.checked, checked = _c === void 0 ? false : _c, _d = _a.defaultChecked, defaultChecked = _d === void 0 ? false : _d, _e = _a.disabled, disabled = _e === void 0 ? false : _e, value = _a.value, className = _a.className, style = _a.style, children = _a.children, onChange = _a.onChange;
var _f = useState(defaultChecked), active = _f[0], setActive = _f[1];
return (React.createElement(RadioAnt, { id: id, name: name, autoFocus: autoFocus, checked: checked || active, disabled: disabled, value: value, className: clsx('epn-radio', className), style: style, onChange: function (e) {
setActive(e.target.checked);
if (typeof onChange === 'function') {
onChange(e);
}
} },
React.createElement("span", { className: "epn-radio__label" }, children)));
};
BaseRadio.displayName = 'Radio';
var Radio = BaseRadio;
Radio.Button = Button;
Radio.Group = Group;
var Radio$1 = Radio;
export { BaseRadio, Radio$1 as default };