@sheinx/hooks 3.5.8 → 3.6.0-beta.10
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/cjs/common/use-position-style/index.d.ts.map +1 -1
- package/cjs/common/use-position-style/index.js +2 -5
- package/cjs/components/use-form/use-form-fieldset/fieldset-context.d.ts +1 -1
- package/cjs/components/use-form/use-form-fieldset/fieldset-context.d.ts.map +1 -1
- package/cjs/components/use-form/use-form-fieldset/fieldset-context.js +3 -2
- package/cjs/components/use-form/use-form-fieldset/index.d.ts +1 -0
- package/cjs/components/use-form/use-form-fieldset/index.d.ts.map +1 -1
- package/cjs/components/use-form/use-form-fieldset/index.js +6 -0
- package/cjs/components/use-form/use-form.d.ts.map +1 -1
- package/cjs/components/use-form/use-form.js +4 -2
- package/cjs/components/use-form/use-form.type.d.ts +7 -0
- package/cjs/components/use-form/use-form.type.d.ts.map +1 -1
- package/cjs/components/use-table/use-table-sort.d.ts +5 -0
- package/cjs/components/use-table/use-table-sort.d.ts.map +1 -1
- package/cjs/components/use-table/use-table-sort.js +5 -1
- package/cjs/components/use-table/use-table-tree.d.ts +13 -0
- package/cjs/components/use-table/use-table-tree.d.ts.map +1 -1
- package/cjs/components/use-table/use-table-tree.js +68 -1
- package/cjs/components/use-table/use-table-virtual.d.ts.map +1 -1
- package/cjs/components/use-table/use-table-virtual.js +3 -1
- package/cjs/components/use-tree/index.d.ts +2 -1
- package/cjs/components/use-tree/index.d.ts.map +1 -1
- package/cjs/components/use-tree/index.js +7 -0
- package/cjs/components/use-tree/use-tree-node.d.ts.map +1 -1
- package/cjs/components/use-tree/use-tree-node.js +1 -5
- package/cjs/components/use-tree/use-tree-node.type.d.ts +18 -0
- package/cjs/components/use-tree/use-tree-node.type.d.ts.map +1 -1
- package/cjs/components/use-tree/use-tree-virtual-node.d.ts +13 -0
- package/cjs/components/use-tree/use-tree-virtual-node.d.ts.map +1 -0
- package/cjs/components/use-tree/use-tree-virtual-node.js +92 -0
- package/cjs/components/use-tree/use-tree.d.ts.map +1 -1
- package/cjs/components/use-tree/use-tree.js +180 -4
- package/cjs/components/use-tree/use-tree.type.d.ts +26 -0
- package/cjs/components/use-tree/use-tree.type.d.ts.map +1 -1
- package/cjs/components/use-treeselect/use-tiled.d.ts +1 -1
- package/cjs/components/use-treeselect/use-tiled.d.ts.map +1 -1
- package/cjs/components/use-treeselect/use-tiled.js +12 -18
- package/cjs/components/use-treeselect/use-tiled.type.d.ts +2 -0
- package/cjs/components/use-treeselect/use-tiled.type.d.ts.map +1 -1
- package/cjs/utils/tree.d.ts +1 -1
- package/cjs/utils/tree.d.ts.map +1 -1
- package/cjs/utils/tree.js +3 -9
- package/esm/common/use-position-style/index.d.ts.map +1 -1
- package/esm/common/use-position-style/index.js +2 -5
- package/esm/components/use-form/use-form-fieldset/fieldset-context.d.ts +1 -1
- package/esm/components/use-form/use-form-fieldset/fieldset-context.d.ts.map +1 -1
- package/esm/components/use-form/use-form-fieldset/fieldset-context.js +2 -1
- package/esm/components/use-form/use-form-fieldset/index.d.ts +1 -0
- package/esm/components/use-form/use-form-fieldset/index.d.ts.map +1 -1
- package/esm/components/use-form/use-form-fieldset/index.js +2 -1
- package/esm/components/use-form/use-form.d.ts.map +1 -1
- package/esm/components/use-form/use-form.js +4 -2
- package/esm/components/use-form/use-form.type.d.ts +7 -0
- package/esm/components/use-form/use-form.type.d.ts.map +1 -1
- package/esm/components/use-table/use-table-sort.d.ts +5 -0
- package/esm/components/use-table/use-table-sort.d.ts.map +1 -1
- package/esm/components/use-table/use-table-sort.js +5 -1
- package/esm/components/use-table/use-table-tree.d.ts +13 -0
- package/esm/components/use-table/use-table-tree.d.ts.map +1 -1
- package/esm/components/use-table/use-table-tree.js +67 -0
- package/esm/components/use-table/use-table-virtual.d.ts.map +1 -1
- package/esm/components/use-table/use-table-virtual.js +3 -1
- package/esm/components/use-tree/index.d.ts +2 -1
- package/esm/components/use-tree/index.d.ts.map +1 -1
- package/esm/components/use-tree/index.js +2 -1
- package/esm/components/use-tree/use-tree-node.d.ts.map +1 -1
- package/esm/components/use-tree/use-tree-node.js +1 -5
- package/esm/components/use-tree/use-tree-node.type.d.ts +18 -0
- package/esm/components/use-tree/use-tree-node.type.d.ts.map +1 -1
- package/esm/components/use-tree/use-tree-virtual-node.d.ts +13 -0
- package/esm/components/use-tree/use-tree-virtual-node.d.ts.map +1 -0
- package/esm/components/use-tree/use-tree-virtual-node.js +85 -0
- package/esm/components/use-tree/use-tree.d.ts.map +1 -1
- package/esm/components/use-tree/use-tree.js +181 -5
- package/esm/components/use-tree/use-tree.type.d.ts +26 -0
- package/esm/components/use-tree/use-tree.type.d.ts.map +1 -1
- package/esm/components/use-treeselect/use-tiled.d.ts +1 -1
- package/esm/components/use-treeselect/use-tiled.d.ts.map +1 -1
- package/esm/components/use-treeselect/use-tiled.js +10 -16
- package/esm/components/use-treeselect/use-tiled.type.d.ts +2 -0
- package/esm/components/use-treeselect/use-tiled.type.d.ts.map +1 -1
- package/esm/utils/tree.d.ts +1 -1
- package/esm/utils/tree.d.ts.map +1 -1
- package/esm/utils/tree.js +3 -9
- package/package.json +1 -1
@@ -1,3 +1,9 @@
|
|
1
|
+
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); }
|
2
|
+
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; }
|
3
|
+
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; }
|
4
|
+
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; }
|
5
|
+
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
|
6
|
+
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); }
|
1
7
|
function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
|
2
8
|
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."); }
|
3
9
|
function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
|
@@ -11,14 +17,16 @@ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
11
17
|
import { useState, useEffect, useRef } from 'react';
|
12
18
|
import useLatestObj from "../../common/use-latest-obj";
|
13
19
|
import { useInputAble } from "../../common/use-input-able";
|
20
|
+
import { getExpandVirtualData } from "../use-table/use-table-tree";
|
14
21
|
import { usePersistFn } from "../../common/use-persist-fn";
|
15
22
|
import { isFunc, isString, isNumber, isArray, isUnMatchedData, isOptionalDisabled } from "../../utils/is";
|
16
|
-
import { devUseWarning } from "../../utils";
|
23
|
+
import { devUseWarning, produce } from "../../utils";
|
17
24
|
function toArray(value) {
|
18
25
|
if (!value) return [];
|
19
26
|
if (!Array.isArray(value)) return [value];
|
20
27
|
return value;
|
21
28
|
}
|
29
|
+
var global_tree_map = new Map();
|
22
30
|
export var MODE = {
|
23
31
|
/**
|
24
32
|
* 返回全选数据,包含父节点和子节点
|
@@ -51,6 +59,7 @@ var useTree = function useTree(props) {
|
|
51
59
|
childrenKey = _props$childrenKey === void 0 ? 'children' : _props$childrenKey,
|
52
60
|
keygen = props.keygen,
|
53
61
|
mode = props.mode,
|
62
|
+
virtual = props.virtual,
|
54
63
|
activeProp = props.active,
|
55
64
|
expandedProp = props.expanded,
|
56
65
|
_props$dataUpdate = props.dataUpdate,
|
@@ -67,6 +76,10 @@ var useTree = function useTree(props) {
|
|
67
76
|
_useState2 = _slicedToArray(_useState, 2),
|
68
77
|
inited = _useState2[0],
|
69
78
|
setInited = _useState2[1];
|
79
|
+
var _useState3 = useState([]),
|
80
|
+
_useState4 = _slicedToArray(_useState3, 2),
|
81
|
+
dataFlat = _useState4[0],
|
82
|
+
setDataFlat = _useState4[1];
|
70
83
|
var _useInputAble = useInputAble({
|
71
84
|
value: expandedProp,
|
72
85
|
defaultValue: defaultExpanded,
|
@@ -79,6 +92,8 @@ var useTree = function useTree(props) {
|
|
79
92
|
var _useRef = useRef({
|
80
93
|
pathMap: new Map(),
|
81
94
|
dataMap: new Map(),
|
95
|
+
dataFlatStatusMap: new Map(),
|
96
|
+
dataFlat: [],
|
82
97
|
forceUpdateMap: new Map(),
|
83
98
|
valueMap: new Map(),
|
84
99
|
updateMap: new Map(),
|
@@ -110,11 +125,27 @@ var useTree = function useTree(props) {
|
|
110
125
|
expanded: shouldDefaultExpand
|
111
126
|
};
|
112
127
|
}
|
128
|
+
if (virtual) {
|
129
|
+
return {
|
130
|
+
active: isActive,
|
131
|
+
expanded: context.dataFlatStatusMap.get(id).expanded
|
132
|
+
};
|
133
|
+
}
|
113
134
|
return {
|
114
135
|
active: isActive,
|
115
136
|
expanded: !!(expandeds && expandeds.indexOf(id) >= 0)
|
116
137
|
};
|
117
138
|
};
|
139
|
+
|
140
|
+
// 注册节点
|
141
|
+
var bindVirtualNode = function bindVirtualNode(id, update) {
|
142
|
+
context.updateMap.set(id, update);
|
143
|
+
var isActive = activeProp === id;
|
144
|
+
return {
|
145
|
+
active: isActive,
|
146
|
+
expanded: context.dataFlatStatusMap.get(id).expanded
|
147
|
+
};
|
148
|
+
};
|
118
149
|
var get = function get(id) {
|
119
150
|
return context.valueMap.get(id);
|
120
151
|
};
|
@@ -127,7 +158,6 @@ var useTree = function useTree(props) {
|
|
127
158
|
if (keygen && (isString(keygen) || isNumber(keygen))) {
|
128
159
|
return item[keygen];
|
129
160
|
}
|
130
|
-
|
131
161
|
// 降级处理
|
132
162
|
return id + (id ? ',' : '') + index;
|
133
163
|
};
|
@@ -225,6 +255,8 @@ var useTree = function useTree(props) {
|
|
225
255
|
};
|
226
256
|
var initData = function initData(data, path, disabled) {
|
227
257
|
var index = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : [];
|
258
|
+
var level = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : 1;
|
259
|
+
var pid = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : null;
|
228
260
|
var ids = [];
|
229
261
|
for (var i = 0; i < data.length; i++) {
|
230
262
|
var item = data[i];
|
@@ -236,6 +268,28 @@ var useTree = function useTree(props) {
|
|
236
268
|
}
|
237
269
|
// 制作 data mapping
|
238
270
|
context.dataMap.set(id, item);
|
271
|
+
if (virtual) {
|
272
|
+
context.dataFlatStatusMap.set(id, {
|
273
|
+
active: false,
|
274
|
+
expanded: defaultExpandAll ? true : (expanded === null || expanded === void 0 ? void 0 : expanded.includes(id)) || false,
|
275
|
+
fetching: false
|
276
|
+
});
|
277
|
+
var node = {
|
278
|
+
id: id,
|
279
|
+
level: level,
|
280
|
+
data: item,
|
281
|
+
pid: pid
|
282
|
+
};
|
283
|
+
if (defaultExpandAll) {
|
284
|
+
context.dataFlat.push(node);
|
285
|
+
} else {
|
286
|
+
if (level === 1) {
|
287
|
+
context.dataFlat.push(node);
|
288
|
+
} else if (expanded && pid !== null && expanded.indexOf(pid) >= 0) {
|
289
|
+
context.dataFlat.push(node);
|
290
|
+
}
|
291
|
+
}
|
292
|
+
}
|
239
293
|
var _isDisabled = !!disabled;
|
240
294
|
if (_isDisabled === false) {
|
241
295
|
_isDisabled = getDisabled()(item);
|
@@ -244,7 +298,7 @@ var useTree = function useTree(props) {
|
|
244
298
|
ids.push(id);
|
245
299
|
var children = [];
|
246
300
|
if (Array.isArray(item[childrenKey])) {
|
247
|
-
var _children = initData(item[childrenKey], [].concat(_toConsumableArray(path), [id]), mode === MODE.MODE_4 ? disabled : _isDisabled, indexPath);
|
301
|
+
var _children = initData(item[childrenKey], [].concat(_toConsumableArray(path), [id]), mode === MODE.MODE_4 ? disabled : _isDisabled, indexPath, level + 1, id);
|
248
302
|
if (_children) children = _children;
|
249
303
|
}
|
250
304
|
context.pathMap.set(id, {
|
@@ -347,17 +401,37 @@ var useTree = function useTree(props) {
|
|
347
401
|
return 2;
|
348
402
|
};
|
349
403
|
var setData = function setData(data) {
|
404
|
+
// if(data && global_tree_map.get(data)){
|
405
|
+
// context.cachedValue = global_tree_map.get(data)?.cachedValue || []
|
406
|
+
// context.pathMap = global_tree_map.get(data)?.pathMap || new Map()
|
407
|
+
// context.dataMap = global_tree_map.get(data)?.dataMap || new Map()
|
408
|
+
// context.valueMap = global_tree_map.get(data)?.valueMap || new Map()
|
409
|
+
// context.unmatchedValueMap = global_tree_map.get(data)?.unmatchedValueMap || new Map()
|
410
|
+
// return
|
411
|
+
// }
|
412
|
+
|
350
413
|
var prevValue = context.value || [];
|
351
414
|
context.cachedValue = [];
|
352
415
|
context.pathMap = new Map();
|
353
416
|
context.dataMap = new Map();
|
417
|
+
context.dataFlat = [];
|
418
|
+
context.dataFlatStatusMap = new Map();
|
354
419
|
context.valueMap = new Map();
|
355
420
|
context.unmatchedValueMap = new Map();
|
356
421
|
context.data = toArray(data);
|
422
|
+
if (virtual) {
|
423
|
+
context.dataFlat = [];
|
424
|
+
setDataFlat([]);
|
425
|
+
}
|
357
426
|
if (!data) return;
|
358
427
|
initData(context.data, []);
|
428
|
+
if (virtual) {
|
429
|
+
setDataFlat(context.dataFlat);
|
430
|
+
}
|
359
431
|
initValue();
|
360
432
|
setValue(prevValue);
|
433
|
+
|
434
|
+
// global_tree_map.set(data, context)
|
361
435
|
};
|
362
436
|
var set = function set(id, checked, direction) {
|
363
437
|
if (!isDisabled(id)) {
|
@@ -399,6 +473,101 @@ var useTree = function useTree(props) {
|
|
399
473
|
}
|
400
474
|
return current;
|
401
475
|
};
|
476
|
+
var appendChildrenExpanded = function appendChildrenExpanded(child, level, pid, insertData) {
|
477
|
+
if (!child) return;
|
478
|
+
child.forEach(function (item, i) {
|
479
|
+
var _context$dataFlatStat;
|
480
|
+
var childId = getKey(item, pid, i);
|
481
|
+
var node = {
|
482
|
+
id: childId,
|
483
|
+
level: level,
|
484
|
+
data: item,
|
485
|
+
pid: pid
|
486
|
+
};
|
487
|
+
insertData.push(node);
|
488
|
+
if ((_context$dataFlatStat = context.dataFlatStatusMap.get(childId)) !== null && _context$dataFlatStat !== void 0 && _context$dataFlatStat.expanded && item[childrenKey]) {
|
489
|
+
appendChildrenExpanded(item[childrenKey], level + 1, childId, insertData);
|
490
|
+
}
|
491
|
+
});
|
492
|
+
};
|
493
|
+
var insertFlat = function insertFlat(id) {
|
494
|
+
var item = getDataById(id);
|
495
|
+
if (isUnMatchedData(item)) return;
|
496
|
+
if (!item) return;
|
497
|
+
var status = context.dataFlatStatusMap.get(id);
|
498
|
+
if (!status) return;
|
499
|
+
var childrenData = item[childrenKey];
|
500
|
+
var insertStartNode = dataFlat.find(function (item) {
|
501
|
+
return item.id === id;
|
502
|
+
});
|
503
|
+
context.dataFlatStatusMap.set(id, _objectSpread(_objectSpread({}, status), {}, {
|
504
|
+
expanded: true,
|
505
|
+
fetching: false
|
506
|
+
}));
|
507
|
+
if (!insertStartNode) return;
|
508
|
+
var insertData = [];
|
509
|
+
appendChildrenExpanded(childrenData, insertStartNode.level + 1, id, insertData);
|
510
|
+
var insertIndex = dataFlat.indexOf(insertStartNode);
|
511
|
+
var nextDataFlat = produce(dataFlat, function (draft) {
|
512
|
+
draft.splice.apply(draft, [insertIndex + 1, 0].concat(_toConsumableArray(insertData)));
|
513
|
+
});
|
514
|
+
setDataFlat(nextDataFlat);
|
515
|
+
};
|
516
|
+
var removeFlat = function removeFlat(id) {
|
517
|
+
var item = getDataById(id);
|
518
|
+
if (isUnMatchedData(item)) return;
|
519
|
+
if (!item) return;
|
520
|
+
var removeNode = dataFlat.find(function (item) {
|
521
|
+
return item.id === id;
|
522
|
+
});
|
523
|
+
if (!removeNode) return;
|
524
|
+
var status = context.dataFlatStatusMap.get(id);
|
525
|
+
if (!status) return;
|
526
|
+
context.dataFlatStatusMap.set(id, _objectSpread(_objectSpread({}, status), {}, {
|
527
|
+
fetching: false,
|
528
|
+
expanded: false
|
529
|
+
}));
|
530
|
+
var removeStartIndex = dataFlat.indexOf(removeNode);
|
531
|
+
var removeEndIndex = 0;
|
532
|
+
for (var i = removeStartIndex + 1; i < dataFlat.length; i++) {
|
533
|
+
if (dataFlat[i].level <= removeNode.level) {
|
534
|
+
removeEndIndex = i;
|
535
|
+
break;
|
536
|
+
}
|
537
|
+
if (i === dataFlat.length - 1) {
|
538
|
+
removeEndIndex = i + 1;
|
539
|
+
break;
|
540
|
+
}
|
541
|
+
}
|
542
|
+
var nextDataFlat = produce(dataFlat, function (draft) {
|
543
|
+
draft.splice(removeStartIndex + 1, removeEndIndex - removeStartIndex - 1);
|
544
|
+
});
|
545
|
+
setDataFlat(nextDataFlat);
|
546
|
+
};
|
547
|
+
var expandedFlat = function expandedFlat(expanded) {
|
548
|
+
if (!context.data) return;
|
549
|
+
context.dataFlatStatusMap.forEach(function (status, id) {
|
550
|
+
context.dataFlatStatusMap.set(id, _objectSpread(_objectSpread({}, status), {}, {
|
551
|
+
expanded: false
|
552
|
+
}));
|
553
|
+
});
|
554
|
+
expanded.forEach(function (id) {
|
555
|
+
var status = context.dataFlatStatusMap.get(id);
|
556
|
+
if (!status) return;
|
557
|
+
context.dataFlatStatusMap.set(id, _objectSpread(_objectSpread({}, status), {}, {
|
558
|
+
expanded: true
|
559
|
+
}));
|
560
|
+
});
|
561
|
+
var _getExpandVirtualData = getExpandVirtualData(context.data, expanded, getKey, childrenKey),
|
562
|
+
treeDataInfo = _getExpandVirtualData.treeDataInfo;
|
563
|
+
if (!treeDataInfo) {
|
564
|
+
return;
|
565
|
+
}
|
566
|
+
setDataFlat(treeDataInfo);
|
567
|
+
};
|
568
|
+
var getFlatData = function getFlatData() {
|
569
|
+
return context.dataFlat;
|
570
|
+
};
|
402
571
|
useEffect(function () {
|
403
572
|
if (defaultExpandAll) {
|
404
573
|
var nextExpanded = [];
|
@@ -409,7 +578,7 @@ var useTree = function useTree(props) {
|
|
409
578
|
});
|
410
579
|
onExpand(nextExpanded);
|
411
580
|
}
|
412
|
-
}, []);
|
581
|
+
}, [context.dataMap]);
|
413
582
|
useEffect(function () {
|
414
583
|
if (props.datum) return;
|
415
584
|
if (!dataUpdate) return;
|
@@ -425,25 +594,32 @@ var useTree = function useTree(props) {
|
|
425
594
|
var datum = useLatestObj({
|
426
595
|
get: get,
|
427
596
|
set: set,
|
597
|
+
insertFlat: insertFlat,
|
598
|
+
removeFlat: removeFlat,
|
599
|
+
expandedFlat: expandedFlat,
|
428
600
|
getPath: getPath,
|
429
601
|
getValue: getValue,
|
430
602
|
getChecked: getChecked,
|
431
603
|
getKey: getKey,
|
604
|
+
getFlatData: getFlatData,
|
432
605
|
getDataByValues: getDataByValues,
|
433
606
|
setValue: setValue,
|
434
607
|
setData: setData,
|
435
608
|
isDisabled: isDisabled,
|
436
609
|
bindNode: bindNode,
|
610
|
+
bindVirtualNode: bindVirtualNode,
|
437
611
|
getDataById: getDataById,
|
438
612
|
bindUpdate: bindUpdate,
|
439
613
|
unBindUpdate: unBindUpdate,
|
440
614
|
isUnMatched: isUnMatched,
|
441
615
|
childrenKey: childrenKey,
|
442
616
|
data: data,
|
617
|
+
dataFlat: dataFlat,
|
443
618
|
pathMap: context.pathMap,
|
444
619
|
dataMap: context.dataMap,
|
445
620
|
valueMap: context.valueMap,
|
446
|
-
updateMap: context.updateMap
|
621
|
+
updateMap: context.updateMap,
|
622
|
+
dataFlatStatusMap: context.dataFlatStatusMap
|
447
623
|
});
|
448
624
|
return {
|
449
625
|
inited: inited,
|
@@ -2,9 +2,22 @@ import { StructKeygenStringType, KeygenResult, ObjectKey } from '../../common/ty
|
|
2
2
|
export type CheckedStatusType = 0 | 1 | 2;
|
3
3
|
export type TreeModeType = 0 | 1 | 2 | 3 | 4;
|
4
4
|
export type UpdateFunc = (name: string, active: boolean) => void;
|
5
|
+
export type FlatNodeType<DataItem> = {
|
6
|
+
id: KeygenResult;
|
7
|
+
data: DataItem;
|
8
|
+
level: number;
|
9
|
+
pid?: KeygenResult | null;
|
10
|
+
};
|
11
|
+
export type FlatMapType = {
|
12
|
+
active: boolean;
|
13
|
+
expanded: boolean;
|
14
|
+
fetching: boolean;
|
15
|
+
};
|
5
16
|
export interface TreeContext<DataItem> {
|
6
17
|
pathMap: Map<KeygenResult, TreePathType>;
|
7
18
|
dataMap: Map<KeygenResult, DataItem>;
|
19
|
+
dataFlat: FlatNodeType<DataItem>[];
|
20
|
+
dataFlatStatusMap: Map<KeygenResult, FlatMapType>;
|
8
21
|
valueMap: Map<KeygenResult, CheckedStatusType>;
|
9
22
|
unmatchedValueMap: Map<any, any>;
|
10
23
|
updateMap: Map<KeygenResult, UpdateFunc>;
|
@@ -110,10 +123,17 @@ export interface BaseTreeProps<DataItem> {
|
|
110
123
|
* @private 内部数据处理
|
111
124
|
*/
|
112
125
|
datum?: TreeDatum<DataItem>;
|
126
|
+
/**
|
127
|
+
* @private 是否虚拟化
|
128
|
+
*/
|
129
|
+
virtual?: boolean;
|
113
130
|
}
|
114
131
|
export interface TreeDatum<DataItem> {
|
115
132
|
get: (id: KeygenResult) => CheckedStatusType | undefined;
|
116
133
|
set: (id: KeygenResult, checked: CheckedStatusType, direction?: 'asc' | 'desc') => CheckedStatusType | null;
|
134
|
+
insertFlat: (id: KeygenResult) => void;
|
135
|
+
removeFlat: (id: KeygenResult) => void;
|
136
|
+
expandedFlat: (id: KeygenResult[]) => void;
|
117
137
|
getPath: (id: KeygenResult) => TreePathType | undefined;
|
118
138
|
getValue: () => KeygenResult[];
|
119
139
|
getChecked: (id: KeygenResult) => boolean | 'indeterminate';
|
@@ -126,6 +146,10 @@ export interface TreeDatum<DataItem> {
|
|
126
146
|
active: boolean;
|
127
147
|
expanded: boolean;
|
128
148
|
};
|
149
|
+
bindVirtualNode: (id: KeygenResult, update: UpdateFunc, data: DataItem) => {
|
150
|
+
active: boolean;
|
151
|
+
expanded: boolean;
|
152
|
+
};
|
129
153
|
getDataById: (id: KeygenResult) => DataItem | {
|
130
154
|
IS_NOT_MATCHED_VALUE: boolean;
|
131
155
|
value: KeygenResult | null;
|
@@ -136,8 +160,10 @@ export interface TreeDatum<DataItem> {
|
|
136
160
|
updateMap: Map<KeygenResult, UpdateFunc>;
|
137
161
|
childrenKey: string;
|
138
162
|
data: DataItem[];
|
163
|
+
dataFlat: FlatNodeType<DataItem>[];
|
139
164
|
pathMap: Map<KeygenResult, TreePathType>;
|
140
165
|
dataMap: Map<KeygenResult, DataItem>;
|
141
166
|
valueMap: Map<KeygenResult, CheckedStatusType>;
|
167
|
+
dataFlatStatusMap: Map<KeygenResult, FlatMapType>;
|
142
168
|
}
|
143
169
|
//# sourceMappingURL=use-tree.type.d.ts.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"use-tree.type.d.ts","sourceRoot":"","sources":["use-tree.type.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAEpF,MAAM,MAAM,iBAAiB,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AAE1C,MAAM,MAAM,YAAY,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AAE7C,MAAM,MAAM,UAAU,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,KAAK,IAAI,CAAC;AAEjE,MAAM,WAAW,WAAW,CAAC,QAAQ;IACnC,OAAO,EAAE,GAAG,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC;IACzC,OAAO,EAAE,GAAG,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;IACrC,QAAQ,EAAE,GAAG,CAAC,YAAY,EAAE,iBAAiB,CAAC,CAAC;IAC/C,iBAAiB,EAAE,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IACjC,SAAS,EAAE,GAAG,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC;IACzC,cAAc,EAAE,GAAG,CAAC,YAAY,EAAE,MAAM,IAAI,CAAC,CAAC;IAC9C,KAAK,CAAC,EAAE,YAAY,EAAE,CAAC;IACvB,WAAW,EAAE,YAAY,EAAE,CAAC;IAC5B,IAAI,CAAC,EAAE,QAAQ,EAAE,CAAC;IAClB,cAAc,EAAE,GAAG,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;CAC7C;AAED,MAAM,WAAW,YAAY;IAC3B,QAAQ,EAAE,YAAY,EAAE,CAAC;IACzB,IAAI,EAAE,YAAY,EAAE,CAAC;IACrB,UAAU,EAAE,OAAO,CAAC;IACpB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,cAAc,CAAC,QAAQ;IACtC,QAAQ,EAAE,CAAC,IAAI,EAAE,QAAQ,KAAK,OAAO,CAAC;IACtC,UAAU,EAAE,OAAO,CAAC;CACrB;AAED,MAAM,WAAW,aAAa,CAAC,QAAQ;IACrC;;OAEG;IACH,YAAY,EAAE,OAAO,CAAC;IACtB,MAAM,CAAC,EAAE,YAAY,CAAC;IACtB;;;OAGG;IACH,KAAK,CAAC,EAAE,YAAY,EAAE,CAAC;IACvB;;;OAGG;IACH,YAAY,CAAC,EAAE,YAAY,EAAE,CAAC;IAC9B;;;OAGG;IACH,IAAI,EAAE,QAAQ,EAAE,CAAC;IACjB;;;OAGG;IACH,QAAQ,CAAC,EAAE,YAAY,EAAE,CAAC;IAC1B;;;OAGG;IACH,eAAe,CAAC,EAAE,YAAY,EAAE,CAAC;IACjC;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B;;;;OAIG;IACH,QAAQ,CAAC,EAAE,OAAO,GAAG,CAAC,CAAC,IAAI,EAAE,QAAQ,KAAK,OAAO,CAAC,GAAG,cAAc,CAAC,QAAQ,CAAC,CAAC;IAC9E;;;;OAIG;IACH,MAAM,EAAE,sBAAsB,CAAC,QAAQ,CAAC,CAAC;IACzC;;;;OAIG;IACH,WAAW,CAAC,EAAE,SAAS,CAAC,QAAQ,CAAC,CAAC;IAClC;;;;OAIG;IACH,IAAI,CAAC,EAAE,YAAY,CAAC;IACpB;;;;OAIG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;;OAGG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;;OAGG;IACH,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,YAAY,EAAE,KAAK,IAAI,CAAC;IAC3C;;OAEG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;OAEG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC,QAAQ,CAAC,CAAC;
|
1
|
+
{"version":3,"file":"use-tree.type.d.ts","sourceRoot":"","sources":["use-tree.type.ts"],"names":[],"mappings":"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"}
|
@@ -5,7 +5,7 @@ declare const useTiled: <DataItem>(props: UseTiledProps<DataItem>) => {
|
|
5
5
|
onFilter: ((text: string, from?: string | undefined) => void) | undefined;
|
6
6
|
expandIcons?: undefined;
|
7
7
|
} | {
|
8
|
-
data: any
|
8
|
+
data: any;
|
9
9
|
onFilter: (text: string, from?: string) => void;
|
10
10
|
expandIcons: ((item: DataItem) => string | number | boolean | import("react").ReactFragment | JSX.Element | null | undefined)[];
|
11
11
|
};
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"use-tiled.d.ts","sourceRoot":"","sources":["use-tiled.tsx"],"names":[],"mappings":";AAGA,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAGjD,QAAA,MAAM,QAAQ;;;;;;
|
1
|
+
{"version":3,"file":"use-tiled.d.ts","sourceRoot":"","sources":["use-tiled.tsx"],"names":[],"mappings":";AAGA,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAGjD,QAAA,MAAM,QAAQ;;;;;;qBAkCgB,MAAM,SAAS,MAAM;;CAyClD,CAAC;AAEF,eAAe,QAAQ,CAAC"}
|
@@ -13,7 +13,7 @@ import { useTree } from "../use-tree";
|
|
13
13
|
import { mergeFilteredTree } from "../../utils/tree";
|
14
14
|
import { jsx as _jsx } from "react/jsx-runtime";
|
15
15
|
var useTiled = function useTiled(props) {
|
16
|
-
var
|
16
|
+
var filterData = props.data,
|
17
17
|
keygen = props.keygen,
|
18
18
|
_props$childrenKey = props.childrenKey,
|
19
19
|
childrenKey = _props$childrenKey === void 0 ? 'children' : _props$childrenKey,
|
@@ -30,19 +30,19 @@ var useTiled = function useTiled(props) {
|
|
30
30
|
tileds = _useState2[0],
|
31
31
|
setTileds = _useState2[1];
|
32
32
|
var _useTree = useTree({
|
33
|
-
data: data,
|
34
|
-
childrenKey: childrenKey,
|
35
|
-
keygen: keygen,
|
36
|
-
isControlled: false
|
37
|
-
}),
|
38
|
-
datum = _useTree.datum;
|
39
|
-
var _useTree2 = useTree({
|
40
33
|
data: rawData,
|
34
|
+
datum: props.rawDatum,
|
41
35
|
childrenKey: childrenKey,
|
42
36
|
keygen: keygen,
|
43
37
|
isControlled: false
|
44
38
|
}),
|
45
|
-
rawDatum =
|
39
|
+
rawDatum = _useTree.datum;
|
40
|
+
if (!filterText || !onAdvancedFilter) {
|
41
|
+
return {
|
42
|
+
data: filterData,
|
43
|
+
onFilter: onFilter
|
44
|
+
};
|
45
|
+
}
|
46
46
|
var handleToggle = function handleToggle(e, key) {
|
47
47
|
e.stopPropagation();
|
48
48
|
var nextTileds = _toConsumableArray(tileds);
|
@@ -74,13 +74,7 @@ var useTiled = function useTiled(props) {
|
|
74
74
|
children: moreIcon()
|
75
75
|
});
|
76
76
|
};
|
77
|
-
|
78
|
-
return {
|
79
|
-
data: data,
|
80
|
-
onFilter: onFilter
|
81
|
-
};
|
82
|
-
}
|
83
|
-
var nextData = mergeFilteredTree(datum, rawDatum, tileds);
|
77
|
+
var nextData = mergeFilteredTree(filterData, rawDatum, tileds);
|
84
78
|
return {
|
85
79
|
data: nextData,
|
86
80
|
onFilter: handleFilter,
|
@@ -1,9 +1,11 @@
|
|
1
1
|
import React from 'react';
|
2
2
|
import { TreeKeygenType, KeygenResult, ObjectKey } from '../../common/type';
|
3
|
+
import { TreeDatum } from '../use-tree/use-tree.type';
|
3
4
|
export type FilterFormType = 'blur' | 'edit';
|
4
5
|
export interface UseTiledProps<DataItem> {
|
5
6
|
data: DataItem[];
|
6
7
|
rawData: DataItem[];
|
8
|
+
rawDatum?: TreeDatum<DataItem>;
|
7
9
|
onFilter?: (text: string, from?: string) => void;
|
8
10
|
keygen: TreeKeygenType<DataItem>;
|
9
11
|
childrenKey?: ObjectKey<DataItem>;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"use-tiled.type.d.ts","sourceRoot":"","sources":["use-tiled.type.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;
|
1
|
+
{"version":3,"file":"use-tiled.type.d.ts","sourceRoot":"","sources":["use-tiled.type.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC5E,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAEtD,MAAM,MAAM,cAAc,GAAG,MAAM,GAAG,MAAM,CAAC;AAE7C,MAAM,WAAW,aAAa,CAAC,QAAQ;IACrC,IAAI,EAAE,QAAQ,EAAE,CAAC;IACjB,OAAO,EAAE,QAAQ,EAAE,CAAC;IACpB,QAAQ,CAAC,EAAE,SAAS,CAAC,QAAQ,CAAC,CAAC;IAC/B,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IACjD,MAAM,EAAE,cAAc,CAAC,QAAQ,CAAC,CAAC;IACjC,WAAW,CAAC,EAAE,SAAS,CAAC,QAAQ,CAAC,CAAC;IAClC,QAAQ,CAAC,EAAE,YAAY,EAAE,CAAC;IAC1B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,KAAK,CAAC,SAAS,CAAC;IAC5B,QAAQ,EAAE,MAAM,KAAK,CAAC,SAAS,CAAC;IAChC,gBAAgB,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,CAAC,IAAI,EAAE,QAAQ,KAAK,OAAO,CAAC;CAClE"}
|
package/esm/utils/tree.d.ts
CHANGED
@@ -9,6 +9,6 @@ type FilterDatum<DataItem> = {
|
|
9
9
|
getKey: (node: DataItem) => KeygenResult;
|
10
10
|
getDataById: (id: KeygenResult) => DataItem;
|
11
11
|
};
|
12
|
-
export declare const mergeFilteredTree: (
|
12
|
+
export declare const mergeFilteredTree: (filterData: any, rawDatum: FilterDatum<any>, tiledId: KeygenResult[]) => any;
|
13
13
|
export {};
|
14
14
|
//# sourceMappingURL=tree.d.ts.map
|
package/esm/utils/tree.d.ts.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"tree.d.ts","sourceRoot":"","sources":["tree.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAG9C,eAAO,MAAM,cAAc,+CAGlB,OAAO,UAkBf,CAAC;AAEF,eAAO,MAAM,aAAa,2CAA4C,YAAY,6EAE5B,OAAO,iCACzC,YAAY,EAAE,GAAG,SAAS,2EAGxB,OAAO,wCACU,IAAI;;yBA4B1C,CAAC;AAEF,KAAK,WAAW,CAAC,QAAQ,IAAI;IAC3B,IAAI,EAAE,QAAQ,EAAE,CAAC;IACjB,WAAW,EAAE,GAAG,CAAC;IACjB,MAAM,EAAE,CAAC,IAAI,EAAE,QAAQ,KAAK,YAAY,CAAC;IACzC,WAAW,EAAE,CAAC,EAAE,EAAE,YAAY,KAAK,QAAQ,CAAC;CAC7C,CAAC;AAEF,eAAO,MAAM,iBAAiB,
|
1
|
+
{"version":3,"file":"tree.d.ts","sourceRoot":"","sources":["tree.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAG9C,eAAO,MAAM,cAAc,+CAGlB,OAAO,UAkBf,CAAC;AAEF,eAAO,MAAM,aAAa,2CAA4C,YAAY,6EAE5B,OAAO,iCACzC,YAAY,EAAE,GAAG,SAAS,2EAGxB,OAAO,wCACU,IAAI;;yBA4B1C,CAAC;AAEF,KAAK,WAAW,CAAC,QAAQ,IAAI;IAC3B,IAAI,EAAE,QAAQ,EAAE,CAAC;IACjB,WAAW,EAAE,GAAG,CAAC;IACjB,MAAM,EAAE,CAAC,IAAI,EAAE,QAAQ,KAAK,YAAY,CAAC;IACzC,WAAW,EAAE,CAAC,EAAE,EAAE,YAAY,KAAK,QAAQ,CAAC;CAC7C,CAAC;AAEF,eAAO,MAAM,iBAAiB,eAChB,GAAG,YACL,YAAY,GAAG,CAAC,WACjB,YAAY,EAAE,QAexB,CAAC"}
|
package/esm/utils/tree.js
CHANGED
@@ -62,19 +62,13 @@ export var getFilterTree = function getFilterTree(treeNodes, filterFunc, filterE
|
|
62
62
|
return node;
|
63
63
|
});
|
64
64
|
};
|
65
|
-
export var mergeFilteredTree = function mergeFilteredTree(
|
66
|
-
var
|
67
|
-
var childrenKey = filterDatum.childrenKey;
|
65
|
+
export var mergeFilteredTree = function mergeFilteredTree(filterData, rawDatum, tiledId) {
|
66
|
+
var childrenKey = rawDatum.childrenKey;
|
68
67
|
if (tiledId.length === 0) return filterData;
|
69
68
|
var recursion = function recursion(node) {
|
70
|
-
var nodeKey =
|
69
|
+
var nodeKey = rawDatum.getKey(node);
|
71
70
|
if (tiledId.indexOf(nodeKey) >= 0) {
|
72
71
|
node[childrenKey] = deepClone(rawDatum.getDataById(nodeKey)[childrenKey] || []);
|
73
|
-
} else {
|
74
|
-
var item = filterDatum.getDataById(nodeKey);
|
75
|
-
if (item && item[childrenKey]) {
|
76
|
-
node[childrenKey] = deepClone(item[childrenKey] || []);
|
77
|
-
}
|
78
72
|
}
|
79
73
|
var children = node[childrenKey] || [];
|
80
74
|
children.map(recursion);
|