@flexis/ui
Version:
Styleless React Components
34 lines • 2.75 kB
JavaScript
import { __decorate } from "tslib";
import React, { PureComponent } from 'react';
import PropTypes from 'prop-types';
import { Bind } from '../../helpers';
import { InputValuePropType } from '../common/types';
import { style, classes } from './Radio.st.css';
let Radio = /** @class */ (() => {
class Radio extends PureComponent {
render() {
const { className, elementRef, ...props } = this.props;
return (<input ref={elementRef} {...props} className={style(classes.root, className)} type='radio' onChange={this.onChange}/>);
}
onChange(event) {
const { onChange, value } = this.props;
if (typeof onChange === 'function') {
const nextValue = typeof value !== 'undefined'
? value
: event.currentTarget.checked;
onChange(nextValue, event);
}
}
}
Radio.propTypes = {
elementRef: PropTypes.func,
onChange: PropTypes.func,
value: InputValuePropType
};
__decorate([
Bind()
], Radio.prototype, "onChange", null);
return Radio;
})();
export default Radio;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUmFkaW8uanN4Iiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvUmFkaW8vUmFkaW8udHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEtBQUssRUFBRSxFQUliLGFBQWEsRUFDYixNQUFNLE9BQU8sQ0FBQztBQUNmLE9BQU8sU0FBUyxNQUFNLFlBQVksQ0FBQztBQUNuQyxPQUFPLEVBRU4sSUFBSSxFQUNKLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFHTixrQkFBa0IsRUFDbEIsTUFBTSxpQkFBaUIsQ0FBQztBQUN6QixPQUFPLEVBQ04sS0FBSyxFQUNMLE9BQU8sRUFDUCxNQUFNLGdCQUFnQixDQUFDO0FBYXhCO0lBQUEsTUFBcUIsS0FBTSxTQUFRLGFBQXFCO1FBUXZELE1BQU07WUFFTCxNQUFNLEVBQ0wsU0FBUyxFQUNULFVBQVUsRUFDVixHQUFHLEtBQUssRUFDUixHQUFHLElBQUksQ0FBQyxLQUFLLENBQUM7WUFFZixPQUFPLENBQ04sQ0FBQyxLQUFLLENBQ0wsR0FBRyxDQUFDLENBQUMsVUFBVSxDQUFDLENBQ2hCLElBQUksS0FBSyxDQUFDLENBQ1YsU0FBUyxDQUFDLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsU0FBUyxDQUFDLENBQUMsQ0FDMUMsSUFBSSxDQUFDLE9BQU8sQ0FDWixRQUFRLENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEVBQ3ZCLENBQ0YsQ0FBQztRQUNILENBQUM7UUFHTyxRQUFRLENBQUMsS0FBb0M7WUFFcEQsTUFBTSxFQUNMLFFBQVEsRUFDUixLQUFLLEVBQ0wsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDO1lBRWYsSUFBSSxPQUFPLFFBQVEsS0FBSyxVQUFVLEVBQUU7Z0JBRW5DLE1BQU0sU0FBUyxHQUFHLE9BQU8sS0FBSyxLQUFLLFdBQVc7b0JBQzdDLENBQUMsQ0FBQyxLQUFLO29CQUNQLENBQUMsQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQztnQkFFL0IsUUFBUSxDQUFDLFNBQVMsRUFBRSxLQUFLLENBQUMsQ0FBQzthQUMzQjtRQUNGLENBQUM7O0lBekNNLGVBQVMsR0FBRztRQUNsQixVQUFVLEVBQUUsU0FBUyxDQUFDLElBQUk7UUFDMUIsUUFBUSxFQUFJLFNBQVMsQ0FBQyxJQUFJO1FBQzFCLEtBQUssRUFBTyxrQkFBa0I7S0FDOUIsQ0FBQztJQXNCRjtRQURDLElBQUksRUFBRTt5Q0FnQk47SUFDRixZQUFDO0tBQUE7ZUE1Q29CLEtBQUsifQ==