@douyinfe/semi-ui 2.12.0 → 2.12.1-alpha.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (206) hide show
  1. package/avatar/index.tsx +2 -2
  2. package/backtop/index.tsx +11 -7
  3. package/badge/index.tsx +1 -1
  4. package/banner/index.tsx +5 -5
  5. package/breadcrumb/index.tsx +5 -3
  6. package/button/Button.tsx +10 -8
  7. package/card/index.tsx +43 -41
  8. package/carousel/CarouselArrow.tsx +2 -0
  9. package/carousel/index.tsx +1 -0
  10. package/cascader/index.tsx +101 -123
  11. package/cascader/item.tsx +1 -1
  12. package/checkbox/checkbox.tsx +13 -2
  13. package/collapsible/index.tsx +8 -1
  14. package/datePicker/dateInput.tsx +1 -0
  15. package/datePicker/datePicker.tsx +13 -5
  16. package/dist/css/semi.css +40 -40
  17. package/dist/css/semi.min.css +1 -1
  18. package/dist/umd/semi-ui.js +491 -362
  19. package/dist/umd/semi-ui.js.map +1 -1
  20. package/dist/umd/semi-ui.min.js +1 -1
  21. package/dist/umd/semi-ui.min.js.map +1 -1
  22. package/divider/index.tsx +8 -4
  23. package/dropdown/index.tsx +1 -1
  24. package/empty/index.tsx +13 -5
  25. package/form/hoc/withField.tsx +1 -1
  26. package/form/label.tsx +1 -1
  27. package/grid/col.tsx +1 -1
  28. package/grid/row.tsx +1 -1
  29. package/iconButton/index.tsx +2 -1
  30. package/input/index.tsx +38 -11
  31. package/lib/cjs/avatar/index.js +4 -2
  32. package/lib/cjs/backtop/index.js +2 -1
  33. package/lib/cjs/badge/index.js +2 -1
  34. package/lib/cjs/banner/index.js +9 -4
  35. package/lib/cjs/breadcrumb/index.js +4 -3
  36. package/lib/cjs/button/Button.d.ts +1 -1
  37. package/lib/cjs/button/Button.js +13 -3
  38. package/lib/cjs/button/index.d.ts +1 -1
  39. package/lib/cjs/card/index.js +10 -5
  40. package/lib/cjs/carousel/CarouselArrow.js +6 -2
  41. package/lib/cjs/carousel/CarouselIndicator.d.ts +1 -1
  42. package/lib/cjs/carousel/index.d.ts +1 -1
  43. package/lib/cjs/carousel/index.js +2 -1
  44. package/lib/cjs/cascader/index.js +9 -6
  45. package/lib/cjs/cascader/item.js +2 -1
  46. package/lib/cjs/checkbox/checkbox.js +8 -4
  47. package/lib/cjs/collapsible/index.js +2 -1
  48. package/lib/cjs/datePicker/dateInput.d.ts +1 -1
  49. package/lib/cjs/datePicker/dateInput.js +2 -1
  50. package/lib/cjs/datePicker/datePicker.d.ts +1 -1
  51. package/lib/cjs/datePicker/datePicker.js +4 -2
  52. package/lib/cjs/datePicker/monthsGrid.d.ts +1 -1
  53. package/lib/cjs/divider/index.js +2 -1
  54. package/lib/cjs/dropdown/index.js +2 -1
  55. package/lib/cjs/empty/index.js +8 -4
  56. package/lib/cjs/form/baseForm.d.ts +1 -1
  57. package/lib/cjs/form/field.d.ts +1 -1
  58. package/lib/cjs/form/hoc/withField.js +2 -1
  59. package/lib/cjs/form/label.js +2 -1
  60. package/lib/cjs/grid/col.js +2 -1
  61. package/lib/cjs/grid/row.js +2 -1
  62. package/lib/cjs/iconButton/index.js +3 -1
  63. package/lib/cjs/input/index.js +9 -5
  64. package/lib/cjs/list/index.js +6 -3
  65. package/lib/cjs/modal/ConfirmModal.js +2 -1
  66. package/lib/cjs/modal/Modal.js +6 -2
  67. package/lib/cjs/modal/ModalContent.js +13 -6
  68. package/lib/cjs/modal/confirm.d.ts +5 -5
  69. package/lib/cjs/notification/notice.js +6 -3
  70. package/lib/cjs/pagination/index.js +4 -2
  71. package/lib/cjs/popconfirm/index.js +6 -3
  72. package/lib/cjs/radio/radio.d.ts +1 -1
  73. package/lib/cjs/radio/radio.js +4 -2
  74. package/lib/cjs/radio/radioGroup.d.ts +1 -1
  75. package/lib/cjs/rating/item.js +2 -1
  76. package/lib/cjs/scrollList/index.js +6 -3
  77. package/lib/cjs/select/index.js +8 -4
  78. package/lib/cjs/select/option.js +2 -1
  79. package/lib/cjs/sideSheet/SideSheetContent.js +6 -3
  80. package/lib/cjs/skeleton/index.js +3 -1
  81. package/lib/cjs/space/index.js +2 -1
  82. package/lib/cjs/spin/index.js +7 -3
  83. package/lib/cjs/switch/index.js +6 -4
  84. package/lib/cjs/table/Table.d.ts +1 -1
  85. package/lib/cjs/table/Table.js +6 -3
  86. package/lib/cjs/tabs/TabBar.js +2 -1
  87. package/lib/cjs/tabs/TabPane.js +5 -2
  88. package/lib/cjs/tagInput/index.js +4 -2
  89. package/lib/cjs/timePicker/Combobox.js +3 -1
  90. package/lib/cjs/timePicker/TimePicker.d.ts +2 -2
  91. package/lib/cjs/timePicker/TimeShape.d.ts +1 -1
  92. package/lib/cjs/timePicker/index.d.ts +2 -2
  93. package/lib/cjs/toast/toast.js +6 -3
  94. package/lib/cjs/transfer/index.js +2 -1
  95. package/lib/cjs/tree/treeNode.js +2 -1
  96. package/lib/cjs/treeSelect/index.js +6 -3
  97. package/lib/cjs/typography/base.d.ts +1 -1
  98. package/lib/cjs/typography/base.js +2 -1
  99. package/lib/cjs/typography/paragraph.d.ts +1 -1
  100. package/lib/cjs/typography/text.d.ts +1 -1
  101. package/lib/cjs/typography/title.d.ts +2 -2
  102. package/lib/cjs/upload/index.d.ts +2 -2
  103. package/lib/cjs/upload/index.js +13 -6
  104. package/lib/es/avatar/index.js +4 -2
  105. package/lib/es/backtop/index.js +2 -1
  106. package/lib/es/badge/index.js +2 -1
  107. package/lib/es/banner/index.js +9 -4
  108. package/lib/es/breadcrumb/index.js +4 -3
  109. package/lib/es/button/Button.d.ts +1 -1
  110. package/lib/es/button/Button.js +11 -3
  111. package/lib/es/button/index.d.ts +1 -1
  112. package/lib/es/card/index.js +10 -5
  113. package/lib/es/carousel/CarouselArrow.js +6 -2
  114. package/lib/es/carousel/CarouselIndicator.d.ts +1 -1
  115. package/lib/es/carousel/index.d.ts +1 -1
  116. package/lib/es/carousel/index.js +2 -1
  117. package/lib/es/cascader/index.js +9 -6
  118. package/lib/es/cascader/item.js +2 -1
  119. package/lib/es/checkbox/checkbox.js +8 -4
  120. package/lib/es/collapsible/index.js +2 -1
  121. package/lib/es/datePicker/dateInput.d.ts +1 -1
  122. package/lib/es/datePicker/dateInput.js +2 -1
  123. package/lib/es/datePicker/datePicker.d.ts +1 -1
  124. package/lib/es/datePicker/datePicker.js +4 -2
  125. package/lib/es/datePicker/monthsGrid.d.ts +1 -1
  126. package/lib/es/divider/index.js +2 -1
  127. package/lib/es/dropdown/index.js +2 -1
  128. package/lib/es/empty/index.js +8 -4
  129. package/lib/es/form/baseForm.d.ts +1 -1
  130. package/lib/es/form/field.d.ts +1 -1
  131. package/lib/es/form/hoc/withField.js +2 -1
  132. package/lib/es/form/label.js +2 -1
  133. package/lib/es/grid/col.js +2 -1
  134. package/lib/es/grid/row.js +2 -1
  135. package/lib/es/iconButton/index.js +3 -1
  136. package/lib/es/input/index.js +9 -5
  137. package/lib/es/list/index.js +6 -3
  138. package/lib/es/modal/ConfirmModal.js +2 -1
  139. package/lib/es/modal/Modal.js +6 -2
  140. package/lib/es/modal/ModalContent.js +13 -6
  141. package/lib/es/modal/confirm.d.ts +5 -5
  142. package/lib/es/notification/notice.js +6 -3
  143. package/lib/es/pagination/index.js +4 -2
  144. package/lib/es/popconfirm/index.js +6 -3
  145. package/lib/es/radio/radio.d.ts +1 -1
  146. package/lib/es/radio/radio.js +4 -2
  147. package/lib/es/radio/radioGroup.d.ts +1 -1
  148. package/lib/es/rating/item.js +2 -1
  149. package/lib/es/scrollList/index.js +6 -3
  150. package/lib/es/select/index.js +8 -4
  151. package/lib/es/select/option.js +2 -1
  152. package/lib/es/sideSheet/SideSheetContent.js +6 -3
  153. package/lib/es/skeleton/index.js +3 -1
  154. package/lib/es/space/index.js +2 -1
  155. package/lib/es/spin/index.js +7 -3
  156. package/lib/es/switch/index.js +6 -4
  157. package/lib/es/table/Table.d.ts +1 -1
  158. package/lib/es/table/Table.js +6 -3
  159. package/lib/es/tabs/TabBar.js +2 -1
  160. package/lib/es/tabs/TabPane.js +5 -2
  161. package/lib/es/tagInput/index.js +4 -2
  162. package/lib/es/timePicker/Combobox.js +3 -1
  163. package/lib/es/timePicker/TimePicker.d.ts +2 -2
  164. package/lib/es/timePicker/TimeShape.d.ts +1 -1
  165. package/lib/es/timePicker/index.d.ts +2 -2
  166. package/lib/es/toast/toast.js +6 -3
  167. package/lib/es/transfer/index.js +2 -1
  168. package/lib/es/tree/treeNode.js +2 -1
  169. package/lib/es/treeSelect/index.js +6 -3
  170. package/lib/es/typography/base.d.ts +1 -1
  171. package/lib/es/typography/base.js +2 -1
  172. package/lib/es/typography/paragraph.d.ts +1 -1
  173. package/lib/es/typography/text.d.ts +1 -1
  174. package/lib/es/typography/title.d.ts +2 -2
  175. package/lib/es/upload/index.d.ts +2 -2
  176. package/lib/es/upload/index.js +13 -6
  177. package/list/index.tsx +16 -4
  178. package/modal/ConfirmModal.tsx +1 -1
  179. package/modal/Modal.tsx +2 -0
  180. package/modal/ModalContent.tsx +27 -14
  181. package/notification/notice.tsx +16 -4
  182. package/package.json +9 -9
  183. package/pagination/index.tsx +16 -2
  184. package/popconfirm/index.tsx +11 -3
  185. package/radio/radio.tsx +10 -2
  186. package/rating/item.tsx +1 -1
  187. package/scrollList/index.tsx +19 -3
  188. package/select/index.tsx +12 -4
  189. package/select/option.tsx +5 -1
  190. package/sideSheet/SideSheetContent.tsx +3 -3
  191. package/skeleton/index.tsx +1 -1
  192. package/space/index.tsx +1 -1
  193. package/spin/index.tsx +15 -9
  194. package/switch/index.tsx +9 -14
  195. package/table/Table.tsx +5 -3
  196. package/tabs/TabBar.tsx +1 -1
  197. package/tabs/TabPane.tsx +9 -4
  198. package/tagInput/index.tsx +2 -2
  199. package/timePicker/Combobox.tsx +6 -1
  200. package/toast/toast.tsx +3 -3
  201. package/transfer/index.tsx +1 -0
  202. package/tree/treeNode.tsx +1 -1
  203. package/treeSelect/index.tsx +15 -3
  204. package/typography/base.tsx +1 -1
  205. package/upload/index.tsx +107 -38
  206. package/yarn-error.log +26235 -0
