@douyinfe/semi-ui 2.46.2 → 2.47.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.
- package/dist/umd/semi-ui.js +198 -120
- package/dist/umd/semi-ui.js.map +1 -1
- package/dist/umd/semi-ui.min.js +1 -1
- package/dist/umd/semi-ui.min.js.map +1 -1
- package/lib/cjs/popconfirm/index.d.ts +3 -0
- package/lib/cjs/popconfirm/index.js +6 -3
- package/lib/cjs/tree/index.d.ts +2 -1
- package/lib/cjs/tree/index.js +29 -19
- package/lib/cjs/tree/interface.d.ts +2 -1
- package/lib/cjs/tree/nodeList.js +1 -7
- package/lib/cjs/treeSelect/index.d.ts +3 -2
- package/lib/cjs/treeSelect/index.js +39 -27
- package/lib/es/popconfirm/index.d.ts +3 -0
- package/lib/es/popconfirm/index.js +6 -3
- package/lib/es/tree/index.d.ts +2 -1
- package/lib/es/tree/index.js +29 -19
- package/lib/es/tree/interface.d.ts +2 -1
- package/lib/es/tree/nodeList.js +1 -7
- package/lib/es/treeSelect/index.d.ts +3 -2
- package/lib/es/treeSelect/index.js +39 -27
- package/package.json +8 -8
package/dist/umd/semi-ui.js
CHANGED
|
@@ -36271,6 +36271,7 @@ var uniq_default = /*#__PURE__*/__webpack_require__.n(uniq);
|
|
|
36271
36271
|
|
|
36272
36272
|
|
|
36273
36273
|
|
|
36274
|
+
|
|
36274
36275
|
/**
|
|
36275
36276
|
* Part of the utils function implementation process reference
|
|
36276
36277
|
* https://github.com/react-component/tree/blob/master/src/util.tsx
|
|
@@ -36289,17 +36290,27 @@ function treeUtil_isValid(val) {
|
|
|
36289
36290
|
* @param filteredShownKeys
|
|
36290
36291
|
* need expanded keys, provides `true` means all expanded
|
|
36291
36292
|
*/
|
|
36292
|
-
function flattenTreeData(treeNodeList, expandedKeys) {
|
|
36293
|
-
let filteredShownKeys = arguments.length >
|
|
36293
|
+
function flattenTreeData(treeNodeList, expandedKeys, keyMaps) {
|
|
36294
|
+
let filteredShownKeys = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : false;
|
|
36294
36295
|
const flattenList = [];
|
|
36295
36296
|
const filterSearch = Boolean(filteredShownKeys);
|
|
36297
|
+
const realKeyName = get_default()(keyMaps, 'key', 'key');
|
|
36298
|
+
const realChildrenName = get_default()(keyMaps, 'children', 'children');
|
|
36296
36299
|
function flatten(list) {
|
|
36297
36300
|
let parent = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
|
|
36298
36301
|
return list.map((treeNode, index) => {
|
|
36299
36302
|
const pos = getPosition(parent ? parent.pos : '0', index);
|
|
36300
|
-
const mergedKey = treeNode
|
|
36303
|
+
const mergedKey = treeNode[realKeyName];
|
|
36304
|
+
const otherData = {};
|
|
36305
|
+
if (keyMaps) {
|
|
36306
|
+
Object.entries(omit_default()(keyMaps, 'children')).forEach(_ref => {
|
|
36307
|
+
let [key, value] = _ref;
|
|
36308
|
+
const result = treeNode[value];
|
|
36309
|
+
!isUndefined_default()(result) && (otherData[key] = result);
|
|
36310
|
+
});
|
|
36311
|
+
}
|
|
36301
36312
|
// Add FlattenDataNode into list
|
|
36302
|
-
const flattenNode = Object.assign(Object.assign({}, pick_default()(treeNode, ['key', 'label', 'value', 'icon', 'disabled', 'isLeaf'])), {
|
|
36313
|
+
const flattenNode = Object.assign(Object.assign(Object.assign({}, pick_default()(treeNode, ['key', 'label', 'value', 'icon', 'disabled', 'isLeaf'])), otherData), {
|
|
36303
36314
|
parent,
|
|
36304
36315
|
pos,
|
|
36305
36316
|
children: null,
|
|
@@ -36312,7 +36323,7 @@ function flattenTreeData(treeNodeList, expandedKeys) {
|
|
|
36312
36323
|
}
|
|
36313
36324
|
// Loop treeNode children
|
|
36314
36325
|
if (expandedKeys.has(mergedKey) && (!filterSearch || !isBooleanFilteredShownKeys && filteredShownKeys.has(mergedKey))) {
|
|
36315
|
-
flattenNode.children = flatten(treeNode
|
|
36326
|
+
flattenNode.children = flatten(treeNode[realChildrenName] || [], flattenNode);
|
|
36316
36327
|
} else {
|
|
36317
36328
|
flattenNode.children = [];
|
|
36318
36329
|
}
|
|
@@ -36347,17 +36358,20 @@ function convertJsonToData(treeJson) {
|
|
|
36347
36358
|
/**
|
|
36348
36359
|
* Traverse all the data by `treeData`.
|
|
36349
36360
|
*/
|
|
36350
|
-
function traverseDataNodes(treeNodes, callback) {
|
|
36361
|
+
function traverseDataNodes(treeNodes, callback, keyMaps) {
|
|
36362
|
+
const realKeyName = get_default()(keyMaps, 'key', 'key');
|
|
36363
|
+
const realChildrenName = get_default()(keyMaps, 'children', 'children');
|
|
36351
36364
|
const processNode = (node, ind, parent) => {
|
|
36352
|
-
const children = node ? node
|
|
36365
|
+
const children = node ? node[realChildrenName] : treeNodes;
|
|
36353
36366
|
const pos = node ? getPosition(parent.pos, ind) : '0';
|
|
36354
36367
|
// Process node if is not root
|
|
36355
36368
|
if (node) {
|
|
36369
|
+
const nodeKey = get_default()(node, realKeyName, null);
|
|
36356
36370
|
const data = {
|
|
36357
36371
|
data: Object.assign({}, node),
|
|
36358
36372
|
ind,
|
|
36359
36373
|
pos,
|
|
36360
|
-
key:
|
|
36374
|
+
key: nodeKey !== null ? nodeKey : pos,
|
|
36361
36375
|
parentPos: parent.node ? parent.pos : null,
|
|
36362
36376
|
level: Number(parent.level) + 1
|
|
36363
36377
|
};
|
|
@@ -36377,7 +36391,7 @@ function traverseDataNodes(treeNodes, callback) {
|
|
|
36377
36391
|
processNode(null);
|
|
36378
36392
|
}
|
|
36379
36393
|
/* Convert data to entities map */
|
|
36380
|
-
function convertDataToEntities(dataNodes) {
|
|
36394
|
+
function convertDataToEntities(dataNodes, keyMaps) {
|
|
36381
36395
|
const posEntities = {};
|
|
36382
36396
|
const keyEntities = {};
|
|
36383
36397
|
const valueEntities = {};
|
|
@@ -36386,6 +36400,7 @@ function convertDataToEntities(dataNodes) {
|
|
|
36386
36400
|
keyEntities,
|
|
36387
36401
|
valueEntities
|
|
36388
36402
|
};
|
|
36403
|
+
const realValueName = get_default()(keyMaps, 'value', 'value');
|
|
36389
36404
|
traverseDataNodes(dataNodes, data => {
|
|
36390
36405
|
const {
|
|
36391
36406
|
pos,
|
|
@@ -36393,7 +36408,7 @@ function convertDataToEntities(dataNodes) {
|
|
|
36393
36408
|
parentPos
|
|
36394
36409
|
} = data;
|
|
36395
36410
|
const entity = Object.assign({}, data);
|
|
36396
|
-
const value = get_default()(entity,
|
|
36411
|
+
const value = get_default()(entity, `data.${realValueName}`, null);
|
|
36397
36412
|
if (value !== null) {
|
|
36398
36413
|
valueEntities[value] = key;
|
|
36399
36414
|
}
|
|
@@ -36405,7 +36420,7 @@ function convertDataToEntities(dataNodes) {
|
|
|
36405
36420
|
entity.parent.children = entity.parent.children || [];
|
|
36406
36421
|
entity.parent.children.push(entity);
|
|
36407
36422
|
}
|
|
36408
|
-
});
|
|
36423
|
+
}, keyMaps);
|
|
36409
36424
|
return wrapper;
|
|
36410
36425
|
}
|
|
36411
36426
|
/* Get key by value */
|
|
@@ -36803,7 +36818,8 @@ function filterTreeData(info) {
|
|
|
36803
36818
|
treeData,
|
|
36804
36819
|
filterTreeNode,
|
|
36805
36820
|
filterProps,
|
|
36806
|
-
prevExpandedKeys
|
|
36821
|
+
prevExpandedKeys,
|
|
36822
|
+
keyMaps
|
|
36807
36823
|
} = info;
|
|
36808
36824
|
let filteredOptsKeys = [];
|
|
36809
36825
|
filteredOptsKeys = Object.values(keyEntities).filter(item => filter(inputValue, item.data, filterTreeNode, filterProps)).map(item => item.key);
|
|
@@ -36814,7 +36830,7 @@ function filterTreeData(info) {
|
|
|
36814
36830
|
}
|
|
36815
36831
|
const shownChildKeys = findDescendantKeys(filteredOptsKeys, keyEntities, true);
|
|
36816
36832
|
const filteredShownKeys = new Set([...shownChildKeys, ...expandedOptsKeys]);
|
|
36817
|
-
const flattenNodes = flattenTreeData(treeData, new Set(expandedOptsKeys), showFilteredOnly && filteredShownKeys);
|
|
36833
|
+
const flattenNodes = flattenTreeData(treeData, new Set(expandedOptsKeys), keyMaps, showFilteredOnly && filteredShownKeys);
|
|
36818
36834
|
return {
|
|
36819
36835
|
flattenNodes,
|
|
36820
36836
|
filteredKeys: new Set(filteredOptsKeys),
|
|
@@ -36823,16 +36839,18 @@ function filterTreeData(info) {
|
|
|
36823
36839
|
};
|
|
36824
36840
|
}
|
|
36825
36841
|
// return data.value if data.value exist else fall back to key
|
|
36826
|
-
function getValueOrKey(data) {
|
|
36842
|
+
function getValueOrKey(data, keyMaps) {
|
|
36843
|
+
const valueName = get_default()(keyMaps, 'value', 'value');
|
|
36844
|
+
const keyName = get_default()(keyMaps, 'key', 'key');
|
|
36827
36845
|
if (Array.isArray(data)) {
|
|
36828
|
-
return data.map(item => get_default()(item,
|
|
36846
|
+
return data.map(item => get_default()(item, valueName, item[keyName]));
|
|
36829
36847
|
}
|
|
36830
|
-
return get_default()(data,
|
|
36848
|
+
return get_default()(data, valueName, data[keyName]);
|
|
36831
36849
|
}
|
|
36832
36850
|
/* Convert value to string */
|
|
36833
|
-
function normalizeValue(value, withObject) {
|
|
36851
|
+
function normalizeValue(value, withObject, keyMaps) {
|
|
36834
36852
|
if (withObject && treeUtil_isValid(value)) {
|
|
36835
|
-
return getValueOrKey(value);
|
|
36853
|
+
return getValueOrKey(value, keyMaps);
|
|
36836
36854
|
} else {
|
|
36837
36855
|
return value;
|
|
36838
36856
|
}
|
|
@@ -36841,8 +36859,9 @@ function updateKeys(keySet, keyEntities) {
|
|
|
36841
36859
|
const keyArr = [...keySet];
|
|
36842
36860
|
return keyArr.filter(key => key in keyEntities);
|
|
36843
36861
|
}
|
|
36844
|
-
function calcDisabledKeys(keyEntities) {
|
|
36845
|
-
const
|
|
36862
|
+
function calcDisabledKeys(keyEntities, keyMaps) {
|
|
36863
|
+
const disabledName = get_default()(keyMaps, 'disabled', 'disabled');
|
|
36864
|
+
const disabledKeys = Object.keys(keyEntities).filter(key => keyEntities[key].data[disabledName]);
|
|
36846
36865
|
const {
|
|
36847
36866
|
checkedKeys
|
|
36848
36867
|
} = calcCheckedKeys(disabledKeys, keyEntities);
|
|
@@ -54553,25 +54572,34 @@ class inputFoundation_InputFoundation extends foundation {
|
|
|
54553
54572
|
} = options;
|
|
54554
54573
|
const {
|
|
54555
54574
|
format,
|
|
54556
|
-
type
|
|
54575
|
+
type,
|
|
54576
|
+
rangeSeparator
|
|
54557
54577
|
} = this._adapter.getProps();
|
|
54558
54578
|
const insetFormatToken = getInsetInputFormatToken({
|
|
54559
54579
|
type,
|
|
54560
54580
|
format
|
|
54561
54581
|
});
|
|
54562
|
-
|
|
54563
|
-
|
|
54564
|
-
insetInputValue: newInsetInputValue
|
|
54582
|
+
const newInsetInputValue = set_default()(cloneDeep_default()(insetInputValue), valuePath, value);
|
|
54583
|
+
const insetInputStr = this.concatInsetInputValue({
|
|
54584
|
+
insetInputValue: newInsetInputValue
|
|
54585
|
+
});
|
|
54586
|
+
const parsedInsetInputValueFromInputStr = getInsetInputValueFromInsetInputStr({
|
|
54587
|
+
inputValue: insetInputStr,
|
|
54588
|
+
type,
|
|
54589
|
+
rangeSeparator
|
|
54590
|
+
});
|
|
54591
|
+
const filledTimeInsetInputValue = this._autoFillTimeToInsetInputValue({
|
|
54592
|
+
insetInputValue: parsedInsetInputValueFromInputStr,
|
|
54565
54593
|
valuePath,
|
|
54566
54594
|
format: insetFormatToken
|
|
54567
54595
|
});
|
|
54568
|
-
const
|
|
54569
|
-
insetInputValue:
|
|
54596
|
+
const finalInsetInputStr = this.concatInsetInputValue({
|
|
54597
|
+
insetInputValue: filledTimeInsetInputValue
|
|
54570
54598
|
});
|
|
54571
54599
|
this._adapter.notifyInsetInputChange({
|
|
54572
|
-
insetInputValue:
|
|
54600
|
+
insetInputValue: filledTimeInsetInputValue,
|
|
54573
54601
|
format: insetFormatToken,
|
|
54574
|
-
insetInputStr:
|
|
54602
|
+
insetInputStr: finalInsetInputStr
|
|
54575
54603
|
});
|
|
54576
54604
|
}
|
|
54577
54605
|
_autoFillTimeToInsetInputValue(options) {
|
|
@@ -72510,7 +72538,8 @@ class Popconfirm extends BaseComponent {
|
|
|
72510
72538
|
style,
|
|
72511
72539
|
cancelType,
|
|
72512
72540
|
icon,
|
|
72513
|
-
prefixCls
|
|
72541
|
+
prefixCls,
|
|
72542
|
+
showCloseIcon
|
|
72514
72543
|
} = this.props;
|
|
72515
72544
|
const {
|
|
72516
72545
|
direction
|
|
@@ -72544,14 +72573,14 @@ class Popconfirm extends BaseComponent {
|
|
|
72544
72573
|
}, showTitle ? /*#__PURE__*/external_root_React_commonjs2_react_commonjs_react_amd_react_default().createElement("div", {
|
|
72545
72574
|
className: `${prefixCls}-header-title`,
|
|
72546
72575
|
"x-semi-prop": "title"
|
|
72547
|
-
}, title) : null), /*#__PURE__*/external_root_React_commonjs2_react_commonjs_react_amd_react_default().createElement(button_0, {
|
|
72576
|
+
}, title) : null), showCloseIcon ? /*#__PURE__*/external_root_React_commonjs2_react_commonjs_react_amd_react_default().createElement(button_0, {
|
|
72548
72577
|
className: `${prefixCls}-btn-close`,
|
|
72549
72578
|
icon: /*#__PURE__*/external_root_React_commonjs2_react_commonjs_react_amd_react_default().createElement(IconClose, null),
|
|
72550
72579
|
size: "small",
|
|
72551
72580
|
theme: 'borderless',
|
|
72552
72581
|
type: cancelType,
|
|
72553
72582
|
onClick: this.handleCancel
|
|
72554
|
-
})), showContent ? /*#__PURE__*/external_root_React_commonjs2_react_commonjs_react_amd_react_default().createElement("div", {
|
|
72583
|
+
}) : null), showContent ? /*#__PURE__*/external_root_React_commonjs2_react_commonjs_react_amd_react_default().createElement("div", {
|
|
72555
72584
|
className: bodyCls,
|
|
72556
72585
|
"x-semi-prop": "content"
|
|
72557
72586
|
}, isFunction_default()(content) ? content({
|
|
@@ -72715,6 +72744,7 @@ Popconfirm.propTypes = {
|
|
|
72715
72744
|
okButtonProps: (prop_types_default()).object,
|
|
72716
72745
|
cancelButtonProps: (prop_types_default()).object,
|
|
72717
72746
|
stopPropagation: prop_types_default().oneOfType([(prop_types_default()).bool, (prop_types_default()).string]),
|
|
72747
|
+
showCloseIcon: (prop_types_default()).bool,
|
|
72718
72748
|
zIndex: (prop_types_default()).number,
|
|
72719
72749
|
// private
|
|
72720
72750
|
trigger: (prop_types_default()).string,
|
|
@@ -72733,6 +72763,7 @@ Popconfirm.defaultProps = {
|
|
|
72733
72763
|
cancelType: 'tertiary',
|
|
72734
72764
|
prefixCls: popconfirm_constants_cssClasses.PREFIX,
|
|
72735
72765
|
zIndex: popconfirm_constants_numbers.DEFAULT_Z_INDEX,
|
|
72766
|
+
showCloseIcon: true,
|
|
72736
72767
|
onCancel: (noop_default()),
|
|
72737
72768
|
onConfirm: (noop_default()),
|
|
72738
72769
|
onClickOutSide: (noop_default())
|
|
@@ -78861,9 +78892,9 @@ class TableFoundation extends foundation {
|
|
|
78861
78892
|
}, pagination);
|
|
78862
78893
|
if (!this._pagerIsControlled()) {
|
|
78863
78894
|
const total = get_default()(propPagination, 'total', dataSource.length);
|
|
78864
|
-
const pageSize = get_default()(propPagination, 'pageSize', pagination.pageSize);
|
|
78865
78895
|
const {
|
|
78866
|
-
currentPage
|
|
78896
|
+
currentPage,
|
|
78897
|
+
pageSize
|
|
78867
78898
|
} = pagination;
|
|
78868
78899
|
const realTotalPage = Math.ceil(total / pageSize);
|
|
78869
78900
|
pagination.total = total;
|
|
@@ -87330,6 +87361,7 @@ class ToastFactory {
|
|
|
87330
87361
|
*/
|
|
87331
87362
|
|
|
87332
87363
|
|
|
87364
|
+
|
|
87333
87365
|
class TreeFoundation extends foundation {
|
|
87334
87366
|
constructor(adapter) {
|
|
87335
87367
|
super(Object.assign({}, adapter));
|
|
@@ -87442,7 +87474,8 @@ class TreeFoundation extends foundation {
|
|
|
87442
87474
|
} = this.getStates();
|
|
87443
87475
|
const {
|
|
87444
87476
|
leafOnly,
|
|
87445
|
-
checkRelation
|
|
87477
|
+
checkRelation,
|
|
87478
|
+
keyMaps
|
|
87446
87479
|
} = this.getProps();
|
|
87447
87480
|
let value;
|
|
87448
87481
|
let keyList = [];
|
|
@@ -87454,12 +87487,15 @@ class TreeFoundation extends foundation {
|
|
|
87454
87487
|
if (this.getProp('onChangeWithObject')) {
|
|
87455
87488
|
value = keyList.map(itemKey => keyEntities[itemKey].data);
|
|
87456
87489
|
} else {
|
|
87457
|
-
value = getValueOrKey(keyList.map(itemKey => keyEntities[itemKey].data));
|
|
87490
|
+
value = getValueOrKey(keyList.map(itemKey => keyEntities[itemKey].data), keyMaps);
|
|
87458
87491
|
}
|
|
87459
87492
|
this._adapter.notifyChange(value);
|
|
87460
87493
|
}
|
|
87461
87494
|
notifyChange(key, e) {
|
|
87462
87495
|
const isMultiple = this._isMultiple();
|
|
87496
|
+
const {
|
|
87497
|
+
keyMaps
|
|
87498
|
+
} = this.getProps();
|
|
87463
87499
|
const {
|
|
87464
87500
|
keyEntities
|
|
87465
87501
|
} = this.getStates();
|
|
@@ -87475,7 +87511,7 @@ class TreeFoundation extends foundation {
|
|
|
87475
87511
|
const {
|
|
87476
87512
|
data
|
|
87477
87513
|
} = get_default()(keyEntities, key);
|
|
87478
|
-
value = getValueOrKey(data);
|
|
87514
|
+
value = getValueOrKey(data, keyMaps);
|
|
87479
87515
|
}
|
|
87480
87516
|
this._adapter.notifyChange(value);
|
|
87481
87517
|
}
|
|
@@ -87492,8 +87528,10 @@ class TreeFoundation extends foundation {
|
|
|
87492
87528
|
const {
|
|
87493
87529
|
showFilteredOnly,
|
|
87494
87530
|
filterTreeNode,
|
|
87495
|
-
treeNodeFilterProp
|
|
87531
|
+
treeNodeFilterProp,
|
|
87532
|
+
keyMaps
|
|
87496
87533
|
} = this.getProps();
|
|
87534
|
+
const realFilterProp = treeNodeFilterProp !== 'label' ? treeNodeFilterProp : get_default()(keyMaps, 'label', 'label');
|
|
87497
87535
|
let filteredOptsKeys = [];
|
|
87498
87536
|
let expandedOptsKeys = [];
|
|
87499
87537
|
let flattenNodes = [];
|
|
@@ -87501,13 +87539,13 @@ class TreeFoundation extends foundation {
|
|
|
87501
87539
|
if (!sugInput) {
|
|
87502
87540
|
expandedOptsKeys = findAncestorKeys(selectedKeys, keyEntities);
|
|
87503
87541
|
expandedOptsKeys.forEach(item => expandedKeys.add(item));
|
|
87504
|
-
flattenNodes = flattenTreeData(treeData, expandedKeys);
|
|
87542
|
+
flattenNodes = flattenTreeData(treeData, expandedKeys, keyMaps);
|
|
87505
87543
|
} else {
|
|
87506
|
-
filteredOptsKeys = Object.values(keyEntities).filter(item => filter(sugInput, item.data, filterTreeNode,
|
|
87544
|
+
filteredOptsKeys = Object.values(keyEntities).filter(item => filter(sugInput, item.data, filterTreeNode, realFilterProp)).map(item => item.key);
|
|
87507
87545
|
expandedOptsKeys = findAncestorKeys(filteredOptsKeys, keyEntities, false);
|
|
87508
87546
|
const shownChildKeys = findDescendantKeys(filteredOptsKeys, keyEntities, true);
|
|
87509
87547
|
filteredShownKeys = new Set([...shownChildKeys, ...expandedOptsKeys]);
|
|
87510
|
-
flattenNodes = flattenTreeData(treeData, new Set(expandedOptsKeys), showFilteredOnly && filteredShownKeys);
|
|
87548
|
+
flattenNodes = flattenTreeData(treeData, new Set(expandedOptsKeys), keyMaps, showFilteredOnly && filteredShownKeys);
|
|
87511
87549
|
}
|
|
87512
87550
|
const newFilteredExpandedKeys = new Set(expandedOptsKeys);
|
|
87513
87551
|
this._adapter.notifySearch(sugInput, Array.from(newFilteredExpandedKeys));
|
|
@@ -87675,6 +87713,9 @@ class TreeFoundation extends foundation {
|
|
|
87675
87713
|
filteredShownKeys,
|
|
87676
87714
|
keyEntities
|
|
87677
87715
|
} = this.getStates();
|
|
87716
|
+
const {
|
|
87717
|
+
keyMaps
|
|
87718
|
+
} = this.getProps();
|
|
87678
87719
|
const isSearching = Boolean(inputValue);
|
|
87679
87720
|
const showFilteredOnly = this._showFilteredOnly();
|
|
87680
87721
|
const expandedStateKey = isSearching ? 'filteredExpandedKeys' : 'expandedKeys';
|
|
@@ -87693,7 +87734,7 @@ class TreeFoundation extends foundation {
|
|
|
87693
87734
|
}
|
|
87694
87735
|
this._adapter.cacheFlattenNodes(motionType === 'hide' && this._isAnimated());
|
|
87695
87736
|
if (!this._isExpandControlled()) {
|
|
87696
|
-
const flattenNodes = flattenTreeData(treeData, expandedKeys, isSearching && showFilteredOnly && filteredShownKeys);
|
|
87737
|
+
const flattenNodes = flattenTreeData(treeData, expandedKeys, keyMaps, isSearching && showFilteredOnly && filteredShownKeys);
|
|
87697
87738
|
const motionKeys = this._isAnimated() ? getMotionKeys(eventKey, expandedKeys, keyEntities) : [];
|
|
87698
87739
|
const newState = {
|
|
87699
87740
|
[expandedStateKey]: expandedKeys,
|
|
@@ -88600,13 +88641,7 @@ function NodeCollapsible(props) {
|
|
|
88600
88641
|
|
|
88601
88642
|
|
|
88602
88643
|
const getTreeNodeKey = treeNode => {
|
|
88603
|
-
|
|
88604
|
-
data
|
|
88605
|
-
} = treeNode;
|
|
88606
|
-
const {
|
|
88607
|
-
key
|
|
88608
|
-
} = data;
|
|
88609
|
-
return key;
|
|
88644
|
+
return treeNode.key;
|
|
88610
88645
|
};
|
|
88611
88646
|
class NodeList extends external_root_React_commonjs2_react_commonjs_react_amd_react_.PureComponent {
|
|
88612
88647
|
constructor(props) {
|
|
@@ -88718,6 +88753,8 @@ const IconSearch_IconComponent = convertIcon(IconSearch_SvgComponent, 'search');
|
|
|
88718
88753
|
|
|
88719
88754
|
|
|
88720
88755
|
|
|
88756
|
+
|
|
88757
|
+
|
|
88721
88758
|
var tree_rest = undefined && undefined.__rest || function (s, e) {
|
|
88722
88759
|
var t = {};
|
|
88723
88760
|
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
|
|
@@ -88859,17 +88896,20 @@ class Tree extends BaseComponent {
|
|
|
88859
88896
|
};
|
|
88860
88897
|
this.renderTreeNode = (treeNode, ind, style) => {
|
|
88861
88898
|
const {
|
|
88862
|
-
data
|
|
88863
|
-
} = treeNode;
|
|
88864
|
-
const {
|
|
88899
|
+
data,
|
|
88865
88900
|
key
|
|
88866
|
-
} =
|
|
88901
|
+
} = treeNode;
|
|
88867
88902
|
const treeNodeProps = this.foundation.getTreeNodeProps(key);
|
|
88868
88903
|
if (!treeNodeProps) {
|
|
88869
88904
|
return null;
|
|
88870
88905
|
}
|
|
88871
|
-
|
|
88872
|
-
|
|
88906
|
+
const {
|
|
88907
|
+
keyMaps
|
|
88908
|
+
} = this.props;
|
|
88909
|
+
const props = pick_default()(treeNode, ['key', 'label', 'disabled', 'isLeaf', 'icon']);
|
|
88910
|
+
const children = data[get_default()(keyMaps, 'children', 'children')];
|
|
88911
|
+
!isUndefined_default()(children) && (props.children = children);
|
|
88912
|
+
return /*#__PURE__*/external_root_React_commonjs2_react_commonjs_react_amd_react_default().createElement(TreeNode, Object.assign({}, treeNodeProps, data, props, {
|
|
88873
88913
|
data: data,
|
|
88874
88914
|
style: isEmpty_default()(style) ? {} : style
|
|
88875
88915
|
}));
|
|
@@ -88929,6 +88969,9 @@ class Tree extends BaseComponent {
|
|
|
88929
88969
|
const {
|
|
88930
88970
|
prevProps
|
|
88931
88971
|
} = prevState;
|
|
88972
|
+
const {
|
|
88973
|
+
keyMaps
|
|
88974
|
+
} = props;
|
|
88932
88975
|
let treeData;
|
|
88933
88976
|
let keyEntities = prevState.keyEntities || {};
|
|
88934
88977
|
let valueEntities = prevState.cachedKeyValuePairs || {};
|
|
@@ -88955,7 +88998,7 @@ class Tree extends BaseComponent {
|
|
|
88955
88998
|
if (needUpdateTreeData || props.draggable && needUpdateData()) {
|
|
88956
88999
|
treeData = props.treeData;
|
|
88957
89000
|
newState.treeData = treeData;
|
|
88958
|
-
const entitiesMap = convertDataToEntities(treeData);
|
|
89001
|
+
const entitiesMap = convertDataToEntities(treeData, keyMaps);
|
|
88959
89002
|
newState.keyEntities = Object.assign({}, entitiesMap.keyEntities);
|
|
88960
89003
|
keyEntities = newState.keyEntities;
|
|
88961
89004
|
newState.cachedKeyValuePairs = Object.assign({}, entitiesMap.valueEntities);
|
|
@@ -88964,7 +89007,7 @@ class Tree extends BaseComponent {
|
|
|
88964
89007
|
// Convert treeDataSimpleJson to treeData
|
|
88965
89008
|
treeData = convertJsonToData(props.treeDataSimpleJson);
|
|
88966
89009
|
newState.treeData = treeData;
|
|
88967
|
-
const entitiesMap = convertDataToEntities(treeData);
|
|
89010
|
+
const entitiesMap = convertDataToEntities(treeData, keyMaps);
|
|
88968
89011
|
newState.keyEntities = Object.assign({}, entitiesMap.keyEntities);
|
|
88969
89012
|
keyEntities = newState.keyEntities;
|
|
88970
89013
|
newState.cachedKeyValuePairs = Object.assign({}, entitiesMap.valueEntities);
|
|
@@ -89020,7 +89063,7 @@ class Tree extends BaseComponent {
|
|
|
89020
89063
|
}
|
|
89021
89064
|
// Update flattenNodes
|
|
89022
89065
|
if (treeData || newState.expandedKeys) {
|
|
89023
|
-
const flattenNodes = flattenTreeData(treeData || prevState.treeData, newState.expandedKeys || prevState.expandedKeys);
|
|
89066
|
+
const flattenNodes = flattenTreeData(treeData || prevState.treeData, newState.expandedKeys || prevState.expandedKeys, keyMaps);
|
|
89024
89067
|
newState.flattenNodes = flattenNodes;
|
|
89025
89068
|
}
|
|
89026
89069
|
} else {
|
|
@@ -89035,7 +89078,8 @@ class Tree extends BaseComponent {
|
|
|
89035
89078
|
filterProps: props.treeNodeFilterProp,
|
|
89036
89079
|
showFilteredOnly: props.showFilteredOnly,
|
|
89037
89080
|
keyEntities: newState.keyEntities,
|
|
89038
|
-
prevExpandedKeys: [...prevState.filteredExpandedKeys]
|
|
89081
|
+
prevExpandedKeys: [...prevState.filteredExpandedKeys],
|
|
89082
|
+
keyMaps: keyMaps
|
|
89039
89083
|
});
|
|
89040
89084
|
newState.flattenNodes = filteredState.flattenNodes;
|
|
89041
89085
|
newState.motionKeys = new Set([]);
|
|
@@ -89068,7 +89112,7 @@ class Tree extends BaseComponent {
|
|
|
89068
89112
|
newState.motionType = motionType;
|
|
89069
89113
|
}
|
|
89070
89114
|
}
|
|
89071
|
-
newState.flattenNodes = flattenTreeData(treeData || prevState.treeData, newState.filteredExpandedKeys || prevState.filteredExpandedKeys, props.showFilteredOnly && prevState.filteredShownKeys);
|
|
89115
|
+
newState.flattenNodes = flattenTreeData(treeData || prevState.treeData, newState.filteredExpandedKeys || prevState.filteredExpandedKeys, keyMaps, props.showFilteredOnly && prevState.filteredShownKeys);
|
|
89072
89116
|
}
|
|
89073
89117
|
}
|
|
89074
89118
|
// Handle single selection and multiple selection in controlled mode
|
|
@@ -89079,26 +89123,26 @@ class Tree extends BaseComponent {
|
|
|
89079
89123
|
if (needUpdate('value')) {
|
|
89080
89124
|
newState.selectedKeys = findKeysForValues(
|
|
89081
89125
|
// In both cases whether withObject is turned on, the value is standardized to string
|
|
89082
|
-
normalizeValue(props.value, withObject), valueEntities, isMultiple);
|
|
89126
|
+
normalizeValue(props.value, withObject, keyMaps), valueEntities, isMultiple);
|
|
89083
89127
|
} else if (!prevProps && props.defaultValue) {
|
|
89084
|
-
newState.selectedKeys = findKeysForValues(normalizeValue(props.defaultValue, withObject), valueEntities, isMultiple);
|
|
89128
|
+
newState.selectedKeys = findKeysForValues(normalizeValue(props.defaultValue, withObject, keyMaps), valueEntities, isMultiple);
|
|
89085
89129
|
} else if (treeData) {
|
|
89086
89130
|
// If `treeData` changed, we also need check it
|
|
89087
89131
|
if (props.value) {
|
|
89088
|
-
newState.selectedKeys = findKeysForValues(normalizeValue(props.value, withObject) || '', valueEntities, isMultiple);
|
|
89132
|
+
newState.selectedKeys = findKeysForValues(normalizeValue(props.value, withObject, keyMaps) || '', valueEntities, isMultiple);
|
|
89089
89133
|
}
|
|
89090
89134
|
}
|
|
89091
89135
|
} else {
|
|
89092
89136
|
let checkedKeyValues;
|
|
89093
89137
|
// Get the selected node during multiple selection
|
|
89094
89138
|
if (needUpdate('value')) {
|
|
89095
|
-
checkedKeyValues = findKeysForValues(normalizeValue(props.value, withObject), valueEntities, isMultiple);
|
|
89139
|
+
checkedKeyValues = findKeysForValues(normalizeValue(props.value, withObject, keyMaps), valueEntities, isMultiple);
|
|
89096
89140
|
} else if (!prevProps && props.defaultValue) {
|
|
89097
|
-
checkedKeyValues = findKeysForValues(normalizeValue(props.defaultValue, withObject), valueEntities, isMultiple);
|
|
89141
|
+
checkedKeyValues = findKeysForValues(normalizeValue(props.defaultValue, withObject, keyMaps), valueEntities, isMultiple);
|
|
89098
89142
|
} else if (treeData) {
|
|
89099
89143
|
// If `treeData` changed, we also need check it
|
|
89100
89144
|
if (props.value) {
|
|
89101
|
-
checkedKeyValues = findKeysForValues(normalizeValue(props.value, withObject) || [], valueEntities, isMultiple);
|
|
89145
|
+
checkedKeyValues = findKeysForValues(normalizeValue(props.value, withObject, keyMaps) || [], valueEntities, isMultiple);
|
|
89102
89146
|
} else {
|
|
89103
89147
|
checkedKeyValues = updateKeys(props.checkRelation === 'related' ? prevState.checkedKeys : prevState.realCheckedKeys, keyEntities);
|
|
89104
89148
|
}
|
|
@@ -89122,7 +89166,7 @@ class Tree extends BaseComponent {
|
|
|
89122
89166
|
}
|
|
89123
89167
|
// update disableStrictly
|
|
89124
89168
|
if (treeData && props.disableStrictly && props.checkRelation === 'related') {
|
|
89125
|
-
newState.disabledKeys = calcDisabledKeys(keyEntities);
|
|
89169
|
+
newState.disabledKeys = calcDisabledKeys(keyEntities, keyMaps);
|
|
89126
89170
|
}
|
|
89127
89171
|
return newState;
|
|
89128
89172
|
}
|
|
@@ -89400,11 +89444,12 @@ Tree.propTypes = {
|
|
|
89400
89444
|
showFilteredOnly: (prop_types_default()).bool,
|
|
89401
89445
|
style: (prop_types_default()).object,
|
|
89402
89446
|
treeData: prop_types_default().arrayOf(prop_types_default().shape({
|
|
89403
|
-
key: (prop_types_default()).string
|
|
89447
|
+
key: (prop_types_default()).string,
|
|
89404
89448
|
value: prop_types_default().oneOfType([(prop_types_default()).string, (prop_types_default()).number]),
|
|
89405
89449
|
label: (prop_types_default()).any,
|
|
89406
89450
|
isLeaf: (prop_types_default()).bool
|
|
89407
89451
|
})),
|
|
89452
|
+
keyMaps: (prop_types_default()).object,
|
|
89408
89453
|
treeDataSimpleJson: (prop_types_default()).object,
|
|
89409
89454
|
treeNodeFilterProp: (prop_types_default()).string,
|
|
89410
89455
|
value: prop_types_default().oneOfType([(prop_types_default()).string, (prop_types_default()).number, (prop_types_default()).array, (prop_types_default()).object]),
|
|
@@ -89563,8 +89608,11 @@ class TreeSelectFoundation extends foundation {
|
|
|
89563
89608
|
findDataForValue(findValue) {
|
|
89564
89609
|
const {
|
|
89565
89610
|
value,
|
|
89566
|
-
defaultValue
|
|
89611
|
+
defaultValue,
|
|
89612
|
+
keyMaps
|
|
89567
89613
|
} = this.getProps();
|
|
89614
|
+
const realValueName = get_default()(keyMaps, 'value', 'value');
|
|
89615
|
+
const realKeyName = get_default()(keyMaps, 'key', 'key');
|
|
89568
89616
|
let valueArr = [];
|
|
89569
89617
|
if (value) {
|
|
89570
89618
|
valueArr = Array.isArray(value) ? value : [value];
|
|
@@ -89572,16 +89620,19 @@ class TreeSelectFoundation extends foundation {
|
|
|
89572
89620
|
valueArr = Array.isArray(defaultValue) ? defaultValue : [defaultValue];
|
|
89573
89621
|
}
|
|
89574
89622
|
return valueArr.find(item => {
|
|
89575
|
-
return item
|
|
89623
|
+
return item[realValueName] === findValue || item[realKeyName] === findValue;
|
|
89576
89624
|
});
|
|
89577
89625
|
}
|
|
89578
89626
|
constructDataForValue(value) {
|
|
89579
89627
|
const {
|
|
89580
|
-
treeNodeLabelProp
|
|
89628
|
+
treeNodeLabelProp,
|
|
89629
|
+
keyMaps
|
|
89581
89630
|
} = this.getProps();
|
|
89631
|
+
const keyName = get_default()(keyMaps, 'key', 'key');
|
|
89632
|
+
const labelName = get_default()(keyMaps, 'label', treeNodeLabelProp);
|
|
89582
89633
|
return {
|
|
89583
|
-
|
|
89584
|
-
[
|
|
89634
|
+
[keyName]: value,
|
|
89635
|
+
[labelName]: value
|
|
89585
89636
|
};
|
|
89586
89637
|
}
|
|
89587
89638
|
getDataForKeyNotInKeyEntities(value) {
|
|
@@ -89698,7 +89749,8 @@ class TreeSelectFoundation extends foundation {
|
|
|
89698
89749
|
} = this.getStates();
|
|
89699
89750
|
const {
|
|
89700
89751
|
leafOnly,
|
|
89701
|
-
checkRelation
|
|
89752
|
+
checkRelation,
|
|
89753
|
+
keyMaps
|
|
89702
89754
|
} = this.getProps();
|
|
89703
89755
|
let keyList = [];
|
|
89704
89756
|
if (checkRelation === 'related') {
|
|
@@ -89706,11 +89758,11 @@ class TreeSelectFoundation extends foundation {
|
|
|
89706
89758
|
} else if (checkRelation === 'unRelated') {
|
|
89707
89759
|
keyList = key;
|
|
89708
89760
|
}
|
|
89709
|
-
const nodes = keyList.map(key => keyEntities[key] && keyEntities[key].
|
|
89761
|
+
const nodes = keyList.map(key => keyEntities[key] && keyEntities[key].key === key ? keyEntities[key].data : this.getDataForKeyNotInKeyEntities(key));
|
|
89710
89762
|
if (this.getProp('onChangeWithObject')) {
|
|
89711
89763
|
this._adapter.notifyChangeWithObject(nodes, e);
|
|
89712
89764
|
} else {
|
|
89713
|
-
const value = getValueOrKey(nodes);
|
|
89765
|
+
const value = getValueOrKey(nodes, keyMaps);
|
|
89714
89766
|
this._adapter.notifyChange(value, nodes, e);
|
|
89715
89767
|
}
|
|
89716
89768
|
}
|
|
@@ -89718,11 +89770,14 @@ class TreeSelectFoundation extends foundation {
|
|
|
89718
89770
|
const {
|
|
89719
89771
|
keyEntities
|
|
89720
89772
|
} = this.getStates();
|
|
89773
|
+
const {
|
|
89774
|
+
keyMaps
|
|
89775
|
+
} = this.getProps();
|
|
89721
89776
|
if (this._isMultiple() && Array.isArray(key)) {
|
|
89722
89777
|
this._notifyMultipleChange(key, e);
|
|
89723
89778
|
} else {
|
|
89724
89779
|
const nodes = isUndefined_default()(key) ? key : keyEntities[key].data;
|
|
89725
|
-
const value = isUndefined_default()(key) ? key : getValueOrKey(nodes);
|
|
89780
|
+
const value = isUndefined_default()(key) ? key : getValueOrKey(nodes, keyMaps);
|
|
89726
89781
|
if (this.getProp('onChangeWithObject')) {
|
|
89727
89782
|
this._adapter.notifyChangeWithObject(nodes, e);
|
|
89728
89783
|
} else {
|
|
@@ -89849,15 +89904,17 @@ class TreeSelectFoundation extends foundation {
|
|
|
89849
89904
|
removeTag(eventKey) {
|
|
89850
89905
|
const {
|
|
89851
89906
|
disableStrictly,
|
|
89852
|
-
checkRelation
|
|
89907
|
+
checkRelation,
|
|
89908
|
+
keyMaps
|
|
89853
89909
|
} = this.getProps();
|
|
89854
89910
|
const {
|
|
89855
89911
|
keyEntities,
|
|
89856
89912
|
disabledKeys,
|
|
89857
89913
|
realCheckedKeys
|
|
89858
89914
|
} = this.getStates();
|
|
89859
|
-
const item = keyEntities[eventKey] && keyEntities[eventKey].
|
|
89860
|
-
|
|
89915
|
+
const item = keyEntities[eventKey] && keyEntities[eventKey].key === eventKey ? keyEntities[eventKey].data : this.getDataForKeyNotInKeyEntities(eventKey);
|
|
89916
|
+
const disabledName = get_default()(keyMaps, 'disabled', 'disabled');
|
|
89917
|
+
if (item[disabledName] || disableStrictly && disabledKeys.has(eventKey)) {
|
|
89861
89918
|
return;
|
|
89862
89919
|
}
|
|
89863
89920
|
if (checkRelation === 'unRelated') {
|
|
@@ -89896,11 +89953,14 @@ class TreeSelectFoundation extends foundation {
|
|
|
89896
89953
|
keyEntities,
|
|
89897
89954
|
treeData
|
|
89898
89955
|
} = this.getStates();
|
|
89956
|
+
const {
|
|
89957
|
+
keyMaps
|
|
89958
|
+
} = this.getProps();
|
|
89899
89959
|
const newExpandedKeys = new Set(expandedKeys);
|
|
89900
89960
|
const isExpandControlled = this._isExpandControlled();
|
|
89901
89961
|
const expandedOptsKeys = findAncestorKeys(selectedKeys, keyEntities);
|
|
89902
89962
|
expandedOptsKeys.forEach(item => newExpandedKeys.add(item));
|
|
89903
|
-
const newFlattenNodes = flattenTreeData(treeData, newExpandedKeys);
|
|
89963
|
+
const newFlattenNodes = flattenTreeData(treeData, newExpandedKeys, keyMaps);
|
|
89904
89964
|
this._adapter.updateState({
|
|
89905
89965
|
expandedKeys: isExpandControlled ? expandedKeys : newExpandedKeys,
|
|
89906
89966
|
flattenNodes: isExpandControlled ? flattenNodes : newFlattenNodes,
|
|
@@ -89924,8 +89984,10 @@ class TreeSelectFoundation extends foundation {
|
|
|
89924
89984
|
const {
|
|
89925
89985
|
showFilteredOnly,
|
|
89926
89986
|
filterTreeNode,
|
|
89927
|
-
treeNodeFilterProp
|
|
89987
|
+
treeNodeFilterProp,
|
|
89988
|
+
keyMaps
|
|
89928
89989
|
} = this.getProps();
|
|
89990
|
+
const realFilterProp = treeNodeFilterProp !== 'label' ? treeNodeFilterProp : get_default()(keyMaps, 'label', 'label');
|
|
89929
89991
|
const newExpandedKeys = new Set(expandedKeys);
|
|
89930
89992
|
let filteredOptsKeys = [];
|
|
89931
89993
|
let expandedOptsKeys = [];
|
|
@@ -89934,18 +89996,18 @@ class TreeSelectFoundation extends foundation {
|
|
|
89934
89996
|
if (!sugInput) {
|
|
89935
89997
|
expandedOptsKeys = findAncestorKeys(selectedKeys, keyEntities);
|
|
89936
89998
|
expandedOptsKeys.forEach(item => newExpandedKeys.add(item));
|
|
89937
|
-
newFlattenNodes = flattenTreeData(treeData, newExpandedKeys);
|
|
89999
|
+
newFlattenNodes = flattenTreeData(treeData, newExpandedKeys, keyMaps);
|
|
89938
90000
|
} else {
|
|
89939
90001
|
filteredOptsKeys = Object.values(keyEntities).filter(item => {
|
|
89940
90002
|
const {
|
|
89941
90003
|
data
|
|
89942
90004
|
} = item;
|
|
89943
|
-
return filter(sugInput, data, filterTreeNode,
|
|
90005
|
+
return filter(sugInput, data, filterTreeNode, realFilterProp);
|
|
89944
90006
|
}).map(item => item.key);
|
|
89945
90007
|
expandedOptsKeys = findAncestorKeys(filteredOptsKeys, keyEntities, false);
|
|
89946
90008
|
const shownChildKeys = findDescendantKeys(filteredOptsKeys, keyEntities, true);
|
|
89947
90009
|
filteredShownKeys = new Set([...shownChildKeys, ...expandedOptsKeys]);
|
|
89948
|
-
newFlattenNodes = flattenTreeData(treeData, new Set(expandedOptsKeys), showFilteredOnly && filteredShownKeys);
|
|
90010
|
+
newFlattenNodes = flattenTreeData(treeData, new Set(expandedOptsKeys), keyMaps, showFilteredOnly && filteredShownKeys);
|
|
89949
90011
|
}
|
|
89950
90012
|
const newFilteredExpandedKeys = new Set(expandedOptsKeys);
|
|
89951
90013
|
this._adapter.notifySearch(sugInput, Array.from(newFilteredExpandedKeys));
|
|
@@ -90079,7 +90141,7 @@ class TreeSelectFoundation extends foundation {
|
|
|
90079
90141
|
return this.calcCheckedKeys(eventKey, targetStatus);
|
|
90080
90142
|
}
|
|
90081
90143
|
const nonDisabled = descendantKeys.filter(key => !disabledKeys.has(key));
|
|
90082
|
-
const newCheckedKeys = targetStatus ? [...nonDisabled, ...checkedKeys] : difference_default()(normalizeKeyList([...checkedKeys], keyEntities, true), nonDisabled);
|
|
90144
|
+
const newCheckedKeys = targetStatus ? [...nonDisabled, ...checkedKeys] : difference_default()(normalizeKeyList([...checkedKeys], keyEntities, true, true), nonDisabled);
|
|
90083
90145
|
return calcCheckedKeys(newCheckedKeys, keyEntities);
|
|
90084
90146
|
}
|
|
90085
90147
|
calcCheckedStatus(targetStatus, eventKey) {
|
|
@@ -90104,7 +90166,8 @@ class TreeSelectFoundation extends foundation {
|
|
|
90104
90166
|
const {
|
|
90105
90167
|
treeData,
|
|
90106
90168
|
filteredShownKeys,
|
|
90107
|
-
keyEntities
|
|
90169
|
+
keyEntities,
|
|
90170
|
+
keyMaps
|
|
90108
90171
|
} = this.getStates();
|
|
90109
90172
|
const showFilteredOnly = this._showFilteredOnly();
|
|
90110
90173
|
// clone otherwise will be modified unexpectedly
|
|
@@ -90128,7 +90191,7 @@ class TreeSelectFoundation extends foundation {
|
|
|
90128
90191
|
this._adapter.cacheFlattenNodes(motionType === 'hide' && this._isAnimated());
|
|
90129
90192
|
if (!this._isExpandControlled()) {
|
|
90130
90193
|
// debugger;
|
|
90131
|
-
const flattenNodes = flattenTreeData(treeData, filteredExpandedKeys, showFilteredOnly && filteredShownKeys);
|
|
90194
|
+
const flattenNodes = flattenTreeData(treeData, filteredExpandedKeys, keyMaps, showFilteredOnly && filteredShownKeys);
|
|
90132
90195
|
const motionKeys = this._isAnimated() ? getMotionKeys(eventKey, filteredExpandedKeys, keyEntities) : [];
|
|
90133
90196
|
const newState = {
|
|
90134
90197
|
filteredExpandedKeys,
|
|
@@ -90146,7 +90209,8 @@ class TreeSelectFoundation extends foundation {
|
|
|
90146
90209
|
handleNodeExpand(e, treeNode) {
|
|
90147
90210
|
// debugger;
|
|
90148
90211
|
const {
|
|
90149
|
-
loadData
|
|
90212
|
+
loadData,
|
|
90213
|
+
keyMaps
|
|
90150
90214
|
} = this.getProps();
|
|
90151
90215
|
const {
|
|
90152
90216
|
inputValue,
|
|
@@ -90183,7 +90247,7 @@ class TreeSelectFoundation extends foundation {
|
|
|
90183
90247
|
this._adapter.cacheFlattenNodes(motionType === 'hide' && this._isAnimated());
|
|
90184
90248
|
if (!isExpandControlled) {
|
|
90185
90249
|
// debugger;
|
|
90186
|
-
const flattenNodes = flattenTreeData(treeData, expandedKeys);
|
|
90250
|
+
const flattenNodes = flattenTreeData(treeData, expandedKeys, keyMaps);
|
|
90187
90251
|
const motionKeys = this._isAnimated() ? getMotionKeys(eventKey, expandedKeys, keyEntities) : [];
|
|
90188
90252
|
const newState = {
|
|
90189
90253
|
expandedKeys,
|
|
@@ -90204,19 +90268,21 @@ class TreeSelectFoundation extends foundation {
|
|
|
90204
90268
|
getRenderTextInSingle() {
|
|
90205
90269
|
const {
|
|
90206
90270
|
renderSelectedItem: propRenderSelectedItem,
|
|
90207
|
-
treeNodeLabelProp
|
|
90271
|
+
treeNodeLabelProp,
|
|
90272
|
+
keyMaps
|
|
90208
90273
|
} = this.getProps();
|
|
90209
90274
|
const {
|
|
90210
90275
|
selectedKeys,
|
|
90211
90276
|
keyEntities
|
|
90212
90277
|
} = this.getStates();
|
|
90213
|
-
const
|
|
90278
|
+
const realLabelName = get_default()(keyMaps, 'label', treeNodeLabelProp);
|
|
90279
|
+
const renderSelectedItem = isFunction_default()(propRenderSelectedItem) ? propRenderSelectedItem : item => get_default()(item, realLabelName, null);
|
|
90214
90280
|
let item;
|
|
90215
90281
|
if (selectedKeys.length) {
|
|
90216
90282
|
const key = selectedKeys[0];
|
|
90217
|
-
item = keyEntities[key] && keyEntities[key].
|
|
90283
|
+
item = keyEntities[key] && keyEntities[key].key === key ? keyEntities[key].data : this.getDataForKeyNotInKeyEntities(key);
|
|
90218
90284
|
}
|
|
90219
|
-
const renderText = item
|
|
90285
|
+
const renderText = item ? renderSelectedItem(item) : null;
|
|
90220
90286
|
return renderText;
|
|
90221
90287
|
}
|
|
90222
90288
|
/**
|
|
@@ -90251,6 +90317,7 @@ var treeSelect = __webpack_require__("ZrYm");
|
|
|
90251
90317
|
|
|
90252
90318
|
|
|
90253
90319
|
|
|
90320
|
+
|
|
90254
90321
|
var treeSelect_rest = undefined && undefined.__rest || function (s, e) {
|
|
90255
90322
|
var t = {};
|
|
90256
90323
|
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
|
|
@@ -90408,11 +90475,13 @@ class TreeSelect extends BaseComponent {
|
|
|
90408
90475
|
disableStrictly,
|
|
90409
90476
|
size,
|
|
90410
90477
|
checkRelation,
|
|
90411
|
-
renderSelectedItem: propRenderSelectedItem
|
|
90478
|
+
renderSelectedItem: propRenderSelectedItem,
|
|
90479
|
+
keyMaps
|
|
90412
90480
|
} = this.props;
|
|
90481
|
+
const realLabelName = get_default()(keyMaps, 'label', treeNodeLabelProp);
|
|
90413
90482
|
const renderSelectedItem = isFunction_default()(propRenderSelectedItem) ? propRenderSelectedItem : item => ({
|
|
90414
90483
|
isRenderInTag: true,
|
|
90415
|
-
content: get_default()(item,
|
|
90484
|
+
content: get_default()(item, realLabelName, null)
|
|
90416
90485
|
});
|
|
90417
90486
|
let renderKeys = [];
|
|
90418
90487
|
if (checkRelation === 'related') {
|
|
@@ -90422,7 +90491,7 @@ class TreeSelect extends BaseComponent {
|
|
|
90422
90491
|
}
|
|
90423
90492
|
const tagList = [];
|
|
90424
90493
|
renderKeys.forEach((key, index) => {
|
|
90425
|
-
const item = keyEntities[key] && keyEntities[key].
|
|
90494
|
+
const item = keyEntities[key] && keyEntities[key].key === key ? keyEntities[key].data : this.getDataForKeyNotInKeyEntities(key);
|
|
90426
90495
|
const onClose = (tagContent, e) => {
|
|
90427
90496
|
if (e && typeof e.preventDefault === 'function') {
|
|
90428
90497
|
// make sure that tag will not hidden immediately in controlled mode
|
|
@@ -90433,7 +90502,7 @@ class TreeSelect extends BaseComponent {
|
|
|
90433
90502
|
const {
|
|
90434
90503
|
content,
|
|
90435
90504
|
isRenderInTag
|
|
90436
|
-
} = item
|
|
90505
|
+
} = item ? renderSelectedItem(item, {
|
|
90437
90506
|
index,
|
|
90438
90507
|
onClose
|
|
90439
90508
|
}) : {};
|
|
@@ -90696,11 +90765,13 @@ class TreeSelect extends BaseComponent {
|
|
|
90696
90765
|
disabled,
|
|
90697
90766
|
disableStrictly,
|
|
90698
90767
|
renderSelectedItem: propRenderSelectedItem,
|
|
90699
|
-
treeNodeLabelProp
|
|
90768
|
+
treeNodeLabelProp,
|
|
90769
|
+
keyMaps
|
|
90700
90770
|
} = this.props;
|
|
90771
|
+
const realLabelName = get_default()(keyMaps, 'label', treeNodeLabelProp);
|
|
90701
90772
|
const keyList = normalizeKeyList([key], keyEntities, leafOnly, true);
|
|
90702
|
-
const nodes = keyList.map(i => keyEntities[key] && keyEntities[key].
|
|
90703
|
-
const value = getValueOrKey(nodes);
|
|
90773
|
+
const nodes = keyList.map(i => keyEntities[key] && keyEntities[key].key === key ? keyEntities[key].data : this.getDataForKeyNotInKeyEntities(key));
|
|
90774
|
+
const value = getValueOrKey(nodes, keyMaps);
|
|
90704
90775
|
const tagCls = classnames_default()(`${treeSelect_prefixcls}-selection-tag`, {
|
|
90705
90776
|
[`${treeSelect_prefixcls}-selection-tag-disabled`]: disabled
|
|
90706
90777
|
});
|
|
@@ -90723,13 +90794,13 @@ class TreeSelect extends BaseComponent {
|
|
|
90723
90794
|
const item = nodes[0];
|
|
90724
90795
|
const renderSelectedItem = isFunction_default()(propRenderSelectedItem) ? propRenderSelectedItem : selectedItem => ({
|
|
90725
90796
|
isRenderInTag: true,
|
|
90726
|
-
content: get_default()(selectedItem,
|
|
90797
|
+
content: get_default()(selectedItem, realLabelName, null)
|
|
90727
90798
|
});
|
|
90728
90799
|
if (isFunction_default()(renderSelectedItem)) {
|
|
90729
90800
|
const {
|
|
90730
90801
|
content,
|
|
90731
90802
|
isRenderInTag
|
|
90732
|
-
} = item
|
|
90803
|
+
} = item ? renderSelectedItem(item, {
|
|
90733
90804
|
index: idx,
|
|
90734
90805
|
onClose
|
|
90735
90806
|
}) : {};
|
|
@@ -90929,17 +91000,20 @@ class TreeSelect extends BaseComponent {
|
|
|
90929
91000
|
};
|
|
90930
91001
|
this.renderTreeNode = (treeNode, ind, style) => {
|
|
90931
91002
|
const {
|
|
90932
|
-
data
|
|
90933
|
-
} = treeNode;
|
|
90934
|
-
const {
|
|
91003
|
+
data,
|
|
90935
91004
|
key
|
|
90936
|
-
} =
|
|
91005
|
+
} = treeNode;
|
|
90937
91006
|
const treeNodeProps = this.foundation.getTreeNodeProps(key);
|
|
90938
91007
|
if (!treeNodeProps) {
|
|
90939
91008
|
return null;
|
|
90940
91009
|
}
|
|
90941
|
-
|
|
90942
|
-
|
|
91010
|
+
const props = pick_default()(treeNode, ['key', 'label', 'disabled', 'isLeaf', 'icon']);
|
|
91011
|
+
const {
|
|
91012
|
+
keyMaps
|
|
91013
|
+
} = this.props;
|
|
91014
|
+
const children = data[get_default()(keyMaps, 'children', 'children')];
|
|
91015
|
+
!isUndefined_default()(children) && (props.children = children);
|
|
91016
|
+
return /*#__PURE__*/external_root_React_commonjs2_react_commonjs_react_amd_react_default().createElement(TreeNode, Object.assign({}, treeNodeProps, data, props, {
|
|
90943
91017
|
data: data,
|
|
90944
91018
|
style: style
|
|
90945
91019
|
}));
|
|
@@ -91123,6 +91197,9 @@ class TreeSelect extends BaseComponent {
|
|
|
91123
91197
|
prevProps,
|
|
91124
91198
|
rePosKey
|
|
91125
91199
|
} = prevState;
|
|
91200
|
+
const {
|
|
91201
|
+
keyMaps
|
|
91202
|
+
} = props;
|
|
91126
91203
|
const needUpdate = name => !prevProps && name in props || prevProps && !isEqual_default()(prevProps[name], props[name]);
|
|
91127
91204
|
let treeData;
|
|
91128
91205
|
const withObject = props.onChangeWithObject;
|
|
@@ -91137,7 +91214,7 @@ class TreeSelect extends BaseComponent {
|
|
|
91137
91214
|
if (needUpdateTreeData) {
|
|
91138
91215
|
treeData = props.treeData;
|
|
91139
91216
|
newState.treeData = treeData;
|
|
91140
|
-
const entitiesMap = convertDataToEntities(treeData);
|
|
91217
|
+
const entitiesMap = convertDataToEntities(treeData, keyMaps);
|
|
91141
91218
|
newState.keyEntities = Object.assign({}, entitiesMap.keyEntities);
|
|
91142
91219
|
keyEntities = newState.keyEntities;
|
|
91143
91220
|
newState.cachedKeyValuePairs = Object.assign({}, entitiesMap.valueEntities);
|
|
@@ -91168,26 +91245,26 @@ class TreeSelect extends BaseComponent {
|
|
|
91168
91245
|
} else if (!prevProps && props.defaultExpandedKeys) {
|
|
91169
91246
|
newState.expandedKeys = calcExpandedKeys(props.defaultExpandedKeys, keyEntities);
|
|
91170
91247
|
} else if (!prevProps && props.defaultValue) {
|
|
91171
|
-
newState.expandedKeys = calcExpandedKeysForValues(normalizeValue(props.defaultValue, withObject), keyEntities, props.multiple, valueEntities);
|
|
91248
|
+
newState.expandedKeys = calcExpandedKeysForValues(normalizeValue(props.defaultValue, withObject, keyMaps), keyEntities, props.multiple, valueEntities);
|
|
91172
91249
|
} else if (!prevProps && props.value) {
|
|
91173
|
-
newState.expandedKeys = calcExpandedKeysForValues(normalizeValue(props.value, withObject), keyEntities, props.multiple, valueEntities);
|
|
91250
|
+
newState.expandedKeys = calcExpandedKeysForValues(normalizeValue(props.value, withObject, keyMaps), keyEntities, props.multiple, valueEntities);
|
|
91174
91251
|
}
|
|
91175
91252
|
// flattenNodes
|
|
91176
91253
|
if (treeData || needUpdateExpandedKeys) {
|
|
91177
|
-
const flattenNodes = flattenTreeData(treeData || prevState.treeData, newState.expandedKeys || prevState.expandedKeys);
|
|
91254
|
+
const flattenNodes = flattenTreeData(treeData || prevState.treeData, newState.expandedKeys || prevState.expandedKeys, keyMaps);
|
|
91178
91255
|
newState.flattenNodes = flattenNodes;
|
|
91179
91256
|
}
|
|
91180
91257
|
// selectedKeys: single mode controlled
|
|
91181
91258
|
const isMultiple = props.multiple;
|
|
91182
91259
|
if (!isMultiple) {
|
|
91183
91260
|
if (needUpdate('value')) {
|
|
91184
|
-
newState.selectedKeys = findKeysForValues(normalizeValue(props.value, withObject), valueEntities, isMultiple);
|
|
91261
|
+
newState.selectedKeys = findKeysForValues(normalizeValue(props.value, withObject, keyMaps), valueEntities, isMultiple);
|
|
91185
91262
|
} else if (!prevProps && props.defaultValue) {
|
|
91186
|
-
newState.selectedKeys = findKeysForValues(normalizeValue(props.defaultValue, withObject), valueEntities, isMultiple);
|
|
91263
|
+
newState.selectedKeys = findKeysForValues(normalizeValue(props.defaultValue, withObject, keyMaps), valueEntities, isMultiple);
|
|
91187
91264
|
} else if (treeData) {
|
|
91188
91265
|
// If `treeData` changed, we also need check it
|
|
91189
91266
|
if (props.value) {
|
|
91190
|
-
newState.selectedKeys = findKeysForValues(normalizeValue(props.value, withObject) || '', valueEntities, isMultiple);
|
|
91267
|
+
newState.selectedKeys = findKeysForValues(normalizeValue(props.value, withObject, keyMaps) || '', valueEntities, isMultiple);
|
|
91191
91268
|
} else {
|
|
91192
91269
|
newState.selectedKeys = updateKeys(prevState.selectedKeys, keyEntities);
|
|
91193
91270
|
}
|
|
@@ -91196,13 +91273,13 @@ class TreeSelect extends BaseComponent {
|
|
|
91196
91273
|
// checkedKeys: multiple mode controlled || data changed
|
|
91197
91274
|
let checkedKeyValues;
|
|
91198
91275
|
if (needUpdate('value')) {
|
|
91199
|
-
checkedKeyValues = findKeysForValues(normalizeValue(props.value, withObject), valueEntities, isMultiple);
|
|
91276
|
+
checkedKeyValues = findKeysForValues(normalizeValue(props.value, withObject, keyMaps), valueEntities, isMultiple);
|
|
91200
91277
|
} else if (!prevProps && props.defaultValue) {
|
|
91201
|
-
checkedKeyValues = findKeysForValues(normalizeValue(props.defaultValue, withObject), valueEntities, isMultiple);
|
|
91278
|
+
checkedKeyValues = findKeysForValues(normalizeValue(props.defaultValue, withObject, keyMaps), valueEntities, isMultiple);
|
|
91202
91279
|
} else if (treeData) {
|
|
91203
91280
|
// If `treeData` changed, we also need check it
|
|
91204
91281
|
if (props.value) {
|
|
91205
|
-
checkedKeyValues = findKeysForValues(normalizeValue(props.value, withObject) || [], valueEntities, isMultiple);
|
|
91282
|
+
checkedKeyValues = findKeysForValues(normalizeValue(props.value, withObject, keyMaps) || [], valueEntities, isMultiple);
|
|
91206
91283
|
} else {
|
|
91207
91284
|
checkedKeyValues = updateKeys(props.checkRelation === 'related' ? prevState.checkedKeys : prevState.realCheckedKeys, keyEntities);
|
|
91208
91285
|
}
|
|
@@ -91230,7 +91307,7 @@ class TreeSelect extends BaseComponent {
|
|
|
91230
91307
|
}
|
|
91231
91308
|
// ================ disableStrictly =================
|
|
91232
91309
|
if (treeData && props.disableStrictly && props.checkRelation === 'related') {
|
|
91233
|
-
newState.disabledKeys = calcDisabledKeys(keyEntities);
|
|
91310
|
+
newState.disabledKeys = calcDisabledKeys(keyEntities, keyMaps);
|
|
91234
91311
|
}
|
|
91235
91312
|
return newState;
|
|
91236
91313
|
}
|
|
@@ -91474,9 +91551,10 @@ TreeSelect.propTypes = {
|
|
|
91474
91551
|
showFilteredOnly: (prop_types_default()).bool,
|
|
91475
91552
|
motionExpand: (prop_types_default()).bool,
|
|
91476
91553
|
emptyContent: (prop_types_default()).node,
|
|
91554
|
+
keyMaps: (prop_types_default()).object,
|
|
91477
91555
|
leafOnly: (prop_types_default()).bool,
|
|
91478
91556
|
treeData: prop_types_default().arrayOf(prop_types_default().shape({
|
|
91479
|
-
key: (prop_types_default()).string
|
|
91557
|
+
key: (prop_types_default()).string,
|
|
91480
91558
|
value: prop_types_default().oneOfType([(prop_types_default()).string, (prop_types_default()).number]),
|
|
91481
91559
|
label: (prop_types_default()).any
|
|
91482
91560
|
})),
|