@douyinfe/semi-ui 2.46.1 → 2.47.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.
@@ -28427,7 +28427,8 @@ class Button_Button extends external_root_React_commonjs2_react_commonjs_react_a
28427
28427
  [`${prefixCls}-light`]: theme === 'light',
28428
28428
  [`${prefixCls}-block`]: block,
28429
28429
  [`${prefixCls}-circle`]: circle,
28430
- [`${prefixCls}-borderless`]: theme === 'borderless'
28430
+ [`${prefixCls}-borderless`]: theme === 'borderless',
28431
+ [`${prefixCls}-${type}-disabled`]: disabled && type
28431
28432
  }, className),
28432
28433
  type: htmlType,
28433
28434
  'aria-disabled': disabled
@@ -36270,6 +36271,7 @@ var uniq_default = /*#__PURE__*/__webpack_require__.n(uniq);
36270
36271
 
36271
36272
 
36272
36273
 
36274
+
36273
36275
  /**
36274
36276
  * Part of the utils function implementation process reference
36275
36277
  * https://github.com/react-component/tree/blob/master/src/util.tsx
@@ -36288,17 +36290,27 @@ function treeUtil_isValid(val) {
36288
36290
  * @param filteredShownKeys
36289
36291
  * need expanded keys, provides `true` means all expanded
36290
36292
  */