@@ -98,7 +98,8 @@ export default class Item extends PureComponent {
98
98
  width: "".concat(firstWidth * 100, "%")
99
99
  }
100
100
  }, content), /*#__PURE__*/React.createElement("div", {
101
- className: "".concat(prefixCls, "-second")
101
+ className: "".concat(prefixCls, "-second"),
102
+ "x-semi-prop": "character"
102
103
  }, content)));
103
104
  }
104
105
 
@@ -35,16 +35,19 @@ class ScrollList extends BaseComponent {
35
35
  }, header ? /*#__PURE__*/React.createElement("div", {
36
36
  className: clsHeader
37
37
  }, /*#__PURE__*/React.createElement("div", {
38
- className: "".concat(clsHeader, "-title")
38
+ className: "".concat(clsHeader, "-title"),
39
+ "x-semi-prop": this.props['x-semi-header-alias'] || "header"
39
40
  }, header), /*#__PURE__*/React.createElement("div", {
40
41
  className: "".concat(clsWrapper, "-line")
41
42
  })) : null, /*#__PURE__*/React.createElement("div", {
42
43
  className: "".concat(clsWrapper, "-body"),
43
44
  style: {
44
45
  height: bodyHeight ? bodyHeight : ''
45
- }
46
+ },
47
+ "x-semi-prop": "children"
46
48
  }, children), footer ? /*#__PURE__*/React.createElement("div", {
47
- className: "".concat(clsWrapper, "-footer")
49
+ className: "".concat(clsWrapper, "-footer"),
50
+ "x-semi-prop": this.props['x-semi-footer-alias'] || "footer"
48
51
  }, footer) : null);
