@douyinfe/semi-foundation 2.54.1 → 2.55.0-beta.0
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.
|
@@ -48,7 +48,7 @@ export default class NavigationFoundation<P = Record<string, any>, S = Record<st
|
|
|
48
48
|
* @param {*} lifecycle
|
|
49
49
|
* @returns
|
|
50
50
|
*/
|
|
51
|
-
init(lifecycle
|
|
51
|
+
init(lifecycle?: string): {
|
|
52
52
|
selectedKeys: any;
|
|
53
53
|
itemKeysMap: {};
|
|
54
54
|
openKeys: any[];
|
|
@@ -74,9 +74,9 @@ export default class NavigationFoundation<P = Record<string, any>, S = Record<st
|
|
|
74
74
|
* @param {*} itemKeysMap
|
|
75
75
|
*/
|
|
76
76
|
getWillOpenKeys(itemKeysMap: ItemKey2ParentKeysMap): any[];
|
|
77
|
-
getShouldOpenKeys(itemKeysMap?: ItemKey2ParentKeysMap, selectedKeys?: string | number[]): unknown[];
|
|
77
|
+
getShouldOpenKeys(itemKeysMap?: ItemKey2ParentKeysMap, selectedKeys?: (string | number)[]): unknown[];
|
|
78
78
|
destroy(): void;
|
|
79
|
-
selectLevelZeroParentKeys(itemKeysMap: ItemKey2ParentKeysMap,
|
|
79
|
+
selectLevelZeroParentKeys(itemKeysMap: ItemKey2ParentKeysMap, itemKeys: (string | number)[]): any[];
|
|
80
80
|
formatItems(items?: ItemProps[]): any[];
|
|
81
81
|
handleSelect(data: OnSelectData): void;
|
|
82
82
|
judgeIfOpen(openKeys: (string | number)[], items: NavItemType[]): boolean;
|
|
@@ -141,10 +141,14 @@ class NavigationFoundation extends _foundation.default {
|
|
|
141
141
|
selectedKeys,
|
|
142
142
|
mode
|
|
143
143
|
} = this.getProps();
|
|
144
|
+
const {
|
|
145
|
+
openKeys: stateOpenKeys = []
|
|
146
|
+
} = this.getStates();
|
|
144
147
|
let willOpenKeys = openKeys || defaultOpenKeys || [];
|
|
145
148
|
if (!(Array.isArray(defaultOpenKeys) || Array.isArray(openKeys)) && mode === _constants.strings.MODE_VERTICAL && (Array.isArray(defaultSelectedKeys) || Array.isArray(selectedKeys))) {
|
|
146
149
|
const currentSelectedKeys = Array.isArray(selectedKeys) ? selectedKeys : defaultSelectedKeys;
|
|
147
|
-
willOpenKeys = this.getShouldOpenKeys(itemKeysMap, currentSelectedKeys);
|
|
150
|
+
willOpenKeys = stateOpenKeys.concat(this.getShouldOpenKeys(itemKeysMap, currentSelectedKeys));
|
|
151
|
+
willOpenKeys = Array.from(new Set(willOpenKeys));
|
|
148
152
|
}
|
|
149
153
|
return [...willOpenKeys];
|
|
150
154
|
}
|
|
@@ -165,13 +169,10 @@ class NavigationFoundation extends _foundation.default {
|
|
|
165
169
|
return [...willOpenKeySet];
|
|
166
170
|
}
|
|
167
171
|
destroy() {}
|
|
168
|
-
selectLevelZeroParentKeys(itemKeysMap) {
|
|
172
|
+
selectLevelZeroParentKeys(itemKeysMap, itemKeys) {
|
|
169
173
|
const _itemKeysMap = (0, _isNullOrUndefined.default)(itemKeysMap) ? this.getState('itemKeysMap') : itemKeysMap;
|
|
170
174
|
// console.log(itemKeysMap);
|
|
171
175
|
const willAddKeys = [];
|
|
172
|
-
for (var _len2 = arguments.length, itemKeys = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {
|
|
173
|
-
itemKeys[_key2 - 1] = arguments[_key2];
|
|
174
|
-
}
|
|
175
176
|
if (itemKeys.length) {
|
|
176
177
|
for (const itemKey of itemKeys) {
|
|
177
178
|
if (Array.isArray(_itemKeysMap[itemKey]) && _itemKeysMap[itemKey].length) {
|
|
@@ -48,7 +48,7 @@ export default class NavigationFoundation<P = Record<string, any>, S = Record<st
|
|
|
48
48
|
* @param {*} lifecycle
|
|
49
49
|
* @returns
|
|
50
50
|
*/
|
|
51
|
-
init(lifecycle
|
|
51
|
+
init(lifecycle?: string): {
|
|
52
52
|
selectedKeys: any;
|
|
53
53
|
itemKeysMap: {};
|
|
54
54
|
openKeys: any[];
|
|
@@ -74,9 +74,9 @@ export default class NavigationFoundation<P = Record<string, any>, S = Record<st
|
|
|
74
74
|
* @param {*} itemKeysMap
|
|
75
75
|
*/
|
|
76
76
|
getWillOpenKeys(itemKeysMap: ItemKey2ParentKeysMap): any[];
|
|
77
|
-
getShouldOpenKeys(itemKeysMap?: ItemKey2ParentKeysMap, selectedKeys?: string | number[]): unknown[];
|
|
77
|
+
getShouldOpenKeys(itemKeysMap?: ItemKey2ParentKeysMap, selectedKeys?: (string | number)[]): unknown[];
|
|
78
78
|
destroy(): void;
|
|
79
|
-
selectLevelZeroParentKeys(itemKeysMap: ItemKey2ParentKeysMap,
|
|
79
|
+
selectLevelZeroParentKeys(itemKeysMap: ItemKey2ParentKeysMap, itemKeys: (string | number)[]): any[];
|
|
80
80
|
formatItems(items?: ItemProps[]): any[];
|
|
81
81
|
handleSelect(data: OnSelectData): void;
|
|
82
82
|
judgeIfOpen(openKeys: (string | number)[], items: NavItemType[]): boolean;
|
|
@@ -134,10 +134,14 @@ export default class NavigationFoundation extends BaseFoundation {
|
|
|
134
134
|
selectedKeys,
|
|
135
135
|
mode
|
|
136
136
|
} = this.getProps();
|
|
137
|
+
const {
|
|
138
|
+
openKeys: stateOpenKeys = []
|
|
139
|
+
} = this.getStates();
|
|
137
140
|
let willOpenKeys = openKeys || defaultOpenKeys || [];
|
|
138
141
|
if (!(Array.isArray(defaultOpenKeys) || Array.isArray(openKeys)) && mode === strings.MODE_VERTICAL && (Array.isArray(defaultSelectedKeys) || Array.isArray(selectedKeys))) {
|
|
139
142
|
const currentSelectedKeys = Array.isArray(selectedKeys) ? selectedKeys : defaultSelectedKeys;
|
|
140
|
-
willOpenKeys = this.getShouldOpenKeys(itemKeysMap, currentSelectedKeys);
|
|
143
|
+
willOpenKeys = stateOpenKeys.concat(this.getShouldOpenKeys(itemKeysMap, currentSelectedKeys));
|
|
144
|
+
willOpenKeys = Array.from(new Set(willOpenKeys));
|
|
141
145
|
}
|
|
142
146
|
return [...willOpenKeys];
|
|
143
147
|
}
|
|
@@ -158,13 +162,10 @@ export default class NavigationFoundation extends BaseFoundation {
|
|
|
158
162
|
return [...willOpenKeySet];
|
|
159
163
|
}
|
|
160
164
|
destroy() {}
|
|
161
|
-
selectLevelZeroParentKeys(itemKeysMap) {
|
|
165
|
+
selectLevelZeroParentKeys(itemKeysMap, itemKeys) {
|
|
162
166
|
const _itemKeysMap = isNullOrUndefined(itemKeysMap) ? this.getState('itemKeysMap') : itemKeysMap;
|
|
163
167
|
// console.log(itemKeysMap);
|
|
164
168
|
const willAddKeys = [];
|
|
165
|
-
for (var _len2 = arguments.length, itemKeys = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {
|
|
166
|
-
itemKeys[_key2 - 1] = arguments[_key2];
|
|
167
|
-
}
|
|
168
169
|
if (itemKeys.length) {
|
|
169
170
|
for (const itemKey of itemKeys) {
|
|
170
171
|
if (Array.isArray(_itemKeysMap[itemKey]) && _itemKeysMap[itemKey].length) {
|
package/navigation/foundation.ts
CHANGED
|
@@ -114,7 +114,7 @@ export default class NavigationFoundation<P = Record<string, any>, S = Record<st
|
|
|
114
114
|
* @param {*} lifecycle
|
|
115
115
|
* @returns
|
|
116
116
|
*/
|
|
117
|
-
init(lifecycle
|
|
117
|
+
init(lifecycle?: string) {
|
|
118
118
|
const { defaultSelectedKeys, selectedKeys } = this.getProps();
|
|
119
119
|
let willSelectedKeys = selectedKeys || defaultSelectedKeys || [];
|
|
120
120
|
const { itemKeysMap, willOpenKeys, formattedItems } = this.getCalcState();
|
|
@@ -168,6 +168,7 @@ export default class NavigationFoundation<P = Record<string, any>, S = Record<st
|
|
|
168
168
|
*/
|
|
169
169
|
getWillOpenKeys(itemKeysMap: ItemKey2ParentKeysMap) {
|
|
170
170
|
const { defaultOpenKeys, openKeys, defaultSelectedKeys, selectedKeys, mode } = this.getProps();
|
|
171
|
+
const { openKeys: stateOpenKeys = [] } = this.getStates();
|
|
171
172
|
|
|
172
173
|
let willOpenKeys = openKeys || defaultOpenKeys || [];
|
|
173
174
|
if (
|
|
@@ -175,12 +176,13 @@ export default class NavigationFoundation<P = Record<string, any>, S = Record<st
|
|
|
175
176
|
Array.isArray(openKeys)) && mode === strings.MODE_VERTICAL && (Array.isArray(defaultSelectedKeys) || Array.isArray(selectedKeys))
|
|
176
177
|
) {
|
|
177
178
|
const currentSelectedKeys = Array.isArray(selectedKeys) ? selectedKeys : defaultSelectedKeys;
|
|
178
|
-
willOpenKeys = this.getShouldOpenKeys(itemKeysMap, currentSelectedKeys);
|
|
179
|
+
willOpenKeys = stateOpenKeys.concat(this.getShouldOpenKeys(itemKeysMap, currentSelectedKeys));
|
|
180
|
+
willOpenKeys = Array.from(new Set(willOpenKeys));
|
|
179
181
|
}
|
|
180
182
|
return [...willOpenKeys];
|
|
181
183
|
}
|
|
182
184
|
|
|
183
|
-
getShouldOpenKeys(itemKeysMap: ItemKey2ParentKeysMap = {}, selectedKeys: string | number[]= []) {
|
|
185
|
+
getShouldOpenKeys(itemKeysMap: ItemKey2ParentKeysMap = {}, selectedKeys: (string | number)[] = []) {
|
|
184
186
|
const willOpenKeySet = new Set();
|
|
185
187
|
|
|
186
188
|
if (Array.isArray(selectedKeys) && selectedKeys.length) {
|
|
@@ -200,7 +202,7 @@ export default class NavigationFoundation<P = Record<string, any>, S = Record<st
|
|
|
200
202
|
|
|
201
203
|
destroy() {}
|
|
202
204
|
|
|
203
|
-
selectLevelZeroParentKeys(itemKeysMap: ItemKey2ParentKeysMap,
|
|
205
|
+
selectLevelZeroParentKeys(itemKeysMap: ItemKey2ParentKeysMap, itemKeys: (string | number)[]) {
|
|
204
206
|
const _itemKeysMap = isNullOrUndefined(itemKeysMap) ? this.getState('itemKeysMap') : itemKeysMap;
|
|
205
207
|
// console.log(itemKeysMap);
|
|
206
208
|
|
package/package.json
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@douyinfe/semi-foundation",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.55.0-beta.0",
|
|
4
4
|
"description": "",
|
|
5
5
|
"scripts": {
|
|
6
6
|
"build:lib": "node ./scripts/compileLib.js",
|
|
7
7
|
"prepublishOnly": "npm run build:lib"
|
|
8
8
|
},
|
|
9
9
|
"dependencies": {
|
|
10
|
-
"@douyinfe/semi-animation": "2.
|
|
10
|
+
"@douyinfe/semi-animation": "2.55.0-beta.0",
|
|
11
11
|
"async-validator": "^3.5.0",
|
|
12
12
|
"classnames": "^2.2.6",
|
|
13
13
|
"date-fns": "^2.29.3",
|
|
@@ -24,7 +24,7 @@
|
|
|
24
24
|
"*.scss",
|
|
25
25
|
"*.css"
|
|
26
26
|
],
|
|
27
|
-
"gitHead": "
|
|
27
|
+
"gitHead": "1b20ba60f41785e247a71987235b5f3bbd577ff0",
|
|
28
28
|
"devDependencies": {
|
|
29
29
|
"@babel/plugin-transform-runtime": "^7.15.8",
|
|
30
30
|
"@babel/preset-env": "^7.15.8",
|