UNPKG

react-lightning-design-components

Version:

Salesforce Lightning Design System components built with React 16

153 lines (114 loc) 11.6 kB
'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); var _extends2 = require('babel-runtime/helpers/extends'); var _extends3 = _interopRequireDefault(_extends2); var _objectWithoutProperties2 = require('babel-runtime/helpers/objectWithoutProperties'); var _objectWithoutProperties3 = _interopRequireDefault(_objectWithoutProperties2); var _getPrototypeOf = require('babel-runtime/core-js/object/get-prototype-of'); var _getPrototypeOf2 = _interopRequireDefault(_getPrototypeOf); var _classCallCheck2 = require('babel-runtime/helpers/classCallCheck'); var _classCallCheck3 = _interopRequireDefault(_classCallCheck2); var _createClass2 = require('babel-runtime/helpers/createClass'); var _createClass3 = _interopRequireDefault(_createClass2); var _possibleConstructorReturn2 = require('babel-runtime/helpers/possibleConstructorReturn'); var _possibleConstructorReturn3 = _interopRequireDefault(_possibleConstructorReturn2); var _inherits2 = require('babel-runtime/helpers/inherits'); var _inherits3 = _interopRequireDefault(_inherits2); var _react = require('react'); var _react2 = _interopRequireDefault(_react); var _classnames = require('classnames'); var _classnames2 = _interopRequireDefault(_classnames); var _uuid = require('uuid'); var _uuid2 = _interopRequireDefault(_uuid); var _FormElement = require('./FormElement'); var _FormElement2 = _interopRequireDefault(_FormElement); var _reactTextareaAutosize = require('react-textarea-autosize'); var _reactTextareaAutosize2 = _interopRequireDefault(_reactTextareaAutosize); var _propTypes = require('prop-types'); var _propTypes2 = _interopRequireDefault(_propTypes); var _util = require('./util'); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } var Textarea = function (_Component) { (0, _inherits3.default)(Textarea, _Component); function Textarea(props) { (0, _classCallCheck3.default)(this, Textarea); var _this = (0, _possibleConstructorReturn3.default)(this, (Textarea.__proto__ || (0, _getPrototypeOf2.default)(Textarea)).call(this, props)); _this.state = { id: 'form-element-' + (0, _uuid2.default)() }; _this.onChange = _this.onChange.bind(_this); return _this; } (0, _createClass3.default)(Textarea, [{ key: 'onChange', value: function onChange(e) { var value = e.target.value; if (this.props.onChange) { this.props.onChange(e, value); } } }, { key: 'render', value: function render() { var id = this.props.id || this.state.id; var _props = this.props, label = _props.label, required = _props.required, error = _props.error, tooltip = _props.tooltip, props = (0, _objectWithoutProperties3.default)(_props, ['label', 'required', 'error', 'tooltip']); if (label || required || error) { var formElemProps = { id: id, label: label, required: required, error: error, tooltip: tooltip }; return _react2.default.createElement( _FormElement2.default, formElemProps, _react2.default.createElement(Textarea, (0, _extends3.default)({}, props, { id: id })) ); } var className = props.className, pprops = (0, _objectWithoutProperties3.default)(props, ['className']); delete pprops.initialValue; delete pprops.onUpdate; delete pprops.valid; delete pprops.invalid; delete pprops.dirty; delete pprops.pristine; delete pprops.active; delete pprops.touched; delete pprops.visited; delete pprops.defaultValue; delete pprops.autosize; var taClassNames = (0, _classnames2.default)(className, 'slds-input'); var ieDraggbleFix = _util.isIE || _util.isEdge ? { onMouseDown: function onMouseDown(e) { return e.target.focus(); } } : {}; return props.autosize ? _react2.default.createElement(_reactTextareaAutosize2.default, (0, _extends3.default)({ id: id, className: taClassNames, onChange: this.onChange }, pprops, ieDraggbleFix)) : _react2.default.createElement('textarea', (0, _extends3.default)({ id: id, className: taClassNames, onChange: this.onChange }, pprops, ieDraggbleFix)); } }]); return Textarea; }(_react.Component); exports.default = Textarea; Textarea.propTypes = { id: _propTypes2.default.string, className: _propTypes2.default.string, label: _propTypes2.default.string, required: _propTypes2.default.bool, error: _propTypes2.default.oneOfType([_propTypes2.default.bool, _propTypes2.default.string, _propTypes2.default.shape({ message: _propTypes2.default.string })]), value: _propTypes2.default.string, defaultValue: _propTypes2.default.string, placeholder: _propTypes2.default.string, onChange: _propTypes2.default.func, autosize: _propTypes2.default.bool, tooltip: _propTypes2.default.element }; //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zY3JpcHRzL1RleHRhcmVhLmpzIl0sIm5hbWVzIjpbIlRleHRhcmVhIiwicHJvcHMiLCJzdGF0ZSIsImlkIiwib25DaGFuZ2UiLCJiaW5kIiwiZSIsInZhbHVlIiwidGFyZ2V0IiwibGFiZWwiLCJyZXF1aXJlZCIsImVycm9yIiwidG9vbHRpcCIsImZvcm1FbGVtUHJvcHMiLCJjbGFzc05hbWUiLCJwcHJvcHMiLCJpbml0aWFsVmFsdWUiLCJvblVwZGF0ZSIsInZhbGlkIiwiaW52YWxpZCIsImRpcnR5IiwicHJpc3RpbmUiLCJhY3RpdmUiLCJ0b3VjaGVkIiwidmlzaXRlZCIsImRlZmF1bHRWYWx1ZSIsImF1dG9zaXplIiwidGFDbGFzc05hbWVzIiwiaWVEcmFnZ2JsZUZpeCIsIm9uTW91c2VEb3duIiwiZm9jdXMiLCJwcm9wVHlwZXMiLCJzdHJpbmciLCJib29sIiwib25lT2ZUeXBlIiwic2hhcGUiLCJtZXNzYWdlIiwicGxhY2Vob2xkZXIiLCJmdW5jIiwiZWxlbWVudCJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBOzs7O0FBQ0E7Ozs7QUFDQTs7OztBQUNBOzs7O0FBQ0E7Ozs7QUFDQTs7OztBQUNBOzs7O0lBRXFCQSxROzs7QUFDbkIsb0JBQVlDLEtBQVosRUFBbUI7QUFBQTs7QUFBQSwwSUFDWEEsS0FEVzs7QUFFakIsVUFBS0MsS0FBTCxHQUFhLEVBQUVDLHNCQUFvQixxQkFBdEIsRUFBYjtBQUNBLFVBQUtDLFFBQUwsR0FBZ0IsTUFBS0EsUUFBTCxDQUFjQyxJQUFkLE9BQWhCO0FBSGlCO0FBSWxCOzs7OzZCQUVRQyxDLEVBQUc7QUFDVixVQUFNQyxRQUFRRCxFQUFFRSxNQUFGLENBQVNELEtBQXZCO0FBQ0EsVUFBSSxLQUFLTixLQUFMLENBQVdHLFFBQWYsRUFBeUI7QUFDdkIsYUFBS0gsS0FBTCxDQUFXRyxRQUFYLENBQW9CRSxDQUFwQixFQUF1QkMsS0FBdkI7QUFDRDtBQUNGOzs7NkJBRVE7QUFDUCxVQUFNSixLQUFLLEtBQUtGLEtBQUwsQ0FBV0UsRUFBWCxJQUFpQixLQUFLRCxLQUFMLENBQVdDLEVBQXZDO0FBRE8sbUJBRStDLEtBQUtGLEtBRnBEO0FBQUEsVUFFQ1EsS0FGRCxVQUVDQSxLQUZEO0FBQUEsVUFFUUMsUUFGUixVQUVRQSxRQUZSO0FBQUEsVUFFa0JDLEtBRmxCLFVBRWtCQSxLQUZsQjtBQUFBLFVBRXlCQyxPQUZ6QixVQUV5QkEsT0FGekI7QUFBQSxVQUVxQ1gsS0FGckM7O0FBR1AsVUFBSVEsU0FBU0MsUUFBVCxJQUFxQkMsS0FBekIsRUFBZ0M7QUFDOUIsWUFBTUUsZ0JBQWdCLEVBQUVWLE1BQUYsRUFBTU0sWUFBTixFQUFhQyxrQkFBYixFQUF1QkMsWUFBdkIsRUFBOEJDLGdCQUE5QixFQUF0QjtBQUNBLGVBQ0U7QUFBQTtBQUFrQkMsdUJBQWxCO0FBQ0Usd0NBQUMsUUFBRCw2QkFBb0JaLEtBQXBCLElBQTJCRSxNQUEzQjtBQURGLFNBREY7QUFLRDtBQVZNLFVBV0NXLFNBWEQsR0FXMEJiLEtBWDFCLENBV0NhLFNBWEQ7QUFBQSxVQVdlQyxNQVhmLDBDQVcwQmQsS0FYMUI7O0FBWVAsYUFBT2MsT0FBT0MsWUFBZDtBQUNBLGFBQU9ELE9BQU9FLFFBQWQ7QUFDQSxhQUFPRixPQUFPRyxLQUFkO0FBQ0EsYUFBT0gsT0FBT0ksT0FBZDtBQUNBLGFBQU9KLE9BQU9LLEtBQWQ7QUFDQSxhQUFPTCxPQUFPTSxRQUFkO0FBQ0EsYUFBT04sT0FBT08sTUFBZDtBQUNBLGFBQU9QLE9BQU9RLE9BQWQ7QUFDQSxhQUFPUixPQUFPUyxPQUFkO0FBQ0EsYUFBT1QsT0FBT1UsWUFBZDtBQUNBLGFBQU9WLE9BQU9XLFFBQWQ7QUFDQSxVQUFNQyxlQUFlLDBCQUFXYixTQUFYLEVBQXNCLFlBQXRCLENBQXJCO0FBQ0EsVUFBTWMsZ0JBQWlCLDBCQUFELEdBQW1CLEVBQUVDLGFBQWE7QUFBQSxpQkFBS3ZCLEVBQUVFLE1BQUYsQ0FBU3NCLEtBQVQsRUFBTDtBQUFBLFNBQWYsRUFBbkIsR0FBNEQsRUFBbEY7QUFDQSxhQUFPN0IsTUFBTXlCLFFBQU4sR0FDSjtBQUNDLFlBQUt2QixFQUROO0FBRUMsbUJBQVl3QixZQUZiO0FBR0Msa0JBQVcsS0FBS3ZCO0FBSGpCLFNBSU1XLE1BSk4sRUFLTWEsYUFMTixFQURJLEdBUUo7QUFDQyxZQUFLekIsRUFETjtBQUVDLG1CQUFZd0IsWUFGYjtBQUdDLGtCQUFXLEtBQUt2QjtBQUhqQixTQUlNVyxNQUpOLEVBS01hLGFBTE4sRUFSSDtBQWVEOzs7OztrQkF0RGtCNUIsUTs7O0FBeURyQkEsU0FBUytCLFNBQVQsR0FBcUI7QUFDbkI1QixNQUFJLG9CQUFVNkIsTUFESztBQUVuQmxCLGFBQVcsb0JBQVVrQixNQUZGO0FBR25CdkIsU0FBTyxvQkFBVXVCLE1BSEU7QUFJbkJ0QixZQUFVLG9CQUFVdUIsSUFKRDtBQUtuQnRCLFNBQU8sb0JBQVV1QixTQUFWLENBQW9CLENBQ3pCLG9CQUFVRCxJQURlLEVBRXpCLG9CQUFVRCxNQUZlLEVBR3pCLG9CQUFVRyxLQUFWLENBQWdCO0FBQ2RDLGFBQVMsb0JBQVVKO0FBREwsR0FBaEIsQ0FIeUIsQ0FBcEIsQ0FMWTtBQVluQnpCLFNBQU8sb0JBQVV5QixNQVpFO0FBYW5CUCxnQkFBYyxvQkFBVU8sTUFiTDtBQWNuQkssZUFBYSxvQkFBVUwsTUFkSjtBQWVuQjVCLFlBQVUsb0JBQVVrQyxJQWZEO0FBZ0JuQlosWUFBVSxvQkFBVU8sSUFoQkQ7QUFpQm5CckIsV0FBUyxvQkFBVTJCO0FBakJBLENBQXJCIiwiZmlsZSI6IlRleHRhcmVhLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0LCB7IENvbXBvbmVudCB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCBjbGFzc25hbWVzIGZyb20gJ2NsYXNzbmFtZXMnO1xuaW1wb3J0IHV1aWQgZnJvbSAndXVpZCc7XG5pbXBvcnQgRm9ybUVsZW1lbnQgZnJvbSAnLi9Gb3JtRWxlbWVudCc7XG5pbXBvcnQgVGV4dGFyZWFBdXRvc2l6ZSBmcm9tICdyZWFjdC10ZXh0YXJlYS1hdXRvc2l6ZSc7XG5pbXBvcnQgUHJvcFR5cGVzIGZyb20gJ3Byb3AtdHlwZXMnO1xuaW1wb3J0IHsgaXNJRSwgaXNFZGdlIH0gZnJvbSAnLi91dGlsJztcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgVGV4dGFyZWEgZXh0ZW5kcyBDb21wb25lbnQge1xuICBjb25zdHJ1Y3Rvcihwcm9wcykge1xuICAgIHN1cGVyKHByb3BzKTtcbiAgICB0aGlzLnN0YXRlID0geyBpZDogYGZvcm0tZWxlbWVudC0ke3V1aWQoKX1gIH07XG4gICAgdGhpcy5vbkNoYW5nZSA9IHRoaXMub25DaGFuZ2UuYmluZCh0aGlzKTtcbiAgfVxuXG4gIG9uQ2hhbmdlKGUpIHtcbiAgICBjb25zdCB2YWx1ZSA9IGUudGFyZ2V0LnZhbHVlO1xuICAgIGlmICh0aGlzLnByb3BzLm9uQ2hhbmdlKSB7XG4gICAgICB0aGlzLnByb3BzLm9uQ2hhbmdlKGUsIHZhbHVlKTtcbiAgICB9XG4gIH1cblxuICByZW5kZXIoKSB7XG4gICAgY29uc3QgaWQgPSB0aGlzLnByb3BzLmlkIHx8IHRoaXMuc3RhdGUuaWQ7XG4gICAgY29uc3QgeyBsYWJlbCwgcmVxdWlyZWQsIGVycm9yLCB0b29sdGlwLCAuLi5wcm9wcyB9ID0gdGhpcy5wcm9wcztcbiAgICBpZiAobGFiZWwgfHwgcmVxdWlyZWQgfHwgZXJyb3IpIHtcbiAgICAgIGNvbnN0IGZvcm1FbGVtUHJvcHMgPSB7IGlkLCBsYWJlbCwgcmVxdWlyZWQsIGVycm9yLCB0b29sdGlwIH07XG4gICAgICByZXR1cm4gKFxuICAgICAgICA8Rm9ybUVsZW1lbnQgeyAuLi5mb3JtRWxlbVByb3BzIH0+XG4gICAgICAgICAgPFRleHRhcmVhIHsgLi4ueyAuLi5wcm9wcywgaWQgfSB9IC8+XG4gICAgICAgIDwvRm9ybUVsZW1lbnQ+XG4gICAgICApO1xuICAgIH1cbiAgICBjb25zdCB7IGNsYXNzTmFtZSwgLi4ucHByb3BzIH0gPSBwcm9wcztcbiAgICBkZWxldGUgcHByb3BzLmluaXRpYWxWYWx1ZTtcbiAgICBkZWxldGUgcHByb3BzLm9uVXBkYXRlO1xuICAgIGRlbGV0ZSBwcHJvcHMudmFsaWQ7XG4gICAgZGVsZXRlIHBwcm9wcy5pbnZhbGlkO1xuICAgIGRlbGV0ZSBwcHJvcHMuZGlydHk7XG4gICAgZGVsZXRlIHBwcm9wcy5wcmlzdGluZTtcbiAgICBkZWxldGUgcHByb3BzLmFjdGl2ZTtcbiAgICBkZWxldGUgcHByb3BzLnRvdWNoZWQ7XG4gICAgZGVsZXRlIHBwcm9wcy52aXNpdGVkO1xuICAgIGRlbGV0ZSBwcHJvcHMuZGVmYXVsdFZhbHVlO1xuICAgIGRlbGV0ZSBwcHJvcHMuYXV0b3NpemU7XG4gICAgY29uc3QgdGFDbGFzc05hbWVzID0gY2xhc3NuYW1lcyhjbGFzc05hbWUsICdzbGRzLWlucHV0Jyk7XG4gICAgY29uc3QgaWVEcmFnZ2JsZUZpeCA9IChpc0lFIHx8IGlzRWRnZSkgPyB7IG9uTW91c2VEb3duOiBlID0+IGUudGFyZ2V0LmZvY3VzKCkgfSA6IHt9O1xuICAgIHJldHVybiBwcm9wcy5hdXRvc2l6ZSA/XG4gICAgICAoPFRleHRhcmVhQXV0b3NpemVcbiAgICAgICAgaWQ9eyBpZCB9XG4gICAgICAgIGNsYXNzTmFtZT17IHRhQ2xhc3NOYW1lcyB9XG4gICAgICAgIG9uQ2hhbmdlPXsgdGhpcy5vbkNoYW5nZSB9XG4gICAgICAgIHsgLi4ucHByb3BzIH1cbiAgICAgICAgeyAuLi5pZURyYWdnYmxlRml4IH1cbiAgICAgIC8+KSA6XG4gICAgICAoPHRleHRhcmVhXG4gICAgICAgIGlkPXsgaWQgfVxuICAgICAgICBjbGFzc05hbWU9eyB0YUNsYXNzTmFtZXMgfVxuICAgICAgICBvbkNoYW5nZT17IHRoaXMub25DaGFuZ2UgfVxuICAgICAgICB7IC4uLnBwcm9wcyB9XG4gICAgICAgIHsgLi4uaWVEcmFnZ2JsZUZpeCB9XG4gICAgICAvPik7XG4gIH1cbn1cblxuVGV4dGFyZWEucHJvcFR5cGVzID0ge1xuICBpZDogUHJvcFR5cGVzLnN0cmluZyxcbiAgY2xhc3NOYW1lOiBQcm9wVHlwZXMuc3RyaW5nLFxuICBsYWJlbDogUHJvcFR5cGVzLnN0cmluZyxcbiAgcmVxdWlyZWQ6IFByb3BUeXBlcy5ib29sLFxuICBlcnJvcjogUHJvcFR5cGVzLm9uZU9mVHlwZShbXG4gICAgUHJvcFR5cGVzLmJvb2wsXG4gICAgUHJvcFR5cGVzLnN0cmluZyxcbiAgICBQcm9wVHlwZXMuc2hhcGUoe1xuICAgICAgbWVzc2FnZTogUHJvcFR5cGVzLnN0cmluZyxcbiAgICB9KSxcbiAgXSksXG4gIHZhbHVlOiBQcm9wVHlwZXMuc3RyaW5nLFxuICBkZWZhdWx0VmFsdWU6IFByb3BUeXBlcy5zdHJpbmcsXG4gIHBsYWNlaG9sZGVyOiBQcm9wVHlwZXMuc3RyaW5nLFxuICBvbkNoYW5nZTogUHJvcFR5cGVzLmZ1bmMsXG4gIGF1dG9zaXplOiBQcm9wVHlwZXMuYm9vbCxcbiAgdG9vbHRpcDogUHJvcFR5cGVzLmVsZW1lbnQsXG59O1xuIl19