@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.
Files changed (85) hide show
  1. package/cjs/common/use-position-style/index.d.ts.map +1 -1
  2. package/cjs/common/use-position-style/index.js +2 -5
  3. package/cjs/components/use-form/use-form-fieldset/fieldset-context.d.ts +1 -1
  4. package/cjs/components/use-form/use-form-fieldset/fieldset-context.d.ts.map +1 -1
  5. package/cjs/components/use-form/use-form-fieldset/fieldset-context.js +3 -2
  6. package/cjs/components/use-form/use-form-fieldset/index.d.ts +1 -0
  7. package/cjs/components/use-form/use-form-fieldset/index.d.ts.map +1 -1
  8. package/cjs/components/use-form/use-form-fieldset/index.js +6 -0
  9. package/cjs/components/use-form/use-form.d.ts.map +1 -1
  10. package/cjs/components/use-form/use-form.js +4 -2
  11. package/cjs/components/use-form/use-form.type.d.ts +7 -0
  12. package/cjs/components/use-form/use-form.type.d.ts.map +1 -1
  13. package/cjs/components/use-table/use-table-sort.d.ts +5 -0
  14. package/cjs/components/use-table/use-table-sort.d.ts.map +1 -1
  15. package/cjs/components/use-table/use-table-sort.js +5 -1
  16. package/cjs/components/use-table/use-table-tree.d.ts +13 -0
  17. package/cjs/components/use-table/use-table-tree.d.ts.map +1 -1
  18. package/cjs/components/use-table/use-table-tree.js +68 -1
  19. package/cjs/components/use-table/use-table-virtual.d.ts.map +1 -1
  20. package/cjs/components/use-table/use-table-virtual.js +3 -1
  21. package/cjs/components/use-tree/index.d.ts +2 -1
  22. package/cjs/components/use-tree/index.d.ts.map +1 -1
  23. package/cjs/components/use-tree/index.js +7 -0
  24. package/cjs/components/use-tree/use-tree-node.d.ts.map +1 -1
  25. package/cjs/components/use-tree/use-tree-node.js +1 -5
  26. package/cjs/components/use-tree/use-tree-node.type.d.ts +18 -0
  27. package/cjs/components/use-tree/use-tree-node.type.d.ts.map +1 -1
  28. package/cjs/components/use-tree/use-tree-virtual-node.d.ts +13 -0
  29. package/cjs/components/use-tree/use-tree-virtual-node.d.ts.map +1 -0
  30. package/cjs/components/use-tree/use-tree-virtual-node.js +92 -0
  31. package/cjs/components/use-tree/use-tree.d.ts.map +1 -1
  32. package/cjs/components/use-tree/use-tree.js +180 -4
  33. package/cjs/components/use-tree/use-tree.type.d.ts +26 -0
  34. package/cjs/components/use-tree/use-tree.type.d.ts.map +1 -1
  35. package/cjs/components/use-treeselect/use-tiled.d.ts +1 -1
  36. package/cjs/components/use-treeselect/use-tiled.d.ts.map +1 -1
  37. package/cjs/components/use-treeselect/use-tiled.js +12 -18
  38. package/cjs/components/use-treeselect/use-tiled.type.d.ts +2 -0
  39. package/cjs/components/use-treeselect/use-tiled.type.d.ts.map +1 -1
  40. package/cjs/utils/tree.d.ts +1 -1
  41. package/cjs/utils/tree.d.ts.map +1 -1
  42. package/cjs/utils/tree.js +3 -9
  43. package/esm/common/use-position-style/index.d.ts.map +1 -1
  44. package/esm/common/use-position-style/index.js +2 -5
  45. package/esm/components/use-form/use-form-fieldset/fieldset-context.d.ts +1 -1
  46. package/esm/components/use-form/use-form-fieldset/fieldset-context.d.ts.map +1 -1
  47. package/esm/components/use-form/use-form-fieldset/fieldset-context.js +2 -1
  48. package/esm/components/use-form/use-form-fieldset/index.d.ts +1 -0
  49. package/esm/components/use-form/use-form-fieldset/index.d.ts.map +1 -1
  50. package/esm/components/use-form/use-form-fieldset/index.js +2 -1
  51. package/esm/components/use-form/use-form.d.ts.map +1 -1
  52. package/esm/components/use-form/use-form.js +4 -2
  53. package/esm/components/use-form/use-form.type.d.ts +7 -0
  54. package/esm/components/use-form/use-form.type.d.ts.map +1 -1
  55. package/esm/components/use-table/use-table-sort.d.ts +5 -0
  56. package/esm/components/use-table/use-table-sort.d.ts.map +1 -1
  57. package/esm/components/use-table/use-table-sort.js +5 -1
  58. package/esm/components/use-table/use-table-tree.d.ts +13 -0
  59. package/esm/components/use-table/use-table-tree.d.ts.map +1 -1
  60. package/esm/components/use-table/use-table-tree.js +67 -0
  61. package/esm/components/use-table/use-table-virtual.d.ts.map +1 -1
  62. package/esm/components/use-table/use-table-virtual.js +3 -1
  63. package/esm/components/use-tree/index.d.ts +2 -1
  64. package/esm/components/use-tree/index.d.ts.map +1 -1
  65. package/esm/components/use-tree/index.js +2 -1
  66. package/esm/components/use-tree/use-tree-node.d.ts.map +1 -1
  67. package/esm/components/use-tree/use-tree-node.js +1 -5
  68. package/esm/components/use-tree/use-tree-node.type.d.ts +18 -0
  69. package/esm/components/use-tree/use-tree-node.type.d.ts.map +1 -1
  70. package/esm/components/use-tree/use-tree-virtual-node.d.ts +13 -0
  71. package/esm/components/use-tree/use-tree-virtual-node.d.ts.map +1 -0
  72. package/esm/components/use-tree/use-tree-virtual-node.js +85 -0
  73. package/esm/components/use-tree/use-tree.d.ts.map +1 -1
  74. package/esm/components/use-tree/use-tree.js +181 -5
  75. package/esm/components/use-tree/use-tree.type.d.ts +26 -0
  76. package/esm/components/use-tree/use-tree.type.d.ts.map +1 -1
  77. package/esm/components/use-treeselect/use-tiled.d.ts +1 -1
  78. package/esm/components/use-treeselect/use-tiled.d.ts.map +1 -1
  79. package/esm/components/use-treeselect/use-tiled.js +10 -16
  80. package/esm/components/use-treeselect/use-tiled.type.d.ts +2 -0
  81. package/esm/components/use-treeselect/use-tiled.type.d.ts.map +1 -1
  82. package/esm/utils/tree.d.ts +1 -1
  83. package/esm/utils/tree.d.ts.map +1 -1
  84. package/esm/utils/tree.js +3 -9
  85. 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":"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"}
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;;;;;;qBA4BgB,MAAM,SAAS,MAAM;;CA8ClD,CAAC;AAEF,eAAe,QAAQ,CAAC"}
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 data = props.data,
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 = _useTree2.datum;
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
- if (!filterText || !onAdvancedFilter) {
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;AAE5E,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,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"}
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"}
@@ -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: (filterDatum: FilterDatum<any>, rawDatum: FilterDatum<any>, tiledId: KeygenResult[]) => any[];
12
+ export declare const mergeFilteredTree: (filterData: any, rawDatum: FilterDatum<any>, tiledId: KeygenResult[]) => any;
13
13
  export {};
14
14
  //# sourceMappingURL=tree.d.ts.map
@@ -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,gBACf,YAAY,GAAG,CAAC,YACnB,YAAY,GAAG,CAAC,WACjB,YAAY,EAAE,UAqBxB,CAAC"}
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(filterDatum, rawDatum, tiledId) {
66
- var filterData = filterDatum.data;
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 = filterDatum.getKey(node);
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);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sheinx/hooks",
3
- "version": "3.5.8",
3
+ "version": "3.6.0-beta.10",
4
4
  "description": "",
5
5
  "keywords": [],
6
6
  "license": "MIT",