@douyinfe/semi-ui 2.24.4-alpha.0 → 2.25.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 (89) hide show
  1. package/dist/css/semi.css +83 -15
  2. package/dist/css/semi.min.css +1 -1
  3. package/dist/umd/semi-ui.js +312 -245
  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/anchor/index.d.ts +1 -1
  8. package/lib/cjs/autoComplete/index.d.ts +3 -1
  9. package/lib/cjs/autoComplete/index.js +5 -2
  10. package/lib/cjs/carousel/CarouselIndicator.d.ts +1 -1
  11. package/lib/cjs/carousel/index.d.ts +2 -2
  12. package/lib/cjs/cascader/index.d.ts +4 -0
  13. package/lib/cjs/cascader/index.js +9 -2
  14. package/lib/cjs/datePicker/dateInput.js +3 -2
  15. package/lib/cjs/datePicker/datePicker.d.ts +7 -2
  16. package/lib/cjs/datePicker/datePicker.js +7 -1
  17. package/lib/cjs/datePicker/monthsGrid.d.ts +1 -1
  18. package/lib/cjs/datePicker/quickControl.d.ts +1 -1
  19. package/lib/cjs/datePicker/yearAndMonth.d.ts +1 -1
  20. package/lib/cjs/dropdown/index.d.ts +12 -11
  21. package/lib/cjs/dropdown/index.js +15 -12
  22. package/lib/cjs/form/baseForm.d.ts +11 -4
  23. package/lib/cjs/form/field.d.ts +11 -4
  24. package/lib/cjs/image/image.js +25 -5
  25. package/lib/cjs/input/index.d.ts +2 -0
  26. package/lib/cjs/input/index.js +7 -2
  27. package/lib/cjs/inputNumber/index.d.ts +2 -0
  28. package/lib/cjs/inputNumber/index.js +1 -0
  29. package/lib/cjs/popover/index.d.ts +5 -3
  30. package/lib/cjs/popover/index.js +1 -0
  31. package/lib/cjs/radio/radio.d.ts +1 -1
  32. package/lib/cjs/radio/radioGroup.d.ts +1 -1
  33. package/lib/cjs/select/index.d.ts +5 -1
  34. package/lib/cjs/select/index.js +9 -3
  35. package/lib/cjs/table/Body/index.js +2 -2
  36. package/lib/cjs/table/Table.d.ts +1 -1
  37. package/lib/cjs/tag/index.js +1 -1
  38. package/lib/cjs/tagInput/index.d.ts +2 -0
  39. package/lib/cjs/tagInput/index.js +11 -7
  40. package/lib/cjs/timePicker/TimePicker.d.ts +11 -6
  41. package/lib/cjs/timePicker/TimePicker.js +7 -3
  42. package/lib/cjs/timePicker/index.d.ts +2 -0
  43. package/lib/cjs/tooltip/index.d.ts +1 -1
  44. package/lib/cjs/treeSelect/index.d.ts +5 -0
  45. package/lib/cjs/treeSelect/index.js +11 -3
  46. package/lib/cjs/typography/numeral.d.ts +1 -1
  47. package/lib/cjs/typography/title.d.ts +1 -1
  48. package/lib/es/anchor/index.d.ts +1 -1
  49. package/lib/es/autoComplete/index.d.ts +3 -1
  50. package/lib/es/autoComplete/index.js +5 -2
  51. package/lib/es/carousel/CarouselIndicator.d.ts +1 -1
  52. package/lib/es/carousel/index.d.ts +2 -2
  53. package/lib/es/cascader/index.d.ts +4 -0
  54. package/lib/es/cascader/index.js +9 -2
  55. package/lib/es/datePicker/dateInput.js +3 -2
  56. package/lib/es/datePicker/datePicker.d.ts +7 -2
  57. package/lib/es/datePicker/datePicker.js +7 -1
  58. package/lib/es/datePicker/monthsGrid.d.ts +1 -1
  59. package/lib/es/datePicker/quickControl.d.ts +1 -1
  60. package/lib/es/datePicker/yearAndMonth.d.ts +1 -1
  61. package/lib/es/dropdown/index.d.ts +12 -11
  62. package/lib/es/dropdown/index.js +15 -12
  63. package/lib/es/form/baseForm.d.ts +11 -4
  64. package/lib/es/form/field.d.ts +11 -4
  65. package/lib/es/image/image.js +25 -5
  66. package/lib/es/input/index.d.ts +2 -0
  67. package/lib/es/input/index.js +7 -2
  68. package/lib/es/inputNumber/index.d.ts +2 -0
  69. package/lib/es/inputNumber/index.js +1 -0
  70. package/lib/es/popover/index.d.ts +5 -3
  71. package/lib/es/popover/index.js +1 -0
  72. package/lib/es/radio/radio.d.ts +1 -1
  73. package/lib/es/radio/radioGroup.d.ts +1 -1
  74. package/lib/es/select/index.d.ts +5 -1
  75. package/lib/es/select/index.js +9 -3
  76. package/lib/es/table/Body/index.js +3 -3
  77. package/lib/es/table/Table.d.ts +1 -1
  78. package/lib/es/tag/index.js +1 -1
  79. package/lib/es/tagInput/index.d.ts +2 -0
  80. package/lib/es/tagInput/index.js +11 -7
  81. package/lib/es/timePicker/TimePicker.d.ts +11 -6
  82. package/lib/es/timePicker/TimePicker.js +7 -3
  83. package/lib/es/timePicker/index.d.ts +2 -0
  84. package/lib/es/tooltip/index.d.ts +1 -1
  85. package/lib/es/treeSelect/index.d.ts +5 -0
  86. package/lib/es/treeSelect/index.js +11 -3
  87. package/lib/es/typography/numeral.d.ts +1 -1
  88. package/lib/es/typography/title.d.ts +1 -1
  89. package/package.json +8 -8
