@douyinfe/semi-ui 2.0.9-alpha.4 → 2.1.0-alpha.3

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 (110) hide show
  1. package/dist/css/semi.css +14 -1
  2. package/dist/css/semi.min.css +1 -1
  3. package/dist/umd/semi-ui.js +1625 -2525
  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/es/_base/baseComponent.js +1 -5
  8. package/lib/es/_portal/index.js +7 -17
  9. package/lib/es/_utils/index.js +13 -16
  10. package/lib/es/breadcrumb/index.js +2 -4
  11. package/lib/es/breadcrumb/item.js +4 -6
  12. package/lib/es/button/index.d.ts +0 -1
  13. package/lib/es/button/index.js +2 -4
  14. package/lib/es/calendar/monthCalendar.js +9 -11
  15. package/lib/es/cascader/index.d.ts +1 -0
  16. package/lib/es/cascader/index.js +23 -14
  17. package/lib/es/cascader/item.js +1 -2
  18. package/lib/es/collapse/item.js +1 -2
  19. package/lib/es/collapsible/index.js +9 -9
  20. package/lib/es/datePicker/dateInput.js +9 -29
  21. package/lib/es/datePicker/datePicker.js +12 -49
  22. package/lib/es/datePicker/footer.js +1 -2
  23. package/lib/es/datePicker/index.js +12 -15
  24. package/lib/es/datePicker/yearAndMonth.js +17 -23
  25. package/lib/es/dropdown/dropdownDivider.js +1 -2
  26. package/lib/es/form/baseForm.d.ts +4 -10
  27. package/lib/es/form/field.d.ts +4 -22
  28. package/lib/es/form/field.js +2 -18
  29. package/lib/es/form/hoc/withField.d.ts +1 -1
  30. package/lib/es/form/hoc/withField.js +3 -14
  31. package/lib/es/iconButton/index.d.ts +0 -1
  32. package/lib/es/iconButton/index.js +0 -1
  33. package/lib/es/inputNumber/index.js +4 -12
  34. package/lib/es/locale/localeConsumer.js +3 -6
  35. package/lib/es/modal/ConfirmModal.js +2 -2
  36. package/lib/es/modal/confirm.js +2 -2
  37. package/lib/es/modal/useModal/HookModal.js +2 -2
  38. package/lib/es/motions/Rotate.js +4 -6
  39. package/lib/es/navigation/CollapseButton.js +7 -9
  40. package/lib/es/navigation/Item.js +7 -33
  41. package/lib/es/navigation/OpenIconTransition.js +4 -6
  42. package/lib/es/navigation/SubNav.js +6 -33
  43. package/lib/es/navigation/SubNavTransition.js +5 -7
  44. package/lib/es/navigation/index.js +6 -24
  45. package/lib/es/notification/NoticeTransition.js +5 -7
  46. package/lib/es/notification/index.js +8 -16
  47. package/lib/es/notification/useNotification/index.js +7 -11
  48. package/lib/es/overflowList/index.js +4 -9
  49. package/lib/es/overflowList/intersectionObserver.js +1 -2
  50. package/lib/es/popconfirm/index.d.ts +5 -1
  51. package/lib/es/popconfirm/index.js +10 -4
  52. package/lib/es/popover/Arrow.js +1 -3
  53. package/lib/es/popover/index.d.ts +3 -1
  54. package/lib/es/popover/index.js +4 -8
  55. package/lib/es/radio/context.d.ts +1 -1
  56. package/lib/es/radio/radio.d.ts +2 -2
  57. package/lib/es/radio/radioGroup.d.ts +4 -4
  58. package/lib/es/resizeObserver/index.js +1 -2
  59. package/lib/es/scrollList/scrollItem.js +24 -40
  60. package/lib/es/select/index.js +19 -16
  61. package/lib/es/select/option.js +8 -10
  62. package/lib/es/select/utils.d.ts +1 -1
  63. package/lib/es/select/utils.js +10 -4
  64. package/lib/es/select/virtualRow.js +5 -6
  65. package/lib/es/sideSheet/SideSheetTransition.js +1 -3
  66. package/lib/es/slider/index.js +11 -23
  67. package/lib/es/spin/icon.js +1 -3
  68. package/lib/es/table/Body/BaseRow.js +8 -16
  69. package/lib/es/table/Body/SectionRow.js +3 -6
  70. package/lib/es/table/Body/index.js +32 -49
  71. package/lib/es/table/Column.js +1 -2
  72. package/lib/es/table/ColumnFilter.js +2 -6
  73. package/lib/es/table/ColumnSelection.js +1 -5
  74. package/lib/es/table/HeadTable.js +3 -4
  75. package/lib/es/table/ResizableTable.js +20 -31
  76. package/lib/es/table/Table.js +63 -160
  77. package/lib/es/table/TableCell.js +3 -5
  78. package/lib/es/table/TableContextProvider.js +15 -16
  79. package/lib/es/table/TableHeader.js +1 -4
  80. package/lib/es/table/utils.js +1 -3
  81. package/lib/es/tabs/TabBar.d.ts +4 -2
  82. package/lib/es/tabs/TabBar.js +12 -4
  83. package/lib/es/tabs/TabPane.d.ts +2 -1
  84. package/lib/es/tabs/TabPane.js +3 -2
  85. package/lib/es/tabs/TabPaneTransition.js +9 -12
  86. package/lib/es/tabs/index.d.ts +3 -1
  87. package/lib/es/tabs/index.js +83 -14
  88. package/lib/es/tabs/interface.d.ts +6 -1
  89. package/lib/es/tagInput/index.d.ts +3 -0
  90. package/lib/es/tagInput/index.js +6 -1
  91. package/lib/es/timePicker/Combobox.js +5 -6
  92. package/lib/es/timePicker/TimeInput.js +3 -11
  93. package/lib/es/timePicker/TimePicker.js +7 -21
  94. package/lib/es/timePicker/index.js +12 -15
  95. package/lib/es/toast/ToastTransition.js +8 -12
  96. package/lib/es/toast/useToast/index.js +3 -6
  97. package/lib/es/tooltip/TooltipStyledTransition.js +10 -14
  98. package/lib/es/tooltip/index.d.ts +3 -0
  99. package/lib/es/tooltip/index.js +22 -28
  100. package/lib/es/transfer/index.js +15 -18
  101. package/lib/es/tree/index.js +28 -38
  102. package/lib/es/tree/interface.d.ts +2 -2
  103. package/lib/es/treeSelect/index.d.ts +2 -11
  104. package/lib/es/treeSelect/index.js +32 -44
  105. package/lib/es/typography/title.d.ts +1 -1
  106. package/lib/es/typography/util.js +3 -12
  107. package/lib/es/upload/fileCard.js +53 -62
  108. package/lib/es/upload/index.d.ts +1 -1
  109. package/lib/es/upload/index.js +23 -32
  110. package/package.json +8 -8
