@sheinx/hooks 3.6.0-beta.1 → 3.6.0-beta.11
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-filter/use-filter.d.ts.map +1 -1
- package/cjs/common/use-position-style/check-border.d.ts +6 -0
- package/cjs/common/use-position-style/check-border.d.ts.map +1 -0
- package/cjs/common/use-position-style/check-border.js +35 -0
- package/cjs/common/use-position-style/get-position-style.d.ts +1 -0
- package/cjs/common/use-position-style/get-position-style.d.ts.map +1 -1
- package/cjs/common/use-position-style/get-position-style.js +14 -8
- package/cjs/common/use-position-style/index.d.ts +1 -0
- package/cjs/common/use-position-style/index.d.ts.map +1 -1
- package/cjs/common/use-position-style/index.js +15 -8
- package/cjs/components/use-cascader/use-cascader.d.ts.map +1 -1
- package/cjs/components/use-cascader/use-cascader.type.d.ts +2 -1
- package/cjs/components/use-cascader/use-cascader.type.d.ts.map +1 -1
- package/cjs/components/use-form/use-form-control/use-form-control.d.ts.map +1 -1
- package/cjs/components/use-form/use-form-control/use-form-control.js +3 -2
- 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 +2 -2
- package/cjs/components/use-form/use-form.d.ts.map +1 -1
- package/cjs/components/use-form/use-form.js +62 -13
- package/cjs/components/use-form/use-form.type.d.ts +5 -3
- package/cjs/components/use-form/use-form.type.d.ts.map +1 -1
- package/cjs/components/use-input/use-input-format.d.ts.map +1 -1
- package/cjs/components/use-input/use-input-format.js +12 -4
- 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 +6 -4
- package/cjs/components/use-tree/index.d.ts +3 -2
- package/cjs/components/use-tree/index.d.ts.map +1 -1
- package/cjs/components/use-tree/index.js +18 -2
- 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 +191 -6
- package/cjs/components/use-tree/use-tree.type.d.ts +31 -1
- 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/is.d.ts +2 -0
- package/cjs/utils/is.d.ts.map +1 -1
- package/cjs/utils/is.js +5 -2
- package/cjs/utils/object.d.ts +12 -0
- package/cjs/utils/object.d.ts.map +1 -1
- package/cjs/utils/object.js +34 -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/cjs/utils/warning.js +5 -5
- package/esm/common/use-filter/use-filter.d.ts.map +1 -1
- package/esm/common/use-position-style/check-border.d.ts +6 -0
- package/esm/common/use-position-style/check-border.d.ts.map +1 -0
- package/esm/common/use-position-style/check-border.js +29 -0
- package/esm/common/use-position-style/get-position-style.d.ts +1 -0
- package/esm/common/use-position-style/get-position-style.d.ts.map +1 -1
- package/esm/common/use-position-style/get-position-style.js +14 -8
- package/esm/common/use-position-style/index.d.ts +1 -0
- package/esm/common/use-position-style/index.d.ts.map +1 -1
- package/esm/common/use-position-style/index.js +15 -8
- package/esm/components/use-cascader/use-cascader.d.ts.map +1 -1
- package/esm/components/use-cascader/use-cascader.type.d.ts +2 -1
- package/esm/components/use-cascader/use-cascader.type.d.ts.map +1 -1
- package/esm/components/use-form/use-form-control/use-form-control.d.ts.map +1 -1
- package/esm/components/use-form/use-form-control/use-form-control.js +3 -2
- 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 +2 -2
- package/esm/components/use-form/use-form.d.ts.map +1 -1
- package/esm/components/use-form/use-form.js +63 -14
- package/esm/components/use-form/use-form.type.d.ts +5 -3
- package/esm/components/use-form/use-form.type.d.ts.map +1 -1
- package/esm/components/use-input/use-input-format.d.ts.map +1 -1
- package/esm/components/use-input/use-input-format.js +12 -4
- 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 +6 -4
- package/esm/components/use-tree/index.d.ts +3 -2
- package/esm/components/use-tree/index.d.ts.map +1 -1
- package/esm/components/use-tree/index.js +3 -2
- 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 +193 -8
- package/esm/components/use-tree/use-tree.type.d.ts +31 -1
- 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/is.d.ts +2 -0
- package/esm/utils/is.d.ts.map +1 -1
- package/esm/utils/is.js +4 -1
- package/esm/utils/object.d.ts +12 -0
- package/esm/utils/object.d.ts.map +1 -1
- package/esm/utils/object.js +34 -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/esm/utils/warning.js +5 -5
- 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
|
-
import { isFunc, isString, isNumber, isArray, isUnMatchedData } from "../../utils/is";
|
16
|
-
import { devUseWarning } from "../../utils";
|
22
|
+
import { isFunc, isString, isNumber, isArray, isUnMatchedData, isOptionalDisabled } from "../../utils/is";
|
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,
|
@@ -58,14 +67,19 @@ var useTree = function useTree(props) {
|
|
58
67
|
_props$defaultExpande = props.defaultExpanded,
|
59
68
|
defaultExpanded = _props$defaultExpande === void 0 ? [] : _props$defaultExpande,
|
60
69
|
defaultExpandAll = props.defaultExpandAll,
|
61
|
-
disabledProps = props.disabled,
|
62
70
|
unmatch = props.unmatch,
|
63
71
|
isControlled = props.isControlled,
|
64
72
|
onExpandProp = props.onExpand;
|
73
|
+
var disabledProps = isOptionalDisabled(props.disabled) ? props.disabled.disabled : props.disabled;
|
74
|
+
var isRealtime = isOptionalDisabled(props.disabled) ? props.disabled.isRealtime : false;
|
65
75
|
var _useState = useState(false),
|
66
76
|
_useState2 = _slicedToArray(_useState, 2),
|
67
77
|
inited = _useState2[0],
|
68
78
|
setInited = _useState2[1];
|
79
|
+
var _useState3 = useState([]),
|
80
|
+
_useState4 = _slicedToArray(_useState3, 2),
|
81
|
+
dataFlat = _useState4[0],
|
82
|
+
setDataFlat = _useState4[1];
|
69
83
|
var _useInputAble = useInputAble({
|
70
84
|
value: expandedProp,
|
71
85
|
defaultValue: defaultExpanded,
|
@@ -78,6 +92,8 @@ var useTree = function useTree(props) {
|
|
78
92
|
var _useRef = useRef({
|
79
93
|
pathMap: new Map(),
|
80
94
|
dataMap: new Map(),
|
95
|
+
dataFlatStatusMap: new Map(),
|
96
|
+
dataFlat: [],
|
81
97
|
forceUpdateMap: new Map(),
|
82
98
|
valueMap: new Map(),
|
83
99
|
updateMap: new Map(),
|
@@ -109,11 +125,27 @@ var useTree = function useTree(props) {
|
|
109
125
|
expanded: shouldDefaultExpand
|
110
126
|
};
|
111
127
|
}
|
128
|
+
if (virtual) {
|
129
|
+
return {
|
130
|
+
active: isActive,
|
131
|
+
expanded: context.dataFlatStatusMap.get(id).expanded
|
132
|
+
};
|
133
|
+
}
|
112
134
|
return {
|
113
135
|
active: isActive,
|
114
136
|
expanded: !!(expandeds && expandeds.indexOf(id) >= 0)
|
115
137
|
};
|
116
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
|
+
};
|
117
149
|
var get = function get(id) {
|
118
150
|
return context.valueMap.get(id);
|
119
151
|
};
|
@@ -126,7 +158,6 @@ var useTree = function useTree(props) {
|
|
126
158
|
if (keygen && (isString(keygen) || isNumber(keygen))) {
|
127
159
|
return item[keygen];
|
128
160
|
}
|
129
|
-
|
130
161
|
// 降级处理
|
131
162
|
return id + (id ? ',' : '') + index;
|
132
163
|
};
|
@@ -224,6 +255,8 @@ var useTree = function useTree(props) {
|
|
224
255
|
};
|
225
256
|
var initData = function initData(data, path, disabled) {
|
226
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;
|
227
260
|
var ids = [];
|
228
261
|
for (var i = 0; i < data.length; i++) {
|
229
262
|
var item = data[i];
|
@@ -235,6 +268,28 @@ var useTree = function useTree(props) {
|
|
235
268
|
}
|
236
269
|
// 制作 data mapping
|
237
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
|
+
}
|
238
293
|
var _isDisabled = !!disabled;
|
239
294
|
if (_isDisabled === false) {
|
240
295
|
_isDisabled = getDisabled()(item);
|
@@ -243,7 +298,7 @@ var useTree = function useTree(props) {
|
|
243
298
|
ids.push(id);
|
244
299
|
var children = [];
|
245
300
|
if (Array.isArray(item[childrenKey])) {
|
246
|
-
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);
|
247
302
|
if (_children) children = _children;
|
248
303
|
}
|
249
304
|
context.pathMap.set(id, {
|
@@ -321,7 +376,15 @@ var useTree = function useTree(props) {
|
|
321
376
|
var isDisabled = function isDisabled(id) {
|
322
377
|
if (isFunc(disabledProps)) {
|
323
378
|
var node = context.pathMap.get(id);
|
324
|
-
if (node)
|
379
|
+
if (node) {
|
380
|
+
if (isRealtime) {
|
381
|
+
var item = context.dataMap.get(id);
|
382
|
+
if (!item) return false;
|
383
|
+
return getDisabled()(item);
|
384
|
+
} else {
|
385
|
+
return node.isDisabled;
|
386
|
+
}
|
387
|
+
}
|
325
388
|
return false;
|
326
389
|
}
|
327
390
|
return !!disabledProps;
|
@@ -338,17 +401,37 @@ var useTree = function useTree(props) {
|
|
338
401
|
return 2;
|
339
402
|
};
|
340
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
|
+
|
341
413
|
var prevValue = context.value || [];
|
342
414
|
context.cachedValue = [];
|
343
415
|
context.pathMap = new Map();
|
344
416
|
context.dataMap = new Map();
|
417
|
+
context.dataFlat = [];
|
418
|
+
context.dataFlatStatusMap = new Map();
|
345
419
|
context.valueMap = new Map();
|
346
420
|
context.unmatchedValueMap = new Map();
|
347
421
|
context.data = toArray(data);
|
422
|
+
if (virtual) {
|
423
|
+
context.dataFlat = [];
|
424
|
+
setDataFlat([]);
|
425
|
+
}
|
348
426
|
if (!data) return;
|
349
427
|
initData(context.data, []);
|
428
|
+
if (virtual) {
|
429
|
+
setDataFlat(context.dataFlat);
|
430
|
+
}
|
350
431
|
initValue();
|
351
432
|
setValue(prevValue);
|
433
|
+
|
434
|
+
// global_tree_map.set(data, context)
|
352
435
|
};
|
353
436
|
var set = function set(id, checked, direction) {
|
354
437
|
if (!isDisabled(id)) {
|
@@ -390,6 +473,101 @@ var useTree = function useTree(props) {
|
|
390
473
|
}
|
391
474
|
return current;
|
392
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
|
+
};
|
393
571
|
useEffect(function () {
|
394
572
|
if (defaultExpandAll) {
|
395
573
|
var nextExpanded = [];
|
@@ -400,7 +578,7 @@ var useTree = function useTree(props) {
|
|
400
578
|
});
|
401
579
|
onExpand(nextExpanded);
|
402
580
|
}
|
403
|
-
}, []);
|
581
|
+
}, [context.dataMap]);
|
404
582
|
useEffect(function () {
|
405
583
|
if (props.datum) return;
|
406
584
|
if (!dataUpdate) return;
|
@@ -416,25 +594,32 @@ var useTree = function useTree(props) {
|
|
416
594
|
var datum = useLatestObj({
|
417
595
|
get: get,
|
418
596
|
set: set,
|
597
|
+
insertFlat: insertFlat,
|
598
|
+
removeFlat: removeFlat,
|
599
|
+
expandedFlat: expandedFlat,
|
419
600
|
getPath: getPath,
|
420
601
|
getValue: getValue,
|
421
602
|
getChecked: getChecked,
|
422
603
|
getKey: getKey,
|
604
|
+
getFlatData: getFlatData,
|
423
605
|
getDataByValues: getDataByValues,
|
424
606
|
setValue: setValue,
|
425
607
|
setData: setData,
|
426
608
|
isDisabled: isDisabled,
|
427
609
|
bindNode: bindNode,
|
610
|
+
bindVirtualNode: bindVirtualNode,
|
428
611
|
getDataById: getDataById,
|
429
612
|
bindUpdate: bindUpdate,
|
430
613
|
unBindUpdate: unBindUpdate,
|
431
614
|
isUnMatched: isUnMatched,
|
432
615
|
childrenKey: childrenKey,
|
433
616
|
data: data,
|
617
|
+
dataFlat: dataFlat,
|
434
618
|
pathMap: context.pathMap,
|
435
619
|
dataMap: context.dataMap,
|
436
620
|
valueMap: context.valueMap,
|
437
|
-
updateMap: context.updateMap
|
621
|
+
updateMap: context.updateMap,
|
622
|
+
dataFlatStatusMap: context.dataFlatStatusMap
|
438
623
|
});
|
439
624
|
return {
|
440
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>;
|
@@ -21,6 +34,10 @@ export interface TreePathType {
|
|
21
34
|
indexPath: number[];
|
22
35
|
index: number;
|
23
36
|
}
|
37
|
+
export interface DisabledOption<DataItem> {
|
38
|
+
disabled: (data: DataItem) => boolean;
|
39
|
+
isRealtime: boolean;
|
40
|
+
}
|
24
41
|
export interface BaseTreeProps<DataItem> {
|
25
42
|
/**
|
26
43
|
* @private 内部属性
|
@@ -63,7 +80,7 @@ export interface BaseTreeProps<DataItem> {
|
|
63
80
|
* @cn 显示选择框时有效,为 true 时,所有节点禁用选择,为函数时,根据函数返回结果确定是否禁用
|
64
81
|
* @default false
|
65
82
|
*/
|
66
|
-
disabled?: boolean | ((item: DataItem) => boolean)
|
83
|
+
disabled?: boolean | ((item: DataItem) => boolean) | DisabledOption<DataItem>;
|
67
84
|
/**
|
68
85
|
* @en Auxiliary method for generating key. When it is a function, use the return value of this function. When it is a string, use the data value corresponding to this string. For example, "id" is the same thing as (d) => d.id
|
69
86
|
* @cn 生成 key 的辅助方法, 为函数时,使用此函数返回值, 为 string 时,使用这个 string 对应的数据值。如 "id",相当于 (d) => d.id
|
@@ -106,10 +123,17 @@ export interface BaseTreeProps<DataItem> {
|
|
106
123
|
* @private 内部数据处理
|
107
124
|
*/
|
108
125
|
datum?: TreeDatum<DataItem>;
|
126
|
+
/**
|
127
|
+
* @private 是否虚拟化
|
128
|
+
*/
|
129
|
+
virtual?: boolean;
|
109
130
|
}
|
110
131
|
export interface TreeDatum<DataItem> {
|
111
132
|
get: (id: KeygenResult) => CheckedStatusType | undefined;
|
112
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;
|
113
137
|
getPath: (id: KeygenResult) => TreePathType | undefined;
|
114
138
|
getValue: () => KeygenResult[];
|
115
139
|
getChecked: (id: KeygenResult) => boolean | 'indeterminate';
|
@@ -122,6 +146,10 @@ export interface TreeDatum<DataItem> {
|
|
122
146
|
active: boolean;
|
123
147
|
expanded: boolean;
|
124
148
|
};
|
149
|
+
bindVirtualNode: (id: KeygenResult, update: UpdateFunc, data: DataItem) => {
|
150
|
+
active: boolean;
|
151
|
+
expanded: boolean;
|
152
|
+
};
|
125
153
|
getDataById: (id: KeygenResult) => DataItem | {
|
126
154
|
IS_NOT_MATCHED_VALUE: boolean;
|
127
155
|
value: KeygenResult | null;
|
@@ -132,8 +160,10 @@ export interface TreeDatum<DataItem> {
|
|
132
160
|
updateMap: Map<KeygenResult, UpdateFunc>;
|
133
161
|
childrenKey: string;
|
134
162
|
data: DataItem[];
|
163
|
+
dataFlat: FlatNodeType<DataItem>[];
|
135
164
|
pathMap: Map<KeygenResult, TreePathType>;
|
136
165
|
dataMap: Map<KeygenResult, DataItem>;
|
137
166
|
valueMap: Map<KeygenResult, CheckedStatusType>;
|
167
|
+
dataFlatStatusMap: Map<KeygenResult, FlatMapType>;
|
138
168
|
}
|
139
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,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,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/is.d.ts
CHANGED
@@ -1,4 +1,5 @@
|
|
1
1
|
import { ObjectType } from '../common/type';
|
2
|
+
import { DisabledOption } from '../components/use-tree/use-tree.type';
|
2
3
|
import { UnMatchedData } from '../common/use-list-select/use-list.type';
|
3
4
|
import React from 'react';
|
4
5
|
export declare function isBrowser(): boolean;
|
@@ -25,4 +26,5 @@ export declare function isNamedComponent(type: any): type is React.ForwardRefExo
|
|
25
26
|
export declare const isMacOS: () => boolean;
|
26
27
|
export declare const isFirefox: () => boolean;
|
27
28
|
export declare function isDomElement(element: any): element is HTMLElement;
|
29
|
+
export declare const isOptionalDisabled: <DataItem>(disabled: unknown) => disabled is DisabledOption<DataItem>;
|
28
30
|
//# sourceMappingURL=is.d.ts.map
|
package/esm/utils/is.d.ts.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"is.d.ts","sourceRoot":"","sources":["is.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,yCAAyC,CAAC;AACxE,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,wBAAgB,SAAS,YAExB;AASD,eAAO,MAAM,OAAO,4BAAgB,CAAC;AACrC,eAAO,MAAM,QAAQ,QAAS,OAAO,sBACc,CAAC;AACpD,eAAO,MAAM,MAAM,QAAS,OAAO,gBAAqC,CAAC;AACzE,eAAO,MAAM,SAAS,QAAS,OAAO,mBAA2C,CAAC;AAClF,eAAO,MAAM,OAAO,QAAS,OAAO,KAAG,OAA+B,CAAC;AACvE,eAAO,MAAM,QAAQ,MAAO,OAAO,gBAAuC,CAAC;AAC3E,eAAO,MAAM,QAAQ,QAAS,OAAO,KAAG,OAAgC,CAAC;AACzE,eAAO,MAAM,QAAQ,MAAO,OAAO,gBAAuC,CAAC;AAC3E,eAAO,MAAM,WAAW,QAAS,GAAG,qBAAwC,CAAC;AAC7E,eAAO,MAAM,KAAK,QAjBsB,OAAO,mBAiBb,CAAC;AACnC,eAAO,MAAM,KAAK,QAlBsB,OAAO,mBAkBb,CAAC;AACnC,eAAO,MAAM,QAAQ,QAAS,OAAO,KAAG,OAUvC,CAAC;AACF,eAAO,MAAM,eAAe,QAAS,OAAO,yBAE3C,CAAC;AACF,eAAO,MAAM,WAAW,QAAS,OAAO,KAAG,OAS1C,CAAC;AAEF,eAAO,MAAM,MAAM,MAAO,OAAO,kBAA2C,CAAC;AAE7E,eAAO,MAAM,SAAS,MAAO,OAAO,YACiC,CAAC;AAGtE,eAAO,MAAM,KAAK,MAAO,OAAO,KAAG,OAAkB,CAAC;AAEtD,eAAO,MAAM,OAAO,QAAS,OAAO,KAAG,OActC,CAAC;AAEF,eAAO,MAAM,MAAM,OAAQ,OAAO,6EASjC,CAAC;AAEF,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,GAAG,GAAG,IAAI,IAAI,KAAK,CAAC,yBAAyB,CAAC,OAAO,CAAC,CAE5F;AAED,eAAO,MAAM,OAAO,QAAO,OACqC,CAAC;AAEjE,eAAO,MAAM,SAAS,QAAO,OAG5B,CAAC;AAEF,wBAAgB,YAAY,CAAC,OAAO,EAAE,GAAG,GAAG,OAAO,IAAI,WAAW,CAQjE"}
|
1
|
+
{"version":3,"file":"is.d.ts","sourceRoot":"","sources":["is.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,MAAM,sCAAsC,CAAC;AACtE,OAAO,EAAE,aAAa,EAAE,MAAM,yCAAyC,CAAC;AACxE,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,wBAAgB,SAAS,YAExB;AASD,eAAO,MAAM,OAAO,4BAAgB,CAAC;AACrC,eAAO,MAAM,QAAQ,QAAS,OAAO,sBACc,CAAC;AACpD,eAAO,MAAM,MAAM,QAAS,OAAO,gBAAqC,CAAC;AACzE,eAAO,MAAM,SAAS,QAAS,OAAO,mBAA2C,CAAC;AAClF,eAAO,MAAM,OAAO,QAAS,OAAO,KAAG,OAA+B,CAAC;AACvE,eAAO,MAAM,QAAQ,MAAO,OAAO,gBAAuC,CAAC;AAC3E,eAAO,MAAM,QAAQ,QAAS,OAAO,KAAG,OAAgC,CAAC;AACzE,eAAO,MAAM,QAAQ,MAAO,OAAO,gBAAuC,CAAC;AAC3E,eAAO,MAAM,WAAW,QAAS,GAAG,qBAAwC,CAAC;AAC7E,eAAO,MAAM,KAAK,QAjBsB,OAAO,mBAiBb,CAAC;AACnC,eAAO,MAAM,KAAK,QAlBsB,OAAO,mBAkBb,CAAC;AACnC,eAAO,MAAM,QAAQ,QAAS,OAAO,KAAG,OAUvC,CAAC;AACF,eAAO,MAAM,eAAe,QAAS,OAAO,yBAE3C,CAAC;AACF,eAAO,MAAM,WAAW,QAAS,OAAO,KAAG,OAS1C,CAAC;AAEF,eAAO,MAAM,MAAM,MAAO,OAAO,kBAA2C,CAAC;AAE7E,eAAO,MAAM,SAAS,MAAO,OAAO,YACiC,CAAC;AAGtE,eAAO,MAAM,KAAK,MAAO,OAAO,KAAG,OAAkB,CAAC;AAEtD,eAAO,MAAM,OAAO,QAAS,OAAO,KAAG,OActC,CAAC;AAEF,eAAO,MAAM,MAAM,OAAQ,OAAO,6EASjC,CAAC;AAEF,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,GAAG,GAAG,IAAI,IAAI,KAAK,CAAC,yBAAyB,CAAC,OAAO,CAAC,CAE5F;AAED,eAAO,MAAM,OAAO,QAAO,OACqC,CAAC;AAEjE,eAAO,MAAM,SAAS,QAAO,OAG5B,CAAC;AAEF,wBAAgB,YAAY,CAAC,OAAO,EAAE,GAAG,GAAG,OAAO,IAAI,WAAW,CAQjE;AAED,eAAO,MAAM,kBAAkB,uBACnB,OAAO,yCAGlB,CAAC"}
|
package/esm/utils/is.js
CHANGED
@@ -98,4 +98,7 @@ export var isFirefox = function isFirefox() {
|
|
98
98
|
export function isDomElement(element) {
|
99
99
|
return (typeof HTMLElement === "undefined" ? "undefined" : _typeof(HTMLElement)) === 'object' ? element instanceof HTMLElement // DOM2
|
100
100
|
: element && _typeof(element) === 'object' && element !== null && element.nodeType === 1 && typeof element.nodeName === 'string';
|
101
|
-
}
|
101
|
+
}
|
102
|
+
export var isOptionalDisabled = function isOptionalDisabled(disabled) {
|
103
|
+
return isObject(disabled) && disabled.hasOwnProperty('isRealtime');
|
104
|
+
};
|
package/esm/utils/object.d.ts
CHANGED
@@ -33,5 +33,17 @@ export declare const removeProps: <T extends ObjectType, K extends ObjectType>(t
|
|
33
33
|
* console.log(keys); // ['a.b.c', 'a.b', 'a']
|
34
34
|
*/
|
35
35
|
export declare const getAllKeyPaths: (obj: ObjectType, parentKey?: string) => string[];
|
36
|
+
/**
|
37
|
+
* 获取完整的字段key
|
38
|
+
* @param fields 字段key
|
39
|
+
* @param allFields 所有字段key
|
40
|
+
* @returns 完整的字段key
|
41
|
+
* @example
|
42
|
+
* const fields = ['user']
|
43
|
+
* const allFields = ['user', 'user.name', 'user.age', 'user[0].name', 'user[0].age', 'user[1].name', 'user[1].age']
|
44
|
+
* const completeFields = getCompleteFieldKeys(fields, allFields)
|
45
|
+
* console.log(completeFields) // ['user', 'user.name', 'user.age', 'user[0].name', 'user[0].age', 'user[1].name', 'user[1].age']
|
46
|
+
*/
|
47
|
+
export declare const getCompleteFieldKeys: (fields: string | string[], allFields: string[]) => string[];
|
36
48
|
export {};
|
37
49
|
//# sourceMappingURL=object.d.ts.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"object.d.ts","sourceRoot":"","sources":["object.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAE5C,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,UAGvC;AASD,UAAU,WAAW;IACnB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,YAAY,CAAC,EAAE,GAAG,CAAC;IACnB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAGD,eAAO,MAAM,YAAY,QAAS,UAAU,UAG3C,CAAC;AAGF,eAAO,MAAM,SAAS,2CAEZ,UAAU,YACT,WAAW,eAwBrB,CAAC;AAEF,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,+DA4BxC;AAED,UAAU,cAAc;IACtB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,eAAO,MAAM,OAAO,WACV,UAAU,QACZ,MAAM,SACL,GAAG,YACD,cAAc,eAiDxB,CAAC;AAEF,eAAO,MAAM,OAAO,WAAY,UAAU,QAAQ,MAAM,YAAW,WAAW,YAyB7E,CAAC;AAEF,eAAO,MAAM,UAAU,WAAY,UAAU,QAAQ,MAAM,eA0B1D,CAAC;AAEF,eAAO,MAAM,OAAO,WAAY,UAAU,QAAQ,MAAM,YAavD,CAAC;AAEF,eAAO,MAAM,OAAO,QAAS,UAAU,YAItC,CAAC;AAEF,eAAO,MAAM,WAAW,wFAQvB,CAAC;AAEF;;;;;;;;;GASG;AACH,eAAO,MAAM,cAAc,QAAS,UAAU,cAAa,MAAM,KAAQ,MAAM,EAoB9E,CAAC"}
|
1
|
+
{"version":3,"file":"object.d.ts","sourceRoot":"","sources":["object.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAE5C,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,UAGvC;AASD,UAAU,WAAW;IACnB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,YAAY,CAAC,EAAE,GAAG,CAAC;IACnB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAGD,eAAO,MAAM,YAAY,QAAS,UAAU,UAG3C,CAAC;AAGF,eAAO,MAAM,SAAS,2CAEZ,UAAU,YACT,WAAW,eAwBrB,CAAC;AAEF,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,+DA4BxC;AAED,UAAU,cAAc;IACtB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,eAAO,MAAM,OAAO,WACV,UAAU,QACZ,MAAM,SACL,GAAG,YACD,cAAc,eAiDxB,CAAC;AAEF,eAAO,MAAM,OAAO,WAAY,UAAU,QAAQ,MAAM,YAAW,WAAW,YAyB7E,CAAC;AAEF,eAAO,MAAM,UAAU,WAAY,UAAU,QAAQ,MAAM,eA0B1D,CAAC;AAEF,eAAO,MAAM,OAAO,WAAY,UAAU,QAAQ,MAAM,YAavD,CAAC;AAEF,eAAO,MAAM,OAAO,QAAS,UAAU,YAItC,CAAC;AAEF,eAAO,MAAM,WAAW,wFAQvB,CAAC;AAEF;;;;;;;;;GASG;AACH,eAAO,MAAM,cAAc,QAAS,UAAU,cAAa,MAAM,KAAQ,MAAM,EAoB9E,CAAC;AAGF;;;;;;;;;;GAUG;AACH,eAAO,MAAM,oBAAoB,WAAY,MAAM,GAAG,MAAM,EAAE,aAAa,MAAM,EAAE,KAAG,MAAM,EAmB3F,CAAA"}
|
package/esm/utils/object.js
CHANGED
@@ -10,7 +10,7 @@ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
10
10
|
function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }
|
11
11
|
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); }
|
12
12
|
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; }
|
13
|
-
import { isMergeable, isObject } from "./is";
|
13
|
+
import { isMergeable, isObject, isArray } from "./is";
|
14
14
|
export function insertPoint(name) {
|
15
15
|
var reg = /(\[\d+\])/gi;
|
16
16
|
return name.replace(reg, function (s, m, i) {
|
@@ -292,4 +292,37 @@ export var getAllKeyPaths = function getAllKeyPaths(obj) {
|
|
292
292
|
}
|
293
293
|
return keys.concat(obj[key] !== null && _typeof(obj[key]) === 'object' ? getAllKeyPaths(obj[key], newKey) : newKey);
|
294
294
|
}, []);
|
295
|
+
};
|
296
|
+
|
297
|
+
/**
|
298
|
+
* 获取完整的字段key
|
299
|
+
* @param fields 字段key
|
300
|
+
* @param allFields 所有字段key
|
301
|
+
* @returns 完整的字段key
|
302
|
+
* @example
|
303
|
+
* const fields = ['user']
|
304
|
+
* const allFields = ['user', 'user.name', 'user.age', 'user[0].name', 'user[0].age', 'user[1].name', 'user[1].age']
|
305
|
+
* const completeFields = getCompleteFieldKeys(fields, allFields)
|
306
|
+
* console.log(completeFields) // ['user', 'user.name', 'user.age', 'user[0].name', 'user[0].age', 'user[1].name', 'user[1].age']
|
307
|
+
*/
|
308
|
+
export var getCompleteFieldKeys = function getCompleteFieldKeys(fields, allFields) {
|
309
|
+
var fieldsArray = isArray(fields) ? fields : [fields];
|
310
|
+
var completeFields = [];
|
311
|
+
fieldsArray.forEach(function (field) {
|
312
|
+
var na = "".concat(field, "[");
|
313
|
+
if (field.endsWith(']')) {
|
314
|
+
na = field;
|
315
|
+
}
|
316
|
+
var no = "".concat(field, ".");
|
317
|
+
completeFields.push(field);
|
318
|
+
var childFields = allFields.filter(function (f) {
|
319
|
+
return f.startsWith(na) || f.startsWith(no);
|
320
|
+
});
|
321
|
+
if (childFields.length) {
|
322
|
+
completeFields.push.apply(completeFields, _toConsumableArray(childFields));
|
323
|
+
}
|
324
|
+
});
|
325
|
+
|
326
|
+
// 返回之前去重
|
327
|
+
return Array.from(new Set(completeFields));
|
295
328
|
};
|
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"}
|