49
52
  }
50
53
 
@@ -663,7 +663,8 @@ class Select extends BaseComponent {
663
663
  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("div", {
664
664
  className: contentWrapperCls
665
665
  }, /*#__PURE__*/React.createElement("span", {
666
- className: spanCls
666
+ className: spanCls,
667
+ "x-semi-prop": "placeholder"
667
668
  }, renderText || renderText === 0 ? renderText : placeholder), filterable && showInput ? this.renderInput() : null));
668
669
  }
669
670
 
@@ -825,7 +826,8 @@ class Select extends BaseComponent {
825
826
  ["".concat(prefixcls, "-suffix-icon")]: isSemiIcon(suffix)
826
827
  });
827
828
  return /*#__PURE__*/React.createElement("div", {
828
- className: suffixWrapperCls
829
+ className: suffixWrapperCls,
830
+ "x-semi-prop": "suffix"
829
831
  }, suffix);
830
832
  }
831
833
 
@@ -844,7 +846,8 @@ class Select extends BaseComponent {
844
846
  });
845
847
  return /*#__PURE__*/React.createElement("div", {
846
848
  className: prefixWrapperCls,
847
- id: insetLabelId
849
+ id: insetLabelId,
850
+ "x-semi-prop": "prefix,insetLabel"
848
851
  }, labelNode);
849
852
  }
850
853
 
@@ -896,7 +899,8 @@ class Select extends BaseComponent {
896
899
  });
897
900
  const showClear = this.props.showClear && (selections.size || inputValue) && !disabled && (isHovering || isOpen);
898
901
  const arrowContent = showArrow ? /*#__PURE__*/React.createElement("div", {
899
- className: "".concat(prefixcls, "-arrow")
902
+ className: "".concat(prefixcls, "-arrow"),
903
+ "x-semi-prop": "arrowIcon"
900
904
  }, arrowIcon) : /*#__PURE__*/React.createElement("div", {
901
905
  className: "".concat(prefixcls, "-arrow-empty")
902
906
  });
@@ -100,7 +100,8 @@ class Option extends PureComponent {
100
100
  return /*#__PURE__*/React.createElement(LocaleConsumer, {
101
101
  componentName: "Select"
102
102
  }, locale => /*#__PURE__*/React.createElement("div", {
103
- className: optionClassName
103
+ className: optionClassName,
104
+ "x-semi-prop": "emptyContent"
104
105
  }, emptyContent || locale.emptyText));
105
106
  } // Since there are empty, locale and other logic, the custom renderOptionItem is directly converged to the internal option instead of being placed in Select/index
106
107
 
