@douyinfe/semi-ui 2.12.0 → 2.12.1-alpha.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.
Files changed (170) 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.js +13 -3
  37. package/lib/cjs/card/index.js +10 -5
  38. package/lib/cjs/carousel/CarouselArrow.js +6 -2
  39. package/lib/cjs/carousel/index.js +2 -1
  40. package/lib/cjs/cascader/index.js +9 -6
  41. package/lib/cjs/cascader/item.js +2 -1
  42. package/lib/cjs/checkbox/checkbox.js +8 -4
  43. package/lib/cjs/collapsible/index.js +2 -1
  44. package/lib/cjs/datePicker/dateInput.js +2 -1
  45. package/lib/cjs/datePicker/datePicker.js +4 -2
  46. package/lib/cjs/divider/index.js +2 -1
  47. package/lib/cjs/dropdown/index.js +2 -1
  48. package/lib/cjs/empty/index.js +8 -4
  49. package/lib/cjs/form/hoc/withField.js +2 -1
  50. package/lib/cjs/form/label.js +2 -1
  51. package/lib/cjs/grid/col.js +2 -1
  52. package/lib/cjs/grid/row.js +2 -1
  53. package/lib/cjs/iconButton/index.js +3 -1
  54. package/lib/cjs/input/index.js +9 -5
  55. package/lib/cjs/list/index.js +6 -3
  56. package/lib/cjs/modal/ConfirmModal.js +2 -1
  57. package/lib/cjs/modal/Modal.js +6 -2
  58. package/lib/cjs/modal/ModalContent.js +13 -6
  59. package/lib/cjs/modal/confirm.d.ts +5 -5
  60. package/lib/cjs/notification/notice.js +6 -3
  61. package/lib/cjs/pagination/index.js +4 -2
  62. package/lib/cjs/popconfirm/index.js +6 -3
  63. package/lib/cjs/radio/radio.js +4 -2
  64. package/lib/cjs/rating/item.js +2 -1
  65. package/lib/cjs/scrollList/index.js +6 -3
  66. package/lib/cjs/select/index.js +8 -4
  67. package/lib/cjs/select/option.js +2 -1
  68. package/lib/cjs/sideSheet/SideSheetContent.js +6 -3
  69. package/lib/cjs/skeleton/index.js +3 -1
  70. package/lib/cjs/space/index.js +2 -1
  71. package/lib/cjs/spin/index.js +7 -3
  72. package/lib/cjs/switch/index.js +6 -4
  73. package/lib/cjs/table/Table.d.ts +1 -1
  74. package/lib/cjs/table/Table.js +6 -3
  75. package/lib/cjs/tabs/TabBar.js +2 -1
  76. package/lib/cjs/tabs/TabPane.js +5 -2
  77. package/lib/cjs/tagInput/index.js +4 -2
  78. package/lib/cjs/timePicker/Combobox.js +3 -1
  79. package/lib/cjs/toast/toast.js +6 -3
  80. package/lib/cjs/transfer/index.js +2 -1
  81. package/lib/cjs/tree/treeNode.js +2 -1
  82. package/lib/cjs/treeSelect/index.js +6 -3
  83. package/lib/cjs/typography/base.js +2 -1
  84. package/lib/cjs/upload/index.d.ts +1 -1
  85. package/lib/cjs/upload/index.js +13 -6
  86. package/lib/es/avatar/index.js +4 -2
  87. package/lib/es/backtop/index.js +2 -1
  88. package/lib/es/badge/index.js +2 -1
  89. package/lib/es/banner/index.js +9 -4
  90. package/lib/es/breadcrumb/index.js +4 -3
  91. package/lib/es/button/Button.js +11 -3
  92. package/lib/es/card/index.js +10 -5
  93. package/lib/es/carousel/CarouselArrow.js +6 -2
  94. package/lib/es/carousel/index.js +2 -1
  95. package/lib/es/cascader/index.js +9 -6
  96. package/lib/es/cascader/item.js +2 -1
  97. package/lib/es/checkbox/checkbox.js +8 -4
  98. package/lib/es/collapsible/index.js +2 -1
  99. package/lib/es/datePicker/dateInput.js +2 -1
  100. package/lib/es/datePicker/datePicker.js +4 -2
  101. package/lib/es/divider/index.js +2 -1
  102. package/lib/es/dropdown/index.js +2 -1
  103. package/lib/es/empty/index.js +8 -4
  104. package/lib/es/form/hoc/withField.js +2 -1
  105. package/lib/es/form/label.js +2 -1
  106. package/lib/es/grid/col.js +2 -1
  107. package/lib/es/grid/row.js +2 -1
  108. package/lib/es/iconButton/index.js +3 -1
  109. package/lib/es/input/index.js +9 -5
  110. package/lib/es/list/index.js +6 -3
  111. package/lib/es/modal/ConfirmModal.js +2 -1
  112. package/lib/es/modal/Modal.js +6 -2
  113. package/lib/es/modal/ModalContent.js +13 -6
  114. package/lib/es/modal/confirm.d.ts +5 -5
  115. package/lib/es/notification/notice.js +6 -3
  116. package/lib/es/pagination/index.js +4 -2
  117. package/lib/es/popconfirm/index.js +6 -3
  118. package/lib/es/radio/radio.js +4 -2
  119. package/lib/es/rating/item.js +2 -1
  120. package/lib/es/scrollList/index.js +6 -3
  121. package/lib/es/select/index.js +8 -4
  122. package/lib/es/select/option.js +2 -1
  123. package/lib/es/sideSheet/SideSheetContent.js +6 -3
  124. package/lib/es/skeleton/index.js +3 -1
  125. package/lib/es/space/index.js +2 -1
  126. package/lib/es/spin/index.js +7 -3
  127. package/lib/es/switch/index.js +6 -4
  128. package/lib/es/table/Table.d.ts +1 -1
  129. package/lib/es/table/Table.js +6 -3
  130. package/lib/es/tabs/TabBar.js +2 -1
  131. package/lib/es/tabs/TabPane.js +5 -2
  132. package/lib/es/tagInput/index.js +4 -2
  133. package/lib/es/timePicker/Combobox.js +3 -1
  134. package/lib/es/toast/toast.js +6 -3
  135. package/lib/es/transfer/index.js +2 -1
  136. package/lib/es/tree/treeNode.js +2 -1
  137. package/lib/es/treeSelect/index.js +6 -3
  138. package/lib/es/typography/base.js +2 -1
  139. package/lib/es/upload/index.d.ts +1 -1
  140. package/lib/es/upload/index.js +13 -6
  141. package/list/index.tsx +16 -4
  142. package/modal/ConfirmModal.tsx +1 -1
  143. package/modal/Modal.tsx +2 -0
  144. package/modal/ModalContent.tsx +27 -14
  145. package/notification/notice.tsx +16 -4
  146. package/package.json +9 -9
  147. package/pagination/index.tsx +16 -2
  148. package/popconfirm/index.tsx +11 -3
  149. package/radio/radio.tsx +10 -2
  150. package/rating/item.tsx +1 -1
  151. package/scrollList/index.tsx +19 -3
  152. package/select/index.tsx +12 -4
  153. package/select/option.tsx +5 -1
  154. package/sideSheet/SideSheetContent.tsx +3 -3
  155. package/skeleton/index.tsx +1 -1
  156. package/space/index.tsx +1 -1
  157. package/spin/index.tsx +15 -9
  158. package/switch/index.tsx +9 -14
  159. package/table/Table.tsx +5 -3
  160. package/tabs/TabBar.tsx +1 -1
  161. package/tabs/TabPane.tsx +9 -4
  162. package/tagInput/index.tsx +2 -2
  163. package/timePicker/Combobox.tsx +6 -1
  164. package/toast/toast.tsx +3 -3
  165. package/transfer/index.tsx +1 -0
  166. package/tree/treeNode.tsx +1 -1
  167. package/treeSelect/index.tsx +15 -3
  168. package/typography/base.tsx +1 -1
  169. package/upload/index.tsx +107 -38
  170. package/yarn-error.log +26235 -0