@@ -5,8 +5,7 @@ import React from 'react';
5
5
  import { Transition } from '@douyinfe/semi-animation-react';
6
6
  import { toInteger } from 'lodash-es';
7
7
 
8
- const TabPaneTransition = function () {
9
- let props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
8
+ const TabPaneTransition = (props = {}) => {
10
9
  const direction = props.direction ? 1 : -1;
11
10
  const {
12
11
  mode
@@ -46,11 +45,10 @@ const TabPaneTransition = function () {
46
45
  duration: 200
47
46
  }
48
47
  }
49
- }, motion), typeof props.children === 'function' ? _ref => {
50
- let {
51
- translateY,
52
- opacity
53
- } = _ref;
48
+ }, motion), typeof props.children === 'function' ? ({
49
+ translateY,
50
+ opacity
51
+ }) => {
54
52
  // delete translateX in 0 in case of zIndex problems.
55
53
  const finalState = toInteger(translateY) === 0 ? {
56
54
  opacity
@@ -85,11 +83,10 @@ const TabPaneTransition = function () {
85
83
  duration: 200
86
84
  }
87
85
  }
88
- }, motion), typeof props.children === 'function' ? _ref2 => {
89
- let {
90
- translateX,
91
- opacity
92
- } = _ref2;
86
+ }, motion), typeof props.children === 'function' ? ({
87
+ translateX,
88
+ opacity
89
+ }) => {
93
90
  // delete translateX in 0 in case of zIndex problems.
94
91
  const finalState = toInteger(translateX) === 0 ? {
95
92
  opacity
@@ -1,4 +1,4 @@
1
- import { RefObject, ReactElement, MouseEvent, RefCallback, ReactNode } from 'react';
1
+ import { MouseEvent, ReactElement, ReactNode, RefCallback, RefObject } from 'react';
2
2
  import PropTypes from 'prop-types';
3
3
  import TabsFoundation, { TabsAdapter } from '@douyinfe/semi-foundation/lib/es/tabs/foundation';
4
4
  import BaseComponent from '../_base/baseComponent';
@@ -32,6 +32,7 @@ declare class Tabs extends BaseComponent<TabsProps, TabsState> {
32
32
  tabPaneMotion: PropTypes.Requireable<boolean | object>;
33
33
  tabPosition: PropTypes.Requireable<string>;
34
34
  type: PropTypes.Requireable<string>;
35
+ onTabClose: PropTypes.Requireable<(...args: any[]) => any>;
35
36
  };
36
37
  static defaultProps: TabsProps;
37
38
  contentRef: RefObject<HTMLDivElement>;
@@ -45,6 +46,7 @@ declare class Tabs extends BaseComponent<TabsProps, TabsState> {
45
46
  onTabClick: (activeKey: string, event: MouseEvent<HTMLDivElement>) => void;
46
47
  rePosChildren: (children: ReactElement[], activeKey: string) => ReactElement[];
47
48
  getActiveItem: () => ReactNode | ReactNode[];
49
+ deleteTabItem: (tabKey: string, event: MouseEvent<HTMLDivElement>) => void;
48
50
  render(): ReactNode;
49
51
  }
50
52
  export default Tabs;
@@ -5,6 +5,7 @@ import _filterInstanceProperty from "@babel/runtime-corejs3/core-js-stable/insta
5
5
  import _Array$isArray from "@babel/runtime-corejs3/core-js-stable/array/is-array";
6
6
  import _Object$assign from "@babel/runtime-corejs3/core-js-stable/object/assign";
7
7
  import _mapInstanceProperty from "@babel/runtime-corejs3/core-js-stable/instance/map";
8
+ import _findIndexInstanceProperty from "@babel/runtime-corejs3/core-js-stable/instance/find-index";
8
9
  import _forEachInstanceProperty from "@babel/runtime-corejs3/core-js-stable/instance/for-each";
9
10
  import _concatInstanceProperty from "@babel/runtime-corejs3/core-js-stable/instance/concat";
10
11
 
@@ -26,7 +27,7 @@ import { cssClasses, strings } from '@douyinfe/semi-foundation/lib/es/tabs/const
26
27
  import isNullOrUndefined from '@douyinfe/semi-foundation/lib/es/utils/isNullOrUndefined';
27
28
  import getDataAttr from '@douyinfe/semi-foundation/lib/es/utils/getDataAttr';
28
29
  import TabsFoundation from '@douyinfe/semi-foundation/lib/es/tabs/foundation';
29
- import { isEqual, pick, omit } from 'lodash-es';
30
+ import { isEqual, omit, pick } from 'lodash-es';
30
31
  import BaseComponent from '../_base/baseComponent';
31
32
  import '@douyinfe/semi-foundation/lib/es/tabs/tabs.css';
32
33
  import TabBar from './TabBar';
@@ -87,6 +88,11 @@ class Tabs extends BaseComponent {
87
88
  });
88
89
  };