@@ -79,7 +79,8 @@ export default class SideSheetContent extends React.PureComponent {
79
79
 
80
80
  if (title) {
81
81
  header = /*#__PURE__*/React.createElement("div", {
82
- className: "".concat(prefixCls, "-title")
82
+ className: "".concat(prefixCls, "-title"),
83
+ "x-semi-prop": "title"
83
84
  }, this.props.title);
84
85
  }
85
86
 
@@ -134,9 +135,11 @@ export default class SideSheetContent extends React.PureComponent {
134
135
  className: "".concat(prefixCls, "-content")
135
136
  }, header, /*#__PURE__*/React.createElement("div", {
136
137
  className: "".concat(prefixCls, "-body"),
137
- style: props.bodyStyle
138
+ style: props.bodyStyle,
139
+ "x-semi-prop": "children"
138
140
  }, props.children), props.footer ? /*#__PURE__*/React.createElement("div", {
139
- className: "".concat(prefixCls, "-footer")
141
+ className: "".concat(prefixCls, "-footer"),
142
+ "x-semi-prop": "footer"
140
143
  }, props.footer) : null));
141
144
  return dialogElement;
142
145
  }
@@ -43,7 +43,9 @@ class Skeleton extends PureComponent {
43
43
  content = /*#__PURE__*/React.createElement("div", _Object$assign({
44
44
  className: skCls,
45
45
  style: style
46
- }, others), placeholder);
46
+ }, others, {
47
+ "x-semi-prop": "placeholder"
48
+ }), placeholder);
47
49
  } else {
48
50
  content = children;
49
51
  }
@@ -66,7 +66,8 @@ class Space extends PureComponent {
66
66
  const childrenNodes = flatten(children);
67
67
  return /*#__PURE__*/React.createElement("div", {
68
68
  className: classNames,
69
- style: realStyle
69
+ style: realStyle,
70
+ "x-semi-prop": "children"
70
71
  }, childrenNodes);
71
72
  }
72
73
 
@@ -67,8 +67,11 @@ class Spin extends BaseComponent {
67
67
  return loading ? /*#__PURE__*/React.createElement("div", {
68
68
  className: "".concat(prefixCls, "-wrapper")
69
69
  }, indicator ? /*#__PURE__*/React.createElement("div", {
70
- className: spinIconCls
71
- }, indicator) : /*#__PURE__*/React.createElement(SpinIcon, null), tip ? /*#__PURE__*/React.createElement("div", null, tip) : null) : null;
70
+ className: spinIconCls,
71
+ "x-semi-prop": "indicator"
72
+ }, indicator) : /*#__PURE__*/React.createElement(SpinIcon, null), tip ? /*#__PURE__*/React.createElement("div", {
73
+ "x-semi-prop": "tip"
74
+ }, tip) : null) : null;
72
75
  }
73
76
 
74
77
  render() {
@@ -95,7 +98,8 @@ class Spin extends BaseComponent {
95
98
  style: style
96
99
  }, this.renderSpin(), /*#__PURE__*/React.createElement("div", {
97
100
  className: "".concat(prefixCls, "-children"),
98
- style: childStyle
101
+ style: childStyle,
102
+ "x-semi-prop": "children"
99
103
  }, children));
100
104
  }
101
105
 
@@ -119,19 +119,21 @@ class Switch extends BaseComponent {
119
119
  className: cssClasses.KNOB,
120
120
  "aria-hidden": true
121
121
  }), showCheckedText ? /*#__PURE__*/React.createElement("div", {
122
- className: cssClasses.CHECKED_TEXT
122
+ className: cssClasses.CHECKED_TEXT,
123
+ "x-semi-prop": "checkedText"
123
124
  }, checkedText) : null, showUncheckedText ? /*#__PURE__*/React.createElement("div", {
124
- className: cssClasses.UNCHECKED_TEXT
125
+ className: cssClasses.UNCHECKED_TEXT,
126
+ "x-semi-prop": "uncheckedText"
125
127
  }, uncheckedText) : null, /*#__PURE__*/React.createElement("input", _Object$assign({}, switchProps, {
126
128
  ref: this.switchRef,
127
129
  id: id,
128
- role: 'switch',
130
+ role: "switch",
129
131
  "aria-checked": nativeControlChecked,
130
132
  "aria-invalid": this.props['aria-invalid'],
131
133
  "aria-errormessage": this.props['aria-errormessage'],
132
134
  "aria-label": this.props['aria-label'],
133
135
  "aria-labelledby": this.props['aria-labelledby'],
134
- "aria-describedby": this.props["aria-describedby"],
136
+ "aria-describedby": this.props['aria-describedby'],
135
137
  "aria-disabled": this.props['disabled'],
136
138
  onChange: e => this.foundation.handleChange(e.target.checked, e),
137
139
  onFocus: e => this.handleFocusVisible(e),
@@ -294,7 +294,7 @@ declare class Table<RecordType extends Record<string, any>> extends BaseComponen
294
294
  defaultCurrentPage?: number;
295
295
  onPageChange?: (currentPage: number) => void;
296
296
  onPageSizeChange?: (newPageSize: number) => void;
297
- onChange: (currentPage: number, pageSize: number) => void;
297
+ onChange: ((currentPage: number, pageSize: number) => void) | ((currentPage: number, currentPageSize: number) => void);
298
298
  prevText?: React.ReactNode;
299
299
  nextText?: React.ReactNode;
300
300
  showSizeChanger?: boolean;
@@ -582,7 +582,8 @@ class Table extends BaseComponent {
582
582
  }
583
583
 
584
584
  return /*#__PURE__*/isValidElement(title) || typeof title === 'string' ? /*#__PURE__*/React.createElement("div", {
585
- className: "".concat(prefixCls, "-title")
585
+ className: "".concat(prefixCls, "-title"),
586
+ "x-semi-prop": "title"
586
587
  }, title) : null;
587
588
  };
588
589
 
@@ -607,7 +608,8 @@ class Table extends BaseComponent {
607
608
  }, (locale, localeCode) => /*#__PURE__*/React.createElement("div", {
608
609
  className: wrapCls
609
610
  }, /*#__PURE__*/React.createElement("div", {
610
- className: "".concat(prefixCls, "-empty")
611
+ className: "".concat(prefixCls, "-empty"),
612
+ "x-semi-prop": "empty"
611
613
  }, empty || locale.emptyText)));
612
614
  };
