fat-design 0.0.1-beta.20251010161507 → 0.0.1-beta.20251012170705

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 (247) hide show
  1. package/README.md +285 -285
  2. package/index.browser.js +24 -24
  3. package/index.js +3869 -3723
  4. package/index.umd.cjs +23 -23
  5. package/index.umd.js +23 -23
  6. package/libs/config-16.js +7 -7
  7. package/libs/config-17.js +7 -7
  8. package/libs/config-18.js +9 -9
  9. package/libs/config-19.js +9 -9
  10. package/libs/theme/theme-blue1.css +58 -58
  11. package/libs/theme/theme-blue2.css +63 -63
  12. package/libs/theme/theme-blue3.css +73 -73
  13. package/libs/theme/theme-blue4.css +53 -53
  14. package/libs/theme/theme-default.css +60 -60
  15. package/libs/theme/theme-green.css +96 -96
  16. package/libs/theme/theme-green2.css +96 -96
  17. package/libs/theme/theme-orange.css +58 -58
  18. package/libs/theme/theme-pink.css +53 -53
  19. package/libs/theme/theme-purple.css +53 -53
  20. package/libs/theme/theme-red.css +55 -55
  21. package/package.json +2 -2
  22. package/types/0buildTypes/config-provider/constants.d.ts +3 -3
  23. package/types/0buildTypes/config-provider/index.d.ts +4 -4
  24. package/types/0buildTypes/config-provider/v2/consumer.d.ts +3 -3
  25. package/types/0buildTypes/config-provider/v2/context.d.ts +6 -6
  26. package/types/0buildTypes/config-provider/v2/error-boundary.d.ts +27 -27
  27. package/types/0buildTypes/config-provider/v2/functions.d.ts +66 -66
  28. package/types/0buildTypes/config-provider/v2/index.d.ts +36 -37
  29. package/types/0buildTypes/config-provider/v2/provider.d.ts +4 -4
  30. package/types/0buildTypes/config-provider/v2/types.d.ts +22 -22
  31. package/types/0buildTypes/dependencies.d.ts +2 -2
  32. package/types/0buildTypes/empty/empty.d.ts +22 -22
  33. package/types/0buildTypes/empty/index.d.ts +2 -2
  34. package/types/0buildTypes/filter/filter-types.d.ts +21 -21
  35. package/types/0buildTypes/filter/filter.d.ts +10 -10
  36. package/types/0buildTypes/filter/index.d.ts +9 -9
  37. package/types/0buildTypes/form2/deps.d.ts +10 -10
  38. package/types/0buildTypes/form2/form-actions.d.ts +36 -36
  39. package/types/0buildTypes/form2/form-buttons.d.ts +28 -28
  40. package/types/0buildTypes/form2/form-context.d.ts +4 -4
  41. package/types/0buildTypes/form2/form-error.d.ts +3 -3
  42. package/types/0buildTypes/form2/form-item-card.d.ts +4 -4
  43. package/types/0buildTypes/form2/form-item-comp.d.ts +4 -4
  44. package/types/0buildTypes/form2/form-item-label.d.ts +4 -4
  45. package/types/0buildTypes/form2/form-item-preview.d.ts +4 -4
  46. package/types/0buildTypes/form2/form-item.d.ts +7 -7
  47. package/types/0buildTypes/form2/form-layout.d.ts +3 -3
  48. package/types/0buildTypes/form2/form-rules.d.ts +3 -3
  49. package/types/0buildTypes/form2/form-section.d.ts +25 -25
  50. package/types/0buildTypes/form2/form-types.d.ts +395 -395
  51. package/types/0buildTypes/form2/form.d.ts +36 -36
  52. package/types/0buildTypes/form2/helper/buildParams.d.ts +5 -5
  53. package/types/0buildTypes/form2/helper/constants.d.ts +24 -24
  54. package/types/0buildTypes/form2/helper/fixItemProps.d.ts +16 -16
  55. package/types/0buildTypes/form2/helper/fnInheritProps.d.ts +2 -2
  56. package/types/0buildTypes/form2/helper/linkageFormState.d.ts +16 -16
  57. package/types/0buildTypes/form2/helper/useDataSource.d.ts +14 -14
  58. package/types/0buildTypes/form2/helper/useFormChildren.d.ts +5 -5
  59. package/types/0buildTypes/form2/helper/useFormItemState.d.ts +3 -3
  60. package/types/0buildTypes/form2/helper/useGetXProps.d.ts +3 -3
  61. package/types/0buildTypes/form2/index.d.ts +20 -20
  62. package/types/0buildTypes/form2/layout/from-float-layout.d.ts +3 -3
  63. package/types/0buildTypes/hooks/index.d.ts +25 -16
  64. package/types/0buildTypes/hooks/useComparedState.d.ts +2 -0
  65. package/types/0buildTypes/hooks/useCurrentState.d.ts +11 -11
  66. package/types/0buildTypes/hooks/useOnKeyPressSave.d.ts +12 -12
  67. package/types/0buildTypes/hooks/usePersistFn.d.ts +3 -3
  68. package/types/0buildTypes/hooks/usePreciseStore.d.ts +53 -53
  69. package/types/0buildTypes/hooks/useSize.d.ts +6 -6
  70. package/types/0buildTypes/hooks/useUniqueId.d.ts +2 -2
  71. package/types/0buildTypes/hooks/useValueOnChange.d.ts +2 -2
  72. package/types/0buildTypes/image/Image.d.ts +42 -42
  73. package/types/0buildTypes/image/Operations.d.ts +25 -25
  74. package/types/0buildTypes/image/Preview.d.ts +64 -64
  75. package/types/0buildTypes/image/PreviewGroup.d.ts +32 -32
  76. package/types/0buildTypes/image/common.d.ts +2 -2
  77. package/types/0buildTypes/image/context.d.ts +7 -7
  78. package/types/0buildTypes/image/getFixScaleEleTransPosition.d.ts +17 -17
  79. package/types/0buildTypes/image/hooks/useImageTransform.d.ts +28 -28
  80. package/types/0buildTypes/image/hooks/useMouseEvent.d.ts +9 -9
  81. package/types/0buildTypes/image/hooks/usePreviewItems.d.ts +7 -7
  82. package/types/0buildTypes/image/hooks/useRegisterImage.d.ts +2 -2
  83. package/types/0buildTypes/image/hooks/useStatus.d.ts +14 -14
  84. package/types/0buildTypes/image/hooks/useTouchEvent.d.ts +8 -8
  85. package/types/0buildTypes/image/index.d.ts +6 -6
  86. package/types/0buildTypes/image/interface.d.ts +14 -14
  87. package/types/0buildTypes/image/previewConfig.d.ts +4 -4
  88. package/types/0buildTypes/image/util.d.ts +1 -1
  89. package/types/0buildTypes/image/utils/KeyCode.d.ts +23 -23
  90. package/types/0buildTypes/image/utils/addEventListener.d.ts +4 -4
  91. package/types/0buildTypes/image/utils/buildIcons.d.ts +2 -2
  92. package/types/0buildTypes/image/utils/css.d.ts +8 -8
  93. package/types/0buildTypes/image/utils/isEqual.d.ts +8 -8
  94. package/types/0buildTypes/image/utils/raf.d.ts +6 -6
  95. package/types/0buildTypes/image/utils/useEvent.d.ts +1 -1
  96. package/types/0buildTypes/image/utils/useLayoutEffect.d.ts +4 -4
  97. package/types/0buildTypes/image/utils/useMergedState.d.ts +12 -12
  98. package/types/0buildTypes/image/utils/useSafeState.d.ts +14 -14
  99. package/types/0buildTypes/index.d.ts +4 -4
  100. package/types/0buildTypes/libs.d.ts +67 -67
  101. package/types/0buildTypes/nav/group.d.ts +30 -30
  102. package/types/0buildTypes/nav/index.d.ts +4 -4
  103. package/types/0buildTypes/nav/item.d.ts +30 -30
  104. package/types/0buildTypes/nav/nav.d.ts +2 -2
  105. package/types/0buildTypes/nav/popup-item.d.ts +24 -24
  106. package/types/0buildTypes/nav/sub-nav.d.ts +30 -30
  107. package/types/0buildTypes/nav/types.d.ts +375 -375
  108. package/types/0buildTypes/others.d.ts +10 -10
  109. package/types/0buildTypes/pages/deps.d.ts +5 -5
  110. package/types/0buildTypes/pages/detail-page/detail-page-card-form.d.ts +12 -12
  111. package/types/0buildTypes/pages/detail-page/detail-page-form-item.d.ts +9 -9
  112. package/types/0buildTypes/pages/detail-page/detail-page-section.d.ts +19 -19
  113. package/types/0buildTypes/pages/detail-page/detail-page-summary.d.ts +9 -9
  114. package/types/0buildTypes/pages/detail-page/detail-page.d.ts +14 -14
  115. package/types/0buildTypes/pages/detail-page/index.d.ts +2 -2
  116. package/types/0buildTypes/pages/detail-page/types.d.ts +29 -29
  117. package/types/0buildTypes/pages/page-card/types.d.ts +6 -6
  118. package/types/0buildTypes/previews/renderFileImage.d.ts +34 -34
  119. package/types/0buildTypes/query-form/index.d.ts +2 -2
  120. package/types/0buildTypes/query-form/query-form-items.d.ts +3 -3
  121. package/types/0buildTypes/query-form/query-form-layout.d.ts +2 -2
  122. package/types/0buildTypes/query-form/query-form.d.ts +18 -18
  123. package/types/0buildTypes/query-form/types.d.ts +5 -5
  124. package/types/0buildTypes/sortable-list/helpers.d.ts +8 -8
  125. package/types/0buildTypes/sortable-list/hooks.d.ts +24 -24
  126. package/types/0buildTypes/sortable-list/index.d.ts +14 -14
  127. package/types/0buildTypes/sortable-list/sortable-editable-table.d.ts +2 -2
  128. package/types/0buildTypes/sortable-list/sortable-list.d.ts +560 -560
  129. package/types/0buildTypes/sortable-list/sortable-table.d.ts +2 -2
  130. package/types/0buildTypes/sortable-list/types.d.ts +15 -15
  131. package/types/0buildTypes/table-pro/index.d.ts +26 -26
  132. package/types/0buildTypes/table-pro/table-pro.d.ts +17 -17
  133. package/types/0buildTypes/table-pro/types.d.ts +95 -95
  134. package/types/0buildTypes/table-pro/useTablePro.d.ts +10 -10
  135. package/types/0buildTypes/table-pro/utils/formatQueryRes.d.ts +1 -1
  136. package/types/0buildTypes/table-pro/widget/column-setting.d.ts +5 -5
  137. package/types/0buildTypes/table-pro/widget/deps.d.ts +2 -2
  138. package/types/0buildTypes/table-pro/widget/index.d.ts +25 -25
  139. package/types/0buildTypes/table-pro/widget/operations.d.ts +5 -5
  140. package/types/0buildTypes/table-pro/widget/operationsActions.d.ts +2 -2
  141. package/types/0buildTypes/table-pro/widget/renderFormats.d.ts +17 -17
  142. package/types/0buildTypes/table-pro/widget/renderMultiFieldCell.d.ts +4 -4
  143. package/types/0buildTypes/table-pro/widget/renderOperationCell.d.ts +4 -4
  144. package/types/0buildTypes/table-pro/widget/renderToolbar.d.ts +6 -6
  145. package/types/0buildTypes/table-pro/widget/table-utils-types.d.ts +40 -40
  146. package/types/0buildTypes/util/comp.d.ts +16 -16
  147. package/types/0buildTypes/util/component.d.ts +1 -1
  148. package/types/0buildTypes/util/constants.d.ts +4 -4
  149. package/types/0buildTypes/util/dom.d.ts +116 -116
  150. package/types/0buildTypes/util/env.d.ts +7 -7
  151. package/types/0buildTypes/util/func-wrapper.d.ts +1 -1
  152. package/types/0buildTypes/util/func.d.ts +73 -73
  153. package/types/0buildTypes/util/guid.d.ts +11 -11
  154. package/types/0buildTypes/util/isStateEquals.d.ts +4 -4
  155. package/types/0buildTypes/util/localforage.d.ts +11 -11
  156. package/types/0buildTypes/util/log.d.ts +18 -18
  157. package/types/0buildTypes/util/pick-res-data.d.ts +28 -28
  158. package/types/0buildTypes/util/react-dom.d.ts +27 -27
  159. package/types/0buildTypes/util/shallowEqual.d.ts +3 -3
  160. package/types/0buildTypes/util/string.d.ts +32 -32
  161. package/types/0buildTypes/util/tiny-emitter.d.ts +10 -10
  162. package/types/0buildTypes/util/toMap.d.ts +7 -7
  163. package/types/affix/index.d.ts +33 -33
  164. package/types/animate/index.d.ts +80 -80
  165. package/types/avatar/index.d.ts +41 -41
  166. package/types/badge/index.d.ts +38 -38
  167. package/types/balloon/index.d.ts +254 -254
  168. package/types/balloon-confirm/index.d.ts +119 -78
  169. package/types/batch-input/index.d.ts +152 -152
  170. package/types/box/index.d.ts +25 -18
  171. package/types/breadcrumb/index.d.ts +60 -60
  172. package/types/button/index.d.ts +179 -179
  173. package/types/calendar/index.d.ts +76 -76
  174. package/types/card/index.d.ts +147 -147
  175. package/types/cascader/index.d.ts +135 -135
  176. package/types/cascader-select/index.d.ts +230 -230
  177. package/types/checkbox/index.d.ts +175 -175
  178. package/types/collapse/index.d.ts +96 -96
  179. package/types/comments/index.d.ts +278 -278
  180. package/types/config-provider/index.d.ts +3 -3
  181. package/types/date-picker/index.d.ts +123 -123
  182. package/types/dialog/index.d.ts +328 -328
  183. package/types/divider/index.d.ts +21 -21
  184. package/types/drawer/index.d.ts +121 -121
  185. package/types/dropdown/index.d.ts +198 -198
  186. package/types/editable-table/index.d.ts +121 -121
  187. package/types/empty/index.d.ts +78 -78
  188. package/types/field/index.d.ts +33 -33
  189. package/types/filter/index.d.ts +2 -2
  190. package/types/form/index.d.ts +5 -5
  191. package/types/grid/index.d.ts +142 -142
  192. package/types/hooks/index.d.ts +2 -2
  193. package/types/icon/index.d.ts +29 -29
  194. package/types/image/index.d.ts +3 -3
  195. package/types/index.d.ts +69 -69
  196. package/types/input/index.d.ts +458 -458
  197. package/types/list/index.d.ts +69 -69
  198. package/types/loading/index.d.ts +100 -100
  199. package/types/locale/default.d.ts +143 -143
  200. package/types/locale/en-us.d.ts +1 -1
  201. package/types/locale/id-id.d.ts +1 -1
  202. package/types/locale/it-it.d.ts +1 -1
  203. package/types/locale/ja-jp.d.ts +1 -1
  204. package/types/locale/ko-kr.d.ts +1 -1
  205. package/types/locale/ms-my.d.ts +1 -1
  206. package/types/locale/pt-pt.d.ts +1 -1
  207. package/types/locale/th-th.d.ts +1 -1
  208. package/types/locale/vi-vn.d.ts +1 -1
  209. package/types/locale/zh-cn.d.ts +1 -1
  210. package/types/locale/zh-hk.d.ts +1 -1
  211. package/types/locale/zh-tw.d.ts +1 -1
  212. package/types/menu/index.d.ts +336 -336
  213. package/types/menu-button/index.d.ts +100 -100
  214. package/types/message/index.d.ts +165 -165
  215. package/types/nav/index.d.ts +313 -313
  216. package/types/notification/index.d.ts +35 -35
  217. package/types/number-picker/index.d.ts +161 -161
  218. package/types/overlay/index.d.ts +363 -363
  219. package/types/pagination/index.d.ts +115 -115
  220. package/types/paragraph/index.d.ts +23 -23
  221. package/types/progress/index.d.ts +53 -53
  222. package/types/query-form/index.d.ts +3 -3
  223. package/types/radio/index.d.ts +180 -180
  224. package/types/range/index.d.ts +120 -120
  225. package/types/rating/index.d.ts +84 -84
  226. package/types/responsive-grid/index.d.ts +30 -30
  227. package/types/search/index.d.ts +219 -219
  228. package/types/select/index.d.ts +479 -479
  229. package/types/shell/index.d.ts +53 -53
  230. package/types/slider/index.d.ts +172 -172
  231. package/types/sortable-list/index.d.ts +165 -165
  232. package/types/split-button/index.d.ts +134 -134
  233. package/types/step/index.d.ts +108 -108
  234. package/types/switch/index.d.ts +85 -85
  235. package/types/tab/index.d.ts +170 -170
  236. package/types/table/index.d.ts +407 -407
  237. package/types/table-pro/index.d.ts +3 -3
  238. package/types/tag/index.d.ts +142 -142
  239. package/types/time-picker/index.d.ts +193 -193
  240. package/types/timeline/index.d.ts +95 -95
  241. package/types/transfer/index.d.ts +199 -199
  242. package/types/tree/index.d.ts +421 -421
  243. package/types/tree-select/index.d.ts +251 -251
  244. package/types/typography/index.d.ts +28 -28
  245. package/types/upload/index.d.ts +711 -711
  246. package/types/util.d.ts +80 -80
  247. package/types/virtual-list/index.d.ts +44 -44