89
90
 
91
+ this.deleteTabItem = (tabKey, event) => {
92
+ event.stopPropagation();
93
+ this.foundation.handleTabDelete(tabKey);
94
+ };
95
+
90
96
  this.foundation = new TabsFoundation(this.adapter);
91
97
  this.state = {
92
98
  activeKey: this.foundation.getDefaultActiveKey(),
@@ -119,13 +125,15 @@ class Tabs extends BaseComponent {
119
125
  tab,
120
126
  icon,
121
127
  disabled,
122
- itemKey
128
+ itemKey,
129
+ closable
123
130
  } = child.props;
124
131
  return {
125
132
  tab,
126
133
  icon,
127
134
  disabled,
128
- itemKey
135
+ itemKey,
136
+ closable
129
137
  };
130
138
  }
131
139
 
@@ -136,6 +144,61 @@ class Tabs extends BaseComponent {
136
144
  panes
137
145
  });
138
146
  },
147
+ collectActiveKey: () => {
148
+ let panes = [];
149
+ const {
150
+ tabList,
151
+ children,
152
+ activeKey: propsActiveKey
153
+ } = this.props;
154
+
155
+ if (typeof propsActiveKey !== 'undefined') {
156
+ return;
157
+ }
158
+
159
+ const {
160
+ activeKey
161
+ } = this.state;
162
+
163
+ if (_Array$isArray(tabList) && tabList.length) {
164
+ panes = tabList;
165
+ } else {
166
+ var _context3;
167
+
168
+ panes = _mapInstanceProperty(_context3 = React.Children).call(_context3, children, child => {
169
+ if (child) {
170
+ const {
171
+ tab,
172
+ icon,
173
+ disabled,
174
+ itemKey,
175
+ closable
176
+ } = child.props;
177
+ return {
178
+ tab,
179
+ icon,
180
+ disabled,
181
+ itemKey,
182
+ closable
183
+ };
184
+ }
185
+
186
+ return undefined;
187
+ });
188
+ }
189
+
190
+ if (_findIndexInstanceProperty(panes).call(panes, p => p.itemKey === activeKey) === -1) {
191
+ if (panes.length > 0) {
192
+ this.setState({
193
+ activeKey: panes[0].itemKey
194
+ });
195
+ } else {
196
+ this.setState({
197
+ activeKey: ''
198
+ });
199
+ }
200
+ }
201
+ },
139
202
  notifyTabClick: (activeKey, event) => {
140
203
  this.props.onTabClick(activeKey, event);
141
204
  },