613
615
 
@@ -627,7 +629,8 @@ class Table extends BaseComponent {
627
629
 
628
630
  return /*#__PURE__*/isValidElement(footer) || typeof footer === 'string' ? /*#__PURE__*/React.createElement("div", {
629
631
  className: "".concat(prefixCls, "-footer"),
630
- key: "footer"
632
+ key: "footer",
633
+ "x-semi-prop": "footer"
631
634
  }, footer) : null;
632
635
  };
633
636
 
@@ -246,7 +246,8 @@ class TabBar extends React.Component {
246
246
 
247
247
  return /*#__PURE__*/React.createElement("div", {
248
248
  className: extraCls,
249
- style: tabBarStyle
249
+ style: tabBarStyle,
250
+ "x-semi-prop": "tabBarExtraContent"
250
251
  }, tabBarExtraContent);
251
252
  }
252
253
 
@@ -116,14 +116,17 @@ class TabPane extends PureComponent {
116
116
  style: style,
117
117
  "aria-hidden": active ? 'false' : 'true',
118
118
  tabIndex: 0
119
- }, getDataAttr(restProps)), motion ? /*#__PURE__*/React.createElement(TabPaneTransition, {
119
+ }, getDataAttr(restProps), {
120
+ "x-semi-prop": "children"
121
+ }), motion ? /*#__PURE__*/React.createElement(TabPaneTransition, {
120
122
  direction: this.getDirection(this.context.activeKey, itemKey, this.context.panes),
121
123
  motion: motion,
122
124
  mode: tabPosition === 'top' ? 'horizontal' : 'vertical',
123
125
  state: active ? 'enter' : 'leave'
124
126
  }, transitionStyle => /*#__PURE__*/React.createElement("div", {
125
127
  className: "".concat(cssClasses.TABS_PANE_MOTION_OVERLAY),
126
- style: _Object$assign({}, transitionStyle)
128
+ style: _Object$assign({}, transitionStyle),
129
+ "x-semi-prop": "children"
127
130
  }, shouldRender ? children : null)) : shouldRender ? children : null);
128
131
  }
129
132
 
@@ -195,7 +195,8 @@ class TagInput extends BaseComponent {
195
195
  ["".concat(prefixCls, "-prefix-icon")]: /*#__PURE__*/React.isValidElement(prefix) && !(prefix && _isString(prefix))
196
196
  });
197
197
  return /*#__PURE__*/React.createElement("div", {
198
- className: prefixWrapperCls
198
+ className: prefixWrapperCls,
199
+ "x-semi-prop": "prefix"
199
200
  }, prefix);
200
201
  }
201
202
 
@@ -214,7 +215,8 @@ class TagInput extends BaseComponent {
214
215
  ["".concat(prefixCls, "-suffix-icon")]: /*#__PURE__*/React.isValidElement(suffix) && !(suffix && _isString(suffix))
215
216
  });
216
217
  return /*#__PURE__*/React.createElement("div", {
217
- className: suffixWrapperCls
218
+ className: suffixWrapperCls,
219
+ "x-semi-prop": "suffix"
218
220
  }, suffix);
219
221
  }
220
222
 
@@ -278,7 +278,9 @@ class Combobox extends BaseComponent {
278
278
  componentName: "TimePicker"
279
279
  }, (locale, localeCode) => /*#__PURE__*/React.createElement(ScrollList, {
280
280
  header: panelHeader,
281
- footer: panelFooter
281
+ footer: panelFooter,
282
+ "x-semi-header-alias": "panelHeader",
283
+ "x-semi-footer-alias": "panelFooter"
282
284
  }, this.renderAMPMSelect(locale, localeCode), this.renderHourSelect(value.getHours(), locale), this.renderMinuteSelect(value.getMinutes(), locale), this.renderSecondSelect(value.getSeconds(), locale)));
283
285
  }
284
286
 
@@ -97,11 +97,11 @@ export default class TimePicker extends BaseComponent<TimePickerProps, TimePicke
97
97
  'aria-required': PropTypes.Requireable<boolean>;
98
98
  prefixCls: PropTypes.Requireable<string>;
99
99
  clearText: PropTypes.Requireable<string>;
100
- value: PropTypes.Requireable<string | number | string[] | number[] | Date | Date[]>;
100
+ value: PropTypes.Requireable<string | number | string[] | Date | number[] | Date[]>;
101
101
  inputReadOnly: PropTypes.Requireable<boolean>;
102
102
  disabled: PropTypes.Requireable<boolean>;
103
103
  showClear: PropTypes.Requireable<boolean>;
104
- defaultValue: PropTypes.Requireable<string | number | string[] | number[] | Date | Date[]>;
104
+ defaultValue: PropTypes.Requireable<string | number | string[] | Date | number[] | Date[]>;
105
105
  open: PropTypes.Requireable<boolean>;
106
106
  defaultOpen: PropTypes.Requireable<boolean>;
107
107
  onOpenChange: PropTypes.Requireable<(...args: any[]) => any>;
