"use strict";var _interopRequireWildcard=require("@babel/runtime/helpers/interopRequireWildcard"),_interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:!0}),exports["default"]=void 0;var _classCallCheck2=_interopRequireDefault(require("@babel/runtime/helpers/classCallCheck")),_createClass2=_interopRequireDefault(require("@babel/runtime/helpers/createClass")),_assertThisInitialized2=_interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized")),_inherits2=_interopRequireDefault(require("@babel/runtime/helpers/inherits")),_possibleConstructorReturn2=_interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn")),_getPrototypeOf2=_interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf")),_defineProperty2=_interopRequireDefault(require("@babel/runtime/helpers/defineProperty")),React=_interopRequireWildcard(require("react")),_classnames=_interopRequireDefault(require("classnames")),_withStyles=_interopRequireDefault(require("../../hoc/withStyles")),_ErrorBoundary=_interopRequireDefault(require("../../hoc/ErrorBoundary")),_styles=_interopRequireDefault(require("./styles"));function _createSuper(Derived){var hasNativeReflectConstruct=_isNativeReflectConstruct();return function(){var result,Super=(0,_getPrototypeOf2["default"])(Derived);if(hasNativeReflectConstruct){var NewTarget=(0,_getPrototypeOf2["default"])(this).constructor;result=Reflect.construct(Super,arguments,NewTarget)}else result=Super.apply(this,arguments);return(0,_possibleConstructorReturn2["default"])(this,result)}}function _isNativeReflectConstruct(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],function(){})),!0}catch(e){return!1}}var RadioButton=/*#__PURE__*/function(_React$Component){function RadioButton(props){var _this;return(0,_classCallCheck2["default"])(this,RadioButton),_this=_super.call(this,props),(0,_defineProperty2["default"])((0,_assertThisInitialized2["default"])(_this),"changeValue",function(value){_this.setState({value:value}),_this.props.onChange&&_this.props.onChange(value)}),(0,_defineProperty2["default"])((0,_assertThisInitialized2["default"])(_this),"_select",function(){_this.setState({value:!0}),_this.props.onChange&&_this.props.onChange(_this.state.value)}),(0,_defineProperty2["default"])((0,_assertThisInitialized2["default"])(_this),"_renderRadio",function(){var _this$props=_this.props,classes=_this$props.classes,label=_this$props.label,disabled=_this$props.disabled;return/*#__PURE__*/React.createElement("div",{className:(0,_classnames["default"])(classes.radioWrapper,{disabled:disabled}),onClick:_this._select},/*#__PURE__*/React.createElement("div",{className:(0,_classnames["default"])(classes.radioOuterCircle,{selected:_this.state.value})},/*#__PURE__*/React.createElement("div",{className:classes.radioInnerCircle})),!!label&&/*#__PURE__*/React.createElement("div",{className:classes.radioLabel},label))}),_this.state={value:props.value},_this}(0,_inherits2["default"])(RadioButton,_React$Component);var _super=_createSuper(RadioButton);return(0,_createClass2["default"])(RadioButton,[{key:"componentDidUpdate",value:function componentDidUpdate(prevProps){var props=this.props;props.value!==prevProps.value&&this.setState({value:props.value})}},{key:"render",value:function render(){var _this$props2=this.props,classes=_this$props2.classes,id=_this$props2.id,componentClass=(0,_classnames["default"])(classes.radioComponent);return/*#__PURE__*/React.createElement(_ErrorBoundary["default"],null,/*#__PURE__*/React.createElement("div",{className:componentClass,id:id},this._renderRadio()))}}]),RadioButton}(React.Component);(0,_defineProperty2["default"])(RadioButton,"defaultProps",{label:"",id:"",onChange:function onChange(){},disabled:!1,value:!1});var _default=(0,_withStyles["default"])(_styles["default"])(RadioButton);exports["default"]=_default;