@douyinfe/semi-ui 2.52.0-beta.1 → 2.53.0-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (138) hide show
  1. package/dist/css/semi.css +1 -0
  2. package/dist/css/semi.min.css +1 -1
  3. package/dist/umd/semi-ui.js +930 -1249
  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/_utils/index.d.ts +2 -0
  8. package/lib/cjs/_utils/index.js +77 -0
  9. package/lib/cjs/_utils/semi-global.d.ts +46 -0
  10. package/lib/cjs/_utils/semi-global.js +13 -0
  11. package/lib/cjs/autoComplete/index.d.ts +2 -25
  12. package/lib/cjs/autoComplete/index.js +4 -2
  13. package/lib/cjs/avatar/index.d.ts +2 -10
  14. package/lib/cjs/avatar/index.js +4 -2
  15. package/lib/cjs/backtop/index.d.ts +2 -5
  16. package/lib/cjs/backtop/index.js +4 -2
  17. package/lib/cjs/button/Button.d.ts +1 -1
  18. package/lib/cjs/button/index.d.ts +3 -1
  19. package/lib/cjs/button/index.js +3 -0
  20. package/lib/cjs/carousel/index.d.ts +2 -2
  21. package/lib/cjs/cascader/index.d.ts +5 -33
  22. package/lib/cjs/cascader/index.js +34 -23
  23. package/lib/cjs/collapse/index.d.ts +2 -7
  24. package/lib/cjs/collapse/index.js +4 -2
  25. package/lib/cjs/collapsible/index.d.ts +3 -9
  26. package/lib/cjs/collapsible/index.js +4 -2
  27. package/lib/cjs/configProvider/index.d.ts +2 -1
  28. package/lib/cjs/configProvider/index.js +5 -2
  29. package/lib/cjs/datePicker/datePicker.d.ts +2 -44
  30. package/lib/cjs/datePicker/datePicker.js +5 -3
  31. package/lib/cjs/datePicker/yearAndMonth.js +20 -16
  32. package/lib/cjs/dropdown/index.d.ts +2 -12
  33. package/lib/cjs/dropdown/index.js +4 -2
  34. package/lib/cjs/form/arrayField.js +3 -3
  35. package/lib/cjs/form/hoc/withField.d.ts +3 -3
  36. package/lib/cjs/modal/Modal.d.ts +2 -20
  37. package/lib/cjs/modal/Modal.js +5 -4
  38. package/lib/cjs/modal/confirm.d.ts +14 -14
  39. package/lib/cjs/navigation/index.d.ts +2 -15
  40. package/lib/cjs/navigation/index.js +4 -2
  41. package/lib/cjs/notification/notice.d.ts +2 -12
  42. package/lib/cjs/notification/notice.js +3 -2
  43. package/lib/cjs/overflowList/index.d.ts +2 -9
  44. package/lib/cjs/overflowList/index.js +3 -2
  45. package/lib/cjs/popconfirm/index.d.ts +2 -15
  46. package/lib/cjs/popconfirm/index.js +4 -2
  47. package/lib/cjs/popover/index.d.ts +2 -23
  48. package/lib/cjs/popover/index.js +4 -2
  49. package/lib/cjs/resizeObserver/index.d.ts +14 -2
  50. package/lib/cjs/resizeObserver/index.js +66 -32
  51. package/lib/cjs/select/index.d.ts +1 -0
  52. package/lib/cjs/select/index.js +3 -2
  53. package/lib/cjs/select/option.js +2 -1
  54. package/lib/cjs/sideSheet/index.d.ts +1 -0
  55. package/lib/cjs/sideSheet/index.js +3 -2
  56. package/lib/cjs/table/ResizableTable.js +1 -1
  57. package/lib/cjs/tabs/index.d.ts +1 -0
  58. package/lib/cjs/tabs/index.js +4 -2
  59. package/lib/cjs/timePicker/TimePicker.d.ts +1 -1
  60. package/lib/cjs/timePicker/index.d.ts +2 -34
  61. package/lib/cjs/timePicker/index.js +3 -1
  62. package/lib/cjs/toast/toast.d.ts +2 -11
  63. package/lib/cjs/toast/toast.js +3 -2
  64. package/lib/cjs/tooltip/index.d.ts +2 -32
  65. package/lib/cjs/tooltip/index.js +3 -2
  66. package/lib/cjs/typography/base.d.ts +7 -4
  67. package/lib/cjs/typography/base.js +127 -64
  68. package/lib/cjs/typography/numeral.d.ts +1 -1
  69. package/lib/cjs/typography/paragraph.d.ts +1 -1
  70. package/lib/cjs/typography/text.d.ts +1 -1
  71. package/lib/cjs/typography/title.d.ts +1 -1
  72. package/lib/es/_utils/index.d.ts +2 -0
  73. package/lib/es/_utils/index.js +75 -0
  74. package/lib/es/_utils/semi-global.d.ts +46 -0
  75. package/lib/es/_utils/semi-global.js +6 -0
  76. package/lib/es/autoComplete/index.d.ts +2 -25
  77. package/lib/es/autoComplete/index.js +4 -2
  78. package/lib/es/avatar/index.d.ts +2 -10
  79. package/lib/es/avatar/index.js +4 -2
  80. package/lib/es/backtop/index.d.ts +2 -5
  81. package/lib/es/backtop/index.js +4 -2
  82. package/lib/es/button/Button.d.ts +1 -1
  83. package/lib/es/button/index.d.ts +3 -1
  84. package/lib/es/button/index.js +3 -0
  85. package/lib/es/carousel/index.d.ts +2 -2
  86. package/lib/es/cascader/index.d.ts +5 -33
  87. package/lib/es/cascader/index.js +35 -24
  88. package/lib/es/collapse/index.d.ts +2 -7
  89. package/lib/es/collapse/index.js +4 -2
  90. package/lib/es/collapsible/index.d.ts +3 -9
  91. package/lib/es/collapsible/index.js +4 -2
  92. package/lib/es/configProvider/index.d.ts +2 -1
  93. package/lib/es/configProvider/index.js +5 -2
  94. package/lib/es/datePicker/datePicker.d.ts +2 -44
  95. package/lib/es/datePicker/datePicker.js +5 -3
  96. package/lib/es/datePicker/yearAndMonth.js +20 -16
  97. package/lib/es/dropdown/index.d.ts +2 -12
  98. package/lib/es/dropdown/index.js +4 -2
  99. package/lib/es/form/arrayField.js +3 -3
  100. package/lib/es/form/hoc/withField.d.ts +3 -3
  101. package/lib/es/modal/Modal.d.ts +2 -20
  102. package/lib/es/modal/Modal.js +6 -5
  103. package/lib/es/modal/confirm.d.ts +14 -14
  104. package/lib/es/navigation/index.d.ts +2 -15
  105. package/lib/es/navigation/index.js +4 -2
  106. package/lib/es/notification/notice.d.ts +2 -12
  107. package/lib/es/notification/notice.js +4 -3
  108. package/lib/es/overflowList/index.d.ts +2 -9
  109. package/lib/es/overflowList/index.js +4 -3
  110. package/lib/es/popconfirm/index.d.ts +2 -15
  111. package/lib/es/popconfirm/index.js +4 -2
  112. package/lib/es/popover/index.d.ts +2 -23
  113. package/lib/es/popover/index.js +4 -2
  114. package/lib/es/resizeObserver/index.d.ts +14 -2
  115. package/lib/es/resizeObserver/index.js +64 -31
  116. package/lib/es/select/index.d.ts +1 -0
  117. package/lib/es/select/index.js +4 -3
  118. package/lib/es/select/option.js +2 -1
  119. package/lib/es/sideSheet/index.d.ts +1 -0
  120. package/lib/es/sideSheet/index.js +4 -3
  121. package/lib/es/table/ResizableTable.js +1 -1
  122. package/lib/es/tabs/index.d.ts +1 -0
  123. package/lib/es/tabs/index.js +4 -2
  124. package/lib/es/timePicker/TimePicker.d.ts +1 -1
  125. package/lib/es/timePicker/index.d.ts +2 -34
  126. package/lib/es/timePicker/index.js +3 -1
  127. package/lib/es/toast/toast.d.ts +2 -11
  128. package/lib/es/toast/toast.js +4 -3
  129. package/lib/es/tooltip/index.d.ts +2 -32
  130. package/lib/es/tooltip/index.js +4 -3
  131. package/lib/es/typography/base.d.ts +7 -4
  132. package/lib/es/typography/base.js +128 -65
  133. package/lib/es/typography/numeral.d.ts +1 -1
  134. package/lib/es/typography/paragraph.d.ts +1 -1
  135. package/lib/es/typography/text.d.ts +1 -1
  136. package/lib/es/typography/title.d.ts +1 -1
  137. package/package.json +9 -9
  138. package/dist/umd/semi-ui.min.js.LICENSE.txt +0 -5
