UNPKG

@coreui/react-pro

Version:

UI Components Library for React.js

27 lines (23 loc) 1.35 kB
'use strict'; var tslib_es6 = require('../../node_modules/tslib/tslib.es6.js'); var React = require('react'); var PropTypes = require('prop-types'); const createNativeOptions = (options) => options && options.map((option, index) => option.options ? (React.createElement("optgroup", { label: option.label, key: index }, createNativeOptions(option.options))) : (React.createElement("option", { value: option.value, key: index, disabled: option.disabled }, option.label))); const CMultiSelectNativeSelect = React.forwardRef((_a, ref) => { var { id, name, options } = _a, rest = tslib_es6.__rest(_a, ["id", "name", "options"]); return (React.createElement("select", Object.assign({ className: "form-multi-select", id: id }, (id && !name && { name: `${id}-multi-select` }), (name && { name: name }), { tabIndex: -1 }, rest, { ref: ref }), options && createNativeOptions(options))); }); CMultiSelectNativeSelect.propTypes = { id: PropTypes.string, name: PropTypes.string, options: PropTypes.array, value: PropTypes.oneOfType([ PropTypes.number, PropTypes.string, PropTypes.arrayOf(PropTypes.string.isRequired), ]), }; CMultiSelectNativeSelect.displayName = 'CMultiSelectNativeSelect'; exports.CMultiSelectNativeSelect = CMultiSelectNativeSelect; //# sourceMappingURL=CMultiSelectNativeSelect.js.map