36291
- function flattenTreeData(treeNodeList, expandedKeys) {
36292
- let filteredShownKeys = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
36293
+ function flattenTreeData(treeNodeList, expandedKeys, keyMaps) {
36294
+ let filteredShownKeys = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : false;
36293
36295
  const flattenList = [];
36294
36296
  const filterSearch = Boolean(filteredShownKeys);
36297
+ const realKeyName = get_default()(keyMaps, 'key', 'key');
36298
+ const realChildrenName = get_default()(keyMaps, 'children', 'children');
36295
36299
  function flatten(list) {
36296
36300
  let parent = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
36297
36301
  return list.map((treeNode, index) => {
36298
36302
  const pos = getPosition(parent ? parent.pos : '0', index);
36299
- const mergedKey = treeNode.key;
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
+ }
36300
36312
  // Add FlattenDataNode into list
36301
- 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), {
36302
36314
  parent,
36303
36315
  pos,
36304
36316
  children: null,
@@ -36311,7 +36323,7 @@ function flattenTreeData(treeNodeList, expandedKeys) {
36311
36323
  }
36312
36324
  // Loop treeNode children
36313
36325
  if (expandedKeys.has(mergedKey) && (!filterSearch || !isBooleanFilteredShownKeys && filteredShownKeys.has(mergedKey))) {
36314
- flattenNode.children = flatten(treeNode.children || [], flattenNode);
36326
+ flattenNode.children = flatten(treeNode[realChildrenName] || [], flattenNode);
36315
36327
  } else {
36316
36328
  flattenNode.children = [];
36317
36329
  }
@@ -36346,17 +36358,20 @@ function convertJsonToData(treeJson) {
36346
36358
  /**
36347
36359
  * Traverse all the data by `treeData`.
36348
36360
  */
36349
- 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');
36350
36364
  const processNode = (node, ind, parent) => {
36351
- const children = node ? node.children : treeNodes;
36365
+ const children = node ? node[realChildrenName] : treeNodes;
36352
36366
  const pos = node ? getPosition(parent.pos, ind) : '0';
36353
36367
  // Process node if is not root
36354
36368
  if (node) {
36369
+ const nodeKey = get_default()(node, realKeyName, null);
36355
36370
  const data = {
36356
36371
  data: Object.assign({}, node),
36357
36372
  ind,
36358
36373
  pos,
36359
- key: node.key !== null ? node.key : pos,
36374
+ key: nodeKey !== null ? nodeKey : pos,
36360
36375
  parentPos: parent.node ? parent.pos : null,
36361
36376
  level: Number(parent.level) + 1
36362
36377
  };
@@ -36376,7 +36391,7 @@ function traverseDataNodes(treeNodes, callback) {
36376
36391
  processNode(null);
36377
36392
  }
36378
36393
  /* Convert data to entities map */
36379
- function convertDataToEntities(dataNodes) {
36394
+ function convertDataToEntities(dataNodes, keyMaps) {
36380
36395
  const posEntities = {};
36381
36396
  const keyEntities = {};
36382
36397
  const valueEntities = {};
@@ -36385,6 +36400,7 @@ function convertDataToEntities(dataNodes) {
36385
36400
  keyEntities,
36386
36401
  valueEntities
36387
36402
  };
36403
+ const realValueName = get_default()(keyMaps, 'value', 'value');
36388
36404
  traverseDataNodes(dataNodes, data => {
36389
36405
  const {
36390
36406
  pos,
@@ -36392,7 +36408,7 @@ function convertDataToEntities(dataNodes) {
36392
36408
  parentPos
36393
36409
  } = data;
36394
36410
  const entity = Object.assign({}, data);
36395
- const value = get_default()(entity, 'data.value', null);
36411
+ const value = get_default()(entity, `data.${realValueName}`, null);
36396
36412
  if (value !== null) {
36397
36413
  valueEntities[value] = key;
36398
36414
  }
@@ -36404,7 +36420,7 @@ function convertDataToEntities(dataNodes) {
36404
36420
  entity.parent.children = entity.parent.children || [];
36405
36421
  entity.parent.children.push(entity);
36406
36422
  }
36407
- });
36423
+ }, keyMaps);
36408
36424
  return wrapper;
36409
36425
  }
36410
36426
  /* Get key by value */
@@ -36802,7 +36818,8 @@ function filterTreeData(info) {
36802
36818
  treeData,
36803
36819
  filterTreeNode,
36804
36820
  filterProps,
36805
- prevExpandedKeys
36821
+ prevExpandedKeys,
36822
+ keyMaps
36806
36823
  } = info;
36807
36824
  let filteredOptsKeys = [];
36808
36825
  filteredOptsKeys = Object.values(keyEntities).filter(item => filter(inputValue, item.data, filterTreeNode, filterProps)).map(item => item.key);
@@ -36813,7 +36830,7 @@ function filterTreeData(info) {
36813
36830
  }
36814
36831
  const shownChildKeys = findDescendantKeys(filteredOptsKeys, keyEntities, true);
36815
36832
  const filteredShownKeys = new Set([...shownChildKeys, ...expandedOptsKeys]);
36816
- const flattenNodes = flattenTreeData(treeData, new Set(expandedOptsKeys), showFilteredOnly && filteredShownKeys);
36833
+ const flattenNodes = flattenTreeData(treeData, new Set(expandedOptsKeys), keyMaps, showFilteredOnly && filteredShownKeys);
36817
36834
  return {
36818
36835
  flattenNodes,
36819
36836
  filteredKeys: new Set(filteredOptsKeys),
@@ -36822,16 +36839,18 @@ function filterTreeData(info) {
36822
36839
  };
36823
36840
  }
36824
36841
  // return data.value if data.value exist else fall back to key
36825
- function getValueOrKey(data) {
36842
+ function getValueOrKey(data, keyMaps) {
36843
+ const valueName = get_default()(keyMaps, 'value', 'value');
36844
+ const keyName = get_default()(keyMaps, 'key', 'key');
36826
36845
  if (Array.isArray(data)) {
36827
- return data.map(item => get_default()(item, 'value', item.key));
36846
+ return data.map(item => get_default()(item, valueName, item[keyName]));
36828
36847
  }
36829
- return get_default()(data, 'value', data.key);
36848
+ return get_default()(data, valueName, data[keyName]);
36830
36849
  }
36831
36850
  /* Convert value to string */
36832
- function normalizeValue(value, withObject) {
36851
+ function normalizeValue(value, withObject, keyMaps) {
36833
36852
  if (withObject && treeUtil_isValid(value)) {
36834
- return getValueOrKey(value);
36853
+ return getValueOrKey(value, keyMaps);
36835
36854
  } else {
36836
36855
  return value;
36837
36856
  }
@@ -36840,8 +36859,9 @@ function updateKeys(keySet, keyEntities) {
36840
36859
  const keyArr = [...keySet];
36841
36860
  return keyArr.filter(key => key in keyEntities);
36842
36861
  }
36843
- function calcDisabledKeys(keyEntities) {
36844
- const disabledKeys = Object.keys(keyEntities).filter(key => keyEntities[key].data.disabled);
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]);
36845
36865
  const {
36846
36866
  checkedKeys
36847
36867
  } = calcCheckedKeys(disabledKeys, keyEntities);
@@ -48861,6 +48881,7 @@ class CollapsePanel extends external_root_React_commonjs2_react_commonjs_react_a
48861
48881
  isOpen: active,
48862
48882
  keepDOM: keepDOM,
48863
48883
  motion: motion,
48884
+ onMotionEnd: this.props.onMotionEnd,
48864
48885
  reCalcKey: reCalcKey
48865
48886
  }, /*#__PURE__*/external_root_React_commonjs2_react_commonjs_react_amd_react_default().createElement("div", {
48866
48887
  className: contentCls,
@@ -54551,25 +54572,34 @@ class inputFoundation_InputFoundation extends foundation {
54551
54572
  } = options;
54552
54573
  const {
54553
54574
  format,
54554
- type
54575
+ type,
54576
+ rangeSeparator
54555
54577
  } = this._adapter.getProps();
54556
54578
  const insetFormatToken = getInsetInputFormatToken({
54557
54579
  type,
54558
54580
  format
54559
54581
  });
54560
- let newInsetInputValue = set_default()(cloneDeep_default()(insetInputValue), valuePath, value);
54561
- newInsetInputValue = this._autoFillTimeToInsetInputValue({
54562
- 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,
54563
54593
  valuePath,
54564
54594
  format: insetFormatToken
54565
54595
  });
54566
- const newInputValue = this.concatInsetInputValue({
54567
- insetInputValue: newInsetInputValue
54596
+ const finalInsetInputStr = this.concatInsetInputValue({
54597
+ insetInputValue: filledTimeInsetInputValue
54568
54598
  });
54569
54599
  this._adapter.notifyInsetInputChange({
54570
- insetInputValue: newInsetInputValue,
54600
+ insetInputValue: filledTimeInsetInputValue,
54571
54601
  format: insetFormatToken,
54572
- insetInputStr: newInputValue
54602
+ insetInputStr: finalInsetInputStr
54573
54603
  });
54574
54604
  }
54575
54605
  _autoFillTimeToInsetInputValue(options) {
@@ -72504,7 +72534,8 @@ class Popconfirm extends BaseComponent {
72504
72534
  style,
72505
72535
  cancelType,
72506
72536
  icon,
72507
- prefixCls
72537
+ prefixCls,
72538
+ showCloseIcon
72508
72539
  } = this.props;
72509
72540
  const {
72510
72541
  direction
@@ -72538,14 +72569,14 @@ class Popconfirm extends BaseComponent {
72538
72569
  }, showTitle ? /*#__PURE__*/external_root_React_commonjs2_react_commonjs_react_amd_react_default().createElement("div", {
72539
72570
  className: `${prefixCls}-header-title`,
72540
72571
  "x-semi-prop": "title"
72541
- }, title) : null), /*#__PURE__*/external_root_React_commonjs2_react_commonjs_react_amd_react_default().createElement(button_0, {
72572
+ }, title) : null), showCloseIcon ? /*#__PURE__*/external_root_React_commonjs2_react_commonjs_react_amd_react_default().createElement(button_0, {
72542
72573
  className: `${prefixCls}-btn-close`,
72543
72574
  icon: /*#__PURE__*/external_root_React_commonjs2_react_commonjs_react_amd_react_default().createElement(IconClose, null),
72544
72575
  size: "small",
72545
72576
  theme: 'borderless',
72546
72577
  type: cancelType,
72547
72578
  onClick: this.handleCancel
72548
- })), showContent ? /*#__PURE__*/external_root_React_commonjs2_react_commonjs_react_amd_react_default().createElement("div", {
72579
+ }) : null), showContent ? /*#__PURE__*/external_root_React_commonjs2_react_commonjs_react_amd_react_default().createElement("div", {
72549
72580
  className: bodyCls,
72550
72581
  "x-semi-prop": "content"
72551
72582
  }, isFunction_default()(content) ? content({
@@ -72709,6 +72740,7 @@ Popconfirm.propTypes = {
72709
72740
  okButtonProps: (prop_types_default()).object,
72710
72741
  cancelButtonProps: (prop_types_default()).object,
72711
72742
  stopPropagation: prop_types_default().oneOfType([(prop_types_default()).bool, (prop_types_default()).string]),
72743
+ showCloseIcon: (prop_types_default()).bool,
72712
72744
  zIndex: (prop_types_default()).number,
72713
72745
  // private
72714
72746
  trigger: (prop_types_default()).string,
@@ -72727,6 +72759,7 @@ Popconfirm.defaultProps = {
72727
72759
  cancelType: 'tertiary',
72728
72760
  prefixCls: popconfirm_constants_cssClasses.PREFIX,
72729
72761
  zIndex: popconfirm_constants_numbers.DEFAULT_Z_INDEX,
72762
+ showCloseIcon: true,
72730
72763
  onCancel: (noop_default()),
72731
72764
  onConfirm: (noop_default()),
72732
72765
  onClickOutSide: (noop_default())
@@ -78459,12 +78492,12 @@ function withOrderSort(fn) {
78459
78492
  switch (order) {
78460
78493
  case 'descend':
78461
78494
  return (a, b) => {
78462
- const result = Number(fn(a, b));
78495
+ const result = Number(fn(a, b, order));
78463
78496
  return result !== 0 ? -result : result;
78464
78497
  };
78465
78498
  case 'ascend':
78466
78499
  default:
78467
- return fn;
78500
+ return (a, b) => fn(a, b, order);
78468
78501
  }
78469
78502
  }
78470
78503
  ;// CONCATENATED MODULE: ../semi-foundation/table/foundation.ts
@@ -87324,6 +87357,7 @@ class ToastFactory {
87324
87357
  */
87325
87358
 
87326
87359
 
87360
+
87327
87361
  class TreeFoundation extends foundation {
87328
87362
  constructor(adapter) {
87329
87363
  super(Object.assign({}, adapter));
@@ -87436,7 +87470,8 @@ class TreeFoundation extends foundation {
87436
87470
  } = this.getStates();
87437
87471
  const {
87438
87472
  leafOnly,
87439
- checkRelation
87473
+ checkRelation,
87474
+ keyMaps
87440
87475
  } = this.getProps();
87441
87476
  let value;
87442
87477
  let keyList = [];
@@ -87448,12 +87483,15 @@ class TreeFoundation extends foundation {
87448
87483
  if (this.getProp('onChangeWithObject')) {
87449
87484
  value = keyList.map(itemKey => keyEntities[itemKey].data);
87450
87485
  } else {
87451
- value = getValueOrKey(keyList.map(itemKey => keyEntities[itemKey].data));
87486
+ value = getValueOrKey(keyList.map(itemKey => keyEntities[itemKey].data), keyMaps);
87452
87487
  }
87453
87488
  this._adapter.notifyChange(value);
87454
87489
  }
87455
87490
  notifyChange(key, e) {
87456
87491
  const isMultiple = this._isMultiple();
87492
+ const {
87493
+ keyMaps
87494
+ } = this.getProps();
87457
87495
  const {
87458
87496
  keyEntities
87459
87497
  } = this.getStates();
@@ -87469,7 +87507,7 @@ class TreeFoundation extends foundation {
87469
87507
  const {
87470
87508
  data
87471
87509
  } = get_default()(keyEntities, key);
87472
- value = getValueOrKey(data);
87510
+ value = getValueOrKey(data, keyMaps);
87473
87511
  }
87474
87512
  this._adapter.notifyChange(value);
87475
87513
  }
@@ -87486,8 +87524,10 @@ class TreeFoundation extends foundation {
87486
87524
  const {
87487
87525
  showFilteredOnly,
87488
87526
  filterTreeNode,
87489
- treeNodeFilterProp
87527
+ treeNodeFilterProp,
87528
+ keyMaps
87490
87529
  } = this.getProps();
87530
+ const realFilterProp = treeNodeFilterProp !== 'label' ? treeNodeFilterProp : get_default()(keyMaps, 'label', 'label');
87491
87531
  let filteredOptsKeys = [];
87492
87532
  let expandedOptsKeys = [];
87493
87533
  let flattenNodes = [];
@@ -87495,13 +87535,13 @@ class TreeFoundation extends foundation {
87495
87535
  if (!sugInput) {
87496
87536
  expandedOptsKeys = findAncestorKeys(selectedKeys, keyEntities);
87497
87537
  expandedOptsKeys.forEach(item => expandedKeys.add(item));
87498
- flattenNodes = flattenTreeData(treeData, expandedKeys);
87538
+ flattenNodes = flattenTreeData(treeData, expandedKeys, keyMaps);
87499
87539
  } else {
87500
- filteredOptsKeys = Object.values(keyEntities).filter(item => filter(sugInput, item.data, filterTreeNode, treeNodeFilterProp)).map(item => item.key);
87540
+ filteredOptsKeys = Object.values(keyEntities).filter(item => filter(sugInput, item.data, filterTreeNode, realFilterProp)).map(item => item.key);
87501
87541
  expandedOptsKeys = findAncestorKeys(filteredOptsKeys, keyEntities, false);
87502
87542
  const shownChildKeys = findDescendantKeys(filteredOptsKeys, keyEntities, true);
87503
87543
  filteredShownKeys = new Set([...shownChildKeys, ...expandedOptsKeys]);
87504
- flattenNodes = flattenTreeData(treeData, new Set(expandedOptsKeys), showFilteredOnly && filteredShownKeys);
87544
+ flattenNodes = flattenTreeData(treeData, new Set(expandedOptsKeys), keyMaps, showFilteredOnly && filteredShownKeys);
87505
87545
  }
87506
87546
  const newFilteredExpandedKeys = new Set(expandedOptsKeys);
87507
87547
  this._adapter.notifySearch(sugInput, Array.from(newFilteredExpandedKeys));
@@ -87669,6 +87709,9 @@ class TreeFoundation extends foundation {
87669
87709
  filteredShownKeys,
87670
87710
  keyEntities
87671
87711
  } = this.getStates();
87712
+ const {
87713
+ keyMaps
87714
+ } = this.getProps();
87672
87715
  const isSearching = Boolean(inputValue);
87673
87716
  const showFilteredOnly = this._showFilteredOnly();
87674
87717
  const expandedStateKey = isSearching ? 'filteredExpandedKeys' : 'expandedKeys';
@@ -87687,7 +87730,7 @@ class TreeFoundation extends foundation {
87687
87730
  }
87688
87731
  this._adapter.cacheFlattenNodes(motionType === 'hide' && this._isAnimated());
87689
87732
  if (!this._isExpandControlled()) {
87690
- const flattenNodes = flattenTreeData(treeData, expandedKeys, isSearching && showFilteredOnly && filteredShownKeys);
87733
+ const flattenNodes = flattenTreeData(treeData, expandedKeys, keyMaps, isSearching && showFilteredOnly && filteredShownKeys);
87691
87734
  const motionKeys = this._isAnimated() ? getMotionKeys(eventKey, expandedKeys, keyEntities) : [];
87692
87735
  const newState = {
87693
87736
  [expandedStateKey]: expandedKeys,
@@ -88594,13 +88637,7 @@ function NodeCollapsible(props) {
88594
88637
 
88595
88638
 
88596
88639
  const getTreeNodeKey = treeNode => {
88597
- const {
88598
- data
88599
- } = treeNode;
88600
- const {
88601
- key
88602
- } = data;
88603
- return key;
88640
+ return treeNode.key;
88604
88641
  };
88605
88642
  class NodeList extends external_root_React_commonjs2_react_commonjs_react_amd_react_.PureComponent {
88606
88643
  constructor(props) {
@@ -88712,6 +88749,8 @@ const IconSearch_IconComponent = convertIcon(IconSearch_SvgComponent, 'search');
88712
88749
 
88713
88750
 
88714
88751
 
88752
+
88753
+
88715
88754
  var tree_rest = undefined && undefined.__rest || function (s, e) {
88716
88755
  var t = {};
88717
88756
  for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
@@ -88853,17 +88892,20 @@ class Tree extends BaseComponent {
88853
88892
  };
88854
88893
  this.renderTreeNode = (treeNode, ind, style) => {
88855
88894
  const {
88856
- data
88857
- } = treeNode;
88858
- const {
88895
+ data,
88859
88896
  key
88860
- } = data;
88897
+ } = treeNode;
88861
88898
  const treeNodeProps = this.foundation.getTreeNodeProps(key);
88862
88899
  if (!treeNodeProps) {
88863
88900
  return null;
88864
88901
  }
88865
- return /*#__PURE__*/external_root_React_commonjs2_react_commonjs_react_amd_react_default().createElement(TreeNode, Object.assign({}, treeNodeProps, data, {
88866
- key: key,
88902
+ const {
88903
+ keyMaps
88904
+ } = this.props;
88905
+ const props = pick_default()(treeNode, ['key', 'label', 'disabled', 'isLeaf', 'icon']);
88906
+ const children = data[get_default()(keyMaps, 'children', 'children')];
88907
+ !isUndefined_default()(children) && (props.children = children);
88908
+ return /*#__PURE__*/external_root_React_commonjs2_react_commonjs_react_amd_react_default().createElement(TreeNode, Object.assign({}, treeNodeProps, data, props, {
88867
88909
  data: data,
88868
88910
  style: isEmpty_default()(style) ? {} : style
88869
88911
  }));
@@ -88923,6 +88965,9 @@ class Tree extends BaseComponent {
88923
88965
  const {
88924
88966
  prevProps
88925
88967
  } = prevState;
88968
+ const {
88969
+ keyMaps
88970
+ } = props;
88926
88971
  let treeData;
88927
88972
  let keyEntities = prevState.keyEntities || {};
88928
88973
  let valueEntities = prevState.cachedKeyValuePairs || {};
@@ -88949,7 +88994,7 @@ class Tree extends BaseComponent {
88949
88994
  if (needUpdateTreeData || props.draggable && needUpdateData()) {
88950
88995
  treeData = props.treeData;
88951
88996
  newState.treeData = treeData;
88952
- const entitiesMap = convertDataToEntities(treeData);
88997
+ const entitiesMap = convertDataToEntities(treeData, keyMaps);
88953
88998
  newState.keyEntities = Object.assign({}, entitiesMap.keyEntities);
88954
88999
  keyEntities = newState.keyEntities;
88955
89000
  newState.cachedKeyValuePairs = Object.assign({}, entitiesMap.valueEntities);
@@ -88958,7 +89003,7 @@ class Tree extends BaseComponent {
88958
89003
  // Convert treeDataSimpleJson to treeData
88959
89004
  treeData = convertJsonToData(props.treeDataSimpleJson);
88960
89005
  newState.treeData = treeData;
88961
- const entitiesMap = convertDataToEntities(treeData);
89006
+ const entitiesMap = convertDataToEntities(treeData, keyMaps);
88962
89007
  newState.keyEntities = Object.assign({}, entitiesMap.keyEntities);
88963
89008
  keyEntities = newState.keyEntities;
88964
89009
  newState.cachedKeyValuePairs = Object.assign({}, entitiesMap.valueEntities);
@@ -89014,7 +89059,7 @@ class Tree extends BaseComponent {
89014
89059
  }
89015
89060
  // Update flattenNodes
89016
89061
  if (treeData || newState.expandedKeys) {
89017
- const flattenNodes = flattenTreeData(treeData || prevState.treeData, newState.expandedKeys || prevState.expandedKeys);
89062
+ const flattenNodes = flattenTreeData(treeData || prevState.treeData, newState.expandedKeys || prevState.expandedKeys, keyMaps);
89018
89063
  newState.flattenNodes = flattenNodes;
89019
89064
  }
89020
89065
  } else {
@@ -89029,7 +89074,8 @@ class Tree extends BaseComponent {
89029
89074
  filterProps: props.treeNodeFilterProp,
89030
89075
  showFilteredOnly: props.showFilteredOnly,
89031
89076
  keyEntities: newState.keyEntities,
89032
- prevExpandedKeys: [...prevState.filteredExpandedKeys]
89077
+ prevExpandedKeys: [...prevState.filteredExpandedKeys],
89078
+ keyMaps: keyMaps
89033
89079
  });
89034
89080
  newState.flattenNodes = filteredState.flattenNodes;
89035
89081
  newState.motionKeys = new Set([]);
@@ -89062,7 +89108,7 @@ class Tree extends BaseComponent {
89062
89108
  newState.motionType = motionType;
89063
89109
  }
89064
89110
  }
89065
- newState.flattenNodes = flattenTreeData(treeData || prevState.treeData, newState.filteredExpandedKeys || prevState.filteredExpandedKeys, props.showFilteredOnly && prevState.filteredShownKeys);
89111
+ newState.flattenNodes = flattenTreeData(treeData || prevState.treeData, newState.filteredExpandedKeys || prevState.filteredExpandedKeys, keyMaps, props.showFilteredOnly && prevState.filteredShownKeys);
89066
89112
  }
89067
89113
  }
89068
89114
  // Handle single selection and multiple selection in controlled mode
@@ -89073,26 +89119,26 @@ class Tree extends BaseComponent {
89073
89119
  if (needUpdate('value')) {
89074
89120
  newState.selectedKeys = findKeysForValues(
89075
89121
  // In both cases whether withObject is turned on, the value is standardized to string
89076
- normalizeValue(props.value, withObject), valueEntities, isMultiple);
89122
+ normalizeValue(props.value, withObject, keyMaps), valueEntities, isMultiple);
89077
89123
  } else if (!prevProps && props.defaultValue) {
89078
- newState.selectedKeys = findKeysForValues(normalizeValue(props.defaultValue, withObject), valueEntities, isMultiple);
89124
+ newState.selectedKeys = findKeysForValues(normalizeValue(props.defaultValue, withObject, keyMaps), valueEntities, isMultiple);
89079
89125
  } else if (treeData) {
89080
89126
  // If `treeData` changed, we also need check it
89081
89127
  if (props.value) {
89082
- newState.selectedKeys = findKeysForValues(normalizeValue(props.value, withObject) || '', valueEntities, isMultiple);
89128
+ newState.selectedKeys = findKeysForValues(normalizeValue(props.value, withObject, keyMaps) || '', valueEntities, isMultiple);
89083
89129
  }
89084
89130
  }
89085
89131
  } else {
89086
89132
  let checkedKeyValues;
89087
89133
  // Get the selected node during multiple selection
89088
89134
  if (needUpdate('value')) {
89089
- checkedKeyValues = findKeysForValues(normalizeValue(props.value, withObject), valueEntities, isMultiple);
89135
+ checkedKeyValues = findKeysForValues(normalizeValue(props.value, withObject, keyMaps), valueEntities, isMultiple);
89090
89136
  } else if (!prevProps && props.defaultValue) {
89091
- checkedKeyValues = findKeysForValues(normalizeValue(props.defaultValue, withObject), valueEntities, isMultiple);
89137
+ checkedKeyValues = findKeysForValues(normalizeValue(props.defaultValue, withObject, keyMaps), valueEntities, isMultiple);
89092
89138
  } else if (treeData) {
89093
89139
  // If `treeData` changed, we also need check it
89094
89140
  if (props.value) {
89095
- checkedKeyValues = findKeysForValues(normalizeValue(props.value, withObject) || [], valueEntities, isMultiple);
89141
+ checkedKeyValues = findKeysForValues(normalizeValue(props.value, withObject, keyMaps) || [], valueEntities, isMultiple);
89096
89142
  } else {
89097
89143
  checkedKeyValues = updateKeys(props.checkRelation === 'related' ? prevState.checkedKeys : prevState.realCheckedKeys, keyEntities);
89098
89144
  }
@@ -89116,7 +89162,7 @@ class Tree extends BaseComponent {
89116
89162
  }
89117
89163
  // update disableStrictly
89118
89164
  if (treeData && props.disableStrictly && props.checkRelation === 'related') {
89119
- newState.disabledKeys = calcDisabledKeys(keyEntities);
89165
+ newState.disabledKeys = calcDisabledKeys(keyEntities, keyMaps);
89120
89166
  }
89121
89167
  return newState;
89122
89168
  }
@@ -89394,11 +89440,12 @@ Tree.propTypes = {
89394
89440
  showFilteredOnly: (prop_types_default()).bool,
89395
89441
  style: (prop_types_default()).object,
89396
89442
  treeData: prop_types_default().arrayOf(prop_types_default().shape({
89397
- key: (prop_types_default()).string.isRequired,
89443
+ key: (prop_types_default()).string,
89398
89444
  value: prop_types_default().oneOfType([(prop_types_default()).string, (prop_types_default()).number]),
89399
89445
  label: (prop_types_default()).any,
89400
89446
  isLeaf: (prop_types_default()).bool
89401
89447
  })),
89448
+ keyMaps: (prop_types_default()).object,
89402
89449
  treeDataSimpleJson: (prop_types_default()).object,
89403
89450
  treeNodeFilterProp: (prop_types_default()).string,
89404
89451
  value: prop_types_default().oneOfType([(prop_types_default()).string, (prop_types_default()).number, (prop_types_default()).array, (prop_types_default()).object]),
@@ -89557,8 +89604,11 @@ class TreeSelectFoundation extends foundation {
89557
89604
  findDataForValue(findValue) {
89558
89605
  const {
89559
89606
  value,
89560
- defaultValue
89607
+ defaultValue,
89608
+ keyMaps
89561
89609
  } = this.getProps();
89610
+ const realValueName = get_default()(keyMaps, 'value', 'value');
89611
+ const realKeyName = get_default()(keyMaps, 'key', 'key');
89562
89612
  let valueArr = [];
89563
89613
  if (value) {
89564
89614
  valueArr = Array.isArray(value) ? value : [value];
@@ -89566,16 +89616,19 @@ class TreeSelectFoundation extends foundation {
89566
89616
  valueArr = Array.isArray(defaultValue) ? defaultValue : [defaultValue];
89567
89617
  }
89568
89618
  return valueArr.find(item => {
89569
- return item.value === findValue || item.key === findValue;
89619
+ return item[realValueName] === findValue || item[realKeyName] === findValue;
89570
89620
  });
89571
89621
  }
89572
89622
  constructDataForValue(value) {
89573
89623
  const {
89574
- treeNodeLabelProp
89624
+ treeNodeLabelProp,
89625
+ keyMaps
89575
89626
  } = this.getProps();
89627
+ const keyName = get_default()(keyMaps, 'key', 'key');
89628
+ const labelName = get_default()(keyMaps, 'label', treeNodeLabelProp);
89576
89629
  return {
89577
- key: value,
89578
- [treeNodeLabelProp]: value
89630
+ [keyName]: value,
89631
+ [labelName]: value
89579
89632
  };
89580
89633
  }
89581
89634
  getDataForKeyNotInKeyEntities(value) {
@@ -89692,7 +89745,8 @@ class TreeSelectFoundation extends foundation {
89692
89745
  } = this.getStates();
89693
89746
  const {
89694
89747
  leafOnly,
89695
- checkRelation
89748
+ checkRelation,
89749
+ keyMaps
89696
89750
  } = this.getProps();
89697
89751
  let keyList = [];
89698
89752
  if (checkRelation === 'related') {
@@ -89700,11 +89754,11 @@ class TreeSelectFoundation extends foundation {
89700
89754
  } else if (checkRelation === 'unRelated') {
89701
89755
  keyList = key;
89702
89756
  }
89703
- const nodes = keyList.map(key => keyEntities[key] && keyEntities[key].data.key === key ? keyEntities[key].data : this.getDataForKeyNotInKeyEntities(key));
89757
+ const nodes = keyList.map(key => keyEntities[key] && keyEntities[key].key === key ? keyEntities[key].data : this.getDataForKeyNotInKeyEntities(key));
89704
89758
  if (this.getProp('onChangeWithObject')) {
89705
89759
  this._adapter.notifyChangeWithObject(nodes, e);
89706
89760
  } else {
89707
- const value = getValueOrKey(nodes);
89761
+ const value = getValueOrKey(nodes, keyMaps);
89708
89762
  this._adapter.notifyChange(value, nodes, e);
89709
89763
  }
89710
89764
  }
@@ -89712,11 +89766,14 @@ class TreeSelectFoundation extends foundation {
89712
89766
  const {
89713
89767
  keyEntities
89714
89768
  } = this.getStates();
89769
+ const {
89770
+ keyMaps
89771
+ } = this.getProps();
89715
89772
  if (this._isMultiple() && Array.isArray(key)) {
89716
89773
  this._notifyMultipleChange(key, e);
89717
89774
  } else {
89718
89775
  const nodes = isUndefined_default()(key) ? key : keyEntities[key].data;
89719
- const value = isUndefined_default()(key) ? key : getValueOrKey(nodes);
89776
+ const value = isUndefined_default()(key) ? key : getValueOrKey(nodes, keyMaps);
89720
89777
  if (this.getProp('onChangeWithObject')) {
89721
89778
  this._adapter.notifyChangeWithObject(nodes, e);
89722
89779
  } else {
@@ -89843,15 +89900,17 @@ class TreeSelectFoundation extends foundation {
89843
89900
  removeTag(eventKey) {
89844
89901
  const {
89845
89902
  disableStrictly,
89846
- checkRelation
89903
+ checkRelation,
89904
+ keyMaps
89847
89905
  } = this.getProps();
89848
89906
  const {
89849
89907
  keyEntities,
89850
89908
  disabledKeys,
89851
89909
  realCheckedKeys
89852
89910
  } = this.getStates();
89853
- const item = keyEntities[eventKey] && keyEntities[eventKey].data.key === eventKey ? keyEntities[eventKey].data : this.getDataForKeyNotInKeyEntities(eventKey);
89854
- if (item.disabled || disableStrictly && disabledKeys.has(eventKey)) {
89911
+ const item = keyEntities[eventKey] && keyEntities[eventKey].key === eventKey ? keyEntities[eventKey].data : this.getDataForKeyNotInKeyEntities(eventKey);
89912
+ const disabledName = get_default()(keyMaps, 'disabled', 'disabled');
89913
+ if (item[disabledName] || disableStrictly && disabledKeys.has(eventKey)) {
89855
89914
  return;
89856
89915
  }
89857
89916
  if (checkRelation === 'unRelated') {
@@ -89890,11 +89949,14 @@ class TreeSelectFoundation extends foundation {
89890
89949
  keyEntities,
89891
89950
  treeData
89892
89951
  } = this.getStates();
89952
+ const {
89953
+ keyMaps
89954
+ } = this.getProps();
89893
89955
  const newExpandedKeys = new Set(expandedKeys);
89894
89956
  const isExpandControlled = this._isExpandControlled();
89895
89957
  const expandedOptsKeys = findAncestorKeys(selectedKeys, keyEntities);
89896
89958
  expandedOptsKeys.forEach(item => newExpandedKeys.add(item));
89897
- const newFlattenNodes = flattenTreeData(treeData, newExpandedKeys);
89959
+ const newFlattenNodes = flattenTreeData(treeData, newExpandedKeys, keyMaps);
89898
89960
  this._adapter.updateState({
89899
89961
  expandedKeys: isExpandControlled ? expandedKeys : newExpandedKeys,
89900
89962
  flattenNodes: isExpandControlled ? flattenNodes : newFlattenNodes,
@@ -89918,8 +89980,10 @@ class TreeSelectFoundation extends foundation {
89918
89980
  const {
89919
89981
  showFilteredOnly,
89920
89982
  filterTreeNode,
89921
- treeNodeFilterProp
89983
+ treeNodeFilterProp,
89984
+ keyMaps
89922
89985
  } = this.getProps();
89986
+ const realFilterProp = treeNodeFilterProp !== 'label' ? treeNodeFilterProp : get_default()(keyMaps, 'label', 'label');
89923
89987
  const newExpandedKeys = new Set(expandedKeys);
89924
89988
  let filteredOptsKeys = [];
89925
89989
  let expandedOptsKeys = [];
@@ -89928,18 +89992,18 @@ class TreeSelectFoundation extends foundation {
89928
89992
  if (!sugInput) {
89929
89993
  expandedOptsKeys = findAncestorKeys(selectedKeys, keyEntities);
89930
89994
  expandedOptsKeys.forEach(item => newExpandedKeys.add(item));
89931
- newFlattenNodes = flattenTreeData(treeData, newExpandedKeys);
89995
+ newFlattenNodes = flattenTreeData(treeData, newExpandedKeys, keyMaps);
89932
89996
  } else {
89933
89997
  filteredOptsKeys = Object.values(keyEntities).filter(item => {
89934
89998
  const {
89935
89999
  data
89936
90000
  } = item;
89937
- return filter(sugInput, data, filterTreeNode, treeNodeFilterProp);
90001
+ return filter(sugInput, data, filterTreeNode, realFilterProp);
89938
90002
  }).map(item => item.key);
89939
90003
  expandedOptsKeys = findAncestorKeys(filteredOptsKeys, keyEntities, false);
89940
90004
  const shownChildKeys = findDescendantKeys(filteredOptsKeys, keyEntities, true);
89941
90005
  filteredShownKeys = new Set([...shownChildKeys, ...expandedOptsKeys]);
89942
- newFlattenNodes = flattenTreeData(treeData, new Set(expandedOptsKeys), showFilteredOnly && filteredShownKeys);
90006
+ newFlattenNodes = flattenTreeData(treeData, new Set(expandedOptsKeys), keyMaps, showFilteredOnly && filteredShownKeys);
89943
90007
  }
89944
90008
  const newFilteredExpandedKeys = new Set(expandedOptsKeys);
89945
90009
  this._adapter.notifySearch(sugInput, Array.from(newFilteredExpandedKeys));
@@ -90073,7 +90137,7 @@ class TreeSelectFoundation extends foundation {
90073
90137
  return this.calcCheckedKeys(eventKey, targetStatus);
90074
90138
  }
90075
90139
  const nonDisabled = descendantKeys.filter(key => !disabledKeys.has(key));
90076
- const newCheckedKeys = targetStatus ? [...nonDisabled, ...checkedKeys] : difference_default()(normalizeKeyList([...checkedKeys], keyEntities, true), nonDisabled);
90140
+ const newCheckedKeys = targetStatus ? [...nonDisabled, ...checkedKeys] : difference_default()(normalizeKeyList([...checkedKeys], keyEntities, true, true), nonDisabled);
90077
90141
  return calcCheckedKeys(newCheckedKeys, keyEntities);
90078
90142
  }
90079
90143
  calcCheckedStatus(targetStatus, eventKey) {
@@ -90098,7 +90162,8 @@ class TreeSelectFoundation extends foundation {
90098
90162
  const {
90099
90163
  treeData,
90100
90164
  filteredShownKeys,
90101
- keyEntities
90165
+ keyEntities,
90166
+ keyMaps
90102
90167
  } = this.getStates();
90103
90168
  const showFilteredOnly = this._showFilteredOnly();
90104
90169
  // clone otherwise will be modified unexpectedly
@@ -90122,7 +90187,7 @@ class TreeSelectFoundation extends foundation {
90122
90187
  this._adapter.cacheFlattenNodes(motionType === 'hide' && this._isAnimated());
90123
90188
  if (!this._isExpandControlled()) {
90124
90189
  // debugger;
90125
- const flattenNodes = flattenTreeData(treeData, filteredExpandedKeys, showFilteredOnly && filteredShownKeys);
90190
+ const flattenNodes = flattenTreeData(treeData, filteredExpandedKeys, keyMaps, showFilteredOnly && filteredShownKeys);
90126
90191
  const motionKeys = this._isAnimated() ? getMotionKeys(eventKey, filteredExpandedKeys, keyEntities) : [];
90127
90192
  const newState = {
90128
90193
  filteredExpandedKeys,
@@ -90140,7 +90205,8 @@ class TreeSelectFoundation extends foundation {
90140
90205
  handleNodeExpand(e, treeNode) {
90141
90206
  // debugger;
90142
90207
  const {
90143
- loadData
90208
+ loadData,
90209
+ keyMaps
90144
90210
  } = this.getProps();
90145
90211
  const {
90146
90212
  inputValue,
@@ -90177,7 +90243,7 @@ class TreeSelectFoundation extends foundation {
90177
90243
  this._adapter.cacheFlattenNodes(motionType === 'hide' && this._isAnimated());
90178
90244
  if (!isExpandControlled) {
90179
90245
  // debugger;
90180
- const flattenNodes = flattenTreeData(treeData, expandedKeys);
90246
+ const flattenNodes = flattenTreeData(treeData, expandedKeys, keyMaps);
90181
90247
  const motionKeys = this._isAnimated() ? getMotionKeys(eventKey, expandedKeys, keyEntities) : [];
90182
90248
  const newState = {
90183
90249
  expandedKeys,
@@ -90198,19 +90264,21 @@ class TreeSelectFoundation extends foundation {
90198
90264
  getRenderTextInSingle() {
90199
90265
  const {
90200
90266
  renderSelectedItem: propRenderSelectedItem,
90201
- treeNodeLabelProp
90267
+ treeNodeLabelProp,
90268
+ keyMaps
90202
90269
  } = this.getProps();
90203
90270
  const {
90204
90271
  selectedKeys,
90205
90272
  keyEntities
90206
90273
  } = this.getStates();
90207
- const renderSelectedItem = isFunction_default()(propRenderSelectedItem) ? propRenderSelectedItem : item => get_default()(item, treeNodeLabelProp, null);
90274
+ const realLabelName = get_default()(keyMaps, 'label', treeNodeLabelProp);
90275
+ const renderSelectedItem = isFunction_default()(propRenderSelectedItem) ? propRenderSelectedItem : item => get_default()(item, realLabelName, null);
90208
90276
  let item;
90209
90277
  if (selectedKeys.length) {
90210
90278
  const key = selectedKeys[0];
90211
- item = keyEntities[key] && keyEntities[key].data.key === key ? keyEntities[key].data : this.getDataForKeyNotInKeyEntities(key);
90279
+ item = keyEntities[key] && keyEntities[key].key === key ? keyEntities[key].data : this.getDataForKeyNotInKeyEntities(key);
90212
90280
  }
90213
- const renderText = item && treeNodeLabelProp in item ? renderSelectedItem(item) : null;
90281
+ const renderText = item ? renderSelectedItem(item) : null;
90214
90282
  return renderText;
90215
90283
  }
90216
90284
  /**
@@ -90245,6 +90313,7 @@ var treeSelect = __webpack_require__("ZrYm");
90245
90313
 
90246
90314
 
90247
90315
 
90316
+
90248
90317
  var treeSelect_rest = undefined && undefined.__rest || function (s, e) {
90249
90318
  var t = {};
90250
90319
  for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
@@ -90402,11 +90471,13 @@ class TreeSelect extends BaseComponent {
90402
90471
  disableStrictly,
90403
90472
  size,
90404
90473
  checkRelation,
90405
- renderSelectedItem: propRenderSelectedItem
90474
+ renderSelectedItem: propRenderSelectedItem,
90475
+ keyMaps
90406
90476
  } = this.props;
90477
+ const realLabelName = get_default()(keyMaps, 'label', treeNodeLabelProp);
90407
90478
  const renderSelectedItem = isFunction_default()(propRenderSelectedItem) ? propRenderSelectedItem : item => ({
90408
90479
  isRenderInTag: true,
90409
- content: get_default()(item, treeNodeLabelProp, null)
90480
+ content: get_default()(item, realLabelName, null)
90410
90481
  });
90411
90482
  let renderKeys = [];
90412
90483
  if (checkRelation === 'related') {
@@ -90416,7 +90487,7 @@ class TreeSelect extends BaseComponent {
90416
90487
  }
90417
90488
  const tagList = [];
90418
90489
  renderKeys.forEach((key, index) => {
90419
- const item = keyEntities[key] && keyEntities[key].data.key === key ? keyEntities[key].data : this.getDataForKeyNotInKeyEntities(key);
90490
+ const item = keyEntities[key] && keyEntities[key].key === key ? keyEntities[key].data : this.getDataForKeyNotInKeyEntities(key);
90420
90491
  const onClose = (tagContent, e) => {
90421
90492
  if (e && typeof e.preventDefault === 'function') {
90422
90493
  // make sure that tag will not hidden immediately in controlled mode
@@ -90427,7 +90498,7 @@ class TreeSelect extends BaseComponent {
90427
90498
  const {
90428
90499
  content,
90429
90500
  isRenderInTag
90430
- } = item && treeNodeLabelProp in item ? renderSelectedItem(item, {
90501
+ } = item ? renderSelectedItem(item, {
90431
90502
  index,
90432
90503
  onClose
90433
90504
  }) : {};
@@ -90690,11 +90761,13 @@ class TreeSelect extends BaseComponent {
90690
90761
  disabled,
90691
90762
  disableStrictly,
90692
90763
  renderSelectedItem: propRenderSelectedItem,
90693
- treeNodeLabelProp
90764
+ treeNodeLabelProp,
90765
+ keyMaps
90694
90766
  } = this.props;
90767
+ const realLabelName = get_default()(keyMaps, 'label', treeNodeLabelProp);
90695
90768
  const keyList = normalizeKeyList([key], keyEntities, leafOnly, true);
90696
- const nodes = keyList.map(i => keyEntities[key] && keyEntities[key].data.key === key ? keyEntities[key].data : this.getDataForKeyNotInKeyEntities(key));
90697
- const value = getValueOrKey(nodes);
90769
+ const nodes = keyList.map(i => keyEntities[key] && keyEntities[key].key === key ? keyEntities[key].data : this.getDataForKeyNotInKeyEntities(key));
90770
+ const value = getValueOrKey(nodes, keyMaps);
90698
90771
  const tagCls = classnames_default()(`${treeSelect_prefixcls}-selection-tag`, {
90699
90772
  [`${treeSelect_prefixcls}-selection-tag-disabled`]: disabled
90700
90773
  });
@@ -90717,13 +90790,13 @@ class TreeSelect extends BaseComponent {
90717
90790
  const item = nodes[0];
90718
90791
  const renderSelectedItem = isFunction_default()(propRenderSelectedItem) ? propRenderSelectedItem : selectedItem => ({
90719
90792
  isRenderInTag: true,
90720
- content: get_default()(selectedItem, treeNodeLabelProp, null)
90793
+ content: get_default()(selectedItem, realLabelName, null)
90721
90794
  });
90722
90795
  if (isFunction_default()(renderSelectedItem)) {
90723
90796
  const {
90724
90797
  content,
90725
90798
  isRenderInTag
90726
- } = item && treeNodeLabelProp in item ? renderSelectedItem(item, {
90799
+ } = item ? renderSelectedItem(item, {
90727
90800
  index: idx,
90728
90801
  onClose
90729
90802
  }) : {};
@@ -90923,17 +90996,20 @@ class TreeSelect extends BaseComponent {
90923
90996
  };
90924
90997
  this.renderTreeNode = (treeNode, ind, style) => {
90925
90998
  const {
90926
- data
90927
- } = treeNode;
90928
- const {
90999
+ data,
90929
91000
  key
90930
- } = data;
91001
+ } = treeNode;
90931
91002
  const treeNodeProps = this.foundation.getTreeNodeProps(key);
90932
91003
  if (!treeNodeProps) {
90933
91004
  return null;
90934
91005
  }
90935
- return /*#__PURE__*/external_root_React_commonjs2_react_commonjs_react_amd_react_default().createElement(TreeNode, Object.assign({}, treeNodeProps, data, {
90936
- key: key,
91006
+ const props = pick_default()(treeNode, ['key', 'label', 'disabled', 'isLeaf', 'icon']);
91007
+ const {
91008
+ keyMaps
91009
+ } = this.props;
91010
+ const children = data[get_default()(keyMaps, 'children', 'children')];
91011
+ !isUndefined_default()(children) && (props.children = children);
91012
+ return /*#__PURE__*/external_root_React_commonjs2_react_commonjs_react_amd_react_default().createElement(TreeNode, Object.assign({}, treeNodeProps, data, props, {
90937
91013
  data: data,
90938
91014
  style: style
90939
91015
  }));
@@ -91117,6 +91193,9 @@ class TreeSelect extends BaseComponent {
91117
91193
  prevProps,
91118
91194
  rePosKey
91119
91195
  } = prevState;
91196
+ const {
91197
+ keyMaps
91198
+ } = props;
91120
91199
  const needUpdate = name => !prevProps && name in props || prevProps && !isEqual_default()(prevProps[name], props[name]);
91121
91200
  let treeData;
91122
91201
  const withObject = props.onChangeWithObject;
@@ -91131,7 +91210,7 @@ class TreeSelect extends BaseComponent {
91131
91210
  if (needUpdateTreeData) {
91132
91211
  treeData = props.treeData;
91133
91212
  newState.treeData = treeData;
91134
- const entitiesMap = convertDataToEntities(treeData);
91213
+ const entitiesMap = convertDataToEntities(treeData, keyMaps);
91135
91214
  newState.keyEntities = Object.assign({}, entitiesMap.keyEntities);
91136
91215
  keyEntities = newState.keyEntities;
91137
91216
  newState.cachedKeyValuePairs = Object.assign({}, entitiesMap.valueEntities);
@@ -91162,26 +91241,26 @@ class TreeSelect extends BaseComponent {
91162
91241
  } else if (!prevProps && props.defaultExpandedKeys) {
91163
91242
  newState.expandedKeys = calcExpandedKeys(props.defaultExpandedKeys, keyEntities);
91164
91243
  } else if (!prevProps && props.defaultValue) {
91165
- newState.expandedKeys = calcExpandedKeysForValues(normalizeValue(props.defaultValue, withObject), keyEntities, props.multiple, valueEntities);
91244
+ newState.expandedKeys = calcExpandedKeysForValues(normalizeValue(props.defaultValue, withObject, keyMaps), keyEntities, props.multiple, valueEntities);
91166
91245
  } else if (!prevProps && props.value) {
91167
- newState.expandedKeys = calcExpandedKeysForValues(normalizeValue(props.value, withObject), keyEntities, props.multiple, valueEntities);
91246
+ newState.expandedKeys = calcExpandedKeysForValues(normalizeValue(props.value, withObject, keyMaps), keyEntities, props.multiple, valueEntities);
91168
91247
  }
91169
91248
  // flattenNodes
91170
91249
  if (treeData || needUpdateExpandedKeys) {
91171
- const flattenNodes = flattenTreeData(treeData || prevState.treeData, newState.expandedKeys || prevState.expandedKeys);
91250
+ const flattenNodes = flattenTreeData(treeData || prevState.treeData, newState.expandedKeys || prevState.expandedKeys, keyMaps);
91172
91251
  newState.flattenNodes = flattenNodes;
91173
91252
  }
91174
91253
  // selectedKeys: single mode controlled
91175
91254
  const isMultiple = props.multiple;
91176
91255
  if (!isMultiple) {
91177
91256
  if (needUpdate('value')) {
91178
- newState.selectedKeys = findKeysForValues(normalizeValue(props.value, withObject), valueEntities, isMultiple);
91257
+ newState.selectedKeys = findKeysForValues(normalizeValue(props.value, withObject, keyMaps), valueEntities, isMultiple);
91179
91258
  } else if (!prevProps && props.defaultValue) {
91180
- newState.selectedKeys = findKeysForValues(normalizeValue(props.defaultValue, withObject), valueEntities, isMultiple);
91259
+ newState.selectedKeys = findKeysForValues(normalizeValue(props.defaultValue, withObject, keyMaps), valueEntities, isMultiple);
91181
91260
  } else if (treeData) {
91182
91261
  // If `treeData` changed, we also need check it
91183
91262
  if (props.value) {
91184
- newState.selectedKeys = findKeysForValues(normalizeValue(props.value, withObject) || '', valueEntities, isMultiple);
91263
+ newState.selectedKeys = findKeysForValues(normalizeValue(props.value, withObject, keyMaps) || '', valueEntities, isMultiple);
91185
91264
  } else {
91186
91265
  newState.selectedKeys = updateKeys(prevState.selectedKeys, keyEntities);
91187
91266
  }
@@ -91190,13 +91269,13 @@ class TreeSelect extends BaseComponent {
91190
91269
  // checkedKeys: multiple mode controlled || data changed
91191
91270
  let checkedKeyValues;
91192
91271
  if (needUpdate('value')) {
91193
- checkedKeyValues = findKeysForValues(normalizeValue(props.value, withObject), valueEntities, isMultiple);
91272
+ checkedKeyValues = findKeysForValues(normalizeValue(props.value, withObject, keyMaps), valueEntities, isMultiple);
91194
91273
  } else if (!prevProps && props.defaultValue) {
91195
- checkedKeyValues = findKeysForValues(normalizeValue(props.defaultValue, withObject), valueEntities, isMultiple);
91274
+ checkedKeyValues = findKeysForValues(normalizeValue(props.defaultValue, withObject, keyMaps), valueEntities, isMultiple);
91196
91275
  } else if (treeData) {
91197
91276
  // If `treeData` changed, we also need check it
91198
91277
  if (props.value) {
91199
- checkedKeyValues = findKeysForValues(normalizeValue(props.value, withObject) || [], valueEntities, isMultiple);
91278
+ checkedKeyValues = findKeysForValues(normalizeValue(props.value, withObject, keyMaps) || [], valueEntities, isMultiple);
91200
91279
  } else {
91201
91280
  checkedKeyValues = updateKeys(props.checkRelation === 'related' ? prevState.checkedKeys : prevState.realCheckedKeys, keyEntities);
91202
91281
  }
@@ -91224,7 +91303,7 @@ class TreeSelect extends BaseComponent {
91224
91303
  }
91225
91304
  // ================ disableStrictly =================
91226
91305
  if (treeData && props.disableStrictly && props.checkRelation === 'related') {
91227
- newState.disabledKeys = calcDisabledKeys(keyEntities);
91306
+ newState.disabledKeys = calcDisabledKeys(keyEntities, keyMaps);
91228
91307
  }
91229
91308
  return newState;
91230
91309
  }
@@ -91468,9 +91547,10 @@ TreeSelect.propTypes = {
91468
91547
  showFilteredOnly: (prop_types_default()).bool,
91469
91548
  motionExpand: (prop_types_default()).bool,
91470
91549
  emptyContent: (prop_types_default()).node,
91550
+ keyMaps: (prop_types_default()).object,
91471
91551
  leafOnly: (prop_types_default()).bool,
91472
91552
  treeData: prop_types_default().arrayOf(prop_types_default().shape({
91473
- key: (prop_types_default()).string.isRequired,
91553
+ key: (prop_types_default()).string,
91474
91554
  value: prop_types_default().oneOfType([(prop_types_default()).string, (prop_types_default()).number]),
91475
91555
  label: (prop_types_default()).any
91476
91556
  })),