@douyinfe/semi-ui 2.36.0 → 2.37.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 (175) hide show
  1. package/dist/css/semi.css +39 -1
  2. package/dist/css/semi.min.css +1 -1
  3. package/dist/umd/semi-ui.js +850 -503
  4. package/dist/umd/semi-ui.js.map +1 -1
  5. package/dist/umd/semi-ui.min.js +1 -1
  6. package/dist/umd/semi-ui.min.js.map +1 -1
  7. package/lib/cjs/_base/baseComponent.d.ts +1 -0
  8. package/lib/cjs/_base/baseComponent.js +4 -0
  9. package/lib/cjs/anchor/index.js +2 -2
  10. package/lib/cjs/autoComplete/index.js +2 -2
  11. package/lib/cjs/banner/index.js +2 -2
  12. package/lib/cjs/breadcrumb/index.js +2 -2
  13. package/lib/cjs/breadcrumb/item.js +1 -1
  14. package/lib/cjs/calendar/dayCalendar.js +2 -2
  15. package/lib/cjs/calendar/monthCalendar.js +2 -2
  16. package/lib/cjs/calendar/rangeCalendar.js +2 -2
  17. package/lib/cjs/calendar/weekCalendar.d.ts +1 -1
  18. package/lib/cjs/calendar/weekCalendar.js +2 -2
  19. package/lib/cjs/carousel/index.js +2 -2
  20. package/lib/cjs/cascader/index.js +1 -1
  21. package/lib/cjs/checkbox/checkbox.js +2 -2
  22. package/lib/cjs/checkbox/checkboxGroup.js +2 -2
  23. package/lib/cjs/collapse/index.js +2 -2
  24. package/lib/cjs/collapsible/index.js +2 -2
  25. package/lib/cjs/datePicker/dateInput.d.ts +1 -0
  26. package/lib/cjs/datePicker/dateInput.js +10 -6
  27. package/lib/cjs/datePicker/datePicker.js +23 -11
  28. package/lib/cjs/datePicker/quickControl.d.ts +2 -0
  29. package/lib/cjs/datePicker/quickControl.js +5 -3
  30. package/lib/cjs/descriptions/index.js +22 -11
  31. package/lib/cjs/descriptions/item.js +22 -11
  32. package/lib/cjs/empty/index.js +23 -13
  33. package/lib/cjs/input/index.d.ts +3 -1
  34. package/lib/cjs/input/index.js +19 -16
  35. package/lib/cjs/list/index.js +30 -20
  36. package/lib/cjs/list/item.js +18 -15
  37. package/lib/cjs/locale/interface.d.ts +1 -0
  38. package/lib/cjs/locale/source/ar.js +1 -0
  39. package/lib/cjs/locale/source/de.js +1 -0
  40. package/lib/cjs/locale/source/en_GB.js +1 -0
  41. package/lib/cjs/locale/source/en_US.js +1 -0
  42. package/lib/cjs/locale/source/es.js +1 -0
  43. package/lib/cjs/locale/source/fr.js +1 -0
  44. package/lib/cjs/locale/source/id_ID.js +1 -0
  45. package/lib/cjs/locale/source/it.js +1 -0
  46. package/lib/cjs/locale/source/ja_JP.js +1 -0
  47. package/lib/cjs/locale/source/ko_KR.js +1 -0
  48. package/lib/cjs/locale/source/ms_MY.js +1 -0
  49. package/lib/cjs/locale/source/nl_NL.js +1 -0
  50. package/lib/cjs/locale/source/pl_PL.js +1 -0
  51. package/lib/cjs/locale/source/pt_BR.js +1 -0
  52. package/lib/cjs/locale/source/ro.d.ts +1 -0
  53. package/lib/cjs/locale/source/ro.js +1 -0
  54. package/lib/cjs/locale/source/ru_RU.js +1 -0
  55. package/lib/cjs/locale/source/sv_SE.js +1 -0
  56. package/lib/cjs/locale/source/th_TH.js +1 -0
  57. package/lib/cjs/locale/source/tr_TR.js +1 -0
  58. package/lib/cjs/locale/source/vi_VN.js +1 -0
  59. package/lib/cjs/locale/source/zh_CN.js +1 -0
  60. package/lib/cjs/locale/source/zh_TW.js +1 -0
  61. package/lib/cjs/modal/ModalContent.js +12 -9
  62. package/lib/cjs/navigation/index.js +34 -24
  63. package/lib/cjs/pagination/index.d.ts +3 -0
  64. package/lib/cjs/pagination/index.js +73 -39
  65. package/lib/cjs/progress/index.js +44 -31
  66. package/lib/cjs/radio/radio.js +27 -17
  67. package/lib/cjs/radio/radioGroup.js +24 -14
  68. package/lib/cjs/rating/index.js +21 -11
  69. package/lib/cjs/scrollList/index.js +21 -11
  70. package/lib/cjs/select/index.js +30 -21
  71. package/lib/cjs/sideSheet/SideSheetContent.js +27 -7
  72. package/lib/cjs/slider/index.js +20 -11
  73. package/lib/cjs/spin/index.js +19 -9
  74. package/lib/cjs/steps/basicSteps.js +24 -14
  75. package/lib/cjs/steps/fillSteps.js +22 -12
  76. package/lib/cjs/steps/navSteps.js +21 -11
  77. package/lib/cjs/switch/index.js +23 -13
  78. package/lib/cjs/table/Table.d.ts +1 -0
  79. package/lib/cjs/table/Table.js +3 -2
  80. package/lib/cjs/tabs/index.js +1 -2
  81. package/lib/cjs/tagInput/index.js +20 -10
  82. package/lib/cjs/timeline/index.js +20 -9
  83. package/lib/cjs/timeline/item.js +24 -13
  84. package/lib/cjs/toast/index.d.ts +4 -0
  85. package/lib/cjs/tooltip/index.js +3 -1
  86. package/lib/cjs/transfer/index.js +19 -9
  87. package/lib/cjs/tree/index.js +32 -22
  88. package/lib/cjs/treeSelect/index.js +32 -20
  89. package/lib/cjs/typography/title.d.ts +1 -1
  90. package/lib/cjs/upload/index.js +28 -18
  91. package/lib/es/_base/baseComponent.d.ts +1 -0
  92. package/lib/es/_base/baseComponent.js +4 -0
  93. package/lib/es/anchor/index.js +2 -2
  94. package/lib/es/autoComplete/index.js +2 -2
  95. package/lib/es/banner/index.js +2 -2
  96. package/lib/es/breadcrumb/index.js +2 -2
  97. package/lib/es/breadcrumb/item.js +1 -1
  98. package/lib/es/calendar/dayCalendar.js +2 -2
  99. package/lib/es/calendar/monthCalendar.js +2 -2
  100. package/lib/es/calendar/rangeCalendar.js +2 -2
  101. package/lib/es/calendar/weekCalendar.d.ts +1 -1
  102. package/lib/es/calendar/weekCalendar.js +2 -2
  103. package/lib/es/carousel/index.js +2 -2
  104. package/lib/es/cascader/index.js +1 -1
  105. package/lib/es/checkbox/checkbox.js +2 -2
  106. package/lib/es/checkbox/checkboxGroup.js +2 -2
  107. package/lib/es/collapse/index.js +2 -2
  108. package/lib/es/collapsible/index.js +2 -2
  109. package/lib/es/datePicker/dateInput.d.ts +1 -0
  110. package/lib/es/datePicker/dateInput.js +10 -6
  111. package/lib/es/datePicker/datePicker.js +23 -10
  112. package/lib/es/datePicker/quickControl.d.ts +2 -0
  113. package/lib/es/datePicker/quickControl.js +5 -3
  114. package/lib/es/descriptions/index.js +22 -11
  115. package/lib/es/descriptions/item.js +22 -11
  116. package/lib/es/empty/index.js +23 -13
  117. package/lib/es/input/index.d.ts +3 -1
  118. package/lib/es/input/index.js +19 -16
  119. package/lib/es/list/index.js +30 -20
  120. package/lib/es/list/item.js +18 -15
  121. package/lib/es/locale/interface.d.ts +1 -0
  122. package/lib/es/locale/source/ar.js +1 -0
  123. package/lib/es/locale/source/de.js +1 -0
  124. package/lib/es/locale/source/en_GB.js +1 -0
  125. package/lib/es/locale/source/en_US.js +1 -0
  126. package/lib/es/locale/source/es.js +1 -0
  127. package/lib/es/locale/source/fr.js +1 -0
  128. package/lib/es/locale/source/id_ID.js +1 -0
  129. package/lib/es/locale/source/it.js +1 -0
  130. package/lib/es/locale/source/ja_JP.js +1 -0
  131. package/lib/es/locale/source/ko_KR.js +1 -0
  132. package/lib/es/locale/source/ms_MY.js +1 -0
  133. package/lib/es/locale/source/nl_NL.js +1 -0
  134. package/lib/es/locale/source/pl_PL.js +1 -0
  135. package/lib/es/locale/source/pt_BR.js +1 -0
  136. package/lib/es/locale/source/ro.d.ts +1 -0
  137. package/lib/es/locale/source/ro.js +1 -0
  138. package/lib/es/locale/source/ru_RU.js +1 -0
  139. package/lib/es/locale/source/sv_SE.js +1 -0
  140. package/lib/es/locale/source/th_TH.js +1 -0
  141. package/lib/es/locale/source/tr_TR.js +1 -0
  142. package/lib/es/locale/source/vi_VN.js +1 -0
  143. package/lib/es/locale/source/zh_CN.js +1 -0
  144. package/lib/es/locale/source/zh_TW.js +1 -0
  145. package/lib/es/modal/ModalContent.js +12 -9
  146. package/lib/es/navigation/index.js +34 -24
  147. package/lib/es/pagination/index.d.ts +3 -0
  148. package/lib/es/pagination/index.js +73 -38
  149. package/lib/es/progress/index.js +44 -31
  150. package/lib/es/radio/radio.js +27 -17
  151. package/lib/es/radio/radioGroup.js +24 -14
  152. package/lib/es/rating/index.js +21 -11
  153. package/lib/es/scrollList/index.js +21 -11
  154. package/lib/es/select/index.js +30 -20
  155. package/lib/es/sideSheet/SideSheetContent.js +27 -7
  156. package/lib/es/slider/index.js +20 -10
  157. package/lib/es/spin/index.js +19 -9
  158. package/lib/es/steps/basicSteps.js +24 -14
  159. package/lib/es/steps/fillSteps.js +22 -12
  160. package/lib/es/steps/navSteps.js +21 -11
  161. package/lib/es/switch/index.js +23 -13
  162. package/lib/es/table/Table.d.ts +1 -0
  163. package/lib/es/table/Table.js +3 -2
  164. package/lib/es/tabs/index.js +1 -2
  165. package/lib/es/tagInput/index.js +20 -10
  166. package/lib/es/timeline/index.js +20 -9
  167. package/lib/es/timeline/item.js +24 -13
  168. package/lib/es/toast/index.d.ts +4 -0
  169. package/lib/es/tooltip/index.js +3 -1
  170. package/lib/es/transfer/index.js +19 -9
  171. package/lib/es/tree/index.js +32 -22
  172. package/lib/es/treeSelect/index.js +32 -20
  173. package/lib/es/typography/title.d.ts +1 -1
  174. package/lib/es/upload/index.js +28 -18
  175. package/package.json +8 -8
