@qsxy/element-plus-react 1.0.0-next.1 → 1.0.0-next.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (213) hide show
  1. package/README.md +31 -0
  2. package/dist/Badge/Badge.js +4 -5
  3. package/dist/Badge/typings.d.ts +10 -0
  4. package/dist/Breadcrumb/Breadcrumb.js +1 -4
  5. package/dist/Breadcrumb/typings.d.ts +4 -0
  6. package/dist/Button/Button.d.ts +0 -1
  7. package/dist/Button/Button.js +21 -9
  8. package/dist/Button/typings.d.ts +28 -0
  9. package/dist/Calendar/Calendar.js +1 -2
  10. package/dist/Calendar/CalendarContext.d.ts +10 -0
  11. package/dist/Calendar/Footer.js +1 -2
  12. package/dist/Calendar/Header.js +3 -8
  13. package/dist/Calendar/ShortCuts.d.ts +2 -0
  14. package/dist/Calendar/typings.d.ts +18 -0
  15. package/dist/Card/typings.d.ts +4 -0
  16. package/dist/Cascader/Cascader.js +26 -25
  17. package/dist/Cascader/CascaderDropdown.d.ts +1 -0
  18. package/dist/Cascader/CascaderMenu.d.ts +7 -0
  19. package/dist/Cascader/typings.d.ts +80 -0
  20. package/dist/Cascader/useCascader.d.ts +72 -0
  21. package/dist/Checkbox/Checkbox.js +2 -6
  22. package/dist/Checkbox/CheckboxButton.js +2 -6
  23. package/dist/Checkbox/typings.d.ts +11 -0
  24. package/dist/CheckboxGroup/CheckboxGroup.d.ts +4 -0
  25. package/dist/CheckboxGroup/CheckboxGroupContext.d.ts +1 -0
  26. package/dist/Col/Col.js +1 -8
  27. package/dist/Col/typings.d.ts +10 -0
  28. package/dist/Collapse/CollapseContext.d.ts +3 -0
  29. package/dist/Collapse/CollapseItem.js +9 -7
  30. package/dist/Collapse/CollapseTransition.d.ts +7 -6
  31. package/dist/Collapse/CollapseTransition.js +49 -31
  32. package/dist/Collapse/typings.d.ts +7 -0
  33. package/dist/ColorPicker/AlphaSlider.d.ts +7 -0
  34. package/dist/ColorPicker/AlphaSlider.js +0 -1
  35. package/dist/ColorPicker/ColorPicker.js +0 -1
  36. package/dist/ColorPicker/HueSlider.d.ts +7 -0
  37. package/dist/ColorPicker/HueSlider.js +0 -1
  38. package/dist/ColorPicker/Predefine.d.ts +7 -0
  39. package/dist/ColorPicker/Predefine.js +0 -1
  40. package/dist/ColorPicker/SvPanel.d.ts +7 -0
  41. package/dist/ColorPicker/SvPanel.js +0 -1
  42. package/dist/ColorPicker/typings.d.ts +9 -0
  43. package/dist/ConfigProvider/ConfigProvider.d.ts +5 -0
  44. package/dist/DatePicker/DatePicker.js +19 -8
  45. package/dist/DatePicker/DateRangePicker.js +11 -10
  46. package/dist/DatePicker/typings.d.ts +69 -0
  47. package/dist/DateTimePicker/DateTimePicker.d.ts +1 -1
  48. package/dist/DateTimePicker/DateTimePicker.js +10 -8
  49. package/dist/DateTimePicker/typings.d.ts +1 -0
  50. package/dist/Descriptions/Descriptions.js +1 -5
  51. package/dist/Descriptions/DescriptionsContext.d.ts +2 -0
  52. package/dist/Descriptions/typings.d.ts +13 -0
  53. package/dist/Dialog/Dialog.d.ts +0 -1
  54. package/dist/Dialog/Dialog.js +3 -6
  55. package/dist/Dialog/DialogBody.js +0 -3
  56. package/dist/Dialog/DialogContext.d.ts +8 -0
  57. package/dist/Dialog/DialogHeader.js +1 -4
  58. package/dist/Dialog/typings.d.ts +36 -0
  59. package/dist/Divider/Divider.d.ts +4 -0
  60. package/dist/Divider/Divider.js +1 -6
  61. package/dist/Drawer/Drawer.js +10 -5
  62. package/dist/Drawer/DrawerBody.js +1 -4
  63. package/dist/Drawer/DrawerContext.d.ts +10 -0
  64. package/dist/Drawer/DrawerHeader.js +1 -4
  65. package/dist/Drawer/typings.d.ts +16 -0
  66. package/dist/Dropdown/Dropdown.js +11 -7
  67. package/dist/Dropdown/DropdownContext.d.ts +2 -0
  68. package/dist/Dropdown/typings.d.ts +15 -0
  69. package/dist/Empty/Empty.js +1 -4
  70. package/dist/Form/Form.js +10 -6
  71. package/dist/Form/FormItem.d.ts +12 -0
  72. package/dist/Form/FormItem.js +3 -1
  73. package/dist/Form/typings.d.ts +55 -0
  74. package/dist/Form/useForm.d.ts +22 -0
  75. package/dist/Form/utils/NameMap.d.ts +3 -0
  76. package/dist/Form/utils/validateUtil.d.ts +4 -0
  77. package/dist/Form/utils/valueUtil.d.ts +17 -0
  78. package/dist/Icon/Icon.js +1 -4
  79. package/dist/Icon/typings.d.ts +7 -0
  80. package/dist/Input/Input.js +16 -9
  81. package/dist/Input/InputRange.js +11 -8
  82. package/dist/Input/TextArea.js +8 -4
  83. package/dist/Input/typings.d.ts +61 -0
  84. package/dist/InputNumber/InputNumber.js +10 -7
  85. package/dist/InputNumber/typings.d.ts +21 -0
  86. package/dist/Link/Link.js +1 -4
  87. package/dist/Link/typings.d.ts +6 -1
  88. package/dist/Loading/Loading.js +3 -5
  89. package/dist/Loading/typings.d.ts +5 -0
  90. package/dist/Message/Main.d.ts +7 -0
  91. package/dist/Message/Message.js +11 -8
  92. package/dist/Message/index.d.ts +8 -0
  93. package/dist/Message/typings.d.ts +11 -0
  94. package/dist/MessageBox/Main.js +3 -1
  95. package/dist/MessageBox/index.d.ts +17 -3
  96. package/dist/MessageBox/index.js +1 -1
  97. package/dist/MessageBox/typings.d.ts +50 -0
  98. package/dist/Notification/Main.d.ts +7 -0
  99. package/dist/Notification/Notification.js +17 -14
  100. package/dist/Notification/index.d.ts +15 -0
  101. package/dist/Notification/typings.d.ts +13 -0
  102. package/dist/Pagination/Pagination.js +15 -11
  103. package/dist/Pagination/typings.d.ts +28 -0
  104. package/dist/Popconfirm/Popconfirm.js +13 -9
  105. package/dist/Popconfirm/typings.d.ts +10 -0
  106. package/dist/Popover/Popover.js +12 -8
  107. package/dist/Popover/typings.d.ts +12 -0
  108. package/dist/Popper/Popper.js +15 -11
  109. package/dist/Popper/typings.d.ts +7 -1
  110. package/dist/Progress/Progress.js +12 -8
  111. package/dist/Progress/typings.d.ts +12 -0
  112. package/dist/Radio/typings.d.ts +7 -0
  113. package/dist/RadioGroup/typings.d.ts +1 -0
  114. package/dist/Row/Row.js +8 -5
  115. package/dist/Row/RowContext.d.ts +1 -0
  116. package/dist/Row/typings.d.ts +4 -0
  117. package/dist/Scrollbar/Scrollbar.js +13 -9
  118. package/dist/Scrollbar/Thumb.js +1 -1
  119. package/dist/Scrollbar/typings.d.ts +20 -0
  120. package/dist/Select/SelectCore.js +17 -14
  121. package/dist/Select/typings.d.ts +33 -0
  122. package/dist/Skeleton/PlaceholderGraph.d.ts +4 -0
  123. package/dist/Skeleton/PlaceholderGrid.d.ts +4 -0
  124. package/dist/Skeleton/PlaceholderGrid.js +0 -4
  125. package/dist/Skeleton/PlaceholderParagraph.d.ts +4 -0
  126. package/dist/Skeleton/PlaceholderParagraph.js +0 -4
  127. package/dist/Switch/Switch.js +13 -10
  128. package/dist/Switch/typings.d.ts +15 -0
  129. package/dist/Table/Colgroup.d.ts +1 -0
  130. package/dist/Table/Table.js +13 -9
  131. package/dist/Table/TableBody.js +10 -41
  132. package/dist/Table/TableCell.js +0 -5
  133. package/dist/Table/TableColumn.js +0 -4
  134. package/dist/Table/TableContext.d.ts +8 -0
  135. package/dist/Table/hooks/useSelection.d.ts +17 -0
  136. package/dist/Table/hooks/useTable.d.ts +7 -0
  137. package/dist/Table/treeUtil.d.ts +39 -0
  138. package/dist/Table/typings.d.ts +137 -1
  139. package/dist/Table/util.d.ts +10 -0
  140. package/dist/Tabs/Tabs.js +1 -4
  141. package/dist/Tabs/typings.d.ts +38 -0
  142. package/dist/Tag/Tag.d.ts +1 -1
  143. package/dist/Tag/Tag.js +7 -8
  144. package/dist/Tag/typings.d.ts +10 -0
  145. package/dist/TimeLine/TimeLineItem.js +7 -4
  146. package/dist/TimeLine/typings.d.ts +9 -0
  147. package/dist/TimePicker/TimePicker.js +14 -11
  148. package/dist/TimePicker/TimePickerRange.js +15 -12
  149. package/dist/TimePicker/TimeSpinnerPanel.js +1 -4
  150. package/dist/TimePicker/typings.d.ts +13 -0
  151. package/dist/TimePicker/useTimePicker.d.ts +7 -0
  152. package/dist/Tooltip/Tooltip.js +8 -15
  153. package/dist/Tooltip/TooltipContext.d.ts +1 -0
  154. package/dist/Tooltip/typings.d.ts +14 -1
  155. package/dist/Transfer/List.js +12 -8
  156. package/dist/Transfer/ListItem.d.ts +1 -0
  157. package/dist/Transfer/Transfer.js +11 -7
  158. package/dist/Transfer/typings/index.d.ts +27 -0
  159. package/dist/Transfer/typings/list.d.ts +25 -0
  160. package/dist/Transfer/typings/listBody.d.ts +1 -0
  161. package/dist/Transition/Transition.d.ts +16 -3
  162. package/dist/Transition/Transition.js +6 -4
  163. package/dist/Transition/TransitionGroup.d.ts +59 -0
  164. package/dist/Transition/childMapping.d.ts +23 -0
  165. package/dist/Tree/NodeList.d.ts +3 -0
  166. package/dist/Tree/RCTree.d.ts +15 -0
  167. package/dist/Tree/Tree.d.ts +15 -0
  168. package/dist/Tree/TreeNode.d.ts +7 -0
  169. package/dist/Tree/TreeNode.js +1 -4
  170. package/dist/Tree/contextTypes.d.ts +4 -0
  171. package/dist/Tree/typings.d.ts +3 -0
  172. package/dist/Tree/util.d.ts +17 -0
  173. package/dist/Tree/utils/KeyCode.d.ts +326 -0
  174. package/dist/Tree/utils/conductUtil.d.ts +6 -0
  175. package/dist/Tree/utils/dictUtil.d.ts +1 -0
  176. package/dist/Tree/utils/pickAttrs.d.ts +5 -0
  177. package/dist/Tree/utils/treeUtil.d.ts +25 -1
  178. package/dist/TreeSelect/TreeSelect.js +14 -13
  179. package/dist/TreeSelect/Utils.d.ts +1 -0
  180. package/dist/TreeSelect/typings.d.ts +19 -0
  181. package/dist/Upload/Upload.js +9 -8
  182. package/dist/Upload/UploadList.js +2 -1
  183. package/dist/Upload/typings.d.ts +34 -0
  184. package/dist/Upload/use-handlers.d.ts +1 -0
  185. package/dist/Upload/use-handlers.js +1 -1
  186. package/dist/Util/Math.d.ts +34 -0
  187. package/dist/Util/base.d.ts +22 -0
  188. package/dist/Util/base.js +5 -0
  189. package/dist/Util/shallowEqual.d.ts +11 -0
  190. package/dist/Util/treeUtils.d.ts +8 -0
  191. package/dist/VirtualList/Filler.d.ts +5 -0
  192. package/dist/VirtualList/VirtualList.d.ts +3 -0
  193. package/dist/VirtualList/hooks/useLayoutEffect.d.ts +3 -0
  194. package/dist/VirtualList/utils/algorithmUtil.d.ts +17 -0
  195. package/dist/VirtualList/utils/findDOMNode.d.ts +3 -0
  196. package/dist/hooks/animationPropsUtils.d.ts +12 -0
  197. package/dist/hooks/htmlPropsUtils.d.ts +8 -0
  198. package/dist/hooks/popperPropsUtils.d.ts +12 -0
  199. package/dist/hooks/treePropsUtils.d.ts +12 -0
  200. package/dist/hooks/useChildrenInstance.d.ts +11 -0
  201. package/dist/hooks/useClassNames.d.ts +78 -0
  202. package/dist/hooks/useControlled.d.ts +8 -0
  203. package/dist/hooks/useForceUpdate.d.ts +1 -0
  204. package/dist/index.css +72 -45422
  205. package/dist/index.d.ts +1 -0
  206. package/dist/theme-chalk/build.scss +64 -0
  207. package/dist/theme-chalk/icon/fonts.scss +8 -0
  208. package/dist/theme-chalk/icon/index.scss +0 -9
  209. package/dist/theme-chalk/index.scss +1 -0
  210. package/dist/theme-chalk/link/index.scss +0 -85
  211. package/dist/types/common.d.ts +24 -0
  212. package/dist/types/type.d.ts +5 -0
  213. package/package.json +1 -1
