fat-design 0.0.1-beta.20250505154859

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 (231) hide show
  1. package/README.md +1 -0
  2. package/index.browser.js +78 -0
  3. package/index.js +44076 -0
  4. package/index.umd.cjs +67 -0
  5. package/index.umd.js +67 -0
  6. package/libs/config-16.js +7 -0
  7. package/libs/config-17.js +7 -0
  8. package/libs/config-18.js +9 -0
  9. package/libs/config-19.js +9 -0
  10. package/manifest.json +11 -0
  11. package/package.json +20 -0
  12. package/style.css +1 -0
  13. package/types/0buildTypes/config-provider/constants.d.ts +3 -0
  14. package/types/0buildTypes/config-provider/index.d.ts +4 -0
  15. package/types/0buildTypes/config-provider/v2/consumer.d.ts +3 -0
  16. package/types/0buildTypes/config-provider/v2/context.d.ts +6 -0
  17. package/types/0buildTypes/config-provider/v2/error-boundary.d.ts +27 -0
  18. package/types/0buildTypes/config-provider/v2/functions.d.ts +66 -0
  19. package/types/0buildTypes/config-provider/v2/index.d.ts +37 -0
  20. package/types/0buildTypes/config-provider/v2/provider.d.ts +4 -0
  21. package/types/0buildTypes/config-provider/v2/types.d.ts +22 -0
  22. package/types/0buildTypes/dependencies.d.ts +2 -0
  23. package/types/0buildTypes/empty/empty.d.ts +22 -0
  24. package/types/0buildTypes/empty/index.d.ts +2 -0
  25. package/types/0buildTypes/filter/filter-types.d.ts +21 -0
  26. package/types/0buildTypes/filter/filter.d.ts +10 -0
  27. package/types/0buildTypes/filter/index.d.ts +9 -0
  28. package/types/0buildTypes/form2/deps.d.ts +10 -0
  29. package/types/0buildTypes/form2/form-actions.d.ts +36 -0
  30. package/types/0buildTypes/form2/form-buttons.d.ts +28 -0
  31. package/types/0buildTypes/form2/form-context.d.ts +4 -0
  32. package/types/0buildTypes/form2/form-error.d.ts +3 -0
  33. package/types/0buildTypes/form2/form-item-card.d.ts +9 -0
  34. package/types/0buildTypes/form2/form-item-comp.d.ts +4 -0
  35. package/types/0buildTypes/form2/form-item-label.d.ts +4 -0
  36. package/types/0buildTypes/form2/form-item-preview.d.ts +4 -0
  37. package/types/0buildTypes/form2/form-item.d.ts +7 -0
  38. package/types/0buildTypes/form2/form-layout.d.ts +3 -0
  39. package/types/0buildTypes/form2/form-rules.d.ts +3 -0
  40. package/types/0buildTypes/form2/form-section.d.ts +25 -0
  41. package/types/0buildTypes/form2/form-types.d.ts +386 -0
  42. package/types/0buildTypes/form2/form.d.ts +36 -0
  43. package/types/0buildTypes/form2/helper/buildParams.d.ts +5 -0
  44. package/types/0buildTypes/form2/helper/constants.d.ts +24 -0
  45. package/types/0buildTypes/form2/helper/fixItemProps.d.ts +16 -0
  46. package/types/0buildTypes/form2/helper/fnInheritProps.d.ts +2 -0
  47. package/types/0buildTypes/form2/helper/linkageFormState.d.ts +16 -0
  48. package/types/0buildTypes/form2/helper/useDataSource.d.ts +14 -0
  49. package/types/0buildTypes/form2/helper/useFormChildren.d.ts +5 -0
  50. package/types/0buildTypes/form2/helper/useFormItemState.d.ts +3 -0
  51. package/types/0buildTypes/form2/helper/useGetXProps.d.ts +3 -0
  52. package/types/0buildTypes/form2/index.d.ts +20 -0
  53. package/types/0buildTypes/form2/layout/from-float-layout.d.ts +3 -0
  54. package/types/0buildTypes/hooks/index.d.ts +16 -0
  55. package/types/0buildTypes/hooks/useCurrentState.d.ts +11 -0
  56. package/types/0buildTypes/hooks/useOnKeyPressSave.d.ts +12 -0
  57. package/types/0buildTypes/hooks/usePersistFn.d.ts +3 -0
  58. package/types/0buildTypes/hooks/usePreciseStore.d.ts +53 -0
  59. package/types/0buildTypes/hooks/useSize.d.ts +6 -0
  60. package/types/0buildTypes/hooks/useUniqueId.d.ts +2 -0
  61. package/types/0buildTypes/hooks/useValueOnChange.d.ts +2 -0
  62. package/types/0buildTypes/image/Image.d.ts +42 -0
  63. package/types/0buildTypes/image/Operations.d.ts +25 -0
  64. package/types/0buildTypes/image/Preview.d.ts +64 -0
  65. package/types/0buildTypes/image/PreviewGroup.d.ts +32 -0
  66. package/types/0buildTypes/image/common.d.ts +2 -0
  67. package/types/0buildTypes/image/context.d.ts +7 -0
  68. package/types/0buildTypes/image/getFixScaleEleTransPosition.d.ts +17 -0
  69. package/types/0buildTypes/image/hooks/useImageTransform.d.ts +28 -0
  70. package/types/0buildTypes/image/hooks/useMouseEvent.d.ts +9 -0
  71. package/types/0buildTypes/image/hooks/usePreviewItems.d.ts +7 -0
  72. package/types/0buildTypes/image/hooks/useRegisterImage.d.ts +2 -0
  73. package/types/0buildTypes/image/hooks/useStatus.d.ts +14 -0
  74. package/types/0buildTypes/image/hooks/useTouchEvent.d.ts +8 -0
  75. package/types/0buildTypes/image/index.d.ts +6 -0
  76. package/types/0buildTypes/image/interface.d.ts +14 -0
  77. package/types/0buildTypes/image/previewConfig.d.ts +4 -0
  78. package/types/0buildTypes/image/util.d.ts +1 -0
  79. package/types/0buildTypes/image/utils/KeyCode.d.ts +23 -0
  80. package/types/0buildTypes/image/utils/addEventListener.d.ts +4 -0
  81. package/types/0buildTypes/image/utils/buildIcons.d.ts +2 -0
  82. package/types/0buildTypes/image/utils/css.d.ts +8 -0
  83. package/types/0buildTypes/image/utils/isEqual.d.ts +8 -0
  84. package/types/0buildTypes/image/utils/raf.d.ts +6 -0
  85. package/types/0buildTypes/image/utils/useEvent.d.ts +1 -0
  86. package/types/0buildTypes/image/utils/useLayoutEffect.d.ts +4 -0
  87. package/types/0buildTypes/image/utils/useMergedState.d.ts +12 -0
  88. package/types/0buildTypes/image/utils/useSafeState.d.ts +14 -0
  89. package/types/0buildTypes/index.d.ts +4 -0
  90. package/types/0buildTypes/libs.d.ts +66 -0
  91. package/types/0buildTypes/nav/group.d.ts +30 -0
  92. package/types/0buildTypes/nav/index.d.ts +4 -0
  93. package/types/0buildTypes/nav/item.d.ts +30 -0
  94. package/types/0buildTypes/nav/nav.d.ts +2 -0
  95. package/types/0buildTypes/nav/popup-item.d.ts +24 -0
  96. package/types/0buildTypes/nav/sub-nav.d.ts +30 -0
  97. package/types/0buildTypes/nav/types.d.ts +375 -0
  98. package/types/0buildTypes/others.d.ts +10 -0
  99. package/types/0buildTypes/pages/deps.d.ts +5 -0
  100. package/types/0buildTypes/pages/detail-page/detail-page-card-form.d.ts +12 -0
  101. package/types/0buildTypes/pages/detail-page/detail-page-form-item.d.ts +9 -0
  102. package/types/0buildTypes/pages/detail-page/detail-page-section.d.ts +19 -0
  103. package/types/0buildTypes/pages/detail-page/detail-page-summary.d.ts +9 -0
  104. package/types/0buildTypes/pages/detail-page/detail-page.d.ts +14 -0
  105. package/types/0buildTypes/pages/detail-page/index.d.ts +2 -0
  106. package/types/0buildTypes/pages/detail-page/types.d.ts +29 -0
  107. package/types/0buildTypes/pages/page-card/types.d.ts +6 -0
  108. package/types/0buildTypes/query-form/index.d.ts +2 -0
  109. package/types/0buildTypes/query-form/query-form-items.d.ts +3 -0
  110. package/types/0buildTypes/query-form/query-form-layout.d.ts +2 -0
  111. package/types/0buildTypes/query-form/query-form.d.ts +17 -0
  112. package/types/0buildTypes/query-form/types.d.ts +5 -0
  113. package/types/0buildTypes/sortable-list/helpers.d.ts +8 -0
  114. package/types/0buildTypes/sortable-list/hooks.d.ts +24 -0
  115. package/types/0buildTypes/sortable-list/index.d.ts +14 -0
  116. package/types/0buildTypes/sortable-list/sortable-editable-table.d.ts +2 -0
  117. package/types/0buildTypes/sortable-list/sortable-list.d.ts +564 -0
  118. package/types/0buildTypes/sortable-list/sortable-table.d.ts +2 -0
  119. package/types/0buildTypes/sortable-list/types.d.ts +15 -0
  120. package/types/0buildTypes/table-pro/index.d.ts +24 -0
  121. package/types/0buildTypes/table-pro/table-pro.d.ts +17 -0
  122. package/types/0buildTypes/table-pro/types.d.ts +93 -0
  123. package/types/0buildTypes/table-pro/useTablePro.d.ts +10 -0
  124. package/types/0buildTypes/table-pro/utils/formatQueryRes.d.ts +1 -0
  125. package/types/0buildTypes/table-pro/widget/column-setting.d.ts +4 -0
  126. package/types/0buildTypes/table-pro/widget/deps.d.ts +2 -0
  127. package/types/0buildTypes/table-pro/widget/index.d.ts +23 -0
  128. package/types/0buildTypes/table-pro/widget/operations.d.ts +5 -0
  129. package/types/0buildTypes/table-pro/widget/operationsActions.d.ts +2 -0
  130. package/types/0buildTypes/table-pro/widget/renderFormats.d.ts +15 -0
  131. package/types/0buildTypes/table-pro/widget/renderMultiFieldCell.d.ts +4 -0
  132. package/types/0buildTypes/table-pro/widget/renderOperationCell.d.ts +4 -0
  133. package/types/0buildTypes/table-pro/widget/renderToolbar.d.ts +6 -0
  134. package/types/0buildTypes/table-pro/widget/table-utils-types.d.ts +40 -0
  135. package/types/0buildTypes/util/comp.d.ts +16 -0
  136. package/types/0buildTypes/util/component.d.ts +1 -0
  137. package/types/0buildTypes/util/constants.d.ts +4 -0
  138. package/types/0buildTypes/util/dom.d.ts +116 -0
  139. package/types/0buildTypes/util/env.d.ts +7 -0
  140. package/types/0buildTypes/util/func-wrapper.d.ts +1 -0
  141. package/types/0buildTypes/util/func.d.ts +73 -0
  142. package/types/0buildTypes/util/guid.d.ts +11 -0
  143. package/types/0buildTypes/util/isStateEquals.d.ts +4 -0
  144. package/types/0buildTypes/util/localforage.d.ts +11 -0
  145. package/types/0buildTypes/util/log.d.ts +18 -0
  146. package/types/0buildTypes/util/pick-res-data.d.ts +28 -0
  147. package/types/0buildTypes/util/react-dom.d.ts +27 -0
  148. package/types/0buildTypes/util/shallowEqual.d.ts +3 -0
  149. package/types/0buildTypes/util/string.d.ts +26 -0
  150. package/types/0buildTypes/util/toMap.d.ts +7 -0
  151. package/types/affix/index.d.ts +33 -0
  152. package/types/animate/index.d.ts +80 -0
  153. package/types/avatar/index.d.ts +41 -0
  154. package/types/badge/index.d.ts +38 -0
  155. package/types/balloon/index.d.ts +254 -0
  156. package/types/balloon-confirm/index.d.ts +78 -0
  157. package/types/batch-input/index.d.ts +152 -0
  158. package/types/box/index.d.ts +18 -0
  159. package/types/breadcrumb/index.d.ts +60 -0
  160. package/types/button/index.d.ts +179 -0
  161. package/types/calendar/index.d.ts +76 -0
  162. package/types/card/index.d.ts +147 -0
  163. package/types/cascader/index.d.ts +135 -0
  164. package/types/cascader-select/index.d.ts +230 -0
  165. package/types/checkbox/index.d.ts +175 -0
  166. package/types/collapse/index.d.ts +96 -0
  167. package/types/config-provider/index.d.ts +3 -0
  168. package/types/date-picker/index.d.ts +123 -0
  169. package/types/dialog/index.d.ts +328 -0
  170. package/types/divider/index.d.ts +21 -0
  171. package/types/drawer/index.d.ts +121 -0
  172. package/types/dropdown/index.d.ts +198 -0
  173. package/types/field/index.d.ts +33 -0
  174. package/types/filter/index.d.ts +2 -0
  175. package/types/form/index.d.ts +5 -0
  176. package/types/grid/index.d.ts +142 -0
  177. package/types/hooks/index.d.ts +2 -0
  178. package/types/icon/index.d.ts +29 -0
  179. package/types/image/index.d.ts +3 -0
  180. package/types/index.d.ts +67 -0
  181. package/types/input/index.d.ts +367 -0
  182. package/types/list/index.d.ts +69 -0
  183. package/types/loading/index.d.ts +92 -0
  184. package/types/locale/default.d.ts +143 -0
  185. package/types/locale/en-us.d.ts +1 -0
  186. package/types/locale/id-id.d.ts +1 -0
  187. package/types/locale/it-it.d.ts +1 -0
  188. package/types/locale/ja-jp.d.ts +1 -0
  189. package/types/locale/ko-kr.d.ts +1 -0
  190. package/types/locale/ms-my.d.ts +1 -0
  191. package/types/locale/pt-pt.d.ts +1 -0
  192. package/types/locale/th-th.d.ts +1 -0
  193. package/types/locale/vi-vn.d.ts +1 -0
  194. package/types/locale/zh-cn.d.ts +1 -0
  195. package/types/locale/zh-hk.d.ts +1 -0
  196. package/types/locale/zh-tw.d.ts +1 -0
  197. package/types/menu/index.d.ts +336 -0
  198. package/types/menu-button/index.d.ts +100 -0
  199. package/types/message/index.d.ts +164 -0
  200. package/types/nav/index.d.ts +313 -0
  201. package/types/notification/index.d.ts +35 -0
  202. package/types/number-picker/index.d.ts +161 -0
  203. package/types/overlay/index.d.ts +363 -0
  204. package/types/pagination/index.d.ts +115 -0
  205. package/types/paragraph/index.d.ts +23 -0
  206. package/types/progress/index.d.ts +53 -0
  207. package/types/query-form/index.d.ts +3 -0
  208. package/types/radio/index.d.ts +180 -0
  209. package/types/range/index.d.ts +120 -0
  210. package/types/rating/index.d.ts +84 -0
  211. package/types/responsive-grid/index.d.ts +30 -0
  212. package/types/search/index.d.ts +219 -0
  213. package/types/select/index.d.ts +476 -0
  214. package/types/shell/index.d.ts +53 -0
  215. package/types/slider/index.d.ts +172 -0
  216. package/types/split-button/index.d.ts +134 -0
  217. package/types/step/index.d.ts +108 -0
  218. package/types/switch/index.d.ts +85 -0
  219. package/types/tab/index.d.ts +170 -0
  220. package/types/table/index.d.ts +407 -0
  221. package/types/table-pro/index.d.ts +3 -0
  222. package/types/tag/index.d.ts +124 -0
  223. package/types/time-picker/index.d.ts +193 -0
  224. package/types/timeline/index.d.ts +95 -0
  225. package/types/transfer/index.d.ts +199 -0
  226. package/types/tree/index.d.ts +421 -0
  227. package/types/tree-select/index.d.ts +251 -0
  228. package/types/typography/index.d.ts +28 -0
  229. package/types/upload/index.d.ts +707 -0
  230. package/types/util.d.ts +50 -0
  231. package/types/virtual-list/index.d.ts +44 -0
