@douyinfe/semi-ui 2.11.0-beta.1 → 2.11.2

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 (123) hide show
  1. package/README.md +1 -1
  2. package/anchor/link.tsx +2 -2
  3. package/autoComplete/index.tsx +3 -3
  4. package/avatar/interface.ts +2 -2
  5. package/badge/index.tsx +1 -1
  6. package/banner/index.tsx +4 -4
  7. package/breadcrumb/bread-context.tsx +1 -1
  8. package/card/cardGroup.tsx +1 -1
  9. package/card/index.tsx +1 -1
  10. package/cascader/index.tsx +4 -4
  11. package/collapse/index.tsx +1 -1
  12. package/collapse/item.tsx +1 -1
  13. package/collapsible/index.tsx +1 -1
  14. package/descriptions/item.tsx +1 -1
  15. package/dist/umd/semi-ui.js +27 -22
  16. package/dist/umd/semi-ui.js.map +1 -1
  17. package/dist/umd/semi-ui.min.js +1 -1
  18. package/dist/umd/semi-ui.min.js.map +1 -1
  19. package/empty/index.tsx +1 -1
  20. package/form/errorMessage.tsx +1 -1
  21. package/form/interface.ts +1 -1
  22. package/form/label.tsx +1 -1
  23. package/form/section.tsx +2 -2
  24. package/form/slot.tsx +1 -1
  25. package/layout/Sider.tsx +1 -1
  26. package/lib/cjs/anchor/link.d.ts +2 -2
  27. package/lib/cjs/autoComplete/index.d.ts +1 -1
  28. package/lib/cjs/autoComplete/index.js +1 -1
  29. package/lib/cjs/avatar/interface.d.ts +2 -2
  30. package/lib/cjs/badge/index.d.ts +1 -1
  31. package/lib/cjs/banner/index.d.ts +4 -4
  32. package/lib/cjs/breadcrumb/bread-context.d.ts +1 -1
  33. package/lib/cjs/card/cardGroup.d.ts +1 -1
  34. package/lib/cjs/card/index.d.ts +1 -1
  35. package/lib/cjs/cascader/index.d.ts +1 -1
  36. package/lib/cjs/collapse/index.d.ts +1 -1
  37. package/lib/cjs/collapse/item.d.ts +1 -1
  38. package/lib/cjs/collapsible/index.d.ts +1 -1
  39. package/lib/cjs/descriptions/item.d.ts +1 -1
  40. package/lib/cjs/empty/index.d.ts +1 -1
  41. package/lib/cjs/form/errorMessage.d.ts +1 -1
  42. package/lib/cjs/form/interface.d.ts +1 -1
  43. package/lib/cjs/form/label.d.ts +1 -1
  44. package/lib/cjs/form/section.d.ts +2 -2
  45. package/lib/cjs/form/slot.d.ts +1 -1
  46. package/lib/cjs/layout/Sider.d.ts +1 -1
  47. package/lib/cjs/list/index.d.ts +1 -1
  48. package/lib/cjs/list/item.d.ts +1 -1
  49. package/lib/cjs/modal/Modal.d.ts +5 -5
  50. package/lib/cjs/modal/ModalContent.d.ts +1 -1
  51. package/lib/cjs/modal/confirm.d.ts +4 -2
  52. package/lib/cjs/modal/useModal/index.d.ts +16 -23
  53. package/lib/cjs/navigation/Footer.d.ts +1 -1
  54. package/lib/cjs/navigation/Item.d.ts +1 -1
  55. package/lib/cjs/radio/radioGroup.d.ts +1 -1
  56. package/lib/cjs/select/index.d.ts +1 -1
  57. package/lib/cjs/select/index.js +27 -24
  58. package/lib/cjs/sideSheet/SideSheetContent.d.ts +1 -1
  59. package/lib/cjs/table/HeadTable.d.ts +2 -1
  60. package/lib/cjs/table/HeadTable.js +2 -1
  61. package/lib/cjs/table/Table.js +2 -0
  62. package/lib/cjs/table/interface.d.ts +1 -1
  63. package/lib/cjs/timeline/index.d.ts +1 -1
  64. package/lib/cjs/timeline/item.d.ts +1 -1
  65. package/lib/es/anchor/link.d.ts +2 -2
  66. package/lib/es/autoComplete/index.d.ts +1 -1
  67. package/lib/es/autoComplete/index.js +1 -1
  68. package/lib/es/avatar/interface.d.ts +2 -2
  69. package/lib/es/badge/index.d.ts +1 -1
  70. package/lib/es/banner/index.d.ts +4 -4
  71. package/lib/es/breadcrumb/bread-context.d.ts +1 -1
  72. package/lib/es/card/cardGroup.d.ts +1 -1
  73. package/lib/es/card/index.d.ts +1 -1
  74. package/lib/es/cascader/index.d.ts +1 -1
  75. package/lib/es/collapse/index.d.ts +1 -1
  76. package/lib/es/collapse/item.d.ts +1 -1
  77. package/lib/es/collapsible/index.d.ts +1 -1
  78. package/lib/es/descriptions/item.d.ts +1 -1
  79. package/lib/es/empty/index.d.ts +1 -1
  80. package/lib/es/form/errorMessage.d.ts +1 -1
  81. package/lib/es/form/interface.d.ts +1 -1
  82. package/lib/es/form/label.d.ts +1 -1
  83. package/lib/es/form/section.d.ts +2 -2
  84. package/lib/es/form/slot.d.ts +1 -1
  85. package/lib/es/layout/Sider.d.ts +1 -1
  86. package/lib/es/list/index.d.ts +1 -1
  87. package/lib/es/list/item.d.ts +1 -1
  88. package/lib/es/modal/Modal.d.ts +5 -5
  89. package/lib/es/modal/ModalContent.d.ts +1 -1
  90. package/lib/es/modal/confirm.d.ts +4 -2
  91. package/lib/es/modal/confirm.js +1 -1
  92. package/lib/es/modal/useModal/index.d.ts +16 -23
  93. package/lib/es/navigation/Footer.d.ts +1 -1
  94. package/lib/es/navigation/Item.d.ts +1 -1
  95. package/lib/es/radio/radioGroup.d.ts +1 -1
  96. package/lib/es/select/index.d.ts +1 -1
  97. package/lib/es/select/index.js +23 -21
  98. package/lib/es/sideSheet/SideSheetContent.d.ts +1 -1
  99. package/lib/es/table/HeadTable.d.ts +2 -1
  100. package/lib/es/table/HeadTable.js +2 -1
  101. package/lib/es/table/Table.js +2 -0
  102. package/lib/es/table/interface.d.ts +1 -1
  103. package/lib/es/timeline/index.d.ts +1 -1
  104. package/lib/es/timeline/item.d.ts +1 -1
  105. package/list/index.tsx +1 -1
  106. package/list/item.tsx +1 -1
  107. package/modal/Modal.tsx +7 -7
  108. package/modal/ModalContent.tsx +1 -1
  109. package/modal/confirm.tsx +10 -11
  110. package/modal/useModal/index.tsx +9 -1
  111. package/navigation/Footer.tsx +2 -2
  112. package/navigation/Item.tsx +1 -1
  113. package/package.json +9 -9
  114. package/radio/radioGroup.tsx +1 -1
  115. package/select/index.tsx +4 -2
  116. package/sideSheet/SideSheetContent.tsx +1 -1
  117. package/table/HeadTable.tsx +3 -1
  118. package/table/Table.tsx +2 -0
  119. package/table/_story/v2/FixedOnHeaderRow/index.jsx +134 -0
  120. package/table/_story/v2/index.js +2 -1
  121. package/table/interface.ts +1 -1
  122. package/timeline/index.tsx +1 -1
  123. package/timeline/item.tsx +1 -1
