@douyinfe/semi-ui 2.32.2 → 2.33.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 (61) hide show
  1. package/dist/css/semi.css +184 -1
  2. package/dist/css/semi.min.css +1 -1
  3. package/dist/umd/semi-ui.js +3409 -3351
  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/cascader/index.d.ts +2 -0
  8. package/lib/cjs/cascader/index.js +5 -1
  9. package/lib/cjs/collapse/collapse-context.d.ts +1 -0
  10. package/lib/cjs/collapse/index.d.ts +2 -0
  11. package/lib/cjs/collapse/index.js +6 -2
  12. package/lib/cjs/collapse/item.d.ts +2 -0
  13. package/lib/cjs/collapse/item.js +13 -2
  14. package/lib/cjs/datePicker/dateInput.d.ts +2 -0
  15. package/lib/cjs/datePicker/dateInput.js +10 -3
  16. package/lib/cjs/datePicker/datePicker.d.ts +3 -1
  17. package/lib/cjs/datePicker/datePicker.js +20 -7
  18. package/lib/cjs/form/baseForm.d.ts +1 -0
  19. package/lib/cjs/form/field.d.ts +1 -0
  20. package/lib/cjs/input/index.d.ts +3 -0
  21. package/lib/cjs/input/index.js +9 -5
  22. package/lib/cjs/input/textarea.d.ts +1 -0
  23. package/lib/cjs/input/textarea.js +6 -2
  24. package/lib/cjs/select/index.d.ts +2 -0
  25. package/lib/cjs/select/index.js +5 -1
  26. package/lib/cjs/timePicker/TimeInput.d.ts +3 -1
  27. package/lib/cjs/timePicker/TimeInput.js +2 -0
  28. package/lib/cjs/timePicker/TimePicker.d.ts +3 -0
  29. package/lib/cjs/timePicker/TimePicker.js +2 -0
  30. package/lib/cjs/timePicker/index.d.ts +2 -0
  31. package/lib/cjs/transfer/index.js +1 -1
  32. package/lib/cjs/treeSelect/index.d.ts +1 -0
  33. package/lib/cjs/treeSelect/index.js +5 -1
  34. package/lib/es/cascader/index.d.ts +2 -0
  35. package/lib/es/cascader/index.js +5 -1
  36. package/lib/es/collapse/collapse-context.d.ts +1 -0
  37. package/lib/es/collapse/index.d.ts +2 -0
  38. package/lib/es/collapse/index.js +6 -2
  39. package/lib/es/collapse/item.d.ts +2 -0
  40. package/lib/es/collapse/item.js +13 -2
  41. package/lib/es/datePicker/dateInput.d.ts +2 -0
  42. package/lib/es/datePicker/dateInput.js +10 -3
  43. package/lib/es/datePicker/datePicker.d.ts +3 -1
  44. package/lib/es/datePicker/datePicker.js +19 -7
  45. package/lib/es/form/baseForm.d.ts +1 -0
  46. package/lib/es/form/field.d.ts +1 -0
  47. package/lib/es/input/index.d.ts +3 -0
  48. package/lib/es/input/index.js +9 -5
  49. package/lib/es/input/textarea.d.ts +1 -0
  50. package/lib/es/input/textarea.js +6 -2
  51. package/lib/es/select/index.d.ts +2 -0
  52. package/lib/es/select/index.js +5 -1
  53. package/lib/es/timePicker/TimeInput.d.ts +3 -1
  54. package/lib/es/timePicker/TimeInput.js +2 -0
  55. package/lib/es/timePicker/TimePicker.d.ts +3 -0
  56. package/lib/es/timePicker/TimePicker.js +2 -0
  57. package/lib/es/timePicker/index.d.ts +2 -0
  58. package/lib/es/transfer/index.js +1 -1
  59. package/lib/es/treeSelect/index.d.ts +1 -0
  60. package/lib/es/treeSelect/index.js +5 -1
  61. package/package.json +8 -8
@@ -101,6 +101,7 @@ declare class TreeSelect extends BaseComponent<TreeSelectProps, TreeSelectState>
101
101
  'aria-invalid': PropTypes.Requireable<boolean>;
102
102
  'aria-labelledby': PropTypes.Requireable<string>;
103
103
  'aria-required': PropTypes.Requireable<boolean>;
104
+ borderless: PropTypes.Requireable<boolean>;
104
105
  loadedKeys: PropTypes.Requireable<string[]>;
105
106
  loadData: PropTypes.Requireable<(...args: any[]) => any>;
106
107
  onLoad: PropTypes.Requireable<(...args: any[]) => any>;
@@ -441,7 +441,8 @@ class TreeSelect extends _baseComponent.default {
441
441
  showClear,
442
442
  leafOnly,
443
443
  searchPosition,
444
- triggerRender
444
+ triggerRender,
445
+ borderless
445
446
  } = this.props;
