@prefect9/ui
Version:
UI React components
38 lines (37 loc) • 1.34 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
require("core-js/modules/es.string.trim.js");
var _react = require("react");
var _isType = require("@prefect9/is-type");
var _index = require("../../index");
var _jsxRuntime = require("react/jsx-runtime");
function Option(_ref) {
let {
children,
value,
multi,
selected,
placeholder,
className: userClassName
} = _ref;
const className = (0, _react.useMemo)(() => {
const result = ['prefect9-select__option'];
if ((0, _isType.isTrue)(selected)) result.push('prefect9-select__option-selected');
if ((0, _isType.isTrue)(multi)) result.push('prefect9-select__option-multi');
if ((0, _isType.isTrue)(placeholder)) result.push('prefect9-select__option-placeholder');
if ((0, _isType.isStr)(userClassName) && userClassName.trim().length > 0) result.push(userClassName.trim());
return result.join(' ');
}, [selected, multi, placeholder, userClassName]);
return /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
className: className,
"data-value": value,
"data-selected": selected,
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
children: children
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_index.Icons.Close, {})]
});
}
var _default = exports.default = Option;