@@ -18,18 +18,31 @@ export interface INotification {
18
18
  closeAll: () => void;
19
19
  }
20
20
  export interface NotificationProps extends BaseProps, NativeProps, AnimationEventProps {
21
+ /** 标题 */
21
22
  title?: string;
23
+ /** 通知栏正文内容 */
22
24
  message?: string | React.ReactElement;
25
+ /** 是否将 message 属性作为 HTML 片段处理 */
23
26
  dangerouslyUseHTMLString?: boolean;
27
+ /** 通知的类型 */
24
28
  type?: 'success' | 'warning' | 'info' | 'error' | '';
29
+ /** 显示时间, 单位为毫秒。 值为 0 则不会自动关闭 */
25
30
  duration?: number;
31
+ /** 自定义弹出位置 */
26
32
  position?: Position;
33
+ /** 是否显示关闭按钮 */
27
34
  showClose?: boolean;
35
+ /** 关闭时的回调函数 */
28
36
  onClose?: () => void;
37
+ /** */
29
38
  iconClass?: string;
39
+ /** */
30
40
  id?: string;
41
+ /** 点击 Notification 时的回调函数 */
31
42
  onClick?: () => void;
43
+ /** 相对屏幕顶部的偏移量 偏移的距离,在同一时刻,所有的 Notification 实例应当具有一个相同的偏移量 */
32
44
  offset?: number;
45
+ /** */
33
46
  onSuccess?: (ref: HTMLDivElement) => void;
34
47
  }
