fat-design 0.0.1-beta.20251016214453 → 0.0.1

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 (244) hide show
  1. package/README.md +285 -285
  2. package/index.browser.js +1 -1
  3. package/libs/config-16.js +7 -7
  4. package/libs/config-17.js +7 -7
  5. package/libs/config-18.js +9 -9
  6. package/libs/config-19.js +9 -9
  7. package/libs/theme/theme-blue1.css +58 -58
  8. package/libs/theme/theme-blue2.css +63 -63
  9. package/libs/theme/theme-blue3.css +73 -73
  10. package/libs/theme/theme-blue4.css +53 -53
  11. package/libs/theme/theme-default.css +60 -60
  12. package/libs/theme/theme-green.css +96 -96
  13. package/libs/theme/theme-green2.css +96 -96
  14. package/libs/theme/theme-orange.css +58 -58
  15. package/libs/theme/theme-pink.css +53 -53
  16. package/libs/theme/theme-purple.css +53 -53
  17. package/libs/theme/theme-red.css +55 -55
  18. package/package.json +2 -2
  19. package/types/0buildTypes/config-provider/constants.d.ts +3 -3
  20. package/types/0buildTypes/config-provider/index.d.ts +4 -4
  21. package/types/0buildTypes/config-provider/v2/consumer.d.ts +3 -3
  22. package/types/0buildTypes/config-provider/v2/context.d.ts +6 -6
  23. package/types/0buildTypes/config-provider/v2/error-boundary.d.ts +27 -27
  24. package/types/0buildTypes/config-provider/v2/functions.d.ts +66 -66
  25. package/types/0buildTypes/config-provider/v2/index.d.ts +36 -36
  26. package/types/0buildTypes/config-provider/v2/provider.d.ts +4 -4
  27. package/types/0buildTypes/config-provider/v2/types.d.ts +22 -22
  28. package/types/0buildTypes/dependencies.d.ts +2 -2
  29. package/types/0buildTypes/empty/empty.d.ts +22 -22
  30. package/types/0buildTypes/empty/index.d.ts +2 -2
  31. package/types/0buildTypes/filter/filter-types.d.ts +21 -21
  32. package/types/0buildTypes/filter/filter.d.ts +10 -10
  33. package/types/0buildTypes/filter/index.d.ts +9 -9
  34. package/types/0buildTypes/form2/deps.d.ts +10 -10
  35. package/types/0buildTypes/form2/form-actions.d.ts +36 -36
  36. package/types/0buildTypes/form2/form-buttons.d.ts +28 -28
  37. package/types/0buildTypes/form2/form-context.d.ts +4 -4
  38. package/types/0buildTypes/form2/form-error.d.ts +3 -3
  39. package/types/0buildTypes/form2/form-item-card.d.ts +4 -4
  40. package/types/0buildTypes/form2/form-item-comp.d.ts +4 -4
  41. package/types/0buildTypes/form2/form-item-label.d.ts +4 -4
  42. package/types/0buildTypes/form2/form-item-preview.d.ts +4 -4
  43. package/types/0buildTypes/form2/form-item.d.ts +7 -7
  44. package/types/0buildTypes/form2/form-layout.d.ts +3 -3
  45. package/types/0buildTypes/form2/form-rules.d.ts +3 -3
  46. package/types/0buildTypes/form2/form-section.d.ts +25 -25
  47. package/types/0buildTypes/form2/form-types.d.ts +396 -396
  48. package/types/0buildTypes/form2/form.d.ts +36 -36
  49. package/types/0buildTypes/form2/helper/buildParams.d.ts +5 -5
  50. package/types/0buildTypes/form2/helper/constants.d.ts +24 -24
  51. package/types/0buildTypes/form2/helper/fixItemProps.d.ts +16 -16
  52. package/types/0buildTypes/form2/helper/fnInheritProps.d.ts +2 -2
  53. package/types/0buildTypes/form2/helper/linkageFormState.d.ts +16 -16
  54. package/types/0buildTypes/form2/helper/useDataSource.d.ts +14 -14
  55. package/types/0buildTypes/form2/helper/useFormChildren.d.ts +5 -5
  56. package/types/0buildTypes/form2/helper/useFormItemState.d.ts +3 -3
  57. package/types/0buildTypes/form2/helper/useGetXProps.d.ts +3 -3
  58. package/types/0buildTypes/form2/index.d.ts +20 -20
  59. package/types/0buildTypes/form2/layout/from-float-layout.d.ts +3 -3
  60. package/types/0buildTypes/hooks/index.d.ts +25 -25
  61. package/types/0buildTypes/hooks/useComparedState.d.ts +2 -2
  62. package/types/0buildTypes/hooks/useCurrentState.d.ts +11 -11
  63. package/types/0buildTypes/hooks/useOnKeyPressSave.d.ts +12 -12
  64. package/types/0buildTypes/hooks/usePersistFn.d.ts +3 -3
  65. package/types/0buildTypes/hooks/usePreciseStore.d.ts +53 -53
  66. package/types/0buildTypes/hooks/useSize.d.ts +6 -6
  67. package/types/0buildTypes/hooks/useUniqueId.d.ts +2 -2
  68. package/types/0buildTypes/hooks/useValueOnChange.d.ts +2 -2
  69. package/types/0buildTypes/image/Image.d.ts +42 -42
  70. package/types/0buildTypes/image/Operations.d.ts +25 -25
  71. package/types/0buildTypes/image/Preview.d.ts +64 -64
  72. package/types/0buildTypes/image/PreviewGroup.d.ts +32 -32
  73. package/types/0buildTypes/image/common.d.ts +2 -2
  74. package/types/0buildTypes/image/context.d.ts +7 -7
  75. package/types/0buildTypes/image/getFixScaleEleTransPosition.d.ts +17 -17
  76. package/types/0buildTypes/image/hooks/useImageTransform.d.ts +28 -28
  77. package/types/0buildTypes/image/hooks/useMouseEvent.d.ts +9 -9
  78. package/types/0buildTypes/image/hooks/usePreviewItems.d.ts +7 -7
  79. package/types/0buildTypes/image/hooks/useRegisterImage.d.ts +2 -2
  80. package/types/0buildTypes/image/hooks/useStatus.d.ts +14 -14
  81. package/types/0buildTypes/image/hooks/useTouchEvent.d.ts +8 -8
  82. package/types/0buildTypes/image/index.d.ts +6 -6
  83. package/types/0buildTypes/image/interface.d.ts +14 -14
  84. package/types/0buildTypes/image/previewConfig.d.ts +4 -4
  85. package/types/0buildTypes/image/util.d.ts +1 -1
  86. package/types/0buildTypes/image/utils/KeyCode.d.ts +23 -23
  87. package/types/0buildTypes/image/utils/addEventListener.d.ts +4 -4
  88. package/types/0buildTypes/image/utils/buildIcons.d.ts +2 -2
  89. package/types/0buildTypes/image/utils/css.d.ts +8 -8
  90. package/types/0buildTypes/image/utils/isEqual.d.ts +8 -8
  91. package/types/0buildTypes/image/utils/raf.d.ts +6 -6
  92. package/types/0buildTypes/image/utils/useEvent.d.ts +1 -1
  93. package/types/0buildTypes/image/utils/useLayoutEffect.d.ts +4 -4
  94. package/types/0buildTypes/image/utils/useMergedState.d.ts +12 -12
  95. package/types/0buildTypes/image/utils/useSafeState.d.ts +14 -14
  96. package/types/0buildTypes/index.d.ts +4 -4
  97. package/types/0buildTypes/libs.d.ts +67 -67
  98. package/types/0buildTypes/nav/group.d.ts +30 -30
  99. package/types/0buildTypes/nav/index.d.ts +4 -4
  100. package/types/0buildTypes/nav/item.d.ts +30 -30
  101. package/types/0buildTypes/nav/nav.d.ts +2 -2
  102. package/types/0buildTypes/nav/popup-item.d.ts +24 -24
  103. package/types/0buildTypes/nav/sub-nav.d.ts +30 -30
  104. package/types/0buildTypes/nav/types.d.ts +375 -375
  105. package/types/0buildTypes/others.d.ts +10 -10
  106. package/types/0buildTypes/pages/deps.d.ts +5 -5
  107. package/types/0buildTypes/pages/detail-page/detail-page-card-form.d.ts +12 -12
  108. package/types/0buildTypes/pages/detail-page/detail-page-form-item.d.ts +9 -9
  109. package/types/0buildTypes/pages/detail-page/detail-page-section.d.ts +19 -19
  110. package/types/0buildTypes/pages/detail-page/detail-page-summary.d.ts +9 -9
  111. package/types/0buildTypes/pages/detail-page/detail-page.d.ts +14 -14
  112. package/types/0buildTypes/pages/detail-page/index.d.ts +2 -2
  113. package/types/0buildTypes/pages/detail-page/types.d.ts +29 -29
  114. package/types/0buildTypes/pages/page-card/types.d.ts +6 -6
  115. package/types/0buildTypes/previews/renderFileImage.d.ts +34 -34
  116. package/types/0buildTypes/query-form/index.d.ts +2 -2
  117. package/types/0buildTypes/query-form/query-form-items.d.ts +4 -4
  118. package/types/0buildTypes/query-form/query-form-layout.d.ts +2 -2
  119. package/types/0buildTypes/query-form/query-form.d.ts +20 -20
  120. package/types/0buildTypes/query-form/types.d.ts +12 -12
  121. package/types/0buildTypes/sortable-list/helpers.d.ts +8 -8
  122. package/types/0buildTypes/sortable-list/hooks.d.ts +24 -24
  123. package/types/0buildTypes/sortable-list/index.d.ts +14 -14
  124. package/types/0buildTypes/sortable-list/sortable-editable-table.d.ts +2 -2
  125. package/types/0buildTypes/sortable-list/sortable-list.d.ts +560 -560
  126. package/types/0buildTypes/sortable-list/sortable-table.d.ts +2 -2
  127. package/types/0buildTypes/sortable-list/types.d.ts +15 -15
  128. package/types/0buildTypes/table-pro/index.d.ts +26 -26
  129. package/types/0buildTypes/table-pro/table-pro.d.ts +17 -17
  130. package/types/0buildTypes/table-pro/types.d.ts +95 -95
  131. package/types/0buildTypes/table-pro/useTablePro.d.ts +10 -10
  132. package/types/0buildTypes/table-pro/utils/formatQueryRes.d.ts +1 -1
  133. package/types/0buildTypes/table-pro/widget/column-setting.d.ts +5 -5
  134. package/types/0buildTypes/table-pro/widget/deps.d.ts +2 -2
  135. package/types/0buildTypes/table-pro/widget/index.d.ts +25 -25
  136. package/types/0buildTypes/table-pro/widget/operations.d.ts +5 -5
  137. package/types/0buildTypes/table-pro/widget/operationsActions.d.ts +2 -2
  138. package/types/0buildTypes/table-pro/widget/renderFormats.d.ts +17 -17
  139. package/types/0buildTypes/table-pro/widget/renderMultiFieldCell.d.ts +4 -4
  140. package/types/0buildTypes/table-pro/widget/renderOperationCell.d.ts +4 -4
  141. package/types/0buildTypes/table-pro/widget/renderToolbar.d.ts +6 -6
  142. package/types/0buildTypes/table-pro/widget/table-utils-types.d.ts +40 -40
  143. package/types/0buildTypes/util/comp.d.ts +16 -16
  144. package/types/0buildTypes/util/component.d.ts +1 -1
  145. package/types/0buildTypes/util/constants.d.ts +4 -4
  146. package/types/0buildTypes/util/dom.d.ts +116 -116
  147. package/types/0buildTypes/util/env.d.ts +7 -7
  148. package/types/0buildTypes/util/func-wrapper.d.ts +1 -1
  149. package/types/0buildTypes/util/func.d.ts +73 -73
  150. package/types/0buildTypes/util/guid.d.ts +11 -11
  151. package/types/0buildTypes/util/isStateEquals.d.ts +4 -4
  152. package/types/0buildTypes/util/localforage.d.ts +11 -11
  153. package/types/0buildTypes/util/log.d.ts +18 -18
  154. package/types/0buildTypes/util/pick-res-data.d.ts +28 -28
  155. package/types/0buildTypes/util/react-dom.d.ts +27 -27
  156. package/types/0buildTypes/util/shallowEqual.d.ts +3 -3
  157. package/types/0buildTypes/util/string.d.ts +32 -32
  158. package/types/0buildTypes/util/tiny-emitter.d.ts +10 -10
  159. package/types/0buildTypes/util/toMap.d.ts +7 -7
  160. package/types/affix/index.d.ts +33 -33
  161. package/types/animate/index.d.ts +80 -80
  162. package/types/avatar/index.d.ts +41 -41
  163. package/types/badge/index.d.ts +38 -38
  164. package/types/balloon/index.d.ts +254 -254
  165. package/types/balloon-confirm/index.d.ts +119 -119
  166. package/types/batch-input/index.d.ts +152 -152
  167. package/types/box/index.d.ts +25 -25
  168. package/types/breadcrumb/index.d.ts +60 -60
  169. package/types/button/index.d.ts +179 -179
  170. package/types/calendar/index.d.ts +76 -76
  171. package/types/card/index.d.ts +147 -147
  172. package/types/cascader/index.d.ts +135 -135
  173. package/types/cascader-select/index.d.ts +230 -230
  174. package/types/checkbox/index.d.ts +175 -175
  175. package/types/collapse/index.d.ts +96 -96
  176. package/types/comments/index.d.ts +278 -278
  177. package/types/config-provider/index.d.ts +3 -3
  178. package/types/date-picker/index.d.ts +123 -123
  179. package/types/dialog/index.d.ts +328 -328
  180. package/types/divider/index.d.ts +21 -21
  181. package/types/drawer/index.d.ts +121 -121
  182. package/types/dropdown/index.d.ts +198 -198
  183. package/types/editable-table/index.d.ts +121 -121
  184. package/types/empty/index.d.ts +78 -78
  185. package/types/field/index.d.ts +33 -33
  186. package/types/filter/index.d.ts +2 -2
  187. package/types/form/index.d.ts +5 -5
  188. package/types/grid/index.d.ts +142 -142
  189. package/types/hooks/index.d.ts +2 -2
  190. package/types/icon/index.d.ts +29 -29
  191. package/types/image/index.d.ts +3 -3
  192. package/types/index.d.ts +69 -69
  193. package/types/input/index.d.ts +458 -458
  194. package/types/list/index.d.ts +69 -69
  195. package/types/loading/index.d.ts +100 -100
  196. package/types/locale/default.d.ts +143 -143
  197. package/types/locale/en-us.d.ts +1 -1
  198. package/types/locale/id-id.d.ts +1 -1
  199. package/types/locale/it-it.d.ts +1 -1
  200. package/types/locale/ja-jp.d.ts +1 -1
  201. package/types/locale/ko-kr.d.ts +1 -1
  202. package/types/locale/ms-my.d.ts +1 -1
  203. package/types/locale/pt-pt.d.ts +1 -1
  204. package/types/locale/th-th.d.ts +1 -1
  205. package/types/locale/vi-vn.d.ts +1 -1
  206. package/types/locale/zh-cn.d.ts +1 -1
  207. package/types/locale/zh-hk.d.ts +1 -1
  208. package/types/locale/zh-tw.d.ts +1 -1
  209. package/types/menu/index.d.ts +336 -336
  210. package/types/menu-button/index.d.ts +100 -100
  211. package/types/message/index.d.ts +165 -165
  212. package/types/nav/index.d.ts +313 -313
  213. package/types/notification/index.d.ts +35 -35
  214. package/types/number-picker/index.d.ts +161 -161
  215. package/types/overlay/index.d.ts +363 -363
  216. package/types/pagination/index.d.ts +115 -115
  217. package/types/paragraph/index.d.ts +23 -23
  218. package/types/progress/index.d.ts +53 -53
  219. package/types/query-form/index.d.ts +3 -3
  220. package/types/radio/index.d.ts +180 -180
  221. package/types/range/index.d.ts +120 -120
  222. package/types/rating/index.d.ts +84 -84
  223. package/types/responsive-grid/index.d.ts +30 -30
  224. package/types/search/index.d.ts +219 -219
  225. package/types/select/index.d.ts +479 -479
  226. package/types/shell/index.d.ts +53 -53
  227. package/types/slider/index.d.ts +172 -172
  228. package/types/sortable-list/index.d.ts +165 -165
  229. package/types/split-button/index.d.ts +134 -134
  230. package/types/step/index.d.ts +108 -108
  231. package/types/switch/index.d.ts +85 -85
  232. package/types/tab/index.d.ts +170 -170
  233. package/types/table/index.d.ts +407 -407
  234. package/types/table-pro/index.d.ts +3 -3
  235. package/types/tag/index.d.ts +142 -142
  236. package/types/time-picker/index.d.ts +193 -193
  237. package/types/timeline/index.d.ts +95 -95
  238. package/types/transfer/index.d.ts +199 -199
  239. package/types/tree/index.d.ts +421 -421
  240. package/types/tree-select/index.d.ts +251 -251
  241. package/types/typography/index.d.ts +28 -28
  242. package/types/upload/index.d.ts +711 -711
  243. package/types/util.d.ts +80 -80
  244. package/types/virtual-list/index.d.ts +44 -44