@@ -148,14 +211,14 @@ class Tabs extends BaseComponent {
148
211
  });
149
212
  },
150
213
  getDefaultActiveKeyFromChildren: () => {
151
- var _context3;
214
+ var _context4;
152
215
 
153
216
  const {
154
217
  tabList,
155
218
  children
156
219
  } = this.props;
157
220
  let activeKey = '';
158
- const list = tabList ? tabList : _mapInstanceProperty(_context3 = React.Children.toArray(children)).call(_context3, child => /*#__PURE__*/isValidElement(child) ? child.props : null);
221
+ const list = tabList ? tabList : _mapInstanceProperty(_context4 = React.Children.toArray(children)).call(_context4, child => /*#__PURE__*/isValidElement(child) ? child.props : null);
159
222
 
160
223
  _forEachInstanceProperty(list).call(list, item => {
161
224
  if (item && !activeKey && !item.disabled) {
@@ -164,6 +227,9 @@ class Tabs extends BaseComponent {
164
227
  });
165
228
 
166
229
  return activeKey;
230
+ },
231
+ notifyTabDelete: tabKey => {
232
+ this.props.onTabClose && this.props.onTabClose(tabKey);
167
233
  }
168
234
  });
169
235
  }
@@ -179,12 +245,12 @@ class Tabs extends BaseComponent {
179
245
  }
180
246
 
