UNPKG

wix-style-react

Version:
110 lines (109 loc) 3.37 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); exports.__esModule = true; exports.default = void 0; var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends")); var _react = _interopRequireDefault(require("react")); var _propTypes = _interopRequireDefault(require("prop-types")); var _Input = _interopRequireDefault(require("../Input")); var _ColorPickerConverterSt = require("./ColorPickerConverter.st.css"); var _ColorPickerConverterViewer = _interopRequireDefault(require("./ColorPickerConverterViewer")); var _utils = require("./utils"); var _jsxFileName = "/home/builduser/work/a9c1ac8876d5057c/packages/wix-style-react/dist/cjs/ColorPicker/ColorPickerConverterHex.js"; class ColorPickerConverterHex extends _react.default.PureComponent { constructor() { super(...arguments); this.state = { hex: (0, _utils.getHexOrEmpty)(this.props.current), inFocus: false }; this.change = _ref => { var { target: { value } } = _ref; this.setState({ hex: value }, () => { var _color = (0, _utils.safeColor)(value, this.props.allowEmpty); if (_color) { this.props.onChange(_color); } }); }; this.handleOnFocus = () => { this.setState({ inFocus: true }); }; this.handleOnBlur = () => { this.setState({ inFocus: false, hex: (0, _utils.getHexOrEmpty)(this.props.current) }); }; this.handleKeyDown = event => { var { key } = event; if (key === 'Enter') { this.props.onEnter(); } }; } render() { var { dataHook } = this.props; return /*#__PURE__*/_react.default.createElement("div", { className: (0, _ColorPickerConverterSt.st)(_ColorPickerConverterSt.classes.root), "data-hook": dataHook, __self: this, __source: { fileName: _jsxFileName, lineNumber: 24, columnNumber: 7 } }, /*#__PURE__*/_react.default.createElement(_Input.default, { size: "small", value: this.state.hex, placeholder: this.props.placeholder, onChange: this.change, onFocus: this.handleOnFocus, onBlur: this.handleOnBlur, onKeyDown: this.handleKeyDown, className: _ColorPickerConverterSt.classes.colorInput, onInputClicked: e => e.stopPropagation(), __self: this, __source: { fileName: _jsxFileName, lineNumber: 25, columnNumber: 9 } }), /*#__PURE__*/_react.default.createElement(_ColorPickerConverterViewer.default, (0, _extends2.default)({}, this.props, { color: this.props.current, __self: this, __source: { fileName: _jsxFileName, lineNumber: 36, columnNumber: 9 } }))); } UNSAFE_componentWillReceiveProps(props) { var hex = (0, _utils.getHexOrEmpty)(props.current); if (!this.state.inFocus && this.state.hex !== hex) { this.setState({ hex }); } } } exports.default = ColorPickerConverterHex; ColorPickerConverterHex.propTypes = { current: _propTypes.default.object.isRequired, onChange: _propTypes.default.func.isRequired, placeholder: _propTypes.default.string }; //# sourceMappingURL=ColorPickerConverterHex.js.map