@douyinfe/semi-ui 2.25.2 → 2.26.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.
@@ -24156,6 +24156,10 @@ const getRenderText = function (originEle, rows) {
24156
24156
  let ellipsisPos // eslint-disable-next-line max-params
24157
24157
  = arguments.length > 6 ? arguments[6] : undefined;
24158
24158
 
24159
+ if (content.length === 0) {
24160
+ return '';
24161
+ }
24162
+
24159
24163
  if (!ellipsisContainer) {
24160
24164
  ellipsisContainer = document.createElement('div');
24161
24165
  ellipsisContainer.setAttribute('aria-hidden', 'true');
@@ -38288,6 +38292,9 @@ function findKeysForValues(valueList, valueEntities) {
38288
38292
  valueList.forEach(val => {
38289
38293
  if (val in valueEntities) {
38290
38294
  res.push(valueEntities[val]);
38295
+ } else {
38296
+ // if val not in valueEntities, then value push to keys array
38297
+ val && res.push(val);
38291
38298
  }
38292
38299
  });
38293
38300
  return res;
@@ -38557,15 +38564,22 @@ function normalizedArr(val) {
38557
38564
  } else {
38558
38565
  return val;
38559
38566
  }
38560
- }
38567
+ } // flag is used to determine whether to return when the key does not belong to the keys in keyEntities
38568
+ // export function normalizeKeyList(keyList: any, keyEntities: KeyEntities, leafOnly = false) {
38569
+
38561
38570
  function normalizeKeyList(keyList, keyEntities) {
38562
38571
  let leafOnly = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
38572
+ let flag = arguments.length > 3 ? arguments[3] : undefined;
38563
38573
  const res = [];
38564
38574
  const keyListSet = new Set(keyList);
38565
38575
 
38566
38576
  if (!leafOnly) {
38567
38577
  keyList.forEach(key => {
38568
38578
  if (!keyEntities[key]) {
38579
+ if (flag) {
38580
+ res.push(key);
38581
+ }
38582
+
38569
38583
  return;
38570
38584
  }
38571
38585
 
@@ -38583,6 +38597,11 @@ function normalizeKeyList(keyList, keyEntities) {
38583
38597
  keyList.forEach(key => {
38584
38598
  if (keyEntities[key] && !treeUtil_isValid(keyEntities[key].children)) {
38585
38599
  res.push(key);
38600
+ } // when key is not in keyEntities, if flag is true, key should be push in res
38601
+
38602
+
38603
+ if (!keyEntities[key] && flag) {
38604
+ res.push(key);
38586
38605
  }
38587
38606
  });
38588
38607
  }
@@ -38699,7 +38718,7 @@ function calcCheckedKeysForUnchecked(key, keyEntities, checkedKeys, halfCheckedK
38699
38718
  }
38700
38719
  };
38701
38720
 
38702
- calcCurrLevel(nodeItem);
38721
+ nodeItem && calcCurrLevel(nodeItem);
38703
38722
  return {
38704
38723
  checkedKeys,
38705
38724
  halfCheckedKeys
@@ -80228,11 +80247,12 @@ function warnIfNoDataIndex(column) {
80228
80247
  const {
80229
80248
  filters,
80230
80249
  sorter,
80231
- dataIndex
80250
+ dataIndex,
80251
+ onFilter
80232
80252
  } = column;
80233
80253
  const logger = new utils_Logger('[@douyinfe/semi-ui Table]');
80234
80254
 
80235
- if ((Array.isArray(filters) || isFunction_default()(sorter)) && isNullOrUndefined(dataIndex)) {
80255
+ if ((Array.isArray(filters) || isFunction_default()(onFilter) || isFunction_default()(sorter)) && isNullOrUndefined(dataIndex)) {
80236
80256
  logger.warn("The column with sorter or filter must pass the 'dataIndex' prop");
80237
80257
  }
80238
80258
  }
@@ -80487,9 +80507,10 @@ class foundation_TableFoundation extends foundation {
80487
80507
  const {
80488
80508
  defaultFilteredValue,
80489
80509
  filteredValue,
80490
- filters
80510
+ onFilter
80491
80511
  } = column;
80492
- const hasFilter = Array.isArray(filters) && filters.length;
80512
+
80513
+ const hasFilter = isFunction_default()(onFilter);
80493
80514
 
80494
80515
  if (hasFilter && isUndefined_default()(filteredValue)) {
80495
80516
  if (Array.isArray(defaultFilteredValue) && defaultFilteredValue.length) {
@@ -80607,7 +80628,7 @@ class foundation_TableFoundation extends foundation {
80607
80628
  * When initializing we should use `defaultFilteredValue`, after clicking we should use `filteredValue`
80608
80629
  */
80609
80630
  const currentFilteredValue = query.filteredValue ? query.filteredValue : query.defaultFilteredValue;
80610
- return isFunction_default()(query.onFilter) && Array.isArray(query.filters) && query.filters.length && Array.isArray(currentFilteredValue) && currentFilteredValue.length;
80631
+ return isFunction_default()(query.onFilter) && Array.isArray(currentFilteredValue) && currentFilteredValue.length;
80611
80632
  }));
80612
80633
  const sortedDataSource = this.sortDataSource(filteredDataSource, queries.filter(query => query && isFunction_default()(query.sorter)));
80613
80634
  return sortedDataSource;
@@ -86249,6 +86270,8 @@ class Table_Table extends baseComponent_BaseComponent {
86249
86270
  if (this.props.defaultExpandAllRows && handledProps.groups && handledProps.groups.size || this.props.expandAllRows || this.props.expandAllGroupRows) {
86250
86271
  this.foundation.initExpandedRowKeys(handledProps);
86251
86272
  }
86273
+
86274
+ states.pagination = handledProps.pagination;
86252
86275
  } // Centrally update paging related state
86253
86276
 
86254
86277
 
@@ -92603,6 +92626,46 @@ class foundation_TreeSelectFoundation extends foundation {
92603
92626
  return Boolean(inputValue) && showFilteredOnly;
92604
92627
  }
92605
92628
 
92629
+ findDataForValue(findValue) {
92630
+ const {
92631
+ value,
92632
+ defaultValue
92633
+ } = this.getProps();
92634
+ let valueArr = [];
92635
+
92636
+ if (value) {
92637
+ valueArr = Array.isArray(value) ? value : [value];
92638
+ } else if (defaultValue) {
92639
+ valueArr = Array.isArray(defaultValue) ? defaultValue : [defaultValue];
92640
+ }
92641
+
92642
+ return valueArr.find(item => {
92643
+ return item.value === findValue || item.key === findValue;
92644
+ });
92645
+ }
92646
+
92647
+ constructDataForValue(value) {
92648
+ const {
92649
+ treeNodeLabelProp
92650
+ } = this.getProps();
92651
+ return {
92652
+ key: value,
92653
+ [treeNodeLabelProp]: value
92654
+ };
92655
+ }
92656
+
92657
+ getDataForKeyNotInKeyEntities(value) {
92658
+ const {
92659
+ onChangeWithObject
92660
+ } = this.getProps();
92661
+
92662
+ if (onChangeWithObject) {
92663
+ return this.findDataForValue(value);
92664
+ } else {
92665
+ return this.constructDataForValue(value);
92666
+ }
92667
+ }
92668
+
92606
92669
  getCopyFromState(items) {
92607
92670
  const res = {};
92608
92671
  normalizedArr(items).forEach(key => {
@@ -92729,12 +92792,12 @@ class foundation_TreeSelectFoundation extends foundation {
92729
92792
  let keyList = [];
92730
92793
 
92731
92794
  if (checkRelation === 'related') {
92732
- keyList = normalizeKeyList(key, keyEntities, leafOnly);
92795
+ keyList = normalizeKeyList(key, keyEntities, leafOnly, true);
92733
92796
  } else if (checkRelation === 'unRelated') {
92734
92797
  keyList = key;
92735
92798
  }
92736
92799
 
92737
- const nodes = keyList.map(i => keyEntities[i].data);
92800
+ const nodes = keyList.map(key => keyEntities[key] && keyEntities[key].data.key === key ? keyEntities[key].data : this.getDataForKeyNotInKeyEntities(key));
92738
92801
 
92739
92802
  if (this.getProp('onChangeWithObject')) {
92740
92803
  this._adapter.notifyChangeWithObject(nodes, e);
@@ -92908,7 +92971,7 @@ class foundation_TreeSelectFoundation extends foundation {
92908
92971
  disabledKeys,
92909
92972
  realCheckedKeys
92910
92973
  } = this.getStates();
92911
- const item = keyEntities[eventKey].data;
92974
+ const item = keyEntities[eventKey] && keyEntities[eventKey].data.key === eventKey ? keyEntities[eventKey].data : this.getDataForKeyNotInKeyEntities(eventKey);
92912
92975
 
92913
92976
  if (item.disabled || disableStrictly && disabledKeys.has(eventKey)) {
92914
92977
  return;
@@ -93331,7 +93394,13 @@ class foundation_TreeSelectFoundation extends foundation {
93331
93394
  keyEntities
93332
93395
  } = this.getStates();
93333
93396
  const renderSelectedItem = isFunction_default()(propRenderSelectedItem) ? propRenderSelectedItem : item => get_default()(item, treeNodeLabelProp, null);
93334
- const item = selectedKeys.length && keyEntities[selectedKeys[0]] ? keyEntities[selectedKeys[0]].data : undefined;
93397
+ let item;
93398
+
93399
+ if (selectedKeys.length) {
93400
+ const key = selectedKeys[0];
93401
+ item = keyEntities[key] && keyEntities[key].data.key === key ? keyEntities[key].data : this.getDataForKeyNotInKeyEntities(key);
93402
+ }
93403
+
93335
93404
  const renderText = item && treeNodeLabelProp in item ? renderSelectedItem(item) : null;
93336
93405
  return renderText;
93337
93406
  }
@@ -93398,6 +93467,8 @@ var treeSelect = __webpack_require__("uw59");
93398
93467
 
93399
93468
 
93400
93469
 
93470
+
93471
+
93401
93472
 
93402
93473
 
93403
93474
 
@@ -93470,6 +93541,10 @@ class treeSelect_TreeSelect extends baseComponent_BaseComponent {
93470
93541
  this.handleClick = e => {
93471
93542
  this.foundation.handleClick(e);
93472
93543
  };
93544
+
93545
+ this.getDataForKeyNotInKeyEntities = key => {
93546
+ return this.foundation.getDataForKeyNotInKeyEntities(key);
93547
+ };
93473
93548
  /* istanbul ignore next */
93474
93549
 
93475
93550
 
@@ -93540,15 +93615,15 @@ class treeSelect_TreeSelect extends baseComponent_BaseComponent {
93540
93615
  let renderKeys = [];
93541
93616
 
93542
93617
  if (checkRelation === 'related') {
93543
- renderKeys = normalizeKeyList([...checkedKeys], keyEntities, leafOnly);
93618
+ renderKeys = normalizeKeyList([...checkedKeys], keyEntities, leafOnly, true);
93544
93619
  } else if (checkRelation === 'unRelated' && Object.keys(keyEntities).length > 0) {
93545
93620
  renderKeys = [...realCheckedKeys];
93546
93621
  }
93547
93622
 
93548
93623
  const tagList = []; // eslint-disable-next-line @typescript-eslint/no-shadow
93549
93624
 
93550
- renderKeys.forEach(key => {
93551
- const item = keyEntities[key].data;
93625
+ renderKeys.forEach((key, index) => {
93626
+ const item = keyEntities[key] && keyEntities[key].data.key === key ? keyEntities[key].data : this.getDataForKeyNotInKeyEntities(key);
93552
93627
 
93553
93628
  const onClose = (tagContent, e) => {
93554
93629
  if (e && typeof e.preventDefault === 'function') {
@@ -93562,12 +93637,12 @@ class treeSelect_TreeSelect extends baseComponent_BaseComponent {
93562
93637
  const {
93563
93638
  content,
93564
93639
  isRenderInTag
93565
- } = treeNodeLabelProp in item && item ? renderSelectedItem(item, {
93566
- index: key,
93640
+ } = item && treeNodeLabelProp in item ? renderSelectedItem(item, {
93641
+ index,
93567
93642
  onClose
93568
93643
  }) : null;
93569
93644
 
93570
- if (!content) {
93645
+ if (isNull_default()(content) || isUndefined_default()(content)) {
93571
93646
  return;
93572
93647
  }
93573
93648
 
@@ -93577,7 +93652,7 @@ class treeSelect_TreeSelect extends baseComponent_BaseComponent {
93577
93652
  color: 'white',
93578
93653
  visible: true,
93579
93654
  onClose,
93580
- key,
93655
+ key: "tag-".concat(key, "-").concat(index),
93581
93656
  size: size === 'small' ? 'small' : 'large'
93582
93657
  };
93583
93658
 
@@ -93790,7 +93865,7 @@ class treeSelect_TreeSelect extends baseComponent_BaseComponent {
93790
93865
  ["".concat(treeSelect_prefixcls, "-with-suffix")]: suffix,
93791
93866
  ["".concat(treeSelect_prefixcls, "-with-suffix")]: suffix
93792
93867
  }, className);
93793
- const triggerRenderKeys = multiple ? normalizeKeyList([...checkedKeys], keyEntities, leafOnly) : selectedKeys;
93868
+ const triggerRenderKeys = multiple ? normalizeKeyList([...checkedKeys], keyEntities, leafOnly, true) : selectedKeys;
93794
93869
  const inner = useCustomTrigger ? /*#__PURE__*/external_root_React_commonjs2_react_commonjs_react_amd_react_default.a.createElement(trigger_0, {
93795
93870
  inputValue: inputValue,
93796
93871
  // eslint-disable-next-line @typescript-eslint/no-shadow
@@ -93854,8 +93929,8 @@ class treeSelect_TreeSelect extends baseComponent_BaseComponent {
93854
93929
  renderSelectedItem: propRenderSelectedItem,
93855
93930
  treeNodeLabelProp
93856
93931
  } = this.props;
93857
- const keyList = normalizeKeyList([key], keyEntities, leafOnly);
93858
- const nodes = keyList.map(i => keyEntities[i].data);
93932
+ const keyList = normalizeKeyList([key], keyEntities, leafOnly, true);
93933
+ const nodes = keyList.map(i => keyEntities[key] && keyEntities[key].data.key === key ? keyEntities[key].data : this.getDataForKeyNotInKeyEntities(key));
93859
93934
  const value = getValueOrKey(nodes);
93860
93935
  const tagCls = classnames_default()("".concat(treeSelect_prefixcls, "-selection-tag"), {
93861
93936
  ["".concat(treeSelect_prefixcls, "-selection-tag-disabled")]: disabled
@@ -93888,7 +93963,7 @@ class treeSelect_TreeSelect extends baseComponent_BaseComponent {
93888
93963
  const {
93889
93964
  content,
93890
93965
  isRenderInTag
93891
- } = treeNodeLabelProp in item && item ? renderSelectedItem(item, {
93966
+ } = item && treeNodeLabelProp in item ? renderSelectedItem(item, {
93892
93967
  index: idx,
93893
93968
  onClose
93894
93969
  }) : null;
@@ -93926,7 +94001,7 @@ class treeSelect_TreeSelect extends baseComponent_BaseComponent {
93926
94001
  let keyList = [];
93927
94002
 
93928
94003
  if (checkRelation === 'related') {
93929
- keyList = normalizeKeyList(checkedKeys, keyEntities, leafOnly);
94004
+ keyList = normalizeKeyList(checkedKeys, keyEntities, leafOnly, true);
93930
94005
  } else if (checkRelation === 'unRelated') {
93931
94006
  keyList = [...realCheckedKeys];
93932
94007
  } // auto focus search input divide into two parts
@@ -94651,7 +94726,7 @@ treeSelect_TreeSelect.propTypes = {
94651
94726
  arrowIcon: prop_types_default.a.node,
94652
94727
  clearIcon: prop_types_default.a.node,
94653
94728
  defaultOpen: prop_types_default.a.bool,
94654
- defaultValue: prop_types_default.a.oneOfType([prop_types_default.a.string, prop_types_default.a.array]),
94729
+ defaultValue: prop_types_default.a.oneOfType([prop_types_default.a.string, prop_types_default.a.array, prop_types_default.a.object]),
94655
94730
  defaultExpandAll: prop_types_default.a.bool,
94656
94731
  defaultExpandedKeys: prop_types_default.a.array,
94657
94732
  expandAll: prop_types_default.a.bool,