@flexis/ui
Version:
Styleless React Components
117 lines (104 loc) • 7.05 kB
JavaScript
import _extends from "@babel/runtime-corejs3/helpers/extends";
import _objectWithoutProperties from "@babel/runtime-corejs3/helpers/objectWithoutProperties";
import _classCallCheck from "@babel/runtime-corejs3/helpers/classCallCheck";
import _createClass from "@babel/runtime-corejs3/helpers/createClass";
import _possibleConstructorReturn from "@babel/runtime-corejs3/helpers/possibleConstructorReturn";
import _getPrototypeOf from "@babel/runtime-corejs3/helpers/getPrototypeOf";
import _inherits from "@babel/runtime-corejs3/helpers/inherits";
import { __decorate } from "tslib";
import React from 'react';
var _createElement = React.createElement;
var PureComponent = React.PureComponent;
import PropTypes from 'prop-types';
import { Bind, omit } from '../../helpers';
import { SelectValuePropType } from '../common/types';
import { style, classes } from './CustomFlatSelect.st.css';
var CustomFlatSelectOption =
/** @class */
function () {
var CustomFlatSelectOption = /*#__PURE__*/function (_PureComponent) {
_inherits(CustomFlatSelectOption, _PureComponent);
function CustomFlatSelectOption() {
_classCallCheck(this, CustomFlatSelectOption);
return _possibleConstructorReturn(this, _getPrototypeOf(CustomFlatSelectOption).apply(this, arguments));
}
_createClass(CustomFlatSelectOption, [{
key: "render",
value: function render() {
var _this$props = this.props,
className = _this$props.className,
optionId = _this$props.optionId,
id = _this$props.id,
type = _this$props.type,
name = _this$props.name,
value = _this$props.value,
checked = _this$props.checked,
disabled = _this$props.disabled,
children = _this$props.children,
props = _objectWithoutProperties(_this$props, ["className", "optionId", "id", "type", "name", "value", "checked", "disabled", "children"]);
return _createElement("li", _extends({
id: optionId,
role: "option",
"aria-selected": checked,
"aria-disabled": disabled
}, omit(props, ['onChange']), {
className: style(classes.option, className)
}), _createElement("label", {
className: classes.label
}, _createElement("input", {
className: classes.input,
id: id,
type: type,
name: name,
checked: checked,
onChange: this.onChange,
value: value,
disabled: disabled
}), _createElement("span", {
className: classes.face,
onClick: this.onFaceClick
}, children)));
}
}, {
key: "onChange",
value: function onChange(event) {
var _this$props2 = this.props,
onChange = _this$props2.onChange,
value = _this$props2.value;
if (typeof onChange === 'function') {
onChange(value, event);
}
}
}, {
key: "onFaceClick",
value: function onFaceClick(event) {
var target = event.target,
currentTarget = event.currentTarget;
if (target === currentTarget) {
return;
}
var input = currentTarget.previousElementSibling;
input.click();
}
}]);
return CustomFlatSelectOption;
}(PureComponent);
process.env.NODE_ENV !== "production" ? CustomFlatSelectOption.propTypes = {
id: PropTypes.string,
type: PropTypes.oneOf(['radio', 'checkbox']),
name: PropTypes.string,
onChange: PropTypes.func,
value: SelectValuePropType,
checked: PropTypes.bool,
disabled: PropTypes.bool,
children: PropTypes.node.isRequired
} : void 0;
CustomFlatSelectOption.defaultProps = {
checked: false,
disabled: false
};
__decorate([Bind()], CustomFlatSelectOption.prototype, "onChange", null);
return CustomFlatSelectOption;
}();
export { CustomFlatSelectOption };
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21wb25lbnRzL0N1c3RvbUZsYXRTZWxlY3QvQ3VzdG9tRmxhdFNlbGVjdE9wdGlvbi50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFBQSxPQUFPLEtBQVAsTUFNTyxPQU5QOzs7QUFPQSxPQUFPLFNBQVAsTUFBc0IsWUFBdEI7QUFDQSxTQUVDLElBRkQsRUFHQyxJQUhELFFBSU8sZUFKUDtBQUtBLFNBRUMsbUJBRkQsUUFHTyxpQkFIUDtBQUlBLFNBQ0MsS0FERCxFQUVDLE9BRkQsUUFHTywyQkFIUDs7QUFzQkEsSUFBQSxzQkFBQTtBQUFBO0FBQUEsWUFBQTtBQUFBLE1BQWEsc0JBQWI7QUFBQTs7QUFBQTtBQUFBOztBQUFBO0FBQUE7O0FBQUE7QUFBQTtBQUFBLCtCQXFCTztBQUFBLDBCQWFELEtBQUssS0FiSjtBQUFBLFlBR0osU0FISSxlQUdKLFNBSEk7QUFBQSxZQUlKLFFBSkksZUFJSixRQUpJO0FBQUEsWUFLSixFQUxJLGVBS0osRUFMSTtBQUFBLFlBTUosSUFOSSxlQU1KLElBTkk7QUFBQSxZQU9KLElBUEksZUFPSixJQVBJO0FBQUEsWUFRSixLQVJJLGVBUUosS0FSSTtBQUFBLFlBU0osT0FUSSxlQVNKLE9BVEk7QUFBQSxZQVVKLFFBVkksZUFVSixRQVZJO0FBQUEsWUFXSixRQVhJLGVBV0osUUFYSTtBQUFBLFlBWUQsS0FaQzs7QUFlTCxlQUNDO0FBQ0MsVUFBQSxFQUFFLEVBQUUsUUFETDtBQUVDLFVBQUEsSUFBSSxFQUFDLFFBRk47QUFHQywyQkFBZSxPQUhoQjtBQUlDLDJCQUFlO0FBSmhCLFdBS0ssSUFBSSxDQUFDLEtBQUQsRUFBUSxDQUFDLFVBQUQsQ0FBUixDQUxUO0FBTUMsVUFBQSxTQUFTLEVBQUUsS0FBSyxDQUFDLE9BQU8sQ0FBQyxNQUFULEVBQWlCLFNBQWpCO0FBTmpCLFlBUUM7QUFDQyxVQUFBLFNBQVMsRUFBRSxPQUFPLENBQUM7QUFEcEIsV0FHQztBQUNDLFVBQUEsU0FBUyxFQUFFLE9BQU8sQ0FBQyxLQURwQjtBQUVDLFVBQUEsRUFBRSxFQUFFLEVBRkw7QUFHQyxVQUFBLElBQUksRUFBRSxJQUhQO0FBSUMsVUFBQSxJQUFJLEVBQUUsSUFKUDtBQUtDLFVBQUEsT0FBTyxFQUFFLE9BTFY7QUFNQyxVQUFBLFFBQVEsRUFBRSxLQUFLLFFBTmhCO0FBT0MsVUFBQSxLQUFLLEVBQUUsS0FQUjtBQVFDLFVBQUEsUUFBUSxFQUFFO0FBUlgsVUFIRCxFQWFDO0FBQ0MsVUFBQSxTQUFTLEVBQUUsT0FBTyxDQUFDLElBRHBCO0FBRUMsVUFBQSxPQUFPLEVBQUUsS0FBSztBQUZmLFdBSUUsUUFKRixDQWJELENBUkQsQ0FERDtBQStCQTtBQW5FRjtBQUFBO0FBQUEsK0JBc0VrQixLQXRFbEIsRUFzRW9DO0FBQUEsMkJBSzlCLEtBQUssS0FMeUI7QUFBQSxZQUdqQyxRQUhpQyxnQkFHakMsUUFIaUM7QUFBQSxZQUlqQyxLQUppQyxnQkFJakMsS0FKaUM7O0FBT2xDLFlBQUksT0FBTyxRQUFQLEtBQW9CLFVBQXhCLEVBQW9DO0FBQ25DLFVBQUEsUUFBUSxDQUNQLEtBRE8sRUFFUCxLQUZPLENBQVI7QUFJQTtBQUNEO0FBbkZGO0FBQUE7QUFBQSxrQ0FxRnFCLEtBckZyQixFQXFGc0M7QUFBQSxZQUduQyxNQUhtQyxHQUtoQyxLQUxnQyxDQUduQyxNQUhtQztBQUFBLFlBSW5DLGFBSm1DLEdBS2hDLEtBTGdDLENBSW5DLGFBSm1DOztBQU9wQyxZQUFJLE1BQU0sS0FBSyxhQUFmLEVBQThCO0FBQzdCO0FBQ0E7O0FBRUQsWUFBTSxLQUFLLEdBQUcsYUFBYSxDQUFDLHNCQUE1QjtBQUVBLFFBQUEsS0FBSyxDQUFDLEtBQU47QUFDQTtBQW5HRjs7QUFBQTtBQUFBLElBQTRDLGFBQTVDOztBQUVRLDBDQUFBLHNCQUFBLENBQUEsU0FBQSxHQUFZO0FBQ2xCLElBQUEsRUFBRSxFQUFRLFNBQVMsQ0FBQyxNQURGO0FBRWxCLElBQUEsSUFBSSxFQUFNLFNBQVMsQ0FBQyxLQUFWLENBQWdCLENBQ3pCLE9BRHlCLEVBRXpCLFVBRnlCLENBQWhCLENBRlE7QUFNbEIsSUFBQSxJQUFJLEVBQU0sU0FBUyxDQUFDLE1BTkY7QUFPbEIsSUFBQSxRQUFRLEVBQUUsU0FBUyxDQUFDLElBUEY7QUFRbEIsSUFBQSxLQUFLLEVBQUssbUJBUlE7QUFTbEIsSUFBQSxPQUFPLEVBQUcsU0FBUyxDQUFDLElBVEY7QUFVbEIsSUFBQSxRQUFRLEVBQUUsU0FBUyxDQUFDLElBVkY7QUFXbEIsSUFBQSxRQUFRLEVBQUUsU0FBUyxDQUFDLElBQVYsQ0FBZTtBQVhQLEdBQVo7QUFjQSxFQUFBLHNCQUFBLENBQUEsWUFBQSxHQUFlO0FBQ3JCLElBQUEsT0FBTyxFQUFHLEtBRFc7QUFFckIsSUFBQSxRQUFRLEVBQUU7QUFGVyxHQUFmOztBQXNEUCxFQUFBLFVBQUEsQ0FBQSxDQURDLElBQUksRUFDTCxDQUFBLEUsZ0NBQUEsRSxVQUFBLEVBYUMsSUFiRCxDQUFBOztBQThCRCxTQUFBLHNCQUFBO0FBQUMsQ0FwR0QsRUFBQTs7U0FBYSxzQiIsInNvdXJjZVJvb3QiOiIifQ==