@@ -183,7 +183,8 @@ class Input extends BaseComponent {
183
183
  ["".concat(prefixCls, "-prepend-icon")]: isSemiIcon(addonBefore)
184
184
  });
185
185
  return /*#__PURE__*/React.createElement("div", {
186
- className: prefixWrapperCls
186
+ className: prefixWrapperCls,
187
+ "x-semi-prop": "addonBefore"
187
188
  }, addonBefore);
188
189
  }
189
190
 
@@ -202,7 +203,8 @@ class Input extends BaseComponent {
202
203
  ["".concat(prefixCls, "-append-icon")]: isSemiIcon(addonAfter)
203
204
  });
204
205
  return /*#__PURE__*/React.createElement("div", {
205
- className: prefixWrapperCls
206
+ className: prefixWrapperCls,
207
+ "x-semi-prop": "addonAfter"
206
208
  }, addonAfter);
207
209
  }
208
210
 
@@ -282,7 +284,8 @@ class Input extends BaseComponent {
282
284
  className: prefixWrapperCls,
283
285
  onMouseDown: this.handlePreventMouseDown,
284
286
  onClick: this.handleClickPrefixOrSuffix,
285
- id: insetLabelId
287
+ id: insetLabelId,
288
+ "x-semi-prop": "prefix,insetLabel"
286
289
  }, labelNode);