@@ -0,0 +1,421 @@
1
+ /// <reference types="react" />
2
+
3
+ import * as React from 'react';
4
+ import CommonProps from '../util';
5
+ import { VirtualListProps } from '../virtual-list';
6
+
7
+ export type NodeInstance = InstanceType<typeof TreeNode>;
8
+
9
+ export interface BasicDataNode {
10
+ checkable?: boolean;
11
+ disabled?: boolean;
12
+ checkboxDisabled?: boolean;
13
+ icon?: IconType;
14
+ isLeaf?: boolean;
15
+ selectable?: boolean;
16
+ draggable?: boolean;
17
+ editable?: boolean;
18
+
19
+ className?: string;
20
+ style?: React.CSSProperties;
21
+ }
22
+
23
+ export type FieldDataNode<T, ChildFieldName extends string = 'children'> = BasicDataNode &
24
+ T &
25
+ Partial<Record<ChildFieldName, FieldDataNode<T, ChildFieldName>[]>>;
26
+
27
+ export type DataNode = FieldDataNode<{
28
+ key: Key;
29
+ label?: React.ReactNode;
30
+ illegalFlag?: boolean;
31
+ node?: NodeElement;
32
+ size?: number;
33
+ posinset?: number;
34
+ children?: DataNode[] | NodeElement;
35
+ pos?: string;
36
+ level?: number;
37
+ isLastChild?: boolean[];
38
+ }>;
39
+
40
+ export type TreeDataNode = FieldDataNode<{
41
+ key: Key;
42
+ label?: React.ReactNode;
43
+ }>;
44
+
45
+ export interface NodeProps extends React.HTMLAttributes<HTMLElement>, CommonProps {
46
+ /**
47
+ * 树节点
48
+ */
49
+ children?: React.ReactNode;
50
+
51
+ /**
52
+ * 节点文本内容
53
+ */
54
+ label?: React.ReactNode;
55
+
56
+ /**
57
+ * 单独设置是否支持选中,覆盖 Tree 的 selectable
58
+ */
59
+ selectable?: boolean;
60
+
61
+ /**
62
+ * 单独设置是否出现复选框,覆盖 Tree 的 checkable
63
+ */
64
+ checkable?: boolean;
65
+
66
+ /**
67
+ * 单独设置是否支持编辑,覆盖 Tree 的 editable
68
+ */
69
+ editable?: boolean;
70
+
71
+ /**
72
+ * 单独设置是否支持拖拽,覆盖 Tree 的 draggable
73
+ */
74
+ draggable?: boolean;
75
+
76
+ /**
77
+ * 是否禁止节点响应
78
+ */
79
+ disabled?: boolean;
80
+
81
+ /**
82
+ * 是否禁止勾选节点复选框
83
+ */
84
+ checkboxDisabled?: boolean;
85
+
86
+ /**
87
+ * 是否是叶子节点,设置loadData时生效
88
+ */
89
+ isLeaf?: boolean;
90
+
91
+ /**
92
+ * 点击文本是否可以勾选
93
+ */
94
+ clickToCheck?: boolean;
95
+ }
96
+
97
+ export class Node extends React.Component<NodeProps, any> {}
98
+ interface HTMLAttributesWeak extends React.HTMLAttributes<HTMLElement> {
99
+ onSelect?: any;
100
+ }
101
+
102
+ export interface TreeProps extends HTMLAttributesWeak, CommonProps {
103
+ /**
104
+ * 树节点
105
+ */
106
+ children?: React.ReactNode;
107
+
108
+ /**
109
+ * 数据源,该属性优先级高于 children
110
+ */
111
+ dataSource?: Array<any>;
112
+
113
+ /**
114
+ * 是否显示树的线
115
+ */
116
+ showLine?: boolean;
117
+
118
+ /**
119
+ * 是否支持选中节点
120
+ */
121
+ selectable?: boolean;
122
+
123
+ /**
124
+ * (用于受控)当前选中节点 key 的数组
125
+ */
126
+ selectedKeys?: Array<any>;
127
+
128
+ /**
129
+ * (用于非受控)默认选中节点 key 的数组
130
+ */
131
+ defaultSelectedKeys?: Array<any>;
132
+
133
+ /**
134
+ * 选中或取消选中节点时触发的回调函数
135
+ */
136
+ onSelect?: (selectedKeys: Array<any>, extra: {}) => void;
137
+
138
+ /**
139
+ * 是否支持多选
140
+ */
141
+ multiple?: boolean;
142
+
143
+ /**
144
+ * 是否支持勾选节点的复选框
145
+ */
146
+ checkable?: boolean;
147
+
148
+ /**
149
+ * (用于受控)当前勾选复选框节点 key 的数组或 `{checked: Array, indeterminate: Array}` 的对象
150
+ */
151
+ checkedKeys?: Array<any> | {};
152
+
153
+ /**
154
+ * (用于非受控)默认勾选复选框节点 key 的数组
155
+ */
156
+ defaultCheckedKeys?: Array<any>;
157
+
158
+ /**
159
+ * 勾选节点复选框是否完全受控(父子节点选中状态不再关联)
160
+ */
161
+ checkStrictly?: boolean;
162
+
163
+ /**
164
+ * 定义选中时回填的方式
165
+ */
166
+ checkedStrategy?: 'all' | 'parent' | 'child';
167
+
168
+ /**
169
+ * 勾选或取消勾选复选框时触发的回调函数
170
+ */
171
+ onCheck?: (checkedKeys: Array<any>, extra: {}) => void;
172
+
173
+ /**
174
+ * (用于受控)当前展开的节点 key 的数组
175
+ */
176
+ expandedKeys?: Array<any>;
177
+
178
+ /**
179
+ * (用于非受控)默认展开的节点 key 的数组
180
+ */
181
+ defaultExpandedKeys?: Array<any>;
182
+
183
+ /**
184
+ * 是否默认展开所有节点
185
+ */
186
+ defaultExpandAll?: boolean;
187
+
188
+ /**
189
+ * 是否自动展开父节点
190
+ */
191
+ autoExpandParent?: boolean;
192
+
193
+ /**
194
+ * 展开或收起节点时触发的回调函数
195
+ * @en Callback function when expanded or collapsed a node
196
+ * @defaultValue () =\> \{\}
197
+ * @param expandedKeys - 展开节点key的数组 - Array of expanded keys
198
+ * @param extra - 额外参数 - Extra parameters
199
+ * @returns 空 - void
200
+ */
201
+ onExpand?: (
202
+ expandedKeys: string[],
203
+ extra: {
204
+ node: NodeInstance;
205
+ expanded: boolean;
206
+ }
207
+ ) => void;
208
+
209
+ /**
210
+ * 是否支持编辑节点内容
211
+ */
212
+ editable?: boolean;
213
+
214
+ /**
215
+ * 编辑节点内容完成时触发的回调函数
216
+ */
217
+ onEditFinish?: (key: string, label: string, node: NodeInstance) => void;
218
+
219
+ /**
220
+ * 是否支持拖拽节点
221
+ */
222
+ draggable?: boolean;
223
+
224
+
225
+ /**
226
+ * 开始拖拽节点时触发的回调函数
227
+ * @en Callback function when drag start
228
+ * @defaultValue () =\> \{\}
229
+ * @param info - 额外参数 - Extra parameters
230
+ * @returns 空 - void
231
+ *
232
+ */
233
+ onDragStart?: (info: {
234
+ event: React.MouseEvent;
235
+ node: NodeInstance;
236
+ expandedKeys: string[];
237
+ }) => void;
238
+
239
+
240
+
241
+ /**
242
+ * 拖拽节点进入目标节点时触发的回调函数
243
+ * @en Callback function when drag enter
244
+ * @defaultValue () =\> \{\}
245
+ * @param info - 额外参数 - Extra parameters
246
+ * @returns 空 - void
247
+ */
248
+ onDragEnter?: (info: {
249
+ event: React.MouseEvent;
250
+ node: NodeInstance;
251
+ expandedKeys: Array<string>;
252
+ }) => void;
253
+
254
+
255
+
256
+ /**
257
+ * 拖拽节点在目标节点上移动的时候触发的回调函数
258
+ * @en Callback function when drag over
259
+ * @defaultValue () =\> \{\}
260
+ * @param info - 额外参数 - Extra parameters
261
+ * @returns 空 - void
262
+ */
263
+ onDragOver?: (info: { event: React.MouseEvent; node: NodeInstance }) => void;
264
+
265
+ /**
266
+ * 拖拽节点离开目标节点时触发的回调函数
267
+ * @en Callback function when drag leave
268
+ * @defaultValue () =\> \{\}
269
+ * @param info - 额外参数 - Extra parameters
270
+ * @returns 空 - void
271
+ */
272
+ onDragLeave?: (info: { event: React.MouseEvent; node: NodeInstance }) => void;
273
+
274
+ /**
275
+ * 拖拽节点拖拽结束时触发的回调函数
276
+ * @en Callback function when drag end
277
+ * @defaultValue () =\> \{\}
278
+ * @param info - 额外参数 - Extra parameters
279
+ * @returns 空 - void
280
+ */
281
+ onDragEnd?: (info: { event: React.MouseEvent; node: NodeInstance }) => void;
282
+ /**
283
+ * 拖拽节点放入目标节点内或前后触发的回调函数
284
+ * @en Callback function when drop
285
+ * @defaultValue () =\> \{\}
286
+ * @param info - 额外参数 - Extra parameters
287
+ * @returns 空 - void
288
+ */
289
+ onDrop?: (info: {
290
+ event: React.MouseEvent;
291
+ node: NodeInstance;
292
+ dragNode: NodeInstance;
293
+ dragNodesKeys: Array<string>;
294
+ dropPosition: number;
295
+ }) => void;
296
+
297
+ /**
298
+ * 节点是否可被作为拖拽的目标节点
299
+ * @en Whether the node can be a target node for drag
300
+ * @defaultValue () =\> \{\}
301
+ * @param info - 额外参数 - Extra parameters
302
+ * @returns 是否可以被当作目标节点 - Whether can be a target node
303
+ */
304
+ canDrop?: (info: {
305
+ event?: React.MouseEvent;
306
+ node: NodeInstance;
307
+ dragNode: NodeInstance;
308
+ dragNodesKeys: Array<string>;
309
+ dropPosition: number;
310
+ }) => boolean;
311
+
312
+ /**
313
+ * 异步加载数据的函数
314
+ * @en Asynchronous load data function
315
+ * @param node - 被点击展开的节点 - Node instance
316
+ */
317
+ loadData?: (node: NodeInstance) => Promise<unknown>;
318
+
319
+ /**
320
+ * 按需筛选高亮节点
321
+ * @en Highlight the node
322
+ * @param node - 待筛选的节点 - Node instance
323
+ * @returns 是否被筛选中 - Whether is filtered
324
+ */
325
+ filterTreeNode?: (node: NodeInstance) => boolean;
326
+
327
+ /**
328
+ * 右键点击节点时触发的回调函数
329
+ * @en Callback function when right click a node
330
+ * @defaultValue () =\> \{\}
331
+ * @param info - 额外参数 - Extra parameters
332
+ * @returns 空 - void
333
+ */
334
+ onRightClick?: (info: { event: React.MouseEvent; node: NodeInstance }) => void;
335
+
336
+ /**
337
+ * 设置节点是否占满剩余空间,一般用于统一在各节点右侧添加元素(借助 flex 实现,暂时只支持 ie10+)
338
+ */
339
+ isLabelBlock?: boolean;
340
+
341
+ /**
342
+ * 设置节点是否占满一行
343
+ */
344
+ isNodeBlock?: boolean | {};
345
+
346
+ /**
347
+ * 是否开启展开收起动画
348
+ */
349
+ animation?: boolean;
350
+
351
+ /**
352
+ * 当前获得焦点的子菜单或菜单项 key 值
353
+ */
354
+ focusedKey?: string;
355
+ /**
356
+ * 渲染子节点
357
+ */
358
+ renderChildNodes?: (nodes: React.ReactNode) => React.ReactNode;
359
+ /**
360
+ * 渲染单个子节点
361
+ */
362
+ labelRender?: (node: {}) => React.ReactNode;
363
+ /**
364
+ * 是否是不可变数据
365
+ */
366
+ immutable?: boolean;
367
+
368
+ /**
369
+ * 是否开启虚拟滚动
370
+ */
371
+ useVirtual?: boolean;
372
+
373
+
374
+ /**
375
+ * focusable
376
+ * @en focusable
377
+ * @skip
378
+ */
379
+ focusable?: string;
380
+
381
+ /**
382
+ * onItemKeyDown
383
+ * @en onItemkeyDown
384
+ * @skip
385
+ */
386
+ onItemKeyDown?: (
387
+ key: string | null | undefined,
388
+ item: NodeInstance,
389
+ e: React.KeyboardEvent
390
+ ) => void;
391
+
392
+ /**
393
+ * onItemFocus
394
+ * @en onItemFocus
395
+ * @skip
396
+ */
397
+ onItemFocus?: (key: string | null | undefined, e: React.KeyboardEvent) => void;
398
+
399
+ /**
400
+ * onBlur
401
+ * @en onBlur
402
+ * @skip
403
+ */
404
+ onBlur?: (e: React.FocusEvent) => void;
405
+
406
+ /**
407
+ * autoFocus
408
+ * @skip
409
+ */
410
+ autoFocus?: boolean;
411
+
412
+ /**
413
+ * className
414
+ * @skip
415
+ */
416
+ className?: string;
417
+ }
418
+
419
+ export default class Tree extends React.Component<TreeProps, any> {
420
+ static Node: typeof Node;
421
+ }
@@ -0,0 +1,251 @@
1
+ /// <reference types="react" />
2
+
3
+ import * as React from 'react';
4
+ import CommonProps from '../util';
5
+ import { PopupProps } from '../overlay';
6
+ import { TreeProps, Node as TreeNode } from '../tree';
7
+ import { item } from '../select';
8
+
9
+ interface HTMLAttributesWeak extends React.HTMLAttributes<HTMLElement> {
10
+ defaultValue?: any;
11
+ onChange?: any;
12
+ }
13
+
14
+ export interface TreeSelectProps extends HTMLAttributesWeak, CommonProps {
15
+ /**
16
+ * 树节点
17
+ */
18
+ children?: React.ReactNode;
19
+
20
+ /**
21
+ * 选择框大小
22
+ */
23
+ size?: 'small' | 'medium' | 'large';
24
+
25
+ /**
26
+ * 选择框占位符
27
+ */
28
+ placeholder?: string;
29
+
30
+ /**
31
+ * 是否禁用
32
+ */
33
+ disabled?: boolean;
34
+
35
+ /**
36
+ * 是否有下拉箭头
37
+ */
38
+ hasArrow?: boolean;
39
+
40
+ /**
41
+ * 是否有边框
42
+ */
43
+ hasBorder?: boolean;
44
+
45
+ /**
46
+ * 是否有清空按钮
47
+ */
48
+ hasClear?: boolean;
49
+
50
+ /**
51
+ * 自定义内联 label
52
+ */
53
+ label?: React.ReactNode;
54
+
55
+ /**
56
+ * 是否只读,只读模式下可以展开弹层但不能选择
57
+ */
58
+ readOnly?: boolean;
59
+
60
+ /**
61
+ * 下拉框是否与选择器对齐
62
+ */
63
+ autoWidth?: boolean;
64
+
65
+ /**
66
+ * 数据源,该属性优先级高于 children
67
+ */
68
+ dataSource?: Array<any>;
69
+
70
+ /**
71
+ * (受控)当前值
72
+ */
73
+ value?: string | object | Array<any>;
74
+
75
+ /**
76
+ * (非受控)默认值
77
+ */
78
+ defaultValue?: string | object | Array<any>;
79
+
80
+ /**
81
+ * value/defaultValue 在 dataSource 中不存在时,是否展示
82
+ */
83
+ preserveNonExistentValue?: boolean;
84
+
85
+ /**
86
+ * 选中值改变时触发的回调函数
87
+ */
88
+ onChange?: (value: string | Array<any>, data: any | Array<any>) => void;
89
+
90
+ /**
91
+ * 是否一行显示,仅在 multiple 和 treeCheckable 为 true 时生效
92
+ */
93
+ tagInline?: boolean;
94
+
95
+ /**
96
+ * 隐藏多余 tag 时显示的内容,在 tagInline 生效时起作用
97
+ * @param {Object[]} selectedValues 当前已选中的元素
98
+ * @param {Object[]} [totalValues] 总待选元素,treeCheckedStrategy = 'parent' 时为 undefined
99
+ */
100
+ maxTagPlaceholder?: (selectedValues: any[], totalValues?: any[]) => React.ReactNode | HTMLElement;
101
+
102
+ /**
103
+ * 是否自动清除 searchValue
104
+ */
105
+ autoClearSearch?: boolean;
106
+
107
+ /**
108
+ * 是否显示搜索框
109
+ */
110
+ showSearch?: boolean;
111
+
112
+ /**
113
+ * 在搜索框中输入时触发的回调函数
114
+ */
115
+ onSearch?: (keyword: string) => void;
116
+ onSearchClear?: (actionType: string) => void;
117
+ /**
118
+ * 无数据时显示内容
119
+ */
120
+ notFoundContent?: React.ReactNode;
121
+
122
+ /**
123
+ * 是否支持多选
124
+ */
125
+ multiple?: boolean;
126
+
127
+ /**
128
+ * 下拉框中的树是否支持勾选节点的复选框
129
+ */
130
+ treeCheckable?: boolean;
131
+
132
+ /**
133
+ * 下拉框中的树勾选节点复选框是否完全受控(父子节点选中状态不再关联)
134
+ */
135
+ treeCheckStrictly?: boolean;
136
+
137
+ /**
138
+ * 定义选中时回填的方式
139
+ */
140
+ treeCheckedStrategy?: 'all' | 'parent' | 'child';
141
+
142
+ /**
143
+ * 下拉框中的树是否默认展开所有节点
144
+ */
145
+ treeDefaultExpandAll?: boolean;
146
+
147
+ /**
148
+ * 下拉框中的树默认展开节点key的数组
149
+ */
150
+ treeDefaultExpandedKeys?: Array<any>;
151
+
152
+ /**
153
+ * 下拉框中的树异步加载数据的函数,使用请参考[Tree的异步加载数据Demo](https://fusion.design/pc/component/basic/tree#%E5%BC%82%E6%AD%A5%E5%8A%A0%E8%BD%BD%E6%95%B0%E6%8D%AE)
154
+ */
155
+ treeLoadData?: (node: React.ReactElement<any>) => void;
156
+
157
+ /**
158
+ * 透传到 Tree 的属性对象
159
+ */
160
+ treeProps?: TreeProps;
161
+
162
+ /**
163
+ * 初始下拉框是否显示
164
+ */
165
+ defaultVisible?: boolean;
166
+
167
+ /**
168
+ * 当前下拉框是否显示
169
+ */
170
+ visible?: boolean;
171
+
172
+ /**
173
+ * 下拉框显示或关闭时触发事件的回调函数
174
+ */
175
+ onVisibleChange?: (visible: boolean, type: string) => void;
176
+
177
+ /**
178
+ * 下拉框自定义样式对象
179
+ */
180
+ popupStyle?: React.CSSProperties;
181
+
182
+ /**
183
+ * 下拉框样式自定义类名
184
+ */
185
+ popupClassName?: string;
186
+
187
+ /**
188
+ * 下拉框挂载的容器节点
189
+ */
190
+ popupContainer?: string | HTMLElement | ((target: HTMLElement) => HTMLElement);
191
+
192
+ /**
193
+ * 透传到 Popup 的属性对象
194
+ */
195
+ popupProps?: PopupProps;
196
+ /**
197
+ * 是否跟随滚动
198
+ */
199
+ followTrigger?: boolean;
200
+
201
+ /**
202
+ * 是否为预览态
203
+ */
204
+ isPreview?: boolean;
205
+
206
+ /**
207
+ * 预览态模式下渲染的内容
208
+ * @param {Array<data>} value 选择值 { label: , value:}
209
+ */
210
+ renderPreview?: (data: string | Array<any>, props: any | Array<any>) => React.ReactNode;
211
+
212
+ /**
213
+ * 是否开启虚拟滚动
214
+ */
215
+ useVirtual?: boolean;
216
+
217
+ /**
218
+ * 是否关闭本地搜索
219
+ */
220
+ filterLocal?: boolean;
221
+
222
+ immutable?: boolean;
223
+
224
+ /**
225
+ * 填充到选择框里的值的 key,默认是 value
226
+ */
227
+ fillProps?: string;
228
+
229
+ /**
230
+ * 点击文本是否可以勾选
231
+ */
232
+ clickToCheck?: boolean;
233
+
234
+ /**
235
+ * 渲染 Select 区域展现内容的方法
236
+ * @param {Object} item 渲染项
237
+ * @param {Object[]} itemPaths 渲染项在dataSource内的路径
238
+ */
239
+ valueRender?: (item: any, itemPaths: item[]) => React.ReactNode;
240
+
241
+ /**
242
+ * onChange 返回的 value 使用 dataSource 的对象
243
+ * @en onChange returns the value using the object in dataSource
244
+ * @skip
245
+ */
246
+ useDetailValue?: boolean;
247
+ }
248
+
249
+ export default class TreeSelect extends React.Component<TreeSelectProps, any> {
250
+ static Node: typeof TreeNode;
251
+ }
@@ -0,0 +1,28 @@
1
+ import { HTMLAttributes, ElementType, Component, ComponentType } from 'react';
2
+ import CommonProps from '../util';
3
+
4
+ export interface TextProps extends HTMLAttributes<HTMLElement>, CommonProps {
5
+ delete?: boolean;
6
+ mark?: boolean;
7
+ underline?: boolean;
8
+ strong?: boolean;
9
+ code?: boolean;
10
+ component?: ElementType;
11
+ }
12
+
13
+ export interface TitleProps extends TextProps {}
14
+
15
+ export interface ParagraphProps extends TextProps {}
16
+
17
+ export interface TypographyProps extends TextProps {}
18
+
19
+ export default class Typography extends Component<TypographyProps, any> {
20
+ static H1: ComponentType<TitleProps>;
21
+ static H2: ComponentType<TitleProps>;
22
+ static H3: ComponentType<TitleProps>;
23
+ static H4: ComponentType<TitleProps>;
24
+ static H5: ComponentType<TitleProps>;
25
+ static H6: ComponentType<TitleProps>;
26
+ static Text: ComponentType<TextProps>;
27
+ static Paragraph: ComponentType<ParagraphProps>;
28
+ }