UNPKG

weike-multi-cascader

Version:
22 lines (21 loc) 1.11 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const tslib_1 = require("tslib"); const react_1 = tslib_1.__importStar(require("react")); const antd_1 = require("antd"); const utils_1 = require("../libs/utils"); const container_1 = tslib_1.__importDefault(require("../container")); exports.default = react_1.default.memo((props) => { const { node, disabled } = props; const { value: containerValue, handleSelectChange, } = container_1.default.useContainer(); const handleClick = react_1.useCallback((event) => { event.stopPropagation(); }, []); const handleChange = react_1.useCallback((event) => { const { checked } = event.target; handleSelectChange(node, checked); }, [node]); const checked = utils_1.hasParentChecked(node, containerValue); const indeterminate = !checked && utils_1.hasChildChecked(node, containerValue); return (react_1.default.createElement(antd_1.Checkbox, { disabled: disabled, onClick: handleClick, onChange: handleChange, checked: checked, indeterminate: indeterminate })); });