@@ -69,4 +69,6 @@ export declare const isSemiIcon: (icon: any) => boolean;
69
69
  export declare function getActiveElement(): HTMLElement | null;
70
70
  export declare function isNodeContainsFocus(node: HTMLElement): boolean;
71
71
  export declare function getFocusableElements(node: HTMLElement): HTMLElement[];
72
+ export declare function runAfterTicks(func: (...args: any) => any, numberOfTicks: number): Promise<void>;
72
73
  export declare function getScrollbarWidth(): number;
74
+ export declare function getDefaultPropsFromGlobalConfig(componentName: string, semiDefaultProps?: any): any;
@@ -5,11 +5,13 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.cloneDeep = cloneDeep;
7
7
  exports.getActiveElement = getActiveElement;
8
+ exports.getDefaultPropsFromGlobalConfig = getDefaultPropsFromGlobalConfig;
8
9
  exports.getFocusableElements = getFocusableElements;
9
10
  exports.getHighLightTextHTML = void 0;
10
11
  exports.getScrollbarWidth = getScrollbarWidth;
11
12
  exports.isNodeContainsFocus = isNodeContainsFocus;
12
13
  exports.registerMediaQuery = exports.isSemiIcon = void 0;
14
+ exports.runAfterTicks = runAfterTicks;
13
15
  exports.stopPropagation = stopPropagation;
14
16
  var _get2 = _interopRequireDefault(require("lodash/get"));
15
17
  var _set2 = _interopRequireDefault(require("lodash/set"));
@@ -18,7 +20,35 @@ var _react = _interopRequireDefault(require("react"));
18
20
  var _warning = _interopRequireDefault(require("@douyinfe/semi-foundation/lib/cjs/utils/warning"));
