@vtx/components 3.1.36 → 3.1.38
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/vtx-import2/Content.js +2 -1
- package/lib/vtx-import2/Content.js.map +1 -1
- package/lib/vtx-ztree-select/index.js +59 -4
- package/lib/vtx-ztree-select/index.js.map +1 -1
- package/lib/vtx-ztree-select/style/index.css +36 -0
- package/lib/vtx-ztree-select/style/index.less +26 -0
- package/package.json +1 -1
|
@@ -104,7 +104,8 @@ Content.propTypes = {
|
|
|
104
104
|
fileKey: _propTypes["default"].string,
|
|
105
105
|
templateURL: _propTypes["default"].string,
|
|
106
106
|
fileList: _propTypes["default"].any,
|
|
107
|
-
setFileList: _propTypes["default"].func
|
|
107
|
+
setFileList: _propTypes["default"].func,
|
|
108
|
+
customText: _propTypes["default"].string
|
|
108
109
|
};
|
|
109
110
|
var _default = Content;
|
|
110
111
|
exports["default"] = _default;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Content.js","names":["Content","accept","fileKey","setFileList","fileList","templateURL","customText","fileInputRef","useRef","onClick","current","click","onFileChange","files","onDeleteFileList","length","map","file","name","color","cursor","display","fileName","propTypes","PropTypes","string","any","func"],"sources":["vtx-import2/Content.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { useRef } from 'react';\nimport CloseCircleFilled from '@ant-design/icons/CloseCircleFilled';\nimport UploadSvg from './UploadSvg';\nimport DownloadSvg from './DownloadSvg';\nconst Content = ({ accept, fileKey, setFileList, fileList, templateURL, customText }) => {\n const fileInputRef = useRef();\n const onClick = () => {\n fileInputRef.current && fileInputRef.current.click();\n };\n\n const onFileChange = () => {\n setFileList(fileInputRef.current.files);\n };\n\n const onDeleteFileList = () => {\n setFileList([]);\n };\n\n return (\n <div>\n <div className=\"vtx-import2-content-box\">\n <span className=\"vtx-import2-content-mark\">1</span>\n <DownloadSvg />\n <a className=\"vtx-import2-download\" href={templateURL}>\n 没有模板?点击此处下载\n </a>\n </div>\n <div className=\"vtx-import2-content-box\">\n <span className=\"vtx-import2-content-mark\">2</span>\n <UploadSvg />\n <div className=\"vtx-import2-file-list\">\n <a onClick={onClick} className=\"vtx-import2-text\">\n {fileList.length === 0 ? (customText||'点击选择文件(支持excel格式)') : '重新选择文件'}\n </a>\n {[...fileList].map(file => (\n <div key={file.name} className=\"vtx-import2-file-item\">\n <span className=\"vtx-import2-file-name\">{file.name}</span>\n <CloseCircleFilled\n fill=\"#c0c0c0\"\n onClick={onDeleteFileList}\n style={{ color: '#c0c0c0', cursor: 'pointer' }}\n />\n </div>\n ))}\n </div>\n <input\n type=\"file\"\n name={fileKey}\n accept={accept}\n ref={fileInputRef}\n style={{ display: 'none' }}\n onChange={onFileChange}\n value={fileList.length === 0 ? '' : fileList[0].fileName}\n />\n </div>\n </div>\n );\n};\n\nContent.propTypes = {\n accept: PropTypes.string,\n fileKey: PropTypes.string,\n templateURL: PropTypes.string,\n fileList: PropTypes.any,\n setFileList: PropTypes.func,\n};\n\nexport default Content;\n"],"mappings":";;;;;;;;;AAAA;;AACA;;AAEA;;AACA;;AACA;;;;;;;;;;;;;;;;;;;;AACA,IAAMA,OAAO,GAAG,SAAVA,OAAU,OAAyE;EAAA,IAAtEC,MAAsE,QAAtEA,MAAsE;EAAA,IAA9DC,OAA8D,QAA9DA,OAA8D;EAAA,IAArDC,WAAqD,QAArDA,WAAqD;EAAA,IAAxCC,QAAwC,QAAxCA,QAAwC;EAAA,IAA9BC,WAA8B,QAA9BA,WAA8B;EAAA,IAAjBC,UAAiB,QAAjBA,UAAiB;EACrF,IAAMC,YAAY,GAAG,IAAAC,aAAA,GAArB;;EACA,IAAMC,OAAO,GAAG,SAAVA,OAAU,GAAM;IAClBF,YAAY,CAACG,OAAb,IAAwBH,YAAY,CAACG,OAAb,CAAqBC,KAArB,EAAxB;EACH,CAFD;;EAIA,IAAMC,YAAY,GAAG,SAAfA,YAAe,GAAM;IACvBT,WAAW,CAACI,YAAY,CAACG,OAAb,CAAqBG,KAAtB,CAAX;EACH,CAFD;;EAIA,IAAMC,gBAAgB,GAAG,SAAnBA,gBAAmB,GAAM;IAC3BX,WAAW,CAAC,EAAD,CAAX;EACH,CAFD;;EAIA,oBACI,0DACI;IAAK,SAAS,EAAC;EAAf,gBACI;IAAM,SAAS,EAAC;EAAhB,OADJ,eAEI,gCAAC,uBAAD,OAFJ,eAGI;IAAG,SAAS,EAAC,sBAAb;IAAoC,IAAI,EAAEE;EAA1C,wEAHJ,CADJ,eAQI;IAAK,SAAS,EAAC;EAAf,gBACI;IAAM,SAAS,EAAC;EAAhB,OADJ,eAEI,gCAAC,qBAAD,OAFJ,eAGI;IAAK,SAAS,EAAC;EAAf,gBACI;IAAG,OAAO,EAAEI,OAAZ;IAAqB,SAAS,EAAC;EAA/B,GACKL,QAAQ,CAACW,MAAT,KAAoB,CAApB,GAAyBT,UAAU,IAAE,mBAArC,GAA4D,QADjE,CADJ,EAIK,mBAAIF,QAAJ,EAAcY,GAAd,CAAkB,UAAAC,IAAI;IAAA,oBACnB;MAAK,GAAG,EAAEA,IAAI,CAACC,IAAf;MAAqB,SAAS,EAAC;IAA/B,gBACI;MAAM,SAAS,EAAC;IAAhB,GAAyCD,IAAI,CAACC,IAA9C,CADJ,eAEI,gCAAC,6BAAD;MACI,IAAI,EAAC,SADT;MAEI,OAAO,EAAEJ,gBAFb;MAGI,KAAK,EAAE;QAAEK,KAAK,EAAE,SAAT;QAAoBC,MAAM,EAAE;MAA5B;IAHX,EAFJ,CADmB;EAAA,CAAtB,CAJL,CAHJ,eAkBI;IACI,IAAI,EAAC,MADT;IAEI,IAAI,EAAElB,OAFV;IAGI,MAAM,EAAED,MAHZ;IAII,GAAG,EAAEM,YAJT;IAKI,KAAK,EAAE;MAAEc,OAAO,EAAE;IAAX,CALX;IAMI,QAAQ,EAAET,YANd;IAOI,KAAK,EAAER,QAAQ,CAACW,MAAT,KAAoB,CAApB,GAAwB,EAAxB,GAA6BX,QAAQ,CAAC,CAAD,CAAR,CAAYkB;EAPpD,EAlBJ,CARJ,CADJ;AAuCH,CArDD;;AAuDAtB,OAAO,CAACuB,SAAR,GAAoB;EAChBtB,MAAM,EAAEuB,qBAAA,CAAUC,MADF;EAEhBvB,OAAO,EAAEsB,qBAAA,CAAUC,MAFH;EAGhBpB,WAAW,EAAEmB,qBAAA,CAAUC,MAHP;EAIhBrB,QAAQ,EAAEoB,qBAAA,CAAUE,GAJJ;EAKhBvB,WAAW,EAAEqB,qBAAA,CAAUG;
|
|
1
|
+
{"version":3,"file":"Content.js","names":["Content","accept","fileKey","setFileList","fileList","templateURL","customText","fileInputRef","useRef","onClick","current","click","onFileChange","files","onDeleteFileList","length","map","file","name","color","cursor","display","fileName","propTypes","PropTypes","string","any","func"],"sources":["vtx-import2/Content.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { useRef } from 'react';\nimport CloseCircleFilled from '@ant-design/icons/CloseCircleFilled';\nimport UploadSvg from './UploadSvg';\nimport DownloadSvg from './DownloadSvg';\nconst Content = ({ accept, fileKey, setFileList, fileList, templateURL, customText }) => {\n const fileInputRef = useRef();\n const onClick = () => {\n fileInputRef.current && fileInputRef.current.click();\n };\n\n const onFileChange = () => {\n setFileList(fileInputRef.current.files);\n };\n\n const onDeleteFileList = () => {\n setFileList([]);\n };\n\n return (\n <div>\n <div className=\"vtx-import2-content-box\">\n <span className=\"vtx-import2-content-mark\">1</span>\n <DownloadSvg />\n <a className=\"vtx-import2-download\" href={templateURL}>\n 没有模板?点击此处下载\n </a>\n </div>\n <div className=\"vtx-import2-content-box\">\n <span className=\"vtx-import2-content-mark\">2</span>\n <UploadSvg />\n <div className=\"vtx-import2-file-list\">\n <a onClick={onClick} className=\"vtx-import2-text\">\n {fileList.length === 0 ? (customText||'点击选择文件(支持excel格式)') : '重新选择文件'}\n </a>\n {[...fileList].map(file => (\n <div key={file.name} className=\"vtx-import2-file-item\">\n <span className=\"vtx-import2-file-name\">{file.name}</span>\n <CloseCircleFilled\n fill=\"#c0c0c0\"\n onClick={onDeleteFileList}\n style={{ color: '#c0c0c0', cursor: 'pointer' }}\n />\n </div>\n ))}\n </div>\n <input\n type=\"file\"\n name={fileKey}\n accept={accept}\n ref={fileInputRef}\n style={{ display: 'none' }}\n onChange={onFileChange}\n value={fileList.length === 0 ? '' : fileList[0].fileName}\n />\n </div>\n </div>\n );\n};\n\nContent.propTypes = {\n accept: PropTypes.string,\n fileKey: PropTypes.string,\n templateURL: PropTypes.string,\n fileList: PropTypes.any,\n setFileList: PropTypes.func,\n customText: PropTypes.string,\n};\n\nexport default Content;\n"],"mappings":";;;;;;;;;AAAA;;AACA;;AAEA;;AACA;;AACA;;;;;;;;;;;;;;;;;;;;AACA,IAAMA,OAAO,GAAG,SAAVA,OAAU,OAAyE;EAAA,IAAtEC,MAAsE,QAAtEA,MAAsE;EAAA,IAA9DC,OAA8D,QAA9DA,OAA8D;EAAA,IAArDC,WAAqD,QAArDA,WAAqD;EAAA,IAAxCC,QAAwC,QAAxCA,QAAwC;EAAA,IAA9BC,WAA8B,QAA9BA,WAA8B;EAAA,IAAjBC,UAAiB,QAAjBA,UAAiB;EACrF,IAAMC,YAAY,GAAG,IAAAC,aAAA,GAArB;;EACA,IAAMC,OAAO,GAAG,SAAVA,OAAU,GAAM;IAClBF,YAAY,CAACG,OAAb,IAAwBH,YAAY,CAACG,OAAb,CAAqBC,KAArB,EAAxB;EACH,CAFD;;EAIA,IAAMC,YAAY,GAAG,SAAfA,YAAe,GAAM;IACvBT,WAAW,CAACI,YAAY,CAACG,OAAb,CAAqBG,KAAtB,CAAX;EACH,CAFD;;EAIA,IAAMC,gBAAgB,GAAG,SAAnBA,gBAAmB,GAAM;IAC3BX,WAAW,CAAC,EAAD,CAAX;EACH,CAFD;;EAIA,oBACI,0DACI;IAAK,SAAS,EAAC;EAAf,gBACI;IAAM,SAAS,EAAC;EAAhB,OADJ,eAEI,gCAAC,uBAAD,OAFJ,eAGI;IAAG,SAAS,EAAC,sBAAb;IAAoC,IAAI,EAAEE;EAA1C,wEAHJ,CADJ,eAQI;IAAK,SAAS,EAAC;EAAf,gBACI;IAAM,SAAS,EAAC;EAAhB,OADJ,eAEI,gCAAC,qBAAD,OAFJ,eAGI;IAAK,SAAS,EAAC;EAAf,gBACI;IAAG,OAAO,EAAEI,OAAZ;IAAqB,SAAS,EAAC;EAA/B,GACKL,QAAQ,CAACW,MAAT,KAAoB,CAApB,GAAyBT,UAAU,IAAE,mBAArC,GAA4D,QADjE,CADJ,EAIK,mBAAIF,QAAJ,EAAcY,GAAd,CAAkB,UAAAC,IAAI;IAAA,oBACnB;MAAK,GAAG,EAAEA,IAAI,CAACC,IAAf;MAAqB,SAAS,EAAC;IAA/B,gBACI;MAAM,SAAS,EAAC;IAAhB,GAAyCD,IAAI,CAACC,IAA9C,CADJ,eAEI,gCAAC,6BAAD;MACI,IAAI,EAAC,SADT;MAEI,OAAO,EAAEJ,gBAFb;MAGI,KAAK,EAAE;QAAEK,KAAK,EAAE,SAAT;QAAoBC,MAAM,EAAE;MAA5B;IAHX,EAFJ,CADmB;EAAA,CAAtB,CAJL,CAHJ,eAkBI;IACI,IAAI,EAAC,MADT;IAEI,IAAI,EAAElB,OAFV;IAGI,MAAM,EAAED,MAHZ;IAII,GAAG,EAAEM,YAJT;IAKI,KAAK,EAAE;MAAEc,OAAO,EAAE;IAAX,CALX;IAMI,QAAQ,EAAET,YANd;IAOI,KAAK,EAAER,QAAQ,CAACW,MAAT,KAAoB,CAApB,GAAwB,EAAxB,GAA6BX,QAAQ,CAAC,CAAD,CAAR,CAAYkB;EAPpD,EAlBJ,CARJ,CADJ;AAuCH,CArDD;;AAuDAtB,OAAO,CAACuB,SAAR,GAAoB;EAChBtB,MAAM,EAAEuB,qBAAA,CAAUC,MADF;EAEhBvB,OAAO,EAAEsB,qBAAA,CAAUC,MAFH;EAGhBpB,WAAW,EAAEmB,qBAAA,CAAUC,MAHP;EAIhBrB,QAAQ,EAAEoB,qBAAA,CAAUE,GAJJ;EAKhBvB,WAAW,EAAEqB,qBAAA,CAAUG,IALP;EAMhBrB,UAAU,EAAEkB,qBAAA,CAAUC;AANN,CAApB;eASezB,O"}
|
|
@@ -25,6 +25,12 @@ var _classnames2 = _interopRequireDefault(require("classnames"));
|
|
|
25
25
|
|
|
26
26
|
var _vtxZtree = _interopRequireDefault(require("../vtx-ztree"));
|
|
27
27
|
|
|
28
|
+
var _icons = require("@ant-design/icons");
|
|
29
|
+
|
|
30
|
+
var _button = _interopRequireDefault(require("antd/lib/button"));
|
|
31
|
+
|
|
32
|
+
var _empty = _interopRequireDefault(require("antd/lib/empty"));
|
|
33
|
+
|
|
28
34
|
var _excluded = ["children"];
|
|
29
35
|
|
|
30
36
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
@@ -85,7 +91,8 @@ var VtxZtreeSelect = /*#__PURE__*/function (_React$Component) {
|
|
|
85
91
|
_this.tree = null;
|
|
86
92
|
_this.treeRefreshFlag = 1;
|
|
87
93
|
_this.state = {
|
|
88
|
-
popoverVisible: false
|
|
94
|
+
popoverVisible: false,
|
|
95
|
+
popWidth: 0
|
|
89
96
|
};
|
|
90
97
|
_this.keyNodesMapping = {};
|
|
91
98
|
|
|
@@ -304,11 +311,23 @@ var VtxZtreeSelect = /*#__PURE__*/function (_React$Component) {
|
|
|
304
311
|
}), _treeProps); // 多选组件
|
|
305
312
|
|
|
306
313
|
var MultiSelect = /*#__PURE__*/_react["default"].createElement("div", {
|
|
314
|
+
className: (0, _classnames2["default"])("".concat(prefixCls, "-multiple-box")),
|
|
315
|
+
style: style,
|
|
316
|
+
ref: function ref(_ref3) {
|
|
317
|
+
if (!t.state.popWidth && _ref3 !== null && _ref3 !== void 0 && _ref3.clientWidth) {
|
|
318
|
+
console.log(_ref3 === null || _ref3 === void 0 ? void 0 : _ref3.clientWidth);
|
|
319
|
+
t.setState({
|
|
320
|
+
popWidth: _ref3 === null || _ref3 === void 0 ? void 0 : _ref3.clientWidth
|
|
321
|
+
});
|
|
322
|
+
}
|
|
323
|
+
}
|
|
324
|
+
}, /*#__PURE__*/_react["default"].createElement("div", {
|
|
307
325
|
className: (0, _classnames2["default"])('ant-input', "".concat(prefixCls, "-multiple"), _defineProperty({}, "".concat(prefixCls, "-multiple-disabled"), disabled)),
|
|
308
326
|
style: _objectSpread({
|
|
309
|
-
height: '
|
|
310
|
-
minHeight: '28px'
|
|
327
|
+
height: '32px'
|
|
311
328
|
}, style)
|
|
329
|
+
}, /*#__PURE__*/_react["default"].createElement("div", {
|
|
330
|
+
className: (0, _classnames2["default"])("".concat(prefixCls, "-multiple-content"))
|
|
312
331
|
}, selectedNodes.length > 0 ? [selectedNodes.map(function (item) {
|
|
313
332
|
return /*#__PURE__*/_react["default"].createElement(_tag["default"], {
|
|
314
333
|
key: item.id,
|
|
@@ -327,7 +346,43 @@ var VtxZtreeSelect = /*#__PURE__*/function (_React$Component) {
|
|
|
327
346
|
}
|
|
328
347
|
})] : /*#__PURE__*/_react["default"].createElement("span", {
|
|
329
348
|
className: "".concat(prefixCls, "-placeholder")
|
|
330
|
-
}, t.props.placeholder))
|
|
349
|
+
}, t.props.placeholder))), /*#__PURE__*/_react["default"].createElement(_popover["default"], {
|
|
350
|
+
content: /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement("div", {
|
|
351
|
+
className: (0, _classnames2["default"])('vtx-tree-count-head')
|
|
352
|
+
}, /*#__PURE__*/_react["default"].createElement("span", null, "\u5DF2\u9009\u62E9\uFF1A", selectedNodes.length), /*#__PURE__*/_react["default"].createElement("span", {
|
|
353
|
+
className: (0, _classnames2["default"])(selectedNodes.length > 0 && !disabled ? 'clear-count' : 'disabled-count'),
|
|
354
|
+
onClick: function onClick(e) {
|
|
355
|
+
e.stopPropagation();
|
|
356
|
+
t.clear();
|
|
357
|
+
}
|
|
358
|
+
}, "\u6E05\u7A7A\u5DF2\u9009\u9879")), selectedNodes.length > 0 ? selectedNodes.map(function (item) {
|
|
359
|
+
return /*#__PURE__*/_react["default"].createElement(_tag["default"], {
|
|
360
|
+
key: "tab-".concat(item.id),
|
|
361
|
+
closable: !disabled,
|
|
362
|
+
onClose: function onClose(e) {
|
|
363
|
+
e.stopPropagation();
|
|
364
|
+
t.clearKey(item.id);
|
|
365
|
+
},
|
|
366
|
+
style: {
|
|
367
|
+
marginBottom: '5px'
|
|
368
|
+
}
|
|
369
|
+
}, item.name.length > 20 ? "".concat(item.name.slice(0, 20), "...") : item.name);
|
|
370
|
+
}) : /*#__PURE__*/_react["default"].createElement(_empty["default"], {
|
|
371
|
+
image: _empty["default"].PRESENTED_IMAGE_SIMPLE
|
|
372
|
+
})),
|
|
373
|
+
placement: "bottomRight",
|
|
374
|
+
trigger: "click",
|
|
375
|
+
overlayStyle: {
|
|
376
|
+
width: t.state.popWidth
|
|
377
|
+
}
|
|
378
|
+
}, /*#__PURE__*/_react["default"].createElement(_button["default"], {
|
|
379
|
+
className: "vtx-tree-count",
|
|
380
|
+
icon: /*#__PURE__*/_react["default"].createElement(_icons.MoreOutlined, null),
|
|
381
|
+
size: "default",
|
|
382
|
+
onClick: function onClick(e) {
|
|
383
|
+
e.stopPropagation();
|
|
384
|
+
}
|
|
385
|
+
}))); // 单选组件
|
|
331
386
|
|
|
332
387
|
|
|
333
388
|
var SingleSelect = /*#__PURE__*/_react["default"].createElement(_input["default"], {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["VtxZtreeSelect","props","tree","treeRefreshFlag","state","popoverVisible","keyNodesMapping","getKeyNodesMapping","prevProps","isEqual","data","expandedKeys","nodes","t","genNodes","map","item","children","rest","key","Array","isArray","length","treeCheckable","checkNodes","getCheckedNodes","cancelSelectedNodes","value","onChange","keys","leafKeys","names","keyIndex","indexOf","keyList","splice","filter","isLeaf","name","clearSearch","prefixCls","treeDefaultExpandAll","multiple","showSearch","searchPlaceholder","dropdownStyle","style","disabled","refreshFlag","customCfg","checkStrictly","value_arr","val","selectedNodes","k","id","treeProps","checkable","instance","selectedKeys","selectedNames","setState","checkedNodes","checkedKeys","checkedNames","treeNode","beforeCheck","MultiSelect","classnames","height","minHeight","e","stopPropagation","clearKey","slice","clear","placeholder","SingleSelect","join","bind","v","React","Component","propTypes","PropTypes","array","arrayOf","string","bool","oneOfType","func"],"sources":["vtx-ztree-select/index.jsx"],"sourcesContent":["import React from 'react';\nimport Popover from 'antd/lib/popover';\nimport Input from 'antd/lib/input';\nimport Tag from 'antd/lib/tag';\nimport CloseCircleFilled from '@ant-design/icons/CloseCircleFilled';\nimport isEqual from 'lodash.isequal';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\nimport Ztree from '../vtx-ztree';\n\nexport default class VtxZtreeSelect extends React.Component {\n constructor(props) {\n super(props);\n this.tree = null;\n this.treeRefreshFlag = 1;\n this.state = {\n popoverVisible: false,\n };\n this.keyNodesMapping = {};\n this.getKeyNodesMapping();\n }\n\n // UNSAFE_componentWillReceiveProps(nextProps) {\n // if (!isEqual(this.props.data, nextProps.data)) {\n // this.getKeyNodesMapping(nextProps.data);\n // }\n // if (!isEqual(this.props.expandedKeys, nextProps.expandedKeys)) {\n // this.treeRefreshFlag++;\n // }\n // }\n\n // 替换componentWillReceiveProps\n componentDidUpdate(prevProps) {\n if (!isEqual(this.props.data, prevProps.data)) {\n this.getKeyNodesMapping(this.props.data);\n }\n if (!isEqual(this.props.expandedKeys, prevProps.expandedKeys)) {\n this.treeRefreshFlag++;\n }\n }\n\n getKeyNodesMapping(nodes) {\n const t = this;\n t.keyNodesMapping = {};\n (function genNodes(nodes) {\n nodes.map(item => {\n const { children, ...rest } = item;\n t.keyNodesMapping[item.key] = rest;\n if (Array.isArray(children) && children.length > 0) {\n genNodes(children);\n }\n });\n })(nodes || this.props.data || []);\n }\n\n clear() {\n if (this.tree) {\n if (this.props.treeCheckable) {\n this.tree.checkNodes(\n this.tree.getCheckedNodes().map(item => item.key),\n false,\n );\n } else {\n this.tree.cancelSelectedNodes(this.props.value);\n }\n }\n this.props.onChange &&\n this.props.onChange({\n nodes: [],\n keys: [],\n leafKeys: [],\n names: [],\n });\n }\n\n clearKey(key) {\n const keyIndex = this.props.value.indexOf(key);\n if (keyIndex != -1) {\n const keyList = [...this.props.value];\n keyList.splice(keyIndex, 1);\n const nodes = keyList.map(key => this.keyNodesMapping[key]);\n if (this.tree) {\n if (this.props.treeCheckable) {\n this.tree.checkNodes([key], false);\n } else {\n this.tree.cancelSelectedNodes([key]);\n }\n }\n this.props.onChange &&\n this.props.onChange({\n nodes,\n keys: keyList,\n leafKeys: nodes.filter(item => item.isLeaf).map(item => item.key),\n names: nodes.map(item => item.name),\n });\n }\n }\n\n clearSearch() {\n this.tree && this.tree.clearSearch();\n }\n\n render() {\n const t = this;\n // 必填参数\n const { data, value } = t.props;\n // 可配参数\n const {\n prefixCls = 'vtx-ztree-select',\n treeCheckable = false,\n treeDefaultExpandAll = false,\n multiple = false,\n showSearch = true,\n searchPlaceholder,\n dropdownStyle = {},\n style = {},\n disabled = false,\n refreshFlag = null,\n expandedKeys,\n customCfg,\n checkStrictly,\n } = t.props;\n // eslint-disable-next-line camelcase\n const value_arr = (function(val) {\n if (Array.isArray(val)) {\n return val;\n } else if (val) {\n return [val];\n } else {\n return [];\n }\n })(value);\n const selectedNodes = value_arr\n .filter(k => k in t.keyNodesMapping)\n .map(item => ({\n id: item,\n name: t.keyNodesMapping[item].name,\n }));\n // ztree配置\n const treeProps = {\n data, // 树的数据\n showSearch: showSearch,\n searchPlaceholder: searchPlaceholder,\n multiple,\n checkable: treeCheckable,\n [treeCheckable ? 'checkedKeys' : 'selectedKeys']: value_arr,\n defaultExpandAll: treeDefaultExpandAll,\n expandedKeys,\n refreshFlag: refreshFlag || t.treeRefreshFlag,\n customCfg,\n checkStrictly,\n ref(instance) {\n if (instance) t.tree = instance;\n },\n onClick({ selectedNodes, selectedKeys, selectedNames }) {\n // console.log(selectedNodes,selectedKeys,selectedNames)\n if (!treeCheckable) {\n t.props.onChange &&\n t.props.onChange({\n nodes: selectedNodes,\n keys: selectedKeys,\n leafKeys: selectedNodes\n .filter(item => item.isLeaf)\n .map(item => item.key),\n names: selectedNames,\n });\n if (!multiple) {\n t.setState({\n popoverVisible: false,\n });\n }\n }\n },\n onCheck({ checkedNodes, checkedKeys, checkedNames }) {\n if (treeCheckable) {\n t.props.onChange &&\n t.props.onChange({\n nodes: checkedNodes,\n keys: checkedKeys,\n leafKeys: checkedNodes\n .filter(item => item.isLeaf)\n .map(item => item.key),\n names: checkedNames,\n });\n }\n },\n beforeCheck(treeNode) {\n return t.props.beforeCheck ? t.props.beforeCheck(treeNode) : true;\n },\n };\n\n // 多选组件\n const MultiSelect = (\n <div\n className={classnames('ant-input', `${prefixCls}-multiple`, {\n [`${prefixCls}-multiple-disabled`]: disabled,\n })}\n style={{ height: 'auto', minHeight: '28px', ...style }}\n >\n {selectedNodes.length > 0 ? (\n [\n selectedNodes.map(item => (\n <Tag\n key={item.id}\n closable={!disabled}\n onClose={e => {\n e.stopPropagation();\n t.clearKey(item.id);\n }}\n >\n {item.name.length > 20 ? `${item.name.slice(0, 20)}...` : item.name}\n </Tag>\n )),\n disabled ? null : (\n <CloseCircleFilled\n key={'icon'}\n className={`${prefixCls}-multiple-close-icon`}\n onClick={e => {\n e.stopPropagation();\n t.clear();\n }}\n />\n ),\n ]\n ) : (\n <span className={`${prefixCls}-placeholder`}>{t.props.placeholder}</span>\n )}\n </div>\n );\n\n // 单选组件\n const SingleSelect = (\n <Input\n value={selectedNodes.map(item => item.name).join(', ')}\n style={style}\n readOnly\n disabled={disabled}\n placeholder={t.props.placeholder}\n suffix={\n disabled || selectedNodes.length == 0 ? (\n <span />\n ) : (\n <CloseCircleFilled\n className={`${prefixCls}-close-icon`}\n onClick={t.clear.bind(t)}\n />\n )\n }\n />\n );\n\n return (\n <div className={prefixCls}>\n {disabled ? (\n multiple || treeCheckable ? (\n MultiSelect\n ) : (\n SingleSelect\n )\n ) : (\n <Popover\n placement=\"bottomLeft\"\n content={\n <div className={`${prefixCls}-popover`} style={dropdownStyle}>\n <Ztree {...treeProps} />\n </div>\n }\n trigger=\"click\"\n onVisibleChange={v => {\n t.setState({ popoverVisible: v });\n }}\n visible={t.state.popoverVisible}\n >\n {multiple || treeCheckable ? MultiSelect : SingleSelect}\n </Popover>\n )}\n </div>\n );\n }\n}\n\nVtxZtreeSelect.propTypes = {\n data: PropTypes.array,\n expandedKeys: PropTypes.arrayOf(PropTypes.string),\n treeCheckable: PropTypes.bool,\n value: PropTypes.oneOfType([PropTypes.string, PropTypes.arrayOf(PropTypes.string)]),\n onChange: PropTypes.func,\n};\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","names":["VtxZtreeSelect","props","tree","treeRefreshFlag","state","popoverVisible","popWidth","keyNodesMapping","getKeyNodesMapping","prevProps","isEqual","data","expandedKeys","nodes","t","genNodes","map","item","children","rest","key","Array","isArray","length","treeCheckable","checkNodes","getCheckedNodes","cancelSelectedNodes","value","onChange","keys","leafKeys","names","keyIndex","indexOf","keyList","splice","filter","isLeaf","name","clearSearch","prefixCls","treeDefaultExpandAll","multiple","showSearch","searchPlaceholder","dropdownStyle","style","disabled","refreshFlag","customCfg","checkStrictly","value_arr","val","selectedNodes","k","id","treeProps","checkable","instance","selectedKeys","selectedNames","setState","checkedNodes","checkedKeys","checkedNames","treeNode","beforeCheck","MultiSelect","classnames","ref","clientWidth","console","log","height","e","stopPropagation","clearKey","slice","clear","placeholder","marginBottom","Empty","PRESENTED_IMAGE_SIMPLE","width","SingleSelect","join","bind","v","React","Component","propTypes","PropTypes","array","arrayOf","string","bool","oneOfType","func"],"sources":["vtx-ztree-select/index.jsx"],"sourcesContent":["import React from 'react';\nimport Popover from 'antd/lib/popover';\nimport Input from 'antd/lib/input';\nimport Tag from 'antd/lib/tag';\nimport CloseCircleFilled from '@ant-design/icons/CloseCircleFilled';\nimport isEqual from 'lodash.isequal';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\nimport Ztree from '../vtx-ztree';\nimport { MoreOutlined } from '@ant-design/icons';\nimport Button from 'antd/lib/button';\nimport Empty from 'antd/lib/empty';\n\nexport default class VtxZtreeSelect extends React.Component {\n constructor(props) {\n super(props);\n this.tree = null;\n this.treeRefreshFlag = 1;\n this.state = {\n popoverVisible: false,\n popWidth: 0\n };\n this.keyNodesMapping = {};\n this.getKeyNodesMapping();\n }\n\n // UNSAFE_componentWillReceiveProps(nextProps) {\n // if (!isEqual(this.props.data, nextProps.data)) {\n // this.getKeyNodesMapping(nextProps.data);\n // }\n // if (!isEqual(this.props.expandedKeys, nextProps.expandedKeys)) {\n // this.treeRefreshFlag++;\n // }\n // }\n\n // 替换componentWillReceiveProps\n componentDidUpdate(prevProps) {\n if (!isEqual(this.props.data, prevProps.data)) {\n this.getKeyNodesMapping(this.props.data);\n }\n if (!isEqual(this.props.expandedKeys, prevProps.expandedKeys)) {\n this.treeRefreshFlag++;\n }\n }\n\n getKeyNodesMapping(nodes) {\n const t = this;\n t.keyNodesMapping = {};\n (function genNodes(nodes) {\n nodes.map(item => {\n const { children, ...rest } = item;\n t.keyNodesMapping[item.key] = rest;\n if (Array.isArray(children) && children.length > 0) {\n genNodes(children);\n }\n });\n })(nodes || this.props.data || []);\n }\n\n clear() {\n if (this.tree) {\n if (this.props.treeCheckable) {\n this.tree.checkNodes(\n this.tree.getCheckedNodes().map(item => item.key),\n false,\n );\n } else {\n this.tree.cancelSelectedNodes(this.props.value);\n }\n }\n this.props.onChange &&\n this.props.onChange({\n nodes: [],\n keys: [],\n leafKeys: [],\n names: [],\n });\n }\n\n clearKey(key) {\n const keyIndex = this.props.value.indexOf(key);\n if (keyIndex != -1) {\n const keyList = [...this.props.value];\n keyList.splice(keyIndex, 1);\n const nodes = keyList.map(key => this.keyNodesMapping[key]);\n if (this.tree) {\n if (this.props.treeCheckable) {\n this.tree.checkNodes([key], false);\n } else {\n this.tree.cancelSelectedNodes([key]);\n }\n }\n this.props.onChange &&\n this.props.onChange({\n nodes,\n keys: keyList,\n leafKeys: nodes.filter(item => item.isLeaf).map(item => item.key),\n names: nodes.map(item => item.name),\n });\n }\n }\n\n clearSearch() {\n this.tree && this.tree.clearSearch();\n }\n\n render() {\n const t = this;\n // 必填参数\n const { data, value } = t.props;\n // 可配参数\n const {\n prefixCls = 'vtx-ztree-select',\n treeCheckable = false,\n treeDefaultExpandAll = false,\n multiple = false,\n showSearch = true,\n searchPlaceholder,\n dropdownStyle = {},\n style = {},\n disabled = false,\n refreshFlag = null,\n expandedKeys,\n customCfg,\n checkStrictly,\n } = t.props;\n // eslint-disable-next-line camelcase\n const value_arr = (function(val) {\n if (Array.isArray(val)) {\n return val;\n } else if (val) {\n return [val];\n } else {\n return [];\n }\n })(value);\n const selectedNodes = value_arr\n .filter(k => k in t.keyNodesMapping)\n .map(item => ({\n id: item,\n name: t.keyNodesMapping[item].name,\n }));\n // ztree配置\n const treeProps = {\n data, // 树的数据\n showSearch: showSearch,\n searchPlaceholder: searchPlaceholder,\n multiple,\n checkable: treeCheckable,\n [treeCheckable ? 'checkedKeys' : 'selectedKeys']: value_arr,\n defaultExpandAll: treeDefaultExpandAll,\n expandedKeys,\n refreshFlag: refreshFlag || t.treeRefreshFlag,\n customCfg,\n checkStrictly,\n ref(instance) {\n if (instance) t.tree = instance;\n },\n onClick({ selectedNodes, selectedKeys, selectedNames }) {\n // console.log(selectedNodes,selectedKeys,selectedNames)\n if (!treeCheckable) {\n t.props.onChange &&\n t.props.onChange({\n nodes: selectedNodes,\n keys: selectedKeys,\n leafKeys: selectedNodes\n .filter(item => item.isLeaf)\n .map(item => item.key),\n names: selectedNames,\n });\n if (!multiple) {\n t.setState({\n popoverVisible: false,\n });\n }\n }\n },\n onCheck({ checkedNodes, checkedKeys, checkedNames }) {\n if (treeCheckable) {\n t.props.onChange &&\n t.props.onChange({\n nodes: checkedNodes,\n keys: checkedKeys,\n leafKeys: checkedNodes\n .filter(item => item.isLeaf)\n .map(item => item.key),\n names: checkedNames,\n });\n }\n },\n beforeCheck(treeNode) {\n return t.props.beforeCheck ? t.props.beforeCheck(treeNode) : true;\n },\n };\n\n // 多选组件\n const MultiSelect = (\n <div \n className={classnames(`${prefixCls}-multiple-box`)} \n style={style}\n ref={ref=>{\n if(!t.state.popWidth && ref?.clientWidth){\n console.log(ref?.clientWidth);\n t.setState({popWidth: ref?.clientWidth})\n }\n }}\n >\n <div\n className={classnames('ant-input', `${prefixCls}-multiple`, {\n [`${prefixCls}-multiple-disabled`]: disabled,\n })}\n style={{ height: '32px', ...style }}\n >\n <div className={classnames(`${prefixCls}-multiple-content`)}>\n {selectedNodes.length > 0 ? (\n [\n selectedNodes.map(item => (\n <Tag\n key={item.id}\n closable={!disabled}\n onClose={e => {\n e.stopPropagation();\n t.clearKey(item.id);\n }}\n >\n {item.name.length > 20 ? `${item.name.slice(0, 20)}...` : item.name}\n </Tag>\n )),\n disabled ? null : (\n <CloseCircleFilled\n key={'icon'}\n className={`${prefixCls}-multiple-close-icon`}\n onClick={e => {\n e.stopPropagation();\n t.clear();\n }}\n />\n ),\n ]\n ) : (\n <span className={`${prefixCls}-placeholder`}>{t.props.placeholder}</span>\n )}\n </div>\n </div>\n <Popover\n content={\n <>\n <div className={classnames('vtx-tree-count-head')}>\n <span>已选择:{selectedNodes.length}</span>\n <span className={classnames((selectedNodes.length>0&&!disabled)?'clear-count':'disabled-count')} onClick={e=>{\n e.stopPropagation();\n t.clear();\n }}>清空已选项</span>\n </div>\n {\n selectedNodes.length>0?\n selectedNodes.map(item => (\n <Tag\n key={`tab-${item.id}`}\n closable={!disabled}\n onClose={e => {\n e.stopPropagation();\n t.clearKey(item.id);\n }}\n style={{marginBottom: '5px'}}\n >\n {item.name.length > 20 ? `${item.name.slice(0, 20)}...` : item.name}\n </Tag>\n )):\n <Empty image={Empty.PRESENTED_IMAGE_SIMPLE} />\n }\n </>\n }\n placement=\"bottomRight\"\n trigger=\"click\"\n overlayStyle={{ width: t.state.popWidth }}\n >\n <Button \n className=\"vtx-tree-count\" \n icon={<MoreOutlined />} \n size='default' \n onClick={e=>{\n e.stopPropagation();\n }}\n />\n </Popover>\n </div>\n );\n\n // 单选组件\n const SingleSelect = (\n <Input\n value={selectedNodes.map(item => item.name).join(', ')}\n style={style}\n readOnly\n disabled={disabled}\n placeholder={t.props.placeholder}\n suffix={\n disabled || selectedNodes.length == 0 ? (\n <span />\n ) : (\n <CloseCircleFilled\n className={`${prefixCls}-close-icon`}\n onClick={t.clear.bind(t)}\n />\n )\n }\n />\n );\n\n return (\n <div className={prefixCls}>\n {disabled ? (\n multiple || treeCheckable ? (\n MultiSelect\n ) : (\n SingleSelect\n )\n ) : (\n <Popover\n placement=\"bottomLeft\"\n content={\n <div className={`${prefixCls}-popover`} style={dropdownStyle}>\n <Ztree {...treeProps} />\n </div>\n }\n trigger=\"click\"\n onVisibleChange={v => {\n t.setState({ popoverVisible: v });\n }}\n visible={t.state.popoverVisible}\n >\n {multiple || treeCheckable ? MultiSelect : SingleSelect}\n </Popover>\n )}\n </div>\n );\n }\n}\n\nVtxZtreeSelect.propTypes = {\n data: PropTypes.array,\n expandedKeys: PropTypes.arrayOf(PropTypes.string),\n treeCheckable: PropTypes.bool,\n value: PropTypes.oneOfType([PropTypes.string, PropTypes.arrayOf(PropTypes.string)]),\n onChange: PropTypes.func,\n};\n"],"mappings":"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"}
|
|
@@ -18,9 +18,26 @@
|
|
|
18
18
|
overflow: hidden;
|
|
19
19
|
text-overflow: ellipsis;
|
|
20
20
|
}
|
|
21
|
+
.vtx-ztree-select-multiple-box {
|
|
22
|
+
display: -webkit-box;
|
|
23
|
+
display: -ms-flexbox;
|
|
24
|
+
display: flex;
|
|
25
|
+
width: -webkit-fit-content;
|
|
26
|
+
width: -moz-fit-content;
|
|
27
|
+
width: fit-content;
|
|
28
|
+
}
|
|
29
|
+
.vtx-ztree-select-multiple-box .vtx-tree-count {
|
|
30
|
+
border-left: none;
|
|
31
|
+
}
|
|
21
32
|
.vtx-ztree-select-multiple {
|
|
33
|
+
-webkit-box-flex: 1;
|
|
34
|
+
-ms-flex: 1;
|
|
35
|
+
flex: 1;
|
|
22
36
|
position: relative;
|
|
23
37
|
padding-right: 18px;
|
|
38
|
+
overflow: hidden;
|
|
39
|
+
text-overflow: ellipsis;
|
|
40
|
+
white-space: nowrap;
|
|
24
41
|
}
|
|
25
42
|
.vtx-ztree-select-multiple-close-icon {
|
|
26
43
|
position: absolute;
|
|
@@ -64,3 +81,22 @@
|
|
|
64
81
|
.vtx-ztree-select-placeholder {
|
|
65
82
|
color: #bfbfbf;
|
|
66
83
|
}
|
|
84
|
+
.vtx-tree-count-head {
|
|
85
|
+
display: -webkit-box;
|
|
86
|
+
display: -ms-flexbox;
|
|
87
|
+
display: flex;
|
|
88
|
+
-webkit-box-pack: justify;
|
|
89
|
+
-ms-flex-pack: justify;
|
|
90
|
+
justify-content: space-between;
|
|
91
|
+
margin-bottom: 5px;
|
|
92
|
+
}
|
|
93
|
+
.vtx-tree-count-head .disabled-count {
|
|
94
|
+
color: #aaaaaa;
|
|
95
|
+
cursor: not-allowed;
|
|
96
|
+
}
|
|
97
|
+
.vtx-tree-count-head .clear-count {
|
|
98
|
+
cursor: pointer;
|
|
99
|
+
}
|
|
100
|
+
.vtx-tree-count-head .clear-count:hover {
|
|
101
|
+
color: #40a9ff;
|
|
102
|
+
}
|
|
@@ -22,9 +22,20 @@
|
|
|
22
22
|
overflow: hidden;
|
|
23
23
|
text-overflow: ellipsis;
|
|
24
24
|
}
|
|
25
|
+
&-multiple-box {
|
|
26
|
+
display: flex;
|
|
27
|
+
width: fit-content;
|
|
28
|
+
.vtx-tree-count {
|
|
29
|
+
border-left: none;
|
|
30
|
+
}
|
|
31
|
+
}
|
|
25
32
|
&-multiple {
|
|
33
|
+
flex: 1;
|
|
26
34
|
position: relative;
|
|
27
35
|
padding-right: 18px;
|
|
36
|
+
overflow: hidden;
|
|
37
|
+
text-overflow: ellipsis;
|
|
38
|
+
white-space: nowrap;
|
|
28
39
|
&-close-icon {
|
|
29
40
|
position: absolute;
|
|
30
41
|
top: 8px;
|
|
@@ -72,3 +83,18 @@
|
|
|
72
83
|
.vtx-ztree-select-placeholder {
|
|
73
84
|
color: @input-placeholder-color;
|
|
74
85
|
}
|
|
86
|
+
.vtx-tree-count-head {
|
|
87
|
+
display: flex;
|
|
88
|
+
justify-content: space-between;
|
|
89
|
+
margin-bottom: 5px;
|
|
90
|
+
.disabled-count {
|
|
91
|
+
color: #aaaaaa;
|
|
92
|
+
cursor: not-allowed;
|
|
93
|
+
}
|
|
94
|
+
.clear-count {
|
|
95
|
+
cursor: pointer;
|
|
96
|
+
&:hover {
|
|
97
|
+
color: #40a9ff;
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
}
|