@@ -9,24 +9,35 @@ var _react = _interopRequireWildcard(require("react"));
9
9
  var _classnames = _interopRequireDefault(require("classnames"));
10
10
  var _propTypes = _interopRequireDefault(require("prop-types"));
11
11
  var _constants = require("@douyinfe/semi-foundation/lib/cjs/timeline/constants");
12
+ var _getDataAttr = _interopRequireDefault(require("@douyinfe/semi-foundation/lib/cjs/utils/getDataAttr"));
12
13
  require("@douyinfe/semi-foundation/lib/cjs/timeline/timeline.css");
13
14
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
14
15
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
15
16
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
17
+ var __rest = void 0 && (void 0).__rest || function (s, e) {
18
+ var t = {};
19
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
20
+ if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
21
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
22
+ }
23
+ return t;
24
+ };
16
25
  const prefixCls = _constants.cssClasses.ITEM;
17
26
  class Item extends _react.PureComponent {
18
27
  render() {
19
- const {
20
- className,
21
- color,
22
- children,
23
- dot,
24
- type,
25
- style,
26
- time,
27
- extra,
28
- onClick
29
- } = this.props;
28
+ const _a = this.props,
29
+ {
30
+ className,
31
+ color,
32
+ children,
33
+ dot,
34
+ type,
35
+ style,
36
+ time,
37
+ extra,
38
+ onClick
39
+ } = _a,
40
+ rest = __rest(_a, ["className", "color", "children", "dot", "type", "style", "time", "extra", "onClick"]);
30
41
  const itemCls = (0, _classnames.default)(prefixCls, className);
31
42
  const dotCls = (0, _classnames.default)({
32
43
  [`${prefixCls}-head`]: true,
@@ -38,11 +49,11 @@ class Item extends _react.PureComponent {
38
49
  backgroundColor: color
39
50
  }
40
51
  } : null;
41
- return /*#__PURE__*/_react.default.createElement("li", {
52
+ return /*#__PURE__*/_react.default.createElement("li", Object.assign({
42
53
  className: itemCls,
43
54
  style: style,
44
55
  onClick: onClick
45
- }, /*#__PURE__*/_react.default.createElement("div", {
56
+ }, (0, _getDataAttr.default)(rest)), /*#__PURE__*/_react.default.createElement("div", {
46
57
  className: `${prefixCls}-tail`,
47
58
  "aria-hidden": true
48
59
  }), /*#__PURE__*/_react.default.createElement("div", Object.assign({
@@ -26,6 +26,7 @@ declare const createBaseToast: () => {
26
26
  componentWillUnmount(): void;
27
27
  isControlled: (key: any) => boolean;
28
28
  log(text: string, ...rest: any): any;
29
+ getDataAttr(props?: any): {};
29
30
  context: unknown;
30
31
  setState<K extends keyof ToastListState>(state: ToastListState | ((prevState: Readonly<ToastListState>, props: Readonly<ToastListProps>) => ToastListState | Pick<ToastListState, K>) | Pick<ToastListState, K>, callback?: () => void): void;
31
32
  forceUpdate(callback?: () => void): void;
@@ -59,6 +60,7 @@ declare const createBaseToast: () => {
59
60
  componentWillUnmount(): void;
60
61
  isControlled: (key: any) => boolean;
61
62
  log(text: string, ...rest: any): any;
63
+ getDataAttr(props?: any): {};
62
64
  context: unknown;
63
65
  setState<K extends keyof ToastListState>(state: ToastListState | ((prevState: Readonly<ToastListState>, props: Readonly<ToastListProps>) => ToastListState | Pick<ToastListState, K>) | Pick<ToastListState, K>, callback?: () => void): void;
64
66
  forceUpdate(callback?: () => void): void;
@@ -120,6 +122,7 @@ declare const _default: {
120
122
  componentWillUnmount(): void;
121
123
  isControlled: (key: any) => boolean;
122
124
  log(text: string, ...rest: any): any;
125
+ getDataAttr(props?: any): {};
123
126
  context: unknown;
124
127
  setState<K extends keyof ToastListState>(state: ToastListState | ((prevState: Readonly<ToastListState>, props: Readonly<ToastListProps>) => ToastListState | Pick<ToastListState, K>) | Pick<ToastListState, K>, callback?: () => void): void;
125
128
  forceUpdate(callback?: () => void): void;
@@ -153,6 +156,7 @@ declare const _default: {
153
156
  componentWillUnmount(): void;
154
157
  isControlled: (key: any) => boolean;
155
158
  log(text: string, ...rest: any): any;
159
+ getDataAttr(props?: any): {};
156
160
  context: unknown;
157
161
  setState<K extends keyof ToastListState>(state: ToastListState | ((prevState: Readonly<ToastListState>, props: Readonly<ToastListProps>) => ToastListState | Pick<ToastListState, K>) | Pick<ToastListState, K>, callback?: () => void): void;
158
162
  forceUpdate(callback?: () => void): void;
@@ -213,7 +213,9 @@ class Tooltip extends _baseComponent.default {
213
213
  role: role,
214
214
  "x-placement": placement,
215
215
  id: id
216
- }), contentNode, icon);
216
+ }), /*#__PURE__*/_react.default.createElement("div", {
217
+ className: `${prefix}-content`
218
+ }, contentNode), icon);
217
219
  });
218
220
  return /*#__PURE__*/_react.default.createElement(_index.default, {
219
221
  getPopupContainer: this.props.getPopupContainer,
@@ -26,6 +26,14 @@ var _button = _interopRequireDefault(require("../button"));
26
26
  var _tree = _interopRequireDefault(require("../tree"));
27
27
  var _semiIcons = require("@douyinfe/semi-icons");
28
28
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
29
+ var __rest = void 0 && (void 0).__rest || function (s, e) {
30
+ var t = {};
31
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
32
+ if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
33
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
34
+ }
35
+ return t;
36
+ };
29
37
  const prefixCls = _constants.cssClasses.PREFIX;
30
38
  // SortableItem & SortableList should not be assigned inside of the render function
31
39
  const SortableItem = (0, _reactSortableHoc.SortableElement)(props => props.item.node);
@@ -551,23 +559,25 @@ class Transfer extends _baseComponent.default {
551
559
  }, headerCom, content);
552
560
  }
553
561
  render() {
554
- const {
555
- className,
556
- style,
557
- disabled,
558
- renderSelectedPanel,
559
- renderSourcePanel
560
- } = this.props;
562
+ const _a = this.props,
563
+ {
564
+ className,
565
+ style,
566
+ disabled,
567
+ renderSelectedPanel,
568
+ renderSourcePanel
569
+ } = _a,
570
+ rest = __rest(_a, ["className", "style", "disabled", "renderSelectedPanel", "renderSourcePanel"]);
561
571
  const transferCls = (0, _classnames.default)(prefixCls, className, {
562
572
  [`${prefixCls}-disabled`]: disabled,
563
573
  [`${prefixCls}-custom-panel`]: renderSelectedPanel && renderSourcePanel
564
574
  });
565
575
  return /*#__PURE__*/_react.default.createElement(_localeConsumer.default, {
566
576
  componentName: "Transfer"
567
- }, locale => /*#__PURE__*/_react.default.createElement("div", {
577
+ }, locale => /*#__PURE__*/_react.default.createElement("div", Object.assign({
568
578
  className: transferCls,
569
579
  style: style
570
- }, this.renderLeft(locale), this.renderRight(locale)));
580
+ }, this.getDataAttr(rest)), this.renderLeft(locale), this.renderRight(locale)));
571
581
  }
572
582
  }
573
583
  Transfer.propTypes = {
@@ -41,6 +41,14 @@ Object.keys(_interface).forEach(function (key) {
41
41
  });
42
42
  });
43
43
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
44
+ var __rest = void 0 && (void 0).__rest || function (s, e) {
45
+ var t = {};
46
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
47
+ if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
48
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
49
+ }
50
+ return t;
51
+ };
44
52
  /* eslint-disable max-lines-per-function */
45
53
 
46
54
  const prefixcls = _constants.cssClasses.PREFIX;
@@ -584,26 +592,28 @@ class Tree extends _baseComponent.default {
584
592
  checkedKeys,
585
593
  realCheckedKeys
586
594
  } = this.state;
587
- const {
588
- blockNode,
589
- className,
590
- style,
591
- filterTreeNode,
592
- disabled,
593
- icon,
594
- directory,
595
- multiple,
596
- showFilteredOnly,
597
- motion,
598
- expandAction,
599
- loadData,
600
- renderLabel,
601
- draggable,
602
- renderFullLabel,
603
- labelEllipsis,
604
- virtualize,
605
- checkRelation
606
- } = this.props;
595
+ const _a = this.props,
596
+ {
597
+ blockNode,
598
+ className,
599
+ style,
600
+ filterTreeNode,
601
+ disabled,
602
+ icon,
603
+ directory,
604
+ multiple,
605
+ showFilteredOnly,
606
+ motion,
607
+ expandAction,
608
+ loadData,
609
+ renderLabel,
610
+ draggable,
611
+ renderFullLabel,
612
+ labelEllipsis,
613
+ virtualize,
614
+ checkRelation
615
+ } = _a,
616
+ rest = __rest(_a, ["blockNode", "className", "style", "filterTreeNode", "disabled", "icon", "directory", "multiple", "showFilteredOnly", "motion", "expandAction", "loadData", "renderLabel", "draggable", "renderFullLabel", "labelEllipsis", "virtualize", "checkRelation"]);
607
617
  const wrapperCls = (0, _classnames.default)(`${prefixcls}-wrapper`, className);
608
618
  const listCls = (0, _classnames.default)(`${prefixcls}-option-list`, {
609
619
  [`${prefixcls}-option-list-block`]: blockNode
@@ -652,11 +662,11 @@ class Tree extends _baseComponent.default {
652
662
  dropPosition,
653
663
  labelEllipsis: typeof labelEllipsis === 'undefined' ? virtualize : labelEllipsis
654
664
  }
655
- }, /*#__PURE__*/_react.default.createElement("div", {
665
+ }, /*#__PURE__*/_react.default.createElement("div", Object.assign({
656
666
  "aria-label": this.props['aria-label'],
657
667
  className: wrapperCls,
658
668
  style: style
659
- }, filterTreeNode ? this.renderInput() : null, /*#__PURE__*/_react.default.createElement("div", Object.assign({
669
+ }, this.getDataAttr(rest)), filterTreeNode ? this.renderInput() : null, /*#__PURE__*/_react.default.createElement("div", Object.assign({
660
670
  className: listCls
661
671
  }, ariaAttr), noData ? this.renderEmpty() : multiple ? /*#__PURE__*/_react.default.createElement(_checkboxGroup.default, {
662
672
  value: Array.from(checkRelation === 'related' ? checkedKeys : realCheckedKeys)
@@ -44,6 +44,14 @@ var _virtualRow = _interopRequireDefault(require("../select/virtualRow"));
44
44
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
45
45
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
46
46
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
47
+ var __rest = void 0 && (void 0).__rest || function (s, e) {
48
+ var t = {};
49
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
50
+ if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
51
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
52
+ }
53
+ return t;
54
+ };
47
55
  const prefixcls = _constants.cssClasses.PREFIX;
48
56
  const prefixTree = _constants.cssClasses.PREFIX_TREE;
49
57
  const key = 0;
@@ -340,24 +348,26 @@ class TreeSelect extends _baseComponent.default {
340
348
  return null;
341
349
  };
342
350
  this.renderSelection = () => {
343
- const {
344
- disabled,
345
- multiple,
346
- filterTreeNode,
347
- validateStatus,
348
- prefix,
349
- suffix,
350
- style,
351
- size,
352
- insetLabel,
353
- className,
354
- placeholder,
355
- showClear,
356
- leafOnly,
357
- searchPosition,
358
- triggerRender,
359
- borderless
360
- } = this.props;
351
+ const _a = this.props,
352
+ {
353
+ disabled,
354
+ multiple,
355
+ filterTreeNode,
356
+ validateStatus,
357
+ prefix,
358
+ suffix,
359
+ style,
360
+ size,
361
+ insetLabel,
362
+ className,
363
+ placeholder,
364
+ showClear,
365
+ leafOnly,
366
+ searchPosition,
367
+ triggerRender,
368
+ borderless
369
+ } = _a,
370
+ rest = __rest(_a, ["disabled", "multiple", "filterTreeNode", "validateStatus", "prefix", "suffix", "style", "size", "insetLabel", "className", "placeholder", "showClear", "leafOnly", "searchPosition", "triggerRender", "borderless"]);
361
371
  const {
362
372
  inputValue,
363
373
  selectedKeys,
@@ -439,7 +449,7 @@ class TreeSelect extends _baseComponent.default {
439
449
  "aria-labelledby": this.props['aria-labelledby'],
440
450
  "aria-describedby": this.props['aria-describedby'],
441
451
  "aria-required": this.props['aria-required']
442
- }, mouseEvent), inner);
452
+ }, mouseEvent, this.getDataAttr(rest)), inner);
443
453
  };
444
454
  // eslint-disable-next-line @typescript-eslint/no-shadow
445
455
  this.renderTagItem = (key, idx) => {
@@ -561,7 +571,8 @@ class TreeSelect extends _baseComponent.default {
561
571
  searchPosition,
562
572
  searchAutoFocus,
563
573
  multiple,
564
- disabled
574
+ disabled,
575
+ preventScroll
565
576
  } = this.props;
566
577
  const isDropdownPositionSearch = searchPosition === _constants.strings.SEARCH_POSITION_DROPDOWN;
567
578
  const inputcls = (0, _classnames.default)({
@@ -574,6 +585,7 @@ class TreeSelect extends _baseComponent.default {
574
585
  const baseInputProps = {
575
586
  value: inputValue,
576
587
  className: inputcls,
588
+ preventScroll,
577
589
  onChange: value => this.search(value)
578
590
  };
579
591
  const inputDropdownProps = {
@@ -39,7 +39,7 @@ export default class Title extends PureComponent<TitleProps> {
39
39
  underline: PropTypes.Requireable<boolean>;
40
40
  strong: PropTypes.Requireable<boolean>;
41
41
  type: PropTypes.Requireable<"warning" | "success" | "primary" | "tertiary" | "secondary" | "danger" | "quaternary">;
42
- heading: PropTypes.Requireable<1 | 2 | 3 | 4 | 6 | 5>;
42
+ heading: PropTypes.Requireable<1 | 2 | 3 | 4 | 5 | 6>;
43
43
  style: PropTypes.Requireable<object>;
44
44
  className: PropTypes.Requireable<string>;
45
45
  component: PropTypes.Requireable<string>;
@@ -17,6 +17,14 @@ var _localeConsumer = _interopRequireDefault(require("../locale/localeConsumer")
17
17
  var _semiIcons = require("@douyinfe/semi-icons");
18
18
  require("@douyinfe/semi-foundation/lib/cjs/upload/upload.css");
19
19
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
20
+ var __rest = void 0 && (void 0).__rest || function (s, e) {
21
+ var t = {};
22
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
23
+ if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
24
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
25
+ }
26
+ return t;
27
+ };
20
28
  /* eslint-disable max-len */
21
29
 
22
30
  const prefixCls = _constants.cssClasses.PREFIX;
@@ -461,22 +469,24 @@ class Upload extends _baseComponent.default {
461
469
  this.foundation.destroy();
462
470
  }
463
471
  render() {
464
- const {
465
- style,
466
- className,
467
- multiple,
468
- accept,
469
- disabled,
470
- children,
471
- capture,
472
- listType,
473
- prompt,
474
- promptPosition,
475
- draggable,
476
- validateMessage,
477
- validateStatus,
478
- directory
479
- } = this.props;
472
+ const _a = this.props,
473
+ {
474
+ style,
475
+ className,
476
+ multiple,
477
+ accept,
478
+ disabled,
479
+ children,
480
+ capture,
481
+ listType,
482
+ prompt,
483
+ promptPosition,
484
+ draggable,
485
+ validateMessage,
486
+ validateStatus,
487
+ directory
488
+ } = _a,
489
+ rest = __rest(_a, ["style", "className", "multiple", "accept", "disabled", "children", "capture", "listType", "prompt", "promptPosition", "draggable", "validateMessage", "validateStatus", "directory"]);
480
490
  const uploadCls = (0, _classnames.default)(prefixCls, {
481
491
  [`${prefixCls}-picture`]: listType === _constants.strings.FILE_LIST_PIC,
482
492
  [`${prefixCls}-disabled`]: disabled,
@@ -493,11 +503,11 @@ class Upload extends _baseComponent.default {
493
503
  directory: 'directory',
494
504
  webkitdirectory: 'webkitdirectory'
495
505
  } : {};
496
- return /*#__PURE__*/_react.default.createElement("div", {
506
+ return /*#__PURE__*/_react.default.createElement("div", Object.assign({
497
507
  className: uploadCls,
498
508
  style: style,
499
509
  "x-prompt-pos": promptPosition
500
- }, /*#__PURE__*/_react.default.createElement("input", Object.assign({
510
+ }, this.getDataAttr(rest)), /*#__PURE__*/_react.default.createElement("input", Object.assign({
501
511
  key: this.state.inputKey,
502
512
  capture: capture,
503
513
  multiple: multiple,
@@ -23,4 +23,5 @@ export default class BaseComponent<P extends BaseProps = {}, S = {}> extends Com
23
23
  get adapter(): DefaultAdapter<P, S>;
24
24
  isControlled: (key: any) => boolean;
25
25
  log(text: string, ...rest: any): any;
26
+ getDataAttr(props?: any): {};
26
27
  }
@@ -4,6 +4,7 @@
4
4
  */
5
5
  import { Component } from 'react';
6
6
  import log from '@douyinfe/semi-foundation/lib/es/utils/log';
7
+ import getDataAttr from '@douyinfe/semi-foundation/lib/es/utils/getDataAttr';
7
8
  const {
8
9
  hasOwnProperty
9
10
  } = Object.prototype;
@@ -57,6 +58,9 @@ export default class BaseComponent extends Component {
57
58
  }
58
59
  return log(text, ...rest);
59
60
  }
61
+ getDataAttr(props) {
62
+ return getDataAttr(props);
63
+ }
60
64
  }
61
65
  BaseComponent.propTypes = {};
62
66
  BaseComponent.defaultProps = {};
@@ -241,13 +241,13 @@ class Anchor extends BaseComponent {
241
241
  addLink: this.addLink,
242
242
  removeLink: this.removeLink
243
243
  }
244
- }, /*#__PURE__*/React.createElement("div", {
244
+ }, /*#__PURE__*/React.createElement("div", Object.assign({
245
245
  role: "navigation",
246
246
  "aria-label": ariaLabel || 'Side navigation',
247
247
  className: wrapperCls,
248
248
  style: wrapperStyle,
249
249
  id: this.anchorID
250
- }, /*#__PURE__*/React.createElement("div", {
250
+ }, this.getDataAttr(this.props)), /*#__PURE__*/React.createElement("div", {
251
251
  "aria-hidden": true,
252
252
  className: slideCls,
253
253
  style: {
@@ -181,7 +181,7 @@ class AutoComplete extends BaseComponent {
181
181
  selection
182
182
  } = this.state;
183
183
  const useCustomTrigger = typeof triggerRender === 'function';
184
- const outerProps = Object.assign(Object.assign({
184
+ const outerProps = Object.assign(Object.assign(Object.assign({
185
185
  style,
186
186
  className: useCustomTrigger ? cls(className) : cls({
187
187
  [prefixCls]: true,
@@ -193,7 +193,7 @@ class AutoComplete extends BaseComponent {
193
193
  }, keyboardEventSet), {
194
194
  // tooltip give tabindex 0 to children by default, autoComplete just need the input get focus, so outer div's tabindex set to -1
195
195
  tabIndex: -1
196
- });
196
+ }), this.getDataAttr(this.props));
197
197
  const innerProps = {
198
198
  disabled,
199
199
  placeholder,
@@ -127,11 +127,11 @@ export default class Banner extends BaseComponent {
127
127
  [`${prefixCls}-in-container`]: !fullMode,
128
128
  [`${prefixCls}-bordered`]: !fullMode && bordered
129
129
  });
130
- const banner = visible ? /*#__PURE__*/React.createElement("div", {
130
+ const banner = visible ? /*#__PURE__*/React.createElement("div", Object.assign({
131
131
  className: wrapper,
132
132
  style: style,
133
133
  role: "alert"
134
- }, /*#__PURE__*/React.createElement("div", {
134
+ }, this.getDataAttr(this.props)), /*#__PURE__*/React.createElement("div", {
135
135
  className: `${prefixCls}-content-wrapper`
136
136
  }, /*#__PURE__*/React.createElement("div", {
137
137
  className: `${prefixCls}-content`
@@ -170,11 +170,11 @@ class Breadcrumb extends BaseComponent {
170
170
  compact,
171
171
  separator
172
172
  }
173
- }, /*#__PURE__*/React.createElement("nav", {
173
+ }, /*#__PURE__*/React.createElement("nav", Object.assign({
174
174
  "aria-label": this.props['aria-label'],
175
175
  className: sizeCls,
176
176
  style: style
177
- }, breadcrumbs));
177
+ }, this.getDataAttr(this.props)), breadcrumbs));
178
178
  }
179
179
  }
180
180
  Breadcrumb.contextType = BreadContext;
@@ -166,7 +166,7 @@ export default class BreadcrumbItem extends BaseComponent {
166
166
 
167
167
  return /*#__PURE__*/React.createElement("span", Object.assign({
168
168
  className: wrapperCLs
169
- }, pageLabel), item, shouldRenderSeparator && separator);
169
+ }, pageLabel, this.getDataAttr(this.props)), item, shouldRenderSeparator && separator);
170
170
  }
171
171
  }
172
172
  BreadcrumbItem.isBreadcrumbItem = true;
@@ -135,11 +135,11 @@ export default class DayCalendar extends BaseComponent {
135
135
  scrollHeight
136
136
  } = this.state;
137
137
  this.isWeekend = markWeekend && this.checkWeekend(displayValue);
138
- return /*#__PURE__*/React.createElement("div", {
138
+ return /*#__PURE__*/React.createElement("div", Object.assign({
139
139
  className: dayCls,
140
140
  style: dayStyle,
141
141
  ref: this.dom
142
- }, /*#__PURE__*/React.createElement("div", {
142
+ }, this.getDataAttr(this.props)), /*#__PURE__*/React.createElement("div", {
143
143
  className: `${prefixCls}-sticky-top`
144
144
  }, header, this.renderAllDay(parsedEvents.allDay)), /*#__PURE__*/React.createElement("div", {
145
145
  className: `${prefixCls}-scroll-wrapper`
@@ -371,12 +371,12 @@ export default class monthCalendar extends BaseComponent {
371
371
  }, style);
372
372
  return /*#__PURE__*/React.createElement(LocaleConsumer, {
373
373
  componentName: "Calendar"
374
- }, (locale, localeCode, dateFnsLocale) => /*#__PURE__*/React.createElement("div", {
374
+ }, (locale, localeCode, dateFnsLocale) => /*#__PURE__*/React.createElement("div", Object.assign({
375
375
  role: "grid",
376
376
  className: monthCls,
377
377
  key: this.state.itemLimit,
378
378
  style: monthStyle
379
- }, /*#__PURE__*/React.createElement("div", {
379
+ }, this.getDataAttr(this.props)), /*#__PURE__*/React.createElement("div", {
380
380
  role: "presentation",
381
381
  className: `${prefixCls}-sticky-top`
382
382
  }, header, this.renderHeader(dateFnsLocale)), /*#__PURE__*/React.createElement("div", {
@@ -232,11 +232,11 @@ export default class RangeCalendar extends BaseComponent {
232
232
  }, style);
233
233
  return /*#__PURE__*/React.createElement(LocaleConsumer, {
234
234
  componentName: "Calendar"
235
- }, (locale, localeCode, dateFnsLocale) => /*#__PURE__*/React.createElement("div", {
235
+ }, (locale, localeCode, dateFnsLocale) => /*#__PURE__*/React.createElement("div", Object.assign({
236
236
  className: weekCls,
237
237
  style: weekStyle,
238
238
  ref: this.dom
239
- }, /*#__PURE__*/React.createElement("div", {
239
+ }, this.getDataAttr(this.props)), /*#__PURE__*/React.createElement("div", {
240
240
  className: `${prefixCls}-sticky-top`
241
241
  }, header, this.renderHeader(dateFnsLocale), this.renderAllDay(locale)), /*#__PURE__*/React.createElement("div", {
242
242
  className: `${prefixCls}-scroll-wrapper`
@@ -2,7 +2,7 @@ import React from 'react';
2
2
  import PropTypes from 'prop-types';
3
3
  import CalendarFoundation, { CalendarAdapter, EventObject, ParsedEvents, ParsedRangeEvent, WeeklyData } from '@douyinfe/semi-foundation/lib/es/calendar/foundation';
4
4
  import BaseComponent from '../_base/baseComponent';
5
- import { WeekCalendarProps } from './interface';
5
+ import type { WeekCalendarProps } from './interface';
6
6
  import '@douyinfe/semi-foundation/lib/es/calendar/calendar.css';
7
7
  import { Locale } from '../locale/interface';
8
8
  export interface WeekCalendarState {
@@ -233,11 +233,11 @@ export default class WeekCalendar extends BaseComponent {
233
233
  }, style);
234
234
  return /*#__PURE__*/React.createElement(LocaleConsumer, {
235
235
  componentName: "Calendar"
236
- }, (locale, localeCode, dateFnsLocale) => /*#__PURE__*/React.createElement("div", {
236
+ }, (locale, localeCode, dateFnsLocale) => /*#__PURE__*/React.createElement("div", Object.assign({
237
237
  className: weekCls,
238
238
  style: weekStyle,
239
239
  ref: this.dom
240
- }, /*#__PURE__*/React.createElement("div", {
240
+ }, this.getDataAttr(this.props)), /*#__PURE__*/React.createElement("div", {
241
241
  className: `${prefixCls}-sticky-top`
242
242
  }, header, this.renderHeader(dateFnsLocale), this.renderAllDay(locale)), /*#__PURE__*/React.createElement("div", {
243
243
  className: `${prefixCls}-scroll-wrapper`
@@ -226,14 +226,14 @@ class Carousel extends BaseComponent {
226
226
  const carouselWrapperCls = cls(className, {
227
227
  [cssClasses.CAROUSEL]: true
228
228
  });
229
- return /*#__PURE__*/React.createElement("div", {
229
+ return /*#__PURE__*/React.createElement("div", Object.assign({
230
230
  // role='listbox'
231
231
  // tabIndex={0}
232
232
  className: carouselWrapperCls,
233
233
  style: style,
234
234
  onMouseEnter: _debounce(this.handleMouseEnter, 400),
235
235
  onMouseLeave: _debounce(this.handleMouseLeave, 400)
236
- }, /*#__PURE__*/React.createElement("div", {
236
+ }, this.getDataAttr(this.props)), /*#__PURE__*/React.createElement("div", {
237
237
  className: cls([`${cssClasses.CAROUSEL_CONTENT}-${animation}`], {
238
238
  [`${cssClasses.CAROUSEL_CONTENT}`]: true,
239
239
  [`${cssClasses.CAROUSEL_CONTENT}-reverse`]: slideDirection === 'left' ? isReverse : !isReverse
@@ -458,7 +458,7 @@ class Cascader extends BaseComponent {
458
458
  // eslint-disable-next-line jsx-a11y/role-has-required-aria-props
459
459
  role: "combobox",
460
460
  tabIndex: 0
461
- }), inner);
461
+ }, this.getDataAttr(this.props)), inner);
462
462
  };
463
463
  this.state = {
464
464
  disabledKeys: new Set(),
@@ -207,7 +207,7 @@ class Checkbox extends BaseComponent {
207
207
  return (
208
208
  /*#__PURE__*/
209
209
  // label is better than span, however span is here which is to solve gitlab issue #364
210
- React.createElement("span", {
210
+ React.createElement("span", Object.assign({
211
211
  role: role,
212
212
  tabIndex: tabIndex,
213
213
  style: style,
@@ -218,7 +218,7 @@ class Checkbox extends BaseComponent {
218
218
  onClick: this.handleChange,
219
219
  onKeyPress: this.handleEnterPress,
220
220
  "aria-labelledby": this.props['aria-labelledby']
221
- }, /*#__PURE__*/React.createElement(CheckboxInner, Object.assign({}, this.props, props, {
221
+ }, this.getDataAttr(this.props)), /*#__PURE__*/React.createElement(CheckboxInner, Object.assign({}, this.props, props, {
222
222
  addonId: children && addonId,
223
223
  extraId: extra && extraId,
224
224
  isPureCardType: props.isPureCardType,
@@ -97,7 +97,7 @@ class CheckboxGroup extends BaseComponent {
97
97
  role: 'listitem'
98
98
  }));
99
99
  }
100
- return /*#__PURE__*/React.createElement("div", {
100
+ return /*#__PURE__*/React.createElement("div", Object.assign({
101
101
  id: id,
102
102
  role: "list",
103
103
  "aria-label": this.props['aria-label'],
@@ -105,7 +105,7 @@ class CheckboxGroup extends BaseComponent {
105
105
  style: style,
106
106
  "aria-labelledby": this.props['aria-labelledby'],
107
107
  "aria-describedby": this.props['aria-describedby']
108
- }, /*#__PURE__*/React.createElement(Context.Provider, {
108
+ }, this.getDataAttr(this.props)), /*#__PURE__*/React.createElement(Context.Provider, {
109
109
  value: {
110
110
  checkboxGroup: {
111
111
  onChange: this.onChange,