@@ -6,5 +6,5 @@ import PropTypes from 'prop-types';
6
6
  * - \[12:00:12, 12:21:12]
7
7
  * - \[[12:00:12, 12:21:12], [12:11:12, 12:32:12]]
8
8
  */
9
- declare const TimeShape: PropTypes.Requireable<string | number | string[] | number[] | Date | Date[]>;
9
+ declare const TimeShape: PropTypes.Requireable<string | number | string[] | Date | number[] | Date[]>;
10
10
  export { TimeShape };
@@ -18,11 +18,11 @@ export default class LocaleTimePicker extends React.PureComponent<LocalePickerPr
18
18
  'aria-required': import("prop-types").Requireable<boolean>;
19
19
  prefixCls: import("prop-types").Requireable<string>;
20
20
  clearText: import("prop-types").Requireable<string>;
21
- value: import("prop-types").Requireable<string | number | string[] | number[] | Date | Date[]>;
21
+ value: import("prop-types").Requireable<string | number | string[] | Date | number[] | Date[]>;
22
22
  inputReadOnly: import("prop-types").Requireable<boolean>;
23
23
  disabled: import("prop-types").Requireable<boolean>;
24
24
  showClear: import("prop-types").Requireable<boolean>;
25
- defaultValue: import("prop-types").Requireable<string | number | string[] | number[] | Date | Date[]>;
25
+ defaultValue: import("prop-types").Requireable<string | number | string[] | Date | number[] | Date[]>;
26
26
  open: import("prop-types").Requireable<boolean>;
27
27
  defaultOpen: import("prop-types").Requireable<boolean>;
28
28
  onOpenChange: import("prop-types").Requireable<(...args: any[]) => any>;
@@ -111,7 +111,7 @@ class Toast extends BaseComponent {
111
111
  const btnTheme = 'borderless';
112
112
  const btnSize = 'small';
113
113
  return /*#__PURE__*/React.createElement("div", {
114
- role: 'alert',
114
+ role: "alert",
115
115
  "aria-label": "".concat(type ? type : 'default', " type"),
116
116
  className: toastCls,
117
117
  style: style,
@@ -121,13 +121,16 @@ class Toast extends BaseComponent {
121
121
  className: "".concat(prefixCls, "-content")
122
122
  }, this.renderIcon(), /*#__PURE__*/React.createElement("span", {
123
123
  className: "".concat(prefixCls, "-content-text"),
124
- style: textStyle
124
+ style: textStyle,
125
+ "x-semi-prop": "content"
125
126
  }, content), showClose && /*#__PURE__*/React.createElement("div", {
126
127
  className: "".concat(prefixCls, "-close-button")
127
128
  }, /*#__PURE__*/React.createElement(Button, {
128
129
  onClick: e => this.close(e),
129
130
  type: "tertiary",
130
- icon: /*#__PURE__*/React.createElement(IconClose, null),
131
+ icon: /*#__PURE__*/React.createElement(IconClose, {
132
+ "x-semi-prop": "icon"
133
+ }),
131
134
  theme: btnTheme,
132
135
  size: btnSize
133
136
  }))));
@@ -237,7 +237,8 @@ class Transfer extends BaseComponent {
237
237
  className: leftItemCls,
238
238
  checked: checked,
239
239
  role: "listitem",
240
- onChange: () => this.onSelectOrRemove(item)
240
+ onChange: () => this.onSelectOrRemove(item),
241
+ "x-semi-children-alias": "dataSource[".concat(index, "].label")
241
242
  }, item.label);
242
243
  }
243
244
 
@@ -373,7 +373,8 @@ export default class TreeNode extends PureComponent {
373
373
  return /*#__PURE__*/React.createElement("ul", {
374
374
  className: wrapperCls
375
375
  }, /*#__PURE__*/React.createElement("li", {
376
- className: _concatInstanceProperty(_context2 = "".concat(prefixcls, "-label ")).call(_context2, prefixcls, "-label-empty")
376
+ className: _concatInstanceProperty(_context2 = "".concat(prefixcls, "-label ")).call(_context2, prefixcls, "-label-empty"),
377
+ "x-semi-prop": "emptyContent"
377
378
  }, emptyContent));
378
379
  } // eslint-disable-next-line max-lines-per-function
379
380
 
@@ -59,7 +59,8 @@ class TreeSelect extends BaseComponent {
59
59
  ["".concat(prefixcls, "-suffix-icon")]: isSemiIcon(suffix)
60
60
  });
61
61
  return /*#__PURE__*/React.createElement("div", {
62
- className: suffixWrapperCls
62
+ className: suffixWrapperCls,
63
+ "x-semi-prop": "suffix"
63
64
  }, suffix);
64
65
  };
65
66
 
@@ -79,7 +80,8 @@ class TreeSelect extends BaseComponent {
79
80
  });
80
81
  return /*#__PURE__*/React.createElement("div", {
81
82
  className: prefixWrapperCls,
82
- id: insetLabelId
83
+ id: insetLabelId,
84
+ "x-semi-prop": "prefix,insetLabel"
83
85
  }, labelNode);
84
86
  };
85
87
 
@@ -336,7 +338,8 @@ class TreeSelect extends BaseComponent {
336
338
  }
337
339
 
338
340
  return arrowIcon ? /*#__PURE__*/React.createElement("div", {
339
- className: cls("".concat(prefixcls, "-arrow"))
341
+ className: cls("".concat(prefixcls, "-arrow")),
342
+ "x-semi-prop": "arrowIcon"
340
343
  }, arrowIcon) : null;
341
344
  };
342
345
 