@@ -26,6 +26,7 @@ export interface AutoCompleteProps<T extends AutoCompleteItems> {
26
26
  autoAdjustOverflow?: boolean;
27
27
  autoFocus?: boolean;
28
28
  className?: string;
29
+ clearIcon?: ReactNode;
29
30
  children?: ReactNode | undefined;
30
31
  data?: T[];
31
32
  disabled?: boolean;
@@ -94,6 +95,7 @@ declare class AutoComplete<T extends AutoCompleteItems> extends BaseComponent<Au
94
95
  autoFocus: PropTypes.Requireable<boolean>;
95
96
  autoAdjustOverflow: PropTypes.Requireable<boolean>;
96
97
  className: PropTypes.Requireable<string>;
98
+ clearIcon: PropTypes.Requireable<PropTypes.ReactNodeLike>;
97
99
  children: PropTypes.Requireable<PropTypes.ReactNodeLike>;
98
100
  data: PropTypes.Requireable<any[]>;
99
101
  defaultOpen: PropTypes.Requireable<boolean>;
@@ -114,7 +116,7 @@ declare class AutoComplete<T extends AutoCompleteItems> extends BaseComponent<Au
114
116
  onFocus: PropTypes.Requireable<(...args: any[]) => any>;
115
117
  onChange: PropTypes.Requireable<(...args: any[]) => any>;
116
118
  onKeyDown: PropTypes.Requireable<(...args: any[]) => any>;
117
- position: PropTypes.Requireable<"top" | "topLeft" | "topRight" | "left" | "leftTop" | "leftBottom" | "right" | "rightTop" | "rightBottom" | "bottom" | "bottomLeft" | "bottomRight" | "leftTopOver" | "rightTopOver" | "leftBottomOver" | "rightBottomOver">;
119
+ position: PropTypes.Requireable<"left" | "top" | "right" | "bottom" | "topLeft" | "topRight" | "leftTop" | "leftBottom" | "rightTop" | "rightBottom" | "bottomLeft" | "bottomRight" | "leftTopOver" | "rightTopOver" | "leftBottomOver" | "rightBottomOver">;
118
120
  placeholder: PropTypes.Requireable<string>;
119
121
  prefix: PropTypes.Requireable<PropTypes.ReactNodeLike>;
120
122
  onChangeWithObject: PropTypes.Requireable<boolean>;
@@ -183,7 +183,8 @@ class AutoComplete extends BaseComponent {
183
183
  validateStatus,
184
184
  autoFocus,
185
185
  value,
186
- id
186
+ id,
187
+ clearIcon
187
188
  } = this.props;
188
189
  const {
189
190
  inputValue,
@@ -224,7 +225,8 @@ class AutoComplete extends BaseComponent {
224
225
  validateStatus,
225
226
  size,
226
227
  onBlur: this.onBlur,
227
- onFocus: this.onFocus
228
+ onFocus: this.onFocus,
229
+ clearIcon
228
230
  };
229
231
  return /*#__PURE__*/React.createElement("div", Object.assign({}, outerProps), typeof triggerRender === 'function' ? /*#__PURE__*/React.createElement(Trigger, Object.assign({}, innerProps, {
230
232
  inputValue: typeof value !== 'undefined' ? value : inputValue,
@@ -340,6 +342,7 @@ AutoComplete.propTypes = {
340
342
  autoFocus: PropTypes.bool,
341
343
  autoAdjustOverflow: PropTypes.bool,
342
344
  className: PropTypes.string,
345
+ clearIcon: PropTypes.node,
343
346
  children: PropTypes.node,
344
347
  data: PropTypes.array,
345
348
  defaultOpen: PropTypes.bool,
@@ -8,7 +8,7 @@ declare class CarouselIndicator extends React.PureComponent<CarouselIndicatorPro
8
8
  position: PropTypes.Requireable<"left" | "right" | "center">;
9
9
  size: PropTypes.Requireable<"small" | "medium">;
10
10
  style: PropTypes.Requireable<object>;
11
- theme: PropTypes.Requireable<"primary" | "dark" | "light">;
11
+ theme: PropTypes.Requireable<"dark" | "light" | "primary">;
12
12
  total: PropTypes.Requireable<number>;
13
13
  onIndicatorChange: PropTypes.Requireable<(...args: any[]) => any>;
14
14
  type: PropTypes.Requireable<"line" | "dot" | "columnar">;
@@ -22,9 +22,9 @@ declare class Carousel extends BaseComponent<CarouselProps, CarouselState> {
22
22
  indicatorPosition: PropTypes.Requireable<"left" | "right" | "center">;
23
23
  indicatorSize: PropTypes.Requireable<"small" | "medium">;
24
24
  indicatorType: PropTypes.Requireable<"line" | "dot" | "columnar">;
25
- theme: PropTypes.Requireable<"primary" | "dark" | "light">;
25
+ theme: PropTypes.Requireable<"dark" | "light" | "primary">;
26
26
  onChange: PropTypes.Requireable<(...args: any[]) => any>;
27
- arrowType: PropTypes.Requireable<"hover" | "always">;
27
+ arrowType: PropTypes.Requireable<"always" | "hover">;
28
28
  showArrow: PropTypes.Requireable<boolean>;
29
29
  showIndicator: PropTypes.Requireable<boolean>;
30
30
  slideDirection: PropTypes.Requireable<"left" | "right">;
@@ -27,8 +27,10 @@ export interface CascaderProps extends BasicCascaderProps {
27
27
  'aria-required'?: React.AriaAttributes['aria-required'];
28
28
  'aria-label'?: React.AriaAttributes['aria-label'];
29
29
  arrowIcon?: ReactNode;
30
+ clearIcon?: ReactNode;
30
31
  defaultValue?: Value;
31
32
  dropdownStyle?: CSSProperties;
33
+ dropdownMargin?: PopoverProps['margin'];
32
34
  emptyContent?: ReactNode;
33
35
  motion?: boolean;
34
36
  treeData?: Array<CascaderData>;
@@ -70,11 +72,13 @@ declare class Cascader extends BaseComponent<CascaderProps, CascaderState> {
70
72
  'aria-required': PropTypes.Requireable<boolean>;
71
73
  'aria-label': PropTypes.Requireable<string>;
72
74
  arrowIcon: PropTypes.Requireable<PropTypes.ReactNodeLike>;
75
+ clearIcon: PropTypes.Requireable<PropTypes.ReactNodeLike>;
73
76
  changeOnSelect: PropTypes.Requireable<boolean>;
74
77
  defaultValue: PropTypes.Requireable<NonNullable<string | any[]>>;
75
78
  disabled: PropTypes.Requireable<boolean>;
76
79
  dropdownClassName: PropTypes.Requireable<string>;
77
80
  dropdownStyle: PropTypes.Requireable<object>;
81
+ dropdownMargin: PropTypes.Requireable<NonNullable<number | object>>;
78
82
  emptyContent: PropTypes.Requireable<PropTypes.ReactNodeLike>;
79
83
  motion: PropTypes.Requireable<boolean>;
80
84
  filterTreeNode: PropTypes.Requireable<NonNullable<boolean | ((...args: any[]) => any)>>;
@@ -375,6 +375,9 @@ class Cascader extends BaseComponent {
375
375
 
376
376
  this.renderClearBtn = () => {
377
377
  const clearCls = cls("".concat(prefixcls, "-clearbtn"));
378
+ const {
379
+ clearIcon
380
+ } = this.props;
378
381
  const allowClear = this.showClearBtn();
379
382
 
380
383
  if (allowClear) {
@@ -384,7 +387,7 @@ class Cascader extends BaseComponent {
384
387
  onKeyPress: this.handleClearEnterPress,
385
388
  role: "button",
386
389
  tabIndex: 0
387
- }, /*#__PURE__*/React.createElement(IconClear, null));
390
+ }, clearIcon ? clearIcon : /*#__PURE__*/React.createElement(IconClear, null));
388
391
  }
389
392
 
390
393
  return null;
@@ -911,7 +914,8 @@ class Cascader extends BaseComponent {
911
914
  mouseLeaveDelay,
912
915
  mouseEnterDelay,
913
916
  position,
914
- motion
917
+ motion,
918
+ dropdownMargin
915
919
  } = this.props;
916
920
  const {
917
921
  isOpen,
@@ -927,6 +931,7 @@ class Cascader extends BaseComponent {
927
931
  getPopupContainer: getPopupContainer,
928
932
  zIndex: zIndex,
929
933
  motion: motion,
934
+ margin: dropdownMargin,
930
935
  ref: this.optionsRef,
931
936
  content: content,
932
937
  visible: isOpen,
@@ -952,11 +957,13 @@ Cascader.propTypes = {
952
957
  'aria-required': PropTypes.bool,
953
958
  'aria-label': PropTypes.string,
954
959
  arrowIcon: PropTypes.node,
960
+ clearIcon: PropTypes.node,
955
961
  changeOnSelect: PropTypes.bool,
956
962
  defaultValue: PropTypes.oneOfType([PropTypes.string, PropTypes.array]),
957
963
  disabled: PropTypes.bool,
958
964
  dropdownClassName: PropTypes.string,
959
965
  dropdownStyle: PropTypes.object,
966
+ dropdownMargin: PropTypes.oneOfType([PropTypes.number, PropTypes.object]),
960
967
  emptyContent: PropTypes.node,
961
968
  motion: PropTypes.bool,
962
969
 
@@ -166,7 +166,8 @@ export default class DateInput extends BaseComponent {
166
166
  const {
167
167
  showClear,
168
168
  prefixCls,
169
- disabled
169
+ disabled,
170
+ clearIcon
170
171
  } = this.props;
171
172
  const allowClear = (rangeStart || rangeEnd) && showClear;
172
173
  return allowClear && !disabled ? /*#__PURE__*/React.createElement("div", {
@@ -175,7 +176,7 @@ export default class DateInput extends BaseComponent {
175
176
  "aria-label": "Clear range input value",
176
177
  className: "".concat(prefixCls, "-range-input-clearbtn"),
177
178
  onMouseDown: e => !disabled && this.handleRangeInputClear(e)
178
- }, /*#__PURE__*/React.createElement(IconClear, {
179
+ }, clearIcon ? clearIcon : /*#__PURE__*/React.createElement(IconClear, {
179
180
  "aria-hidden": true
180
181
  })) : null;
181
182
  }
@@ -3,6 +3,7 @@ import PropTypes from 'prop-types';
3
3
  import { ContextValue } from '../configProvider/context';
4
4
  import DatePickerFoundation, { DatePickerAdapter, DatePickerFoundationProps, DatePickerFoundationState, DayStatusType, PresetType, Type, RangeType } from '@douyinfe/semi-foundation/lib/es/datePicker/foundation';
5
5
  import BaseComponent from '../_base/baseComponent';
6
+ import { PopoverProps } from '../popover/index';
6
7
  import { DateInputProps } from './dateInput';
7
8
  import MonthsGrid, { MonthsGridProps } from './monthsGrid';
8
9
  import { YearAndMonthProps } from './yearAndMonth';
@@ -17,6 +18,7 @@ export interface DatePickerProps extends DatePickerFoundationProps {
17
18
  'aria-invalid'?: React.AriaAttributes['aria-invalid'];
18
19
  'aria-labelledby'?: React.AriaAttributes['aria-labelledby'];
19
20
  'aria-required'?: React.AriaAttributes['aria-required'];
21
+ clearIcon?: React.ReactNode;
20
22
  timePickerOpts?: TimePickerProps;
21
23
  bottomSlot?: React.ReactNode;
22
24
  insetLabel?: React.ReactNode;
@@ -33,6 +35,7 @@ export interface DatePickerProps extends DatePickerFoundationProps {
33
35
  locale?: Locale['DatePicker'];
34
36
  dateFnsLocale?: Locale['dateFnsLocale'];
35
37
  yearAndMonthOpts?: ScrollItemProps<any>;
38
+ dropdownMargin?: PopoverProps['margin'];
36
39
  }
37
40
  export declare type DatePickerState = DatePickerFoundationState;
38
41
  export default class DatePicker extends BaseComponent<DatePickerProps, DatePickerState> {
@@ -45,6 +48,7 @@ export default class DatePicker extends BaseComponent<DatePickerProps, DatePicke
45
48
  'aria-required': PropTypes.Requireable<boolean>;
46
49
  type: PropTypes.Requireable<"dateTime" | "date" | "month" | "dateRange" | "year" | "dateTimeRange">;
47
50
  size: PropTypes.Requireable<"default" | "small" | "large">;
51
+ clearIcon: PropTypes.Requireable<PropTypes.ReactNodeLike>;
48
52
  density: PropTypes.Requireable<"default" | "compact">;
49
53
  defaultValue: PropTypes.Requireable<NonNullable<string | number | object>>;
50
54
  value: PropTypes.Requireable<NonNullable<string | number | object>>;
@@ -58,7 +62,7 @@ export default class DatePicker extends BaseComponent<DatePickerProps, DatePicke
58
62
  max: PropTypes.Requireable<number>;
59
63
  placeholder: PropTypes.Requireable<NonNullable<string | any[]>>;
60
64
  presets: PropTypes.Requireable<any[]>;
61
- presetPosition: PropTypes.Requireable<"top" | "left" | "right" | "bottom">;
65
+ presetPosition: PropTypes.Requireable<"left" | "top" | "right" | "bottom">;
62
66
  onChange: PropTypes.Requireable<(...args: any[]) => any>;
63
67
  onChangeWithDateFirst: PropTypes.Requireable<boolean>;
64
68
  weekStartsOn: PropTypes.Requireable<number>;
@@ -75,7 +79,7 @@ export default class DatePicker extends BaseComponent<DatePickerProps, DatePicke
75
79
  insetLabel: PropTypes.Requireable<PropTypes.ReactNodeLike>;
76
80
  insetLabelId: PropTypes.Requireable<string>;
77
81
  zIndex: PropTypes.Requireable<number>;
78
- position: PropTypes.Requireable<"top" | "topLeft" | "topRight" | "left" | "leftTop" | "leftBottom" | "right" | "rightTop" | "rightBottom" | "bottom" | "bottomLeft" | "bottomRight" | "leftTopOver" | "rightTopOver">;
82
+ position: PropTypes.Requireable<"left" | "top" | "right" | "bottom" | "topLeft" | "topRight" | "leftTop" | "leftBottom" | "rightTop" | "rightBottom" | "bottomLeft" | "bottomRight" | "leftTopOver" | "rightTopOver">;
79
83
  getPopupContainer: PropTypes.Requireable<(...args: any[]) => any>;
80
84
  onCancel: PropTypes.Requireable<(...args: any[]) => any>;
81
85
  onConfirm: PropTypes.Requireable<(...args: any[]) => any>;
@@ -100,6 +104,7 @@ export default class DatePicker extends BaseComponent<DatePickerProps, DatePicke
100
104
  autoSwitchDate: PropTypes.Requireable<boolean>;
101
105
  dropdownClassName: PropTypes.Requireable<string>;
102
106
  dropdownStyle: PropTypes.Requireable<object>;
107
+ dropdownMargin: PropTypes.Requireable<NonNullable<number | object>>;
103
108
  topSlot: PropTypes.Requireable<PropTypes.ReactNodeLike>;
104
109
  bottomSlot: PropTypes.Requireable<PropTypes.ReactNodeLike>;
105
110
  dateFnsLocale: PropTypes.Requireable<object>;
@@ -237,7 +237,8 @@ export default class DatePicker extends BaseComponent {
237
237
  dateFnsLocale,
238
238
  stopPropagation,
239
239
  autoAdjustOverflow,
240
- spacing
240
+ spacing,
241
+ dropdownMargin
241
242
  } = this.props;
242
243
  return /*#__PURE__*/React.createElement(Popover, {
243
244
  getPopupContainer: getPopupContainer,
@@ -245,6 +246,7 @@ export default class DatePicker extends BaseComponent {
245
246
  autoAdjustOverflow: autoAdjustOverflow,
246
247
  zIndex: zIndex,
247
248
  motion: motion,
249
+ margin: dropdownMargin,
248
250
  content: this.renderPanel(locale, localeCode, dateFnsLocale),
249
251
  trigger: "custom",
250
252
  position: position,
@@ -647,6 +649,7 @@ export default class DatePicker extends BaseComponent {
647
649
 
648
650
  renderInner(extraProps) {
649
651
  const {
652
+ clearIcon,
650
653
  type,
651
654
  format,
652
655
  multiple,
@@ -688,6 +691,7 @@ export default class DatePicker extends BaseComponent {
688
691
 
689
692
  const props = Object.assign(Object.assign({}, extraProps), {
690
693
  placeholder: phText,
694
+ clearIcon,
691
695
  disabled: inputDisabled,
692
696
  inputValue,
693
697
  value: value,
@@ -769,6 +773,7 @@ DatePicker.propTypes = {
769
773
  'aria-required': PropTypes.bool,
770
774
  type: PropTypes.oneOf(strings.TYPE_SET),
771
775
  size: PropTypes.oneOf(strings.SIZE_SET),
776
+ clearIcon: PropTypes.node,
772
777
  density: PropTypes.oneOf(strings.DENSITY_SET),
773
778
  defaultValue: PropTypes.oneOfType([PropTypes.string, PropTypes.number, PropTypes.object, PropTypes.array]),
774
779
  value: PropTypes.oneOfType([PropTypes.string, PropTypes.number, PropTypes.object, PropTypes.array]),
@@ -824,6 +829,7 @@ DatePicker.propTypes = {
824
829
  autoSwitchDate: PropTypes.bool,
825
830
  dropdownClassName: PropTypes.string,
826
831
  dropdownStyle: PropTypes.object,
832
+ dropdownMargin: PropTypes.oneOfType([PropTypes.number, PropTypes.object]),
827
833
  topSlot: PropTypes.node,
828
834
  bottomSlot: PropTypes.node,
829
835
  dateFnsLocale: PropTypes.object,
@@ -51,7 +51,7 @@ export default class MonthsGrid extends BaseComponent<MonthsGridProps, MonthsGri
51
51
  onPanelChange: PropTypes.Requireable<(...args: any[]) => any>;
52
52
  focusRecordsRef: PropTypes.Requireable<object>;
53
53
  triggerRender: PropTypes.Requireable<(...args: any[]) => any>;
54
- presetPosition: PropTypes.Requireable<"top" | "left" | "right" | "bottom">;
54
+ presetPosition: PropTypes.Requireable<"left" | "top" | "right" | "bottom">;
55
55
  renderQuickControls: PropTypes.Requireable<PropTypes.ReactNodeLike>;
56
56
  renderDateInput: PropTypes.Requireable<PropTypes.ReactNodeLike>;
57
57
  };
@@ -13,7 +13,7 @@ export interface QuickControlProps {
13
13
  declare class QuickControl extends PureComponent<QuickControlProps> {
14
14
  static propTypes: {
15
15
  presets: PropTypes.Requireable<any[]>;
16
- presetPosition: PropTypes.Requireable<"top" | "left" | "right" | "bottom">;
16
+ presetPosition: PropTypes.Requireable<"left" | "top" | "right" | "bottom">;
17
17
  onPresetClick: PropTypes.Requireable<(...args: any[]) => any>;
18
18
  type: PropTypes.Requireable<string>;
19
19
  insetInput: PropTypes.Requireable<boolean>;
@@ -20,7 +20,7 @@ declare class YearAndMonth extends BaseComponent<YearAndMonthProps, YearAndMonth
20
20
  noBackBtn: PropTypes.Requireable<boolean>;
21
21
  disabledDate: PropTypes.Requireable<(...args: any[]) => any>;
22
22
  density: PropTypes.Requireable<string>;
23
- presetPosition: PropTypes.Requireable<"top" | "left" | "right" | "bottom">;
23
+ presetPosition: PropTypes.Requireable<"left" | "top" | "right" | "bottom">;
24
24
  renderQuickControls: PropTypes.Requireable<PropTypes.ReactNodeLike>;
25
25
  renderDateInput: PropTypes.Requireable<PropTypes.ReactNodeLike>;
26
26
  };
@@ -55,25 +55,26 @@ declare class Dropdown extends BaseComponent<DropdownProps, DropdownState> {
55
55
  static Title: typeof DropdownTitle;
56
56
  static contextType: React.Context<DropdownContextType>;
57
57
  static propTypes: {
58
- render: PropTypes.Requireable<PropTypes.ReactNodeLike>;
59
58
  children: PropTypes.Requireable<PropTypes.ReactNodeLike>;
60
- visible: PropTypes.Requireable<boolean>;
61
- position: PropTypes.Requireable<"top" | "topLeft" | "topRight" | "left" | "leftTop" | "leftBottom" | "right" | "rightTop" | "rightBottom" | "bottom" | "bottomLeft" | "bottomRight" | "leftTopOver" | "rightTopOver" | "leftBottomOver" | "rightBottomOver">;
59
+ contentClassName: PropTypes.Requireable<NonNullable<string | any[]>>;
60
+ className: PropTypes.Requireable<string>;
62
61
  getPopupContainer: PropTypes.Requireable<(...args: any[]) => any>;
62
+ margin: PropTypes.Requireable<NonNullable<number | object>>;
63
63
  mouseEnterDelay: PropTypes.Requireable<number>;
64
64
  mouseLeaveDelay: PropTypes.Requireable<number>;
65
- trigger: PropTypes.Requireable<string>;
66
- zIndex: PropTypes.Requireable<number>;
65
+ menu: PropTypes.Requireable<any[]>;
67
66
  motion: PropTypes.Requireable<NonNullable<boolean | object>>;
68
- className: PropTypes.Requireable<string>;
69
- contentClassName: PropTypes.Requireable<NonNullable<string | any[]>>;
70
- style: PropTypes.Requireable<object>;
71
67
  onVisibleChange: PropTypes.Requireable<(...args: any[]) => any>;
72
- rePosKey: PropTypes.Requireable<NonNullable<string | number>>;
73
- showTick: PropTypes.Requireable<boolean>;
74
68
  prefixCls: PropTypes.Requireable<string>;
69
+ position: PropTypes.Requireable<"left" | "top" | "right" | "bottom" | "topLeft" | "topRight" | "leftTop" | "leftBottom" | "rightTop" | "rightBottom" | "bottomLeft" | "bottomRight" | "leftTopOver" | "rightTopOver" | "leftBottomOver" | "rightBottomOver">;
70
+ rePosKey: PropTypes.Requireable<NonNullable<string | number>>;
71
+ render: PropTypes.Requireable<PropTypes.ReactNodeLike>;
75
72
  spacing: PropTypes.Requireable<number>;
76
- menu: PropTypes.Requireable<any[]>;
73
+ showTick: PropTypes.Requireable<boolean>;
74
+ style: PropTypes.Requireable<object>;
75
+ trigger: PropTypes.Requireable<string>;
76
+ visible: PropTypes.Requireable<boolean>;
77
+ zIndex: PropTypes.Requireable<number>;
77
78
  };
78
79
  static defaultProps: {
79
80
  onVisibleChange: (...args: any[]) => void;
@@ -172,10 +172,11 @@ class Dropdown extends BaseComponent {
172
172
  zIndex,
173
173
  className,
174
174
  motion,
175
+ margin,
175
176
  style,
176
177
  prefixCls
177
178
  } = _a,
178
- attr = __rest(_a, ["children", "position", "trigger", "onVisibleChange", "zIndex", "className", "motion", "style", "prefixCls"]);
179
+ attr = __rest(_a, ["children", "position", "trigger", "onVisibleChange", "zIndex", "className", "motion", "margin", "style", "prefixCls"]);
179
180
 
180
181
  let {
181
182
  spacing
@@ -197,6 +198,7 @@ class Dropdown extends BaseComponent {
197
198
  return /*#__PURE__*/React.createElement(Tooltip, Object.assign({
198
199
  zIndex: zIndex,
199
200
  motion: motion,
201
+ margin: margin,
200
202
  content: pop,
201
203
  className: className,
202
204
  prefixCls: prefixCls,
@@ -232,25 +234,26 @@ Dropdown.Divider = DropdownDivider;
232
234
  Dropdown.Title = DropdownTitle;
233
235
  Dropdown.contextType = DropdownContext;
234
236
  Dropdown.propTypes = {
235
- render: PropTypes.node,
236
237
  children: PropTypes.node,
237
- visible: PropTypes.bool,
238
- position: PropTypes.oneOf(positionSet),
238
+ contentClassName: PropTypes.oneOfType([PropTypes.string, PropTypes.array]),
239
+ className: PropTypes.string,
239
240
  getPopupContainer: PropTypes.func,
241
+ margin: PropTypes.oneOfType([PropTypes.number, PropTypes.object]),
240
242
  mouseEnterDelay: PropTypes.number,
241
243
  mouseLeaveDelay: PropTypes.number,
242
- trigger: PropTypes.oneOf(triggerSet),
243
- zIndex: PropTypes.number,
244
+ menu: PropTypes.array,
244
245
  motion: PropTypes.oneOfType([PropTypes.bool, PropTypes.func, PropTypes.object]),
245
- className: PropTypes.string,
246
- contentClassName: PropTypes.oneOfType([PropTypes.string, PropTypes.array]),
247
- style: PropTypes.object,
248
246
  onVisibleChange: PropTypes.func,
249
- rePosKey: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),
250
- showTick: PropTypes.bool,
251
247
  prefixCls: PropTypes.string,
248
+ position: PropTypes.oneOf(positionSet),
249
+ rePosKey: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),
250
+ render: PropTypes.node,
252
251
  spacing: PropTypes.number,
253
- menu: PropTypes.array
252
+ showTick: PropTypes.bool,
253
+ style: PropTypes.object,
254
+ trigger: PropTypes.oneOf(triggerSet),
255
+ visible: PropTypes.bool,
256
+ zIndex: PropTypes.number
254
257
  };
255
258
  Dropdown.defaultProps = {
256
259
  onVisibleChange: _noop,
@@ -57,13 +57,14 @@ declare class Form<Values extends Record<string, any> = any> extends BaseCompone
57
57
  static Select: React.ComponentType<import("utility-types").Subtract<{
58
58
  'aria-describedby'?: string;
59
59
  'aria-errormessage'?: string;
60
- 'aria-invalid'?: boolean | "true" | "false" | "grammar" | "spelling";
60
+ 'aria-invalid'?: boolean | "false" | "true" | "grammar" | "spelling";
61
61
  'aria-labelledby'?: string;
62
- 'aria-required'?: boolean | "true" | "false";
62
+ 'aria-required'?: boolean | "false" | "true";
63
63
  id?: string;
64
64
  autoFocus?: boolean;
65
65
  autoClearSearchValue?: boolean;
66
66
  arrowIcon?: React.ReactNode;
67
+ clearIcon?: React.ReactNode;
67
68
  defaultValue?: string | number | any[] | Record<string, any>;
68
69
  value?: string | number | any[] | Record<string, any>;
69
70
  placeholder?: React.ReactNode;
@@ -80,10 +81,16 @@ declare class Form<Values extends Record<string, any> = any> extends BaseCompone
80
81
  emptyContent?: React.ReactNode;
81
82
  onDropdownVisibleChange?: (visible: boolean) => void;
82
83
  zIndex?: number;
83
- position?: "top" | "topLeft" | "topRight" | "left" | "leftTop" | "leftBottom" | "right" | "rightTop" | "rightBottom" | "bottom" | "bottomLeft" | "bottomRight" | "leftTopOver" | "rightTopOver" | "leftBottomOver" | "rightBottomOver";
84
+ position?: "left" | "top" | "right" | "bottom" | "topLeft" | "topRight" | "leftTop" | "leftBottom" | "rightTop" | "rightBottom" | "bottomLeft" | "bottomRight" | "leftTopOver" | "rightTopOver" | "leftBottomOver" | "rightBottomOver";
84
85
  onSearch?: (value: string) => void;
85
86
  dropdownClassName?: string;
86
87
  dropdownStyle?: React.CSSProperties;
88
+ dropdownMargin?: number | {
89
+ marginLeft: number;
90
+ marginTop: number;
91
+ marginRight: number;
92
+ marginBottom: number;
93
+ };
87
94
  outerTopSlot?: React.ReactNode;
88
95
  innerTopSlot?: React.ReactNode;
89
96
  outerBottomSlot?: React.ReactNode;
@@ -128,7 +135,7 @@ declare class Form<Values extends Record<string, any> = any> extends BaseCompone
128
135
  preventScroll?: boolean;
129
136
  showRestTagsPopover?: boolean;
130
137
  restTagsPopoverProps?: import("../popover").PopoverProps;
131
- } & Pick<import("../tooltip").TooltipProps, "stopPropagation" | "getPopupContainer" | "motion" | "spacing" | "mouseEnterDelay" | "autoAdjustOverflow" | "mouseLeaveDelay"> & React.RefAttributes<any> & import("./interface").CommonFieldProps, import("./interface").CommonexcludeType>> & import("./interface").SelectStatic;
138
+ } & Pick<import("../tooltip").TooltipProps, "stopPropagation" | "motion" | "getPopupContainer" | "spacing" | "mouseEnterDelay" | "autoAdjustOverflow" | "mouseLeaveDelay"> & React.RefAttributes<any> & import("./interface").CommonFieldProps, import("./interface").CommonexcludeType>> & import("./interface").SelectStatic;
132
139
  static Checkbox: React.ComponentType<import("utility-types").Subtract<import("./interface").CommonFieldProps, import("./interface").RadioCheckboxExcludeProps> & import("../checkbox").CheckboxProps & import("./interface").RCIncludeType>;
133
140
  static CheckboxGroup: React.ComponentType<import("utility-types").Subtract<import("../checkbox").CheckboxGroupProps, import("./interface").CommonexcludeType> & import("./interface").CommonFieldProps & React.RefAttributes<any>>;
134
141
  static Radio: React.ComponentType<import("utility-types").Subtract<import("./interface").CommonFieldProps, import("./interface").RadioCheckboxExcludeProps> & import("../radio").RadioProps & import("./interface").RCIncludeType>;
@@ -5,13 +5,14 @@ declare const FormTextArea: import("react").ComponentType<import("utility-types"
5
5
  declare const FormSelect: import("react").ComponentType<import("utility-types").Subtract<{
6
6
  'aria-describedby'?: string;
7
7
  'aria-errormessage'?: string;
8
- 'aria-invalid'?: boolean | "true" | "false" | "grammar" | "spelling";
8
+ 'aria-invalid'?: boolean | "false" | "true" | "grammar" | "spelling";
9
9
  'aria-labelledby'?: string;
10
- 'aria-required'?: boolean | "true" | "false";
10
+ 'aria-required'?: boolean | "false" | "true";
11
11
  id?: string;
12
12
  autoFocus?: boolean;
13
13
  autoClearSearchValue?: boolean;
14
14
  arrowIcon?: import("react").ReactNode;
15
+ clearIcon?: import("react").ReactNode;
15
16
  defaultValue?: string | number | any[] | Record<string, any>;
16
17
  value?: string | number | any[] | Record<string, any>;
17
18
  placeholder?: import("react").ReactNode;
@@ -28,10 +29,16 @@ declare const FormSelect: import("react").ComponentType<import("utility-types").
28
29
  emptyContent?: import("react").ReactNode;
29
30
  onDropdownVisibleChange?: (visible: boolean) => void;
30
31
  zIndex?: number;
31
- position?: "top" | "topLeft" | "topRight" | "left" | "leftTop" | "leftBottom" | "right" | "rightTop" | "rightBottom" | "bottom" | "bottomLeft" | "bottomRight" | "leftTopOver" | "rightTopOver" | "leftBottomOver" | "rightBottomOver";
32
+ position?: "left" | "top" | "right" | "bottom" | "topLeft" | "topRight" | "leftTop" | "leftBottom" | "rightTop" | "rightBottom" | "bottomLeft" | "bottomRight" | "leftTopOver" | "rightTopOver" | "leftBottomOver" | "rightBottomOver";
32
33
  onSearch?: (value: string) => void;
33
34
  dropdownClassName?: string;
34
35
  dropdownStyle?: import("react").CSSProperties;
36
+ dropdownMargin?: number | {
37
+ marginLeft: number;
38
+ marginTop: number;
39
+ marginRight: number;
40
+ marginBottom: number;
41
+ };
35
42
  outerTopSlot?: import("react").ReactNode;
36
43
  innerTopSlot?: import("react").ReactNode;
37
44
  outerBottomSlot?: import("react").ReactNode;
@@ -76,7 +83,7 @@ declare const FormSelect: import("react").ComponentType<import("utility-types").
76
83
  preventScroll?: boolean;
77
84
  showRestTagsPopover?: boolean;
78
85
  restTagsPopoverProps?: import("../popover").PopoverProps;
79
- } & Pick<import("../tooltip").TooltipProps, "stopPropagation" | "getPopupContainer" | "motion" | "spacing" | "mouseEnterDelay" | "autoAdjustOverflow" | "mouseLeaveDelay"> & import("react").RefAttributes<any> & import("./interface").CommonFieldProps, import("./interface").CommonexcludeType>> & import("./interface").SelectStatic;
86
+ } & Pick<import("../tooltip").TooltipProps, "stopPropagation" | "motion" | "getPopupContainer" | "spacing" | "mouseEnterDelay" | "autoAdjustOverflow" | "mouseLeaveDelay"> & import("react").RefAttributes<any> & import("./interface").CommonFieldProps, import("./interface").CommonexcludeType>> & import("./interface").SelectStatic;
80
87
  declare const FormCheckboxGroup: import("react").ComponentType<import("utility-types").Subtract<import("../checkbox/checkboxGroup").CheckboxGroupProps, import("./interface").CommonexcludeType> & import("./interface").CommonFieldProps & import("react").RefAttributes<any>>;
81
88
  declare const FormCheckbox: import("react").ComponentType<import("utility-types").Subtract<import("./interface").CommonFieldProps, import("./interface").RadioCheckboxExcludeProps> & import("../checkbox/checkbox").CheckboxProps & import("./interface").RCIncludeType>;
82
89
  declare const FormRadioGroup: import("react").ComponentType<import("utility-types").Subtract<import("../radio/radioGroup").RadioGroupProps, import("./interface").CommonexcludeType> & import("./interface").CommonFieldProps & import("react").RefAttributes<any>>;
@@ -2,9 +2,21 @@ import _isUndefined from "lodash/isUndefined";
2
2
  import _isObject from "lodash/isObject";
3
3
  import _isBoolean from "lodash/isBoolean";
4
4
 
5
+ var __rest = this && this.__rest || function (s, e) {
6
+ var t = {};
7
+
8
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
9
+
10
+ if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
11
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
12
+ }
13
+ return t;
14
+ };
5
15
  /* eslint-disable jsx-a11y/click-events-have-key-events */
6
16
 
7
17
  /* eslint-disable jsx-a11y/no-static-element-interactions */
18
+
19
+
8
20
  import React from "react";
9
21
  import BaseComponent from "../_base/baseComponent";
10
22
  import PropTypes from "prop-types";
@@ -166,15 +178,23 @@ export default class Image extends BaseComponent {
166
178
  loadStatus,
167
179
  previewVisible
168
180
  } = this.state;
169
- const {
181
+
182
+ const _b = this.props,
183
+ {
184
+ src: picSrc,
170
185
  width,
171
186
  height,
172
187
  alt,
173
188
  style,
174
189
  className,
175
190
  crossOrigin,
176
- preview
177
- } = this.props;
191
+ preview,
192
+ fallback,
193
+ placeholder,
194
+ imageID
195
+ } = _b,
196
+ restProps = __rest(_b, ["src", "width", "height", "alt", "style", "className", "crossOrigin", "preview", "fallback", "placeholder", "imageID"]);
197
+
178
198
  const outerStyle = Object.assign({
179
199
  width,
180
200
  height
@@ -192,7 +212,7 @@ export default class Image extends BaseComponent {
192
212
  style: outerStyle,
193
213
  className: outerCls,
194
214
  onClick: this.handleClick
195
- }, /*#__PURE__*/React.createElement("img", {
215
+ }, /*#__PURE__*/React.createElement("img", Object.assign({}, restProps, {
196
216
  src: this.isInGroup() && this.isLazyLoad() ? undefined : src,
197
217
  "data-src": src,
198
218
  alt: alt,
@@ -205,7 +225,7 @@ export default class Image extends BaseComponent {
205
225
  crossOrigin: crossOrigin,
206
226
  onError: this.handleError,
207
227
  onLoad: this.handleLoaded
208
- }), loadStatus !== "success" && this.renderExtra(), canPreview && /*#__PURE__*/React.createElement(PreviewInner, Object.assign({}, previewProps, {
228
+ })), loadStatus !== "success" && this.renderExtra(), canPreview && /*#__PURE__*/React.createElement(PreviewInner, Object.assign({}, previewProps, {
209
229
  src: previewSrc,
210
230
  visible: previewVisible,
211
231
  onVisibleChange: this.handlePreviewVisibleChange,
@@ -33,6 +33,7 @@ export interface InputProps extends Omit<React.InputHTMLAttributes<HTMLInputElem
33
33
  insetLabelId?: string;
34
34
  size?: InputSize;
35
35
  className?: string;
36
+ clearIcon?: React.ReactNode;
36
37
  style?: React.CSSProperties;
37
38
  validateStatus?: ValidateStatus;
38
39
  onClear?: (e: React.MouseEvent<HTMLDivElement>) => void;
@@ -69,6 +70,7 @@ declare class Input extends BaseComponent<InputProps, InputState> {
69
70
  'aria-required': PropTypes.Requireable<boolean>;
70
71
  addonBefore: PropTypes.Requireable<PropTypes.ReactNodeLike>;
71
72
  addonAfter: PropTypes.Requireable<PropTypes.ReactNodeLike>;
73
+ clearIcon: PropTypes.Requireable<PropTypes.ReactNodeLike>;
72
74
  prefix: PropTypes.Requireable<PropTypes.ReactNodeLike>;
73
75
  suffix: PropTypes.Requireable<PropTypes.ReactNodeLike>;
74
76
  mode: PropTypes.Requireable<"password">;
@@ -203,6 +203,9 @@ class Input extends BaseComponent {
203
203
 
204
204
  renderClearBtn() {
205
205
  const clearCls = cls("".concat(prefixCls, "-clearbtn"));
206
+ const {
207
+ clearIcon
208
+ } = this.props;
206
209
  const allowClear = this.foundation.isAllowClear(); // use onMouseDown to fix issue 1203
207
210
 
208
211
  if (allowClear) {
@@ -212,7 +215,7 @@ class Input extends BaseComponent {
212
215
  React.createElement("div", {
213
216
  className: clearCls,
214
217
  onMouseDown: this.handleClear
215
- }, /*#__PURE__*/React.createElement(IconClear, null))
218
+ }, clearIcon ? clearIcon : /*#__PURE__*/React.createElement(IconClear, null))
216
219
  );
217
220
  }
218
221
 
@@ -349,6 +352,7 @@ class Input extends BaseComponent {
349
352
  addonAfter,
350
353
  addonBefore,
351
354
  autofocus,
355
+ clearIcon,
352
356
  className,
353
357
  disabled,
354
358
  defaultValue,
@@ -373,7 +377,7 @@ class Input extends BaseComponent {
373
377
  getValueLength,
374
378
  preventScroll
375
379
  } = _a,
376
- rest = __rest(_a, ["addonAfter", "addonBefore", "autofocus", "className", "disabled", "defaultValue", "placeholder", "prefix", "mode", "insetLabel", "insetLabelId", "validateStatus", "type", "readonly", "size", "suffix", "style", "showClear", "onEnterPress", "onClear", "hideSuffix", "inputStyle", "forwardRef", "maxLength", "getValueLength", "preventScroll"]);
380
+ rest = __rest(_a, ["addonAfter", "addonBefore", "autofocus", "clearIcon", "className", "disabled", "defaultValue", "placeholder", "prefix", "mode", "insetLabel", "insetLabelId", "validateStatus", "type", "readonly", "size", "suffix", "style", "showClear", "onEnterPress", "onClear", "hideSuffix", "inputStyle", "forwardRef", "maxLength", "getValueLength", "preventScroll"]);
377
381
 
378
382
  const {
379
383
  value,
@@ -466,6 +470,7 @@ Input.propTypes = {
466
470
  'aria-required': PropTypes.bool,
467
471
  addonBefore: PropTypes.node,
468
472
  addonAfter: PropTypes.node,
473
+ clearIcon: PropTypes.node,
469
474
  prefix: PropTypes.node,
470
475
  suffix: PropTypes.node,
471
476
  mode: PropTypes.oneOf(modeSet),