287
290
  }
288
291
 
@@ -319,7 +322,8 @@ class Input extends BaseComponent {
319
322
  return /*#__PURE__*/React.createElement("div", {
320
323
  className: suffixWrapperCls,
321
324
  onMouseDown: this.handlePreventMouseDown,
322
- onClick: this.handleClickPrefixOrSuffix
325
+ onClick: this.handleClickPrefixOrSuffix,
326
+ "x-semi-prop": "suffix"
323
327
  }, suffix);
324
328
  }
325
329
 
@@ -421,7 +425,7 @@ class Input extends BaseComponent {
421
425
  }
422
426
 
423
427
  if (validateStatus === 'error') {
424
- inputProps['aria-invalid'] = "true";
428
+ inputProps['aria-invalid'] = 'true';
425
429
  }
426
430
 
427
431
  return (
@@ -27,7 +27,8 @@ class List extends BaseComponent {
27
27
 
28
28
  if (emptyContent) {
29
29
  return /*#__PURE__*/React.createElement("div", {
30
- className: "".concat(cssClasses.PREFIX, "-empty")
30
+ className: "".concat(cssClasses.PREFIX, "-empty"),
31
+ "x-semi-prop": "emptyContent"
31
32
  }, emptyContent);
32
33
  } else {
33
34
  return /*#__PURE__*/React.createElement(LocaleConsumer, {
@@ -115,7 +116,8 @@ class List extends BaseComponent {
115
116
  className: wrapperCls,
116
117
  style: style
117
118
  }, header ? /*#__PURE__*/React.createElement("div", {
118
- className: "".concat(cssClasses.PREFIX, "-header")
119
+ className: "".concat(cssClasses.PREFIX, "-header"),
120
+ "x-semi-prop": "header"
119
121
  }, header) : null, /*#__PURE__*/React.createElement(ListContext.Provider, {
120
122
  value: {
121
123
  grid,
@@ -126,7 +128,8 @@ class List extends BaseComponent {
126
128
  spinning: loading,
127
129
  size: "large"
128
130
  }, this.wrapChildren(childrenList, children))), footer ? /*#__PURE__*/React.createElement("div", {
129
- className: "".concat(cssClasses.PREFIX, "-footer")
131
+ className: "".concat(cssClasses.PREFIX, "-footer"),
132
+ "x-semi-prop": "footer"
130
133
  }, footer) : null, loadMore ? loadMore : null);
131
134
  }
132
135
 
@@ -101,7 +101,8 @@ const ConfirmModal = props => {
101
101
  icon: iconNode,
102
102
  visible: visible
103
103
  }, rest), /*#__PURE__*/React.createElement("div", {
104
- className: contentCls
104
+ className: contentCls,
105
+ "x-semi-prop": "content"
105
106
  }, content));
106
107
  };
107
108
 
@@ -80,7 +80,9 @@ class Modal extends BaseComponent {
80
80
  loading: cancelLoading,
81
81
  type: "tertiary",
82
82
  autoFocus: true
83
- }, this.props.cancelButtonProps), cancelText || locale.cancel);
83
+ }, this.props.cancelButtonProps, {
84
+ "x-semi-children-alias": "cancelText"
85
+ }), cancelText || locale.cancel);
84
86
  }