19
21
  var _getHighlight = require("@douyinfe/semi-foundation/lib/cjs/utils/getHighlight");
20
22
  var _dom = require("@douyinfe/semi-foundation/lib/cjs/utils/dom");
23
+ var _semiGlobal = _interopRequireDefault(require("./semi-global"));
21
24
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
25
+ var __awaiter = void 0 && (void 0).__awaiter || function (thisArg, _arguments, P, generator) {
26
+ function adopt(value) {
27
+ return value instanceof P ? value : new P(function (resolve) {
28
+ resolve(value);
29
+ });
30
+ }
31
+ return new (P || (P = Promise))(function (resolve, reject) {
32
+ function fulfilled(value) {
33
+ try {
34
+ step(generator.next(value));
35
+ } catch (e) {
36
+ reject(e);
37
+ }
38
+ }
39
+ function rejected(value) {
40
+ try {
41
+ step(generator["throw"](value));
42
+ } catch (e) {
43
+ reject(e);
44
+ }
45
+ }
46
+ function step(result) {
47
+ result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected);
48
+ }
49
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
50
+ });
51
+ };
22
52
  /**
23
53
  * stop propagation
24
54
  *
@@ -171,9 +201,56 @@ function getFocusableElements(node) {
171
201
  const focusableElements = Array.from(node.querySelectorAll(focusableSelectorsStr));
172
202
  return focusableElements;
173
203
  }
204
+ function runAfterTicks(func, numberOfTicks) {
205
+ return __awaiter(this, void 0, void 0, function* () {
206
+ if (numberOfTicks === 0) {
207
+ yield func();
208
+ return;
209
+ } else {
210
+ yield new Promise(resolve => {
211
+ setTimeout(() => __awaiter(this, void 0, void 0, function* () {
212
+ yield runAfterTicks(func, numberOfTicks - 1);
213
+ resolve();
214
+ }), 0);
215
+ });
216
+ return;
217
+ }
218
+ });
219
+ }
174
220
  function getScrollbarWidth() {
175
221
  if (globalThis && Object.prototype.toString.call(globalThis) === '[object Window]') {
176
222
  return window.innerWidth - document.documentElement.clientWidth;
177
223
  }
178
224
  return 0;
225
+ }
226
+ function getDefaultPropsFromGlobalConfig(componentName) {
227
+ let semiDefaultProps = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
228
+ const getFromGlobalConfig = () => {
229
+ var _a, _b;
230
+ return ((_b = (_a = _semiGlobal.default === null || _semiGlobal.default === void 0 ? void 0 : _semiGlobal.default.config) === null || _a === void 0 ? void 0 : _a.overrideDefaultProps) === null || _b === void 0 ? void 0 : _b[componentName]) || {};
231
+ };
232
+ return new Proxy(Object.assign({}, semiDefaultProps), {
233
+ get(target, key, receiver) {
234
+ const defaultPropsFromGlobal = getFromGlobalConfig();
235
+ if (key in defaultPropsFromGlobal) {
236
+ return defaultPropsFromGlobal[key];
237
+ }
238
+ return Reflect.get(target, key, receiver);
239
+ },
240
+ set(target, key, value, receiver) {
241
+ return Reflect.set(target, key, value, receiver);
242
+ },
243
+ ownKeys() {
244
+ const defaultPropsFromGlobal = getFromGlobalConfig();
245
+ return Array.from(new Set([...Reflect.ownKeys(semiDefaultProps), ...Object.keys(defaultPropsFromGlobal)]));
246
+ },
247
+ getOwnPropertyDescriptor(target, key) {
248
+ const defaultPropsFromGlobal = getFromGlobalConfig();
249
+ if (key in defaultPropsFromGlobal) {
250
+ return Reflect.getOwnPropertyDescriptor(defaultPropsFromGlobal, key);
251
+ } else {
252
+ return Reflect.getOwnPropertyDescriptor(target, key);
253
+ }
254
+ }
255
+ });
179
256
  }
@@ -0,0 +1,46 @@
1
+ import type { AutoCompleteProps } from "../autoComplete";
2
+ import type { AvatarProps } from "../avatar";
3
+ import type { CascaderProps } from "../cascader";
4
+ import type { CollapseReactProps } from "../collapse";
5
+ import type { CollapsibleProps } from "../collapsible";
6
+ import type { DatePickerProps } from "../datePicker";
7
+ import type { DropdownProps } from "../dropdown";
8
+ import type { ModalReactProps } from "../modal";
9
+ import type { NavProps } from "../navigation";
10
+ import type { NoticeReactProps } from "../notification";
11
+ import type { OverflowListProps } from "../overflowList";
12
+ import type { PopconfirmProps } from "../popconfirm";
13
+ import type { PopoverProps } from "../popover";
14
+ import type { SelectProps } from "../select";
15
+ import type { SideSheetReactProps } from "../sideSheet";
16
+ import type { TabsProps } from "../tabs";
17
+ import type { TimePickerProps } from "../timePicker";
18
+ import type { ToastReactProps } from "../toast";
19
+ import type { TooltipProps } from "../tooltip";
20
+ declare class SemiGlobal {
21
+ config: {
22
+ overrideDefaultProps?: {
23
+ "AutoComplete"?: Partial<AutoCompleteProps<any>>;
24
+ "Avatar"?: Partial<AvatarProps>;
25
+ Cascader?: Partial<CascaderProps>;
26
+ Collapse?: Partial<CollapseReactProps>;
27
+ Collapsible?: Partial<CollapsibleProps>;
28
+ DatePicker?: Partial<DatePickerProps>;
29
+ Dropdown?: Partial<DropdownProps>;
30
+ Modal?: Partial<ModalReactProps>;
31
+ Navigation?: Partial<NavProps>;
32
+ Notification?: Partial<NoticeReactProps>;
33
+ OverflowList?: Partial<OverflowListProps>;
34
+ Popconfirm?: Partial<PopconfirmProps>;
35
+ Popover?: Partial<PopoverProps>;
36
+ Select?: Partial<SelectProps>;
37
+ SideSheet?: Partial<SideSheetReactProps>;
38
+ Tabs?: Partial<TabsProps>;
39
+ TimePicker?: Partial<TimePickerProps>;
40
+ Toast?: Partial<ToastReactProps>;
41
+ Tooltip?: Partial<TooltipProps>;
42
+ };
43
+ };
44
+ }
45
+ declare const _default: SemiGlobal;
46
+ export default _default;
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ class SemiGlobal {
8
+ constructor() {
9
+ this.config = {};
10
+ }
11
+ }
12
+ var _default = new SemiGlobal();
13
+ exports.default = _default;
@@ -139,31 +139,8 @@ declare class AutoComplete<T extends AutoCompleteItems> extends BaseComponent<Au
139
139
  zIndex: PropTypes.Requireable<number>;
140
140
  };
141
141
  static Option: typeof Option;
142
- static defaultProps: {
143
- stopPropagation: boolean;
144
- motion: boolean;
145
- zIndex: number;
146
- position: "bottomLeft";
147
- data: [];
148
- showClear: boolean;
149
- size: "default";
150
- onFocus: (...args: any[]) => void;
151
- onSearch: (...args: any[]) => void;
152
- onClear: (...args: any[]) => void;
153
- onBlur: (...args: any[]) => void;
154
- onSelect: (...args: any[]) => void;
155
- onChange: (...args: any[]) => void;
156
- onSelectWithObject: boolean;
157
- onDropdownVisibleChange: (...args: any[]) => void;
158
- defaultActiveFirstOption: boolean;
159
- dropdownMatchSelectWidth: boolean;
160
- loading: boolean;
161
- maxHeight: number;
162
- validateStatus: "default";
163
- autoFocus: boolean;
164
- emptyContent: null;
165
- onKeyDown: (...args: any[]) => void;
166
- };
142
+ static __SemiComponentName__: string;
143
+ static defaultProps: any;
167
144
  triggerRef: React.RefObject<HTMLDivElement> | null;
168
145
  optionsRef: React.RefObject<HTMLDivElement> | null;
169
146
  private clickOutsideHandler;
@@ -21,6 +21,7 @@ var _option = _interopRequireDefault(require("./option"));
21
21
  var _warning = _interopRequireDefault(require("@douyinfe/semi-foundation/lib/cjs/utils/warning"));
22
22
  require("@douyinfe/semi-foundation/lib/cjs/autoComplete/autoComplete.css");
23
23
  var _reactDom = _interopRequireDefault(require("react-dom"));
24
+ var _utils = require("../_utils");
24
25
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
25
26
  const prefixCls = _constants.cssClasses.PREFIX;
26
27
  const sizeSet = _constants.strings.SIZE;
@@ -392,7 +393,8 @@ AutoComplete.propTypes = {
392
393
  zIndex: _propTypes.default.number
393
394
  };
394
395
  AutoComplete.Option = _option.default;
395
- AutoComplete.defaultProps = {
396
+ AutoComplete.__SemiComponentName__ = "AutoComplete";
397
+ AutoComplete.defaultProps = (0, _utils.getDefaultPropsFromGlobalConfig)(AutoComplete.__SemiComponentName__, {
396
398
  stopPropagation: true,
397
399
  motion: true,
398
400
  zIndex: _constants2.numbers.DEFAULT_Z_INDEX,
@@ -418,6 +420,6 @@ AutoComplete.defaultProps = {
418
420
  onKeyDown: _noop2.default
419
421
  // onPressEnter: () => undefined,
420
422
  // defaultOpen: false,
421
- };
423
+ });
422
424
  var _default = AutoComplete;
423
425
  exports.default = _default;
@@ -2,7 +2,6 @@ import React from 'react';
2
2
  import PropTypes from 'prop-types';
3
3
  import AvatarFoundation, { AvatarAdapter } from '@douyinfe/semi-foundation/lib/cjs/avatar/foundation';
4
4
  import '@douyinfe/semi-foundation/lib/cjs/avatar/avatar.css';
5
- import { noop } from '@douyinfe/semi-foundation/lib/cjs/utils/function';
6
5
  import BaseComponent from '../_base/baseComponent';
7
6
  import { AvatarProps } from './interface';
8
7
  export * from './interface';
@@ -13,15 +12,8 @@ export interface AvatarState {
13
12
  scale: number;
14
13
  }
15
14
  export default class Avatar extends BaseComponent<AvatarProps, AvatarState> {
16
- static defaultProps: {
17
- size: string;
18
- color: string;
19
- shape: string;
20
- gap: number;
21
- onClick: typeof noop;
22
- onMouseEnter: typeof noop;
23
- onMouseLeave: typeof noop;
24
- };
15
+ static __SemiComponentName__: string;
16
+ static defaultProps: any;
25
17
  static elementType: string;
26
18
  static propTypes: {
27
19
  children: PropTypes.Requireable<PropTypes.ReactNodeLike>;
@@ -14,6 +14,7 @@ require("@douyinfe/semi-foundation/lib/cjs/avatar/avatar.css");
14
14
  var _function = require("@douyinfe/semi-foundation/lib/cjs/utils/function");
15
15
  var _baseComponent = _interopRequireDefault(require("../_base/baseComponent"));
16
16
  var _a11y = require("@douyinfe/semi-foundation/lib/cjs/utils/a11y");
17
+ var _utils = require("../_utils");
17
18
  var _TopSlotSvg = _interopRequireDefault(require("./TopSlotSvg"));
18
19
  var _interface = require("./interface");
19
20
  Object.keys(_interface).forEach(function (key) {
@@ -365,7 +366,8 @@ class Avatar extends _baseComponent.default {
365
366
  }
366
367
  }
367
368
  exports.default = Avatar;
368
- Avatar.defaultProps = {
369
+ Avatar.__SemiComponentName__ = "Avatar";
370
+ Avatar.defaultProps = (0, _utils.getDefaultPropsFromGlobalConfig)(Avatar.__SemiComponentName__, {
369
371
  size: 'medium',
370
372
  color: 'grey',
371
373
  shape: 'circle',
@@ -373,7 +375,7 @@ Avatar.defaultProps = {
373
375
  onClick: _function.noop,
374
376
  onMouseEnter: _function.noop,
375
377
  onMouseLeave: _function.noop
376
- };
378
+ });
377
379
  Avatar.propTypes = {
378
380
  children: _propTypes.default.node,
379
381
  color: _propTypes.default.oneOf(colorSet),
@@ -16,11 +16,8 @@ export interface BackTopState {
16
16
  visible?: boolean;
17
17
  }
18
18
  export default class BackTop extends BaseComponent<BackTopProps, BackTopState> {
19
- static defaultProps: {
20
- visibilityHeight: number;
21
- target: () => Window & typeof globalThis;
22
- duration: number;
23
- };
19
+ static __SemiComponentName__: string;
20
+ static defaultProps: any;
24
21
  static propTypes: {
25
22
  target: PropTypes.Requireable<(...args: any[]) => any>;
26
23
  visibilityHeight: PropTypes.Requireable<number>;
@@ -13,6 +13,7 @@ var _foundation = _interopRequireDefault(require("@douyinfe/semi-foundation/lib/
13
13
  require("@douyinfe/semi-foundation/lib/cjs/backtop/backtop.css");
14
14
  var _iconButton = _interopRequireDefault(require("../iconButton"));
15
15
  var _semiIcons = require("@douyinfe/semi-icons");
16
+ var _utils = require("../_utils");
16
17
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
17
18
  var __rest = void 0 && (void 0).__rest || function (s, e) {
18
19
  var t = {};
@@ -98,11 +99,12 @@ class BackTop extends _baseComponent.default {
98
99
  }
99
100
  }
100
101
  exports.default = BackTop;
101
- BackTop.defaultProps = {
102
+ BackTop.__SemiComponentName__ = "BackTop";
103
+ BackTop.defaultProps = (0, _utils.getDefaultPropsFromGlobalConfig)(BackTop.__SemiComponentName__, {
102
104
  visibilityHeight: 400,
103
105
  target: getDefaultTarget,
104
106
  duration: 450
105
- };
107
+ });
106
108
  BackTop.propTypes = {
107
109
  target: _propTypes.default.func,
108
110
  visibilityHeight: _propTypes.default.number,
@@ -48,7 +48,7 @@ export default class Button extends PureComponent<ButtonProps> {
48
48
  prefixCls: PropTypes.Requireable<string>;
49
49
  style: PropTypes.Requireable<object>;
50
50
  size: PropTypes.Requireable<"default" | "small" | "large">;
51
- type: PropTypes.Requireable<"warning" | "primary" | "tertiary" | "secondary" | "danger">;
51
+ type: PropTypes.Requireable<"warning" | "primary" | "secondary" | "danger" | "tertiary">;
52
52
  block: PropTypes.Requireable<boolean>;
53
53
  onClick: PropTypes.Requireable<(...args: any[]) => any>;
54
54
  onMouseDown: PropTypes.Requireable<(...args: any[]) => any>;
@@ -7,6 +7,7 @@ export type { SplitButtonGroupProps } from './splitButtonGroup';
7
7
  export interface ButtonProps extends IconButtonProps {
8
8
  }
9
9
  declare class Button extends React.PureComponent<ButtonProps> {
10
+ static __SemiComponentName__: string;
10
11
  static propTypes: {
11
12
  iconStyle: import("prop-types").Requireable<object>;
12
13
  style: import("prop-types").Requireable<object>;
@@ -23,7 +24,7 @@ declare class Button extends React.PureComponent<ButtonProps> {
23
24
  onMouseLeave: import("prop-types").Requireable<(...args: any[]) => any>;
24
25
  disabled: import("prop-types").Requireable<boolean>;
25
26
  size: import("prop-types").Requireable<"default" | "small" | "large">;
26
- type: import("prop-types").Requireable<"warning" | "primary" | "tertiary" | "secondary" | "danger">;
27
+ type: import("prop-types").Requireable<"warning" | "primary" | "secondary" | "danger" | "tertiary">;
27
28
  block: import("prop-types").Requireable<boolean>;
28
29
  onClick: import("prop-types").Requireable<(...args: any[]) => any>;
29
30
  onMouseDown: import("prop-types").Requireable<(...args: any[]) => any>;
@@ -33,6 +34,7 @@ declare class Button extends React.PureComponent<ButtonProps> {
33
34
  };
34
35
  static elementType: string;
35
36
  constructor(props?: ButtonProps);
37
+ static defaultProps: any;
36
38
  render(): JSX.Element;
37
39
  }
38
40
  export default Button;
@@ -7,6 +7,7 @@ exports.default = void 0;
7
7
  var _react = _interopRequireDefault(require("react"));
8
8
  var _Button = _interopRequireDefault(require("./Button"));
9
9
  var _iconButton = _interopRequireDefault(require("../iconButton"));
10
+ var _utils = require("../_utils");
10
11
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11
12
  class Button extends _react.default.PureComponent {
12
13
  constructor() {
@@ -25,7 +26,9 @@ class Button extends _react.default.PureComponent {
25
26
  }
26
27
  }
27
28
  }
29
+ Button.__SemiComponentName__ = "Button";
28
30
  Button.propTypes = Object.assign(Object.assign({}, _Button.default.propTypes), _iconButton.default.propTypes);
31
+ Button.defaultProps = (0, _utils.getDefaultPropsFromGlobalConfig)(Button.__SemiComponentName__);
29
32
  Button.elementType = 'Button';
30
33
  var _default = Button;
31
34
  exports.default = _default;
@@ -14,7 +14,7 @@ export interface CarouselState {
14
14
  declare class Carousel extends BaseComponent<CarouselProps, CarouselState> {
15
15
  static propTypes: {
16
16
  activeIndex: PropTypes.Requireable<number>;
17
- animation: PropTypes.Requireable<"slide" | "fade">;
17
+ animation: PropTypes.Requireable<"fade" | "slide">;
18
18
  arrowProps: PropTypes.Requireable<object>;
19
19
  autoPlay: PropTypes.Requireable<NonNullable<boolean | object>>;
20
20
  className: PropTypes.Requireable<string>;
@@ -24,7 +24,7 @@ declare class Carousel extends BaseComponent<CarouselProps, CarouselState> {
24
24
  indicatorType: PropTypes.Requireable<"line" | "dot" | "columnar">;
25
25
  theme: PropTypes.Requireable<"dark" | "light" | "primary">;
26
26
  onChange: PropTypes.Requireable<(...args: any[]) => any>;
27
- arrowType: PropTypes.Requireable<"always" | "hover">;
27
+ arrowType: PropTypes.Requireable<"hover" | "always">;
28
28
  showArrow: PropTypes.Requireable<boolean>;
29
29
  showIndicator: PropTypes.Requireable<boolean>;
30
30
  slideDirection: PropTypes.Requireable<"left" | "right">;
@@ -66,6 +66,7 @@ export interface CascaderState extends BasicCascaderInnerData {
66
66
  treeData?: Array<CascaderData>;
67
67
  }
68
68
  declare class Cascader extends BaseComponent<CascaderProps, CascaderState> {
69
+ static __SemiComponentName__: string;
69
70
  static contextType: React.Context<ContextValue>;
70
71
  static propTypes: {
71
72
  'aria-labelledby': PropTypes.Requireable<string>;
@@ -143,37 +144,7 @@ declare class Cascader extends BaseComponent<CascaderProps, CascaderState> {
143
144
  preventScroll: PropTypes.Requireable<boolean>;
144
145
  position: PropTypes.Requireable<string>;
145
146
  };
146
- static defaultProps: {
147
- borderless: boolean;
148
- leafOnly: boolean;
149
- arrowIcon: JSX.Element;
150
- stopPropagation: boolean;
151
- motion: boolean;
152
- defaultOpen: boolean;
153
- zIndex: number;
154
- showClear: boolean;
155
- autoClearSearchValue: boolean;
156
- changeOnSelect: boolean;
157
- disableStrictly: boolean;
158
- autoMergeValue: boolean;
159
- multiple: boolean;
160
- filterTreeNode: boolean;
161
- filterLeafOnly: boolean;
162
- showRestTagsPopover: boolean;
163
- restTagsPopoverProps: {};
164
- separator: string;
165
- size: "default";
166
- treeNodeFilterProp: "label";
167
- displayProp: "label";
168
- treeData: CascaderData[];
169
- showNext: "click";
170
- onExceed: (...args: any[]) => void;
171
- onClear: (...args: any[]) => void;
172
- onDropdownVisibleChange: (...args: any[]) => void;
173
- onListScroll: (...args: any[]) => void;
174
- enableLeafClick: boolean;
175
- 'aria-label': string;
176
- };
147
+ static defaultProps: any;
177
148
  options: any;
178
149
  isEmpty: boolean;
179
150
  inputRef: React.RefObject<typeof Input>;
@@ -191,9 +162,10 @@ declare class Cascader extends BaseComponent<CascaderProps, CascaderState> {
191
162
  componentWillUnmount(): void;
192
163
  componentDidUpdate(prevProps: CascaderProps): void;
193
164
  handleInputChange: (value: string) => void;
194
- handleTagRemove: (e: any, tagValuePath: Array<string | number>) => void;
195
- handleRemoveByKey: (key: any) => void;
165
+ handleTagRemoveInTrigger: (pos: string) => void;
166
+ handleTagClose: (tagChildren: React.ReactNode, e: React.MouseEvent<HTMLElement>, tagKey: string | number) => void;
196
167
  renderTagItem: (nodeKey: string, idx: number) => string | number | boolean | React.ReactFragment | JSX.Element;
168
+ onRemoveInTagInput: (v: string) => void;
197
169
  renderTagInput(): JSX.Element;
198
170
  renderInput(): JSX.Element;
199
171
  handleItemClick: (e: MouseEvent | KeyboardEvent, item: Entity | Data) => void;
@@ -43,14 +43,13 @@ class Cascader extends _baseComponent.default {
43
43
  this.handleInputChange = value => {
44
44
  this.foundation.handleInputChange(value);
45
45
  };
46
- this.handleTagRemove = (e, tagValuePath) => {
47
- this.foundation.handleTagRemove(e, tagValuePath);
46
+ this.handleTagRemoveInTrigger = pos => {
47
+ this.foundation.handleTagRemoveInTrigger(pos);
48
48
  };
49
- this.handleRemoveByKey = key => {
50
- const {
51
- keyEntities
52
- } = this.state;
53
- this.handleTagRemove(null, keyEntities[key].valuePath);
49
+ this.handleTagClose = (tagChildren, e, tagKey) => {
50
+ // When value has not changed, prevent clicking tag closeBtn to close tag
51
+ e.preventDefault();
52
+ this.foundation.handleTagRemoveByKey(tagKey);
54
53
  };
55
54
  this.renderTagItem = (nodeKey, idx) => {
56
55
  const {
@@ -78,18 +77,18 @@ class Cascader extends _baseComponent.default {
78
77
  size: size === 'default' ? 'large' : size,
79
78
  key: `tag-${nodeKey}-${idx}`,
80
79
  color: "white",
80
+ tagKey: nodeKey,
81
81
  className: tagCls,
82
82
  closable: true,
83
- onClose: (tagChildren, e) => {
84
- // When value has not changed, prevent clicking tag closeBtn to close tag
85
- e.preventDefault();
86
- this.handleTagRemove(e, keyEntities[nodeKey].valuePath);
87
- }
83
+ onClose: this.handleTagClose
88
84
  }, keyEntities[nodeKey].data[displayProp]);
89
85
  }
90
86
  }
91
87
  return null;
92
88
  };
89
+ this.onRemoveInTagInput = v => {
90
+ this.foundation.handleTagRemoveByKey(v);
91
+ };
93
92
  this.handleItemClick = (e, item) => {
94
93
  this.foundation.handleItemClick(e, item);
95
94
  };
@@ -289,6 +288,7 @@ class Cascader extends _baseComponent.default {
289
288
  }, labelNode);
290
289
  };
291
290
  this.renderCustomTrigger = () => {
291
+ var _a;
292
292
  const {
293
293
  disabled,
294
294
  triggerRender,
@@ -299,17 +299,26 @@ class Cascader extends _baseComponent.default {
299
299
  inputValue,
300
300
  inputPlaceHolder,
301
301
  resolvedCheckedKeys,
302
- checkedKeys
302
+ checkedKeys,
303
+ keyEntities
303
304
  } = this.state;
304
305
  let realValue;
305
306
  if (multiple) {
306
307
  if (this.mergeType === _constants.strings.NONE_MERGE_TYPE) {
307
- realValue = checkedKeys;
308
+ realValue = new Set();
309
+ checkedKeys.forEach(key => {
310
+ var _a;
311
+ realValue.add((_a = keyEntities[key]) === null || _a === void 0 ? void 0 : _a.pos);
312
+ });
308
313
  } else {
309
- realValue = resolvedCheckedKeys;
314
+ realValue = new Set();
315
+ resolvedCheckedKeys.forEach(key => {
316
+ var _a;
317
+ realValue.add((_a = keyEntities[key]) === null || _a === void 0 ? void 0 : _a.pos);
318
+ });
310
319
  }
311
320
  } else {
312
- realValue = [...selectedKeys][0];
321
+ realValue = (_a = keyEntities[[...selectedKeys][0]]) === null || _a === void 0 ? void 0 : _a.pos;
313
322
  }
314
323
  return /*#__PURE__*/_react.default.createElement(_trigger.default, {
315
324
  value: realValue,
@@ -322,7 +331,7 @@ class Cascader extends _baseComponent.default {
322
331
  componentName: 'Cascader',
323
332
  componentProps: Object.assign({}, this.props),
324
333
  onSearch: this.handleInputChange,
325
- onRemove: this.handleRemoveByKey
334
+ onRemove: this.handleTagRemoveInTrigger
326
335
  });
327
336
  };