35
48
  export interface NotificationRef {
@@ -37,11 +37,26 @@ var import_classnames = __toESM(require("classnames"));
37
37
  var import_react = __toESM(require("react"));
38
38
  var import_Button = require("../Button");
39
39
  var import_Icon = require("../Icon");
40
+ var import_Util = require("../Util");
40
41
  var import_hooks = require("../hooks");
41
42
  var import_Options = __toESM(require("./Options"));
42
43
  var import_Pager = __toESM(require("./Pager"));
43
44
  var import_util = require("./util");
44
45
  var Pagination = (0, import_react.forwardRef)((props, ref) => {
46
+ props = (0, import_Util.mergeDefaultProps)(
47
+ {
48
+ defaultCurrent: 1,
49
+ total: 0,
50
+ defaultPageSize: 10,
51
+ hideOnSinglePage: false,
52
+ showPrevNextJumpers: true,
53
+ showQuickJumper: false,
54
+ showLessItems: false,
55
+ showTitle: true,
56
+ itemRender: (page, type, element) => element
57
+ },
58
+ props
59
+ );
45
60
  const {
46
61
  classPrefix = "pagination",
47
62
  className,
@@ -447,16 +462,5 @@ var Pagination = (0, import_react.forwardRef)((props, ref) => {
447
462
  )
448
463
  );
449
464
  });
450
- Pagination.defaultProps = {
451
- defaultCurrent: 1,
452
- total: 0,
453
- defaultPageSize: 10,
454
- hideOnSinglePage: false,
455
- showPrevNextJumpers: true,
456
- showQuickJumper: false,
457
- showLessItems: false,
458
- showTitle: true,
459
- itemRender: (page, type, element) => element
460
- };
461
465
  Pagination.displayName = "Pagination";
462
466
  var Pagination_default = Pagination;
@@ -1,41 +1,69 @@
1
1
  import React from 'react';
2
2
  import { BaseProps, NativeProps } from '../types/common';
3
3
  export interface PaginationRef {
4
+ /** 当前页数 */
4
5
  pageNum: number;
6
+ /** 每页条数 */
5
7
  pageSize: number;
8
+ /** 设置当前页数 */
6
9
  setPageNum: (value: number) => void;
10
+ /** 设置每页条数 */
7
11
  setPageSize: (value: number) => void;
8
12
  }
9
13
  export interface PaginationProps extends BaseProps, NativeProps {
14
+ /** 当前页数 */
10
15
  current?: number;
16
+ /** 默认的当前页数 */
11
17
  defaultCurrent?: number;
18
+ /** 禁用分页 */
12
19
  disabled?: boolean;
20
+ /** 数据总数 */
13
21
  total: number;
22
+ /** 默认的每页条数 */
14
23
  defaultPageSize?: number;
24
+ /** 每页条数 */
15
25
  pageSize?: number;
26
+ /** 指定每页可以显示多少条 */
16
27
  pageSizeOptions?: Array<string>;
28
+ /** 只有一页时是否隐藏分页器 */
17
29
  hideOnSinglePage?: boolean;
30
+ /** */
18
31
  showPrevNextJumpers?: boolean;
32
+ /** 是否可以快速跳转至某页 */
19
33
  showQuickJumper?: boolean | {
20
34
  goButton: React.ReactElement;
21
35
  };
36
+ /** 用于显示数据总量和当前数据顺序 */
22
37
  showTotal?: (total: number, [from, to]: [number, number]) => React.ReactElement | boolean | string;
38
+ /** 是否显示较少页面内容 */
23
39
  showLessItems?: boolean;
40
+ /** 是否显示原生 tooltip 页码提示 */
24
41
  showTitle?: boolean;
42
+ /** 是否展示 pageSize 切换器,当 total 大于 50 时默认为 true */
25
43
  showSizeChanger?: boolean;
44
+ /** pageSize 变化的回调 */
26
45
  onShowSizeChange?: (current?: number, size?: number) => void;
46
+ /** 用于自定义页码的结构,可用于优化 SEO */
27
47
  itemRender?: (page: number, type: PageType, element: React.ReactElement) => React.ReactElement<{
28
48
  disabled?: boolean;
29
49
  }>;
50
+ /** 页码或 pageSize 改变的回调,参数是改变后的页码及每页条数 */
30
51
  onChange?: (current: number, pageSize: number) => void;
52
+ /** 当添加该属性时,显示为简单分页 */
31
53
  simple?: boolean;
54
+ /** 当为 small 时,是小尺寸分页 */
32
55
  size?: 'small';
33
56
  }
34
57
  export type PageType = 'page' | 'prev' | 'next' | 'jump-prev' | 'jump-next';
35
58
  export interface PagerProps extends BaseProps, NativeProps {
59
+ /** 页数 */
36
60
  page: number;
61
+ /** 是否显示原生 tooltip 页码提示 */
37
62
  showTitle?: boolean;
63
+ /** 是否激活状态 */
38
64
  active?: boolean;
65
+ /** 点击事件 */
39
66
  onClick?: (page: number) => void;
67
+ /** 用于自定义页码的结构,可用于优化 SEO */
40
68
  itemRender?: (current: number, type: PageType, element: React.ReactElement) => React.ReactElement;
41
69
  }
@@ -37,8 +37,21 @@ var import_react = __toESM(require("react"));
37
37
  var import_Button = require("../Button");
38
38
  var import_Icon = require("../Icon");
39
39
  var import_Tooltip = __toESM(require("../Tooltip/Tooltip"));
40
+ var import_Util = require("../Util");
40
41
  var import_hooks = require("../hooks");
41
42
  var Popconfirm = (props) => {
43
+ props = (0, import_Util.mergeDefaultProps)(
44
+ {
45
+ showArrow: true,
46
+ confirmButtonText: "确 定",
47
+ cancelButtonText: "取 消",
48
+ confirmButtonType: "primary",
49
+ cancelButtonType: "primary",
50
+ icon: "circle-question",
51
+ iconColor: "#f90"
52
+ },
53
+ props
54
+ );
42
55
  const {
43
56
  title,
44
57
  confirmButtonText,
@@ -101,14 +114,5 @@ var Popconfirm = (props) => {
101
114
  }
102
115
  );
103
116
  };
104
- Popconfirm.defaultProps = {
105
- showArrow: true,
106
- confirmButtonText: "确 定",
107
- cancelButtonText: "取 消",
108
- confirmButtonType: "primary",
109
- cancelButtonType: "primary",
110
- icon: "circle-question",
111
- iconColor: "#f90"
112
- };
113
117
  Popconfirm.displayName = "Popconfirm";
114
118
  var Popconfirm_default = Popconfirm;
@@ -3,14 +3,24 @@ import { PopperOptions } from '../Popper';
3
3
  import { BaseProps, NativeProps, TypeAttributes } from '../types/common';
4
4
  export interface PopconfirmProps extends BaseProps, NativeProps, PopperOptions {
5
5
  classPrefix?: string;
6
+ /** 显示的内容 */
6
7
  title: string;
8
+ /** 确认按钮文字 */
7
9
  confirmButtonText?: string;
10
+ /** 取消按钮文字 */
8
11
  cancelButtonText?: string;
12
+ /** 确认按钮类型 */
9
13
  confirmButtonType?: TypeAttributes.Appearance;
14
+ /** 取消按钮类型 */
10
15
  cancelButtonType?: TypeAttributes.Appearance;
16
+ /** 自定义图标 */
11
17
  icon?: IconName;
18
+ /** Icon 颜色 */
12
19
  iconColor?: string;
20
+ /** 是否隐藏 Icon */
13
21
  hideIcon?: boolean;
22
+ /** 点击确认按钮时触发 */
14
23
  onConfirm?: () => void;
24
+ /** 点击取消按钮时触发 */
15
25
  onCancel?: () => void;
16
26
  }
@@ -35,8 +35,20 @@ module.exports = __toCommonJS(Popover_exports);
35
35
  var import_classnames = __toESM(require("classnames"));
36
36
  var import_react = __toESM(require("react"));
37
37
  var import_Tooltip = __toESM(require("../Tooltip/Tooltip"));
38
+ var import_Util = require("../Util");
38
39
  var import_hooks = require("../hooks");
39
40
  var Popover = (props) => {
41
+ props = (0, import_Util.mergeDefaultProps)(
42
+ {
43
+ placement: "bottom",
44
+ showArrow: true,
45
+ showTimeout: 0,
46
+ hideTimeout: 300,
47
+ width: 200,
48
+ trigger: "click"
49
+ },
50
+ props
51
+ );
40
52
  const { title, classPrefix = "popover", plain, width, showTimeout, hideTimeout, offset, trigger, content, onEnter, onMouseEnter, onMouseLeave, placement, ...rest } = props;
41
53
  const { b, e, m } = (0, import_hooks.useClassNames)(classPrefix);
42
54
  const [popperProps] = (0, import_hooks.partitionPopperPropsUtils)(rest);
@@ -76,13 +88,5 @@ var Popover = (props) => {
76
88
  }
77
89
  );
78
90
  };
79
- Popover.defaultProps = {
80
- placement: "bottom",
81
- showArrow: true,
82
- showTimeout: 0,
83
- hideTimeout: 300,
84
- width: 200,
85
- trigger: "click"
86
- };
87
91
  Popover.displayName = "Popover";
88
92
  var Popover_default = Popover;
@@ -2,17 +2,29 @@ import React from 'react';
2
2
  import { PopperOptions } from '../Popper';
3
3
  import { TransitionProps } from '../Transition';
4
4
  import { AnimationEventProps, BaseProps, NativeProps } from '../types/common';
5
+ /** Dropdown 属性 */
5
6
  export interface PopoverProps extends BaseProps, NativeProps, PopperOptions, AnimationEventProps, TransitionProps {
7
+ /** 触发下拉的行为 */
6
8
  trigger?: 'hover' | 'click' | 'contextmenu';
9
+ /** 标题 */
7
10
  title?: string;
11
+ /** 显示的内容 */
8
12
  content?: string | React.ReactElement;
13
+ /** 默认提供的主题 */
9
14
  theme?: 'light' | 'dark' | string;
15
+ /** 宽度 */
10
16
  width?: number | string;
17
+ /** Popover 是否可用 */
11
18
  disabled?: boolean;
19
+ /** 展开下拉菜单的延时,仅在 trigger 为 hover 时有效 */
12
20
  showTimeout?: number;
21
+ /** 收起下拉菜单的延时(仅在 trigger 为 hover 时有效) */
13
22
  hideTimeout?: number;
23
+ /** 状态是否可见 */
14
24
  visible?: boolean;
25
+ /** 初始值 */
15
26
  defaultVisible?: boolean;
27
+ /** 是否纯文本 */
16
28
  plain?: boolean;
17
29
  onMouseEnter?: (e?: React.MouseEvent<any>) => void;
18
30
  onMouseLeave?: (e?: React.MouseEvent<any>) => void;
@@ -45,6 +45,19 @@ var import_prefix = require("../hooks/prefix");
45
45
  var import_popperOptions = __toESM(require("./popperOptions"));
46
46
  var Popper = (0, import_react.forwardRef)((props, ref) => {
47
47
  var _a;
48
+ props = (0, import_Util.mergeDefaultProps)(
49
+ {
50
+ arrowOffset: 5,
51
+ appendToBody: true,
52
+ offset: 10,
53
+ placement: "bottom",
54
+ popperClass: "",
55
+ showArrow: true,
56
+ gpuAcceleration: false,
57
+ strategy: "absolute"
58
+ },
59
+ props
60
+ );
48
61
  const {
49
62
  id = (0, import_Util.randomCode)(5),
50
63
  visible,
@@ -110,7 +123,7 @@ var Popper = (0, import_react.forwardRef)((props, ref) => {
110
123
  popperInstance
111
124
  }));
112
125
  const content = (0, import_react.useMemo)(
113
- () => /* @__PURE__ */ import_react.default.createElement(import_Transition.Transition, { visible, name: animation, className, afterLeave, ...transitionProps }, /* @__PURE__ */ import_react.default.createElement(
126
+ () => /* @__PURE__ */ import_react.default.createElement(import_Transition.Transition, { nodeRef: { current: popperElement }, visible, name: animation, className, afterLeave, ...transitionProps }, /* @__PURE__ */ import_react.default.createElement(
114
127
  "div",
115
128
  {
116
129
  id: `${import_prefix.globalKey}-popper-${id}`,
@@ -137,6 +150,7 @@ var Popper = (0, import_react.forwardRef)((props, ref) => {
137
150
  onMouseEnter,
138
151
  onMouseLeave,
139
152
  popperClass,
153
+ popperElement,
140
154
  popperStyle,
141
155
  props.children,
142
156
  showArrow,
@@ -148,14 +162,4 @@ var Popper = (0, import_react.forwardRef)((props, ref) => {
148
162
  );
149
163
  return appendToBody ? (0, import_react_dom.createPortal)(content, appendTo) : content;
150
164
  });
151
- Popper.defaultProps = {
152
- arrowOffset: 5,
153
- appendToBody: true,
154
- offset: 10,
155
- placement: "bottom",
156
- popperClass: "",
157
- showArrow: true,
158
- gpuAcceleration: false,
159
- strategy: "absolute"
160
- };
161
165
  var Popper_default = Popper;
@@ -17,13 +17,19 @@ export interface PopperOptionRef {
17
17
  }
18
18
  export type PopperOptions = {
19
19
  popperInstRef?: React.MutableRefObject<PopperOptionRef>;
20
+ /** 出现位置的偏移量 */
20
21
  offset?: number;
22
+ /** 出现的位置 */
21
23
  placement?: Placement;
24
+ /** 是否显示箭头 */
22
25
  arrowOffset?: number;
26
+ /** 箭头距离边缘的位置 */
23
27
  showArrow?: boolean;
28
+ /** 为 popper 添加自定义类名 */
24
29
  popperClass?: string;
30
+ /** 为 popper 添加自定义内联样式 */
25
31
  popperStyle?: React.CSSProperties;
26
- effect?: 'light' | 'dark';
32
+ effect?: 'light' | 'dark' | string;
27
33
  popperOptions?: Options;
28
34
  };
29
35
  export type PopperProps = {
@@ -35,9 +35,21 @@ module.exports = __toCommonJS(Progress_exports);
35
35
  var import_classnames = __toESM(require("classnames"));
36
36
  var import_react = __toESM(require("react"));
37
37
  var import_Icon = require("../Icon");
38
+ var import_Util = require("../Util");
38
39
  var import_hooks = require("../hooks");
39
40
  var import_prefix = require("../hooks/prefix");
40
41
  var Progress = (props) => {
42
+ props = (0, import_Util.mergeDefaultProps)(
43
+ {
44
+ type: "line",
45
+ strokeWidth: 6,
46
+ duration: 3,
47
+ width: 126,
48
+ showText: true,
49
+ strokeLinecap: "round"
50
+ },
51
+ props
52
+ );
41
53
  const { classPrefix = "progress", percentage, type, strokeWidth, textInside, status, indeterminate, duration, color, width, showText, strokeLinecap, format } = props;
42
54
  const { b, m, e, be, bem, is } = (0, import_hooks.useClassNames)(classPrefix);
43
55
  const backgroundColor = (0, import_react.useMemo)(() => {
@@ -182,13 +194,5 @@ var Progress = (props) => {
182
194
  );
183
195
  return /* @__PURE__ */ import_react.default.createElement("div", { className: (0, import_classnames.default)(b(), m(type), is(status), props.className), style: props.style }, type === "line" && bar, (type === "circle" || type === "dashboard") && circle, showText && !textInside && /* @__PURE__ */ import_react.default.createElement("div", { className: e`text` }, text));
184
196
  };
185
- Progress.defaultProps = {
186
- type: "line",
187
- strokeWidth: 6,
188
- duration: 3,
189
- width: 126,
190
- showText: true,
191
- strokeLinecap: "round"
192
- };
193
197
  Progress.displayName = "Progress";
194
198
  var Progress_default = Progress;
@@ -1,18 +1,30 @@
1
1
  import { BaseProps, NativeProps } from '../types/common';
2
2
  export interface PropgressProps extends BaseProps, NativeProps {
3
+ /** 百分比,必填 */
3
4
  percentage: number;
5
+ /** 进度条类型 */
4
6
  type?: 'line' | 'circle' | 'dashboard';
7
+ /** 进度条的宽度 */
5
8
  strokeWidth?: number;
9
+ /** 进度条显示文字内置在进度条内(仅 type 为 'line' 时可用) */
6
10
  textInside?: boolean;
11
+ /** 进度条当前状态 */
7
12
  status?: 'success' | 'exception' | 'warning';
13
+ /** 是否为动画进度条 */
8
14
  indeterminate?: boolean;
15
+ /** 控制动画进度条速度 */
9
16
  duration?: number;
17
+ /** 进度条背景色 进度条背景色 (会覆盖 status 状态颜色) */
10
18
  color?: string | ((percentage: number) => string) | {
11
19
  color: string;
12
20
  percentage: number;
13
21
  }[];
22
+ /** 环形进度条画布宽度(只在 type 为 circle 或 dashboard 时可用) */
14
23
  width?: number;
24
+ /** 是否显示进度条文字内容 */
15
25
  showText?: boolean;
26
+ /** circle/dashboard 类型路径两端的形状 */
16
27
  strokeLinecap?: 'butt' | 'round' | 'square';
28
+ /** 指定进度条文字内容 */
17
29
  format?: (percentage: number) => string;
18
30
  }
@@ -7,11 +7,18 @@ export type RadioRef = {
7
7
  setChecked: (value: boolean) => void;
8
8
  };
9
9
  export interface RadioProps<T = ValueType> extends Omit<React.AllHTMLAttributes<HTMLInputElement>, 'size' | 'prefix' | 'type' | 'value' | 'defaultValue' | 'onChange' | 'style' | 'children'>, Omit<FormControlBaseProps<T>, 'onChange'>, BaseProps, NativeProps {
10
+ /** tooltip 提示*/
10
11
  title?: string;
12
+ /** 是否只读 */
11
13
  readOnly?: boolean;
14
+ /** Render the control as plain text */
12
15
  plaintext?: boolean;
16
+ /** 是否选中 */
13
17
  checked?: boolean;
18
+ /** 默认是否选中 */
14
19
  defaultChecked?: boolean;
20
+ /** 原生 name 属性 */
15
21
  name?: string;
22
+ /** 当绑定值变化时触发的事件 */
16
23
  onChange?: (checked: boolean, value: T, event: React.ChangeEvent<HTMLInputElement>) => void;
17
24
  }
@@ -6,6 +6,7 @@ export interface RadioContextProps {
6
6
  value?: ValueType;
7
7
  controlled?: boolean;
8
8
  disabled?: boolean;
9
+ /** 尺寸 */
9
10
  size?: TypeAttributes.Size;
10
11
  readOnly?: boolean;
11
12
  plaintext?: boolean;
package/dist/Row/Row.js CHANGED
@@ -38,6 +38,14 @@ var import_Util = require("../Util");
38
38
  var import_hooks = require("../hooks");
39
39
  var import_RowContext = require("./RowContext");
40
40
  var Row = (props) => {
41
+ props = (0, import_Util.mergeDefaultProps)(
42
+ {
43
+ gutter: 0,
44
+ justify: "start",
45
+ tag: "div"
46
+ },
47
+ props
48
+ );
41
49
  const { tag = "div", gutter = 0, justify, align, classPrefix = "row" } = props;
42
50
  const { b, is } = (0, import_hooks.useClassNames)(classPrefix);
43
51
  return /* @__PURE__ */ import_react.default.createElement(import_RowContext.RowContext.Provider, { value: { gutter } }, import_react.default.createElement(
@@ -52,9 +60,4 @@ var Row = (props) => {
52
60
  props.children
53
61
  ));
54
62
  };
55
- Row.defaultProps = {
56
- gutter: 0,
57
- justify: "start",
58
- tag: "div"
59
- };
60
63
  var Row_default = Row;
@@ -1,5 +1,6 @@
1
1
  /// <reference types="react" />
2
2
  export interface RowContext {
3
+ /** 栅格间隔 */
3
4
  gutter?: number;
4
5
  }
5
6
  export declare const RowContext: import("react").Context<RowContext>;
@@ -1,7 +1,11 @@
1
1
  import { BaseProps, NativeProps } from '../types/common';
2
2
  export interface RowProps extends BaseProps, NativeProps {
3
+ /** 栅格间隔 */
3
4
  gutter?: number;
5
+ /** 布局下的水平排列方式 */
4
6
  justify?: 'start' | 'end' | 'center' | 'space-around' | 'space-between' | 'space-evenly';
7
+ /** flex 布局下的垂直排列方式 */
5
8
  align?: 'top' | 'middle' | 'bottom';
9
+ /** 自定义元素标签 */
6
10
  tag?: string;
7
11
  }
@@ -36,10 +36,23 @@ var import_classnames = __toESM(require("classnames"));
36
36
  var import_isNumber = __toESM(require("lodash/isNumber"));
37
37
  var import_isObject = __toESM(require("lodash/isObject"));
38
38
  var import_react = __toESM(require("react"));
39
+ var import_Util = require("../Util");
39
40
  var import_resize_event = require("../Util/resize-event");
40
41
  var import_hooks = require("../hooks");
41
42
  var import_Thumb = __toESM(require("./Thumb"));
42
43
  var Scrollbar = (0, import_react.forwardRef)((props, ref) => {
44
+ props = (0, import_Util.mergeDefaultProps)(
45
+ {
46
+ native: false,
47
+ tag: "div",
48
+ always: false,
49
+ minSize: 20,
50
+ height: "100%",
51
+ showHorizontal: true,
52
+ showVertical: true
53
+ },
54
+ props
55
+ );
43
56
  const { tag, className, style, wrapClass, wrapStyle, viewClass, viewStyle, native, height, maxHeight, minSize, always, onScroll, showHorizontal, showVertical, ...rest } = props;
44
57
  const { b, e, em } = (0, import_hooks.useClassNames)("scrollbar");
45
58
  const [htmlInputProps] = (0, import_hooks.partitionHTMLProps)(rest);
@@ -149,14 +162,5 @@ var Scrollbar = (0, import_react.forwardRef)((props, ref) => {
149
162
  )
150
163
  ), !native ? /* @__PURE__ */ import_react.default.createElement(import_react.default.Fragment, null, showHorizontal && /* @__PURE__ */ import_react.default.createElement(import_Thumb.default, { move: moveX, ratio: ratioX, size: sizeWidth, vertical: false, always, scrollbar: containerRef, wrapRef }), showVertical && /* @__PURE__ */ import_react.default.createElement(import_Thumb.default, { move: moveY, ratio: ratioY, size: sizeHeight, vertical: true, always, scrollbar: containerRef, wrapRef })) : null);
151
164
  });
152
- Scrollbar.defaultProps = {
153
- native: false,
154
- tag: "div",
155
- always: false,
156
- minSize: 20,
157
- height: "100%",
158
- showHorizontal: true,
159
- showVertical: true
160
- };
161
165
  Scrollbar.displayName = "Scrollbar";
162
166
  var Scrollbar_default = Scrollbar;
@@ -150,6 +150,6 @@ var Thumb = (props) => {
150
150
  }
151
151
  };
152
152
  }, []);
153
- return /* @__PURE__ */ import_react.default.createElement(import_Transition.Transition, { name: b`fade`, visible: always || visible, transitionAppear: true, afterEnter: onEnter }, /* @__PURE__ */ import_react.default.createElement("div", { ref: instanceRef, className: (0, import_classnames.default)(e`bar`, is(bar.key, { always })), onMouseDown: clickTrackHandler }, /* @__PURE__ */ import_react.default.createElement("div", { ref: thumbRef, className: (0, import_classnames.default)(e`thumb`), style: thumbStyle, onMouseDown: clickThumbHandler })));
153
+ return /* @__PURE__ */ import_react.default.createElement(import_Transition.Transition, { nodeRef: instanceRef, name: b`fade`, visible: always || visible, transitionAppear: true, afterEnter: onEnter }, /* @__PURE__ */ import_react.default.createElement("div", { ref: instanceRef, className: (0, import_classnames.default)(e`bar`, is(bar.key, { always })), onMouseDown: clickTrackHandler }, /* @__PURE__ */ import_react.default.createElement("div", { ref: thumbRef, className: (0, import_classnames.default)(e`thumb`), style: thumbStyle, onMouseDown: clickThumbHandler })));
154
154
  };
155
155
  var Thumb_default = (0, import_react.memo)(Thumb);
@@ -2,27 +2,47 @@ import React, { RefObject } from 'react';
2
2
  import { BaseProps, NativeProps } from '../types/common';
3
3
  export interface ScrollbarRef {
4
4
  ref: RefObject<HTMLDivElement>;
5
+ /** 滚动到一组特定坐标 */
5
6
  scrollTo: (options: number, yCoord?: number) => void;
7
+ /** 设置滚动条到顶部的距离 */
6
8
  setScrollTop: (value: number) => void;
9
+ /** 设置滚动条到左边的距离 */
7
10
  setScrollLeft: (value: number) => void;
11
+ /** 手动更新滚动条状态 */
8
12
  update: () => void;
13
+ /** 滚动条包裹的 ref 对象 */
9
14
  wrapRef: RefObject<HTMLDivElement>;
15
+ /** 视图ref对象 */
10
16
  resizeRef: RefObject<any>;
11
17
  }
12
18
  export interface ScrollbarProps extends BaseProps, NativeProps<'--el-scrollbar-opacity' | '--el-scrollbar-bg-color' | '--el-scrollbar-hover-opacity' | '--el-scrollbar-hover-bg-color' | '--el-scrollbar-width'> {
19
+ /** 滚动条高度 */
13
20
  height?: number | string;
21
+ /** 滚动条最大高度 */
14
22
  maxHeight?: number | string;
23
+ /** 是否使用原生滚动条样式 */
15
24
  native?: boolean;
25
+ /** 包裹容器的自定义样式 */
16
26
  wrapStyle?: React.CSSProperties;
27
+ /** 包裹容器的自定义类名 */
17
28
  wrapClass?: string;
29
+ /** 视图的自定义样式 */
18
30
  viewStyle?: React.CSSProperties;
31
+ /** 视图的自定义类名 */
19
32
  viewClass?: string;
33
+ /** 不响应容器尺寸变化,如果容器尺寸不会发生变化,最好设置它可以优化性能 */
20
34
  noresize?: boolean;
35
+ /** 视图的元素标签 */
21
36
  tag?: string;
37
+ /** 滚动条总是显示 */
22
38
  always?: boolean;
39
+ /** 滚动条最小尺寸 */
23
40
  minSize?: number;
41
+ /** 是否显示横向滚动条 */
24
42
  showHorizontal?: boolean;
43
+ /** 是否显示纵向滚动条 */
25
44
  showVertical?: boolean;
45
+ /** 滚动时触发的事件 */
26
46
  onScroll?: (data: {
27
47
  e: React.UIEvent<HTMLDivElement, UIEvent>;
28
48
  scrollTop: number;
@@ -48,6 +48,23 @@ var import_Util = require("../Util");
48
48
  var import_hooks = require("../hooks");
49
49
  var import_SelectDropdown = __toESM(require("./SelectDropdown"));
50
50
  var SelectCore = (0, import_react.forwardRef)((props, ref) => {
51
+ props = (0, import_Util.mergeDefaultProps)(
52
+ {
53
+ placeholder: "请选择",
54
+ noDataText: "无数据",
55
+ noMatchText: "没有找到匹配的结果",
56
+ loadingText: /* @__PURE__ */ import_react.default.createElement("span", null, /* @__PURE__ */ import_react.default.createElement(import_Icon.Icon, { prefix: "fas", name: "spinner", spin: true }), " 加载中..."),
57
+ clearable: true,
58
+ filterable: false,
59
+ error: false,
60
+ required: false,
61
+ disabled: false,
62
+ maxWidth: 500,
63
+ collapseTagsTooltip: true,
64
+ maxCollapseTags: 1
65
+ },
66
+ props
67
+ );
51
68
  const { b, e, be, m, is } = (0, import_hooks.useClassNames)("select");
52
69
  const containerRef = (0, import_react.useRef)(null);
53
70
  const contentRef = (0, import_react.useRef)(null);
@@ -412,19 +429,5 @@ var SelectCore = (0, import_react.forwardRef)((props, ref) => {
412
429
  )
413
430
  ));
414
431
  });
415
- SelectCore.defaultProps = {
416
- placeholder: "请选择",
417
- noDataText: "无数据",
418
- noMatchText: "没有找到匹配的结果",
419
- loadingText: /* @__PURE__ */ import_react.default.createElement("span", null, /* @__PURE__ */ import_react.default.createElement(import_Icon.Icon, { prefix: "fas", name: "spinner", spin: true }), " 加载中..."),
420
- clearable: true,
421
- filterable: false,
422
- error: false,
423
- required: false,
424
- disabled: false,
425
- maxWidth: 500,
426
- collapseTagsTooltip: true,
427
- maxCollapseTags: 1
428
- };
429
432
  SelectCore.displayName = "SelectCore";
430
433
  var SelectCore_default = SelectCore;