@@ -13,7 +13,7 @@ export interface SideSheetContentProps {
13
13
  style: CSSProperties;
14
14
  bodyStyle?: CSSProperties;
15
15
  className: string;
16
- children?: React.ReactNode | undefined;
16
+ children?: React.ReactNode;
17
17
  footer?: React.ReactNode;
18
18
  'aria-label'?: string;
19
19
  }
@@ -1,5 +1,5 @@
1
1
  import React from 'react';
2
- import { Fixed, TableComponents, Scroll, BodyScrollEvent, ColumnProps } from './interface';
2
+ import { Fixed, TableComponents, Scroll, BodyScrollEvent, ColumnProps, OnHeaderRow } from './interface';
3
3
  export interface HeadTableProps {
4
4
  [x: string]: any;
5
5
  anyColumnFixed?: boolean;
@@ -15,6 +15,7 @@ export interface HeadTableProps {
15
15
  selectedRowKeysSet: Set<any>;
16
16
  showHeader?: boolean;
17
17
  onDidUpdate?: (ref: React.MutableRefObject<any>) => void;
18
+ onHeaderRow?: OnHeaderRow<any>;
18
19
  }
19
20
  declare const _default: React.ForwardRefExoticComponent<Pick<HeadTableProps, keyof HeadTableProps> & React.RefAttributes<HTMLDivElement>>;
20
21
  export default _default;
@@ -116,7 +116,8 @@ HeadTable.propTypes = {
116
116
  }),