@@ -64,7 +64,7 @@ export default class Base extends Component<BaseTypographyProps, BaseTypographyS
64
64
  spacing: PropTypes.Requireable<"normal" | "extended">;
65
65
  strong: PropTypes.Requireable<boolean>;
66
66
  size: PropTypes.Requireable<"small" | "normal">;
67
- type: PropTypes.Requireable<"warning" | "success" | "primary" | "tertiary" | "secondary" | "danger" | "quaternary">;
67
+ type: PropTypes.Requireable<"warning" | "success" | "primary" | "secondary" | "tertiary" | "danger" | "quaternary">;
68
68
  style: PropTypes.Requireable<object>;
69
69
  className: PropTypes.Requireable<string>;
70
70
  icon: PropTypes.Requireable<PropTypes.ReactNodeLike>;
@@ -536,7 +536,8 @@ export default class Base extends Component {
536
536
 
537
537
  const iconSize = size === 'small' ? 'small' : 'default';
538
538
  return /*#__PURE__*/React.createElement("span", {
539
- className: "".concat(prefixCls, "-icon")
539
+ className: "".concat(prefixCls, "-icon"),
540
+ "x-semi-prop": "icon"
540
541
  }, isSemiIcon(icon) ? /*#__PURE__*/React.cloneElement(icon, {
541
542
  size: iconSize
542
543
  }) : icon);
@@ -29,7 +29,7 @@ export default class Paragraph extends PureComponent<ParagraphProps> {
29
29
  link: PropTypes.Requireable<boolean | object>;
30
30
  underline: PropTypes.Requireable<boolean>;
31
31
  strong: PropTypes.Requireable<boolean>;
32
- type: PropTypes.Requireable<"warning" | "success" | "primary" | "tertiary" | "secondary" | "danger" | "quaternary">;
32
+ type: PropTypes.Requireable<"warning" | "success" | "primary" | "secondary" | "tertiary" | "danger" | "quaternary">;
33
33
  size: PropTypes.Requireable<"small" | "normal">;
34
34
  spacing: PropTypes.Requireable<"normal" | "extended">;
35
35
  style: PropTypes.Requireable<object>;
@@ -32,7 +32,7 @@ export default class Text extends PureComponent<TextProps> {
32
32
  underline: PropTypes.Requireable<boolean>;
33
33
  link: PropTypes.Requireable<boolean | object>;
34
34
  strong: PropTypes.Requireable<boolean>;
35
- type: PropTypes.Requireable<"warning" | "success" | "primary" | "tertiary" | "secondary" | "danger" | "quaternary">;
35
+ type: PropTypes.Requireable<"warning" | "success" | "primary" | "secondary" | "tertiary" | "danger" | "quaternary">;
36
36
  size: PropTypes.Requireable<"small" | "normal">;
37
37
  style: PropTypes.Requireable<object>;
38
38
  className: PropTypes.Requireable<string>;
@@ -36,8 +36,8 @@ export default class Title extends PureComponent<TitleProps> {
36
36
  link: PropTypes.Requireable<boolean | object>;
37
37
  underline: PropTypes.Requireable<boolean>;
38
38
  strong: PropTypes.Requireable<boolean>;
39
- type: PropTypes.Requireable<"warning" | "success" | "primary" | "tertiary" | "secondary" | "danger" | "quaternary">;
40
- heading: PropTypes.Requireable<1 | 2 | 3 | 4 | 5 | 6>;
39
+ type: PropTypes.Requireable<"warning" | "success" | "primary" | "secondary" | "tertiary" | "danger" | "quaternary">;
40
+ heading: PropTypes.Requireable<4 | 2 | 1 | 3 | 6 | 5>;
41
41
  style: PropTypes.Requireable<object>;
42
42
  className: PropTypes.Requireable<string>;
43
43
  component: PropTypes.Requireable<string>;
@@ -6,7 +6,7 @@ import BaseComponent, { ValidateStatus } from '../_base/baseComponent';
6
6
  import { FileItem, RenderFileItemProps, UploadListType, PromptPositionType, BeforeUploadProps, AfterUploadProps, OnChangeProps, customRequestArgs, CustomError } from './interface';
7
7
  import { Locale } from '../locale/interface';
8
8
  import '@douyinfe/semi-foundation/lib/es/upload/upload.css';
9
- export { FileItem, RenderFileItemProps, UploadListType, PromptPositionType, BeforeUploadProps, AfterUploadProps, OnChangeProps, customRequestArgs, CustomError, BeforeUploadObjectResult, AfterUploadResult };
9
+ export { FileItem, RenderFileItemProps, UploadListType, PromptPositionType, BeforeUploadProps, AfterUploadProps, OnChangeProps, customRequestArgs, CustomError, BeforeUploadObjectResult, AfterUploadResult, };
10
10
  export interface UploadProps {
11
11
  accept?: string;
12
12
  action: string;
@@ -140,7 +140,7 @@ declare class Upload extends BaseComponent<UploadProps, UploadState> {
140
140
  style: PropTypes.Requireable<object>;
141
141
  timeout: PropTypes.Requireable<number>;
142
142
  transformFile: PropTypes.Requireable<(...args: any[]) => any>;
143
- uploadTrigger: PropTypes.Requireable<"auto" | "custom">;
143
+ uploadTrigger: PropTypes.Requireable<"custom" | "auto">;
144
144
  validateMessage: PropTypes.Requireable<PropTypes.ReactNodeLike>;
145
145
  validateStatus: PropTypes.Requireable<"default" | "error" | "warning" | "success">;
146
146
  withCredentials: PropTypes.Requireable<boolean>;
@@ -230,7 +230,9 @@ class Upload extends BaseComponent {
230
230
  });
231
231
  }
232
232
 
233
- const addContent = /*#__PURE__*/React.createElement("div", _Object$assign({}, addContentProps), children);
233
+ const addContent = /*#__PURE__*/React.createElement("div", _Object$assign({}, addContentProps, {
234
+ "x-semi-prop": "children"
235
+ }), children);
234
236
 
235
237
  if (!showUploadList || !fileList.length) {
236
238
  if (showAddTriggerInList) {
@@ -363,15 +365,18 @@ class Upload extends BaseComponent {
363
365
  onDragEnter: this.onDragEnter,
364
366
  onClick: this.onClick
365
367
  }, children ? children : /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("div", {
366
- className: "".concat(dragAreaBaseCls, "-icon")
368
+ className: "".concat(dragAreaBaseCls, "-icon"),
369
+ "x-semi-prop": "dragIcon"
367
370
  }, dragIcon || /*#__PURE__*/React.createElement(IconUpload, {
368
371
  size: "extra-large"
369
372
  })), /*#__PURE__*/React.createElement("div", {
370
373
  className: "".concat(dragAreaBaseCls, "-text")
371
374
  }, /*#__PURE__*/React.createElement("div", {
372
- className: "".concat(dragAreaBaseCls, "-main-text")
375
+ className: "".concat(dragAreaBaseCls, "-main-text"),
376
+ "x-semi-prop": "dragMainText"
373
377
  }, dragMainText || locale.mainText), /*#__PURE__*/React.createElement("div", {
374
- className: "".concat(dragAreaBaseCls, "-sub-text")
378
+ className: "".concat(dragAreaBaseCls, "-sub-text"),
379
+ "x-semi-prop": "dragSubText"
375
380
  }, dragSubText), /*#__PURE__*/React.createElement("div", {
376
381
  className: "".concat(dragAreaBaseCls, "-tips")
377
382
  }, dragAreaStatus === strings.DRAG_AREA_LEGAL && /*#__PURE__*/React.createElement("span", {
@@ -557,9 +562,11 @@ class Upload extends BaseComponent {
557
562
  className: inputReplaceCls,
558
563
  ref: this.replaceInputRef
559
564
  }), this.renderAddContent(), prompt ? /*#__PURE__*/React.createElement("div", {
560
- className: promptCls
565
+ className: promptCls,
566
+ "x-semi-prop": "prompt"
561
567
  }, prompt) : null, validateMessage ? /*#__PURE__*/React.createElement("div", {
562
- className: validateMsgCls
568
+ className: validateMsgCls,
569
+ "x-semi-prop": "validateMessage"
563
570
  }, validateMessage) : null, this.renderFileList());
564
571
  }
565
572
 
package/list/index.tsx CHANGED
@@ -71,7 +71,11 @@ class List<T = any> extends BaseComponent<ListProps<T>> {
71
71
  renderEmpty = () => {
72
72
  const { emptyContent } = this.props;
73
73
  if (emptyContent) {
74
- return (<div className={`${cssClasses.PREFIX}-empty`}>{emptyContent}</div>);
74
+ return (
75
+ <div className={`${cssClasses.PREFIX}-empty`} x-semi-prop="emptyContent">
76
+ {emptyContent}
77
+ </div>
78
+ );
75
79
  } else {
76
80
  return (
77
81
  <LocaleConsumer componentName="List">
@@ -152,19 +156,27 @@ class List<T = any> extends BaseComponent<ListProps<T>> {
152
156
  }
153
157
  return (
154
158
  <div className={wrapperCls} style={style}>
155
- {header ? <div className={`${cssClasses.PREFIX}-header`}>{header}</div> : null}
159
+ {header ? (
160
+ <div className={`${cssClasses.PREFIX}-header`} x-semi-prop="header">
161
+ {header}
162
+ </div>
163
+ ) : null}
156
164
  <ListContext.Provider
157
165
  value={{
158
166
  grid,
159
167
  onRightClick,
160
- onClick
168
+ onClick,
161
169
  }}
162
170
  >
163
171
  <Spin spinning={loading} size="large">
164
172
  {this.wrapChildren(childrenList, children)}
165
173
  </Spin>
166
174
  </ListContext.Provider>
167
- {footer ? <div className={`${cssClasses.PREFIX}-footer`}>{footer}</div> : null}
175
+ {footer ? (
176
+ <div className={`${cssClasses.PREFIX}-footer`} x-semi-prop="footer">
177
+ {footer}
178
+ </div>
179
+ ) : null}
168
180
  {loadMore ? loadMore : null}
169
181
  </div>
170
182
  );
@@ -81,7 +81,7 @@ const ConfirmModal = (props: ConfirmProps) => {
81
81
  visible={visible}
82
82
  {...rest}
83
83
  >
84
- <div className={contentCls}>{content}</div>
84
+ <div className={contentCls} x-semi-prop="content">{content}</div>
85
85
  </Modal>
86
86
  );
87
87
  };
package/modal/Modal.tsx CHANGED
@@ -292,6 +292,7 @@ class Modal extends BaseComponent<ModalReactProps, ModalState> {
292
292
  type="tertiary"
293
293
  autoFocus={true}
294
294
  {...this.props.cancelButtonProps}
295
+ x-semi-children-alias="cancelText"
295
296
  >
296
297
  {cancelText || locale.cancel}
297
298
  </Button>
@@ -311,6 +312,7 @@ class Modal extends BaseComponent<ModalReactProps, ModalState> {
311
312
  loading={confirmLoading}
312
313
  onClick={this.handleOk}
313
314
  {...this.props.okButtonProps}
315
+ x-semi-children-alias="okText"
314
316
  >
315
317
  {okText || locale.confirm}
316
318
  </Button>