446
447
  const {
447
448
  inputValue,
@@ -460,6 +461,7 @@ class TreeSelect extends _baseComponent.default {
460
461
  const isEmptyTriggerSearch = isTriggerPositionSearch && (0, _isEmpty2.default)(checkedKeys);
461
462
  const isValueTriggerSearch = isTriggerPositionSearch && !(0, _isEmpty2.default)(checkedKeys);
462
463
  const classNames = useCustomTrigger ? (0, _classnames.default)(className) : (0, _classnames.default)(prefixcls, {
464
+ [`${prefixcls}-borderless`]: borderless,
463
465
  [`${prefixcls}-focus`]: isFocus,
464
466
  [`${prefixcls}-disabled`]: disabled,
465
467
  [`${prefixcls}-single`]: !multiple,
@@ -1343,6 +1345,7 @@ TreeSelect.propTypes = {
1343
1345
  'aria-invalid': _propTypes.default.bool,
1344
1346
  'aria-labelledby': _propTypes.default.string,
1345
1347
  'aria-required': _propTypes.default.bool,
1348
+ borderless: _propTypes.default.bool,
1346
1349
  loadedKeys: _propTypes.default.arrayOf(_propTypes.default.string),
1347
1350
  loadData: _propTypes.default.func,
1348
1351
  onLoad: _propTypes.default.func,
@@ -1426,6 +1429,7 @@ TreeSelect.propTypes = {
1426
1429
  clickTriggerToHide: _propTypes.default.bool
1427
1430
  };
1428
1431
  TreeSelect.defaultProps = {
1432
+ borderless: false,
1429
1433
  searchPosition: _constants.strings.SEARCH_POSITION_DROPDOWN,
1430
1434
  arrowIcon: /*#__PURE__*/_react.default.createElement(_semiIcons.IconChevronDown, null),
1431
1435
  autoExpandParent: false,
@@ -75,6 +75,7 @@ declare class Cascader extends BaseComponent<CascaderProps, CascaderState> {
75
75
  'aria-required': PropTypes.Requireable<boolean>;
76
76
  'aria-label': PropTypes.Requireable<string>;
77
77
  arrowIcon: PropTypes.Requireable<PropTypes.ReactNodeLike>;
78
+ borderless: PropTypes.Requireable<boolean>;
78
79
  clearIcon: PropTypes.Requireable<PropTypes.ReactNodeLike>;
79
80
  changeOnSelect: PropTypes.Requireable<boolean>;
80
81
  defaultValue: PropTypes.Requireable<NonNullable<string | any[]>>;
@@ -143,6 +144,7 @@ declare class Cascader extends BaseComponent<CascaderProps, CascaderState> {
143
144
  position: PropTypes.Requireable<string>;
144
145
  };
145
146
  static defaultProps: {
147
+ borderless: boolean;
146
148
  leafOnly: boolean;
147
149
  arrowIcon: JSX.Element;
148
150
  stopPropagation: boolean;
@@ -434,7 +434,8 @@ class Cascader extends BaseComponent {
434
434
  insetLabel,
435
435
  triggerRender,
436
436
  showClear,
437
- id
437
+ id,
438
+ borderless
438
439
  } = this.props;
439
440
  const {
440
441
  isOpen,
@@ -445,6 +446,7 @@ class Cascader extends BaseComponent {
445
446
  const filterable = Boolean(filterTreeNode);
446
447
  const useCustomTrigger = typeof triggerRender === 'function';
447
448
  const classNames = useCustomTrigger ? cls(className) : cls(prefixcls, className, {
449
+ [`${prefixcls}-borderless`]: borderless,
448
450
  [`${prefixcls}-focus`]: isFocus || isOpen && !isInput,
449
451
  [`${prefixcls}-disabled`]: disabled,
450
452
  [`${prefixcls}-single`]: true,
@@ -977,6 +979,7 @@ Cascader.propTypes = {
977
979
  'aria-required': PropTypes.bool,
978
980
  'aria-label': PropTypes.string,
979
981
  arrowIcon: PropTypes.node,
982
+ borderless: PropTypes.bool,
980
983
  clearIcon: PropTypes.node,
981
984
  changeOnSelect: PropTypes.bool,
982
985
  defaultValue: PropTypes.oneOfType([PropTypes.string, PropTypes.array]),
@@ -1047,6 +1050,7 @@ Cascader.propTypes = {
1047
1050
  position: PropTypes.string
1048
1051
  };
1049
1052
  Cascader.defaultProps = {
1053
+ borderless: false,
1050
1054
  leafOnly: false,
1051
1055
  arrowIcon: /*#__PURE__*/React.createElement(IconChevronDown, null),
1052
1056
  stopPropagation: true,
@@ -3,6 +3,7 @@ export interface CollapseContextType {
3
3
  activeSet: Set<string>;
4
4
  expandIcon: React.ReactNode;
5
5
  collapseIcon: React.ReactNode;
6
+ clickHeaderToExpand: boolean;
6
7
  keepDOM: boolean;
7
8
  expandIconPosition: 'left' | 'right';
8
9
  onClick: (activeKey: string, e: React.MouseEvent) => void;
@@ -20,6 +20,7 @@ declare class Collapse extends BaseComponent<CollapseReactProps, CollapseState>
20
20
  activeKey: PropTypes.Requireable<NonNullable<string | any[]>>;
21
21
  defaultActiveKey: PropTypes.Requireable<NonNullable<string | any[]>>;
22
22
  accordion: PropTypes.Requireable<boolean>;
23
+ clickHeaderToExpand: PropTypes.Requireable<boolean>;
23
24
  onChange: PropTypes.Requireable<(...args: any[]) => any>;
24
25
  expandIcon: PropTypes.Requireable<PropTypes.ReactNodeLike>;
25
26
  collapseIcon: PropTypes.Requireable<PropTypes.ReactNodeLike>;
@@ -31,6 +32,7 @@ declare class Collapse extends BaseComponent<CollapseReactProps, CollapseState>
31
32
  };
32
33
  static defaultProps: {
33
34
  defaultActiveKey: string;
35
+ clickHeaderToExpand: boolean;
34
36
  onChange: typeof noop;
35
37
  expandIconPosition: string;
36
38
  };
@@ -81,9 +81,10 @@ class Collapse extends BaseComponent {
81
81
  expandIconPosition,
82
82
  expandIcon,
83
83
  collapseIcon,
84
- children
84
+ children,
85
+ clickHeaderToExpand
85
86
  } = _a,
86
- rest = __rest(_a, ["defaultActiveKey", "accordion", "style", "motion", "className", "keepDOM", "expandIconPosition", "expandIcon", "collapseIcon", "children"]);
87
+ rest = __rest(_a, ["defaultActiveKey", "accordion", "style", "motion", "className", "keepDOM", "expandIconPosition", "expandIcon", "collapseIcon", "children", "clickHeaderToExpand"]);
87
88
 
88
89
  const clsPrefix = cls(cssClasses.PREFIX, className);
89
90
  const {
@@ -97,6 +98,7 @@ class Collapse extends BaseComponent {
97
98
  activeSet,
98
99
  expandIcon,
99
100
  collapseIcon,
101
+ clickHeaderToExpand,
100
102
  keepDOM,
101
103
  expandIconPosition,
102
104
  onClick: this.onChange,
@@ -112,6 +114,7 @@ Collapse.propTypes = {
112
114
  activeKey: PropTypes.oneOfType([PropTypes.string, PropTypes.array]),
113
115
  defaultActiveKey: PropTypes.oneOfType([PropTypes.string, PropTypes.array]),
114
116
  accordion: PropTypes.bool,
117
+ clickHeaderToExpand: PropTypes.bool,
115
118
  onChange: PropTypes.func,
116
119
  expandIcon: PropTypes.node,
117
120
  collapseIcon: PropTypes.node,
@@ -123,6 +126,7 @@ Collapse.propTypes = {
123
126
  };
124
127
  Collapse.defaultProps = {
125
128
  defaultActiveKey: '',
129
+ clickHeaderToExpand: true,
126
130
  onChange: noop,
127
131
  expandIconPosition: 'right'
128
132
  };
@@ -14,6 +14,7 @@ export interface CollapsePanelProps {
14
14
  }
15
15
  export default class CollapsePanel extends PureComponent<CollapsePanelProps> {
16
16
  static contextType: React.Context<CollapseContextType>;
17
+ headerExpandIconTriggerRef: React.RefObject<HTMLElement>;
17
18
  static propTypes: {
18
19
  itemKey: PropTypes.Requireable<string>;
19
20
  extra: PropTypes.Requireable<PropTypes.ReactNodeLike>;
@@ -30,5 +31,6 @@ export default class CollapsePanel extends PureComponent<CollapsePanelProps> {
30
31
  private ariaID;
31
32
  context: CollapseContextType;
32
33
  renderHeader(active: boolean, expandIconEnable?: boolean): JSX.Element;
34
+ handleClick: (itemKey: string, e: React.MouseEvent) => void;
33
35
  render(): JSX.Element;
34
36
  }
@@ -20,7 +20,18 @@ import { getUuidShort } from '@douyinfe/semi-foundation/lib/es/utils/uuid';
20
20
  export default class CollapsePanel extends PureComponent {
21
21
  constructor() {
22
22
  super(...arguments);
23
+ this.headerExpandIconTriggerRef = /*#__PURE__*/React.createRef();
23
24
  this.ariaID = getUuidShort({});
25
+
26
+ this.handleClick = (itemKey, e) => {
27
+ var _a; // Judge user click Icon or Header
28
+ // Don't mount this func into icon span wrapper, or get triggered twice because of event propagation
29
+
30
+
31
+ if (this.context.clickHeaderToExpand || ((_a = this.headerExpandIconTriggerRef.current) === null || _a === void 0 ? void 0 : _a.contains(e.target))) {
32
+ this.context.onClick(itemKey, e);
33
+ }
34
+ };
24
35
  }
25
36
 
26
37
  renderHeader(active) {
@@ -47,6 +58,7 @@ export default class CollapsePanel extends PureComponent {
47
58
  }
48
59
 
49
60
  const icon = /*#__PURE__*/React.createElement("span", {
61
+ ref: this.headerExpandIconTriggerRef,
50
62
  "aria-hidden": 'true',
51
63
  className: cls([`${cssClasses.PREFIX}-header-icon`, {
52
64
  [`${cssClasses.PREFIX}-header-iconDisabled`]: !expandIconEnable
@@ -81,7 +93,6 @@ export default class CollapsePanel extends PureComponent {
81
93
  keepDOM,
82
94
  expandIconPosition,
83
95
  activeSet,
84
- onClick,
85
96
  motion
86
97
  } = this.context;
87
98
  const active = activeSet.has(itemKey);
@@ -105,7 +116,7 @@ export default class CollapsePanel extends PureComponent {
105
116
  "aria-disabled": disabled,
106
117
  "aria-expanded": active ? 'true' : 'false',
107
118
  "aria-owns": this.ariaID,
108
- onClick: e => !disabled && onClick(itemKey, e)
119
+ onClick: e => !disabled && this.handleClick(itemKey, e)
109
120
  }, this.renderHeader(active, children !== undefined && !disabled)), children && /*#__PURE__*/React.createElement(Collapsible, {
110
121
  isOpen: active,
111
122
  keepDOM: keepDOM,
@@ -21,6 +21,7 @@ export interface DateInputProps extends DateInputFoundationProps, BaseProps {
21
21
  }
22
22
  export default class DateInput extends BaseComponent<DateInputProps, {}> {
23
23
  static propTypes: {
24
+ borderless: PropTypes.Requireable<boolean>;
24
25
  onClick: PropTypes.Requireable<(...args: any[]) => any>;
25
26
  onChange: PropTypes.Requireable<(...args: any[]) => any>;
26
27
  onEnterPress: PropTypes.Requireable<(...args: any[]) => any>;
@@ -49,6 +50,7 @@ export default class DateInput extends BaseComponent<DateInputProps, {}> {
49
50
  defaultPickerValue: PropTypes.Requireable<NonNullable<string | number | object>>;
50
51
  };
51
52
  static defaultProps: {
53
+ borderless: boolean;
52
54
  showClear: boolean;
53
55
  onClick: typeof noop;
54
56
  onChange: typeof noop;
@@ -214,7 +214,8 @@ export default class DateInput extends BaseComponent {
214
214
  rangeInputEndRef,
215
215
  rangeInputFocus,
216
216
  prefixCls,
217
- rangeSeparator
217
+ rangeSeparator,
218
+ borderless
218
219
  } = rangeProps;
219
220
  const [rangeStart, rangeEnd = ''] = text.split(rangeSeparator) || [];
220
221
  const rangeSize = size === 'large' ? 'default' : 'small';
@@ -222,15 +223,18 @@ export default class DateInput extends BaseComponent {
222
223
  const [rangeStartPlaceholder, rangeEndPlaceholder] = rangePlaceholder;
223
224
  const inputLeftWrapperCls = cls(`${prefixCls}-range-input-wrapper-start`, `${prefixCls}-range-input-wrapper`, {
224
225
  [`${prefixCls}-range-input-wrapper-active`]: rangeInputFocus === 'rangeStart' && !disabled,
225
- [`${prefixCls}-range-input-wrapper-start-with-prefix`]: this.props.prefix || this.props.insetLabel
226
+ [`${prefixCls}-range-input-wrapper-start-with-prefix`]: this.props.prefix || this.props.insetLabel,
227
+ [`${prefixCls}-borderless`]: borderless
226
228
  });
227
229
  const inputRightWrapperCls = cls(`${prefixCls}-range-input-wrapper-end`, `${prefixCls}-range-input-wrapper`, {
228
- [`${prefixCls}-range-input-wrapper-active`]: rangeInputFocus === 'rangeEnd' && !disabled
230
+ [`${prefixCls}-range-input-wrapper-active`]: rangeInputFocus === 'rangeEnd' && !disabled,
231
+ [`${prefixCls}-borderless`]: borderless
229
232
  });
230
233
  return /*#__PURE__*/React.createElement(React.Fragment, null, this.renderRangePrefix(), /*#__PURE__*/React.createElement("div", {
231
234
  onClick: e => !disabled && this.handleRangeInputFocus(e, 'rangeStart'),
232
235
  className: `${inputCls} ${inputLeftWrapperCls}`
233
236
  }, /*#__PURE__*/React.createElement(Input, {
237
+ borderless: borderless,
234
238
  size: rangeSize,
235
239
  style: inputStyle,
236
240
  disabled: disabled,
@@ -248,6 +252,7 @@ export default class DateInput extends BaseComponent {
248
252
  className: `${inputCls} ${inputRightWrapperCls}`,
249
253
  onClick: e => !disabled && this.handleRangeInputFocus(e, 'rangeEnd')
250
254
  }, /*#__PURE__*/React.createElement(Input, {
255
+ borderless: borderless,
251
256
  size: rangeSize,
252
257
  style: inputStyle,
253
258
  disabled: disabled,
@@ -438,6 +443,7 @@ export default class DateInput extends BaseComponent {
438
443
 
439
444
  }
440
445
  DateInput.propTypes = {
446
+ borderless: PropTypes.bool,
441
447
  onClick: PropTypes.func,
442
448
  onChange: PropTypes.func,
443
449
  onEnterPress: PropTypes.func,
@@ -466,6 +472,7 @@ DateInput.propTypes = {
466
472
  defaultPickerValue: PropTypes.oneOfType([PropTypes.string, PropTypes.number, PropTypes.object, PropTypes.array])
467
473
  };
468
474
  DateInput.defaultProps = {
475
+ borderless: false,
469
476
  showClear: true,
470
477
  onClick: noop,
471
478
  onChange: noop,
@@ -57,6 +57,7 @@ export default class DatePicker extends BaseComponent<DatePickerProps, DatePicke
57
57
  'aria-invalid': PropTypes.Requireable<boolean>;
58
58
  'aria-labelledby': PropTypes.Requireable<string>;
59
59
  'aria-required': PropTypes.Requireable<boolean>;
60
+ borderless: PropTypes.Requireable<boolean>;
60
61
  type: PropTypes.Requireable<"dateTime" | "date" | "month" | "dateRange" | "year" | "monthRange" | "dateTimeRange">;
61
62
  size: PropTypes.Requireable<"default" | "small" | "large">;
62
63
  clearIcon: PropTypes.Requireable<PropTypes.ReactNodeLike>;
@@ -128,6 +129,7 @@ export default class DatePicker extends BaseComponent<DatePickerProps, DatePicke
128
129
  };
129
130
  static defaultProps: {
130
131
  onChangeWithDateFirst: boolean;
132
+ borderless: boolean;
131
133
  autoAdjustOverflow: boolean;
132
134
  stopPropagation: boolean;
133
135
  motion: boolean;
@@ -227,7 +229,7 @@ export default class DatePicker extends BaseComponent<DatePickerProps, DatePicke
227
229
  handleInsetDateFocus: (e: React.FocusEvent, rangeType: 'rangeStart' | 'rangeEnd') => void;
228
230
  handleInsetTimeFocus: () => void;
229
231
  handlePanelVisibleChange: (visible: boolean) => void;
230
- renderInner(): JSX.Element;
232
+ renderInner(extraProps?: Partial<DatePickerProps>): JSX.Element;
231
233
  handleConfirm: (e: React.MouseEvent) => void;
232
234
  handleCancel: (e: React.MouseEvent) => void;
233
235
  renderFooter: (locale: Locale['DatePicker'], localeCode: string) => JSX.Element;
@@ -1,3 +1,4 @@
1
+ import _pick from "lodash/pick";
1
2
  import _isEqual from "lodash/isEqual";
2
3
  import _isFunction from "lodash/isFunction";
3
4
  import _get from "lodash/get";
@@ -706,7 +707,7 @@ export default class DatePicker extends BaseComponent {
706
707
  })) : null;
707
708
  }
708
709
 
709
- renderInner() {
710
+ renderInner(extraProps) {
710
711
  const {
711
712
  clearIcon,
712
713
  type,
@@ -727,7 +728,8 @@ export default class DatePicker extends BaseComponent {
727
728
  inputReadOnly,
728
729
  rangeSeparator,
729
730
  insetInput,
730
- defaultPickerValue
731
+ defaultPickerValue,
732
+ borderless
731
733
  } = this.props;
732
734
  const {
733
735
  value,
@@ -743,12 +745,13 @@ export default class DatePicker extends BaseComponent {
743
745
  [`${cssClasses.PREFIX}-range-input-${size}`]: isRangeType && size,
744
746
  [`${cssClasses.PREFIX}-range-input-active`]: isRangeType && rangeInputFocus && !inputDisabled,
745
747
  [`${cssClasses.PREFIX}-range-input-disabled`]: isRangeType && inputDisabled,
746
- [`${cssClasses.PREFIX}-range-input-${validateStatus}`]: isRangeType && validateStatus
748
+ [`${cssClasses.PREFIX}-range-input-${validateStatus}`]: isRangeType && validateStatus,
749
+ [`${cssClasses.PREFIX}-borderless`]: borderless
747
750
  });
748
751
  const phText = placeholder || locale.placeholder[type]; // i18n
749
752
  // These values should be passed to triggerRender, do not delete any key if it is not necessary
750
753
 
751
- const props = {
754
+ const props = Object.assign(Object.assign({}, extraProps), {
752
755
  placeholder: phText,
753
756
  clearIcon,
754
757
  disabled: inputDisabled,
@@ -784,7 +787,7 @@ export default class DatePicker extends BaseComponent {
784
787
  rangeInputStartRef: insetInput ? null : this.rangeInputStartRef,
785
788
  rangeInputEndRef: insetInput ? null : this.rangeInputEndRef,
786
789
  inputRef: this.inputRef
787
- };
790
+ });
788
791
  return /*#__PURE__*/React.createElement("div", {
789
792
  // tooltip will mount a11y props to children
790
793
  // eslint-disable-next-line jsx-a11y/role-has-required-aria-props
@@ -804,7 +807,8 @@ export default class DatePicker extends BaseComponent {
804
807
  const {
805
808
  style,
806
809
  className,
807
- prefixCls
810
+ prefixCls,
811
+ type
808
812
  } = this.props;
809
813
  const outerProps = {
810
814
  style,
@@ -818,7 +822,13 @@ export default class DatePicker extends BaseComponent {
818
822
  'aria-describedby': this.props['aria-describedby'],
819
823
  'aria-required': this.props['aria-required']
820
824
  };
821
- const inner = this.renderInner();
825
+ const innerPropKeys = [];
826
+
827
+ if (!type.toLowerCase().includes("range")) {
828
+ innerPropKeys.push("borderless");
829
+ }
830
+
831
+ const inner = this.renderInner(_pick(this.props, innerPropKeys));
822
832
  const wrappedInner = this.wrapPopover(inner);
823
833
  return /*#__PURE__*/React.createElement("div", Object.assign({}, outerProps), wrappedInner);
824
834
  }
@@ -831,6 +841,7 @@ DatePicker.propTypes = {
831
841
  'aria-invalid': PropTypes.bool,
832
842
  'aria-labelledby': PropTypes.string,
833
843
  'aria-required': PropTypes.bool,
844
+ borderless: PropTypes.bool,
834
845
  type: PropTypes.oneOf(strings.TYPE_SET),
835
846
  size: PropTypes.oneOf(strings.SIZE_SET),
836
847
  clearIcon: PropTypes.node,
@@ -904,6 +915,7 @@ DatePicker.propTypes = {
904
915
  };
905
916
  DatePicker.defaultProps = {
906
917
  onChangeWithDateFirst: true,
918
+ borderless: false,
907
919
  autoAdjustOverflow: true,
908
920
  stopPropagation: true,
909
921
  motion: true,
@@ -64,6 +64,7 @@ declare class Form<Values extends Record<string, any> = any> extends BaseCompone
64
64
  autoFocus?: boolean;
65
65
  autoClearSearchValue?: boolean;
66
66
  arrowIcon?: React.ReactNode;
67
+ borderless?: boolean;
67
68
  clearIcon?: React.ReactNode;
68
69
  defaultValue?: string | number | any[] | Record<string, any>;
69
70
  value?: string | number | any[] | Record<string, any>;
@@ -12,6 +12,7 @@ declare const FormSelect: import("react").ComponentType<import("utility-types").
12
12
  autoFocus?: boolean;
13
13
  autoClearSearchValue?: boolean;
14
14
  arrowIcon?: import("react").ReactNode;
15
+ borderless?: boolean;
15
16
  clearIcon?: import("react").ReactNode;
16
17
  defaultValue?: string | number | any[] | Record<string, any>;
17
18
  value?: string | number | any[] | Record<string, any>;
@@ -17,6 +17,7 @@ export interface InputProps extends Omit<React.InputHTMLAttributes<HTMLInputElem
17
17
  'aria-required'?: React.AriaAttributes['aria-required'];
18
18
  addonBefore?: React.ReactNode;
19
19
  addonAfter?: React.ReactNode;
20
+ borderless?: boolean;
20
21
  prefix?: React.ReactNode;
21
22
  suffix?: React.ReactNode;
22
23
  mode?: InputMode;
@@ -101,6 +102,7 @@ declare class Input extends BaseComponent<InputProps, InputState> {
101
102
  inputStyle: PropTypes.Requireable<object>;
102
103
  getValueLength: PropTypes.Requireable<(...args: any[]) => any>;
103
104
  preventScroll: PropTypes.Requireable<boolean>;
105
+ borderless: PropTypes.Requireable<boolean>;
104
106
  };
105
107
  static defaultProps: {
106
108
  addonBefore: string;
@@ -124,6 +126,7 @@ declare class Input extends BaseComponent<InputProps, InputState> {
124
126
  onKeyPress: (...args: any[]) => void;
125
127
  onEnterPress: (...args: any[]) => void;
126
128
  validateStatus: string;
129
+ noBg: boolean;
127
130
  };
128
131
  inputRef: React.RefObject<HTMLInputElement>;
129
132
  prefixRef: React.RefObject<React.ReactNode>;
@@ -375,9 +375,10 @@ class Input extends BaseComponent {
375
375
  forwardRef,
376
376
  maxLength,
377
377
  getValueLength,
378
- preventScroll
378
+ preventScroll,
379
+ borderless
379
380
  } = _a,
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"]);
381
+ 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", "borderless"]);
381
382
 
382
383
  const {
383
384
  value,
@@ -405,7 +406,8 @@ class Input extends BaseComponent {
405
406
  [`${wrapperPrefix}-clearable`]: showClear,
406
407
  [`${wrapperPrefix}-modebtn`]: mode === 'password',
407
408
  [`${wrapperPrefix}-hidden`]: type === 'hidden',
408
- [`${wrapperPrefix}-${size}`]: size
409
+ [`${wrapperPrefix}-${size}`]: size,
410
+ [`${prefixCls}-borderless`]: borderless
409
411
  });
410
412
  const inputCls = cls(prefixCls, {
411
413
  [`${prefixCls}-${size}`]: size,
@@ -500,7 +502,8 @@ Input.propTypes = {
500
502
  insetLabelId: PropTypes.string,
501
503
  inputStyle: PropTypes.object,
502
504
  getValueLength: PropTypes.func,
503
- preventScroll: PropTypes.bool
505
+ preventScroll: PropTypes.bool,
506
+ borderless: PropTypes.bool
504
507
  };
505
508
  Input.defaultProps = {
506
509
  addonBefore: '',
@@ -523,7 +526,8 @@ Input.defaultProps = {
523
526
  onKeyUp: _noop,
524
527
  onKeyPress: _noop,
525
528
  onEnterPress: _noop,
526
- validateStatus: 'default'
529
+ validateStatus: 'default',
530
+ noBg: false
527
531
  };
528
532
  const ForwardInput = /*#__PURE__*/React.forwardRef((props, ref) => /*#__PURE__*/React.createElement(Input, Object.assign({}, props, {
529
533
  forwardRef: ref
@@ -4,6 +4,7 @@ import '@douyinfe/semi-foundation/lib/es/input/textarea.css';
4
4
  declare type OmitTextareaAttr = 'onChange' | 'onInput' | 'prefix' | 'size' | 'onFocus' | 'onBlur' | 'onKeyDown' | 'onKeyPress' | 'onKeyUp';
5
5
  export interface TextAreaProps extends Omit<React.TextareaHTMLAttributes<HTMLTextAreaElement>, OmitTextareaAttr> {
6
6
  autosize?: boolean;
7
+ borderless?: boolean;
7
8
  placeholder?: string;
8
9
  value?: string;
9
10
  rows?: number;
@@ -218,9 +218,10 @@ class TextArea extends BaseComponent {
218
218
  getValueLength,
219
219
  maxLength,
220
220
  minLength,
221
- showClear
221
+ showClear,
222
+ borderless
222
223
  } = _a,
223
- rest = __rest(_a, ["autosize", "placeholder", "onEnterPress", "onResize", "disabled", "readonly", "className", "showCounter", "validateStatus", "maxCount", "defaultValue", "style", "forwardRef", "getValueLength", "maxLength", "minLength", "showClear"]);
224
+ rest = __rest(_a, ["autosize", "placeholder", "onEnterPress", "onResize", "disabled", "readonly", "className", "showCounter", "validateStatus", "maxCount", "defaultValue", "style", "forwardRef", "getValueLength", "maxLength", "minLength", "showClear", "borderless"]);
224
225
 
225
226
  const {
226
227
  isFocus,
@@ -228,6 +229,7 @@ class TextArea extends BaseComponent {
228
229
  minLength: stateMinLength
229
230
  } = this.state;
230
231
  const wrapperCls = cls(className, `${prefixCls}-textarea-wrapper`, {
232
+ [`${prefixCls}-textarea-borderless`]: borderless,
231
233
  [`${prefixCls}-textarea-wrapper-disabled`]: disabled,
232
234
  [`${prefixCls}-textarea-wrapper-readonly`]: readonly,
233
235
  [`${prefixCls}-textarea-wrapper-${validateStatus}`]: Boolean(validateStatus),
@@ -275,6 +277,7 @@ class TextArea extends BaseComponent {
275
277
 
276
278
  TextArea.propTypes = {
277
279
  autosize: PropTypes.bool,
280
+ borderless: PropTypes.bool,
278
281
  placeholder: PropTypes.string,
279
282
  value: PropTypes.string,
280
283
  rows: PropTypes.number,
@@ -293,6 +296,7 @@ TextArea.propTypes = {
293
296
  };
294
297
  TextArea.defaultProps = {
295
298
  autosize: false,
299
+ borderless: false,
296
300
  rows: 4,
297
301
  cols: 20,
298
302
  showCounter: false,
@@ -84,6 +84,7 @@ export declare type SelectProps = {
84
84
  autoFocus?: boolean;
85
85
  autoClearSearchValue?: boolean;
86
86
  arrowIcon?: React.ReactNode;
87
+ borderless?: boolean;
87
88
  clearIcon?: React.ReactNode;
88
89
  defaultValue?: string | number | any[] | Record<string, any>;
89
90
  value?: string | number | any[] | Record<string, any>;
@@ -178,6 +179,7 @@ declare class Select extends BaseComponent<SelectProps, SelectState> {
178
179
  'aria-required': PropTypes.Requireable<boolean>;
179
180
  autoFocus: PropTypes.Requireable<boolean>;
180
181
  autoClearSearchValue: PropTypes.Requireable<boolean>;
182
+ borderless: PropTypes.Requireable<boolean>;
181
183
  children: PropTypes.Requireable<PropTypes.ReactNodeLike>;
182
184
  clearIcon: PropTypes.Requireable<PropTypes.ReactNodeLike>;
183
185
  defaultValue: PropTypes.Requireable<NonNullable<string | number | object>>;
@@ -1125,7 +1125,8 @@ class Select extends BaseComponent {
1125
1125
  placeholder,
1126
1126
  triggerRender,
1127
1127
  arrowIcon,
1128
- clearIcon
1128
+ clearIcon,
1129
+ borderless
1129
1130
  } = this.props;
1130
1131
  const {
1131
1132
  selections,
@@ -1141,6 +1142,7 @@ class Select extends BaseComponent {
1141
1142
  const filterable = Boolean(filter); // filter(boolean || function)
1142
1143
 
1143
1144
  const selectionCls = useCustomTrigger ? cls(className) : cls(prefixcls, className, {
1145
+ [`${prefixcls}-borderless`]: borderless,
1144
1146
  [`${prefixcls}-open`]: isOpen,
1145
1147
  [`${prefixcls}-focus`]: isFocus,
1146
1148
  [`${prefixcls}-disabled`]: disabled,
@@ -1292,6 +1294,7 @@ Select.propTypes = {
1292
1294
  'aria-required': PropTypes.bool,
1293
1295
  autoFocus: PropTypes.bool,
1294
1296
  autoClearSearchValue: PropTypes.bool,
1297
+ borderless: PropTypes.bool,
1295
1298
  children: PropTypes.node,
1296
1299
  clearIcon: PropTypes.node,
1297
1300
  defaultValue: PropTypes.oneOfType([PropTypes.string, PropTypes.number, PropTypes.array, PropTypes.object]),
@@ -1373,6 +1376,7 @@ Select.propTypes = {
1373
1376
  Select.defaultProps = {
1374
1377
  stopPropagation: true,
1375
1378
  motion: true,
1379
+ borderless: false,
1376
1380
  zIndex: popoverNumbers.DEFAULT_Z_INDEX,
1377
1381
  // position: 'bottomLeft',
1378
1382
  filter: false,
@@ -3,7 +3,7 @@ import PropTypes from 'prop-types';
3
3
  import BaseComponent, { BaseProps } from '../_base/baseComponent';
4
4
  import InputFoundation, { TimeInputAdapter } from '@douyinfe/semi-foundation/lib/es/timePicker/inputFoundation';
5
5
  import { TimePickerProps } from './TimePicker';
6
- export declare type TimeInputProps = Pick<TimePickerProps, 'value' | 'format' | 'prefixCls' | 'placeholder' | 'clearText' | 'inputReadOnly' | 'disabled' | 'type' | 'timeZone' | 'defaultOpen' | 'disabledHours' | 'disabledMinutes' | 'disabledSeconds' | 'dateFnsLocale' | 'onFocus' | 'onBlur' | 'focusOnOpen' | 'locale' | 'localeCode' | 'insetLabel' | 'validateStatus' | 'preventScroll'> & BaseProps & {
6
+ export declare type TimeInputProps = Pick<TimePickerProps, 'value' | 'format' | 'prefixCls' | 'placeholder' | 'clearText' | 'inputReadOnly' | 'disabled' | 'type' | 'timeZone' | 'defaultOpen' | 'disabledHours' | 'disabledMinutes' | 'disabledSeconds' | 'dateFnsLocale' | 'onFocus' | 'onBlur' | 'focusOnOpen' | 'locale' | 'localeCode' | 'insetLabel' | 'validateStatus' | 'borderless' | 'preventScroll'> & BaseProps & {
7
7
  onChange?: (value: string) => void;
8
8
  onEsc?: () => void;
9
9
  onClick?: React.MouseEventHandler;
@@ -14,6 +14,7 @@ export declare type TimeInputProps = Pick<TimePickerProps, 'value' | 'format' |
14
14
  };
15
15
  declare class TimeInput extends BaseComponent<TimeInputProps, any> {
16
16
  static propTypes: {
17
+ borderless: PropTypes.Requireable<boolean>;
17
18
  format: PropTypes.Requireable<string>;
18
19
  prefixCls: PropTypes.Requireable<string>;
19
20
  placeholder: PropTypes.Requireable<string>;
@@ -41,6 +42,7 @@ declare class TimeInput extends BaseComponent<TimeInputProps, any> {
41
42
  preventScroll: PropTypes.Requireable<boolean>;
42
43
  };
43
44
  static defaultProps: {
45
+ borderless: boolean;
44
46
  inputReadOnly: boolean;
45
47
  onChange: (...args: any[]) => void;
46
48
  onBlur: (...args: any[]) => void;
@@ -162,6 +162,7 @@ class TimeInput extends BaseComponent {
162
162
  }
163
163
 
164
164
  TimeInput.propTypes = {
165
+ borderless: PropTypes.bool,
165
166
  format: PropTypes.string,
166
167
  prefixCls: PropTypes.string,
167
168
  placeholder: PropTypes.string,
@@ -189,6 +190,7 @@ TimeInput.propTypes = {
189
190
  preventScroll: PropTypes.bool
190
191
  };
191
192
  TimeInput.defaultProps = {
193
+ borderless: false,
192
194
  inputReadOnly: false,
193
195
  onChange: _noop,
194
196
  onBlur: _noop,
@@ -22,6 +22,7 @@ export declare type TimePickerProps = {
22
22
  'aria-required'?: React.AriaAttributes['aria-required'];
23
23
  autoAdjustOverflow?: boolean;
24
24
  autoFocus?: boolean;
25
+ borderless?: boolean;
25
26
  className?: string;
26
27
  clearText?: string;
27
28
  clearIcon?: React.ReactNode;
@@ -100,6 +101,7 @@ export default class TimePicker extends BaseComponent<TimePickerProps, TimePicke
100
101
  'aria-describedby': PropTypes.Requireable<string>;
101
102
  'aria-required': PropTypes.Requireable<boolean>;
102
103
  prefixCls: PropTypes.Requireable<string>;
104
+ borderless: PropTypes.Requireable<boolean>;
103
105
  clearText: PropTypes.Requireable<string>;
104
106
  clearIcon: PropTypes.Requireable<PropTypes.ReactNodeLike>;
105
107
  value: PropTypes.Requireable<NonNullable<string | number | string[] | number[] | Date | Date[]>>;
@@ -154,6 +156,7 @@ export default class TimePicker extends BaseComponent<TimePickerProps, TimePicke
154
156
  };
155
157
  static defaultProps: {
156
158
  autoAdjustOverflow: boolean;
159
+ borderless: boolean;
157
160
  getPopupContainer: () => HTMLElement;
158
161
  showClear: boolean;
159
162
  zIndex: number;