@vtx/components 3.1.74 → 3.1.75
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/index.js +14 -0
- package/lib/index.js.map +1 -1
- package/lib/vtx-tree/index.js +279 -0
- package/lib/vtx-tree/index.js.map +1 -0
- package/lib/vtx-tree/style/css.js +6 -0
- package/lib/vtx-tree/style/css.js.map +1 -0
- package/lib/vtx-tree/style/index.css +54 -0
- package/lib/vtx-tree/style/index.js +6 -0
- package/lib/vtx-tree/style/index.js.map +1 -0
- package/lib/vtx-tree/style/index.less +53 -0
- package/lib/vtx-tree/utils.js +81 -0
- package/lib/vtx-tree/utils.js.map +1 -0
- package/lib/vtx-tree-select/index.js +185 -0
- package/lib/vtx-tree-select/index.js.map +1 -0
- package/lib/vtx-tree-select/style/css.js +7 -0
- package/lib/vtx-tree-select/style/css.js.map +1 -0
- package/lib/vtx-tree-select/style/index.css +53 -0
- package/lib/vtx-tree-select/style/index.js +7 -0
- package/lib/vtx-tree-select/style/index.js.map +1 -0
- package/lib/vtx-tree-select/style/index.less +61 -0
- package/package.json +1 -1
package/lib/index.js
CHANGED
|
@@ -135,6 +135,18 @@ Object.defineProperty(exports, "VtxTimePicker", {
|
|
|
135
135
|
return _vtxTimePicker["default"];
|
|
136
136
|
}
|
|
137
137
|
});
|
|
138
|
+
Object.defineProperty(exports, "VtxTree", {
|
|
139
|
+
enumerable: true,
|
|
140
|
+
get: function get() {
|
|
141
|
+
return _vtxTree["default"];
|
|
142
|
+
}
|
|
143
|
+
});
|
|
144
|
+
Object.defineProperty(exports, "VtxTreeSelect", {
|
|
145
|
+
enumerable: true,
|
|
146
|
+
get: function get() {
|
|
147
|
+
return _vtxTreeSelect["default"];
|
|
148
|
+
}
|
|
149
|
+
});
|
|
138
150
|
Object.defineProperty(exports, "VtxUpload", {
|
|
139
151
|
enumerable: true,
|
|
140
152
|
get: function get() {
|
|
@@ -176,12 +188,14 @@ var _vtxSelect = _interopRequireDefault(require("./vtx-select"));
|
|
|
176
188
|
var _vtxInput = _interopRequireDefault(require("./vtx-input"));
|
|
177
189
|
var _vtxTimePicker = _interopRequireDefault(require("./vtx-time-picker"));
|
|
178
190
|
var _vtxUpload = _interopRequireDefault(require("./vtx-upload"));
|
|
191
|
+
var _vtxTreeSelect = _interopRequireDefault(require("./vtx-tree-select"));
|
|
179
192
|
var _vtxZtreeSelect = _interopRequireDefault(require("./vtx-ztree-select"));
|
|
180
193
|
var _vtxDatagrid = _interopRequireDefault(require("./vtx-datagrid"));
|
|
181
194
|
var _vtxEllipsisText = _interopRequireDefault(require("./vtx-ellipsis-text"));
|
|
182
195
|
var _vtxImage = _interopRequireDefault(require("./vtx-image"));
|
|
183
196
|
var _vtxRpsFrame = _interopRequireDefault(require("./vtx-rps-frame"));
|
|
184
197
|
var _vtxStatisticsColumn = _interopRequireDefault(require("./vtx-statistics-column"));
|
|
198
|
+
var _vtxTree = _interopRequireDefault(require("./vtx-tree"));
|
|
185
199
|
var _vtxZtree = _interopRequireDefault(require("./vtx-ztree"));
|
|
186
200
|
var _vtxSplitPane = _interopRequireDefault(require("./vtx-split-pane"));
|
|
187
201
|
var _vtxModal = _interopRequireDefault(require("./vtx-modal"));
|
package/lib/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["_vtxFormLayout","_interopRequireDefault","require","_vtxPageLayout","_vtxSearch","_vtxColorPicker","_vtxCombogrid","_vtxDatePicker","_vtxEditor","_vtxWangEditor","_vtxExport","_vtxExportAsync","_vtxImport","_vtxImport2","_vtxSearchMapInput","_vtxSelect","_vtxInput","_vtxTimePicker","_vtxUpload","_vtxZtreeSelect","_vtxDatagrid","_vtxEllipsisText","_vtxImage","_vtxRpsFrame","_vtxStatisticsColumn","_vtxZtree","_vtxSplitPane","_vtxModal","obj","__esModule"],"sources":["index.js"],"sourcesContent":["// layout\
|
|
1
|
+
{"version":3,"file":"index.js","names":["_vtxFormLayout","_interopRequireDefault","require","_vtxPageLayout","_vtxSearch","_vtxColorPicker","_vtxCombogrid","_vtxDatePicker","_vtxEditor","_vtxWangEditor","_vtxExport","_vtxExportAsync","_vtxImport","_vtxImport2","_vtxSearchMapInput","_vtxSelect","_vtxInput","_vtxTimePicker","_vtxUpload","_vtxTreeSelect","_vtxZtreeSelect","_vtxDatagrid","_vtxEllipsisText","_vtxImage","_vtxRpsFrame","_vtxStatisticsColumn","_vtxTree","_vtxZtree","_vtxSplitPane","_vtxModal","obj","__esModule"],"sources":["index.js"],"sourcesContent":["// layout\nexport { default as VtxFormLayout } from './vtx-form-layout';\nexport { default as VtxPageLayout } from './vtx-page-layout';\nexport { default as VtxSearch } from './vtx-search';\n\n// data entry\nexport { default as VtxColorPicker } from './vtx-color-picker';\nexport { default as VtxCombogrid } from './vtx-combogrid';\nexport { default as VtxDatePicker } from './vtx-date-picker';\nexport { default as VtxEditor } from './vtx-editor';\nexport { default as VtxWangEditor } from './vtx-wang-editor';\n\nexport { default as VtxExport } from './vtx-export';\nexport { default as VtxExportAsync } from './vtx-export-async';\nexport { default as VtxImport } from './vtx-import';\nexport { default as VtxImport2 } from './vtx-import2';\nexport { default as VtxSearchMapInput } from './vtx-search-map-input';\nexport { default as VtxSelect } from './vtx-select';\nexport { default as VtxInput } from './vtx-input';\nexport { default as VtxTimePicker } from './vtx-time-picker';\nexport { default as VtxUpload } from './vtx-upload';\nexport { default as VtxTreeSelect } from './vtx-tree-select';\nexport { default as VtxZtreeSelect } from './vtx-ztree-select';\n\n// data display\nexport { default as VtxDatagrid } from './vtx-datagrid';\nexport { default as VtxEllipsisText } from './vtx-ellipsis-text';\nexport { default as VtxImage } from './vtx-image';\nexport { default as VtxRpsFrame } from './vtx-rps-frame';\nexport { default as VtxStatisticsColumn } from './vtx-statistics-column';\nexport { default as VtxTree } from './vtx-tree';\nexport { default as VtxZtree } from './vtx-ztree';\nexport { default as VtxSplitPane } from './vtx-split-pane';\n\n// feedback\nexport { default as VtxModal } from './vtx-modal';\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,IAAAA,cAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,cAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,UAAA,GAAAH,sBAAA,CAAAC,OAAA;AAGA,IAAAG,eAAA,GAAAJ,sBAAA,CAAAC,OAAA;AACA,IAAAI,aAAA,GAAAL,sBAAA,CAAAC,OAAA;AACA,IAAAK,cAAA,GAAAN,sBAAA,CAAAC,OAAA;AACA,IAAAM,UAAA,GAAAP,sBAAA,CAAAC,OAAA;AACA,IAAAO,cAAA,GAAAR,sBAAA,CAAAC,OAAA;AAEA,IAAAQ,UAAA,GAAAT,sBAAA,CAAAC,OAAA;AACA,IAAAS,eAAA,GAAAV,sBAAA,CAAAC,OAAA;AACA,IAAAU,UAAA,GAAAX,sBAAA,CAAAC,OAAA;AACA,IAAAW,WAAA,GAAAZ,sBAAA,CAAAC,OAAA;AACA,IAAAY,kBAAA,GAAAb,sBAAA,CAAAC,OAAA;AACA,IAAAa,UAAA,GAAAd,sBAAA,CAAAC,OAAA;AACA,IAAAc,SAAA,GAAAf,sBAAA,CAAAC,OAAA;AACA,IAAAe,cAAA,GAAAhB,sBAAA,CAAAC,OAAA;AACA,IAAAgB,UAAA,GAAAjB,sBAAA,CAAAC,OAAA;AACA,IAAAiB,cAAA,GAAAlB,sBAAA,CAAAC,OAAA;AACA,IAAAkB,eAAA,GAAAnB,sBAAA,CAAAC,OAAA;AAGA,IAAAmB,YAAA,GAAApB,sBAAA,CAAAC,OAAA;AACA,IAAAoB,gBAAA,GAAArB,sBAAA,CAAAC,OAAA;AACA,IAAAqB,SAAA,GAAAtB,sBAAA,CAAAC,OAAA;AACA,IAAAsB,YAAA,GAAAvB,sBAAA,CAAAC,OAAA;AACA,IAAAuB,oBAAA,GAAAxB,sBAAA,CAAAC,OAAA;AACA,IAAAwB,QAAA,GAAAzB,sBAAA,CAAAC,OAAA;AACA,IAAAyB,SAAA,GAAA1B,sBAAA,CAAAC,OAAA;AACA,IAAA0B,aAAA,GAAA3B,sBAAA,CAAAC,OAAA;AAGA,IAAA2B,SAAA,GAAA5B,sBAAA,CAAAC,OAAA;AAAkD,SAAAD,uBAAA6B,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,gBAAAA,GAAA","ignoreList":[]}
|
|
@@ -0,0 +1,279 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports["default"] = void 0;
|
|
8
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
9
|
+
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
10
|
+
var _antd = require("antd");
|
|
11
|
+
var _icons = require("@ant-design/icons");
|
|
12
|
+
var _utils = require("./utils");
|
|
13
|
+
var _excluded = ["prefixCls", "showSearch", "treeData", "searchPlaceholder", "renderMenuList", "fieldNames"];
|
|
14
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
15
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
|
|
16
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
|
|
17
|
+
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
18
|
+
function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
|
|
19
|
+
function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
20
|
+
function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
|
|
21
|
+
function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
|
|
22
|
+
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
23
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
24
|
+
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
25
|
+
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
|
|
26
|
+
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
|
27
|
+
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
|
28
|
+
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
29
|
+
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
30
|
+
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
|
|
31
|
+
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
|
|
32
|
+
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
33
|
+
function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
|
|
34
|
+
function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
|
|
35
|
+
var getParentKey = function getParentKey(key, tree) {
|
|
36
|
+
var parentKey;
|
|
37
|
+
for (var i = 0; i < tree.length; i++) {
|
|
38
|
+
var node = tree[i];
|
|
39
|
+
if (node.children) {
|
|
40
|
+
if (node.children.some(function (item) {
|
|
41
|
+
return item.key === key;
|
|
42
|
+
})) {
|
|
43
|
+
parentKey = node.key;
|
|
44
|
+
} else if (getParentKey(key, node.children)) {
|
|
45
|
+
parentKey = getParentKey(key, node.children);
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
return parentKey;
|
|
50
|
+
};
|
|
51
|
+
var VtxTree = function VtxTree(_ref) {
|
|
52
|
+
var _ref$prefixCls = _ref.prefixCls,
|
|
53
|
+
prefixCls = _ref$prefixCls === void 0 ? 'vtx-tree' : _ref$prefixCls,
|
|
54
|
+
_ref$showSearch = _ref.showSearch,
|
|
55
|
+
showSearch = _ref$showSearch === void 0 ? true : _ref$showSearch,
|
|
56
|
+
_ref$treeData = _ref.treeData,
|
|
57
|
+
treeData = _ref$treeData === void 0 ? [] : _ref$treeData,
|
|
58
|
+
_ref$searchPlaceholde = _ref.searchPlaceholder,
|
|
59
|
+
searchPlaceholder = _ref$searchPlaceholde === void 0 ? '请输入要查询的关键字' : _ref$searchPlaceholde,
|
|
60
|
+
renderMenuList = _ref.renderMenuList,
|
|
61
|
+
fieldNames = _ref.fieldNames,
|
|
62
|
+
props = _objectWithoutProperties(_ref, _excluded);
|
|
63
|
+
var treeRef = (0, _react.useRef)();
|
|
64
|
+
var _useState = (0, _react.useState)(0),
|
|
65
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
66
|
+
height = _useState2[0],
|
|
67
|
+
setHeight = _useState2[1];
|
|
68
|
+
var _useState3 = (0, _react.useState)(''),
|
|
69
|
+
_useState4 = _slicedToArray(_useState3, 2),
|
|
70
|
+
searchValue = _useState4[0],
|
|
71
|
+
setSearchValue = _useState4[1];
|
|
72
|
+
var _useState5 = (0, _react.useState)([]),
|
|
73
|
+
_useState6 = _slicedToArray(_useState5, 2),
|
|
74
|
+
expandedKeys = _useState6[0],
|
|
75
|
+
setExpandedKeys = _useState6[1];
|
|
76
|
+
var _useState7 = (0, _react.useState)(props.autoExpandParent || false),
|
|
77
|
+
_useState8 = _slicedToArray(_useState7, 2),
|
|
78
|
+
autoExpandParent = _useState8[0],
|
|
79
|
+
setAutoExpandParent = _useState8[1];
|
|
80
|
+
var _useState9 = (0, _react.useState)(props.selectedKeys || props.defaultSelectedKeys || []),
|
|
81
|
+
_useState10 = _slicedToArray(_useState9, 2),
|
|
82
|
+
selectedKeys = _useState10[0],
|
|
83
|
+
setSelectedKeys = _useState10[1];
|
|
84
|
+
var lastSelectedKey = _react["default"].useRef();
|
|
85
|
+
var cachedSelectedKeys = _react["default"].useRef();
|
|
86
|
+
var dataList = (0, _react.useMemo)(function () {
|
|
87
|
+
var dataList = [];
|
|
88
|
+
var titleKey = (fieldNames === null || fieldNames === void 0 ? void 0 : fieldNames.title) || 'title';
|
|
89
|
+
var generateList = function generateList(data) {
|
|
90
|
+
for (var i = 0; i < data.length; i++) {
|
|
91
|
+
var node = data[i];
|
|
92
|
+
var key = node.key;
|
|
93
|
+
dataList.push({
|
|
94
|
+
key: key,
|
|
95
|
+
title: node[titleKey]
|
|
96
|
+
});
|
|
97
|
+
if (node.children) {
|
|
98
|
+
generateList(node.children);
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
};
|
|
102
|
+
generateList(treeData);
|
|
103
|
+
return dataList;
|
|
104
|
+
}, [treeData]);
|
|
105
|
+
(0, _react.useEffect)(function () {
|
|
106
|
+
if ('selectedKeys' in props) {
|
|
107
|
+
setSelectedKeys(props.selectedKeys);
|
|
108
|
+
}
|
|
109
|
+
}, [props.selectedKeys]);
|
|
110
|
+
(0, _react.useEffect)(function () {
|
|
111
|
+
if ('expandedKeys' in props) {
|
|
112
|
+
setExpandedKeys(props.expandedKeys);
|
|
113
|
+
}
|
|
114
|
+
}, [props.expandedKeys]);
|
|
115
|
+
var onExpand = function onExpand(newExpandedKeys, info) {
|
|
116
|
+
var _props$onExpand;
|
|
117
|
+
setAutoExpandParent(false);
|
|
118
|
+
(_props$onExpand = props.onExpand) === null || _props$onExpand === void 0 || _props$onExpand.call(props, newExpandedKeys, info);
|
|
119
|
+
if (!('expandedKeys' in props)) {
|
|
120
|
+
setExpandedKeys(newExpandedKeys);
|
|
121
|
+
}
|
|
122
|
+
};
|
|
123
|
+
var onChange = function onChange(e) {
|
|
124
|
+
var _props$onExpand2;
|
|
125
|
+
var value = e.target.value;
|
|
126
|
+
var newExpandedKeys = dataList.map(function (item) {
|
|
127
|
+
if (item.title.indexOf(value) > -1) {
|
|
128
|
+
return getParentKey(item.key, treeData);
|
|
129
|
+
}
|
|
130
|
+
return null;
|
|
131
|
+
}).filter(function (item, i, self) {
|
|
132
|
+
return item && self.indexOf(item) === i;
|
|
133
|
+
});
|
|
134
|
+
setSearchValue(value);
|
|
135
|
+
setAutoExpandParent(true);
|
|
136
|
+
(_props$onExpand2 = props.onExpand) === null || _props$onExpand2 === void 0 || _props$onExpand2.call(props, newExpandedKeys);
|
|
137
|
+
if (!('expandedKeys' in props)) {
|
|
138
|
+
setExpandedKeys(newExpandedKeys);
|
|
139
|
+
}
|
|
140
|
+
};
|
|
141
|
+
(0, _react.useEffect)(function () {
|
|
142
|
+
setHeight(treeRef.current.offsetHeight);
|
|
143
|
+
}, []);
|
|
144
|
+
var onSelect = function onSelect(keys, event) {
|
|
145
|
+
var _props$onSelect;
|
|
146
|
+
var multiple = props.multiple;
|
|
147
|
+
var node = event.node,
|
|
148
|
+
nativeEvent = event.nativeEvent;
|
|
149
|
+
var _node$key = node.key,
|
|
150
|
+
key = _node$key === void 0 ? '' : _node$key;
|
|
151
|
+
// const newState: DirectoryTreeState = {};
|
|
152
|
+
|
|
153
|
+
// We need wrap this event since some value is not same
|
|
154
|
+
var newEvent = _objectSpread(_objectSpread({}, event), {}, {
|
|
155
|
+
selected: true // Directory selected always true
|
|
156
|
+
});
|
|
157
|
+
|
|
158
|
+
// Windows / Mac single pick
|
|
159
|
+
var ctrlPick = (nativeEvent === null || nativeEvent === void 0 ? void 0 : nativeEvent.ctrlKey) || (nativeEvent === null || nativeEvent === void 0 ? void 0 : nativeEvent.metaKey);
|
|
160
|
+
var shiftPick = nativeEvent === null || nativeEvent === void 0 ? void 0 : nativeEvent.shiftKey;
|
|
161
|
+
|
|
162
|
+
// Generate new selected keys
|
|
163
|
+
var newSelectedKeys;
|
|
164
|
+
if (multiple && ctrlPick) {
|
|
165
|
+
// Control click
|
|
166
|
+
newSelectedKeys = keys;
|
|
167
|
+
lastSelectedKey.current = key;
|
|
168
|
+
cachedSelectedKeys.current = newSelectedKeys;
|
|
169
|
+
newEvent.selectedNodes = (0, _utils.convertDirectoryKeysToNodes)(treeData, newSelectedKeys);
|
|
170
|
+
} else if (multiple && shiftPick) {
|
|
171
|
+
// Shift click
|
|
172
|
+
newSelectedKeys = Array.from(new Set([].concat(_toConsumableArray(cachedSelectedKeys.current || []), _toConsumableArray((0, _utils.calcRangeKeys)({
|
|
173
|
+
treeData: treeData,
|
|
174
|
+
expandedKeys: expandedKeys,
|
|
175
|
+
startKey: key,
|
|
176
|
+
endKey: lastSelectedKey.current
|
|
177
|
+
})))));
|
|
178
|
+
newEvent.selectedNodes = (0, _utils.convertDirectoryKeysToNodes)(treeData, newSelectedKeys);
|
|
179
|
+
} else {
|
|
180
|
+
// Single click
|
|
181
|
+
newSelectedKeys = [key];
|
|
182
|
+
lastSelectedKey.current = key;
|
|
183
|
+
cachedSelectedKeys.current = newSelectedKeys;
|
|
184
|
+
newEvent.selectedNodes = (0, _utils.convertDirectoryKeysToNodes)(treeData, newSelectedKeys);
|
|
185
|
+
}
|
|
186
|
+
(_props$onSelect = props.onSelect) === null || _props$onSelect === void 0 || _props$onSelect.call(props, newSelectedKeys, newEvent);
|
|
187
|
+
if (!('selectedKeys' in props)) {
|
|
188
|
+
setSelectedKeys(newSelectedKeys);
|
|
189
|
+
}
|
|
190
|
+
};
|
|
191
|
+
var newTreeData = (0, _react.useMemo)(function () {
|
|
192
|
+
var loop = function loop(data) {
|
|
193
|
+
return data.map(function (item) {
|
|
194
|
+
var titleKey = (fieldNames === null || fieldNames === void 0 ? void 0 : fieldNames.title) || 'title';
|
|
195
|
+
var strTitle = item[titleKey];
|
|
196
|
+
var index = strTitle.indexOf(searchValue);
|
|
197
|
+
var beforeStr = strTitle.substring(0, index);
|
|
198
|
+
var afterStr = strTitle.slice(index + searchValue.length);
|
|
199
|
+
var title = index > -1 ? /*#__PURE__*/_react["default"].createElement("span", null, beforeStr, /*#__PURE__*/_react["default"].createElement("span", {
|
|
200
|
+
className: "".concat(prefixCls, "-search-value")
|
|
201
|
+
}, searchValue), afterStr) : /*#__PURE__*/_react["default"].createElement("span", null, strTitle);
|
|
202
|
+
if (item.children) {
|
|
203
|
+
return _objectSpread(_objectSpread({}, item), {}, _defineProperty(_defineProperty(_defineProperty({}, titleKey, title), "key", item.key), "children", loop(item.children)));
|
|
204
|
+
}
|
|
205
|
+
return _objectSpread(_objectSpread({}, item), {}, _defineProperty(_defineProperty({}, titleKey, title), "key", item.key));
|
|
206
|
+
});
|
|
207
|
+
};
|
|
208
|
+
return loop(treeData);
|
|
209
|
+
}, [treeData, searchValue]);
|
|
210
|
+
return /*#__PURE__*/_react["default"].createElement("div", {
|
|
211
|
+
className: "".concat(prefixCls, "-wraaper")
|
|
212
|
+
}, showSearch && /*#__PURE__*/_react["default"].createElement(_antd.Input, {
|
|
213
|
+
style: {
|
|
214
|
+
marginBottom: 8
|
|
215
|
+
},
|
|
216
|
+
placeholder: searchPlaceholder,
|
|
217
|
+
onChange: onChange
|
|
218
|
+
}), /*#__PURE__*/_react["default"].createElement("div", {
|
|
219
|
+
className: prefixCls,
|
|
220
|
+
ref: treeRef
|
|
221
|
+
}, /*#__PURE__*/_react["default"].createElement(_antd.Tree, _extends({}, props, {
|
|
222
|
+
height: height,
|
|
223
|
+
switcherIcon: /*#__PURE__*/_react["default"].createElement(_icons.DownOutlined, null),
|
|
224
|
+
showLine: {
|
|
225
|
+
showLeafIcon: false
|
|
226
|
+
},
|
|
227
|
+
blockNode: true,
|
|
228
|
+
treeData: newTreeData,
|
|
229
|
+
onExpand: onExpand,
|
|
230
|
+
expandedKeys: expandedKeys,
|
|
231
|
+
autoExpandParent: autoExpandParent,
|
|
232
|
+
selectedKeys: selectedKeys,
|
|
233
|
+
onSelect: onSelect,
|
|
234
|
+
expandAction: "click",
|
|
235
|
+
titleRender: function titleRender(nodeData) {
|
|
236
|
+
var titleKey = (fieldNames === null || fieldNames === void 0 ? void 0 : fieldNames.title) || 'title';
|
|
237
|
+
var title = nodeData[titleKey];
|
|
238
|
+
if (renderMenuList) {
|
|
239
|
+
var menuList = renderMenuList(nodeData);
|
|
240
|
+
return /*#__PURE__*/_react["default"].createElement("div", {
|
|
241
|
+
className: "".concat(prefixCls, "-menu-wrap")
|
|
242
|
+
}, /*#__PURE__*/_react["default"].createElement("span", null, title), /*#__PURE__*/_react["default"].createElement("div", {
|
|
243
|
+
className: "".concat(prefixCls, "-menu-list")
|
|
244
|
+
}, menuList.filter(function (item) {
|
|
245
|
+
return item.visible;
|
|
246
|
+
}).map(function (item) {
|
|
247
|
+
return /*#__PURE__*/_react["default"].createElement(_antd.Tooltip, {
|
|
248
|
+
key: item.label,
|
|
249
|
+
title: item.label
|
|
250
|
+
}, /*#__PURE__*/_react["default"].createElement("span", {
|
|
251
|
+
className: "".concat(prefixCls, "-menu-item-icon"),
|
|
252
|
+
onClick: function onClick(e) {
|
|
253
|
+
e.stopPropagation();
|
|
254
|
+
item.onClick && item.onClick(nodeData);
|
|
255
|
+
}
|
|
256
|
+
}, item.icon));
|
|
257
|
+
})));
|
|
258
|
+
}
|
|
259
|
+
return title;
|
|
260
|
+
}
|
|
261
|
+
}))));
|
|
262
|
+
};
|
|
263
|
+
VtxTree.propTypes = {
|
|
264
|
+
showSearch: _propTypes["default"].bool,
|
|
265
|
+
prefixCls: _propTypes["default"].string,
|
|
266
|
+
treeData: _propTypes["default"].array,
|
|
267
|
+
selectedKeys: _propTypes["default"].array,
|
|
268
|
+
defaultSelectedKeys: _propTypes["default"].array,
|
|
269
|
+
expandedKeys: _propTypes["default"].bool,
|
|
270
|
+
onExpand: _propTypes["default"].func,
|
|
271
|
+
multiple: _propTypes["default"].bool,
|
|
272
|
+
autoExpandParent: _propTypes["default"].bool,
|
|
273
|
+
onSelect: _propTypes["default"].func,
|
|
274
|
+
searchPlaceholder: _propTypes["default"].string,
|
|
275
|
+
renderMenuList: _propTypes["default"].func,
|
|
276
|
+
fieldNames: _propTypes["default"].array
|
|
277
|
+
};
|
|
278
|
+
var _default = exports["default"] = VtxTree;
|
|
279
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","names":["_react","_interopRequireWildcard","require","_propTypes","_interopRequireDefault","_antd","_icons","_utils","_excluded","obj","__esModule","_getRequireWildcardCache","e","WeakMap","r","t","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","_extends","assign","bind","target","arguments","length","source","key","apply","_toConsumableArray","arr","_arrayWithoutHoles","_iterableToArray","_unsupportedIterableToArray","_nonIterableSpread","TypeError","iter","Symbol","iterator","Array","from","isArray","_arrayLikeToArray","ownKeys","keys","getOwnPropertySymbols","o","filter","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","_toPrimitive","String","toPrimitive","Number","_slicedToArray","_arrayWithHoles","_iterableToArrayLimit","_nonIterableRest","minLen","toString","slice","constructor","name","test","len","arr2","l","f","next","done","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","getParentKey","tree","parentKey","node","children","some","item","VtxTree","_ref","_ref$prefixCls","prefixCls","_ref$showSearch","showSearch","_ref$treeData","treeData","_ref$searchPlaceholde","searchPlaceholder","renderMenuList","fieldNames","props","treeRef","useRef","_useState","useState","_useState2","height","setHeight","_useState3","_useState4","searchValue","setSearchValue","_useState5","_useState6","expandedKeys","setExpandedKeys","_useState7","autoExpandParent","_useState8","setAutoExpandParent","_useState9","selectedKeys","defaultSelectedKeys","_useState10","setSelectedKeys","lastSelectedKey","React","cachedSelectedKeys","dataList","useMemo","titleKey","title","generateList","data","useEffect","onExpand","newExpandedKeys","info","_props$onExpand","onChange","_props$onExpand2","map","self","current","offsetHeight","onSelect","event","_props$onSelect","multiple","nativeEvent","_node$key","newEvent","selected","ctrlPick","ctrlKey","metaKey","shiftPick","shiftKey","newSelectedKeys","selectedNodes","convertDirectoryKeysToNodes","Set","concat","calcRangeKeys","startKey","endKey","newTreeData","loop","strTitle","index","beforeStr","substring","afterStr","createElement","className","Input","style","marginBottom","placeholder","ref","Tree","switcherIcon","DownOutlined","showLine","showLeafIcon","blockNode","expandAction","titleRender","nodeData","menuList","visible","Tooltip","label","onClick","stopPropagation","icon","propTypes","PropTypes","bool","string","array","func","_default","exports"],"sources":["vtx-tree/index.jsx"],"sourcesContent":["import React, { useEffect, useMemo, useRef, useState } from 'react';\nimport PropTypes from 'prop-types';\nimport { Input, Tooltip, Tree } from 'antd';\nimport { DownOutlined } from '@ant-design/icons';\nimport { calcRangeKeys, convertDirectoryKeysToNodes } from './utils';\n\nconst getParentKey = (key, tree) => {\n let parentKey;\n for (let i = 0; i < tree.length; i++) {\n const node = tree[i];\n if (node.children) {\n if (node.children.some(item => item.key === key)) {\n parentKey = node.key;\n } else if (getParentKey(key, node.children)) {\n parentKey = getParentKey(key, node.children);\n }\n }\n }\n return parentKey;\n};\n\nconst VtxTree = ({\n prefixCls = 'vtx-tree',\n showSearch = true,\n treeData = [],\n searchPlaceholder = '请输入要查询的关键字',\n renderMenuList,\n fieldNames,\n ...props\n}) => {\n const treeRef = useRef();\n const [height, setHeight] = useState(0);\n const [searchValue, setSearchValue] = useState('');\n const [expandedKeys, setExpandedKeys] = useState([]);\n const [autoExpandParent, setAutoExpandParent] = useState(props.autoExpandParent || false);\n const [selectedKeys, setSelectedKeys] = useState(\n props.selectedKeys || props.defaultSelectedKeys || [],\n );\n\n const lastSelectedKey = React.useRef();\n\n const cachedSelectedKeys = React.useRef();\n\n const dataList = useMemo(() => {\n let dataList = [];\n const titleKey = fieldNames?.title || 'title';\n const generateList = data => {\n for (let i = 0; i < data.length; i++) {\n const node = data[i];\n const { key } = node;\n dataList.push({ key, title: node[titleKey] });\n if (node.children) {\n generateList(node.children);\n }\n }\n };\n generateList(treeData);\n return dataList;\n }, [treeData]);\n\n useEffect(() => {\n if ('selectedKeys' in props) {\n setSelectedKeys(props.selectedKeys);\n }\n }, [props.selectedKeys]);\n\n useEffect(() => {\n if ('expandedKeys' in props) {\n setExpandedKeys(props.expandedKeys);\n }\n }, [props.expandedKeys]);\n\n const onExpand = (newExpandedKeys, info) => {\n setAutoExpandParent(false);\n props.onExpand?.(newExpandedKeys, info);\n if (!('expandedKeys' in props)) {\n setExpandedKeys(newExpandedKeys);\n }\n };\n\n const onChange = e => {\n const { value } = e.target;\n const newExpandedKeys = dataList\n .map(item => {\n if (item.title.indexOf(value) > -1) {\n return getParentKey(item.key, treeData);\n }\n return null;\n })\n .filter((item, i, self) => item && self.indexOf(item) === i);\n setSearchValue(value);\n setAutoExpandParent(true);\n props.onExpand?.(newExpandedKeys);\n if (!('expandedKeys' in props)) {\n setExpandedKeys(newExpandedKeys);\n }\n };\n\n useEffect(() => {\n setHeight(treeRef.current.offsetHeight);\n }, []);\n\n const onSelect = (keys, event) => {\n const { multiple } = props;\n const { node, nativeEvent } = event;\n const { key = '' } = node;\n // const newState: DirectoryTreeState = {};\n\n // We need wrap this event since some value is not same\n const newEvent = {\n ...event,\n selected: true, // Directory selected always true\n };\n\n // Windows / Mac single pick\n const ctrlPick = nativeEvent?.ctrlKey || nativeEvent?.metaKey;\n const shiftPick = nativeEvent?.shiftKey;\n\n // Generate new selected keys\n let newSelectedKeys;\n if (multiple && ctrlPick) {\n // Control click\n newSelectedKeys = keys;\n lastSelectedKey.current = key;\n cachedSelectedKeys.current = newSelectedKeys;\n newEvent.selectedNodes = convertDirectoryKeysToNodes(treeData, newSelectedKeys);\n } else if (multiple && shiftPick) {\n // Shift click\n newSelectedKeys = Array.from(\n new Set([\n ...(cachedSelectedKeys.current || []),\n ...calcRangeKeys({\n treeData,\n expandedKeys,\n startKey: key,\n endKey: lastSelectedKey.current,\n }),\n ]),\n );\n newEvent.selectedNodes = convertDirectoryKeysToNodes(treeData, newSelectedKeys);\n } else {\n // Single click\n newSelectedKeys = [key];\n lastSelectedKey.current = key;\n cachedSelectedKeys.current = newSelectedKeys;\n newEvent.selectedNodes = convertDirectoryKeysToNodes(treeData, newSelectedKeys);\n }\n\n props.onSelect?.(newSelectedKeys, newEvent);\n if (!('selectedKeys' in props)) {\n setSelectedKeys(newSelectedKeys);\n }\n };\n\n const newTreeData = useMemo(() => {\n const loop = data =>\n data.map(item => {\n const titleKey = fieldNames?.title || 'title';\n const strTitle = item[titleKey];\n const index = strTitle.indexOf(searchValue);\n const beforeStr = strTitle.substring(0, index);\n const afterStr = strTitle.slice(index + searchValue.length);\n const title =\n index > -1 ? (\n <span>\n {beforeStr}\n <span className={`${prefixCls}-search-value`}>{searchValue}</span>\n {afterStr}\n </span>\n ) : (\n <span>{strTitle}</span>\n );\n if (item.children) {\n return {\n ...item,\n [titleKey]: title,\n key: item.key,\n children: loop(item.children),\n };\n }\n\n return {\n ...item,\n [titleKey]: title,\n key: item.key,\n };\n });\n return loop(treeData);\n }, [treeData, searchValue]);\n return (\n <div className={`${prefixCls}-wraaper`}>\n {showSearch && (\n <Input\n style={{ marginBottom: 8 }}\n placeholder={searchPlaceholder}\n onChange={onChange}\n />\n )}\n <div className={prefixCls} ref={treeRef}>\n <Tree\n {...props}\n height={height}\n switcherIcon={<DownOutlined />}\n showLine={{ showLeafIcon: false }}\n blockNode\n treeData={newTreeData}\n onExpand={onExpand}\n expandedKeys={expandedKeys}\n autoExpandParent={autoExpandParent}\n selectedKeys={selectedKeys}\n onSelect={onSelect}\n expandAction=\"click\"\n titleRender={nodeData => {\n const titleKey = fieldNames?.title || 'title';\n const title = nodeData[titleKey];\n\n if (renderMenuList) {\n const menuList = renderMenuList(nodeData);\n return (\n <div className={`${prefixCls}-menu-wrap`}>\n <span>{title}</span>\n <div className={`${prefixCls}-menu-list`}>\n {menuList\n .filter(item => item.visible)\n .map(item => (\n <Tooltip key={item.label} title={item.label}>\n <span\n className={`${prefixCls}-menu-item-icon`}\n onClick={e => {\n e.stopPropagation();\n item.onClick && item.onClick(nodeData);\n }}\n >\n {item.icon}\n </span>\n </Tooltip>\n ))}\n </div>\n </div>\n );\n }\n return title;\n }}\n />\n </div>\n </div>\n );\n};\n\nVtxTree.propTypes = {\n showSearch: PropTypes.bool,\n prefixCls: PropTypes.string,\n treeData: PropTypes.array,\n selectedKeys: PropTypes.array,\n defaultSelectedKeys: PropTypes.array,\n expandedKeys: PropTypes.bool,\n onExpand: PropTypes.func,\n multiple: PropTypes.bool,\n autoExpandParent: PropTypes.bool,\n onSelect: PropTypes.func,\n searchPlaceholder: PropTypes.string,\n renderMenuList: PropTypes.func,\n fieldNames: PropTypes.array,\n};\n\nexport default VtxTree;\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"css.js","names":["require"],"sources":["vtx-tree/style/index.js"],"sourcesContent":["import 'antd/lib/tree/style/index';\r\nimport 'antd/lib/input/style';\r\nimport './index.less';\r\n"],"mappings":";;AAAAA,OAAA;AACAA,OAAA;AACAA,OAAA","ignoreList":[]}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
.vtx-tree {
|
|
2
|
+
-webkit-box-flex: 1;
|
|
3
|
+
-ms-flex: 1;
|
|
4
|
+
flex: 1;
|
|
5
|
+
min-height: 0;
|
|
6
|
+
overflow-x: auto;
|
|
7
|
+
}
|
|
8
|
+
.vtx-tree *::-webkit-scrollbar {
|
|
9
|
+
height: 8px;
|
|
10
|
+
background-color: hsla(0, 0%, 80%, 0.08);
|
|
11
|
+
}
|
|
12
|
+
.vtx-tree *::-webkit-scrollbar-thumb {
|
|
13
|
+
background-color: #c0c0c0;
|
|
14
|
+
border-radius: 20px;
|
|
15
|
+
}
|
|
16
|
+
.vtx-tree-search-value {
|
|
17
|
+
color: #1890ff;
|
|
18
|
+
}
|
|
19
|
+
.vtx-tree-wraaper {
|
|
20
|
+
display: -webkit-box;
|
|
21
|
+
display: -ms-flexbox;
|
|
22
|
+
display: flex;
|
|
23
|
+
-webkit-box-orient: vertical;
|
|
24
|
+
-webkit-box-direction: normal;
|
|
25
|
+
-ms-flex-direction: column;
|
|
26
|
+
flex-direction: column;
|
|
27
|
+
-webkit-box-sizing: border-box;
|
|
28
|
+
box-sizing: border-box;
|
|
29
|
+
height: 100%;
|
|
30
|
+
}
|
|
31
|
+
.vtx-tree-wraaper::-webkit-scrollbar-thumb {
|
|
32
|
+
background-color: #c0c0c0;
|
|
33
|
+
border-radius: 20px;
|
|
34
|
+
}
|
|
35
|
+
.vtx-tree-menu-wrap {
|
|
36
|
+
display: -webkit-box;
|
|
37
|
+
display: -ms-flexbox;
|
|
38
|
+
display: flex;
|
|
39
|
+
-webkit-box-pack: justify;
|
|
40
|
+
-ms-flex-pack: justify;
|
|
41
|
+
justify-content: space-between;
|
|
42
|
+
}
|
|
43
|
+
.vtx-tree-menu-list {
|
|
44
|
+
display: -webkit-box;
|
|
45
|
+
display: -ms-flexbox;
|
|
46
|
+
display: flex;
|
|
47
|
+
-webkit-box-align: center;
|
|
48
|
+
-ms-flex-align: center;
|
|
49
|
+
align-items: center;
|
|
50
|
+
gap: 4px;
|
|
51
|
+
}
|
|
52
|
+
.vtx-tree-menu-item-icon:hover {
|
|
53
|
+
color: #1677ff;
|
|
54
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","names":["require"],"sources":["vtx-tree/style/index.js"],"sourcesContent":["import 'antd/lib/tree/style/index';\r\nimport 'antd/lib/input/style';\r\nimport './index.less';\r\n"],"mappings":";;AAAAA,OAAA;AACAA,OAAA;AACAA,OAAA","ignoreList":[]}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
@import (reference) '~antd/lib/style/themes/index.less';
|
|
2
|
+
|
|
3
|
+
@prefix-cls: vtx-tree;
|
|
4
|
+
|
|
5
|
+
.@{prefix-cls} {
|
|
6
|
+
flex: 1;
|
|
7
|
+
min-height: 0;
|
|
8
|
+
overflow-x: auto;
|
|
9
|
+
* {
|
|
10
|
+
&::-webkit-scrollbar when(@theme=dark) {
|
|
11
|
+
background-color: @body-background;
|
|
12
|
+
}
|
|
13
|
+
&::-webkit-scrollbar when(@theme=default) {
|
|
14
|
+
height: 8px;
|
|
15
|
+
background-color: hsla(0, 0%, 80%, 0.08);
|
|
16
|
+
}
|
|
17
|
+
&::-webkit-scrollbar-thumb when(@theme=dark) {
|
|
18
|
+
background-color: #434343;
|
|
19
|
+
border-radius: 20px;
|
|
20
|
+
}
|
|
21
|
+
&::-webkit-scrollbar-thumb when(@theme=default) {
|
|
22
|
+
background-color: #c0c0c0;
|
|
23
|
+
border-radius: 20px;
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
&-search-value {
|
|
27
|
+
color: #1890ff;
|
|
28
|
+
}
|
|
29
|
+
&-wraaper {
|
|
30
|
+
display: flex;
|
|
31
|
+
flex-direction: column;
|
|
32
|
+
box-sizing: border-box;
|
|
33
|
+
height: 100%;
|
|
34
|
+
&::-webkit-scrollbar-thumb when(@theme=default) {
|
|
35
|
+
background-color: #c0c0c0;
|
|
36
|
+
border-radius: 20px;
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
&-menu-wrap {
|
|
40
|
+
display: flex;
|
|
41
|
+
justify-content: space-between;
|
|
42
|
+
}
|
|
43
|
+
&-menu-list {
|
|
44
|
+
display: flex;
|
|
45
|
+
align-items: center;
|
|
46
|
+
gap: 4px;
|
|
47
|
+
}
|
|
48
|
+
&-menu-item-icon {
|
|
49
|
+
&:hover {
|
|
50
|
+
color: #1677ff;
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
}
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.calcRangeKeys = calcRangeKeys;
|
|
7
|
+
exports.convertDirectoryKeysToNodes = convertDirectoryKeysToNodes;
|
|
8
|
+
function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
|
|
9
|
+
function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
10
|
+
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
11
|
+
function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
|
|
12
|
+
function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
|
|
13
|
+
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
|
|
14
|
+
function traverseNodesKey(treeData, callback) {
|
|
15
|
+
function processNode(dataNode) {
|
|
16
|
+
var key = dataNode.key,
|
|
17
|
+
children = dataNode.children;
|
|
18
|
+
if (callback(key, dataNode) !== false) {
|
|
19
|
+
traverseNodesKey(children || [], callback);
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
treeData.forEach(processNode);
|
|
23
|
+
}
|
|
24
|
+
var Record = {
|
|
25
|
+
None: 0,
|
|
26
|
+
Start: 1,
|
|
27
|
+
End: 2
|
|
28
|
+
};
|
|
29
|
+
|
|
30
|
+
/** 计算选中范围,只考虑expanded情况以优化性能 */
|
|
31
|
+
function calcRangeKeys(_ref) {
|
|
32
|
+
var treeData = _ref.treeData,
|
|
33
|
+
expandedKeys = _ref.expandedKeys,
|
|
34
|
+
startKey = _ref.startKey,
|
|
35
|
+
endKey = _ref.endKey;
|
|
36
|
+
var keys = [];
|
|
37
|
+
var record = Record.None;
|
|
38
|
+
if (startKey && startKey === endKey) {
|
|
39
|
+
return [startKey];
|
|
40
|
+
}
|
|
41
|
+
if (!startKey || !endKey) {
|
|
42
|
+
return [];
|
|
43
|
+
}
|
|
44
|
+
function matchKey(key) {
|
|
45
|
+
return key === startKey || key === endKey;
|
|
46
|
+
}
|
|
47
|
+
traverseNodesKey(treeData, function (key) {
|
|
48
|
+
if (record === Record.End) {
|
|
49
|
+
return false;
|
|
50
|
+
}
|
|
51
|
+
if (matchKey(key)) {
|
|
52
|
+
// Match test
|
|
53
|
+
keys.push(key);
|
|
54
|
+
if (record === Record.None) {
|
|
55
|
+
record = Record.Start;
|
|
56
|
+
} else if (record === Record.Start) {
|
|
57
|
+
record = Record.End;
|
|
58
|
+
return false;
|
|
59
|
+
}
|
|
60
|
+
} else if (record === Record.Start) {
|
|
61
|
+
// Append selection
|
|
62
|
+
keys.push(key);
|
|
63
|
+
}
|
|
64
|
+
return expandedKeys.includes(key);
|
|
65
|
+
});
|
|
66
|
+
return keys;
|
|
67
|
+
}
|
|
68
|
+
function convertDirectoryKeysToNodes(treeData, keys) {
|
|
69
|
+
var restKeys = _toConsumableArray(keys);
|
|
70
|
+
var nodes = [];
|
|
71
|
+
traverseNodesKey(treeData, function (key, node) {
|
|
72
|
+
var index = restKeys.indexOf(key);
|
|
73
|
+
if (index !== -1) {
|
|
74
|
+
nodes.push(node);
|
|
75
|
+
restKeys.splice(index, 1);
|
|
76
|
+
}
|
|
77
|
+
return !!restKeys.length;
|
|
78
|
+
});
|
|
79
|
+
return nodes;
|
|
80
|
+
}
|
|
81
|
+
//# sourceMappingURL=utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.js","names":["traverseNodesKey","treeData","callback","processNode","dataNode","key","children","forEach","Record","None","Start","End","calcRangeKeys","_ref","expandedKeys","startKey","endKey","keys","record","matchKey","push","includes","convertDirectoryKeysToNodes","restKeys","_toConsumableArray","nodes","node","index","indexOf","splice","length"],"sources":["vtx-tree/utils.js"],"sourcesContent":["function traverseNodesKey(treeData, callback) {\r\n function processNode(dataNode) {\r\n const { key, children } = dataNode;\r\n if (callback(key, dataNode) !== false) {\r\n traverseNodesKey(children || [], callback);\r\n }\r\n }\r\n\r\n treeData.forEach(processNode);\r\n}\r\n\r\nconst Record = {\r\n None: 0,\r\n Start: 1,\r\n End: 2,\r\n};\r\n\r\n/** 计算选中范围,只考虑expanded情况以优化性能 */\r\nexport function calcRangeKeys({ treeData, expandedKeys, startKey, endKey }) {\r\n const keys = [];\r\n let record = Record.None;\r\n\r\n if (startKey && startKey === endKey) {\r\n return [startKey];\r\n }\r\n if (!startKey || !endKey) {\r\n return [];\r\n }\r\n\r\n function matchKey(key) {\r\n return key === startKey || key === endKey;\r\n }\r\n\r\n traverseNodesKey(treeData, key => {\r\n if (record === Record.End) {\r\n return false;\r\n }\r\n\r\n if (matchKey(key)) {\r\n // Match test\r\n keys.push(key);\r\n\r\n if (record === Record.None) {\r\n record = Record.Start;\r\n } else if (record === Record.Start) {\r\n record = Record.End;\r\n return false;\r\n }\r\n } else if (record === Record.Start) {\r\n // Append selection\r\n keys.push(key);\r\n }\r\n return expandedKeys.includes(key);\r\n });\r\n\r\n return keys;\r\n}\r\n\r\nexport function convertDirectoryKeysToNodes(treeData, keys) {\r\n const restKeys = [...keys];\r\n const nodes = [];\r\n traverseNodesKey(treeData, (key, node) => {\r\n const index = restKeys.indexOf(key);\r\n if (index !== -1) {\r\n nodes.push(node);\r\n restKeys.splice(index, 1);\r\n }\r\n\r\n return !!restKeys.length;\r\n });\r\n return nodes;\r\n}\r\n"],"mappings":";;;;;;;;;;;;;AAAA,SAASA,gBAAgBA,CAACC,QAAQ,EAAEC,QAAQ,EAAE;EAC1C,SAASC,WAAWA,CAACC,QAAQ,EAAE;IAC3B,IAAQC,GAAG,GAAeD,QAAQ,CAA1BC,GAAG;MAAEC,QAAQ,GAAKF,QAAQ,CAArBE,QAAQ;IACrB,IAAIJ,QAAQ,CAACG,GAAG,EAAED,QAAQ,CAAC,KAAK,KAAK,EAAE;MACnCJ,gBAAgB,CAACM,QAAQ,IAAI,EAAE,EAAEJ,QAAQ,CAAC;IAC9C;EACJ;EAEAD,QAAQ,CAACM,OAAO,CAACJ,WAAW,CAAC;AACjC;AAEA,IAAMK,MAAM,GAAG;EACXC,IAAI,EAAE,CAAC;EACPC,KAAK,EAAE,CAAC;EACRC,GAAG,EAAE;AACT,CAAC;;AAED;AACO,SAASC,aAAaA,CAAAC,IAAA,EAA+C;EAAA,IAA5CZ,QAAQ,GAAAY,IAAA,CAARZ,QAAQ;IAAEa,YAAY,GAAAD,IAAA,CAAZC,YAAY;IAAEC,QAAQ,GAAAF,IAAA,CAARE,QAAQ;IAAEC,MAAM,GAAAH,IAAA,CAANG,MAAM;EACpE,IAAMC,IAAI,GAAG,EAAE;EACf,IAAIC,MAAM,GAAGV,MAAM,CAACC,IAAI;EAExB,IAAIM,QAAQ,IAAIA,QAAQ,KAAKC,MAAM,EAAE;IACjC,OAAO,CAACD,QAAQ,CAAC;EACrB;EACA,IAAI,CAACA,QAAQ,IAAI,CAACC,MAAM,EAAE;IACtB,OAAO,EAAE;EACb;EAEA,SAASG,QAAQA,CAACd,GAAG,EAAE;IACnB,OAAOA,GAAG,KAAKU,QAAQ,IAAIV,GAAG,KAAKW,MAAM;EAC7C;EAEAhB,gBAAgB,CAACC,QAAQ,EAAE,UAAAI,GAAG,EAAI;IAC9B,IAAIa,MAAM,KAAKV,MAAM,CAACG,GAAG,EAAE;MACvB,OAAO,KAAK;IAChB;IAEA,IAAIQ,QAAQ,CAACd,GAAG,CAAC,EAAE;MACf;MACAY,IAAI,CAACG,IAAI,CAACf,GAAG,CAAC;MAEd,IAAIa,MAAM,KAAKV,MAAM,CAACC,IAAI,EAAE;QACxBS,MAAM,GAAGV,MAAM,CAACE,KAAK;MACzB,CAAC,MAAM,IAAIQ,MAAM,KAAKV,MAAM,CAACE,KAAK,EAAE;QAChCQ,MAAM,GAAGV,MAAM,CAACG,GAAG;QACnB,OAAO,KAAK;MAChB;IACJ,CAAC,MAAM,IAAIO,MAAM,KAAKV,MAAM,CAACE,KAAK,EAAE;MAChC;MACAO,IAAI,CAACG,IAAI,CAACf,GAAG,CAAC;IAClB;IACA,OAAOS,YAAY,CAACO,QAAQ,CAAChB,GAAG,CAAC;EACrC,CAAC,CAAC;EAEF,OAAOY,IAAI;AACf;AAEO,SAASK,2BAA2BA,CAACrB,QAAQ,EAAEgB,IAAI,EAAE;EACxD,IAAMM,QAAQ,GAAAC,kBAAA,CAAOP,IAAI,CAAC;EAC1B,IAAMQ,KAAK,GAAG,EAAE;EAChBzB,gBAAgB,CAACC,QAAQ,EAAE,UAACI,GAAG,EAAEqB,IAAI,EAAK;IACtC,IAAMC,KAAK,GAAGJ,QAAQ,CAACK,OAAO,CAACvB,GAAG,CAAC;IACnC,IAAIsB,KAAK,KAAK,CAAC,CAAC,EAAE;MACdF,KAAK,CAACL,IAAI,CAACM,IAAI,CAAC;MAChBH,QAAQ,CAACM,MAAM,CAACF,KAAK,EAAE,CAAC,CAAC;IAC7B;IAEA,OAAO,CAAC,CAACJ,QAAQ,CAACO,MAAM;EAC5B,CAAC,CAAC;EACF,OAAOL,KAAK;AAChB","ignoreList":[]}
|
|
@@ -0,0 +1,185 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports["default"] = void 0;
|
|
8
|
+
var _antd = require("antd");
|
|
9
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
10
|
+
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
11
|
+
var _icons = require("@ant-design/icons");
|
|
12
|
+
var _classnames = _interopRequireDefault(require("classnames"));
|
|
13
|
+
var _lodash = require("lodash");
|
|
14
|
+
var _excluded = ["multiple", "treeData", "placeholder", "prefixCls", "treeCheckable", "disabled", "style"],
|
|
15
|
+
_excluded2 = ["children"];
|
|
16
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
17
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
|
|
18
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
|
|
19
|
+
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
20
|
+
function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
|
|
21
|
+
function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
22
|
+
function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
|
|
23
|
+
function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
|
|
24
|
+
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
25
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
26
|
+
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
27
|
+
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
|
|
28
|
+
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
|
29
|
+
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
|
30
|
+
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
31
|
+
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
32
|
+
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
|
|
33
|
+
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
|
|
34
|
+
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
35
|
+
function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
|
|
36
|
+
function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
|
|
37
|
+
var VtxTreeSelect = function VtxTreeSelect(_ref) {
|
|
38
|
+
var multiple = _ref.multiple,
|
|
39
|
+
treeData = _ref.treeData,
|
|
40
|
+
placeholder = _ref.placeholder,
|
|
41
|
+
_ref$prefixCls = _ref.prefixCls,
|
|
42
|
+
prefixCls = _ref$prefixCls === void 0 ? 'vtx-tree-select' : _ref$prefixCls,
|
|
43
|
+
treeCheckable = _ref.treeCheckable,
|
|
44
|
+
_ref$disabled = _ref.disabled,
|
|
45
|
+
disabled = _ref$disabled === void 0 ? false : _ref$disabled,
|
|
46
|
+
style = _ref.style,
|
|
47
|
+
props = _objectWithoutProperties(_ref, _excluded);
|
|
48
|
+
var suffixIconObj = {};
|
|
49
|
+
var _useState = (0, _react.useState)(0),
|
|
50
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
51
|
+
popWidth = _useState2[0],
|
|
52
|
+
setPopWidth = _useState2[1];
|
|
53
|
+
var keyNodesMapping = (0, _react.useMemo)(function () {
|
|
54
|
+
var keyNodesMapping = {};
|
|
55
|
+
(function genNodes(nodes) {
|
|
56
|
+
nodes.map(function (item) {
|
|
57
|
+
var children = item.children,
|
|
58
|
+
rest = _objectWithoutProperties(item, _excluded2);
|
|
59
|
+
keyNodesMapping[item.value || item.key] = _objectSpread(_objectSpread({}, rest), {}, {
|
|
60
|
+
id: item.value || item.key
|
|
61
|
+
});
|
|
62
|
+
if (Array.isArray(children) && children.length > 0) {
|
|
63
|
+
genNodes(children);
|
|
64
|
+
}
|
|
65
|
+
});
|
|
66
|
+
})(treeData || []);
|
|
67
|
+
return keyNodesMapping;
|
|
68
|
+
}, [treeData]);
|
|
69
|
+
var clear = function clear() {
|
|
70
|
+
var _props$onChange;
|
|
71
|
+
(_props$onChange = props.onChange) === null || _props$onChange === void 0 || _props$onChange.call(props, [], [], {});
|
|
72
|
+
};
|
|
73
|
+
var clearKey = function clearKey(id) {
|
|
74
|
+
var _props$onChange2;
|
|
75
|
+
var newValue = _toConsumableArray(props.value);
|
|
76
|
+
(0, _lodash.pull)(newValue, id);
|
|
77
|
+
var label = newValue.map(function (item) {
|
|
78
|
+
return keyNodesMapping[item].title;
|
|
79
|
+
});
|
|
80
|
+
(_props$onChange2 = props.onChange) === null || _props$onChange2 === void 0 || _props$onChange2.call(props, newValue, label, {});
|
|
81
|
+
};
|
|
82
|
+
var selectedNodes = (0, _react.useMemo)(function () {
|
|
83
|
+
var value_arr = function (val) {
|
|
84
|
+
if (Array.isArray(val)) {
|
|
85
|
+
return val;
|
|
86
|
+
} else if (val) {
|
|
87
|
+
return [val];
|
|
88
|
+
} else {
|
|
89
|
+
return [];
|
|
90
|
+
}
|
|
91
|
+
}(props.value);
|
|
92
|
+
var selectedNodes = value_arr.filter(function (k) {
|
|
93
|
+
return k in keyNodesMapping;
|
|
94
|
+
}).map(function (item) {
|
|
95
|
+
return {
|
|
96
|
+
id: item,
|
|
97
|
+
name: keyNodesMapping[item].title
|
|
98
|
+
};
|
|
99
|
+
});
|
|
100
|
+
return selectedNodes;
|
|
101
|
+
}, [props.value, keyNodesMapping]);
|
|
102
|
+
var ref = (0, _react.useRef)();
|
|
103
|
+
(0, _react.useEffect)(function () {
|
|
104
|
+
setPopWidth(ref.current.offsetWidth);
|
|
105
|
+
}, []);
|
|
106
|
+
if (multiple || treeCheckable) {
|
|
107
|
+
suffixIconObj.suffixIcon = /*#__PURE__*/_react["default"].createElement(_antd.Popover, {
|
|
108
|
+
content: /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement("div", {
|
|
109
|
+
className: (0, _classnames["default"])('vtx-tree-count-head')
|
|
110
|
+
}, /*#__PURE__*/_react["default"].createElement("span", null, "\u5DF2\u9009\u62E9\uFF1A", selectedNodes.length), /*#__PURE__*/_react["default"].createElement("span", {
|
|
111
|
+
className: (0, _classnames["default"])(selectedNodes.length > 0 && !disabled ? 'clear-count' : 'disabled-count'),
|
|
112
|
+
onClick: function onClick(e) {
|
|
113
|
+
if (!disabled) {
|
|
114
|
+
e.stopPropagation();
|
|
115
|
+
clear();
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
}, "\u6E05\u7A7A\u5DF2\u9009\u9879")), selectedNodes.length > 0 ? selectedNodes.map(function (item) {
|
|
119
|
+
return /*#__PURE__*/_react["default"].createElement(_antd.Tag, {
|
|
120
|
+
key: "tab-".concat(item.id),
|
|
121
|
+
closable: !disabled,
|
|
122
|
+
onClose: function onClose(e) {
|
|
123
|
+
e.stopPropagation();
|
|
124
|
+
clearKey(item.id);
|
|
125
|
+
},
|
|
126
|
+
style: {
|
|
127
|
+
marginBottom: '5px'
|
|
128
|
+
}
|
|
129
|
+
}, item.name.length > 20 ? "".concat(item.name.slice(0, 20), "...") : item.name);
|
|
130
|
+
}) : /*#__PURE__*/_react["default"].createElement(_antd.Empty, {
|
|
131
|
+
image: _antd.Empty.PRESENTED_IMAGE_SIMPLE
|
|
132
|
+
})),
|
|
133
|
+
placement: "bottomRight",
|
|
134
|
+
trigger: "click",
|
|
135
|
+
overlayStyle: {
|
|
136
|
+
width: popWidth
|
|
137
|
+
}
|
|
138
|
+
}, /*#__PURE__*/_react["default"].createElement(_antd.Button, {
|
|
139
|
+
className: "vtx-tree-count",
|
|
140
|
+
icon: /*#__PURE__*/_react["default"].createElement(_icons.MoreOutlined, null),
|
|
141
|
+
size: "default",
|
|
142
|
+
onClick: function onClick(e) {
|
|
143
|
+
e.stopPropagation();
|
|
144
|
+
}
|
|
145
|
+
}));
|
|
146
|
+
}
|
|
147
|
+
return /*#__PURE__*/_react["default"].createElement("div", {
|
|
148
|
+
ref: ref,
|
|
149
|
+
style: style
|
|
150
|
+
}, /*#__PURE__*/_react["default"].createElement(_antd.TreeSelect, _extends({
|
|
151
|
+
showSearch: true,
|
|
152
|
+
dropdownStyle: {
|
|
153
|
+
maxHeight: 300,
|
|
154
|
+
overflow: 'auto'
|
|
155
|
+
},
|
|
156
|
+
placeholder: placeholder,
|
|
157
|
+
treeData: treeData,
|
|
158
|
+
treeLine: {
|
|
159
|
+
showLeafIcon: false
|
|
160
|
+
},
|
|
161
|
+
switcherIcon: /*#__PURE__*/_react["default"].createElement(_icons.DownOutlined, null)
|
|
162
|
+
}, props, {
|
|
163
|
+
multiple: multiple,
|
|
164
|
+
treeCheckable: treeCheckable,
|
|
165
|
+
className: prefixCls,
|
|
166
|
+
popupClassName: "".concat(prefixCls, "-popup"),
|
|
167
|
+
showArrow: true,
|
|
168
|
+
style: {
|
|
169
|
+
width: '100%'
|
|
170
|
+
}
|
|
171
|
+
}, suffixIconObj)));
|
|
172
|
+
};
|
|
173
|
+
VtxTreeSelect.propTypes = {
|
|
174
|
+
multiple: _propTypes["default"].bool,
|
|
175
|
+
treeCheckable: _propTypes["default"].bool,
|
|
176
|
+
disabled: _propTypes["default"].bool,
|
|
177
|
+
treeData: _propTypes["default"].array,
|
|
178
|
+
placeholder: _propTypes["default"].string,
|
|
179
|
+
prefixCls: _propTypes["default"].string,
|
|
180
|
+
style: _propTypes["default"].object,
|
|
181
|
+
onChange: _propTypes["default"].func,
|
|
182
|
+
value: _propTypes["default"].oneOfType([_propTypes["default"].string, _propTypes["default"].array])
|
|
183
|
+
};
|
|
184
|
+
var _default = exports["default"] = VtxTreeSelect;
|
|
185
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","names":["_antd","require","_react","_interopRequireWildcard","_propTypes","_interopRequireDefault","_icons","_classnames","_lodash","_excluded","_excluded2","obj","__esModule","_getRequireWildcardCache","e","WeakMap","r","t","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","_extends","assign","bind","target","arguments","length","source","key","apply","_toConsumableArray","arr","_arrayWithoutHoles","_iterableToArray","_unsupportedIterableToArray","_nonIterableSpread","TypeError","iter","Symbol","iterator","Array","from","isArray","_arrayLikeToArray","ownKeys","keys","getOwnPropertySymbols","o","filter","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","_toPrimitive","String","toPrimitive","Number","_slicedToArray","_arrayWithHoles","_iterableToArrayLimit","_nonIterableRest","minLen","toString","slice","constructor","name","test","len","arr2","l","f","next","done","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","VtxTreeSelect","_ref","multiple","treeData","placeholder","_ref$prefixCls","prefixCls","treeCheckable","_ref$disabled","disabled","style","props","suffixIconObj","_useState","useState","_useState2","popWidth","setPopWidth","keyNodesMapping","useMemo","genNodes","nodes","map","item","children","rest","id","clear","_props$onChange","onChange","clearKey","_props$onChange2","newValue","pull","label","title","selectedNodes","value_arr","val","k","ref","useRef","useEffect","current","offsetWidth","suffixIcon","createElement","Popover","content","Fragment","className","classnames","onClick","stopPropagation","Tag","concat","closable","onClose","marginBottom","Empty","image","PRESENTED_IMAGE_SIMPLE","placement","trigger","overlayStyle","width","Button","icon","MoreOutlined","size","TreeSelect","showSearch","dropdownStyle","maxHeight","overflow","treeLine","showLeafIcon","switcherIcon","DownOutlined","popupClassName","showArrow","propTypes","PropTypes","bool","array","string","object","func","oneOfType","_default","exports"],"sources":["vtx-tree-select/index.jsx"],"sourcesContent":["import { Button, Empty, Popover, Tag, TreeSelect } from 'antd';\r\nimport React, { useEffect, useMemo, useRef, useState } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport { DownOutlined, MoreOutlined } from '@ant-design/icons';\r\nimport classnames from 'classnames';\r\nimport { pull } from 'lodash';\r\nconst VtxTreeSelect = ({\r\n multiple,\r\n treeData,\r\n placeholder,\r\n prefixCls = 'vtx-tree-select',\r\n treeCheckable,\r\n disabled = false,\r\n style,\r\n ...props\r\n}) => {\r\n let suffixIconObj = {};\r\n const [popWidth, setPopWidth] = useState(0);\r\n\r\n const keyNodesMapping = useMemo(() => {\r\n const keyNodesMapping = {};\r\n (function genNodes(nodes) {\r\n nodes.map(item => {\r\n const { children, ...rest } = item;\r\n keyNodesMapping[item.value || item.key] = {\r\n ...rest,\r\n id: item.value || item.key,\r\n };\r\n if (Array.isArray(children) && children.length > 0) {\r\n genNodes(children);\r\n }\r\n });\r\n })(treeData || []);\r\n return keyNodesMapping;\r\n }, [treeData]);\r\n\r\n const clear = () => {\r\n props.onChange?.([], [], {});\r\n };\r\n\r\n const clearKey = id => {\r\n const newValue = [...props.value];\r\n pull(newValue, id);\r\n const label = newValue.map(item => keyNodesMapping[item].title);\r\n props.onChange?.(newValue, label, {});\r\n };\r\n\r\n const selectedNodes = useMemo(() => {\r\n const value_arr = (function(val) {\r\n if (Array.isArray(val)) {\r\n return val;\r\n } else if (val) {\r\n return [val];\r\n } else {\r\n return [];\r\n }\r\n })(props.value);\r\n const selectedNodes = value_arr\r\n .filter(k => k in keyNodesMapping)\r\n .map(item => ({\r\n id: item,\r\n name: keyNodesMapping[item].title,\r\n }));\r\n return selectedNodes;\r\n }, [props.value, keyNodesMapping]);\r\n\r\n const ref = useRef();\r\n\r\n useEffect(() => {\r\n setPopWidth(ref.current.offsetWidth);\r\n }, []);\r\n\r\n if (multiple || treeCheckable) {\r\n suffixIconObj.suffixIcon = (\r\n <Popover\r\n content={\r\n <>\r\n <div className={classnames('vtx-tree-count-head')}>\r\n <span>已选择:{selectedNodes.length}</span>\r\n <span\r\n className={classnames(\r\n selectedNodes.length > 0 && !disabled\r\n ? 'clear-count'\r\n : 'disabled-count',\r\n )}\r\n onClick={e => {\r\n if (!disabled) {\r\n e.stopPropagation();\r\n clear();\r\n }\r\n }}\r\n >\r\n 清空已选项\r\n </span>\r\n </div>\r\n {selectedNodes.length > 0 ? (\r\n selectedNodes.map(item => (\r\n <Tag\r\n key={`tab-${item.id}`}\r\n closable={!disabled}\r\n onClose={e => {\r\n e.stopPropagation();\r\n clearKey(item.id);\r\n }}\r\n style={{ marginBottom: '5px' }}\r\n >\r\n {item.name.length > 20\r\n ? `${item.name.slice(0, 20)}...`\r\n : item.name}\r\n </Tag>\r\n ))\r\n ) : (\r\n <Empty image={Empty.PRESENTED_IMAGE_SIMPLE} />\r\n )}\r\n </>\r\n }\r\n placement=\"bottomRight\"\r\n trigger=\"click\"\r\n overlayStyle={{ width: popWidth }}\r\n >\r\n <Button\r\n className=\"vtx-tree-count\"\r\n icon={<MoreOutlined />}\r\n size=\"default\"\r\n onClick={e => {\r\n e.stopPropagation();\r\n }}\r\n />\r\n </Popover>\r\n );\r\n }\r\n return (\r\n <div ref={ref} style={style}>\r\n <TreeSelect\r\n showSearch\r\n dropdownStyle={{ maxHeight: 300, overflow: 'auto' }}\r\n placeholder={placeholder}\r\n treeData={treeData}\r\n treeLine={{ showLeafIcon: false }}\r\n switcherIcon={<DownOutlined />}\r\n {...props}\r\n multiple={multiple}\r\n treeCheckable={treeCheckable}\r\n className={prefixCls}\r\n popupClassName={`${prefixCls}-popup`}\r\n showArrow\r\n style={{ width: '100%' }}\r\n {...suffixIconObj}\r\n />\r\n </div>\r\n );\r\n};\r\n\r\nVtxTreeSelect.propTypes = {\r\n multiple: PropTypes.bool,\r\n treeCheckable: PropTypes.bool,\r\n disabled: PropTypes.bool,\r\n treeData: PropTypes.array,\r\n placeholder: PropTypes.string,\r\n prefixCls: PropTypes.string,\r\n style: PropTypes.object,\r\n onChange: PropTypes.func,\r\n value: PropTypes.oneOfType([PropTypes.string, PropTypes.array]),\r\n};\r\n\r\nexport default VtxTreeSelect;\r\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"css.js","names":["require"],"sources":["vtx-tree-select/style/index.js"],"sourcesContent":["import 'antd/lib/popover/style';\r\nimport 'antd/lib/input/style';\r\nimport 'antd/lib/tag/style';\r\nimport './index.less';\r\n"],"mappings":";;AAAAA,OAAA;AACAA,OAAA;AACAA,OAAA;AACAA,OAAA","ignoreList":[]}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
.vtx-tree-select-popover {
|
|
2
|
+
min-width: 200px;
|
|
3
|
+
height: 300px;
|
|
4
|
+
overflow: auto;
|
|
5
|
+
}
|
|
6
|
+
.vtx-tree-select-popover::-webkit-scrollbar {
|
|
7
|
+
width: 8px;
|
|
8
|
+
height: 8px;
|
|
9
|
+
background-color: hsla(0, 0%, 76%, 0.07);
|
|
10
|
+
}
|
|
11
|
+
.vtx-tree-select-popover::-webkit-scrollbar-thumb {
|
|
12
|
+
background-color: rgba(193, 193, 193, 0.6);
|
|
13
|
+
border-radius: 3px;
|
|
14
|
+
-webkit-box-shadow: inset 0 0 0 rgba(0, 0, 0, 0.3);
|
|
15
|
+
box-shadow: inset 0 0 0 rgba(0, 0, 0, 0.3);
|
|
16
|
+
}
|
|
17
|
+
.vtx-tree-select .ant-select-selection-overflow {
|
|
18
|
+
-ms-flex-wrap: nowrap;
|
|
19
|
+
flex-wrap: nowrap;
|
|
20
|
+
overflow: hidden;
|
|
21
|
+
}
|
|
22
|
+
.vtx-tree-select--placeholder {
|
|
23
|
+
color: #bfbfbf;
|
|
24
|
+
}
|
|
25
|
+
.vtx-tree-select .vtx-tree-count {
|
|
26
|
+
margin-right: -12px;
|
|
27
|
+
}
|
|
28
|
+
.vtx-tree-select-popup .ant-select-tree .ant-select-tree-treenode:not(.ant-select-tree
|
|
29
|
+
.ant-select-tree-treenode-disabled).filter-node .ant-select-tree-title {
|
|
30
|
+
color: #1890ff;
|
|
31
|
+
}
|
|
32
|
+
.vtx-tree-select-popup .ant-select-tree .ant-select-tree-node-content-wrapper.ant-select-tree-node-selected {
|
|
33
|
+
background-color: #e6f7ff;
|
|
34
|
+
}
|
|
35
|
+
.vtx-tree-count-head {
|
|
36
|
+
display: -webkit-box;
|
|
37
|
+
display: -ms-flexbox;
|
|
38
|
+
display: flex;
|
|
39
|
+
-webkit-box-pack: justify;
|
|
40
|
+
-ms-flex-pack: justify;
|
|
41
|
+
justify-content: space-between;
|
|
42
|
+
margin-bottom: 5px;
|
|
43
|
+
}
|
|
44
|
+
.vtx-tree-count-head .disabled-count {
|
|
45
|
+
color: #aaa;
|
|
46
|
+
cursor: not-allowed;
|
|
47
|
+
}
|
|
48
|
+
.vtx-tree-count-head .clear-count {
|
|
49
|
+
cursor: pointer;
|
|
50
|
+
}
|
|
51
|
+
.vtx-tree-count-head .clear-count:hover {
|
|
52
|
+
color: #40a9ff;
|
|
53
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","names":["require"],"sources":["vtx-tree-select/style/index.js"],"sourcesContent":["import 'antd/lib/popover/style';\r\nimport 'antd/lib/input/style';\r\nimport 'antd/lib/tag/style';\r\nimport './index.less';\r\n"],"mappings":";;AAAAA,OAAA;AACAA,OAAA;AACAA,OAAA;AACAA,OAAA","ignoreList":[]}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
@import (reference) '~antd/lib/style/themes/index.less';
|
|
2
|
+
@prefix-cls: vtx-tree-select;
|
|
3
|
+
|
|
4
|
+
.@{prefix-cls} {
|
|
5
|
+
&-popover {
|
|
6
|
+
min-width: 200px;
|
|
7
|
+
height: 300px;
|
|
8
|
+
overflow: auto;
|
|
9
|
+
&::-webkit-scrollbar {
|
|
10
|
+
width: 8px;
|
|
11
|
+
height: 8px;
|
|
12
|
+
background-color: hsla(0, 0%, 76%, 0.07);
|
|
13
|
+
}
|
|
14
|
+
&::-webkit-scrollbar-thumb {
|
|
15
|
+
background-color: rgba(193, 193, 193, 0.6);
|
|
16
|
+
border-radius: 3px;
|
|
17
|
+
box-shadow: inset 0 0 0 rgba(0, 0, 0, 0.3);
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
.ant-select-selection-overflow {
|
|
21
|
+
flex-wrap: nowrap;
|
|
22
|
+
overflow: hidden;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
&--placeholder {
|
|
26
|
+
color: @input-placeholder-color;
|
|
27
|
+
}
|
|
28
|
+
.vtx-tree-count {
|
|
29
|
+
margin-right: -12px;
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
.vtx-tree-select-popup {
|
|
34
|
+
& {
|
|
35
|
+
.ant-select-tree
|
|
36
|
+
.ant-select-tree-treenode:not(.ant-select-tree
|
|
37
|
+
.ant-select-tree-treenode-disabled).filter-node
|
|
38
|
+
.ant-select-tree-title {
|
|
39
|
+
color: #1890ff;
|
|
40
|
+
}
|
|
41
|
+
.ant-select-tree .ant-select-tree-node-content-wrapper.ant-select-tree-node-selected {
|
|
42
|
+
background-color: #e6f7ff;
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
.vtx-tree-count-head {
|
|
48
|
+
display: flex;
|
|
49
|
+
justify-content: space-between;
|
|
50
|
+
margin-bottom: 5px;
|
|
51
|
+
.disabled-count {
|
|
52
|
+
color: #aaa;
|
|
53
|
+
cursor: not-allowed;
|
|
54
|
+
}
|
|
55
|
+
.clear-count {
|
|
56
|
+
cursor: pointer;
|
|
57
|
+
&:hover {
|
|
58
|
+
color: #40a9ff;
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
}
|