@bee-design/ui
Version:
Bee Design React UI Library.
22 lines (21 loc) • 1.93 kB
JavaScript
"use strict";
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
var react_1 = __importDefault(require("react"));
var Checkbox_1 = __importDefault(require("../../Checkbox"));
var IconRight_1 = __importDefault(require("../../../icon/react-icon-cjs/IconRight"));
var IconLeft_1 = __importDefault(require("../../../icon/react-icon-cjs/IconLeft"));
var IconLoading_1 = __importDefault(require("../../../icon/react-icon-cjs/IconLoading"));
var IconCheck_1 = __importDefault(require("../../../icon/react-icon-cjs/IconCheck"));
var Option = function (props) {
var prefixCls = props.prefixCls, multiple = props.multiple, option = props.option, renderOption = props.renderOption, selected = props.selected, rtl = props.rtl;
var checkboxDisabled = option.disabled || (multiple && option.disableCheckbox);
return (react_1.default.createElement(react_1.default.Fragment, null,
multiple ? (react_1.default.createElement(Checkbox_1.default, { disabled: checkboxDisabled, checked: option._checked, indeterminate: option._halfChecked, onChange: props.onMultipleChecked, value: option.value })) : (''),
react_1.default.createElement("div", { className: prefixCls + "-list-item-label", onClick: option.disabled ? undefined : props.onClickOption, onMouseEnter: props.onMouseEnter, onDoubleClick: checkboxDisabled ? undefined : props.onDoubleClickOption },
renderOption ? renderOption() : option.label,
option.isLeaf ? (selected && react_1.default.createElement(IconCheck_1.default, null)) : option.loading ? (react_1.default.createElement(IconLoading_1.default, null)) : rtl ? (react_1.default.createElement(IconLeft_1.default, null)) : (react_1.default.createElement(IconRight_1.default, null)))));
};
exports.default = Option;