UNPKG

zent

Version:

一套前端设计语言和基于React的实现

28 lines (27 loc) 2 kB
import { __assign } from "tslib"; import { jsxs as _jsxs, jsx as _jsx, Fragment as _Fragment } from "react/jsx-runtime"; import Tag from './Tag'; import Pop from '../../pop'; import { getPathValue, getPathLabel } from '../path-fns'; import { simplify } from '../simplify'; var renderTagCollapsedTrigger = function (length) { return (_jsxs("span", __assign({ className: "zent-cascader-v2-tag-collapsed-trigger", "data-zv": '10.0.17' }, { children: ["+", length] }), void 0)); }; function CascaderTagList(props) { var list = props.list, renderValue = props.renderValue, selectionMap = props.selectionMap, simplifyPaths = props.simplifyPaths, onRemove = props.onRemove, collapse = props.collapse; var paths = simplifyPaths ? simplify(list, selectionMap) : list; var renderPaths = collapse ? paths.slice(0, 1) : paths; var renderCollapsePaths = paths.slice(1); return (_jsxs(_Fragment, { children: [renderPaths.map(function (path) { var removeCallback = function (e) { e.stopPropagation(); onRemove(path[path.length - 1]); }; return (_jsx(Tag, { path: path, onRemove: removeCallback, renderValue: renderValue }, getPathValue(path))); }), collapse && renderCollapsePaths.length > 0 && (_jsx(Pop, __assign({ trigger: "hover", position: "auto-top-center", cushion: 15, content: _jsx("div", __assign({ className: "zent-cascader-v2-tag-collapsed-content", "data-zv": '10.0.17' }, { children: _jsx("div", __assign({ "data-zv": '10.0.17' }, { children: _jsx("span", __assign({ "data-zv": '10.0.17' }, { children: renderCollapsePaths .map(function (item) { return getPathLabel(item); }) .join('、') }), void 0) }), void 0) }), void 0) }, { children: renderTagCollapsedTrigger(renderCollapsePaths.length) }), void 0))] }, void 0)); } export default CascaderTagList;