@@ -1,407 +1,407 @@
1
- /// <reference types="react" />
2
-
3
- import * as React from 'react';
4
- import CommonProps from '../util';
5
- import { LoadingProps } from '../loading';
6
- import { AffixProps } from '../affix';
7
-
8
- interface HTMLAttributesWeak extends React.HTMLAttributes<HTMLElement> {
9
- title?: any;
10
- }
11
-
12
- export interface ColumnProps extends HTMLAttributesWeak, CommonProps {
13
- /**
14
- * 指定列对应的字段,支持`a.b`形式的快速取值
15
- */
16
- dataIndex?: string;
17
-
18
- /**
19
- * 行渲染的逻辑
20
- * value, rowIndex, record, context四个属性只可读不可被更改
21
- * Function(value, index, record) => Element
22
- */
23
- cell?: React.ReactElement<any> | React.ReactNode | ((value: any, index: number, record: any) => any);
24
-
25
- /**
26
- * 表头显示的内容
27
- * value, rowIndex, record, context四个属性只可读不可被更改
28
- */
29
- title?: React.ReactElement<any> | React.ReactNode | (() => any);
30
-
31
- htmlTitle?: string;
32
- /**
33
- * 是否支持排序
34
- */
35
- sortable?: boolean;
36
-
37
- /**
38
- * 列宽,注意在锁列的情况下一定需要配置宽度
39
- */
40
- width?: number | string;
41
-
42
- /**
43
- * 单元格的对齐方式
44
- */
45
- align?: 'left' | 'center' | 'right';
46
- sortDirections?: Array<'desc' | 'asc' | 'default'>;
47
- /**
48
- * 单元格标题的对齐方式, 不配置默认读取align值
49
- */
50
- alignHeader?: 'left' | 'center' | 'right';
51
-
52
- /**
53
- * 生成标题过滤的菜单, 格式为`[{label:'xxx', value:'xxx'}]`
54
- */
55
- filters?: Array<any>;
56
-
57
- /**
58
- * 过滤的模式是单选还是多选
59
- */
60
- filterMode?: 'single' | 'multiple';
61
-
62
- /**
63
- * 是否支持锁列,可选值为`left`,`right`, `true`
64
- */
65
- lock?: boolean | string;
66
-
67
- /**
68
- * 是否支持列宽调整, 当该值设为true,table的布局方式会修改为fixed.
69
- */
70
- resizable?: boolean;
71
- /**
72
- * 是否支持异步列宽调整, 当该值设为true,table的布局方式会修改为fixed.
73
- */
74
- asyncResizable?: boolean;
75
-
76
- /**
77
- * header cell 横跨的格数,设置为0表示不出现此 th
78
- */
79
- colSpan?: number;
80
-
81
- /**
82
- * 设置该列单元格的word-break样式,对于id类、中文类适合用all,对于英文句子适合用word
83
- */
84
- wordBreak?: 'all' | 'word';
85
- }
86
-
87
- export class Column extends React.Component<ColumnProps, any> {}
88
-
89
- interface HTMLAttributesWeak extends React.HTMLAttributes<HTMLElement> {
90
- title?: any;
91
- }
92
-
93
- export interface ColumnGroupProps extends HTMLAttributesWeak, CommonProps {
94
- /**
95
- * 表头显示的内容
96
- */
97
- title?: React.ReactElement<any> | React.ReactNode | (() => any);
98
- }
99
-
100
- export class ColumnGroup extends React.Component<ColumnGroupProps, any> {}
101
-
102
- export interface GroupHeaderProps extends React.HTMLAttributes<HTMLElement>, CommonProps {
103
- /**
104
- * 行渲染的逻辑
105
- */
106
- cell?: React.ReactElement<any> | React.ReactNode | ((value: any, index: number, record: any) => any);
107
-
108
- /**
109
- * 是否在Children上面渲染selection
110
- */
111
- hasChildrenSelection?: boolean;
112
-
113
- /**
114
- * 是否在GroupHeader上面渲染selection
115
- */
116
- hasSelection?: boolean;
117
-
118
- /**
119
- * 当 dataSouce 里没有 children 时,是否使用内容作为数据
120
- */
121
- useFirstLevelDataWhenNoChildren?: boolean;
122
- }
123
-
124
- export class GroupHeader extends React.Component<GroupHeaderProps, any> {}
125
-
126
- export interface GroupFooterProps extends React.HTMLAttributes<HTMLElement>, CommonProps {
127
- /**
128
- * 行渲染的逻辑
129
- */
130
- cell?: React.ReactElement<any> | React.ReactNode | ((value: any, index: number, record: any) => any);
131
- }
132
-
133
- export class GroupFooter extends React.Component<GroupFooterProps, any> {}
134
-
135
- export interface BaseTableProps extends React.HTMLAttributes<HTMLElement>, CommonProps {
136
- /**
137
- * 样式类名的品牌前缀
138
- */
139
- prefix?: string;
140
-
141
- /**
142
- * 尺寸 small为紧凑模式
143
- */
144
- size?: 'small' | 'medium';
145
-
146
- /**
147
- * 自定义类名
148
- */
149
- className?: string;
150
-
151
- /**
152
- * 自定义内联样式
153
- */
154
- style?: React.CSSProperties;
155
- columns?: Array<any>;
156
- /**
157
- * 表格元素的 table-layout 属性,设为 fixed 表示内容不会影响列的布局
158
- */
159
- tableLayout?: 'fixed' | 'auto';
160
- /**
161
- * 表格的总长度,可以这么用:设置表格总长度 、设置部分列的宽度,这样表格会按照剩余空间大小,自动其他列分配宽度
162
- */
163
- tableWidth?: number;
164
- /**
165
- * 表格展示的数据源
166
- */
167
- dataSource?: Array<any> | any[];
168
-
169
- /**
170
- * 表格是否具有边框
171
- */
172
- hasBorder?: boolean;
173
-
174
- /**
175
- * 表格是否具有头部
176
- */
177
- hasHeader?: boolean;
178
-
179
- /**
180
- * 表格是否是斑马线
181
- */
182
- isZebra?: boolean;
183
-
184
- /**
185
- * 表格是否在加载中
186
- */
187
- loading?: boolean;
188
-
189
- /**
190
- * 自定义国际化文案对象
191
- */
192
- locale?: {
193
- ok: string;
194
- reset: string;
195
- empty: string;
196
- asc: string;
197
- desc: string;
198
- expanded: string;
199
- folded: string;
200
- filter: string;
201
- selectAll: string;
202
- };
203
-
204
- /**
205
- * 设置数据为空的时候的表格内容展现
206
- */
207
- emptyContent?: React.ReactNode;
208
-
209
- /**
210
- * dataSource当中数据的主键,如果给定的数据源中的属性不包含该主键,会造成选择状态全部选中
211
- */
212
- primaryKey?: string;
213
- }
214
- export interface TableProps extends React.HTMLAttributes<HTMLElement>, BaseTableProps {
215
- /**
216
- * 点击表格每一行触发的事件
217
- */
218
- onRowClick?: (record: any, index: number, e: React.MouseEvent) => void;
219
-
220
- /**
221
- * 悬浮在表格每一行的时候触发的事件
222
- */
223
- onRowMouseEnter?: (record: any, index: number, e: React.MouseEvent) => void;
224
-
225
- /**
226
- * 离开表格每一行的时候触发的事件
227
- */
228
- onRowMouseLeave?: (record: any, index: number, e: React.MouseEvent) => void;
229
-
230
- /**
231
- * 点击列排序触发的事件
232
- */
233
- onSort?: (dataIndex: string, order: string) => void;
234
-
235
- /**
236
- * 点击过滤确认按钮触发的事件
237
- */
238
- onFilter?: (filterParams: any) => void;
239
-
240
- /**
241
- * 重设列尺寸的时候触发的事件
242
- */
243
- onResizeChange?: (dataIndex: string, value: number) => void;
244
-
245
- /**
246
- * 设置每一行的属性,如果返回值和其他针对行操作的属性冲突则无效。
247
- */
248
- getRowProps?: (record: any, index: number) => any;
249
- rowProps?: (record: any, index: number) => any;
250
-
251
- /**
252
- * 设置单元格的属性,通过该属性可以进行合并单元格
253
- */
254
- getCellProps?: (rowIndex: number, colIndex: number, dataIndex: string, record: any) => any;
255
- cellProps?: (rowIndex: number, colIndex: number, dataIndex: string, record: any) => any;
256
-
257
- /**
258
- * 自定义 Loading 组件
259
- * 请务必传递 props, 使用方式: loadingComponent={props => <Loading {...props}/>}
260
- */
261
- loadingComponent?: (props: LoadingProps) => React.ReactNode;
262
-
263
- /**
264
- * 当前过滤的的keys,使用此属性可以控制表格的头部的过滤选项中哪个菜单被选中,格式为 {dataIndex: {selectedKeys:[]}}
265
- * 示例:
266
- * 假设要控制dataIndex为id的列的过滤菜单中key为one的菜单项选中
267
- * `<Table filterParams={{id: {selectedKeys: ['one']}}}/>`
268
- */
269
- filterParams?: { [propName: string]: any };
270
-
271
- /**
272
- * 当前排序的字段,使用此属性可以控制表格的字段的排序,格式为{dataIndex: 'asc'}
273
- */
274
- sort?: { [propName: string]: any };
275
-
276
- /**
277
- * 自定义排序按钮,例如上下排布的: `{desc: <Icon style={{top: '6px', left: '4px'}} type={'arrow-down'} size="small" />, asc: <Icon style={{top: '-6px', left: '4px'}} type={'arrow-up'} size="small" />}`
278
- */
279
- sortIcons?: { desc?: React.ReactNode; asc?: React.ReactNode };
280
-
281
- /**
282
- * 额外渲染行的渲染函数
283
- */
284
- expandedRowRender?: (record: any, index: number) => React.ReactElement<any>;
285
- rowExpandable?: (record: any) => boolean;
286
-
287
- /**
288
- * 额外渲染行的缩进,包含两个数字,第一个数字为左侧缩进,第二个数字为右侧缩进
289
- */
290
- expandedRowIndent?: [number, number];
291
-
292
- /**
293
- * 默认情况下展开的渲染行或者Tree, 传入此属性为受控状态
294
- */
295
- openRowKeys?: Array<any>;
296
-
297
- /**
298
- * 是否显示点击展开额外渲染行的+号按钮
299
- */
300
- hasExpandedRowCtrl?: boolean;
301
-
302
- /**
303
- * 设置额外渲染行的属性
304
- */
305
- getExpandedColProps?: <IRecord extends any = any>(
306
- record: IRecord,
307
- index: number
308
- ) => object | Record<string | number, any>;
309
-
310
- /**
311
- * 在额外渲染行或者Tree展开或者收起的时候触发的事件
312
- */
313
- onRowOpen?: (openRowKeys: Array<any>, currentRowKey: string, expanded: boolean, currentRecord: any) => void;
314
-
315
- /**
316
- * 点击额外渲染行触发的事件
317
- */
318
- onExpandedRowClick?: (record: any, index: number, e: React.MouseEvent) => void;
319
-
320
- /**
321
- * 表头是否固定,该属性配合maxBodyHeight使用,当内容区域的高度超过maxBodyHeight的时候,在内容区域会出现滚动条
322
- */
323
- fixedHeader?: boolean;
324
-
325
- /**
326
- * 最大内容区域的高度,在`fixedHeader`为`true`的时候,超过这个高度会出现滚动条
327
- */
328
- maxBodyHeight?: number | string;
329
-
330
- /**
331
- * 是否启用选择模式
332
- */
333
- rowSelection?: {
334
- getProps?: (record: any, index: number) => void;
335
- onChange?: (selectedRowKeys: Array<any>, records: Array<any>) => void;
336
- onSelect?: (selected: boolean, record: any, records: Array<any>) => void;
337
- onSelectAll?: (selected: boolean, records: Array<any>) => void;
338
- selectedRowKeys?: Array<any>;
339
- mode?: 'single' | 'multiple';
340
- titleProps?: () => any;
341
- columnProps?: () => any;
342
- titleAddons?: () => any;
343
- };
344
-
345
- /**
346
- * 表头是否是sticky
347
- */
348
- stickyHeader?: boolean;
349
-
350
- /**
351
- * 距离窗口顶部达到指定偏移量后触发
352
- */
353
- offsetTop?: number;
354
-
355
- /**
356
- * affix组件的的属性
357
- */
358
- affixProps?: AffixProps;
359
-
360
- /**
361
- * 在tree模式下的缩进尺寸, 仅在isTree为true时候有效
362
- */
363
- indent?: number;
364
-
365
- /**
366
- * 开启Table的tree模式, 接收的数据格式中包含children则渲染成tree table
367
- */
368
- isTree?: boolean;
369
-
370
- /**
371
- * 是否开启虚拟滚动
372
- */
373
- useVirtual?: boolean;
374
-
375
- /**
376
- * 滚动到指定行
377
- */
378
- scrollToRow?: number;
379
-
380
- /**
381
- * 设置行高
382
- */
383
- rowHeight?: number | (() => any);
384
-
385
- /**
386
- * 在内容区域滚动的时候触发的函数
387
- */
388
- onBodyScroll?: (start: number) => void;
389
-
390
- /**
391
- * 开启时,getExpandedColProps() / getRowProps() / expandedRowRender() 的第二个参数 index (该行所对应的序列) 将按照01,2,3,4...的顺序返回,否则返回真实index(0,2,4,6... / 1,3,5,7...)
392
- */
393
- expandedIndexSimulate?: boolean;
394
- /**
395
- * 在 hover 时出现十字参考轴,适用于表头比较复杂,需要做表头分类的场景。
396
- */
397
- crossline?: boolean;
398
- }
399
-
400
- export default class Table extends React.Component<TableProps, any> {
401
- static Column: typeof Column;
402
- static ColumnGroup: typeof ColumnGroup;
403
- static GroupHeader: typeof GroupHeader;
404
- static GroupFooter: typeof GroupFooter;
405
- static StickyLock: typeof Table;
406
- static Base: typeof Table;
407
- }
1
+ /// <reference types="react" />
2
+
3
+ import * as React from 'react';
4
+ import CommonProps from '../util';
5
+ import { LoadingProps } from '../loading';
6
+ import { AffixProps } from '../affix';
7
+
8
+ interface HTMLAttributesWeak extends React.HTMLAttributes<HTMLElement> {
9
+ title?: any;
10
+ }
11
+
12
+ export interface ColumnProps extends HTMLAttributesWeak, CommonProps {
13
+ /**
14
+ * 指定列对应的字段,支持`a.b`形式的快速取值
15
+ */
16
+ dataIndex?: string;
17
+
18
+ /**
19
+ * 行渲染的逻辑
20
+ * value, rowIndex, record, context四个属性只可读不可被更改
21
+ * Function(value, index, record) => Element
22
+ */
23
+ cell?: React.ReactElement<any> | React.ReactNode | ((value: any, index: number, record: any) => any);
24
+
25
+ /**
26
+ * 表头显示的内容
27
+ * value, rowIndex, record, context四个属性只可读不可被更改
28
+ */
29
+ title?: React.ReactElement<any> | React.ReactNode | (() => any);
30
+
31
+ htmlTitle?: string;
32
+ /**
33
+ * 是否支持排序
34
+ */
35
+ sortable?: boolean;
36
+
37
+ /**
38
+ * 列宽,注意在锁列的情况下一定需要配置宽度
39
+ */
40
+ width?: number | string;
41
+
42
+ /**
43
+ * 单元格的对齐方式
44
+ */
45
+ align?: 'left' | 'center' | 'right';
46
+ sortDirections?: Array<'desc' | 'asc' | 'default'>;
47
+ /**
48
+ * 单元格标题的对齐方式, 不配置默认读取align值
49
+ */
50
+ alignHeader?: 'left' | 'center' | 'right';
51
+
52
+ /**
53
+ * 生成标题过滤的菜单, 格式为`[{label:'xxx', value:'xxx'}]`
54
+ */
55
+ filters?: Array<any>;
56
+
57
+ /**
58
+ * 过滤的模式是单选还是多选
59
+ */
60
+ filterMode?: 'single' | 'multiple';
61
+
62
+ /**
63
+ * 是否支持锁列,可选值为`left`,`right`, `true`
64
+ */
65
+ lock?: boolean | string;
66
+
67
+ /**
68
+ * 是否支持列宽调整, 当该值设为true,table的布局方式会修改为fixed.
69
+ */
70
+ resizable?: boolean;
71
+ /**
72
+ * 是否支持异步列宽调整, 当该值设为true,table的布局方式会修改为fixed.
73
+ */
74
+ asyncResizable?: boolean;
75
+
76
+ /**
77
+ * header cell 横跨的格数,设置为0表示不出现此 th
78
+ */
79
+ colSpan?: number;
80
+
81
+ /**
82
+ * 设置该列单元格的word-break样式,对于id类、中文类适合用all,对于英文句子适合用word
83
+ */
84
+ wordBreak?: 'all' | 'word';
85
+ }
86
+
87
+ export class Column extends React.Component<ColumnProps, any> {}
88
+
89
+ interface HTMLAttributesWeak extends React.HTMLAttributes<HTMLElement> {
90
+ title?: any;
91
+ }
92
+
93
+ export interface ColumnGroupProps extends HTMLAttributesWeak, CommonProps {
94
+ /**
95
+ * 表头显示的内容
96
+ */
97
+ title?: React.ReactElement<any> | React.ReactNode | (() => any);
98
+ }
99
+
100
+ export class ColumnGroup extends React.Component<ColumnGroupProps, any> {}
101
+
102
+ export interface GroupHeaderProps extends React.HTMLAttributes<HTMLElement>, CommonProps {
103
+ /**
104
+ * 行渲染的逻辑
105
+ */
106
+ cell?: React.ReactElement<any> | React.ReactNode | ((value: any, index: number, record: any) => any);
107
+
108
+ /**
109
+ * 是否在Children上面渲染selection
110
+ */
111
+ hasChildrenSelection?: boolean;
112
+
113
+ /**
114
+ * 是否在GroupHeader上面渲染selection
115
+ */
116
+ hasSelection?: boolean;
117
+
118
+ /**
119
+ * 当 dataSouce 里没有 children 时,是否使用内容作为数据
120
+ */
121
+ useFirstLevelDataWhenNoChildren?: boolean;
122
+ }
123
+
124
+ export class GroupHeader extends React.Component<GroupHeaderProps, any> {}
125
+
126
+ export interface GroupFooterProps extends React.HTMLAttributes<HTMLElement>, CommonProps {
127
+ /**
128
+ * 行渲染的逻辑
129
+ */
130
+ cell?: React.ReactElement<any> | React.ReactNode | ((value: any, index: number, record: any) => any);
131
+ }
132
+
133
+ export class GroupFooter extends React.Component<GroupFooterProps, any> {}
134
+
135
+ export interface BaseTableProps extends React.HTMLAttributes<HTMLElement>, CommonProps {
136
+ /**
137
+ * 样式类名的品牌前缀
138
+ */
139
+ prefix?: string;
140
+
141
+ /**
142
+ * 尺寸 small为紧凑模式
143
+ */
144
+ size?: 'small' | 'medium';
145
+
146
+ /**
147
+ * 自定义类名
148
+ */
149
+ className?: string;
150
+
151
+ /**
152
+ * 自定义内联样式
153
+ */
154
+ style?: React.CSSProperties;
155
+ columns?: Array<any>;
156
+ /**
157
+ * 表格元素的 table-layout 属性,设为 fixed 表示内容不会影响列的布局
158
+ */
159
+ tableLayout?: 'fixed' | 'auto';
160
+ /**
161
+ * 表格的总长度,可以这么用:设置表格总长度 、设置部分列的宽度,这样表格会按照剩余空间大小,自动其他列分配宽度
162
+ */
163
+ tableWidth?: number;
164
+ /**
165
+ * 表格展示的数据源
166
+ */
167
+ dataSource?: Array<any> | any[];
168
+
169
+ /**
170
+ * 表格是否具有边框
171
+ */
172
+ hasBorder?: boolean;
173
+
174
+ /**
175
+ * 表格是否具有头部
176
+ */
177
+ hasHeader?: boolean;
178
+
179
+ /**
180
+ * 表格是否是斑马线
181
+ */
182
+ isZebra?: boolean;
183
+
184
+ /**
185
+ * 表格是否在加载中
186
+ */
187
+ loading?: boolean;
188
+
189
+ /**
190
+ * 自定义国际化文案对象
191
+ */
192
+ locale?: {
193
+ ok: string;
194
+ reset: string;
195
+ empty: string;
196
+ asc: string;
197
+ desc: string;
198
+ expanded: string;
199
+ folded: string;
200
+ filter: string;
201
+ selectAll: string;
202
+ };
203
+
204
+ /**
205
+ * 设置数据为空的时候的表格内容展现
206
+ */
207
+ emptyContent?: React.ReactNode;
208
+
209
+ /**
210
+ * dataSource当中数据的主键,如果给定的数据源中的属性不包含该主键,会造成选择状态全部选中
211
+ */
212
+ primaryKey?: string;
213
+ }
214
+ export interface TableProps extends React.HTMLAttributes<HTMLElement>, BaseTableProps {
215
+ /**
216
+ * 点击表格每一行触发的事件
217
+ */
218
+ onRowClick?: (record: any, index: number, e: React.MouseEvent) => void;
219
+
220
+ /**
221
+ * 悬浮在表格每一行的时候触发的事件
222
+ */
223
+ onRowMouseEnter?: (record: any, index: number, e: React.MouseEvent) => void;
224
+
225
+ /**
226
+ * 离开表格每一行的时候触发的事件
227
+ */
228
+ onRowMouseLeave?: (record: any, index: number, e: React.MouseEvent) => void;
229
+
230
+ /**
231
+ * 点击列排序触发的事件
232
+ */
233
+ onSort?: (dataIndex: string, order: string) => void;
234
+
235
+ /**
236
+ * 点击过滤确认按钮触发的事件
237
+ */
238
+ onFilter?: (filterParams: any) => void;
239
+
240
+ /**
241
+ * 重设列尺寸的时候触发的事件
242
+ */
243
+ onResizeChange?: (dataIndex: string, value: number) => void;
244
+
245
+ /**
246
+ * 设置每一行的属性,如果返回值和其他针对行操作的属性冲突则无效。
247
+ */
248
+ getRowProps?: (record: any, index: number) => any;
249
+ rowProps?: (record: any, index: number) => any;
250
+
251
+ /**
252
+ * 设置单元格的属性,通过该属性可以进行合并单元格
253
+ */
254
+ getCellProps?: (rowIndex: number, colIndex: number, dataIndex: string, record: any) => any;
255
+ cellProps?: (rowIndex: number, colIndex: number, dataIndex: string, record: any) => any;
256
+
257
+ /**
258
+ * 自定义 Loading 组件
259
+ * 请务必传递 props, 使用方式: loadingComponent={props => <Loading {...props}/>}
260
+ */
261
+ loadingComponent?: (props: LoadingProps) => React.ReactNode;
262
+
263
+ /**
264
+ * 当前过滤的的keys,使用此属性可以控制表格的头部的过滤选项中哪个菜单被选中,格式为 {dataIndex: {selectedKeys:[]}}
265
+ * 示例:
266
+ * 假设要控制dataIndex为id的列的过滤菜单中key为one的菜单项选中
267
+ * `<Table filterParams={{id: {selectedKeys: ['one']}}}/>`
268
+ */
269
+ filterParams?: { [propName: string]: any };
270
+
271
+ /**
272
+ * 当前排序的字段,使用此属性可以控制表格的字段的排序,格式为{dataIndex: 'asc'}
273
+ */
274
+ sort?: { [propName: string]: any };
275
+
276
+ /**
277
+ * 自定义排序按钮,例如上下排布的: `{desc: <Icon style={{top: '6px', left: '4px'}} type={'arrow-down'} size="small" />, asc: <Icon style={{top: '-6px', left: '4px'}} type={'arrow-up'} size="small" />}`
278
+ */
279
+ sortIcons?: { desc?: React.ReactNode; asc?: React.ReactNode };
280
+
281
+ /**
282
+ * 额外渲染行的渲染函数
283
+ */
284
+ expandedRowRender?: (record: any, index: number) => React.ReactElement<any>;
285
+ rowExpandable?: (record: any) => boolean;
286
+
287
+ /**
288
+ * 额外渲染行的缩进,包含两个数字,第一个数字为左侧缩进,第二个数字为右侧缩进
289
+ */
290
+ expandedRowIndent?: [number, number];
291
+
292
+ /**
293
+ * 默认情况下展开的渲染行或者Tree, 传入此属性为受控状态
294
+ */
295
+ openRowKeys?: Array<any>;
296
+
297
+ /**
298
+ * 是否显示点击展开额外渲染行的+号按钮
299
+ */
300
+ hasExpandedRowCtrl?: boolean;
301
+
302
+ /**
303
+ * 设置额外渲染行的属性
304
+ */
305
+ getExpandedColProps?: <IRecord extends any = any>(
306
+ record: IRecord,
307
+ index: number
308
+ ) => object | Record<string | number, any>;
309
+
310
+ /**
311
+ * 在额外渲染行或者Tree展开或者收起的时候触发的事件
312
+ */
313
+ onRowOpen?: (openRowKeys: Array<any>, currentRowKey: string, expanded: boolean, currentRecord: any) => void;
314
+
315
+ /**
316
+ * 点击额外渲染行触发的事件
317
+ */
318
+ onExpandedRowClick?: (record: any, index: number, e: React.MouseEvent) => void;
319
+
320
+ /**
321
+ * 表头是否固定,该属性配合maxBodyHeight使用,当内容区域的高度超过maxBodyHeight的时候,在内容区域会出现滚动条
322
+ */
323
+ fixedHeader?: boolean;
324
+
325
+ /**
326
+ * 最大内容区域的高度,在`fixedHeader`为`true`的时候,超过这个高度会出现滚动条
327
+ */
328
+ maxBodyHeight?: number | string;
329
+
330
+ /**
331
+ * 是否启用选择模式
332
+ */
333
+ rowSelection?: {
334
+ getProps?: (record: any, index: number) => void;
335
+ onChange?: (selectedRowKeys: Array<any>, records: Array<any>) => void;
336
+ onSelect?: (selected: boolean, record: any, records: Array<any>) => void;
337
+ onSelectAll?: (selected: boolean, records: Array<any>) => void;
338
+ selectedRowKeys?: Array<any>;
339
+ mode?: 'single' | 'multiple';
340
+ titleProps?: () => any;
341
+ columnProps?: () => any;
342
+ titleAddons?: () => any;
343
+ };
344
+
345
+ /**
346
+ * 表头是否是sticky
347
+ */
348
+ stickyHeader?: boolean;
349
+
350
+ /**
351
+ * 距离窗口顶部达到指定偏移量后触发
352
+ */
353
+ offsetTop?: number;
354
+
355
+ /**
356
+ * affix组件的的属性
357
+ */
358
+ affixProps?: AffixProps;
359
+
360
+ /**
361
+ * 在tree模式下的缩进尺寸, 仅在isTree为true时候有效
362
+ */
363
+ indent?: number;
364
+
365
+ /**
366
+ * 开启Table的tree模式, 接收的数据格式中包含children则渲染成tree table
367
+ */
368
+ isTree?: boolean;
369
+
370
+ /**
371
+ * 是否开启虚拟滚动
372
+ */
373
+ useVirtual?: boolean;
374
+
375
+ /**
376
+ * 滚动到指定行
377
+ */
378
+ scrollToRow?: number;
379
+
380
+ /**
381
+ * 设置行高
382
+ */
383
+ rowHeight?: number | (() => any);
384
+
385
+ /**
386
+ * 在内容区域滚动的时候触发的函数
387
+ */
388
+ onBodyScroll?: (start: number) => void;
389
+
390
+ /**
391
+ * 开启时,getExpandedColProps() / getRowProps() / expandedRowRender() 的第二个参数 index (该行所对应的序列) 将按照01,2,3,4...的顺序返回,否则返回真实index(0,2,4,6... / 1,3,5,7...)
392
+ */
393
+ expandedIndexSimulate?: boolean;
394
+ /**
395
+ * 在 hover 时出现十字参考轴,适用于表头比较复杂,需要做表头分类的场景。
396
+ */
397
+ crossline?: boolean;
398
+ }
399
+
400
+ export default class Table extends React.Component<TableProps, any> {
401
+ static Column: typeof Column;
402
+ static ColumnGroup: typeof ColumnGroup;
403
+ static GroupHeader: typeof GroupHeader;
404
+ static GroupFooter: typeof GroupFooter;
405
+ static StickyLock: typeof Table;
406
+ static Base: typeof Table;
407
+ }