gsy-component-library
Version:
reusable components from grid singularity
84 lines (64 loc) • 2.54 kB
JavaScript
'use strict';
Object.defineProperty(exports, "__esModule", {
value: true
});
var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
var _react = require('react');
var _react2 = _interopRequireDefault(_react);
var _propTypes = require('prop-types');
var _propTypes2 = _interopRequireDefault(_propTypes);
var _bind = require('classnames/bind');
var _bind2 = _interopRequireDefault(_bind);
var _Label = require('../Label/Label');
var _Label2 = _interopRequireDefault(_Label);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }
require('./TextInputField.' + (process.env.NODE_ENV === 'storybook' ? 'scss' : 'css'));
var TextInputField = function TextInputField(_ref) {
var className = _ref.className,
kind = _ref.kind,
htmlFor = _ref.htmlFor,
label = _ref.label,
placeholder = _ref.placeholder,
onChange = _ref.onChange,
other = _objectWithoutProperties(_ref, ['className', 'kind', 'htmlFor', 'label', 'placeholder', 'onChange']);
var textInputClasses = (0, _bind2.default)('textInput', 'textInput--' + kind, className);
var handleChange = function handleChange(evt) {
onChange(evt);
};
return _react2.default.createElement(
'div',
{ className: textInputClasses },
_react2.default.createElement(
_Label2.default,
{
htmlFor: htmlFor,
label: label
},
_react2.default.createElement('input', _extends({
type: 'text',
className: 'textInput__input',
id: htmlFor,
placeholder: placeholder,
onChange: handleChange
}, other))
)
);
};
TextInputField.propTypes = {
className: _propTypes2.default.string,
kind: _propTypes2.default.oneOf(['small', 'medium']),
htmlFor: _propTypes2.default.string,
label: _propTypes2.default.string,
placeholder: _propTypes2.default.string,
onChange: _propTypes2.default.func
};
TextInputField.defaultProps = {
className: '',
kind: 'small',
htmlFor: '',
label: '',
placeholder: '',
onChange: function onChange() {}
};
exports.default = TextInputField;