UNPKG

@flexis/ui

Version:

Styleless React Components

34 lines 2.79 kB
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 './Checkbox.st.css'; let Checkbox = /** @class */ (() => { class Checkbox extends PureComponent { render() { const { className, elementRef, ...props } = this.props; return (<input ref={elementRef} {...props} className={style(classes.root, className)} type='checkbox' 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); } } } Checkbox.propTypes = { elementRef: PropTypes.func, onChange: PropTypes.func, value: InputValuePropType }; __decorate([ Bind() ], Checkbox.prototype, "onChange", null); return Checkbox; })(); export default Checkbox; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ2hlY2tib3guanN4Iiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvQ2hlY2tib3gvQ2hlY2tib3gudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEtBQUssRUFBRSxFQUliLGFBQWEsRUFDYixNQUFNLE9BQU8sQ0FBQztBQUNmLE9BQU8sU0FBUyxNQUFNLFlBQVksQ0FBQztBQUNuQyxPQUFPLEVBRU4sSUFBSSxFQUNKLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFHTixrQkFBa0IsRUFDbEIsTUFBTSxpQkFBaUIsQ0FBQztBQUN6QixPQUFPLEVBQ04sS0FBSyxFQUNMLE9BQU8sRUFDUCxNQUFNLG1CQUFtQixDQUFDO0FBYTNCO0lBQUEsTUFBcUIsUUFBUyxTQUFRLGFBQXFCO1FBUTFELE1BQU07WUFFTCxNQUFNLEVBQ0wsU0FBUyxFQUNULFVBQVUsRUFDVixHQUFHLEtBQUssRUFDUixHQUFHLElBQUksQ0FBQyxLQUFLLENBQUM7WUFFZixPQUFPLENBQ04sQ0FBQyxLQUFLLENBQ0wsR0FBRyxDQUFDLENBQUMsVUFBVSxDQUFDLENBQ2hCLElBQUksS0FBSyxDQUFDLENBQ1YsU0FBUyxDQUFDLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsU0FBUyxDQUFDLENBQUMsQ0FDMUMsSUFBSSxDQUFDLFVBQVUsQ0FDZixRQUFRLENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEVBQ3ZCLENBQ0YsQ0FBQztRQUNILENBQUM7UUFHTyxRQUFRLENBQUMsS0FBb0M7WUFFcEQsTUFBTSxFQUNMLFFBQVEsRUFDUixLQUFLLEVBQ0wsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDO1lBRWYsSUFBSSxPQUFPLFFBQVEsS0FBSyxVQUFVLEVBQUU7Z0JBRW5DLE1BQU0sU0FBUyxHQUFHLE9BQU8sS0FBSyxLQUFLLFdBQVc7b0JBQzdDLENBQUMsQ0FBQyxLQUFLO29CQUNQLENBQUMsQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQztnQkFFL0IsUUFBUSxDQUFDLFNBQVMsRUFBRSxLQUFLLENBQUMsQ0FBQzthQUMzQjtRQUNGLENBQUM7O0lBekNNLGtCQUFTLEdBQUc7UUFDbEIsVUFBVSxFQUFFLFNBQVMsQ0FBQyxJQUFJO1FBQzFCLFFBQVEsRUFBSSxTQUFTLENBQUMsSUFBSTtRQUMxQixLQUFLLEVBQU8sa0JBQWtCO0tBQzlCLENBQUM7SUFzQkY7UUFEQyxJQUFJLEVBQUU7NENBZ0JOO0lBQ0YsZUFBQztLQUFBO2VBNUNvQixRQUFRIn0=