react-query-builder-semantic
Version:
81 lines (69 loc) • 2.16 kB
JavaScript
'use strict';
Object.defineProperty(exports, "__esModule", {
value: true
});
var _react = require('react');
var _react2 = _interopRequireDefault(_react);
var _propTypes = require('prop-types');
var _propTypes2 = _interopRequireDefault(_propTypes);
var _semanticUiReact = require('semantic-ui-react');
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
/**
* Default Semantic element to select a operator for a Rule in the QueryBuilderSemantic
*/
var OperatorSelectorSemantic = function OperatorSelectorSemantic(props) {
var value = props.value,
options = props.options,
className = props.className,
handleOnChange = props.handleOnChange,
title = props.title,
ruleSemanticProps = props.ruleSemanticProps;
return _react2.default.createElement(_semanticUiReact.Dropdown, Object.assign({}, ruleSemanticProps.operatorSelector, {
title: title,
className: className,
options: options,
defaultValue: value,
onChange: function onChange(e, _ref) {
var value = _ref.value;
return handleOnChange(value);
}
}));
};
OperatorSelectorSemantic.displayName = 'OperatorSelectorSemantic';
OperatorSelectorSemantic.propTypes = {
/**
* Semantic Props for operatorSelector on a rule
*/
ruleSemanticProps: _propTypes2.default.shape({
/**
* Semantic Dropdown props on a rule
* https://react.semantic-ui.com/modules/dropdown/
*/
operatorSelector: _propTypes2.default.any
}),
/**
* selected value for element
*/
value: _propTypes2.default.string,
/**
*
*/
options: _propTypes2.default.arrayOf(_propTypes2.default.shape({
text: _propTypes2.default.string.isRequired,
value: _propTypes2.default.string.isRequired,
key: _propTypes2.default.string
})).isRequired,
/**
* //css className to be applied
*/
className: _propTypes2.default.string,
/**
* callback function to invoke when the element changes
*/
handleOnChange: _propTypes2.default.func,
/**
* html title
*/
title: _propTypes2.default.string
};
exports.default = OperatorSelectorSemantic;