UNPKG

react-lightning-design-components

Version:

Salesforce Lightning Design System components built with React 16

137 lines (100 loc) 9.28 kB
'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); exports.Option = undefined; 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 _propTypes = require('prop-types'); var _propTypes2 = _interopRequireDefault(_propTypes); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } var Select = function (_Component) { (0, _inherits3.default)(Select, _Component); function Select(props) { (0, _classCallCheck3.default)(this, Select); var _this = (0, _possibleConstructorReturn3.default)(this, (Select.__proto__ || (0, _getPrototypeOf2.default)(Select)).call(this, props)); _this.state = { id: 'form-element-' + (0, _uuid2.default)() }; return _this; } (0, _createClass3.default)(Select, [{ 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(Select, (0, _extends3.default)({}, props, { id: id })) ); } var className = props.className, children = props.children, pprops = (0, _objectWithoutProperties3.default)(props, ['className', 'children']); var selectClassNames = (0, _classnames2.default)(className, 'slds-select'); return _react2.default.createElement( 'select', (0, _extends3.default)({ id: id, className: selectClassNames, onChange: this.onChange.bind(this) }, pprops), children ); } }]); return Select; }(_react.Component); exports.default = Select; Select.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.any, defaultValue: _propTypes2.default.any, placeholder: _propTypes2.default.string, onChange: _propTypes2.default.func, tooltip: _propTypes2.default.element }; var Option = exports.Option = function Option(props) { return _react2.default.createElement('option', props); }; //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zY3JpcHRzL1NlbGVjdC5qcyJdLCJuYW1lcyI6WyJTZWxlY3QiLCJwcm9wcyIsInN0YXRlIiwiaWQiLCJlIiwidmFsdWUiLCJ0YXJnZXQiLCJvbkNoYW5nZSIsImxhYmVsIiwicmVxdWlyZWQiLCJlcnJvciIsInRvb2x0aXAiLCJmb3JtRWxlbVByb3BzIiwiY2xhc3NOYW1lIiwiY2hpbGRyZW4iLCJwcHJvcHMiLCJzZWxlY3RDbGFzc05hbWVzIiwiYmluZCIsInByb3BUeXBlcyIsInN0cmluZyIsImJvb2wiLCJvbmVPZlR5cGUiLCJzaGFwZSIsIm1lc3NhZ2UiLCJhbnkiLCJkZWZhdWx0VmFsdWUiLCJwbGFjZWhvbGRlciIsImZ1bmMiLCJlbGVtZW50IiwiT3B0aW9uIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBOzs7O0FBQ0E7Ozs7QUFDQTs7OztBQUNBOzs7O0FBQ0E7Ozs7OztJQUdxQkEsTTs7O0FBQ25CLGtCQUFZQyxLQUFaLEVBQW1CO0FBQUE7O0FBQUEsc0lBQ1hBLEtBRFc7O0FBRWpCLFVBQUtDLEtBQUwsR0FBYSxFQUFFQyxzQkFBb0IscUJBQXRCLEVBQWI7QUFGaUI7QUFHbEI7Ozs7NkJBRVFDLEMsRUFBRztBQUNWLFVBQU1DLFFBQVFELEVBQUVFLE1BQUYsQ0FBU0QsS0FBdkI7QUFDQSxVQUFJLEtBQUtKLEtBQUwsQ0FBV00sUUFBZixFQUF5QjtBQUN2QixhQUFLTixLQUFMLENBQVdNLFFBQVgsQ0FBb0JILENBQXBCLEVBQXVCQyxLQUF2QjtBQUNEO0FBQ0Y7Ozs2QkFFUTtBQUNQLFVBQU1GLEtBQUssS0FBS0YsS0FBTCxDQUFXRSxFQUFYLElBQWlCLEtBQUtELEtBQUwsQ0FBV0MsRUFBdkM7QUFETyxtQkFFK0MsS0FBS0YsS0FGcEQ7QUFBQSxVQUVDTyxLQUZELFVBRUNBLEtBRkQ7QUFBQSxVQUVRQyxRQUZSLFVBRVFBLFFBRlI7QUFBQSxVQUVrQkMsS0FGbEIsVUFFa0JBLEtBRmxCO0FBQUEsVUFFeUJDLE9BRnpCLFVBRXlCQSxPQUZ6QjtBQUFBLFVBRXFDVixLQUZyQzs7QUFHUCxVQUFJTyxTQUFTQyxRQUFULElBQXFCQyxLQUF6QixFQUFnQztBQUM5QixZQUFNRSxnQkFBZ0IsRUFBRVQsTUFBRixFQUFNSyxZQUFOLEVBQWFDLGtCQUFiLEVBQXVCQyxZQUF2QixFQUE4QkMsZ0JBQTlCLEVBQXRCO0FBQ0EsZUFDRTtBQUFBO0FBQWtCQyx1QkFBbEI7QUFDRSx3Q0FBQyxNQUFELDZCQUFrQlgsS0FBbEIsSUFBeUJFLE1BQXpCO0FBREYsU0FERjtBQUtEO0FBVk0sVUFXQ1UsU0FYRCxHQVdvQ1osS0FYcEMsQ0FXQ1ksU0FYRDtBQUFBLFVBV1lDLFFBWFosR0FXb0NiLEtBWHBDLENBV1lhLFFBWFo7QUFBQSxVQVd5QkMsTUFYekIsMENBV29DZCxLQVhwQzs7QUFZUCxVQUFNZSxtQkFBbUIsMEJBQVdILFNBQVgsRUFBc0IsYUFBdEIsQ0FBekI7QUFDQSxhQUNFO0FBQUE7QUFBQTtBQUNFLGNBQUtWLEVBRFA7QUFFRSxxQkFBWWEsZ0JBRmQ7QUFHRSxvQkFBVyxLQUFLVCxRQUFMLENBQWNVLElBQWQsQ0FBbUIsSUFBbkI7QUFIYixXQUlPRixNQUpQO0FBTUlEO0FBTkosT0FERjtBQVVEOzs7OztrQkFwQ2tCZCxNOzs7QUF3Q3JCQSxPQUFPa0IsU0FBUCxHQUFtQjtBQUNqQmYsTUFBSSxvQkFBVWdCLE1BREc7QUFFakJOLGFBQVcsb0JBQVVNLE1BRko7QUFHakJYLFNBQU8sb0JBQVVXLE1BSEE7QUFJakJWLFlBQVUsb0JBQVVXLElBSkg7QUFLakJWLFNBQU8sb0JBQVVXLFNBQVYsQ0FBb0IsQ0FDekIsb0JBQVVELElBRGUsRUFFekIsb0JBQVVELE1BRmUsRUFHekIsb0JBQVVHLEtBQVYsQ0FBZ0I7QUFDZEMsYUFBUyxvQkFBVUo7QUFETCxHQUFoQixDQUh5QixDQUFwQixDQUxVO0FBWWpCZCxTQUFPLG9CQUFVbUIsR0FaQTtBQWFqQkMsZ0JBQWMsb0JBQVVELEdBYlA7QUFjakJFLGVBQWEsb0JBQVVQLE1BZE47QUFlakJaLFlBQVUsb0JBQVVvQixJQWZIO0FBZ0JqQmhCLFdBQVMsb0JBQVVpQjtBQWhCRixDQUFuQjs7QUFtQk8sSUFBTUMsMEJBQVMsU0FBVEEsTUFBUyxDQUFDNUIsS0FBRDtBQUFBLFNBQ3BCLHdDQUFhQSxLQUFiLENBRG9CO0FBQUEsQ0FBZiIsImZpbGUiOiJTZWxlY3QuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHsgQ29tcG9uZW50IH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IGNsYXNzbmFtZXMgZnJvbSAnY2xhc3NuYW1lcyc7XG5pbXBvcnQgdXVpZCBmcm9tICd1dWlkJztcbmltcG9ydCBGb3JtRWxlbWVudCBmcm9tICcuL0Zvcm1FbGVtZW50JztcbmltcG9ydCBQcm9wVHlwZXMgZnJvbSAncHJvcC10eXBlcyc7XG5cblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgU2VsZWN0IGV4dGVuZHMgQ29tcG9uZW50IHtcbiAgY29uc3RydWN0b3IocHJvcHMpIHtcbiAgICBzdXBlcihwcm9wcyk7XG4gICAgdGhpcy5zdGF0ZSA9IHsgaWQ6IGBmb3JtLWVsZW1lbnQtJHt1dWlkKCl9YCB9O1xuICB9XG5cbiAgb25DaGFuZ2UoZSkge1xuICAgIGNvbnN0IHZhbHVlID0gZS50YXJnZXQudmFsdWU7XG4gICAgaWYgKHRoaXMucHJvcHMub25DaGFuZ2UpIHtcbiAgICAgIHRoaXMucHJvcHMub25DaGFuZ2UoZSwgdmFsdWUpO1xuICAgIH1cbiAgfVxuXG4gIHJlbmRlcigpIHtcbiAgICBjb25zdCBpZCA9IHRoaXMucHJvcHMuaWQgfHwgdGhpcy5zdGF0ZS5pZDtcbiAgICBjb25zdCB7IGxhYmVsLCByZXF1aXJlZCwgZXJyb3IsIHRvb2x0aXAsIC4uLnByb3BzIH0gPSB0aGlzLnByb3BzO1xuICAgIGlmIChsYWJlbCB8fCByZXF1aXJlZCB8fCBlcnJvcikge1xuICAgICAgY29uc3QgZm9ybUVsZW1Qcm9wcyA9IHsgaWQsIGxhYmVsLCByZXF1aXJlZCwgZXJyb3IsIHRvb2x0aXAgfTtcbiAgICAgIHJldHVybiAoXG4gICAgICAgIDxGb3JtRWxlbWVudCB7IC4uLmZvcm1FbGVtUHJvcHMgfT5cbiAgICAgICAgICA8U2VsZWN0IHsgLi4ueyAuLi5wcm9wcywgaWQgfSB9IC8+XG4gICAgICAgIDwvRm9ybUVsZW1lbnQ+XG4gICAgICApO1xuICAgIH1cbiAgICBjb25zdCB7IGNsYXNzTmFtZSwgY2hpbGRyZW4sIC4uLnBwcm9wcyB9ID0gcHJvcHM7XG4gICAgY29uc3Qgc2VsZWN0Q2xhc3NOYW1lcyA9IGNsYXNzbmFtZXMoY2xhc3NOYW1lLCAnc2xkcy1zZWxlY3QnKTtcbiAgICByZXR1cm4gKFxuICAgICAgPHNlbGVjdFxuICAgICAgICBpZD17IGlkIH1cbiAgICAgICAgY2xhc3NOYW1lPXsgc2VsZWN0Q2xhc3NOYW1lcyB9XG4gICAgICAgIG9uQ2hhbmdlPXsgdGhpcy5vbkNoYW5nZS5iaW5kKHRoaXMpIH1cbiAgICAgICAgeyAuLi5wcHJvcHMgfVxuICAgICAgPlxuICAgICAgICB7IGNoaWxkcmVuIH1cbiAgICAgIDwvc2VsZWN0PlxuICAgICk7XG4gIH1cblxufVxuXG5TZWxlY3QucHJvcFR5cGVzID0ge1xuICBpZDogUHJvcFR5cGVzLnN0cmluZyxcbiAgY2xhc3NOYW1lOiBQcm9wVHlwZXMuc3RyaW5nLFxuICBsYWJlbDogUHJvcFR5cGVzLnN0cmluZyxcbiAgcmVxdWlyZWQ6IFByb3BUeXBlcy5ib29sLFxuICBlcnJvcjogUHJvcFR5cGVzLm9uZU9mVHlwZShbXG4gICAgUHJvcFR5cGVzLmJvb2wsXG4gICAgUHJvcFR5cGVzLnN0cmluZyxcbiAgICBQcm9wVHlwZXMuc2hhcGUoe1xuICAgICAgbWVzc2FnZTogUHJvcFR5cGVzLnN0cmluZyxcbiAgICB9KSxcbiAgXSksXG4gIHZhbHVlOiBQcm9wVHlwZXMuYW55LFxuICBkZWZhdWx0VmFsdWU6IFByb3BUeXBlcy5hbnksXG4gIHBsYWNlaG9sZGVyOiBQcm9wVHlwZXMuc3RyaW5nLFxuICBvbkNoYW5nZTogUHJvcFR5cGVzLmZ1bmMsXG4gIHRvb2x0aXA6IFByb3BUeXBlcy5lbGVtZW50LFxufTtcblxuZXhwb3J0IGNvbnN0IE9wdGlvbiA9IChwcm9wcykgPT4gKFxuICA8b3B0aW9uIHsgLi4ucHJvcHMgfSAvPlxuKTtcbiJdfQ==