181
247
  componentDidUpdate(prevProps) {
182
- var _context4, _context5;
248
+ var _context5, _context6;
183
249
 
184
250
  // Panes state acts on tab bar, no need to compare TabPane children
185
- const prevChildrenProps = _mapInstanceProperty(_context4 = React.Children.toArray(prevProps.children)).call(_context4, child => pick( /*#__PURE__*/isValidElement(child) ? child.props : null, panePickKeys));
251
+ const prevChildrenProps = _mapInstanceProperty(_context5 = React.Children.toArray(prevProps.children)).call(_context5, child => pick( /*#__PURE__*/isValidElement(child) ? child.props : null, panePickKeys));
186
252
 
187
- const nowChildrenProps = _mapInstanceProperty(_context5 = React.Children.toArray(this.props.children)).call(_context5, child => pick( /*#__PURE__*/isValidElement(child) ? child.props : null, panePickKeys));
253
+ const nowChildrenProps = _mapInstanceProperty(_context6 = React.Children.toArray(this.props.children)).call(_context6, child => pick( /*#__PURE__*/isValidElement(child) ? child.props : null, panePickKeys));
188
254
 
189
255
  const isTabListType = this.props.tabList || prevProps.tabList;
190
256
 
@@ -202,7 +268,7 @@ class Tabs extends BaseComponent {
202
268
  }
203
269
 
204
270
  render() {
205
- var _context6, _context7;
271
+ var _context7, _context8;
206
272
 
207
273
  const _a = this.props,
208
274
  {
@@ -230,11 +296,11 @@ class Tabs extends BaseComponent {
230
296
  } = this.state;
231
297
  const tabWrapperCls = cls(className, {
232
298
  [cssClasses.TABS]: true,
233
- [_concatInstanceProperty(_context6 = "".concat(cssClasses.TABS, "-")).call(_context6, tabPosition)]: tabPosition
299
+ [_concatInstanceProperty(_context7 = "".concat(cssClasses.TABS, "-")).call(_context7, tabPosition)]: tabPosition
234
300
  });
235
301
  const tabContentCls = cls({
236
302
  [cssClasses.TABS_CONTENT]: true,
237
- [_concatInstanceProperty(_context7 = "".concat(cssClasses.TABS_CONTENT, "-")).call(_context7, tabPosition)]: tabPosition
303
+ [_concatInstanceProperty(_context8 = "".concat(cssClasses.TABS_CONTENT, "-")).call(_context8, tabPosition)]: tabPosition
238
304
  });
239
305
  const tabBarProps = {
240
306
  activeKey,
@@ -246,7 +312,8 @@ class Tabs extends BaseComponent {
246
312
  style: tabBarStyle,
247
313
  tabBarExtraContent,
248
314
  tabPosition,
249
- type
315
+ type,
316
+ deleteTabItem: this.deleteTabItem
250
317
  };
251
318
  const tabBar = renderTabBar ? renderTabBar(tabBarProps, TabBar) : /*#__PURE__*/React.createElement(TabBar, _Object$assign({}, tabBarProps));
252
319
  const content = keepDOM ? children : this.getActiveItem();
@@ -291,7 +358,8 @@ Tabs.propTypes = {
291
358
  tabList: PropTypes.array,
292
359
  tabPaneMotion: PropTypes.oneOfType([PropTypes.bool, PropTypes.object, PropTypes.func]),
293
360
  tabPosition: PropTypes.oneOf(strings.POSITION_MAP),
294
- type: PropTypes.oneOf(strings.TYPE_MAP)
361
+ type: PropTypes.oneOf(strings.TYPE_MAP),
362
+ onTabClose: PropTypes.func
295
363
  };
296
364
  Tabs.defaultProps = {
297
365
  children: [],
@@ -303,6 +371,7 @@ Tabs.defaultProps = {
303
371
  size: 'large',
304
372
  tabPaneMotion: true,
305
373
  tabPosition: 'top',
306
- type: 'line'
374
+ type: 'line',
375
+ onTabClose: () => undefined
307
376
  };
308
377
  export default Tabs;
@@ -1,4 +1,4 @@
1
- import { MouseEvent, ReactNode, ComponentType, CSSProperties } from 'react';
1
+ import { ComponentType, CSSProperties, MouseEvent, ReactNode } from 'react';
2
2
  import { Motion } from '../_base/base';
3
3
  export declare type TabType = 'line' | 'card' | 'button';
4
4
  export declare type TabSize = 'small' | 'medium' | 'large';
@@ -8,6 +8,7 @@ export interface PlainTab {
8
8
  icon?: ReactNode;
9
9
  itemKey: string;
10
10
  tab?: ReactNode;
11
+ closable: boolean;
11
12
  }
12
13
  export interface TabsProps {
13
14
  activeKey?: string;
@@ -30,6 +31,7 @@ export interface TabsProps {
30
31
  tabPaneMotion?: boolean;
31
32
  tabPosition?: TabPosition;
32
33
  type?: TabType;
34
+ onTabClose?: (tabKey: string) => void;
33
35
  }
34
36
  export interface TabBarProps {
35
37
  activeKey?: string;
@@ -44,6 +46,8 @@ export interface TabBarProps {
44
46
  type?: TabType;
45
47
  dropdownClassName?: string;
46
48
  dropdownStyle?: CSSProperties;
49
+ closable?: boolean;
50
+ deleteTabItem?: (tabKey: string, event: MouseEvent<Element>) => void;
47
51
  }
48
52
  export interface TabPaneProps {
49
53
  className?: string;
@@ -52,6 +56,7 @@ export interface TabPaneProps {
52
56
  itemKey?: string;
53
57
  style?: CSSProperties;
54
58
  tab?: ReactNode;
59
+ closable?: boolean;
55
60
  }
56
61
  export interface TabPaneTransitionProps {
57
62
  [key: string]: any;
@@ -29,6 +29,7 @@ export interface TagInputProps {
29
29
  onFocus?: (e: React.MouseEvent<HTMLInputElement>) => void;
30
30
  onInputChange?: (value: string, e: React.MouseEvent<HTMLInputElement>) => void;
31
31
  onInputExceed?: ((value: string) => void);
32
+ onKeyDown?: (e: React.MouseEvent<HTMLInputElement>) => void;
32
33
  onRemove?: (removedValue: string, idx: number) => void;
33
34
  placeholder?: string;
34
35
  prefix?: React.ReactNode;
@@ -78,6 +79,7 @@ declare class TagInput extends BaseComponent<TagInputProps, TagInputState> {
78
79
  onInputExceed: PropTypes.Requireable<(...args: any[]) => any>;
79
80
  onAdd: PropTypes.Requireable<(...args: any[]) => any>;
80
81
  onRemove: PropTypes.Requireable<(...args: any[]) => any>;
82
+ onKeyDown: PropTypes.Requireable<(...args: any[]) => any>;
81
83
  size: PropTypes.Requireable<"default" | "small" | "large">;
82
84
  validateStatus: PropTypes.Requireable<"default" | "error" | "warning">;
83
85
  prefix: PropTypes.Requireable<PropTypes.ReactNodeLike>;
@@ -101,6 +103,7 @@ declare class TagInput extends BaseComponent<TagInputProps, TagInputState> {
101
103
  onInputExceed: (...args: any[]) => void;
102
104
  onAdd: (...args: any[]) => void;
103
105
  onRemove: (...args: any[]) => void;
106
+ onKeyDown: (...args: any[]) => void;
104
107
  };
105
108
  inputRef: React.RefObject<HTMLInputElement>;
106
109
  constructor(props: TagInputProps);
@@ -112,6 +112,9 @@ class TagInput extends BaseComponent {
112
112
  },
113
113
  notifyTagRemove: (v, idx) => {
114
114
  this.props.onRemove(v, idx);
115
+ },
116
+ notifyKeyDown: e => {
117
+ this.props.onKeyDown(e);
115
118
  }
116
119
  });
117
120
  }
@@ -360,6 +363,7 @@ TagInput.propTypes = {
360
363
  onInputExceed: PropTypes.func,
361
364
  onAdd: PropTypes.func,
362
365
  onRemove: PropTypes.func,
366
+ onKeyDown: PropTypes.func,
363
367
  size: PropTypes.oneOf(strings.SIZE_SET),
364
368
  validateStatus: PropTypes.oneOf(strings.STATUS),
365
369
  prefix: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),
@@ -382,6 +386,7 @@ TagInput.defaultProps = {
382
386
  onExceed: noop,
383
387
  onInputExceed: noop,
384
388
  onAdd: noop,
385
- onRemove: noop
389
+ onRemove: noop,
390
+ onKeyDown: noop
386
391
  };
387
392
  export default TagInput;
@@ -41,12 +41,11 @@ class Combobox extends BaseComponent {
41
41
  });
42
42
  };
43
43
 
44
- this.onItemChange = _ref => {
45
- let {
46
- type,
47
- value,
48
- disabled
49
- } = _ref;
44
+ this.onItemChange = ({
45
+ type,
46
+ value,
47
+ disabled
48
+ }) => {
50
49
  // eslint-disable-next-line prefer-const
51
50
  let {
52
51
  onChange,
@@ -79,18 +79,10 @@ class TimeInput extends BaseComponent {
79
79
  }
80
80
 
81
81
  get adapter() {
82
- var _this = this;
83
-
84
82
  return _Object$assign(_Object$assign({}, super.adapter), {
85
- notifyChange: function () {
86
- return _this.props.onChange(...arguments);
87
- },
88
- notifyFocus: function () {
89
- return _this.props.onFocus(...arguments);
90
- },
91
- notifyBlur: function () {
92
- return _this.props.onBlur(...arguments);
93
- }
83
+ notifyChange: (...args) => this.props.onChange(...args),
84
+ notifyFocus: (...args) => this.props.onFocus(...args),
85
+ notifyBlur: (...args) => this.props.onBlur(...args)
94
86
  });
95
87
  }
96
88
 
@@ -36,10 +36,7 @@ import '@douyinfe/semi-foundation/lib/es/timePicker/timePicker.css';
36
36
  import Trigger from '../trigger';
37
37
  export default class TimePicker extends BaseComponent {
38
38
  constructor(props) {
39
- var _this;
40
-
41
39
  super(props);
42
- _this = this;
43
40
 
44
41
  this.onCurrentSelectPanelChange = currentSelectPanel => {
45
42
  this.setState({
@@ -51,20 +48,19 @@ export default class TimePicker extends BaseComponent {
51
48
 
52
49
  this.handleInput = value => this.foundation.handleInputChange(value);
53
50
 
54
- this.createPanelProps = function () {
55
- let index = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0;
51
+ this.createPanelProps = (index = 0) => {
56
52
  const {
57
53
  panels,
58
54
  panelFooter,
59
55
  panelHeader,
60
56
  locale
61
- } = _this.props;
57
+ } = this.props;
62
58
  const panelProps = {
63
59
  panelHeader,
64
60
  panelFooter
65
61
  };
66
62
 
67
- if (_this.adapter.isRangePicker()) {
63
+ if (this.adapter.isRangePicker()) {
68
64
  const defaultHeaderMap = {
69
65
  0: locale.begin,
70
66
  1: locale.end
@@ -110,8 +106,6 @@ export default class TimePicker extends BaseComponent {
110
106
  }
111
107
 
112
108
  get adapter() {
113
- var _this2 = this;
114
-
115
109
  return _Object$assign(_Object$assign({}, super.adapter), {
116
110
  togglePanel: show => {
117
111
  this.setState({
@@ -145,18 +139,10 @@ export default class TimePicker extends BaseComponent {
145
139
  this.clickOutSideHandler = null;
146
140
  }
147
141
  },
148
- notifyOpenChange: function () {
149
- return _this2.props.onOpenChange(...arguments);
150
- },
151
- notifyChange: function () {
152
- return _this2.props.onChange && _this2.props.onChange(...arguments);
153
- },
154
- notifyFocus: function () {
155
- return _this2.props.onFocus && _this2.props.onFocus(...arguments);
156
- },
157
- notifyBlur: function () {
158
- return _this2.props.onBlur && _this2.props.onBlur(...arguments);
159
- },
142
+ notifyOpenChange: (...args) => this.props.onOpenChange(...args),
143
+ notifyChange: (...args) => this.props.onChange && this.props.onChange(...args),
144
+ notifyFocus: (...args) => this.props.onFocus && this.props.onFocus(...args),
145
+ notifyBlur: (...args) => this.props.onBlur && this.props.onBlur(...args),
160
146
  isRangePicker: () => this.props.type === strings.TYPE_TIME_RANGE_PICKER
161
147
  });
162
148
  }
@@ -9,21 +9,18 @@ export default class LocaleTimePicker extends React.PureComponent {
9
9
  const {
10
10
  type
11
11
  } = this.props;
12
- return /*#__PURE__*/React.createElement(ConfigContext.Consumer, null, _ref => {
13
- let {
14
- timeZone
15
- } = _ref;
16
- return /*#__PURE__*/React.createElement(LocaleConsumer, {
17
- componentName: "TimePicker"
18
- }, (locale, localeCode, dateFnsLocale) => /*#__PURE__*/React.createElement(BaseTimePicker, _Object$assign({
19
- timeZone: timeZone,
20
- placeholder: get(locale, ['placeholder', type])
21
- }, this.props, {
22
- locale: locale,
23
- localeCode: localeCode,
24
- dateFnsLocale: dateFnsLocale
25
- })));
26
- });
12
+ return /*#__PURE__*/React.createElement(ConfigContext.Consumer, null, ({
13
+ timeZone
14
+ }) => /*#__PURE__*/React.createElement(LocaleConsumer, {
15
+ componentName: "TimePicker"
16
+ }, (locale, localeCode, dateFnsLocale) => /*#__PURE__*/React.createElement(BaseTimePicker, _Object$assign({
17
+ timeZone: timeZone,
18
+ placeholder: get(locale, ['placeholder', type])
19
+ }, this.props, {
20
+ locale: locale,
21
+ localeCode: localeCode,
22
+ dateFnsLocale: dateFnsLocale
23
+ }))));
27
24
  }
28
25
 
29
26
  }
@@ -2,8 +2,7 @@ import _Object$assign from "@babel/runtime-corejs3/core-js-stable/object/assign"
2
2
  // @ts-ignore Currently there is no types for semi-animation-react
3
3
  import { Transition } from '@douyinfe/semi-animation-react';
4
4
  import React from 'react';
5
- export default function ToastTransition() {
6
- let props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
5
+ export default function ToastTransition(props = {}) {
7
6
  let {
8
7
  motion = {}
9
8
  } = props;
@@ -43,14 +42,11 @@ export default function ToastTransition() {
43
42
  duration: 200
44
43
  }
45
44
  }
46
- }, motion), typeof props.children === 'function' ? _ref => {
47
- let {
48
- translateY,
49
- opacity
50
- } = _ref;
51
- return props.children({
52
- transform: "translateY(".concat(translateY, "%)"),
53
- opacity
54
- });
55
- } : props.children);
45
+ }, motion), typeof props.children === 'function' ? ({
46
+ translateY,
47
+ opacity
48
+ }) => props.children({
49
+ transform: "translateY(".concat(translateY, "%)"),
50
+ opacity
51
+ }) : props.children);
56
52
  }
@@ -23,12 +23,9 @@ function usePatchElement() {
23
23
  config
24
24
  }, ...originElements]);
25
25
  return id => {
26
- setElements(originElements => _filterInstanceProperty(originElements).call(originElements, _ref => {
27
- let {
28
- config: configOfCurrentElement
29
- } = _ref;
30
- return configOfCurrentElement.id !== id;
31
- }));
26
+ setElements(originElements => _filterInstanceProperty(originElements).call(originElements, ({
27
+ config: configOfCurrentElement
28
+ }) => configOfCurrentElement.id !== id));
32
29
  };
33
30
  }
34
31
 
@@ -10,8 +10,7 @@ import getMotionObjFromProps from '@douyinfe/semi-foundation/lib/es/utils/getMot
10
10
  const enterCls = "".concat(cssClasses.PREFIX, "-bounceIn");
11
11
  const leaveCls = "".concat(cssClasses.PREFIX, "-zoomOut");
12
12
 
13
- const TooltipTransition = function () {
14
- let props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
13
+ const TooltipTransition = (props = {}) => {
15
14
  const {
16
15
  children
17
16
  } = props;
@@ -20,18 +19,15 @@ const TooltipTransition = function () {
20
19
  enter: enterCls,
21
20
  leave: leaveCls,
22
21
  duration: '100ms'
23
- }, motion), typeof children === 'function' ? _ref => {
24
- let {
25
- animateCls,
26
- animateEvents,
27
- animateStyle
28
- } = _ref;
29
- return children({
30
- animateCls,
31
- animateEvents,
32
- animateStyle
33
- });
34
- } : children);
22
+ }, motion), typeof children === 'function' ? ({
23
+ animateCls,
24
+ animateEvents,
25
+ animateStyle
26
+ }) => children({
27
+ animateCls,
28
+ animateEvents,
29
+ animateStyle
30
+ }) : children);
35
31
  };
36
32
 
37
33
  export default TooltipTransition;
@@ -31,6 +31,7 @@ export interface TooltipProps extends BaseProps {
31
31
  content?: React.ReactNode;
32
32
  prefixCls?: string;
33
33
  onVisibleChange?: (visible: boolean) => void;
34
+ onClickOutSide?: (e: React.MouseEvent) => void;
34
35
  spacing?: number;
35
36
  showArrow?: boolean | React.ReactNode;
36
37
  zIndex?: number;
@@ -77,6 +78,7 @@ export default class Tooltip extends BaseComponent<TooltipProps, TooltipState> {
77
78
  content: PropTypes.Requireable<PropTypes.ReactNodeLike>;
78
79
  prefixCls: PropTypes.Requireable<string>;
79
80
  onVisibleChange: PropTypes.Requireable<(...args: any[]) => any>;
81
+ onClickOutSide: PropTypes.Requireable<(...args: any[]) => any>;
80
82
  spacing: PropTypes.Requireable<number>;
81
83
  showArrow: PropTypes.Requireable<PropTypes.ReactNodeLike>;
82
84
  zIndex: PropTypes.Requireable<number>;
@@ -105,6 +107,7 @@ export default class Tooltip extends BaseComponent<TooltipProps, TooltipState> {
105
107
  mouseEnterDelay: 50;
106
108
  mouseLeaveDelay: 50;
107
109
  onVisibleChange: (...args: any[]) => void;
110
+ onClickOutSide: (...args: any[]) => void;
108
111
  spacing: 8;
109
112
  showArrow: boolean;
110
113
  arrowBounding: {