328
337
  this.handleMouseOver = () => {
@@ -353,11 +362,12 @@ class Cascader extends _baseComponent.default {
353
362
  selectedKeys,
354
363
  isOpen,
355
364
  isHovering,
356
- checkedKeys
365
+ checkedKeys,
366
+ inputValue
357
367
  } = this.state;
358
368
  const hasValue = selectedKeys.size;
359
369
  const multipleWithHaveValue = multiple && checkedKeys.size;
360
- return showClear && (hasValue || multipleWithHaveValue) && !disabled && (isOpen || isHovering);
370
+ return showClear && (inputValue || hasValue || multipleWithHaveValue) && !disabled && (isOpen || isHovering);
361
371
  };
362
372
  this.renderClearBtn = () => {
363
373
  const clearCls = (0, _classnames.default)(`${prefixcls}-clearbtn`);
@@ -806,11 +816,11 @@ class Cascader extends _baseComponent.default {
806
816
  showRestTagsPopover: showRestTagsPopover,
807
817
  restTagsPopoverProps: restTagsPopoverProps,
808
818
  maxTagCount: maxTagCount,
809
- renderTagItem: (value, index) => this.renderTagItem(value, index),
819
+ renderTagItem: this.renderTagItem,
810
820
  inputValue: inputValue,
811
821
  onInputChange: this.handleInputChange,
812
822
  // TODO Modify logic, not modify type
813
- onRemove: v => this.handleTagRemove(null, v),
823
+ onRemove: this.onRemoveInTagInput,
814
824
  placeholder: placeholder,
815
825
  expandRestTagsOnClick: false
816
826
  });
