@sheinx/hooks 3.6.0-beta.1 → 3.6.0-beta.2
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.js +1 -1
- package/cjs/components/use-tree/use-tree.d.ts.map +1 -1
- package/cjs/components/use-tree/use-tree.js +12 -0
- 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.js +1 -1
- package/esm/components/use-tree/use-tree.d.ts.map +1 -1
- package/esm/components/use-tree/use-tree.js +12 -0
- 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
@@ -262,7 +262,7 @@ var usePositionStyle = exports.usePositionStyle = function usePositionStyle(conf
|
|
262
262
|
style: hideStyle
|
263
263
|
};
|
264
264
|
var rect = context.parentRect;
|
265
|
-
if (scrollElRef !== null && scrollElRef !== void 0 && scrollElRef.current && (_scrollElRef$current = scrollElRef.current) !== null && _scrollElRef$current !== void 0 && _scrollElRef$current.contains(parentElRef.current)) {
|
265
|
+
if (!show && scrollElRef !== null && scrollElRef !== void 0 && scrollElRef.current && (_scrollElRef$current = scrollElRef.current) !== null && _scrollElRef$current !== void 0 && _scrollElRef$current.contains(parentElRef.current)) {
|
266
266
|
var _scrollElRef$current2;
|
267
267
|
var visibleRect = ((_scrollElRef$current2 = scrollElRef.current) === null || _scrollElRef$current2 === void 0 ? void 0 : _scrollElRef$current2.getBoundingClientRect()) || {};
|
268
268
|
if (rect.bottom < visibleRect.top || rect.top > visibleRect.bottom || rect.right < visibleRect.left || rect.left > visibleRect.right) {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"use-tree.d.ts","sourceRoot":"","sources":["use-tree.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,aAAa,EAKb,SAAS,EACV,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;
|
1
|
+
{"version":3,"file":"use-tree.d.ts","sourceRoot":"","sources":["use-tree.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,aAAa,EAKb,SAAS,EACV,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAYjD,eAAO,MAAM,IAAI;IACf;;OAEG;;IAGH;;OAEG;;IAGH;;OAEG;;IAGH;;OAEG;;IAGH;;OAEG;;CAEJ,CAAC;AAEF,QAAA,MAAM,OAAO;;;;;CAucZ,CAAC;AAEF,eAAe,OAAO,CAAC"}
|
@@ -26,6 +26,7 @@ function toArray(value) {
|
|
26
26
|
if (!Array.isArray(value)) return [value];
|
27
27
|
return value;
|
28
28
|
}
|
29
|
+
var global_tree_map = new Map();
|
29
30
|
var MODE = exports.MODE = {
|
30
31
|
/**
|
31
32
|
* 返回全选数据,包含父节点和子节点
|
@@ -345,6 +346,15 @@ var useTree = function useTree(props) {
|
|
345
346
|
return 2;
|
346
347
|
};
|
347
348
|
var setData = function setData(data) {
|
349
|
+
// if(data && global_tree_map.get(data)){
|
350
|
+
// context.cachedValue = global_tree_map.get(data)?.cachedValue || []
|
351
|
+
// context.pathMap = global_tree_map.get(data)?.pathMap || new Map()
|
352
|
+
// context.dataMap = global_tree_map.get(data)?.dataMap || new Map()
|
353
|
+
// context.valueMap = global_tree_map.get(data)?.valueMap || new Map()
|
354
|
+
// context.unmatchedValueMap = global_tree_map.get(data)?.unmatchedValueMap || new Map()
|
355
|
+
// return
|
356
|
+
// }
|
357
|
+
|
348
358
|
var prevValue = context.value || [];
|
349
359
|
context.cachedValue = [];
|
350
360
|
context.pathMap = new Map();
|
@@ -356,6 +366,8 @@ var useTree = function useTree(props) {
|
|
356
366
|
initData(context.data, []);
|
357
367
|
initValue();
|
358
368
|
setValue(prevValue);
|
369
|
+
|
370
|
+
// global_tree_map.set(data, context)
|
359
371
|
};
|
360
372
|
var set = function set(id, checked, direction) {
|
361
373
|
if (!isDisabled(id)) {
|
@@ -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"}
|
@@ -5,7 +5,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
5
5
|
});
|
6
6
|
exports.default = void 0;
|
7
7
|
var _react = require("react");
|
8
|
-
var
|
8
|
+
var _useTree2 = require("../use-tree");
|
9
9
|
var _tree = require("../../utils/tree");
|
10
10
|
var _jsxRuntime = require("react/jsx-runtime");
|
11
11
|
function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
|
@@ -19,7 +19,7 @@ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len
|
|
19
19
|
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
|
20
20
|
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
21
21
|
var useTiled = function useTiled(props) {
|
22
|
-
var
|
22
|
+
var filterData = props.data,
|
23
23
|
keygen = props.keygen,
|
24
24
|
_props$childrenKey = props.childrenKey,
|
25
25
|
childrenKey = _props$childrenKey === void 0 ? 'children' : _props$childrenKey,
|
@@ -35,20 +35,20 @@ var useTiled = function useTiled(props) {
|
|
35
35
|
_useState2 = _slicedToArray(_useState, 2),
|
36
36
|
tileds = _useState2[0],
|
37
37
|
setTileds = _useState2[1];
|
38
|
-
var _useTree = (0,
|
39
|
-
data: data,
|
40
|
-
childrenKey: childrenKey,
|
41
|
-
keygen: keygen,
|
42
|
-
isControlled: false
|
43
|
-
}),
|
44
|
-
datum = _useTree.datum;
|
45
|
-
var _useTree2 = (0, _useTree3.useTree)({
|
38
|
+
var _useTree = (0, _useTree2.useTree)({
|
46
39
|
data: rawData,
|
40
|
+
datum: props.rawDatum,
|
47
41
|
childrenKey: childrenKey,
|
48
42
|
keygen: keygen,
|
49
43
|
isControlled: false
|
50
44
|
}),
|
51
|
-
rawDatum =
|
45
|
+
rawDatum = _useTree.datum;
|
46
|
+
if (!filterText || !onAdvancedFilter) {
|
47
|
+
return {
|
48
|
+
data: filterData,
|
49
|
+
onFilter: onFilter
|
50
|
+
};
|
51
|
+
}
|
52
52
|
var handleToggle = function handleToggle(e, key) {
|
53
53
|
e.stopPropagation();
|
54
54
|
var nextTileds = _toConsumableArray(tileds);
|
@@ -80,13 +80,7 @@ var useTiled = function useTiled(props) {
|
|
80
80
|
children: moreIcon()
|
81
81
|
});
|
82
82
|
};
|
83
|
-
|
84
|
-
return {
|
85
|
-
data: data,
|
86
|
-
onFilter: onFilter
|
87
|
-
};
|
88
|
-
}
|
89
|
-
var nextData = (0, _tree.mergeFilteredTree)(datum, rawDatum, tileds);
|
83
|
+
var nextData = (0, _tree.mergeFilteredTree)(filterData, rawDatum, tileds);
|
90
84
|
return {
|
91
85
|
data: nextData,
|
92
86
|
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/cjs/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/cjs/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/cjs/utils/tree.js
CHANGED
@@ -68,19 +68,13 @@ var getFilterTree = exports.getFilterTree = function getFilterTree(treeNodes, fi
|
|
68
68
|
return node;
|
69
69
|
});
|
70
70
|
};
|
71
|
-
var mergeFilteredTree = exports.mergeFilteredTree = function mergeFilteredTree(
|
72
|
-
var
|
73
|
-
var childrenKey = filterDatum.childrenKey;
|
71
|
+
var mergeFilteredTree = exports.mergeFilteredTree = function mergeFilteredTree(filterData, rawDatum, tiledId) {
|
72
|
+
var childrenKey = rawDatum.childrenKey;
|
74
73
|
if (tiledId.length === 0) return filterData;
|
75
74
|
var recursion = function recursion(node) {
|
76
|
-
var nodeKey =
|
75
|
+
var nodeKey = rawDatum.getKey(node);
|
77
76
|
if (tiledId.indexOf(nodeKey) >= 0) {
|
78
77
|
node[childrenKey] = (0, _clone.deepClone)(rawDatum.getDataById(nodeKey)[childrenKey] || []);
|
79
|
-
} else {
|
80
|
-
var item = filterDatum.getDataById(nodeKey);
|
81
|
-
if (item && item[childrenKey]) {
|
82
|
-
node[childrenKey] = (0, _clone.deepClone)(item[childrenKey] || []);
|
83
|
-
}
|
84
78
|
}
|
85
79
|
var children = node[childrenKey] || [];
|
86
80
|
children.map(recursion);
|
@@ -253,7 +253,7 @@ export var usePositionStyle = function usePositionStyle(config) {
|
|
253
253
|
style: hideStyle
|
254
254
|
};
|
255
255
|
var rect = context.parentRect;
|
256
|
-
if (scrollElRef !== null && scrollElRef !== void 0 && scrollElRef.current && (_scrollElRef$current = scrollElRef.current) !== null && _scrollElRef$current !== void 0 && _scrollElRef$current.contains(parentElRef.current)) {
|
256
|
+
if (!show && scrollElRef !== null && scrollElRef !== void 0 && scrollElRef.current && (_scrollElRef$current = scrollElRef.current) !== null && _scrollElRef$current !== void 0 && _scrollElRef$current.contains(parentElRef.current)) {
|
257
257
|
var _scrollElRef$current2;
|
258
258
|
var visibleRect = ((_scrollElRef$current2 = scrollElRef.current) === null || _scrollElRef$current2 === void 0 ? void 0 : _scrollElRef$current2.getBoundingClientRect()) || {};
|
259
259
|
if (rect.bottom < visibleRect.top || rect.top > visibleRect.bottom || rect.right < visibleRect.left || rect.left > visibleRect.right) {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"use-tree.d.ts","sourceRoot":"","sources":["use-tree.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,aAAa,EAKb,SAAS,EACV,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;
|
1
|
+
{"version":3,"file":"use-tree.d.ts","sourceRoot":"","sources":["use-tree.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,aAAa,EAKb,SAAS,EACV,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAYjD,eAAO,MAAM,IAAI;IACf;;OAEG;;IAGH;;OAEG;;IAGH;;OAEG;;IAGH;;OAEG;;IAGH;;OAEG;;CAEJ,CAAC;AAEF,QAAA,MAAM,OAAO;;;;;CAucZ,CAAC;AAEF,eAAe,OAAO,CAAC"}
|
@@ -19,6 +19,7 @@ function toArray(value) {
|
|
19
19
|
if (!Array.isArray(value)) return [value];
|
20
20
|
return value;
|
21
21
|
}
|
22
|
+
var global_tree_map = new Map();
|
22
23
|
export var MODE = {
|
23
24
|
/**
|
24
25
|
* 返回全选数据,包含父节点和子节点
|
@@ -338,6 +339,15 @@ var useTree = function useTree(props) {
|
|
338
339
|
return 2;
|
339
340
|
};
|
340
341
|
var setData = function setData(data) {
|
342
|
+
// if(data && global_tree_map.get(data)){
|
343
|
+
// context.cachedValue = global_tree_map.get(data)?.cachedValue || []
|
344
|
+
// context.pathMap = global_tree_map.get(data)?.pathMap || new Map()
|
345
|
+
// context.dataMap = global_tree_map.get(data)?.dataMap || new Map()
|
346
|
+
// context.valueMap = global_tree_map.get(data)?.valueMap || new Map()
|
347
|
+
// context.unmatchedValueMap = global_tree_map.get(data)?.unmatchedValueMap || new Map()
|
348
|
+
// return
|
349
|
+
// }
|
350
|
+
|
341
351
|
var prevValue = context.value || [];
|
342
352
|
context.cachedValue = [];
|
343
353
|
context.pathMap = new Map();
|
@@ -349,6 +359,8 @@ var useTree = function useTree(props) {
|
|
349
359
|
initData(context.data, []);
|
350
360
|
initValue();
|
351
361
|
setValue(prevValue);
|
362
|
+
|
363
|
+
// global_tree_map.set(data, context)
|
352
364
|
};
|
353
365
|
var set = function set(id, checked, direction) {
|
354
366
|
if (!isDisabled(id)) {
|
@@ -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);
|