117
117
  selectedRowKeysSet: _propTypes.default.instanceOf(_set.default).isRequired,
118
118
  showHeader: _propTypes.default.bool,
119
- onDidUpdate: _propTypes.default.func
119
+ onDidUpdate: _propTypes.default.func,
120
+ onHeaderRow: _propTypes.default.func
120
121
  };
121
122
  HeadTable.defaultProps = {
122
123
  handleBodyScroll: _noop2.default
@@ -718,6 +718,7 @@ class Table extends _baseComponent.default {
718
718
  components,
719
719
  headerRef,
720
720
  bodyRef,
721
+ onHeaderRow,
721
722
  rowSelection,
722
723
  dataSource,
723
724
  bodyHasScrollBar,
@@ -736,6 +737,7 @@ class Table extends _baseComponent.default {
736
737
  scroll: scroll,
737
738
  showHeader: showHeader,
738
739
  selectedRowKeysSet: selectedRowKeysSet,
740
+ onHeaderRow: onHeaderRow,
739
741
  dataSource: dataSource,
740
742
  bodyHasScrollBar: bodyHasScrollBar
741
743
  }) : null;
@@ -211,7 +211,7 @@ export declare type GetCheckboxProps<RecordType> = (record: RecordType) => Check
211
211
  export declare type RowSelectionOnChange<RecordType> = (selectedRowKeys?: (string | number)[], selectedRows?: RecordType[]) => void;
212
212
  export declare type RowSelectionOnSelect<RecordType> = (record?: RecordType, selected?: boolean, selectedRows?: RecordType[], nativeEvent?: React.MouseEvent) => void;
213
213
  export declare type RowSelectionOnSelectAll<RecordType> = (selected?: boolean, selectedRows?: RecordType[], changedRows?: RecordType[]) => void;
214
- export declare type ExpandIcon = ((expanded?: boolean) => React.ReactNode) | React.ReactNode | boolean;
214
+ export declare type ExpandIcon = ((expanded?: boolean) => React.ReactNode) | React.ReactNode;
215
215
  export declare type ExpandedRowRender<RecordType> = (record?: RecordType, index?: number, expanded?: boolean) => React.ReactNode;
216
216
  export declare type Footer<RecordType> = ReactNode | ((pageData?: RecordType[]) => React.ReactNode);
217
217
  export declare type FormatPageText = ((pageInfo?: {
@@ -11,7 +11,7 @@ export interface TimelineProps extends Pick<React.AriaAttributes, 'aria-label'>
11
11
  className?: string;
12
12
  style?: React.CSSProperties;
13
13
  dataSource?: Data[];
14
- children?: React.ReactNode | undefined;
14
+ children?: React.ReactNode;
15
15
  }
16
16
  declare class Timeline extends PureComponent<TimelineProps> {
17
17
  static contextType: React.Context<import("../configProvider/context").ContextValue>;
@@ -3,7 +3,7 @@ import PropTypes from 'prop-types';
3
3
  import '@douyinfe/semi-foundation/lib/cjs/timeline/timeline.css';
4
4
  export interface TimelineItemProps {
5
5
  color?: string;
6
- children?: React.ReactNode | undefined;
6
+ children?: React.ReactNode;
7
7
  time?: React.ReactNode;
8
8
  type?: 'default' | 'ongoing' | 'success' | 'warning' | 'error';
9
9
  dot?: React.ReactNode;
@@ -5,9 +5,9 @@ import LinkFoundation, { LinkAdapter } from '@douyinfe/semi-foundation/lib/es/an
5
5
  import { AnchorContextType } from './anchor-context';
6
6
  export interface LinkProps {
7
7
  href?: string;
8
- title?: string | React.ReactNode;
8
+ title?: ReactNode;
9
9
  className?: string;
10
- children?: ReactNode | undefined;
10
+ children?: ReactNode;
11
11
  style?: React.CSSProperties;
12
12
  disabled?: boolean;
13
13
  }
@@ -36,7 +36,7 @@ export interface AutoCompleteProps<T extends AutoCompleteItems> {
36
36
  dropdownMatchSelectWidth?: boolean;
37
37
  dropdownClassName?: string;
38
38
  dropdownStyle?: React.CSSProperties;
39
- emptyContent?: React.ReactNode | null;
39
+ emptyContent?: React.ReactNode;
40
40
  getPopupContainer?: () => HTMLElement;
41
41
  insetLabel?: React.ReactNode;
42
42
  insetLabelId?: string;
@@ -65,7 +65,7 @@ class AutoComplete extends BaseComponent {
65
65
  this.triggerRef = /*#__PURE__*/React.createRef();
66
66
  this.optionsRef = /*#__PURE__*/React.createRef();
67
67
  this.clickOutsideHandler = null;
68
- warning('triggerRender' in this.props && typeof this.props.triggerRender === 'function', "[Semi AutoComplete] \n - If you are using the following props: 'suffix', 'prefix', 'showClear', 'validateStatus', and 'size', \n please notice that they will be removed in the next major version.\n Please use 'componentProps' to retrieve these props instead.\n - If you are using 'onBlur', 'onFocus', please try to avoid using them and look for changes in the future.");
68
+ warning('triggerRender' in this.props && typeof this.props.triggerRender === 'function', "[Semi AutoComplete]\n - If you are using the following props: 'suffix', 'prefix', 'showClear', 'validateStatus', and 'size',\n please notice that they will be removed in the next major version.\n Please use 'componentProps' to retrieve these props instead.\n - If you are using 'onBlur', 'onFocus', please try to avoid using them and look for changes in the future.");
69
69
  }
70
70
 
71
71
  get adapter() {
@@ -4,7 +4,7 @@ export declare type AvatarShape = 'circle' | 'square';
4
4
  export declare type AvatarSize = 'extra-extra-small' | 'extra-small' | 'small' | 'default' | 'medium' | 'large' | 'extra-large';
5
5
  export declare type AvatarColor = 'amber' | 'blue' | 'cyan' | 'green' | 'grey' | 'indigo' | 'light-blue' | 'light-green' | 'lime' | 'orange' | 'pink' | 'purple' | 'red' | 'teal' | 'violet' | 'yellow';
6
6
  export interface AvatarProps extends BaseProps {
7
- children?: React.ReactNode | undefined;
7
+ children?: React.ReactNode;
8
8
  color?: AvatarColor;
9
9
  shape?: AvatarShape;
10
10
  size?: AvatarSize;
@@ -22,7 +22,7 @@ export declare type AvatarGroupShape = 'circle' | 'square';
22
22
  export declare type AvatarGroupSize = 'extra-extra-small' | 'extra-small' | 'small' | 'medium' | 'large' | 'extra-large';
23
23
  export declare type AvatarGroupOverlapFrom = 'start' | 'end';
24
24
  export interface AvatarGroupProps {
25
- children?: React.ReactNode | undefined;
25
+ children?: React.ReactNode;
26
26
  shape?: AvatarGroupShape;
27
27
  size?: AvatarGroupSize;
28
28
  overlapFrom?: AvatarGroupOverlapFrom;
@@ -17,7 +17,7 @@ export interface BadgeProps {
17
17
  onMouseEnter?: (e: React.MouseEvent) => any;
18
18
  onMouseLeave?: (e: React.MouseEvent) => any;
19
19
  onClick?: (e: React.MouseEvent) => any;
20
- children?: React.ReactNode | undefined;
20
+ children?: React.ReactNode;
21
21
  }
22
22
  export default class Badge extends PureComponent<BadgeProps> {
23
23
  static contextType: React.Context<ContextValue>;
@@ -7,15 +7,15 @@ export declare type Type = 'info' | 'danger' | 'warning' | 'success';
7
7
  export interface BannerProps {
8
8
  type?: Type;
9
9
  className?: string;
10
- children?: React.ReactNode | undefined;
10
+ children?: React.ReactNode;
11
11
  fullMode?: boolean;
12
12
  title?: React.ReactNode;
13
13
  description?: React.ReactNode;
14
- icon?: string | React.ReactNode;
15
- closeIcon?: string | React.ReactNode;
14
+ icon?: React.ReactNode;
15
+ closeIcon?: React.ReactNode;
16
16
  style?: React.CSSProperties;
17
17
  bordered?: boolean;
18
- onClose?: (e: React.MouseEvent) => void;
18
+ onClose?(e: React.MouseEvent): void;
19
19
  }
20
20
  export interface BannerState {
21
21
  visible: boolean;
@@ -5,7 +5,7 @@ export interface BreadContextType {
5
5
  onClick?: (info: BreadcrumbItemInfo, event: React.MouseEvent) => void;
6
6
  showTooltip?: boolean | showToolTipProps;
7
7
  compact?: boolean;
8
- separator?: string | React.ReactNode;
8
+ separator?: React.ReactNode;
9
9
  }
10
10
  declare const BreadContext: React.Context<BreadContextType>;
11
11
  export default BreadContext;
@@ -4,7 +4,7 @@ export declare type CardGroupType = 'grid';
4
4
  export interface CardGroupProps {
5
5
  /** Card group style class name */
6
6
  className?: string;
7
- children?: React.ReactNode | undefined;
7
+ children?: React.ReactNode;
8
8
  /** Card Spacing */
9
9
  spacing?: number | number[];
10
10
  /** Card group inline style */
@@ -14,7 +14,7 @@ export interface CardProps {
14
14
  bordered?: boolean;
15
15
  /** Style class name */
16
16
  className?: string;
17
- children?: React.ReactNode | undefined;
17
+ children?: React.ReactNode;
18
18
  /** Cover */
19
19
  cover?: ReactNode;
20
20
  /** Additional additions to the right of the title */
@@ -33,7 +33,7 @@ export interface CascaderProps extends BasicCascaderProps {
33
33
  motion?: Motion;
34
34
  treeData?: Array<CascaderData>;
35
35
  restTagsPopoverProps?: PopoverProps;
36
- children?: React.ReactNode | undefined;
36
+ children?: React.ReactNode;
37
37
  value?: Value;
38
38
  prefix?: ReactNode;
39
39
  suffix?: ReactNode;
@@ -9,7 +9,7 @@ export { CollapsePanelProps } from './item';
9
9
  export interface CollapseReactProps extends CollapseProps {
10
10
  expandIcon?: React.ReactNode;
11
11
  collapseIcon?: React.ReactNode;
12
- children?: React.ReactNode | undefined;
12
+ children?: React.ReactNode;
13
13
  style?: CSSProperties;
14
14
  onChange?: (activeKey: CollapseProps['activeKey'], e: React.MouseEvent) => void;
15
15
  }
@@ -6,7 +6,7 @@ export interface CollapsePanelProps {
6
6
  extra?: ReactNode;
7
7
  header?: ReactNode;
8
8
  className?: string;
9
- children?: React.ReactNode | undefined;
9
+ children?: React.ReactNode;
10
10
  reCalcKey?: number | string;
11
11
  style?: CSSProperties;
12
12
  }
@@ -3,7 +3,7 @@ import React from 'react';
3
3
  import { Motion } from '../_base/base';
4
4
  export interface CollapsibleProps {
5
5
  motion?: Motion;
6
- children?: React.ReactNode | undefined;
6
+ children?: React.ReactNode;
7
7
  isOpen?: boolean;
8
8
  duration?: number;
9
9
  keepDOM?: boolean;
@@ -5,7 +5,7 @@ import { DescriptionsContextValue } from './descriptions-context';
5
5
  export interface DescriptionsItemProps {
6
6
  hidden?: boolean;
7
7
  className?: string;
8
- children?: React.ReactNode | undefined | (() => React.ReactNode);
8
+ children?: React.ReactNode | (() => React.ReactNode);
9
9
  style?: React.CSSProperties;
10
10
  itemKey?: React.ReactNode;
11
11
  }
@@ -17,7 +17,7 @@ export interface EmptyProps {
17
17
  darkModeImage?: React.ReactNode | SVGNode;
18
18
  style?: React.CSSProperties;
19
19
  className?: string;
20
- children?: React.ReactNode | undefined;
20
+ children?: React.ReactNode;
21
21
  }
22
22
  interface EmptyState {
23
23
  mode: any;
@@ -1,6 +1,6 @@
1
1
  import React, { PureComponent } from 'react';
2
2
  import PropTypes from 'prop-types';
3
- export declare type ReactFieldError = boolean | string | Array<any> | React.ReactNode | undefined;
3
+ export declare type ReactFieldError = Array<any> | React.ReactNode;
4
4
  export interface ErrorMessageProps {
5
5
  error?: ReactFieldError;
6
6
  className?: string;
@@ -15,7 +15,7 @@ export declare type CommonFieldProps = {
15
15
  /** Field is required (except Form. Checkbox within the Group, Form. Radio) */
16
16
  field: string;
17
17
  /** The label text of the form control is the same name as the field by default when it is not passed */
18
- label?: string | LabelProps | React.ReactNode | number;
18
+ label?: LabelProps | React.ReactNode;
19
19
  labelPosition?: 'top' | 'left' | 'inset';
20
20
  labelAlign?: 'left' | 'right';
21
21
  labelWidth?: number | string;
@@ -15,7 +15,7 @@ export interface LabelProps {
15
15
  width?: number | string;
16
16
  style?: React.CSSProperties;
17
17
  className?: string;
18
- children?: React.ReactNode | undefined;
18
+ children?: React.ReactNode;
19
19
  extra?: React.ReactNode;
20
20
  }
21
21
  export default class Label extends PureComponent<LabelProps> {
@@ -3,8 +3,8 @@ import PropTypes from 'prop-types';
3
3
  export interface SectionProps {
4
4
  className?: string;
5
5
  style?: React.CSSProperties;
6
- text?: React.ReactNode | string;
7
- children?: React.ReactNode | undefined;
6
+ text?: React.ReactNode;
7
+ children?: React.ReactNode;
8
8
  }
9
9
  export default class Section extends PureComponent<SectionProps> {
10
10
  static propTypes: {
@@ -4,7 +4,7 @@ import { ErrorMessageProps } from './errorMessage';
4
4
  export interface SlotProps {
5
5
  className?: string;
6
6
  style?: React.CSSProperties;
7
- label?: LabelProps | React.ReactNode | number | string;
7
+ label?: LabelProps | React.ReactNode;
8
8
  noLabel?: boolean;
9
9
  labelPosition?: 'top' | 'left';
10
10
  error?: ErrorMessageProps;
@@ -13,7 +13,7 @@ export interface SiderProps {
13
13
  prefixCls?: string;
14
14
  style?: CSSProperties;
15
15
  className?: string;
16
- children?: React.ReactNode | undefined;
16
+ children?: React.ReactNode;
17
17
  breakpoint?: Array<keyof ResponsiveMap>;
18
18
  onBreakpoint?: (screen: keyof ResponsiveMap, match: boolean) => void;
19
19
  'aria-label'?: React.AriaAttributes['aria-label'];
@@ -8,7 +8,7 @@ export { ListItemProps } from './item';
8
8
  export interface ListProps<T> {
9
9
  style?: React.CSSProperties;
10
10
  className?: string;
11
- children?: React.ReactNode | undefined;
11
+ children?: React.ReactNode;
12
12
  bordered?: boolean;
13
13
  footer?: React.ReactNode;
14
14
  header?: React.ReactNode;
@@ -7,7 +7,7 @@ export interface ListItemProps {
7
7
  main?: React.ReactNode;
8
8
  align?: 'flex-start' | 'flex-end' | 'center' | 'baseline' | 'stretch';
9
9
  className?: string;
10
- children?: React.ReactNode | undefined;
10
+ children?: React.ReactNode;
11
11
  style?: React.CSSProperties;
12
12
  onClick?: React.MouseEventHandler<HTMLLIElement>;
13
13
  onRightClick?: React.MouseEventHandler<HTMLLIElement>;
@@ -10,7 +10,7 @@ export declare type ConfirmType = 'leftTop' | 'leftBottom' | 'rightTop' | 'right
10
10
  export declare type Directions = 'ltr' | 'rtl';
11
11
  export interface ModalReactProps extends ModalProps {
12
12
  cancelButtonProps?: ButtonProps;
13
- children?: React.ReactNode | undefined;
13
+ children?: React.ReactNode;
14
14
  okButtonProps?: ButtonProps;
15
15
  bodyStyle?: CSSProperties;
16
16
  maskStyle?: CSSProperties;
@@ -102,19 +102,19 @@ declare class Modal extends BaseComponent<ModalReactProps, ModalState> {
102
102
  static getScrollbarWidth(): number;
103
103
  static info: (props: ModalReactProps) => {
104
104
  destroy: () => void;
105
- update: (newConfig: import("./confirm").ConfirmProps) => void;
105
+ update: (newConfig: ModalReactProps) => void;
106
106
  };
107
107
  static success: (props: ModalReactProps) => {
108
108
  destroy: () => void;
109
- update: (newConfig: import("./confirm").ConfirmProps) => void;
109
+ update: (newConfig: ModalReactProps) => void;
110
110
  };
111
111
  static error: (props: ModalReactProps) => {
112
112
  destroy: () => void;
113
- update: (newConfig: import("./confirm").ConfirmProps) => void;
113
+ update: (newConfig: ModalReactProps) => void;
114
114
  };
115
115
  static warning: (props: ModalReactProps) => {
116
116
  destroy: () => void;
117
- update: (newConfig: import("./confirm").ConfirmProps) => void;
117
+ update: (newConfig: ModalReactProps) => void;
118
118
  };
119
119
  static confirm: (props: ModalReactProps) => {
120
120
  destroy: () => void;
@@ -4,7 +4,7 @@ import { ContextValue } from '../configProvider/context';
4
4
  import BaseComponent from '../_base/baseComponent';
5
5
  import ModalContentFoundation, { ModalContentAdapter, ModalContentProps, ModalContentState } from '@douyinfe/semi-foundation/lib/es/modal/modalContentFoundation';
6
6
  export interface ModalContentReactProps extends ModalContentProps {
7
- children?: React.ReactNode | undefined;
7
+ children?: React.ReactNode;
8
8
  }
9
9
  export default class ModalContent extends BaseComponent<ModalContentReactProps, ModalContentState> {
10
10
  static contextType: React.Context<ContextValue>;
@@ -4,9 +4,11 @@ import '@douyinfe/semi-foundation/lib/es/modal/modal.css';
4
4
  export interface ConfirmProps extends ModalReactProps {
5
5
  type: 'success' | 'info' | 'warning' | 'error' | 'confirm';
6
6
  }
7
- export default function confirm(props: ConfirmProps): {
7
+ export default function confirm<T>(props: ConfirmProps): {
8
8
  destroy: () => void;
9
- update: (newConfig: ConfirmProps) => void;
9
+ update: (newConfig: T extends {
10
+ type: Exclude<ConfirmProps['type'], 'confirm'>;
11
+ } ? ModalReactProps : ConfirmProps) => void;
10
12
  };
11
13
  export declare function withInfo(props: ModalReactProps): {
12
14
  cancelButtonProps?: import("../button").BaseButtonProps;
@@ -6,7 +6,7 @@ import ReactDOM from 'react-dom';
6
6
  import { destroyFns } from './Modal';
7
7
  import ConfirmModal from './ConfirmModal';
8
8
  import '@douyinfe/semi-foundation/lib/es/modal/modal.css';
9
- import { IconAlertTriangle, IconInfoCircle, IconTickCircle, IconHelpCircle, IconAlertCircle } from '@douyinfe/semi-icons';
9
+ import { IconAlertCircle, IconAlertTriangle, IconHelpCircle, IconInfoCircle, IconTickCircle } from '@douyinfe/semi-icons';
10
10
  export default function confirm(props) {
11
11
  // create a dom in adapter?
12
12
  const div = document.createElement('div');
@@ -1,25 +1,18 @@
1
- /// <reference types="react" />
1
+ import { ReactNode } from 'react';
2
2
  import { ConfirmProps } from '../confirm';
3
3
  import { ModalReactProps } from '../Modal';
4
- export default function useModal(): (JSX.Element | {
5
- info: (config: ModalReactProps) => {
6
- destroy: () => void;
7
- update: (newConfig: ConfirmProps) => void;
8
- };
9
- success: (config: ModalReactProps) => {
10
- destroy: () => void;
11
- update: (newConfig: ConfirmProps) => void;
12
- };
13
- error: (config: ModalReactProps) => {
14
- destroy: () => void;
15
- update: (newConfig: ConfirmProps) => void;
16
- };
17
- warning: (config: ModalReactProps) => {
18
- destroy: () => void;
19
- update: (newConfig: ConfirmProps) => void;
20
- };
21
- confirm: (config: ModalReactProps) => {
22
- destroy: () => void;
23
- update: (newConfig: ConfirmProps) => void;
24
- };
25
- })[];
4
+ declare type UseModalReturnHooksType = (config: ModalReactProps) => {
5
+ destroy: () => void;
6
+ update: (newConfig: ConfirmProps) => void;
7
+ };
8
+ export default function useModal(): [
9
+ {
10
+ info: UseModalReturnHooksType;
11
+ success: UseModalReturnHooksType;
12
+ error: UseModalReturnHooksType;
13
+ warning: UseModalReturnHooksType;
14
+ confirm: UseModalReturnHooksType;
15
+ },
16
+ ReactNode
17
+ ];
18
+ export {};
@@ -4,7 +4,7 @@ import '@douyinfe/semi-foundation/lib/es/navigation/navigation.css';
4
4
  import { NavContextType } from './nav-context';
5
5
  import { BaseProps } from '../_base/baseComponent';
6
6
  export interface NavFooterProps extends BaseProps {
7
- collapseButton?: React.ReactNode | boolean;
7
+ collapseButton?: React.ReactNode;
8
8
  collapseText?: (collapsed?: boolean) => React.ReactNode;
9
9
  }
10
10
  export default class NavFooter extends PureComponent<NavFooterProps> {
@@ -11,7 +11,7 @@ export interface NavItemProps extends ItemProps, BaseProps {
11
11
  itemKey?: React.ReactText;
12
12
  level?: number;
13
13
  link?: string;
14
- linkOptions?: React.HTMLAttributes<HTMLLinkElement>;
14
+ linkOptions?: React.AnchorHTMLAttributes<HTMLAnchorElement>;
15
15
  text?: React.ReactNode;
16
16
  tooltipHideDelay?: number;
17
17
  tooltipShowDelay?: number;
@@ -24,7 +24,7 @@ export declare type RadioGroupProps = {
24
24
  value?: string | number;
25
25
  onChange?: (event: RadioChangeEvent) => void;
26
26
  className?: string;
27
- children?: React.ReactNode | undefined;
27
+ children?: React.ReactNode;
28
28
  style?: React.CSSProperties;
29
29
  direction?: ArrayElement<typeof strings.DIRECTION_SET>;
30
30
  mode?: RadioMode;
@@ -19,7 +19,7 @@ declare type ExcludeInputType = {
19
19
  };
20
20
  export interface optionRenderProps {
21
21
  key?: any;
22
- label?: string | React.ReactNode | number;
22
+ label?: React.ReactNode;
23
23
  value?: string | number;
24
24
  style?: React.CSSProperties;
25
25
  className?: string;