@@ -904,6 +914,7 @@ class Cascader extends _baseComponent.default {
904
914
  }, selection);
905
915
  }
906
916
  }
917
+ Cascader.__SemiComponentName__ = "Cascader";
907
918
  Cascader.contextType = _context.default;
908
919
  Cascader.propTypes = {
909
920
  'aria-labelledby': _propTypes.default.string,
@@ -982,7 +993,7 @@ Cascader.propTypes = {
982
993
  preventScroll: _propTypes.default.bool,
983
994
  position: _propTypes.default.string
984
995
  };
985
- Cascader.defaultProps = {
996
+ Cascader.defaultProps = (0, _utils.getDefaultPropsFromGlobalConfig)(Cascader.__SemiComponentName__, {
986
997
  borderless: false,
987
998
  leafOnly: false,
988
999
  arrowIcon: /*#__PURE__*/_react.default.createElement(_semiIcons.IconChevronDown, null),
@@ -1012,6 +1023,6 @@ Cascader.defaultProps = {
1012
1023
  onListScroll: _noop2.default,
1013
1024
  enableLeafClick: false,
1014
1025
  'aria-label': 'Cascader'
1015
- };
1026
+ });
1016
1027
  var _default = Cascader;
1017
1028
  exports.default = _default;
@@ -4,7 +4,6 @@ import { CollapseAdapter, CollapseProps, CollapseState } from '@douyinfe/semi-fo
4
4
  import BaseComponent from '../_base/baseComponent';
5
5
  import CollapsePanel from './item';
6
6
  import '@douyinfe/semi-foundation/lib/cjs/collapse/collapse.css';
7
- import { noop } from '@douyinfe/semi-foundation/lib/cjs/utils/function';
8
7
  export type { CollapsePanelProps } from './item';
9
8
  export interface CollapseReactProps extends CollapseProps {
10
9
  expandIcon?: React.ReactNode;
@@ -30,12 +29,8 @@ declare class Collapse extends BaseComponent<CollapseReactProps, CollapseState>
30
29
  motion: PropTypes.Requireable<NonNullable<boolean | object>>;
31
30
  expandIconPosition: PropTypes.Requireable<string>;
32
31
  };
33
- static defaultProps: {
34
- defaultActiveKey: string;
35
- clickHeaderToExpand: boolean;
36
- onChange: typeof noop;
37
- expandIconPosition: string;
38
- };
32
+ static __SemiComponentName__: string;
33
+ static defaultProps: any;
39
34
  constructor(props: CollapseReactProps);
40
35
  get adapter(): CollapseAdapter;
41
36
  static getDerivedStateFromProps(props: CollapseReactProps, state: CollapseState): CollapseState;
@@ -15,6 +15,7 @@ var _item = _interopRequireDefault(require("./item"));
15
15
  require("@douyinfe/semi-foundation/lib/cjs/collapse/collapse.css");
16
16
  var _function = require("@douyinfe/semi-foundation/lib/cjs/utils/function");
17
17
  var _collapseContext = _interopRequireDefault(require("./collapse-context"));
18
+ var _utils = require("../_utils");
18
19
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
19
20
  var __rest = void 0 && (void 0).__rest || function (s, e) {
20
21
  var t = {};
@@ -113,11 +114,12 @@ Collapse.propTypes = {
113
114
  motion: _propTypes.default.oneOfType([_propTypes.default.bool, _propTypes.default.func, _propTypes.default.object]),
114
115
  expandIconPosition: _propTypes.default.oneOf(_constants.strings.iconPosition)
115
116
  };
116
- Collapse.defaultProps = {
117
+ Collapse.__SemiComponentName__ = "Collapse";
118
+ Collapse.defaultProps = (0, _utils.getDefaultPropsFromGlobalConfig)(Collapse.__SemiComponentName__, {
117
119
  defaultActiveKey: '',
118
120
  clickHeaderToExpand: true,
119
121
  onChange: _function.noop,
120
122
  expandIconPosition: 'right'
121
- };
123
+ });
122
124
  var _default = Collapse;
123
125
  exports.default = _default;