85
87
  };
86
88
 
@@ -92,7 +94,9 @@ class Modal extends BaseComponent {
92
94
  theme: "solid",
93
95
  loading: confirmLoading,
94
96
  onClick: this.handleOk
95
- }, this.props.okButtonProps), okText || locale.confirm)));
97
+ }, this.props.okButtonProps, {
98
+ "x-semi-children-alias": "okText"
99
+ }), okText || locale.confirm)));
96
100
  }; // getDialog = () => {
97
101
  // const {
98
102
  // footer,
@@ -90,7 +90,9 @@ export default class ModalContent extends BaseComponent {
90
90
  let closer;
91
91
 
92
92
  if (closable) {
93
- const iconType = closeIcon || /*#__PURE__*/React.createElement(IconClose, null);
93
+ const iconType = closeIcon || /*#__PURE__*/React.createElement(IconClose, {
94
+ "x-semi-prop": "closeIcon"
95
+ });
94
96
  closer = /*#__PURE__*/React.createElement(Button, {
95
97
  "aria-label": "close",
96
98
  className: "".concat(cssClasses.DIALOG, "-close"),
@@ -111,7 +113,8 @@ export default class ModalContent extends BaseComponent {
111
113
  icon
112
114
  } = this.props;
113
115
  return icon ? /*#__PURE__*/React.createElement("span", {
114
- className: "".concat(cssClasses.DIALOG, "-icon-wrapper")
116
+ className: "".concat(cssClasses.DIALOG, "-icon-wrapper"),
117
+ "x-semi-prop": "icon"
115
118
  }, icon) : null;
116
119
  };
117
120
 
@@ -130,7 +133,8 @@ export default class ModalContent extends BaseComponent {
130
133
  }, icon, /*#__PURE__*/React.createElement(Typography.Title, {
131
134
  heading: 5,
132
135
  className: "".concat(cssClasses.DIALOG, "-title"),
133
- id: "".concat(cssClasses.DIALOG, "-title")
136
+ id: "".concat(cssClasses.DIALOG, "-title"),
137
+ "x-semi-prop": "title"
134
138
  }, title), closer);
135
139
  };
136
140
 
@@ -149,12 +153,14 @@ export default class ModalContent extends BaseComponent {
149
153
  return hasHeader ? /*#__PURE__*/React.createElement("div", {
150
154
  className: bodyCls,
151
155
  id: "".concat(cssClasses.DIALOG, "-body"),
152
- style: bodyStyle
156
+ style: bodyStyle,
157
+ "x-semi-prop": "children"
153
158
  }, children) : /*#__PURE__*/React.createElement("div", {
154
159
  className: "".concat(cssClasses.DIALOG, "-body-wrapper")
155
160
  }, icon, /*#__PURE__*/React.createElement("div", {
156
161
  className: bodyCls,
157
- style: bodyStyle
162
+ style: bodyStyle,
163
+ "x-semi-prop": "children"
158
164
  }, children), closer);
159
165
  };
160
166
 
@@ -186,7 +192,8 @@ export default class ModalContent extends BaseComponent {
186
192
  const body = this.renderBody();
187
193
  const header = this.renderHeader();
188
194
  const footer = props.footer ? /*#__PURE__*/React.createElement("div", {
189
- className: "".concat(cssClasses.DIALOG, "-footer")
195
+ className: "".concat(cssClasses.DIALOG, "-footer"),
196
+ "x-semi-prop": "footer"
190
197
  }, props.footer) : null;
191
198
  const dialogElement =
192
199
  /*#__PURE__*/
@@ -17,7 +17,7 @@ export declare function withInfo(props: ModalReactProps): {
17
17
  bodyStyle?: React.CSSProperties;
18
18
  maskStyle?: React.CSSProperties;
19
19
  style?: React.CSSProperties;
20
- icon: string | number | boolean | React.ReactFragment | JSX.Element;
20
+ icon: React.ReactNode | JSX.Element;
21
21
  closeIcon?: React.ReactNode;
22
22
  title?: React.ReactNode;
23
23
  content?: React.ReactNode;
@@ -59,7 +59,7 @@ export declare function withSuccess(props: ModalReactProps): {
59
59
  bodyStyle?: React.CSSProperties;
60
60
  maskStyle?: React.CSSProperties;
61
61
  style?: React.CSSProperties;
62
- icon: string | number | boolean | React.ReactFragment | JSX.Element;
62
+ icon: React.ReactNode | JSX.Element;
63
63
  closeIcon?: React.ReactNode;
64
64
  title?: React.ReactNode;
65
65
  content?: React.ReactNode;
@@ -101,7 +101,7 @@ export declare function withWarning(props: ModalReactProps): {
101
101
  bodyStyle?: React.CSSProperties;
102
102
  maskStyle?: React.CSSProperties;
103
103
  style?: React.CSSProperties;
104
- icon: string | number | boolean | React.ReactFragment | JSX.Element;
104
+ icon: React.ReactNode | JSX.Element;
105
105
  closeIcon?: React.ReactNode;
106
106
  title?: React.ReactNode;
107
107
  content?: React.ReactNode;
@@ -143,7 +143,7 @@ export declare function withError(props: ModalReactProps): {
143
143
  bodyStyle?: React.CSSProperties;
144
144
  maskStyle?: React.CSSProperties;
145
145
  style?: React.CSSProperties;
146
- icon: string | number | boolean | React.ReactFragment | JSX.Element;
146
+ icon: React.ReactNode | JSX.Element;
147
147
  closeIcon?: React.ReactNode;
148
148
  title?: React.ReactNode;
149
149
  content?: React.ReactNode;
@@ -185,7 +185,7 @@ export declare function withConfirm(props: ModalReactProps): {
185
185
  bodyStyle?: React.CSSProperties;
186
186
  maskStyle?: React.CSSProperties;
187
187
  style?: React.CSSProperties;
188
- icon: string | number | boolean | React.ReactFragment | JSX.Element;
188
+ icon: React.ReactNode | JSX.Element;
189
189
  closeIcon?: React.ReactNode;
190
190
  title?: React.ReactNode;
191
191
  content?: React.ReactNode;
@@ -115,7 +115,8 @@ class Notice extends BaseComponent {
115
115
 
116
116
  if (iconType) {
117
117
  return /*#__PURE__*/React.createElement("div", {
118
- className: iconCls
118
+ className: iconCls,
119
+ "x-semi-prop": "icon"
119
120
  }, isSemiIcon(iconType) ? /*#__PURE__*/React.cloneElement(iconType, {
120
121
  size: iconType.props.size || 'large'
121
122
  }) : iconType);
@@ -173,9 +174,11 @@ class Notice extends BaseComponent {
173
174
  className: "".concat(prefixCls, "-content-wrapper")
174
175
  }, title ? /*#__PURE__*/React.createElement("div", {
175
176
  id: titleID,
176
- className: "".concat(prefixCls, "-title")
177
+ className: "".concat(prefixCls, "-title"),
178
+ "x-semi-prop": "title"
177
179
  }, title) : '', content ? /*#__PURE__*/React.createElement("div", {
178
- className: "".concat(prefixCls, "-content")
180
+ className: "".concat(prefixCls, "-content"),
181
+ "x-semi-prop": "content"
179
182
  }, content) : ''), showClose && /*#__PURE__*/React.createElement(Button, {
180
183
  className: "".concat(prefixCls, "-icon-close"),
181
184
  type: "tertiary",
@@ -154,7 +154,8 @@ export default class Pagination extends BaseComponent {
154
154
  "aria-disabled": prevDisabled ? true : false,
155
155
  "aria-label": "Previous",
156
156
  onClick: e => !prevDisabled && this.foundation.goPrev(e),
157
- className: preClassName
157
+ className: preClassName,
158
+ "x-semi-prop": "prevText"
158
159
  }, prevText || /*#__PURE__*/React.createElement(IconChevronLeft, {
159
160
  size: "large"
160
161
  }));
@@ -177,7 +178,8 @@ export default class Pagination extends BaseComponent {
177
178
  "aria-disabled": nextDisabled ? true : false,
178
179
  "aria-label": "Next",
179
180
  onClick: e => !nextDisabled && this.foundation.goNext(e),
180
- className: nextClassName
181
+ className: nextClassName,
182
+ "x-semi-prop": "prevText"
181
183
  }, nextText || /*#__PURE__*/React.createElement(IconChevronRight, {
182
184
  size: "large"
183
185
  }));
@@ -122,13 +122,16 @@ export default class Popconfirm extends BaseComponent {
122
122
  }, /*#__PURE__*/React.createElement("div", {
123
123
  className: "".concat(prefixCls, "-header")
124
124
  }, /*#__PURE__*/React.createElement("i", {
125
- className: "".concat(prefixCls, "-header-icon")
125
+ className: "".concat(prefixCls, "-header-icon"),
126
+ "x-semi-prop": "icon"
126
127
  }, /*#__PURE__*/React.isValidElement(icon) ? icon : null), /*#__PURE__*/React.createElement("div", {
127
128
  className: "".concat(prefixCls, "-header-body")
128
129
  }, showTitle ? /*#__PURE__*/React.createElement("div", {
129
- className: "".concat(prefixCls, "-header-title")
130
+ className: "".concat(prefixCls, "-header-title"),
131
+ "x-semi-prop": "title"
130
132
  }, title) : null, showContent ? /*#__PURE__*/React.createElement("div", {
131
- className: "".concat(prefixCls, "-header-content")
133
+ className: "".concat(prefixCls, "-header-content"),
134
+ "x-semi-prop": "content"
132
135
  }, content) : null), /*#__PURE__*/React.createElement(Button, {
133
136
  className: "".concat(prefixCls, "-btn-close"),
134
137
  icon: /*#__PURE__*/React.createElement(IconClose, null),
@@ -165,10 +165,12 @@ class Radio extends BaseComponent {
165
165
  const renderContent = () => /*#__PURE__*/React.createElement(React.Fragment, null, children ? /*#__PURE__*/React.createElement("span", {
166
166
  className: addonCls,
167
167
  style: addonStyle,
168
- id: addonId
168
+ id: this.addonId,
169
+ "x-semi-prop": "children"
169
170
  }, children) : null, extra && !isButtonRadio ? /*#__PURE__*/React.createElement("div", {
170
171
  className: "".concat(prefix, "-extra"),
171
- id: extraId
172
+ id: this.extraId,
173
+ "x-semi-prop": "extra"
172
174
  }, extra) : null);
173
175
 
174
176
  return /*#__PURE__*/React.createElement("label", {
@@ -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
 
@@ -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