@@ -1,711 +1,711 @@
1
- /// <reference types="react" />
2
-
3
- import * as React from 'react';
4
- import CommonProps from '../util';
5
- import { ProgressProps } from '../progress';
6
-
7
- interface HTMLAttributesWeak extends React.HTMLAttributes<HTMLElement> {
8
- onError?: any;
9
- onSelect?: any;
10
- defaultValue?: any;
11
- onChange?: any;
12
- }
13
-
14
- export interface UploadError extends Error {
15
- code?: string;
16
- status?: number;
17
- method?: string;
18
- url?: string;
19
- }
20
-
21
-
22
- export interface UploadProgressEvent extends ProgressEvent {
23
- percent?: number;
24
- }
25
-
26
- export interface UploadOptions {
27
- beforeUpload?: (file: UploadFile, data: unknown) => boolean | object | unknown;
28
- onProgress?: (e: UploadProgressEvent, file?: UploadFile) => void;
29
- onSuccess?: (ret: unknown, xhr?: XMLHttpRequest | UploadFile) => void;
30
- onError?: (err: ProgressEvent | UploadError, param: unknown, file?: UploadFile) => void;
31
- data?: UploadProps['data'];
32
- name?: string;
33
- method?: 'post' | 'put' | 'POST' | 'PUT';
34
- action?: string;
35
- headers?: { [key: string]: unknown; 'X-Requested-With'?: string | undefined };
36
- withCredentials?: boolean;
37
- request?: (option: object) => { abort?: (() => void) | undefined };
38
- file?: UploadFile;
39
- filename?: string;
40
- timeout?: number;
41
- }
42
-
43
-
44
- export interface CommonModifiedFile {
45
- uid?: string | number;
46
- error?: unknown;
47
- percent?: number;
48
- state?: string;
49
- lastModifiedDate?: Date;
50
- filename?: string;
51
- readonly name: string;
52
- }
53
-
54
- export type BeforeUploadOption = {
55
- action?: string;
56
- headers?: object;
57
- timeout?: number;
58
- withCredentials?: boolean;
59
- method?: string;
60
- data?: object;
61
- };
62
-
63
- export interface UploadFile extends CommonModifiedFile, File {
64
- url?: string;
65
- }
66
-
67
-
68
-
69
- export interface ObjectFile extends CommonModifiedFile {
70
- lastModified?: number;
71
- lastModifiedDate?: Date;
72
- size?: number;
73
- type?: string;
74
- originFileObj?: UploadFile;
75
- imgURL?: string;
76
- downloadURL?: string;
77
- url?: string;
78
- errorMsg?: string;
79
- errorText?: string;
80
- fileURL?: string;
81
- tempUrl?: string;
82
- alt?: string;
83
- }
84
-
85
-
86
-
87
- export interface CardProps extends HTMLAttributesWeak, CommonProps {
88
- /**
89
- * 上传的地址
90
- */
91
- action?: string;
92
-
93
- /**
94
- * 是否支持多选文件,`ie10+` 支持。开启后按住 ctrl 可选择多个文件
95
- */
96
- multiple?: boolean;
97
-
98
- /**
99
- * 展示下载按钮
100
- */
101
- showDownload?: boolean;
102
-
103
- /**
104
- * 接受上传的文件类型 (image/png, image/jpg, .doc, .ppt) 详见 [input accept attribute](https://developer.mozilla.org/zh-CN/docs/Web/HTML/Element/Input#attr-accept)
105
- */
106
- accept?: string;
107
-
108
-
109
- /**
110
- * 上传额外传参
111
- * @en Upload extra parameters
112
- */
113
- data?:
114
- | { [key: string]: string | Blob }
115
- | ((file: UploadFile) => { [key: string]: string | Blob });
116
-
117
- /**
118
- * 设置上传的请求头部
119
- */
120
- headers?: any;
121
-
122
- /**
123
- * 是否允许请求携带 cookie
124
- */
125
- withCredentials?: boolean;
126
-
127
- /**
128
- * 可选参数,详见 [beforeUpload](#beforeUpload)
129
- * @en Optional parameters, see [beforeUpload](#beforeUpload)
130
- * @param file - 所有文件 - all file
131
- * @param options - 参数 - parameters
132
- * @defaultValue func.noop
133
- */
134
- beforeUpload?: (file: UploadFile, options: BeforeUploadOption) => boolean | object | unknown;
135
-
136
-
137
- /**
138
- * 上传中
139
- * @en onProgress Callback
140
- * @defaultValue func.noop
141
- */
142
- onProgress?: (file: ObjectFile[], e: ObjectFile) => void;
143
-
144
- /**
145
- * 可选参数,上传成功回调函数,参数为请求下响应信息以及文件
146
- * @en Optional parameters, upload success callback function, the parameter is the response information and file
147
- * @param file - 文件 - file
148
- * @param value - 值 - value
149
- * @defaultValue func.noop
150
- */
151
- onSuccess?: (file: ObjectFile, value?: ObjectFile[]) => void;
152
-
153
- /**
154
- * 可选参数,上传失败回调函数,参数为上传失败的信息、响应信息以及文件
155
- * @en Optional parameters, upload failure callback function, the parameter is the upload failure information, response information and file
156
- * @param file - 出错的文件 - error file
157
- * @param value - 当前值 - current value
158
- * @defaultValue func.noop
159
- */
160
- onError?: (file: ObjectFile, value: ObjectFile[]) => void;
161
-
162
- /**
163
- * 子元素
164
- */
165
- children?: any;
166
-
167
- /**
168
- * 设置上传超时,单位ms
169
- */
170
- timeout?: number;
171
-
172
- /**
173
- * 上传方法
174
- * @en Upload method
175
- * @defaultValue 'post'
176
- */
177
- method?: 'post' | 'put' | 'POST' | 'PUT';
178
-
179
- /**
180
- * 自定义上传方法
181
- * @en Custom upload method
182
- * @param option - 参数 - parameters
183
- * @returns - 返回值 - object with abort method
184
- */
185
- request?: (option: any) => any;
186
-
187
- /**
188
- * 文件名字段
189
- */
190
- name?: string;
191
-
192
-
193
- /**
194
- * 选择文件回调
195
- * @en Select file callback
196
- * @defaultValue func.noop
197
- */
198
- onSelect?: (uploadFiles: any[]) => any;
199
-
200
-
201
- /**
202
- * 放文件
203
- * @en Drop file
204
- * @defaultValue func.noop
205
- */
206
- onDrop?: (files: UploadFile[]) => void;
207
-
208
- /**
209
- * 样式前缀
210
- */
211
- prefix?: string;
212
-
213
- /**
214
- * 文件列表
215
- * @en File list
216
- */
217
- value?: ObjectFile[] | ObjectFile;
218
-
219
- /**
220
- * 默认文件列表
221
- */
222
- defaultValue?: ObjectFile[] | ObjectFile;
223
-
224
- /**
225
- * 上传按钮形状
226
- */
227
- shape?: 'card';
228
-
229
- /**
230
- * 上传列表的样式
231
- */
232
- listType?: 'text' | 'image' | 'card';
233
-
234
- /**
235
- * 数据格式化函数,配合自定义 action 使用,参数为服务器的响应数据,详见 [formatter](#formater)
236
- */
237
- formatter?: (response: {}, file: any) => void;
238
-
239
- /**
240
- * 最大文件上传个数
241
- */
242
- limit?: number;
243
-
244
- /**
245
- * 可选参数,是否支持拖拽上传,`ie10+` 支持。
246
- */
247
- dragable?: boolean;
248
-
249
- /**
250
- * 可选参数,是否本地预览
251
- */
252
- useDataURL?: boolean;
253
-
254
- /**
255
- * 可选参数,是否禁用上传功能
256
- */
257
- disabled?: boolean;
258
-
259
- /**
260
- * 改变时候的回调
261
- */
262
- onChange?: (value: File[], param2?: any) => void;
263
-
264
- /**
265
- * 可选参数, 用于校验文件,afterSelect仅在 autoUpload=false 的时候生效,autoUpload=true时,可以使用beforeUpload完全可以替代该功能.
266
- */
267
- afterSelect?: (file: {}) => boolean;
268
-
269
- /**
270
- * 点击移除的回调
271
- */
272
- onRemove?: () => void;
273
-
274
- /**
275
- * 自定义class
276
- */
277
- className?: string;
278
-
279
- /**
280
- * 自定义内联样式
281
- */
282
- style?: React.CSSProperties;
283
-
284
- /**
285
- * 自动上传
286
- */
287
- autoUpload?: boolean;
288
-
289
- /**
290
- * 透传给Progress props
291
- */
292
- progressProps?: ProgressProps;
293
-
294
- /**
295
- * 点击图片回调
296
- * @en Click image callback
297
- * @skip
298
- */
299
- onPreview?: (file: UploadFile, e?: MouseEvent<HTMLElement>) => void;
300
-
301
- /**
302
- * 取消上传的回调
303
- */
304
- onCancel?: () => void;
305
- /**
306
- * 调用系统设备媒体
307
- */
308
- capture?: string;
309
-
310
- /**
311
- * 自定义成功和失败的列表渲染方式
312
- */
313
- itemRender?: (file: UploadFile, obj: { remove?: () => void }) => React.ReactNode;
314
-
315
- /**
316
- * 选择新文件上传并替换
317
- */
318
- reUpload?: boolean;
319
- }
320
-
321
- export class Card extends React.Component<CardProps, any> {}
322
-
323
- export interface SimpleJSONUploadProps extends UploadProps, CardProps {
324
- uploadComponent?: any; // 可以指定上传组件
325
- /**
326
- * 上传文件改变时的状态。两个参数的OnChange函数,可以接收最原始的返回值。
327
- */
328
- onChange2?: (value: File[], param2?: any) => void;
329
- }
330
-
331
- export class SimpleJSONUpload extends React.Component<SimpleJSONUploadProps, any> {} {
332
-
333
- }
334
-
335
-
336
- export interface DraggerProps extends UploadProps {
337
-
338
- }
339
-
340
- export class Dragger extends React.Component<DraggerProps, any> {}
341
-
342
- export interface SelecterProps extends HTMLAttributesWeak, CommonProps {
343
- /**
344
- * 是否禁用上传功能
345
- */
346
- disabled?: boolean;
347
-
348
- /**
349
- * 是否支持多选文件,`ie10+` 支持。开启后按住 ctrl 可选择多个文件
350
- */
351
- multiple?: boolean;
352
-
353
- /**
354
- * 是否支持拖拽上传,`ie10+` 支持。
355
- */
356
- dragable?: boolean;
357
-
358
- /**
359
- * 接受上传的文件类型 (image/png, image/jpg, .doc, .ppt) 详见 [input accept attribute](https://developer.mozilla.org/zh-CN/docs/Web/HTML/Element/Input#attr-accept)
360
- */
361
- accept?: string;
362
-
363
- /**
364
- * 文件选择回调
365
- */
366
- onSelect?: (e: React.ChangeEvent<HTMLInputElement>) => void;
367
-
368
- /**
369
- * 拖拽经过回调
370
- */
371
- onDragOver?: () => void;
372
-
373
- /**
374
- * 拖拽离开回调
375
- */
376
- onDragLeave?: () => void;
377
-
378
- /**
379
- * 拖拽完成回调
380
- */
381
- onDrop?: () => void;
382
-
383
- /**
384
- * 是否支持上传文件夹,仅在 chorme 下生效
385
- */
386
- webkitdirectory?: boolean;
387
- }
388
-
389
- export class Selecter extends React.Component<SelecterProps, any> {}
390
-
391
- export class Uploader {
392
- /**
393
- * @param options 配置
394
- */
395
- constructor(options?: any);
396
-
397
- /**
398
- * 配置选项
399
- * @param options 配置
400
- */
401
- setOptions(options: any): void;
402
- /**
403
- * 开始上传
404
- * @param files 文件列表
405
- */
406
- startUpload(files: Array<any>): void;
407
- /**
408
- * 中断某个文件上传
409
- * @param file 文件
410
- */
411
- abort(file: any): void;
412
- }
413
-
414
-
415
- export interface UploadProps extends HTMLAttributesWeak, CommonProps {
416
- /**
417
- * 上传的地址
418
- */
419
- action?: string;
420
-
421
- /**
422
- * 接受上传的文件类型 (image/png, image/jpg, .doc, .ppt) 详见 [input accept attribute](https://developer.mozilla.org/zh-CN/docs/Web/HTML/Element/Input#attr-accept)
423
- */
424
- accept?: string;
425
-
426
- /**
427
- * 上传额外传参
428
- */
429
- data?: any | (() => void);
430
-
431
- /**
432
- * 是否支持多选文件,`ie10+` 支持。开启后按住 ctrl 可选择多个文件
433
- */
434
- multiple?: boolean;
435
-
436
- /**
437
- * 设置上传的请求头部
438
- */
439
- headers?: any;
440
-
441
- /**
442
- * 是否允许请求携带 cookie
443
- */
444
- withCredentials?: boolean;
445
-
446
-
447
- /**
448
- * 可选参数,详见 [beforeUpload](#beforeUpload)
449
- * @en Optional parameters, see [beforeUpload](#beforeUpload)
450
- * @param file - 所有文件 - all file
451
- * @param options - 参数 - parameters
452
- * @defaultValue func.noop
453
- */
454
- beforeUpload?: (file: UploadFile, options: BeforeUploadOption) => boolean | object | unknown;
455
-
456
-
457
- /**
458
- * 上传中
459
- * @en onProgress Callback
460
- * @defaultValue func.noop
461
- */
462
- onProgress?: (file: ObjectFile[], e: ObjectFile) => void;
463
-
464
- /**
465
- * 可选参数,上传成功回调函数,参数为请求下响应信息以及文件
466
- * @en Optional parameters, upload success callback function, the parameter is the response information and file
467
- * @param file - 文件 - file
468
- * @param value - 值 - value
469
- * @defaultValue func.noop
470
- */
471
- onSuccess?: (file: ObjectFile, value?: ObjectFile[]) => void;
472
-
473
- /**
474
- * 可选参数,上传失败回调函数,参数为上传失败的信息、响应信息以及文件
475
- * @en Optional parameters, upload failure callback function, the parameter is the upload failure information, response information and file
476
- * @param file - 出错的文件 - error file
477
- * @param value - 当前值 - current value
478
- * @defaultValue func.noop
479
- */
480
- onError?: (error: UploadError, res?:any, file?:any) => void;
481
-
482
-
483
- /**
484
- * 子元素
485
- */
486
- children?: React.ReactNode;
487
-
488
- /**
489
- * 设置上传超时,单位ms
490
- */
491
- timeout?: number;
492
-
493
- /**
494
- * 上传方法
495
- */
496
- method?: 'post' | 'put';
497
-
498
- /**
499
- * 自定义上传方法
500
- */
501
- request?: (option: any) => any;
502
-
503
- /**
504
- * 文件名字段
505
- */
506
- name?: string;
507
-
508
-
509
- /**
510
- * 选择文件回调
511
- * @en Select file callback
512
- * @defaultValue func.noop
513
- */
514
- onSelect?: (uploadFiles: any[]) => any;
515
-
516
- /**
517
- * 放文件
518
- * @en Drop file
519
- * @defaultValue func.noop
520
- */
521
- onDrop?: (files: UploadFile[]) => void;
522
-
523
-
524
- /**
525
- * 样式前缀
526
- */
527
- prefix?: string;
528
-
529
- /**
530
- * 文件列表
531
- */
532
- value?: Array<any>;
533
-
534
- /**
535
- * 默认文件列表
536
- */
537
- defaultValue?: Array<any>;
538
-
539
- /**
540
- * 上传按钮形状
541
- */
542
- shape?: 'card';
543
-
544
- /**
545
- * 上传列表的样式
546
- */
547
- listType?: 'text' | 'image' | 'card';
548
-
549
- /**
550
- * 数据格式化函数,配合自定义 action 使用,参数为服务器的响应数据,详见 [formatter](#formater)
551
- */
552
- formatter?: (response: any, file: any) => void;
553
-
554
- /**
555
- * 自定义渲染List的图标
556
- * @param img
557
- * @param imgURL
558
- * @param file
559
- */
560
- thumbnailRender?: (img:any, imgURL:any, file:any)=> any;
561
-
562
- /**
563
- * 最大文件上传个数
564
- */
565
- limit?: number;
566
-
567
- /**
568
- * 可选参数,是否支持拖拽上传,`ie10+` 支持。
569
- */
570
- dragable?: boolean;
571
-
572
- /**
573
- * 可选参数,是否本地预览
574
- */
575
- useDataURL?: boolean;
576
-
577
- /**
578
- * 可选参数,是否禁用上传功能
579
- */
580
- disabled?: boolean;
581
-
582
- /**
583
- * 上传文件改变时的状态
584
- */
585
- onChange?: (value: File[]) => void;
586
-
587
- /**
588
- * 可选参数, 用于校验文件,afterSelect仅在 autoUpload=false 的时候生效,autoUpload=true时,可以使用beforeUpload完全可以替代该功能.
589
- */
590
- afterSelect?: (file: any) => boolean;
591
-
592
- /**
593
- * 移除文件回调函数
594
- */
595
- onRemove?: (file: any) => boolean | any;
596
-
597
- /**
598
- * 自定义额外渲染
599
- */
600
- extraRender?: (file: File) => any;
601
- /**
602
- * 自定义文件名渲染
603
- */
604
- fileNameRender?: (file: File) => any;
605
- /**
606
- * 自定义操作区域渲染
607
- */
608
- actionRender?: (file: ObjectFile) => any;
609
- /**
610
- * 自定义class
611
- */
612
- className?: string;
613
-
614
- /**
615
- * 自定义内联样式
616
- */
617
- style?: React.CSSProperties;
618
-
619
- /**
620
- * 自动上传
621
- */
622
- autoUpload?: boolean;
623
-
624
- /**
625
- * 透传给Progress props
626
- */
627
- progressProps?: ProgressProps;
628
-
629
- /**
630
- * 是否为预览态
631
- */
632
- isPreview?: boolean;
633
-
634
- /**
635
- * 预览态模式下渲染的内容
636
- */
637
- renderPreview?: (value: number) => void;
638
-
639
- /**
640
- * 文件对象的 key name
641
- */
642
- fileKeyName?: string;
643
-
644
- /**
645
- * 点击图片回调
646
- * @en Click image callback
647
- * @skip
648
- */
649
- onPreview?: (file: UploadFile, e?: MouseEvent<HTMLElement>) => void;
650
-
651
- /**
652
- * 点击文件名时触发 onPreview
653
- * @version 1.24
654
- */
655
- previewOnFileName?: boolean;
656
-
657
- /**
658
- * 自定义成功和失败的列表渲染方式,仅在 listType 是 card/image 时生效
659
- * @en Customize success and failure list rendering, only in listType is card or image
660
- */
661
- itemRender?: (file: UploadFile, action?: { remove?: () => void }) => ReactNode;
662
-
663
- /**
664
- * 选择新文件上传并替换
665
- */
666
- reUpload?: boolean;
667
- webkitdirectory?: boolean;
668
- }
669
-
670
- export enum ErrorCode {
671
- EXCEED_LIMIT = 'EXCEED_LIMIT',
672
- BEFOREUPLOAD_REJECT = 'BEFOREUPLOAD_REJECT',
673
- RESPONSE_FAIL = 'RESPONSE_FAIL',
674
- }
675
-
676
- export default class Upload extends React.Component<UploadProps, any> {
677
- static Card: typeof Card;
678
- static Dragger: typeof Dragger;
679
- static Selecter: typeof Selecter;
680
- static Uploader: typeof Uploader;
681
- static SimpleJSONUpload: typeof SimpleJSONUpload;
682
- static ErrorCode: typeof ErrorCode;
683
-
684
- /**
685
- * 添加文件
686
- * @param files
687
- */
688
- selectFiles: (file: File) => void;
689
- /**
690
- * 控制文件上传
691
- */
692
- startUpload: () => void;
693
- /**
694
- * 控制文件上传
695
- * @param file 文件
696
- */
697
- uploadFiles: (file: File) => void;
698
- /**
699
- * 替换文件
700
- */
701
- replaceFiles: (old: object, current: object) => void;
702
- /**
703
- * 上传状态
704
- */
705
- isUploading: () => boolean;
706
- /**
707
- * 中断某个文件上传
708
- * @param file 文件
709
- */
710
- abort: (file: File) => void;
711
- }
1
+ /// <reference types="react" />
2
+
3
+ import * as React from 'react';
4
+ import CommonProps from '../util';
5
+ import { ProgressProps } from '../progress';
6
+
7
+ interface HTMLAttributesWeak extends React.HTMLAttributes<HTMLElement> {
8
+ onError?: any;
9
+ onSelect?: any;
10
+ defaultValue?: any;
11
+ onChange?: any;
12
+ }
13
+
14
+ export interface UploadError extends Error {
15
+ code?: string;
16
+ status?: number;
17
+ method?: string;
18
+ url?: string;
19
+ }
20
+
21
+
22
+ export interface UploadProgressEvent extends ProgressEvent {
23
+ percent?: number;
24
+ }
25
+
26
+ export interface UploadOptions {
27
+ beforeUpload?: (file: UploadFile, data: unknown) => boolean | object | unknown;
28
+ onProgress?: (e: UploadProgressEvent, file?: UploadFile) => void;
29
+ onSuccess?: (ret: unknown, xhr?: XMLHttpRequest | UploadFile) => void;
30
+ onError?: (err: ProgressEvent | UploadError, param: unknown, file?: UploadFile) => void;
31
+ data?: UploadProps['data'];
32
+ name?: string;
33
+ method?: 'post' | 'put' | 'POST' | 'PUT';
34
+ action?: string;
35
+ headers?: { [key: string]: unknown; 'X-Requested-With'?: string | undefined };
36
+ withCredentials?: boolean;
37
+ request?: (option: object) => { abort?: (() => void) | undefined };
38
+ file?: UploadFile;
39
+ filename?: string;
40
+ timeout?: number;
41
+ }
42
+
43
+
44
+ export interface CommonModifiedFile {
45
+ uid?: string | number;
46
+ error?: unknown;
47
+ percent?: number;
48
+ state?: string;
49
+ lastModifiedDate?: Date;
50
+ filename?: string;
51
+ readonly name: string;
52
+ }
53
+
54
+ export type BeforeUploadOption = {
55
+ action?: string;
56
+ headers?: object;
57
+ timeout?: number;
58
+ withCredentials?: boolean;
59
+ method?: string;
60
+ data?: object;
61
+ };
62
+
63
+ export interface UploadFile extends CommonModifiedFile, File {
64
+ url?: string;
65
+ }
66
+
67
+
68
+
69
+ export interface ObjectFile extends CommonModifiedFile {
70
+ lastModified?: number;
71
+ lastModifiedDate?: Date;
72
+ size?: number;
73
+ type?: string;
74
+ originFileObj?: UploadFile;
75
+ imgURL?: string;
76
+ downloadURL?: string;
77
+ url?: string;
78
+ errorMsg?: string;
79
+ errorText?: string;
80
+ fileURL?: string;
81
+ tempUrl?: string;
82
+ alt?: string;
83
+ }
84
+
85
+
86
+
87
+ export interface CardProps extends HTMLAttributesWeak, CommonProps {
88
+ /**
89
+ * 上传的地址
90
+ */
91
+ action?: string;
92
+
93
+ /**
94
+ * 是否支持多选文件,`ie10+` 支持。开启后按住 ctrl 可选择多个文件
95
+ */
96
+ multiple?: boolean;
97
+
98
+ /**
99
+ * 展示下载按钮
100
+ */
101
+ showDownload?: boolean;
102
+
103
+ /**
104
+ * 接受上传的文件类型 (image/png, image/jpg, .doc, .ppt) 详见 [input accept attribute](https://developer.mozilla.org/zh-CN/docs/Web/HTML/Element/Input#attr-accept)
105
+ */
106
+ accept?: string;
107
+
108
+
109
+ /**
110
+ * 上传额外传参
111
+ * @en Upload extra parameters
112
+ */
113
+ data?:
114
+ | { [key: string]: string | Blob }
115
+ | ((file: UploadFile) => { [key: string]: string | Blob });
116
+
117
+ /**
118
+ * 设置上传的请求头部
119
+ */
120
+ headers?: any;
121
+
122
+ /**
123
+ * 是否允许请求携带 cookie
124
+ */
125
+ withCredentials?: boolean;
126
+
127
+ /**
128
+ * 可选参数,详见 [beforeUpload](#beforeUpload)
129
+ * @en Optional parameters, see [beforeUpload](#beforeUpload)
130
+ * @param file - 所有文件 - all file
131
+ * @param options - 参数 - parameters
132
+ * @defaultValue func.noop
133
+ */
134
+ beforeUpload?: (file: UploadFile, options: BeforeUploadOption) => boolean | object | unknown;
135
+
136
+
137
+ /**
138
+ * 上传中
139
+ * @en onProgress Callback
140
+ * @defaultValue func.noop
141
+ */
142
+ onProgress?: (file: ObjectFile[], e: ObjectFile) => void;
143
+
144
+ /**
145
+ * 可选参数,上传成功回调函数,参数为请求下响应信息以及文件
146
+ * @en Optional parameters, upload success callback function, the parameter is the response information and file
147
+ * @param file - 文件 - file
148
+ * @param value - 值 - value
149
+ * @defaultValue func.noop
150
+ */
151
+ onSuccess?: (file: ObjectFile, value?: ObjectFile[]) => void;
152
+
153
+ /**
154
+ * 可选参数,上传失败回调函数,参数为上传失败的信息、响应信息以及文件
155
+ * @en Optional parameters, upload failure callback function, the parameter is the upload failure information, response information and file
156
+ * @param file - 出错的文件 - error file
157
+ * @param value - 当前值 - current value
158
+ * @defaultValue func.noop
159
+ */
160
+ onError?: (file: ObjectFile, value: ObjectFile[]) => void;
161
+
162
+ /**
163
+ * 子元素
164
+ */
165
+ children?: any;
166
+
167
+ /**
168
+ * 设置上传超时,单位ms
169
+ */
170
+ timeout?: number;
171
+
172
+ /**
173
+ * 上传方法
174
+ * @en Upload method
175
+ * @defaultValue 'post'
176
+ */
177
+ method?: 'post' | 'put' | 'POST' | 'PUT';
178
+
179
+ /**
180
+ * 自定义上传方法
181
+ * @en Custom upload method
182
+ * @param option - 参数 - parameters
183
+ * @returns - 返回值 - object with abort method
184
+ */
185
+ request?: (option: any) => any;
186
+
187
+ /**
188
+ * 文件名字段
189
+ */
190
+ name?: string;
191
+
192
+
193
+ /**
194
+ * 选择文件回调
195
+ * @en Select file callback
196
+ * @defaultValue func.noop
197
+ */
198
+ onSelect?: (uploadFiles: any[]) => any;
199
+
200
+
201
+ /**
202
+ * 放文件
203
+ * @en Drop file
204
+ * @defaultValue func.noop
205
+ */
206
+ onDrop?: (files: UploadFile[]) => void;
207
+
208
+ /**
209
+ * 样式前缀
210
+ */
211
+ prefix?: string;
212
+
213
+ /**
214
+ * 文件列表
215
+ * @en File list
216
+ */
217
+ value?: ObjectFile[] | ObjectFile;
218
+
219
+ /**
220
+ * 默认文件列表
221
+ */
222
+ defaultValue?: ObjectFile[] | ObjectFile;
223
+
224
+ /**
225
+ * 上传按钮形状
226
+ */
227
+ shape?: 'card';
228
+
229
+ /**
230
+ * 上传列表的样式
231
+ */
232
+ listType?: 'text' | 'image' | 'card';
233
+
234
+ /**
235
+ * 数据格式化函数,配合自定义 action 使用,参数为服务器的响应数据,详见 [formatter](#formater)
236
+ */
237
+ formatter?: (response: {}, file: any) => void;
238
+
239
+ /**
240
+ * 最大文件上传个数
241
+ */
242
+ limit?: number;
243
+
244
+ /**
245
+ * 可选参数,是否支持拖拽上传,`ie10+` 支持。
246
+ */
247
+ dragable?: boolean;
248
+
249
+ /**
250
+ * 可选参数,是否本地预览
251
+ */
252
+ useDataURL?: boolean;
253
+
254
+ /**
255
+ * 可选参数,是否禁用上传功能
256
+ */
257
+ disabled?: boolean;
258
+
259
+ /**
260
+ * 改变时候的回调
261
+ */
262
+ onChange?: (value: File[], param2?: any) => void;
263
+
264
+ /**
265
+ * 可选参数, 用于校验文件,afterSelect仅在 autoUpload=false 的时候生效,autoUpload=true时,可以使用beforeUpload完全可以替代该功能.
266
+ */
267
+ afterSelect?: (file: {}) => boolean;
268
+
269
+ /**
270
+ * 点击移除的回调
271
+ */
272
+ onRemove?: () => void;
273
+
274
+ /**
275
+ * 自定义class
276
+ */
277
+ className?: string;
278
+
279
+ /**
280
+ * 自定义内联样式
281
+ */
282
+ style?: React.CSSProperties;
283
+
284
+ /**
285
+ * 自动上传
286
+ */
287
+ autoUpload?: boolean;
288
+
289
+ /**
290
+ * 透传给Progress props
291
+ */
292
+ progressProps?: ProgressProps;
293
+
294
+ /**
295
+ * 点击图片回调
296
+ * @en Click image callback
297
+ * @skip
298
+ */
299
+ onPreview?: (file: UploadFile, e?: MouseEvent<HTMLElement>) => void;
300
+
301
+ /**
302
+ * 取消上传的回调
303
+ */
304
+ onCancel?: () => void;
305
+ /**
306
+ * 调用系统设备媒体
307
+ */
308
+ capture?: string;
309
+
310
+ /**
311
+ * 自定义成功和失败的列表渲染方式
312
+ */
313
+ itemRender?: (file: UploadFile, obj: { remove?: () => void }) => React.ReactNode;
314
+
315
+ /**
316
+ * 选择新文件上传并替换
317
+ */
318
+ reUpload?: boolean;
319
+ }
320
+
321
+ export class Card extends React.Component<CardProps, any> {}
322
+
323
+ export interface SimpleJSONUploadProps extends UploadProps, CardProps {
324
+ uploadComponent?: any; // 可以指定上传组件
325
+ /**
326
+ * 上传文件改变时的状态。两个参数的OnChange函数,可以接收最原始的返回值。
327
+ */
328
+ onChange2?: (value: File[], param2?: any) => void;
329
+ }
330
+
331
+ export class SimpleJSONUpload extends React.Component<SimpleJSONUploadProps, any> {} {
332
+
333
+ }
334
+
335
+
336
+ export interface DraggerProps extends UploadProps {
337
+
338
+ }
339
+
340
+ export class Dragger extends React.Component<DraggerProps, any> {}
341
+
342
+ export interface SelecterProps extends HTMLAttributesWeak, CommonProps {
343
+ /**
344
+ * 是否禁用上传功能
345
+ */
346
+ disabled?: boolean;
347
+
348
+ /**
349
+ * 是否支持多选文件,`ie10+` 支持。开启后按住 ctrl 可选择多个文件
350
+ */
351
+ multiple?: boolean;
352
+
353
+ /**
354
+ * 是否支持拖拽上传,`ie10+` 支持。
355
+ */
356
+ dragable?: boolean;
357
+
358
+ /**
359
+ * 接受上传的文件类型 (image/png, image/jpg, .doc, .ppt) 详见 [input accept attribute](https://developer.mozilla.org/zh-CN/docs/Web/HTML/Element/Input#attr-accept)
360
+ */
361
+ accept?: string;
362
+
363
+ /**
364
+ * 文件选择回调
365
+ */
366
+ onSelect?: (e: React.ChangeEvent<HTMLInputElement>) => void;
367
+
368
+ /**
369
+ * 拖拽经过回调
370
+ */
371
+ onDragOver?: () => void;
372
+
373
+ /**
374
+ * 拖拽离开回调
375
+ */
376
+ onDragLeave?: () => void;
377
+
378
+ /**
379
+ * 拖拽完成回调
380
+ */
381
+ onDrop?: () => void;
382
+
383
+ /**
384
+ * 是否支持上传文件夹,仅在 chorme 下生效
385
+ */
386
+ webkitdirectory?: boolean;
387
+ }
388
+
389
+ export class Selecter extends React.Component<SelecterProps, any> {}
390
+
391
+ export class Uploader {
392
+ /**
393
+ * @param options 配置
394
+ */
395
+ constructor(options?: any);
396
+
397
+ /**
398
+ * 配置选项
399
+ * @param options 配置
400
+ */
401
+ setOptions(options: any): void;
402
+ /**
403
+ * 开始上传
404
+ * @param files 文件列表
405
+ */
406
+ startUpload(files: Array<any>): void;
407
+ /**
408
+ * 中断某个文件上传
409
+ * @param file 文件
410
+ */
411
+ abort(file: any): void;
412
+ }
413
+
414
+
415
+ export interface UploadProps extends HTMLAttributesWeak, CommonProps {
416
+ /**
417
+ * 上传的地址
418
+ */
419
+ action?: string;
420
+
421
+ /**
422
+ * 接受上传的文件类型 (image/png, image/jpg, .doc, .ppt) 详见 [input accept attribute](https://developer.mozilla.org/zh-CN/docs/Web/HTML/Element/Input#attr-accept)
423
+ */
424
+ accept?: string;
425
+
426
+ /**
427
+ * 上传额外传参
428
+ */
429
+ data?: any | (() => void);
430
+
431
+ /**
432
+ * 是否支持多选文件,`ie10+` 支持。开启后按住 ctrl 可选择多个文件
433
+ */
434
+ multiple?: boolean;
435
+
436
+ /**
437
+ * 设置上传的请求头部
438
+ */
439
+ headers?: any;
440
+
441
+ /**
442
+ * 是否允许请求携带 cookie
443
+ */
444
+ withCredentials?: boolean;
445
+
446
+
447
+ /**
448
+ * 可选参数,详见 [beforeUpload](#beforeUpload)
449
+ * @en Optional parameters, see [beforeUpload](#beforeUpload)
450
+ * @param file - 所有文件 - all file
451
+ * @param options - 参数 - parameters
452
+ * @defaultValue func.noop
453
+ */
454
+ beforeUpload?: (file: UploadFile, options: BeforeUploadOption) => boolean | object | unknown;
455
+
456
+
457
+ /**
458
+ * 上传中
459
+ * @en onProgress Callback
460
+ * @defaultValue func.noop
461
+ */
462
+ onProgress?: (file: ObjectFile[], e: ObjectFile) => void;
463
+
464
+ /**
465
+ * 可选参数,上传成功回调函数,参数为请求下响应信息以及文件
466
+ * @en Optional parameters, upload success callback function, the parameter is the response information and file
467
+ * @param file - 文件 - file
468
+ * @param value - 值 - value
469
+ * @defaultValue func.noop
470
+ */
471
+ onSuccess?: (file: ObjectFile, value?: ObjectFile[]) => void;
472
+
473
+ /**
474
+ * 可选参数,上传失败回调函数,参数为上传失败的信息、响应信息以及文件
475
+ * @en Optional parameters, upload failure callback function, the parameter is the upload failure information, response information and file
476
+ * @param file - 出错的文件 - error file
477
+ * @param value - 当前值 - current value
478
+ * @defaultValue func.noop
479
+ */
480
+ onError?: (error: UploadError, res?:any, file?:any) => void;
481
+
482
+
483
+ /**
484
+ * 子元素
485
+ */
486
+ children?: React.ReactNode;
487
+
488
+ /**
489
+ * 设置上传超时,单位ms
490
+ */
491
+ timeout?: number;
492
+
493
+ /**
494
+ * 上传方法
495
+ */
496
+ method?: 'post' | 'put';
497
+
498
+ /**
499
+ * 自定义上传方法
500
+ */
501
+ request?: (option: any) => any;
502
+
503
+ /**
504
+ * 文件名字段
505
+ */
506
+ name?: string;
507
+
508
+
509
+ /**
510
+ * 选择文件回调
511
+ * @en Select file callback
512
+ * @defaultValue func.noop
513
+ */
514
+ onSelect?: (uploadFiles: any[]) => any;
515
+
516
+ /**
517
+ * 放文件
518
+ * @en Drop file
519
+ * @defaultValue func.noop
520
+ */
521
+ onDrop?: (files: UploadFile[]) => void;
522
+
523
+
524
+ /**
525
+ * 样式前缀
526
+ */
527
+ prefix?: string;
528
+
529
+ /**
530
+ * 文件列表
531
+ */
532
+ value?: Array<any>;
533
+
534
+ /**
535
+ * 默认文件列表
536
+ */
537
+ defaultValue?: Array<any>;
538
+
539
+ /**
540
+ * 上传按钮形状
541
+ */
542
+ shape?: 'card';
543
+
544
+ /**
545
+ * 上传列表的样式
546
+ */
547
+ listType?: 'text' | 'image' | 'card';
548
+
549
+ /**
550
+ * 数据格式化函数,配合自定义 action 使用,参数为服务器的响应数据,详见 [formatter](#formater)
551
+ */
552
+ formatter?: (response: any, file: any) => void;
553
+
554
+ /**
555
+ * 自定义渲染List的图标
556
+ * @param img
557
+ * @param imgURL
558
+ * @param file
559
+ */
560
+ thumbnailRender?: (img:any, imgURL:any, file:any)=> any;
561
+
562
+ /**
563
+ * 最大文件上传个数
564
+ */
565
+ limit?: number;
566
+
567
+ /**
568
+ * 可选参数,是否支持拖拽上传,`ie10+` 支持。
569
+ */
570
+ dragable?: boolean;
571
+
572
+ /**
573
+ * 可选参数,是否本地预览
574
+ */
575
+ useDataURL?: boolean;
576
+
577
+ /**
578
+ * 可选参数,是否禁用上传功能
579
+ */
580
+ disabled?: boolean;
581
+
582
+ /**
583
+ * 上传文件改变时的状态
584
+ */
585
+ onChange?: (value: File[]) => void;
586
+
587
+ /**
588
+ * 可选参数, 用于校验文件,afterSelect仅在 autoUpload=false 的时候生效,autoUpload=true时,可以使用beforeUpload完全可以替代该功能.
589
+ */
590
+ afterSelect?: (file: any) => boolean;
591
+
592
+ /**
593
+ * 移除文件回调函数
594
+ */
595
+ onRemove?: (file: any) => boolean | any;
596
+
597
+ /**
598
+ * 自定义额外渲染
599
+ */
600
+ extraRender?: (file: File) => any;
601
+ /**
602
+ * 自定义文件名渲染
603
+ */
604
+ fileNameRender?: (file: File) => any;
605
+ /**
606
+ * 自定义操作区域渲染
607
+ */
608
+ actionRender?: (file: ObjectFile) => any;
609
+ /**
610
+ * 自定义class
611
+ */
612
+ className?: string;
613
+
614
+ /**
615
+ * 自定义内联样式
616
+ */
617
+ style?: React.CSSProperties;
618
+
619
+ /**
620
+ * 自动上传
621
+ */
622
+ autoUpload?: boolean;
623
+
624
+ /**
625
+ * 透传给Progress props
626
+ */
627
+ progressProps?: ProgressProps;
628
+
629
+ /**
630
+ * 是否为预览态
631
+ */
632
+ isPreview?: boolean;
633
+
634
+ /**
635
+ * 预览态模式下渲染的内容
636
+ */
637
+ renderPreview?: (value: number) => void;
638
+
639
+ /**
640
+ * 文件对象的 key name
641
+ */
642
+ fileKeyName?: string;
643
+
644
+ /**
645
+ * 点击图片回调
646
+ * @en Click image callback
647
+ * @skip
648
+ */
649
+ onPreview?: (file: UploadFile, e?: MouseEvent<HTMLElement>) => void;
650
+
651
+ /**
652
+ * 点击文件名时触发 onPreview
653
+ * @version 1.24
654
+ */
655
+ previewOnFileName?: boolean;
656
+
657
+ /**
658
+ * 自定义成功和失败的列表渲染方式,仅在 listType 是 card/image 时生效
659
+ * @en Customize success and failure list rendering, only in listType is card or image
660
+ */
661
+ itemRender?: (file: UploadFile, action?: { remove?: () => void }) => ReactNode;
662
+
663
+ /**
664
+ * 选择新文件上传并替换
665
+ */
666
+ reUpload?: boolean;
667
+ webkitdirectory?: boolean;
668
+ }
669
+
670
+ export enum ErrorCode {
671
+ EXCEED_LIMIT = 'EXCEED_LIMIT',
672
+ BEFOREUPLOAD_REJECT = 'BEFOREUPLOAD_REJECT',
673
+ RESPONSE_FAIL = 'RESPONSE_FAIL',
674
+ }
675
+
676
+ export default class Upload extends React.Component<UploadProps, any> {
677
+ static Card: typeof Card;
678
+ static Dragger: typeof Dragger;
679
+ static Selecter: typeof Selecter;
680
+ static Uploader: typeof Uploader;
681
+ static SimpleJSONUpload: typeof SimpleJSONUpload;
682
+ static ErrorCode: typeof ErrorCode;
683
+
684
+ /**
685
+ * 添加文件
686
+ * @param files
687
+ */
688
+ selectFiles: (file: File) => void;
689
+ /**
690
+ * 控制文件上传
691
+ */
692
+ startUpload: () => void;
693
+ /**
694
+ * 控制文件上传
695
+ * @param file 文件
696
+ */
697
+ uploadFiles: (file: File) => void;
698
+ /**
699
+ * 替换文件
700
+ */
701
+ replaceFiles: (old: object, current: object) => void;
702
+ /**
703
+ * 上传状态
704
+ */
705
+ isUploading: () => boolean;
706
+ /**
707
+ * 中断某个文件上传
708
+ * @param file 文件
709
+ */
710
+ abort: (file: File) => void;
711
+ }