@sia.soul/sia-react-ui 0.1.20 → 0.1.21

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 (38) hide show
  1. package/dist/Select-4hGJt3RJ.d.cts +142 -0
  2. package/dist/Select-BNSE67xn.d.ts +142 -0
  3. package/dist/chart.d.cts +2498 -0
  4. package/dist/chart.d.ts +2498 -0
  5. package/dist/{chunk-4HB6GC24.js → chunk-3TRRBMXY.js} +37 -8
  6. package/dist/{chunk-3RWL67CK.js → chunk-7RNS52YG.js} +38 -5
  7. package/dist/{chunk-SUMXP2SF.js → chunk-KLI65JVD.js} +12 -4
  8. package/dist/{chunk-I3EF5SF2.js → chunk-RWGSZW32.js} +1 -1
  9. package/dist/{chunk-LO3BUBWU.js → chunk-VN6PIPP7.js} +2 -2
  10. package/dist/{core-CdoVqv0o.d.ts → core-C5OnrCi4.d.cts} +1207 -3
  11. package/dist/{core-CM79w-7A.d.cts → core-DeZknKwc.d.ts} +1207 -3
  12. package/dist/core.cjs +77 -13
  13. package/dist/core.css +18 -1
  14. package/dist/core.d.cts +3 -3
  15. package/dist/core.d.ts +3 -3
  16. package/dist/core.js +3 -3
  17. package/dist/index.cjs +128 -21
  18. package/dist/index.css +18 -1
  19. package/dist/index.d.cts +1696 -7
  20. package/dist/index.d.ts +1696 -7
  21. package/dist/index.js +50 -13
  22. package/dist/markdown-editor.d.cts +41 -1
  23. package/dist/markdown-editor.d.ts +41 -1
  24. package/dist/rich-text-editor.cjs +11 -3
  25. package/dist/rich-text-editor.d.cts +46 -1
  26. package/dist/rich-text-editor.d.ts +46 -1
  27. package/dist/rich-text-editor.js +2 -2
  28. package/dist/{select-date-range-4tEYkA5O.d.cts → select-date-range-CGRb3-W8.d.ts} +116 -2
  29. package/dist/{select-date-range-D-ynrB5k.d.ts → select-date-range-DDmYGDD4.d.cts} +116 -2
  30. package/dist/select-date-range.cjs +36 -7
  31. package/dist/select-date-range.d.cts +3 -3
  32. package/dist/select-date-range.d.ts +3 -3
  33. package/dist/select-date-range.js +3 -3
  34. package/dist/{shared-DAYZvZVu.d.cts → shared-Bx4B28Wh.d.cts} +3 -0
  35. package/dist/{shared-DAYZvZVu.d.ts → shared-Bx4B28Wh.d.ts} +3 -0
  36. package/package.json +1 -1
  37. package/dist/Select-Cz3hzQl_.d.ts +0 -57
  38. package/dist/Select-Da9CLN0X.d.cts +0 -57
package/dist/index.d.ts CHANGED
@@ -1,921 +1,2088 @@
1
1
  import * as react from 'react';
2
2
  import { HTMLAttributes, ReactNode, CSSProperties, ElementType, FormHTMLAttributes, InputHTMLAttributes, ChangeEvent, TextareaHTMLAttributes, MouseEvent, Key, PointerEvent, Ref, ReactElement, ButtonHTMLAttributes, RefObject } from 'react';
3
- import { O as OverlayContainer, a as OverlayApiHandle, M as ModalOpenConfig, b as ModalActionResult, B as ButtonProps, T as TagStatus, c as ButtonSize, d as BadgeProps } from './core-CdoVqv0o.js';
4
- export { e as Badge, f as BadgeRibbonProps, g as BadgeStatus, h as Breadcrumb, i as BreadcrumbItem, j as BreadcrumbProps, k as Button, l as ButtonVariant, C as Calendar, m as CalendarProps, n as Card, o as CardAccent, p as CardProps, q as Carousel, r as CarouselProps, s as CarouselRef, t as Collapse, u as CollapseItem, v as CollapseKey, w as CollapseProps, D as Dropdown, x as DropdownButtonProps, y as DropdownMenuProps, z as DropdownOpenSource, A as DropdownPlacement, E as DropdownProps, F as DropdownTrigger, G as FILLED_ICON_NAMES, H as FilledIconName, I as FloatButton, J as FloatButtonBackTopProps, K as FloatButtonGroupProps, L as FloatButtonProps, N as FloatButtonShape, P as FloatingPlacement, Q as FloatingTrigger, R as ICON_NAMES, S as Icon, U as IconName, V as IconProps, W as IconVariant, X as Image, Y as ImagePreview, Z as ImagePreviewConfig, _ as ImagePreviewProps, $ as ImageProps, a0 as Input, a1 as InputProps, a2 as Menu, a3 as MenuClickInfo, a4 as MenuItem, a5 as MenuMode, a6 as MenuProps, a7 as MenuTheme, a8 as MessageConfig, a9 as MessageHandle, aa as MessageKey, ab as MessageType, ac as Modal, ad as ModalProps, ae as ModalType, af as NotificationConfig, ag as NotificationPlacement, ah as NotificationType, ai as Popconfirm, aj as PopconfirmProps, ak as Popover, al as PopoverProps, am as Progress, an as ProgressProps, ao as ProgressStatus, ap as Rate, aq as RateProps, ar as Segmented, as as SegmentedOption, at as SegmentedProps, au as SegmentedValue, av as Spin, aw as SpinProps, ax as StepItem, ay as StepStatus, az as Steps, aA as StepsProps, aB as TabItem, aC as Tabs, aD as TabsContextMenuClickInfo, aE as TabsOrientation, aF as TabsPosition, aG as TabsProps, aH as TabsType, aI as Tag, aJ as TagProps, aK as TagVariant, aL as Timeline, aM as TimelineItem, aN as TimelineProps, aO as Tooltip, aP as TooltipProps, aQ as Tour, aR as TourProps, aS as TourStep, aT as Tree, aU as TreeDropPosition, aV as TreeKey, aW as TreeNode, aX as TreeProps, aY as Typography, aZ as TypographyLinkProps, a_ as TypographyProps, a$ as TypographyTitleProps, b0 as TypographyType, b1 as Upload, b2 as UploadChangeInfo, b3 as UploadDraggerProps, b4 as UploadFile, b5 as UploadFileStatus, b6 as UploadProps, b7 as UploadRequestOptions, b8 as Watermark, b9 as WatermarkFont, ba as WatermarkProps, bb as message, bc as notification } from './core-CdoVqv0o.js';
5
- import { C as ControlSize, I as InputPlaceholderMode, a as ControlStatus } from './shared-DAYZvZVu.js';
6
- export { D as DatePicker, a as DatePickerDisabledInfo, b as DatePickerPreset, c as DatePickerProps, d as DatePickerShowTime, e as DatePickerType, f as DatePickerValue, g as DateRangePickerPreset, h as DateRangePickerProps, S as SelectDateRange, i as SelectDateRangeProps, j as SelectDateRangeValue } from './select-date-range-D-ynrB5k.js';
3
+ import { O as OverlayContainer, a as OverlayApiHandle, M as ModalOpenConfig, b as ModalActionResult, B as ButtonProps, T as TagStatus, c as ButtonSize, d as BadgeProps } from './core-DeZknKwc.js';
4
+ export { e as Badge, f as BadgeRibbonProps, g as BadgeStatus, h as Breadcrumb, i as BreadcrumbItem, j as BreadcrumbProps, k as Button, l as ButtonVariant, C as Calendar, m as CalendarProps, n as Card, o as CardAccent, p as CardProps, q as Carousel, r as CarouselProps, s as CarouselRef, t as Collapse, u as CollapseItem, v as CollapseKey, w as CollapseProps, D as Dropdown, x as DropdownButtonProps, y as DropdownMenuProps, z as DropdownOpenSource, A as DropdownPlacement, E as DropdownProps, F as DropdownTrigger, G as FILLED_ICON_NAMES, H as FilledIconName, I as FloatButton, J as FloatButtonBackTopProps, K as FloatButtonGroupProps, L as FloatButtonProps, N as FloatButtonShape, P as FloatingPlacement, Q as FloatingTrigger, R as ICON_NAMES, S as Icon, U as IconName, V as IconProps, W as IconVariant, X as Image, Y as ImagePreview, Z as ImagePreviewConfig, _ as ImagePreviewProps, $ as ImageProps, a0 as Input, a1 as InputProps, a2 as Menu, a3 as MenuClickInfo, a4 as MenuItem, a5 as MenuMode, a6 as MenuProps, a7 as MenuTheme, a8 as MessageConfig, a9 as MessageHandle, aa as MessageKey, ab as MessageType, ac as Modal, ad as ModalProps, ae as ModalType, af as NotificationConfig, ag as NotificationPlacement, ah as NotificationType, ai as Popconfirm, aj as PopconfirmProps, ak as Popover, al as PopoverProps, am as Progress, an as ProgressProps, ao as ProgressStatus, ap as Rate, aq as RateProps, ar as Segmented, as as SegmentedOption, at as SegmentedProps, au as SegmentedValue, av as Spin, aw as SpinProps, ax as StepItem, ay as StepStatus, az as Steps, aA as StepsProps, aB as TabItem, aC as Tabs, aD as TabsContextMenuClickInfo, aE as TabsOrientation, aF as TabsPosition, aG as TabsProps, aH as TabsType, aI as Tag, aJ as TagProps, aK as TagVariant, aL as Timeline, aM as TimelineItem, aN as TimelineProps, aO as Tooltip, aP as TooltipProps, aQ as Tour, aR as TourProps, aS as TourStep, aT as Tree, aU as TreeDropPosition, aV as TreeKey, aW as TreeNode, aX as TreeProps, aY as Typography, aZ as TypographyLinkProps, a_ as TypographyProps, a$ as TypographyTitleProps, b0 as TypographyType, b1 as Upload, b2 as UploadChangeInfo, b3 as UploadDraggerProps, b4 as UploadFile, b5 as UploadFileStatus, b6 as UploadProps, b7 as UploadRequestOptions, b8 as Watermark, b9 as WatermarkFont, ba as WatermarkProps, bb as message, bc as notification } from './core-DeZknKwc.js';
5
+ import { C as ControlSize, I as InputPlaceholderMode, a as ControlStatus } from './shared-Bx4B28Wh.js';
6
+ export { D as DatePicker, a as DatePickerDisabledInfo, b as DatePickerPreset, c as DatePickerProps, d as DatePickerShowTime, e as DatePickerType, f as DatePickerValue, g as DateRangePickerPreset, h as DateRangePickerProps, S as SelectDateRange, i as SelectDateRangeProps, j as SelectDateRangeValue } from './select-date-range-CGRb3-W8.js';
7
7
  export { RichTextContent, RichTextContentFormat, RichTextContentProps, RichTextEditor, RichTextEditorProps, RichTextImagePasteHandler, RichTextToolbar } from './rich-text-editor.js';
8
8
  export { MarkdownEditor, MarkdownEditorMode, MarkdownEditorProps } from './markdown-editor.js';
9
9
  import * as Monaco from 'monaco-editor';
10
- import { S as SelectOption, a as SelectChangeValue, b as SelectProps } from './Select-Cz3hzQl_.js';
11
- export { c as Select, d as SelectMode, e as SelectValue } from './Select-Cz3hzQl_.js';
10
+ import { S as SelectOption, a as SelectChangeValue, b as SelectProps } from './Select-BNSE67xn.js';
11
+ export { c as Select, d as SelectMode, e as SelectValue } from './Select-BNSE67xn.js';
12
12
  export { BaiduMapHostOptions, BaiduMapInstance, BaiduMapNamespace, BaiduMapPoint, BarChart, BarChartProps, BarDatum, BarSeries, CHART_VIEWBOX_HEIGHT, CHART_VIEWBOX_WIDTH, CandlestickChart, CandlestickChartProps, CandlestickDatum, CartesianChartProps, ChartAxis, ChartAxisProps, ChartComposite, ChartCompositeLayer, ChartCompositeProps, ChartCompositeRef, ChartDataClickInfo, ChartDataEditor, ChartDataEditorProps, ChartDataZoom, ChartDataZoomProps, ChartLegend, ChartLegendItem, ChartLegendProps, ChartMapOverlay, ChartMapOverlayProps, ChartMark, ChartMarkProps, ChartRoamController, ChartRoamControllerProps, ChartSeries, ChartTimeline, ChartTimelineProps, ChartToolbox, ChartToolboxFeature, ChartToolboxOptions, ChartToolboxProps, ChartTooltip, ChartTooltipProps, ChartValueAddress, ChartValueChannel, ChartValueIsland, ChartValueIslandProps, ChartValueTransferHandler, ChartVisualMap, ChartVisualMapProps, ChartWhirlingLoading, ChartWhirlingLoadingProps, ChordChart, ChordChartProps, ChordLink, ChordNode, DEFAULT_CHART_PALETTE, EventRiverChart, EventRiverChartProps, EventRiverEvent, EventRiverEvolution, EventRiverSeries, ForceChart, ForceGraphChart, FunnelChart, FunnelChartProps, FunnelDatum, FunnelSeries, GaugeChart, GaugeChartProps, GaugeDatum, GeoJsonFeature, GeoJsonFeatureCollection, GeoJsonMultiPolygonGeometry, GeoJsonPolygonGeometry, GraphChart, GraphChartProps, GraphLink, GraphNode, HeatmapChart, HeatmapChartProps, HeatmapPoint, KLineChart, LineChart, LineChartProps, LinePoint, LineSeries, LineShareChart, LineShareChartProps, MapChart, MapChartProps, MapDatum, MapMarkLine, MapMarkPoint, MapOverlayEvent, MapOverlayHost, MapOverlaySnapshot, MixedChart, MixedChartProps, MixedSeries, PieChart, PieChartProps, PieDatum, PieSeries, RadarChart, RadarChartProps, RadarIndicator, RadarPanel, RadarSeries, ScatterChart, ScatterChartProps, ScatterDatum, ScatterVisualMap, SiaChart, SiaChartProps, SiaChartRef, SvgMapPlot, SvgMapPlotProps, ThemeRiverChart, ThemeRiverChartProps, ThemeRiverSeries, TreeChart, TreeChartProps, TreeDatum, TreemapChart, TreemapChartProps, TreemapDatum, TreemapItemStyle, VennChart, VennChartProps, VennIntersection, VennSet, WordCloudChart, WordCloudChartProps, WordCloudDatum, XYChart, XYChartProps, XYSeries, chartColor, chartTicks, createBaiduMapHost, formatChartNumber, getChartMap, linearScale, niceChartDomain, paddedValueExtent, registerChartMap, saveCompositeImage, serializeChartStack, smoothSvgPath, svgArcPath, transferCompositeValue } from './chart.js';
13
13
  import 'vditor';
14
14
 
15
+ /** 警告提示的状态类型。 */
15
16
  type AlertStatus = "info" | "success" | "warning" | "error";
17
+ /** 警告提示的属性配置。 */
16
18
  interface AlertProps extends Omit<HTMLAttributes<HTMLDivElement>, "title"> {
19
+ /** 当前状态,用于选择对应的状态样式。 */
17
20
  status?: AlertStatus;
21
+ /** 类型标识,用于选择对应的表现形式。 */
18
22
  type?: AlertStatus;
23
+ /** 标题内容,可传入文本或 React 节点。 */
19
24
  title?: ReactNode;
25
+ /** 提示或错误消息文本。 */
20
26
  message?: ReactNode;
27
+ /** 补充说明内容。 */
21
28
  description?: ReactNode;
29
+ /** 警告内容旁的业务操作节点。 */
22
30
  action?: ReactNode;
31
+ /**
32
+ * 是否显示状态图标。
33
+ * @defaultValue false
34
+ */
23
35
  showIcon?: boolean;
36
+ /**
37
+ * 是否显示关闭入口。
38
+ * @defaultValue false
39
+ */
24
40
  closable?: boolean;
41
+ /** 自定义关闭图标。 */
25
42
  closeIcon?: ReactNode;
43
+ /**
44
+ * 是否以通栏横幅形式显示。
45
+ * @defaultValue false
46
+ */
26
47
  banner?: boolean;
48
+ /** 请求关闭时触发的回调。 */
27
49
  onClose?: (event: React.MouseEvent<HTMLButtonElement>) => void;
50
+ /** 关闭完成后调用。 */
28
51
  afterClose?: () => void;
29
52
  }
53
+ /** 警告提示组件。 */
30
54
  declare function Alert({ status, type, title, message, description, action, showIcon, closable, closeIcon, banner, onClose, afterClose, className, ...props }: AlertProps): react.JSX.Element | null;
31
55
 
56
+ /** 分页器默认提供的每页记录数选项。 */
32
57
  declare const DEFAULT_PAGE_SIZE_OPTIONS: readonly [10, 25, 50, 100, 200, 500, 1000, 2000, 5000];
58
+ /** 分页的属性配置。 */
33
59
  interface PaginationProps extends Omit<HTMLAttributes<HTMLElement>, "onChange"> {
60
+ /** 组件尺寸;用于调整控件高度、字号和间距。 */
34
61
  size?: ControlSize;
62
+ /**
63
+ * 数据总数
64
+ * @defaultValue 0
65
+ */
35
66
  total?: number;
67
+ /** 当前页实际条数;未提供时根据总数、页码和每页条数计算。 */
68
+ currentPageCount?: number;
69
+ /** 当前页码,从 1 开始;传入后由外部控制。 */
36
70
  current?: number;
71
+ /**
72
+ * 非受控模式的初始页码或步骤位置。
73
+ * @defaultValue 1
74
+ */
37
75
  defaultCurrent?: number;
76
+ /** 每页显示的记录数。 */
38
77
  pageSize?: number;
78
+ /**
79
+ * 非受控模式下每页默认展示的记录数。
80
+ * @defaultValue 25
81
+ */
39
82
  defaultPageSize?: number;
83
+ /**
84
+ * 每页条数候选项
85
+ * @defaultValue DEFAULT_PAGE_SIZE_OPTIONS
86
+ */
40
87
  pageSizeOptions?: readonly number[];
88
+ /**
89
+ * 是否显示每页条数切换控件。
90
+ * @defaultValue true
91
+ */
41
92
  showSizeChanger?: boolean;
93
+ /**
94
+ * 是否显示总数,或自定义总数文本的函数。
95
+ * @defaultValue true
96
+ */
42
97
  showTotal?: boolean | ((total: number, range: [number, number]) => ReactNode);
98
+ /**
99
+ * 是否禁用交互。
100
+ * @defaultValue false
101
+ */
43
102
  disabled?: boolean;
103
+ /**
104
+ * 只有一页数据时是否隐藏分页器。
105
+ * @defaultValue false
106
+ */
44
107
  hideOnSinglePage?: boolean;
108
+ /** 是否正在刷新总数。 */
45
109
  refreshing?: boolean;
110
+ /** 请求刷新总数时调用。 */
46
111
  onRefreshTotal?: () => void | Promise<void>;
112
+ /** 值发生变化时调用;参数为新值及类型声明中列出的关联信息。 */
47
113
  onChange?: (page: number, pageSize: number) => void;
114
+ /** 每页条数变化时调用,参数为页码及新的每页条数。 */
48
115
  onShowSizeChange?: (current: number, pageSize: number) => void;
49
116
  }
50
- declare function Pagination({ size: sizeProp, total, current, defaultCurrent, pageSize, defaultPageSize, pageSizeOptions, showSizeChanger, showTotal, disabled, hideOnSinglePage, refreshing, onRefreshTotal, onChange, onShowSizeChange, className, ...props }: PaginationProps): react.JSX.Element | null;
117
+ /** 分页组件。 */
118
+ declare function Pagination({ size: sizeProp, total, currentPageCount, current, defaultCurrent, pageSize, defaultPageSize, pageSizeOptions, showSizeChanger, showTotal, disabled, hideOnSinglePage, refreshing, onRefreshTotal, onChange, onShowSizeChange, className, ...props }: PaginationProps): react.JSX.Element | null;
51
119
 
120
+ /** 级联选择的值类型。 */
52
121
  type CascaderValue = string | number;
122
+ /** 级联选择的候选项定义。 */
53
123
  interface CascaderOption {
124
+ /** 该项目对应的数据值,用于标识、选择或计算。 */
54
125
  value: CascaderValue;
126
+ /** 展示给用户的名称,可传入文本或 React 节点。 */
55
127
  label?: ReactNode;
128
+ /** 是否禁用交互。 */
56
129
  disabled?: boolean;
130
+ /** 是否为叶子节点;异步加载场景可用于标识无子项节点。 */
57
131
  isLeaf?: boolean;
132
+ /** 子内容;组件嵌套内容或当前节点的子项。 */
58
133
  children?: readonly CascaderOption[];
59
134
  [key: string]: unknown;
60
135
  }
136
+ /** 级联数据中 label、value 和 children 的字段映射。 */
61
137
  interface CascaderFieldNames {
138
+ /** 展示给用户的名称,可传入文本或 React 节点。 */
62
139
  label?: string;
140
+ /** 该项目对应的数据值,用于标识、选择或计算。 */
63
141
  value?: string;
142
+ /** 子内容;组件嵌套内容或当前节点的子项。 */
64
143
  children?: string;
65
144
  }
145
+ /** 级联选择的属性配置。 */
66
146
  interface CascaderProps extends Omit<HTMLAttributes<HTMLDivElement>, "defaultValue" | "onChange"> {
147
+ /** small / medium / large 高度为 22 / 30 / 38px;默认继承 Form,组件自身 size 优先 */
67
148
  size?: ControlSize;
149
+ /** 级联选项树 */
68
150
  options: readonly CascaderOption[];
151
+ /** 当前值;作为受控属性时,需要在变更回调中同步更新。 */
69
152
  value?: readonly CascaderValue[] | readonly (readonly CascaderValue[])[];
153
+ /** 非受控模式的初始值,仅在初始化时使用。 */
70
154
  defaultValue?: readonly CascaderValue[] | readonly (readonly CascaderValue[])[];
155
+ /**
156
+ 是否允许同时选择多个项目。
157
+ * @defaultValue false
158
+ */
71
159
  multiple?: boolean;
160
+ /**
161
+ 是否显示搜索输入框。
162
+ * @defaultValue false
163
+ */
72
164
  showSearch?: boolean;
165
+ /**
166
+ 是否允许清空当前选择或输入值。
167
+ * @defaultValue false
168
+ */
73
169
  allowClear?: boolean;
170
+ /**
171
+ * 是否在选中任意层级节点时立即提交值。
172
+ * @defaultValue false
173
+ */
74
174
  changeOnSelect?: boolean;
175
+ /**
176
+ * 子级面板的展开方式。
177
+ * @defaultValue "click"
178
+ */
75
179
  expandTrigger?: "click" | "hover";
180
+ /**
181
+ * 未填写或未选择时的提示内容。
182
+ * @defaultValue "请选择"
183
+ */
76
184
  placeholder?: ReactNode;
185
+ /** 占位提示的显示模式;floating 为浮动标签。 */
77
186
  placeholderMode?: InputPlaceholderMode;
187
+ /**
188
+ * 是否禁用交互。
189
+ * @defaultValue false
190
+ */
78
191
  disabled?: boolean;
192
+ /** 数据字段名映射,用于适配业务数据结构。 */
79
193
  fieldNames?: CascaderFieldNames;
194
+ /** 自定义已选结果的显示内容。 */
80
195
  displayRender?: (labels: ReactNode[], selectedOptions: CascaderOption[]) => ReactNode;
196
+ /** 按当前节点异步加载子节点的函数。 */
81
197
  loadData?: (selectedOptions: CascaderOption[]) => void | Promise<void>;
198
+ /** 值发生变化时调用;参数为新值及类型声明中列出的关联信息。 */
82
199
  onChange?: (value: readonly CascaderValue[] | readonly (readonly CascaderValue[])[] | undefined, selectedOptions: CascaderOption[] | CascaderOption[][]) => void;
83
200
  }
201
+ /** 级联选择组件。 */
84
202
  declare function Cascader({ options, value, defaultValue, size: sizeProp, multiple, showSearch, allowClear, changeOnSelect, expandTrigger, placeholder, placeholderMode, disabled, fieldNames, displayRender, loadData, onChange, className, ...props }: CascaderProps): react.JSX.Element;
85
203
 
204
+ /** 布局间距,可使用预设等级或数值。 */
86
205
  type LayoutGap = "small" | "medium" | "large" | number | string;
206
+ /** 弹性布局交叉轴上的对齐方式。 */
87
207
  type FlexAlign = "normal" | "start" | "center" | "end" | "stretch" | "baseline";
208
+ /** 弹性布局主轴上的内容分布方式。 */
88
209
  type FlexJustify = "normal" | "start" | "center" | "end" | "space-between" | "space-around" | "space-evenly";
210
+ /** 弹性布局的属性配置。 */
89
211
  interface FlexProps extends HTMLAttributes<HTMLElement> {
212
+ /**
213
+ * 是否使用垂直布局。
214
+ * @defaultValue false
215
+ */
90
216
  vertical?: boolean;
217
+ /** 组件的水平或垂直排列方向。 */
91
218
  orientation?: "horizontal" | "vertical";
219
+ /**
220
+ * 是否允许换行
221
+ * @defaultValue false
222
+ */
92
223
  wrap?: boolean | CSSProperties["flexWrap"];
224
+ /** 主轴对齐 */
93
225
  justify?: FlexJustify;
226
+ /** 交叉轴对齐 */
94
227
  align?: FlexAlign;
228
+ /** 预设或自定义间距 */
95
229
  gap?: LayoutGap;
230
+ /** 弹性布局的伸缩权重或 CSS flex 配置。 */
96
231
  flex?: CSSProperties["flex"];
232
+ /**
233
+ * 用作容器的元素或组件类型。
234
+ * @defaultValue "div"
235
+ */
97
236
  component?: ElementType;
98
237
  }
238
+ /** 弹性布局组件。 */
99
239
  declare function Flex({ vertical, orientation, wrap, justify, align, gap, flex, component: Component, className, style, ...props }: FlexProps): react.JSX.Element;
240
+ /** 间距布局的属性配置。 */
100
241
  interface SpaceProps extends HTMLAttributes<HTMLDivElement> {
242
+ /**
243
+ 排列或展示方向。
244
+ * @defaultValue "horizontal"
245
+ */
101
246
  direction?: "horizontal" | "vertical";
247
+ /**
248
+ * 组件尺寸;用于调整控件高度、字号和间距。
249
+ * @defaultValue "medium"
250
+ */
102
251
  size?: LayoutGap | readonly [LayoutGap, LayoutGap];
252
+ /**
253
+ * 交叉轴对齐
254
+ * @defaultValue "center"
255
+ */
103
256
  align?: "start" | "center" | "end" | "baseline";
257
+ /**
258
+ * 是否允许换行
259
+ * @defaultValue false
260
+ */
104
261
  wrap?: boolean;
262
+ /** 相邻元素之间的分隔内容 */
105
263
  split?: ReactNode;
106
264
  }
265
+ /** SpaceCompact的属性配置。 */
107
266
  interface SpaceCompactProps extends HTMLAttributes<HTMLDivElement> {
267
+ /**
268
+ 排列或展示方向。
269
+ * @defaultValue "horizontal"
270
+ */
108
271
  direction?: "horizontal" | "vertical";
272
+ /**
273
+ * 宽度撑满父容器
274
+ * @defaultValue false
275
+ */
109
276
  block?: boolean;
110
277
  }
111
278
  declare function SpaceCompact({ direction, block, className, ...props }: SpaceCompactProps): react.JSX.Element;
112
279
  declare function SpaceRoot({ direction, size, align, wrap, split, className, style, children, ...props }: SpaceProps): react.JSX.Element;
280
+ /** 间距布局组件。 */
113
281
  declare const Space: typeof SpaceRoot & {
282
+ /** 紧凑布局容器,将相邻控件组合为连续的按钮或输入组。 */
114
283
  Compact: typeof SpaceCompact;
115
284
  };
285
+ /** 分隔线的属性配置。 */
116
286
  interface DividerProps extends HTMLAttributes<HTMLDivElement> {
287
+ /**
288
+ 组件的水平或垂直排列方向。
289
+ * @defaultValue "horizontal"
290
+ */
117
291
  orientation?: "horizontal" | "vertical";
292
+ /**
293
+ 组件的视觉样式。
294
+ * @defaultValue "solid"
295
+ */
118
296
  variant?: "solid" | "dashed" | "dotted";
297
+ /**
298
+ * 文字在横向分割线中的位置
299
+ * @defaultValue "center"
300
+ */
119
301
  textAlign?: "start" | "center" | "end";
302
+ /**
303
+ * 使用普通字重
304
+ * @defaultValue false
305
+ */
120
306
  plain?: boolean;
307
+ /** 分割线文字 */
121
308
  children?: ReactNode;
122
309
  }
310
+ /** 分隔线组件。 */
123
311
  declare function Divider({ orientation, variant, textAlign, plain, children, className, ...props }: DividerProps): react.JSX.Element;
312
+ /** 响应式栅格的断点名称。 */
124
313
  type GridBreakpoint = "xs" | "sm" | "md" | "lg" | "xl" | "xxl";
314
+ /** 按照屏幕断点分别提供的配置值。 */
125
315
  type GridResponsive<T> = T | Partial<Record<GridBreakpoint, T>>;
316
+ /** 栅格行的属性配置。 */
126
317
  interface RowProps extends HTMLAttributes<HTMLDivElement> {
318
+ /**
319
+ * 栅格行列间距。
320
+ * @defaultValue 0
321
+ */
127
322
  gutter?: LayoutGap | readonly [LayoutGap, LayoutGap];
323
+ /** 交叉轴对齐 */
128
324
  align?: GridResponsive<"top" | "middle" | "bottom" | "stretch">;
325
+ /** 主轴对齐 */
129
326
  justify?: GridResponsive<"start" | "end" | "center" | "space-around" | "space-between" | "space-evenly">;
327
+ /**
328
+ * 是否允许换行
329
+ * @defaultValue true
330
+ */
130
331
  wrap?: boolean;
131
332
  }
333
+ /** 栅格行组件。 */
132
334
  declare function Row({ gutter, align, justify, wrap, className, style, ...props }: RowProps): react.JSX.Element;
335
+ /** 一个断点下的栅格列宽、偏移和排序配置。 */
133
336
  interface ColSize {
337
+ /** 占据的网格列数。 */
134
338
  span?: number;
339
+ /** 相对于默认位置的偏移。 */
135
340
  offset?: number;
341
+ /** 排序位置或排序方向。 */
136
342
  order?: number;
343
+ /** 推移距离或栅格偏移配置。 */
137
344
  push?: number;
345
+ /** 栅格列向左移动的列数。 */
138
346
  pull?: number;
139
347
  }
348
+ /** 栅格列的属性配置。 */
140
349
  interface ColProps extends HTMLAttributes<HTMLDivElement>, ColSize {
350
+ /** 弹性布局的伸缩权重或 CSS flex 配置。 */
141
351
  flex?: number | string;
352
+ /** 超小屏断点下的布局配置。 */
142
353
  xs?: number | ColSize;
354
+ /** 小屏断点下的布局配置。 */
143
355
  sm?: number | ColSize;
356
+ /** 中屏断点下的布局配置。 */
144
357
  md?: number | ColSize;
358
+ /** 大屏断点下的布局配置。 */
145
359
  lg?: number | ColSize;
360
+ /** 超大屏断点下的布局配置。 */
146
361
  xl?: number | ColSize;
362
+ /** 特大屏断点下的布局配置。 */
147
363
  xxl?: number | ColSize;
148
364
  }
365
+ /** 栅格列组件。 */
149
366
  declare function Col({ span, offset, order, push, pull, flex, xs, sm, md, lg, xl, xxl, className, style, ...props }: ColProps): react.JSX.Element;
150
367
 
368
+ /** SplitterPanel的属性配置。 */
151
369
  interface SplitterPanelProps extends HTMLAttributes<HTMLDivElement> {
370
+ /** 非受控模式下的初始尺寸。 */
152
371
  defaultSize?: number;
372
+ /** 非受控模式的初始收起状态。 */
153
373
  defaultCollapsed?: boolean;
374
+ /** 允许的最小值。 */
154
375
  min?: number;
376
+ /** 允许的最大值。 */
155
377
  max?: number;
378
+ /** 允许收起内容区域 */
156
379
  collapsible?: boolean;
380
+ /** 面板收起后的尺寸。 */
157
381
  collapsedSize?: number;
382
+ /** 面板收起时显示的内容。 */
158
383
  collapsedContent?: ReactNode;
384
+ /** 收起状态操作按钮的无障碍名称。 */
159
385
  collapsedAriaLabel?: string;
386
+ /** 是否允许通过拖拽调整尺寸。 */
160
387
  resizable?: boolean;
388
+ /** 子内容;组件嵌套内容或当前节点的子项。 */
161
389
  children?: ReactNode;
162
390
  }
391
+ /** 可拖拽分割面板的属性配置。 */
163
392
  interface SplitterProps extends Omit<HTMLAttributes<HTMLDivElement>, "onResize"> {
393
+ /**
394
+ 组件的水平或垂直排列方向。
395
+ * @defaultValue "horizontal"
396
+ */
164
397
  orientation?: "horizontal" | "vertical";
398
+ /** 拖拽调整过程中持续触发 */
165
399
  onResize?: (sizes: readonly number[]) => void;
400
+ /** 鼠标或键盘调整结束时触发 */
166
401
  onResizeEnd?: (sizes: readonly number[]) => void;
167
402
  }
168
403
  declare function SplitterPanel({ defaultSize: _defaultSize, defaultCollapsed: _defaultCollapsed, min: _min, max: _max, collapsible: _collapsible, collapsedSize: _collapsedSize, collapsedContent: _collapsedContent, collapsedAriaLabel: _collapsedAriaLabel, resizable: _resizable, className, ...props }: SplitterPanelProps): react.JSX.Element;
169
404
  declare function SplitterRoot({ orientation, onResize, onResizeEnd, className, children, ...props }: SplitterProps): react.JSX.Element;
405
+ /** 可拖拽分割面板组件。 */
170
406
  declare const Splitter: typeof SplitterRoot & {
407
+ /** Splitter 中的可调整大小面板。 */
171
408
  Panel: typeof SplitterPanel;
172
409
  };
173
410
 
411
+ /** 工具面板的位置类型。 */
174
412
  type ToolPanelPlacement = "left" | "right";
413
+ /** 工具面板的项目定义。 */
175
414
  interface ToolPanelItem {
415
+ /** 唯一标识;同一集合内应保持唯一且稳定,用于定位、渲染和状态关联。 */
176
416
  key: string;
417
+ /** 标题内容,可传入文本或 React 节点。 */
177
418
  title: ReactNode;
419
+ /** 显示在内容旁的图标节点,建议使用 Icon 组件。 */
178
420
  icon?: ReactNode;
421
+ /** 子内容;组件嵌套内容或当前节点的子项。 */
179
422
  children: ReactNode;
423
+ /** 是否禁用交互。 */
180
424
  disabled?: boolean;
181
425
  }
426
+ /** 工具面板的属性配置。 */
182
427
  interface ToolPanelProps extends Omit<HTMLAttributes<HTMLDivElement>, "title" | "onResize"> {
428
+ /** 标题内容,可传入文本或 React 节点。 */
183
429
  title?: ReactNode;
430
+ /** 显示在内容旁的图标节点,建议使用 Icon 组件。 */
184
431
  icon?: ReactNode;
432
+ /** 多面板配置;提供后优先于 title、icon 和 children。切换保留内容状态,共享面板宽度 */
185
433
  items?: readonly ToolPanelItem[];
434
+ /** 当前激活项目的标识;传入后由外部控制。 */
186
435
  activeKey?: string;
436
+ /** 非受控模式下初始激活的项目标识。 */
187
437
  defaultActiveKey?: string;
438
+ /** 切换面板时触发;再次点击当前入口仅切换展开状态 */
188
439
  onActiveKeyChange?: (key: string) => void;
440
+ /**
441
+ * 工具面板位于工作区左侧或右侧
442
+ * @defaultValue "left"
443
+ */
189
444
  placement?: ToolPanelPlacement;
445
+ /** 是否打开;传入后由外部控制显示状态。 */
190
446
  open?: boolean;
447
+ /**
448
+ * 非受控模式下的初始打开状态。
449
+ * @defaultValue true
450
+ */
191
451
  defaultOpen?: boolean;
452
+ /**
453
+ 非受控模式下的初始尺寸。
454
+ * @defaultValue 320
455
+ */
192
456
  defaultSize?: number;
457
+ /**
458
+ * 允许的最小尺寸。
459
+ * @defaultValue 220
460
+ */
193
461
  minSize?: number;
462
+ /**
463
+ * 允许的最大尺寸。
464
+ * @defaultValue 640
465
+ */
194
466
  maxSize?: number;
467
+ /** 活动栏切换展开状态时触发 */
195
468
  onOpenChange?: (open: boolean) => void;
469
+ /** 拖拽调整过程中持续触发 */
196
470
  onResize?: (size: number) => void;
471
+ /** 鼠标或键盘调整结束时触发 */
197
472
  onResizeEnd?: (size: number) => void;
198
473
  }
474
+ /** 工具面板组件。 */
199
475
  declare function ToolPanel({ title, icon, items, activeKey, defaultActiveKey, onActiveKeyChange, placement, open, defaultOpen, defaultSize, minSize, maxSize, onOpenChange, onResize, onResizeEnd, className, style, children, ...props }: ToolPanelProps): react.JSX.Element;
200
476
 
477
+ /** 窗口控制操作名称。 */
201
478
  type WindowAction = "start-dragging" | "minimize" | "toggle-maximize" | "close";
479
+ /** 窗口控制按钮可执行的操作。 */
202
480
  type WindowControlAction = Exclude<WindowAction, "start-dragging">;
481
+ /** 执行窗口控制操作的回调函数。 */
203
482
  type WindowActionHandler = (action: WindowAction) => void | Promise<void>;
483
+ /** 标题栏操作区域的对齐方式。 */
204
484
  type WindowTitleBarActionsAlign = "left" | "right";
485
+ /** 窗口控制按钮的显示和无障碍文案。 */
205
486
  interface WindowControlLabels {
487
+ /** 最小化窗口。 */
206
488
  minimize: string;
489
+ /** 最大化窗口。 */
207
490
  maximize: string;
491
+ /** 还原窗口尺寸或还原初始状态。 */
208
492
  restore: string;
493
+ /** 关闭当前界面或实例。 */
209
494
  close: string;
210
495
  }
496
+ /** 窗口框架的属性配置。 */
211
497
  interface WindowFrameProps extends HTMLAttributes<HTMLDivElement> {
498
+ /** 标题栏内容或配置。 */
212
499
  titleBar?: ReactNode;
213
500
  }
501
+ /** 窗口控制按钮的属性配置。 */
214
502
  interface WindowControlsProps extends HTMLAttributes<HTMLDivElement> {
503
+ /**
504
+ * 当前窗口是否已最大化。
505
+ * @defaultValue false
506
+ */
215
507
  maximized?: boolean;
508
+ /**
509
+ * 是否显示最小化按钮。
510
+ * @defaultValue true
511
+ */
216
512
  showMinimize?: boolean;
513
+ /**
514
+ * 是否显示最大化或还原按钮。
515
+ * @defaultValue true
516
+ */
217
517
  showMaximize?: boolean;
518
+ /**
519
+ * 是否显示关闭按钮。
520
+ * @defaultValue true
521
+ */
218
522
  showClose?: boolean;
523
+ /**
524
+ * 不允许执行的窗口操作集合。
525
+ * @defaultValue []
526
+ */
219
527
  disabledActions?: readonly WindowControlAction[];
528
+ /** 各操作入口的显示或无障碍文案。 */
220
529
  labels?: Partial<WindowControlLabels>;
530
+ /** 操作按钮被触发时调用。 */
221
531
  onAction?: WindowActionHandler;
222
532
  }
533
+ /** 窗口标题栏的属性配置。 */
223
534
  interface WindowTitleBarProps extends HTMLAttributes<HTMLElement> {
535
+ /** 标题前的内容区域。 */
224
536
  leading?: ReactNode;
537
+ /** 附加的操作按钮区域。 */
225
538
  actions?: ReactNode;
539
+ /**
540
+ * 操作区域的对齐方式。
541
+ * @defaultValue "right"
542
+ */
226
543
  actionsAlign?: WindowTitleBarActionsAlign;
544
+ /**
545
+ 是否显示窗口控制按钮。
546
+ * @defaultValue true
547
+ */
227
548
  controls?: boolean | ReactNode;
549
+ /**
550
+ * 当前窗口是否已最大化。
551
+ * @defaultValue false
552
+ */
228
553
  maximized?: boolean;
554
+ /**
555
+ * 是否允许拖拽。
556
+ * @defaultValue true
557
+ */
229
558
  draggable?: boolean;
559
+ /** 不允许执行的窗口操作集合。 */
230
560
  disabledActions?: readonly WindowControlAction[];
561
+ /** 窗口控制按钮的文案。 */
231
562
  controlLabels?: Partial<WindowControlLabels>;
563
+ /** 窗口控制操作触发时调用。 */
232
564
  onWindowAction?: WindowActionHandler;
233
565
  }
566
+ /** 窗口框架组件。 */
234
567
  declare function WindowFrame({ titleBar, className, children, ...props }: WindowFrameProps): react.JSX.Element;
568
+ /** 窗口控制按钮组件。 */
235
569
  declare function WindowControls({ maximized, showMinimize, showMaximize, showClose, disabledActions, labels, onAction, className, ...props }: WindowControlsProps): react.JSX.Element;
570
+ /** 窗口标题栏组件。 */
236
571
  declare function WindowTitleBar({ leading, actions, actionsAlign, controls, maximized, draggable, disabledActions, controlLabels, onWindowAction, className, children, onMouseDown, ...props }: WindowTitleBarProps): react.JSX.Element;
237
572
 
573
+ /** 抽屉的位置类型。 */
238
574
  type DrawerPlacement = "left" | "right" | "top" | "bottom";
575
+ /** DrawerPush的配置。 */
239
576
  interface DrawerPushConfig {
577
+ /** 抽屉推开父级时的位移距离。 */
240
578
  distance?: number | string;
241
579
  }
580
+ /** 子抽屉打开时是否推开父抽屉,以及推开距离的配置。 */
242
581
  type DrawerPush = boolean | DrawerPushConfig;
582
+ /** 抽屉的属性配置。 */
243
583
  interface DrawerProps extends Omit<HTMLAttributes<HTMLDivElement>, "title"> {
584
+ /** 是否显示抽屉 */
244
585
  open: boolean;
586
+ /** 标题内容,可传入文本或 React 节点。 */
245
587
  title?: ReactNode;
588
+ /** 子内容;组件嵌套内容或当前节点的子项。 */
246
589
  children?: ReactNode;
590
+ /** 主体之外的补充内容或操作区。 */
247
591
  extra?: ReactNode;
592
+ /** 自定义底部操作区,传 null 隐藏 */
248
593
  footer?: ReactNode;
594
+ /**
595
+ * 出现方向
596
+ * @defaultValue "right"
597
+ */
249
598
  placement?: DrawerPlacement;
599
+ /**
600
+ * 抽屉宽度或高度
601
+ * @defaultValue placement === "top" || placement === "bottom" ? 320 : 760
602
+ */
250
603
  size?: number | string;
604
+ /**
605
+ * 是否显示关闭入口。
606
+ * @defaultValue true
607
+ */
251
608
  closable?: boolean;
609
+ /**
610
+ * 点击遮罩时是否允许关闭。
611
+ * @defaultValue true
612
+ */
252
613
  maskClosable?: boolean;
614
+ /**
615
+ * 是否允许通过 Esc 等键盘操作关闭。
616
+ * @defaultValue true
617
+ */
253
618
  keyboard?: boolean;
619
+ /**
620
+ 组件或浮层的堆叠层级。
621
+ * @defaultValue 1000
622
+ */
254
623
  zIndex?: number;
255
624
  /** 子抽屉打开时是否推移当前抽屉,默认开启。 */
256
625
  push?: DrawerPush;
257
626
  /** 适用于同级 Portal 渲染的多层抽屉,按层数累计推移。 */
258
627
  pushDepth?: number;
628
+ /** 弹层挂载目标;可提供元素或返回元素的函数,默认挂载到页面容器。 */
259
629
  getContainer?: OverlayContainer;
630
+ /** 请求关闭时触发的回调。 */
260
631
  onClose?: () => void;
632
+ /** 打开状态改变时触发,参数为新的打开状态。 */
261
633
  onOpenChange?: (open: boolean) => void;
262
634
  /** 展开动画完成且面板已稳定后触发。 */
263
635
  afterOpen?: () => void;
264
636
  /** 关闭动画完成且面板已隐藏后触发。 */
265
637
  afterClose?: () => void;
266
638
  }
639
+ /** DrawerOpen的配置。 */
267
640
  interface DrawerOpenConfig extends Omit<DrawerProps, "open"> {
268
641
  }
269
642
  declare function openDrawer(config: DrawerOpenConfig): OverlayApiHandle<DrawerOpenConfig>;
643
+ /** 抽屉组件。 */
270
644
  declare const Drawer: react.ForwardRefExoticComponent<DrawerProps & react.RefAttributes<HTMLDivElement>> & {
645
+ /** 直接打开实例,返回可用于更新或关闭的操作句柄。 */
271
646
  open: typeof openDrawer;
647
+ /** 关闭由此 API 打开的所有弹层。 */
272
648
  destroyAll(): void;
273
649
  };
274
650
 
651
+ /** 开关的视觉样式。 */
275
652
  type SwitchVariant = "standard" | "segmented";
653
+ /** 开关的属性配置。 */
276
654
  interface SwitchProps extends Omit<InputHTMLAttributes<HTMLInputElement>, "type" | "size"> {
655
+ /** 标准开关高度为 16 / 22 / 28px,分段开关为 22 / 30 / 38px;默认继承 Form */
277
656
  size?: ControlSize;
657
+ /** 开关右侧的可见标签 */
278
658
  label?: ReactNode;
659
+ /**
660
+ 组件的视觉样式。
661
+ * @defaultValue "standard"
662
+ */
279
663
  variant?: SwitchVariant;
664
+ /** 选中状态的文字、图标或自定义内容 */
280
665
  checkedContent?: ReactNode;
666
+ /** 未选中状态的文字、图标或自定义内容 */
281
667
  uncheckedContent?: ReactNode;
668
+ /** 状态变化时返回最新布尔值 */
282
669
  onCheckedChange?: (checked: boolean) => void;
283
670
  }
671
+ /** 开关组件。 */
284
672
  declare const Switch: react.ForwardRefExoticComponent<SwitchProps & react.RefAttributes<HTMLInputElement>>;
673
+ /** 表单字段路径;字符串表示顶层字段,数组表示嵌套字段。 */
285
674
  type NamePath = string | number | readonly (string | number)[];
675
+ /** 表单字段名到当前值的映射。 */
286
676
  type FormValues = Record<string, unknown>;
677
+ /** 字段校验规则,支持必填、长度、正则和异步自定义校验。 */
287
678
  interface FormRule {
679
+ /** 是否为必填字段。 */
288
680
  required?: boolean;
681
+ /** 是否将仅含空白字符的文本判为无效。 */
289
682
  whitespace?: boolean;
683
+ /** 类型标识,用于选择对应的表现形式。 */
290
684
  type?: "string" | "number" | "boolean" | "array" | "email" | "url";
685
+ /** 允许的最小值。 */
291
686
  min?: number;
687
+ /** 允许的最大值。 */
292
688
  max?: number;
689
+ /** 要求的精确长度。 */
293
690
  len?: number;
691
+ /** 用于校验字段值的正则表达式。 */
294
692
  pattern?: RegExp;
693
+ /** 提示或错误消息文本。 */
295
694
  message?: ReactNode;
695
+ /** 校验前转换字段值的函数。 */
296
696
  transform?: (value: unknown) => unknown;
697
+ /** 自定义校验函数;可返回 Promise,失败时抛出错误。 */
297
698
  validator?: (rule: FormRule, value: unknown, values: FormValues) => void | Promise<void>;
298
699
  }
700
+ /** 校验失败的字段路径及其错误文本。 */
299
701
  interface FormErrorField {
702
+ /** 名称或字段标识。 */
300
703
  name: readonly (string | number)[];
704
+ /** 字段的校验错误信息列表。 */
301
705
  errors: readonly ReactNode[];
302
706
  }
707
+ /** 表单操作实例,提供读写字段值、校验、重置和提交方法。 */
303
708
  interface FormInstance {
709
+ /** 读取指定字段的当前值,支持嵌套字段路径。 */
304
710
  getFieldValue: (name: NamePath) => unknown;
711
+ /** 读取表单当前字段值集合。 */
305
712
  getFieldsValue: () => FormValues;
713
+ /** 读取指定字段的校验错误信息。 */
306
714
  getFieldError: (name: NamePath) => readonly ReactNode[];
715
+ /** 设置单个字段的值;name 可为嵌套字段路径。 */
307
716
  setFieldValue: (name: NamePath, value: unknown) => void;
717
+ /** 批量设置表单字段值。 */
308
718
  setFieldsValue: (values: FormValues) => void;
719
+ /** 将字段恢复到初始值,并清理相关校验状态。 */
309
720
  resetFields: (names?: readonly NamePath[]) => void;
721
+ /** 执行字段校验;成功返回字段值,失败抛出校验错误信息。 */
310
722
  validateFields: (names?: readonly NamePath[]) => Promise<FormValues>;
723
+ /** 提交表单并执行校验;校验通过触发 onFinish,失败触发 onFinishFailed。 */
311
724
  submit: () => void;
725
+ /** 将指定字段滚动到可见区域。 */
312
726
  scrollToField: (name: NamePath) => void;
313
727
  }
728
+ /** 创建或复用表单实例。返回单元素元组,可使用 const [form] = useForm() 获取实例并传给 Form 或 QueryForm。 */
314
729
  declare function useForm(form?: FormInstance): readonly [FormInstance];
730
+ /** 表单的属性配置。 */
315
731
  interface FormProps extends Omit<FormHTMLAttributes<HTMLFormElement>, "onSubmit"> {
732
+ /** 组件尺寸;用于调整控件高度、字号和间距。 */
316
733
  size?: ControlSize;
734
+ /** 表单实例;可由 Form.useForm() 或 useForm() 创建。 */
317
735
  form?: FormInstance;
736
+ /** 表单初始值 */
318
737
  initialValues?: FormValues;
738
+ /**
739
+ * 布局方式。
740
+ * @defaultValue "horizontal"
741
+ */
319
742
  layout?: "horizontal" | "vertical" | "inline";
743
+ /** 占位提示的显示模式;floating 为浮动标签。 */
320
744
  placeholderMode?: InputPlaceholderMode;
745
+ /**
746
+ * 是否禁用交互。
747
+ * @defaultValue false
748
+ */
321
749
  disabled?: boolean;
750
+ /**
751
+ * 是否显示必填标识。
752
+ * @defaultValue true
753
+ */
322
754
  requiredMark?: boolean | "optional";
755
+ /** 提交并且校验通过时调用,参数为完整的表单字段值。 */
323
756
  onFinish?: (values: FormValues) => void;
757
+ /** 表单提交校验失败时调用,参数包含字段值和错误列表。 */
324
758
  onFinishFailed?: (info: {
759
+ /** 字段值或选中值的集合。 */
325
760
  values: FormValues;
761
+ /** 校验失败的字段及其错误信息。 */
326
762
  errorFields: readonly FormErrorField[];
327
763
  }) => void;
764
+ /** 字段通过表单控件交互更新时调用,接收本次变化字段和完整值;用于联动查询条件等业务逻辑。 */
328
765
  onValuesChange?: (changedValues: FormValues, values: FormValues) => void;
329
766
  }
330
767
  declare function FormRoot({ form, initialValues, layout, size: sizeProp, placeholderMode, disabled, requiredMark, className, onFinish, onFinishFailed, onValuesChange, children, ...props }: FormProps): react.JSX.Element;
768
+ /** FormItem的属性配置。 */
331
769
  interface FormItemProps {
770
+ /** 绑定到表单值的字段名或嵌套路径,例如 ["user", "name"]。 */
332
771
  name?: NamePath;
772
+ /** 展示给用户的名称,可传入文本或 React 节点。 */
333
773
  label?: ReactNode;
774
+ /**
775
+ * 字段的校验规则,按配置执行。
776
+ * @defaultValue []
777
+ */
334
778
  rules?: readonly FormRule[];
779
+ /** 是否为必填字段。 */
335
780
  required?: boolean;
781
+ /** 主体之外的补充内容或操作区。 */
336
782
  extra?: ReactNode;
783
+ /** 字段下方的辅助说明或校验提示。 */
337
784
  help?: ReactNode;
785
+ /** 手动指定字段校验状态。 */
338
786
  validateStatus?: "success" | "warning" | "error" | "validating";
787
+ /**
788
+ * 向子控件传递值时使用的属性名,如 value 或 checked。
789
+ * @defaultValue "value"
790
+ */
339
791
  valuePropName?: string;
792
+ /**
793
+ * 触发显示的交互方式。
794
+ * @defaultValue "onChange"
795
+ */
340
796
  trigger?: string;
797
+ /**
798
+ * 触发字段校验的事件名或事件名集合。
799
+ * @defaultValue "onChange"
800
+ */
341
801
  validateTrigger?: string | readonly string[];
802
+ /** 从子控件的事件参数中提取需要写入表单的值。 */
342
803
  getValueFromEvent?: (...args: unknown[]) => unknown;
804
+ /**
805
+ * 只提供字段绑定与校验,不渲染 Form.Item 的布局容器。
806
+ * @defaultValue false
807
+ */
343
808
  noStyle?: boolean;
809
+ /** 依赖的字段路径;依赖变化时更新当前字段。 */
344
810
  dependencies?: readonly NamePath[];
811
+ /** 控制表单值变化后是否重新渲染此项,可传比较函数。 */
345
812
  shouldUpdate?: boolean | ((previous: FormValues, next: FormValues) => boolean);
813
+ /** 子内容;组件嵌套内容或当前节点的子项。 */
346
814
  children?: ReactNode | ((form: FormInstance) => ReactNode);
815
+ /**
816
+ * 附加到组件根节点的 CSS 类名。
817
+ * @defaultValue ""
818
+ */
347
819
  className?: string;
348
820
  }
349
821
  declare function FormItem({ name, label, rules, required, extra, help, validateStatus, valuePropName, trigger, validateTrigger, getValueFromEvent, noStyle, children, className, }: FormItemProps): react.JSX.Element;
822
+ /** 动态列表中一个字段的渲染标识和索引。 */
350
823
  interface FormListField {
824
+ /** 唯一标识;同一集合内应保持唯一且稳定,用于定位、渲染和状态关联。 */
351
825
  key: number;
826
+ /** 该字段在表单列表中的索引。 */
352
827
  name: number;
353
828
  }
829
+ /** 动态表单列表的新增、删除和移动操作。 */
354
830
  interface FormListOperation {
831
+ /** 新增列表项,可指定初始值和插入位置。 */
355
832
  add: (value?: unknown, index?: number) => void;
833
+ /** 删除指定索引的列表项。 */
356
834
  remove: (index: number | readonly number[]) => void;
835
+ /** 将列表项从源索引移动到目标索引。 */
357
836
  move: (from: number, to: number) => void;
358
837
  }
838
+ /** FormList的属性配置。 */
359
839
  interface FormListProps {
840
+ /** 名称或字段标识。 */
360
841
  name: NamePath;
842
+ /** 列表渲染函数,接收字段描述和 add、remove、move 操作。 */
361
843
  children: (fields: readonly FormListField[], operations: FormListOperation) => ReactNode;
362
844
  }
363
845
  declare function FormList({ name, children }: FormListProps): ReactNode;
364
846
  declare function FormErrorList({ errors }: {
847
+ /** 要显示的字段校验错误列表。 */
365
848
  errors?: readonly ReactNode[];
366
849
  }): react.JSX.Element | null;
850
+ /** 表单组件。 */
367
851
  declare const Form: typeof FormRoot & {
852
+ /** 表单字段,负责字段值绑定、校验和标签布局。 */
368
853
  Item: typeof FormItem;
854
+ /** 动态表单列表,提供字段索引以及新增、删除、移动操作。 */
369
855
  List: typeof FormList;
856
+ /** 显示表单错误文本集合。 */
370
857
  ErrorList: typeof FormErrorList;
858
+ /** 创建或复用表单实例,返回单元素元组 [form]。 */
371
859
  useForm: typeof useForm;
372
860
  };
373
861
 
862
+ /** 复选框的值类型。 */
374
863
  type CheckboxValue = string | number;
864
+ /** 复选框的属性配置。 */
375
865
  interface CheckboxProps extends Omit<InputHTMLAttributes<HTMLInputElement>, "type" | "size" | "value" | "onChange"> {
866
+ /** 组件尺寸;用于调整控件高度、字号和间距。 */
376
867
  size?: ControlSize;
868
+ /** 当前值;作为受控属性时,需要在变更回调中同步更新。 */
377
869
  value?: CheckboxValue;
870
+ /**
871
+ * 半选状态
872
+ * @defaultValue false
873
+ */
378
874
  indeterminate?: boolean;
875
+ /** 子内容;组件嵌套内容或当前节点的子项。 */
379
876
  children?: ReactNode;
877
+ /** 值发生变化时调用;参数为新值及类型声明中列出的关联信息。 */
380
878
  onChange?: (checked: boolean, event: ChangeEvent<HTMLInputElement>) => void;
381
879
  }
880
+ /** 复选框的候选项定义。 */
382
881
  interface CheckboxOption {
882
+ /** 展示给用户的名称,可传入文本或 React 节点。 */
383
883
  label: ReactNode;
884
+ /** 该项目对应的数据值,用于标识、选择或计算。 */
384
885
  value: CheckboxValue;
886
+ /** 是否禁用交互。 */
385
887
  disabled?: boolean;
386
888
  }
889
+ /** CheckboxGroup的属性配置。 */
387
890
  interface CheckboxGroupProps {
891
+ /** 组件尺寸;用于调整控件高度、字号和间距。 */
388
892
  size?: ControlSize;
893
+ /** 当前值;作为受控属性时,需要在变更回调中同步更新。 */
389
894
  value?: readonly CheckboxValue[];
895
+ /**
896
+ * 非受控模式的初始值,仅在初始化时使用。
897
+ * @defaultValue []
898
+ */
390
899
  defaultValue?: readonly CheckboxValue[];
900
+ /** 可供用户选择的候选项列表。 */
391
901
  options?: readonly (CheckboxOption | CheckboxValue)[];
902
+ /** 是否禁用交互。 */
392
903
  disabled?: boolean;
904
+ /** 名称或字段标识。 */
393
905
  name?: string;
906
+ /**
907
+ * 附加到组件根节点的 CSS 类名。
908
+ * @defaultValue ""
909
+ */
394
910
  className?: string;
911
+ /** 子内容;组件嵌套内容或当前节点的子项。 */
395
912
  children?: ReactNode;
913
+ /** 值发生变化时调用;参数为新值及类型声明中列出的关联信息。 */
396
914
  onChange?: (values: readonly CheckboxValue[]) => void;
397
915
  }
398
916
  declare function CheckboxGroup({ size: sizeProp, value, defaultValue, options, disabled, name, className, children, onChange, }: CheckboxGroupProps): react.JSX.Element;
917
+ /** 复选框组件。 */
399
918
  declare const Checkbox: react.ForwardRefExoticComponent<CheckboxProps & react.RefAttributes<HTMLInputElement>> & {
919
+ /** 组合多个子项并统一管理布局或选择状态。 */
400
920
  Group: typeof CheckboxGroup;
401
921
  };
402
922
 
923
+ /** 单选框的值类型。 */
403
924
  type RadioValue = string | number;
925
+ /** 单选框的属性配置。 */
404
926
  interface RadioProps extends Omit<InputHTMLAttributes<HTMLInputElement>, "type" | "size" | "value" | "onChange"> {
927
+ /** 组件尺寸;用于调整控件高度、字号和间距。 */
405
928
  size?: ControlSize;
929
+ /** 当前值;作为受控属性时,需要在变更回调中同步更新。 */
406
930
  value: RadioValue;
931
+ /** 子内容;组件嵌套内容或当前节点的子项。 */
407
932
  children?: ReactNode;
933
+ /** 值发生变化时调用;参数为新值及类型声明中列出的关联信息。 */
408
934
  onChange?: (checked: boolean, event: ChangeEvent<HTMLInputElement>) => void;
409
935
  }
936
+ /** 单选框的候选项定义。 */
410
937
  interface RadioOption {
938
+ /** 展示给用户的名称,可传入文本或 React 节点。 */
411
939
  label: ReactNode;
940
+ /** 该项目对应的数据值,用于标识、选择或计算。 */
412
941
  value: RadioValue;
942
+ /** 是否禁用交互。 */
413
943
  disabled?: boolean;
414
944
  }
945
+ /** RadioGroup的属性配置。 */
415
946
  interface RadioGroupProps {
947
+ /** 组件尺寸;用于调整控件高度、字号和间距。 */
416
948
  size?: ControlSize;
949
+ /** 当前值;作为受控属性时,需要在变更回调中同步更新。 */
417
950
  value?: RadioValue;
951
+ /** 非受控模式的初始值,仅在初始化时使用。 */
418
952
  defaultValue?: RadioValue;
953
+ /** 可供用户选择的候选项列表。 */
419
954
  options?: readonly (RadioOption | RadioValue)[];
955
+ /**
956
+ * 普通或按钮形态
957
+ * @defaultValue "default"
958
+ */
420
959
  optionType?: "default" | "button";
960
+ /**
961
+ * 按钮选中样式
962
+ * @defaultValue "outline"
963
+ */
421
964
  buttonStyle?: "outline" | "solid";
965
+ /** 是否禁用交互。 */
422
966
  disabled?: boolean;
967
+ /** 名称或字段标识。 */
423
968
  name?: string;
969
+ /**
970
+ * 附加到组件根节点的 CSS 类名。
971
+ * @defaultValue ""
972
+ */
424
973
  className?: string;
974
+ /** 子内容;组件嵌套内容或当前节点的子项。 */
425
975
  children?: ReactNode;
976
+ /** 值发生变化时调用;参数为新值及类型声明中列出的关联信息。 */
426
977
  onChange?: (value: RadioValue) => void;
427
978
  }
428
979
  declare function RadioButton(props: RadioProps): react.JSX.Element;
429
980
  declare function RadioGroup({ size: sizeProp, value, defaultValue, options, optionType, buttonStyle, disabled, name, className, children, onChange, }: RadioGroupProps): react.JSX.Element;
981
+ /** 单选框组件。 */
430
982
  declare const Radio: react.ForwardRefExoticComponent<RadioProps & {
431
983
  button?: boolean;
432
984
  } & react.RefAttributes<HTMLInputElement>> & {
985
+ /** 组合主操作按钮与下拉菜单的按钮组件。 */
433
986
  Button: typeof RadioButton;
987
+ /** 组合多个子项并统一管理布局或选择状态。 */
434
988
  Group: typeof RadioGroup;
435
989
  };
436
990
 
991
+ /** 滑块的值类型。 */
437
992
  type SliderValue = number | readonly [number, number];
993
+ /** 滑块上的刻度标签定义。 */
438
994
  interface SliderMark {
995
+ /** 展示给用户的名称,可传入文本或 React 节点。 */
439
996
  label: ReactNode;
997
+ /** 组件根节点的内联样式。 */
440
998
  style?: CSSProperties;
441
999
  }
1000
+ /** 滑块的属性配置。 */
442
1001
  interface SliderProps extends Omit<HTMLAttributes<HTMLDivElement>, "defaultValue" | "onChange"> {
1002
+ /** 当前值;作为受控属性时,需要在变更回调中同步更新。 */
443
1003
  value?: SliderValue;
1004
+ /** 非受控模式的初始值,仅在初始化时使用。 */
444
1005
  defaultValue?: SliderValue;
1006
+ /**
1007
+ * 允许的最小值。
1008
+ * @defaultValue 0
1009
+ */
445
1010
  min?: number;
1011
+ /**
1012
+ * 允许的最大值。
1013
+ * @defaultValue 100
1014
+ */
446
1015
  max?: number;
1016
+ /**
1017
+ * 每次改变的步长
1018
+ * @defaultValue 1
1019
+ */
447
1020
  step?: number;
1021
+ /**
1022
+ * 是否启用范围选择,或指定选择范围。
1023
+ * @defaultValue false
1024
+ */
448
1025
  range?: boolean;
1026
+ /**
1027
+ * 是否禁用交互。
1028
+ * @defaultValue false
1029
+ */
449
1030
  disabled?: boolean;
1031
+ /**
1032
+ * 反转节点顺序
1033
+ * @defaultValue false
1034
+ */
450
1035
  reverse?: boolean;
1036
+ /**
1037
+ * 是否使用垂直布局。
1038
+ * @defaultValue false
1039
+ */
451
1040
  vertical?: boolean;
1041
+ /** 刻度标记 */
452
1042
  marks?: Readonly<Record<number, ReactNode | SliderMark>>;
1043
+ /** 提示内容或提示框配置。 */
453
1044
  tooltip?: {
1045
+ /** 是否打开;传入后由外部控制显示状态。 */
454
1046
  open?: boolean;
1047
+ /** 将原始值转换为展示文本的函数。 */
455
1048
  formatter?: (value: number) => ReactNode;
456
1049
  };
1050
+ /** 值发生变化时调用;参数为新值及类型声明中列出的关联信息。 */
457
1051
  onChange?: (value: SliderValue) => void;
1052
+ /** 拖动完成回调 */
458
1053
  onChangeComplete?: (value: SliderValue) => void;
459
1054
  }
1055
+ /** 滑块组件。 */
460
1056
  declare function Slider({ value, defaultValue, min, max, step, range, disabled, reverse, vertical, marks, tooltip, className, onChange, onChangeComplete, ...props }: SliderProps): react.JSX.Element;
461
1057
 
1058
+ /** 颜色选择的模式类型。 */
462
1059
  type ColorPickerMode = "solid" | "gradient";
1060
+ /** 预设颜色分组定义。 */
463
1061
  interface ColorPickerPreset {
1062
+ /** 展示给用户的名称,可传入文本或 React 节点。 */
464
1063
  label?: ReactNode;
1064
+ /** 可选颜色或颜色序列。 */
465
1065
  colors: readonly string[];
466
1066
  }
1067
+ /** 颜色选择的属性配置。 */
467
1068
  interface ColorPickerProps extends Omit<HTMLAttributes<HTMLDivElement>, "defaultValue" | "onChange"> {
1069
+ /** 组件尺寸;用于调整控件高度、字号和间距。 */
468
1070
  size?: ControlSize;
1071
+ /** 当前值;作为受控属性时,需要在变更回调中同步更新。 */
469
1072
  value?: string;
1073
+ /**
1074
+ * 非受控模式的初始值,仅在初始化时使用。
1075
+ * @defaultValue "#1677FF"
1076
+ */
470
1077
  defaultValue?: string;
1078
+ /** 展示或交互模式;可选值见类型定义。 */
471
1079
  mode?: ColorPickerMode;
1080
+ /**
1081
+ * 初始化时使用的模式。
1082
+ * @defaultValue "solid"
1083
+ */
472
1084
  defaultMode?: ColorPickerMode;
1085
+ /**
1086
+ 允许切换的模式集合。
1087
+ * @defaultValue DEFAULT_MODES
1088
+ */
473
1089
  modes?: readonly ColorPickerMode[];
1090
+ /**
1091
+ * 是否禁用交互。
1092
+ * @defaultValue false
1093
+ */
474
1094
  disabled?: boolean;
1095
+ /**
1096
+ 是否允许清空当前选择或输入值。
1097
+ * @defaultValue false
1098
+ */
475
1099
  allowClear?: boolean;
1100
+ /**
1101
+ * 是否显示文字内容。
1102
+ * @defaultValue false
1103
+ */
476
1104
  showText?: boolean | ((color: string) => ReactNode);
1105
+ /**
1106
+ * 是否显示透明度调节控件。
1107
+ * @defaultValue false
1108
+ */
477
1109
  showAlpha?: boolean;
1110
+ /** 预设候选值或快捷选项集合。 */
478
1111
  presets?: readonly ColorPickerPreset[];
1112
+ /** 值发生变化时调用;参数为新值及类型声明中列出的关联信息。 */
479
1113
  onChange?: (color: string) => void;
1114
+ /** 拖动完成回调 */
480
1115
  onChangeComplete?: (color: string) => void;
1116
+ /** 模式切换后调用。 */
481
1117
  onModeChange?: (mode: ColorPickerMode) => void;
1118
+ /** 清空当前值时调用。 */
482
1119
  onClear?: () => void;
483
1120
  }
1121
+ /** 颜色选择组件。 */
484
1122
  declare function ColorPicker({ size: sizeProp, value, defaultValue, mode, defaultMode, modes, disabled, allowClear, showText, showAlpha, presets, className, onChange, onChangeComplete, onModeChange, onClear, ...props }: ColorPickerProps): react.JSX.Element;
485
1123
 
1124
+ /** 时间选择的属性配置。 */
486
1125
  interface TimePickerProps extends Omit<InputHTMLAttributes<HTMLInputElement>, "type" | "size" | "value" | "defaultValue" | "onChange"> {
1126
+ /** 占位提示的显示模式;floating 为浮动标签。 */
487
1127
  placeholderMode?: InputPlaceholderMode;
1128
+ /** 当前值;作为受控属性时,需要在变更回调中同步更新。 */
488
1129
  value?: string;
1130
+ /**
1131
+ * 非受控模式的初始值,仅在初始化时使用。
1132
+ * @defaultValue ""
1133
+ */
489
1134
  defaultValue?: string;
1135
+ /** 组件尺寸;用于调整控件高度、字号和间距。 */
490
1136
  size?: ControlSize;
1137
+ /**
1138
+ * 当前状态,用于选择对应的状态样式。
1139
+ * @defaultValue "default"
1140
+ */
491
1141
  status?: ControlStatus;
1142
+ /**
1143
+ 是否允许清空当前选择或输入值。
1144
+ * @defaultValue true
1145
+ */
492
1146
  allowClear?: boolean;
1147
+ /**
1148
+ * 是否使用 12 小时制。
1149
+ * @defaultValue false
1150
+ */
493
1151
  use12Hours?: boolean;
1152
+ /**
1153
+ * 是否显示秒选择。
1154
+ * @defaultValue false
1155
+ */
494
1156
  showSecond?: boolean;
1157
+ /** 显示在控件末尾的图标。 */
495
1158
  suffixIcon?: ReactNode;
1159
+ /** 禁用时间判断 */
496
1160
  disabledTime?: (value: string) => boolean;
1161
+ /** 值发生变化时调用;参数为新值及类型声明中列出的关联信息。 */
497
1162
  onChange?: (value: string) => void;
1163
+ /** 打开状态改变时触发,参数为新的打开状态。 */
498
1164
  onOpenChange?: (open: boolean) => void;
499
1165
  }
1166
+ /** 时间区间选择的属性配置。 */
500
1167
  interface TimeRangePickerProps extends Omit<TimePickerProps, "value" | "defaultValue" | "onChange" | "placeholder"> {
1168
+ /** 当前值;作为受控属性时,需要在变更回调中同步更新。 */
501
1169
  value?: readonly [string, string];
1170
+ /**
1171
+ * 非受控模式的初始值,仅在初始化时使用。
1172
+ * @defaultValue ["", ""]
1173
+ */
502
1174
  defaultValue?: readonly [string, string];
1175
+ /**
1176
+ * 未填写或未选择时的提示内容。
1177
+ * @defaultValue ["开始时间", "结束时间"]
1178
+ */
503
1179
  placeholder?: readonly [string, string];
1180
+ /**
1181
+ * 全局分隔符,可传入图标或文字
1182
+ * @defaultValue "→"
1183
+ */
504
1184
  separator?: ReactNode;
1185
+ /** 值发生变化时调用;参数为新值及类型声明中列出的关联信息。 */
505
1186
  onChange?: (value: readonly [string, string]) => void;
506
1187
  }
507
1188
  declare function TimeRangePicker({ value, defaultValue, placeholder, separator, onChange, className, style, ...props }: TimeRangePickerProps): react.JSX.Element;
1189
+ /** 时间选择组件。 */
508
1190
  declare function TimePicker({ value, defaultValue, size: sizeProp, status, allowClear, use12Hours, showSecond, suffixIcon, disabledTime, disabled, readOnly, className, style, onChange, onOpenChange, placeholder, placeholderMode, min, max, step, ...props }: TimePickerProps): react.JSX.Element;
509
1191
  declare namespace TimePicker {
1192
+ /** 时间区间选择器。 */
510
1193
  const RangePicker: typeof TimeRangePicker;
511
1194
  }
512
1195
 
1196
+ /** 树选择的值类型。 */
513
1197
  type TreeSelectValue = string | number;
1198
+ /** 树选择器的节点,包含值、标签、子节点和禁用状态。 */
514
1199
  interface TreeSelectNode {
1200
+ /** 标题内容,可传入文本或 React 节点。 */
515
1201
  title: ReactNode;
1202
+ /** 该项目对应的数据值,用于标识、选择或计算。 */
516
1203
  value: TreeSelectValue;
1204
+ /** 唯一标识;同一集合内应保持唯一且稳定,用于定位、渲染和状态关联。 */
517
1205
  key?: string | number;
1206
+ /** 是否禁用交互。 */
518
1207
  disabled?: boolean;
1208
+ /** 是否允许选中项目。 */
519
1209
  selectable?: boolean;
1210
+ /** 是否仅禁用该节点的勾选框。 */
520
1211
  disableCheckbox?: boolean;
1212
+ /** 是否显示勾选框或允许勾选。 */
521
1213
  checkable?: boolean;
1214
+ /** 子内容;组件嵌套内容或当前节点的子项。 */
522
1215
  children?: readonly TreeSelectNode[];
523
1216
  }
1217
+ /** 树选择的属性配置。 */
524
1218
  interface TreeSelectProps extends Omit<HTMLAttributes<HTMLDivElement>, "defaultValue" | "onChange" | "onSelect"> {
1219
+ /** 树形节点数据 */
525
1220
  treeData: readonly TreeSelectNode[];
1221
+ /** 当前值;作为受控属性时,需要在变更回调中同步更新。 */
526
1222
  value?: TreeSelectValue | readonly TreeSelectValue[] | null;
1223
+ /** 非受控模式的初始值,仅在初始化时使用。 */
527
1224
  defaultValue?: TreeSelectValue | readonly TreeSelectValue[];
1225
+ /**
1226
+ 是否允许同时选择多个项目。
1227
+ * @defaultValue false
1228
+ */
528
1229
  multiple?: boolean;
1230
+ /**
1231
+ * 是否显示树节点复选框。
1232
+ * @defaultValue false
1233
+ */
529
1234
  treeCheckable?: boolean;
1235
+ /**
1236
+ 是否显示搜索输入框。
1237
+ * @defaultValue false
1238
+ */
530
1239
  showSearch?: boolean;
1240
+ /**
1241
+ 是否允许清空当前选择或输入值。
1242
+ * @defaultValue false
1243
+ */
531
1244
  allowClear?: boolean;
1245
+ /**
1246
+ * 默认展开全部节点
1247
+ * @defaultValue false
1248
+ */
532
1249
  treeDefaultExpandAll?: boolean;
1250
+ /**
1251
+ * 未填写或未选择时的提示内容。
1252
+ * @defaultValue "请选择"
1253
+ */
533
1254
  placeholder?: ReactNode;
1255
+ /** 占位提示的显示模式;floating 为浮动标签。 */
534
1256
  placeholderMode?: InputPlaceholderMode;
1257
+ /**
1258
+ * 搜索框的占位提示文字。
1259
+ * @defaultValue "搜索节点"
1260
+ */
535
1261
  searchPlaceholder?: string;
536
1262
  /** 最多显示的标签数;空间不足时会继续折叠,并为 +N 预留宽度。 */
537
1263
  maxTagCount?: number;
1264
+ /**
1265
+ * 是否禁用交互。
1266
+ * @defaultValue false
1267
+ */
538
1268
  disabled?: boolean;
1269
+ /** 组件尺寸;用于调整控件高度、字号和间距。 */
539
1270
  size?: ControlSize;
1271
+ /**
1272
+ * 当前状态,用于选择对应的状态样式。
1273
+ * @defaultValue "default"
1274
+ */
540
1275
  status?: ControlStatus;
1276
+ /** 是否打开;传入后由外部控制显示状态。 */
541
1277
  open?: boolean;
1278
+ /**
1279
+ * 非受控模式下的初始打开状态。
1280
+ * @defaultValue false
1281
+ */
542
1282
  defaultOpen?: boolean;
1283
+ /** 受控的搜索文本。 */
543
1284
  searchValue?: string;
1285
+ /** 受控的树节点展开标识集合。 */
544
1286
  treeExpandedKeys?: readonly TreeSelectValue[];
1287
+ /**
1288
+ * 初始展开的树节点标识集合。
1289
+ * @defaultValue []
1290
+ */
545
1291
  treeDefaultExpandedKeys?: readonly TreeSelectValue[];
1292
+ /** 树节点展开状态改变时调用。 */
546
1293
  onTreeExpand?: (keys: TreeSelectValue[]) => void;
1294
+ /** 自定义树节点的搜索匹配规则。 */
547
1295
  filterTreeNode?: false | ((search: string, node: TreeSelectNode) => boolean);
548
1296
  /** 默认独立勾选;关闭后父子节点联动,禁用节点作为边界。 */
549
1297
  treeCheckStrictly?: boolean;
1298
+ /**
1299
+ * 勾选结果的展示策略,控制父子节点如何显示。
1300
+ * @defaultValue "all"
1301
+ */
550
1302
  showCheckedStrategy?: "all" | "parent" | "child";
1303
+ /**
1304
+ * 是否处于加载状态。
1305
+ * @defaultValue false
1306
+ */
551
1307
  loading?: boolean;
1308
+ /**
1309
+ * 选项列表的最大可视高度,单位为像素。
1310
+ * @defaultValue 300
1311
+ */
552
1312
  listHeight?: number;
1313
+ /**
1314
+ * 弹出面板的附加 CSS 类名。
1315
+ * @defaultValue ""
1316
+ */
553
1317
  popupClassName?: string;
1318
+ /** 弹出面板的内联样式。 */
554
1319
  popupStyle?: React.CSSProperties;
1320
+ /** 下拉面板底部扩展内容。 */
555
1321
  dropdownFooter?: ReactNode;
1322
+ /** 自定义已选结果的显示内容。 */
556
1323
  displayRender?: (nodes: readonly TreeSelectNode[]) => ReactNode;
1324
+ /** 自定义触发控件的渲染函数。 */
557
1325
  renderTrigger?: (state: {
1326
+ /** 是否打开;传入后由外部控制显示状态。 */
558
1327
  open: boolean;
1328
+ /** 切换当前打开或选中状态。 */
559
1329
  toggle: () => void;
1330
+ /** 清空当前值或内容。 */
560
1331
  clear: () => void;
561
1332
  }) => ReactNode;
1333
+ /** 清空当前值时调用。 */
562
1334
  onClear?: () => void;
1335
+ /** 选中项目时调用,参数包含选中项目及关联状态。 */
563
1336
  onSelect?: (value: TreeSelectValue, node: TreeSelectNode) => void;
1337
+ /** 取消选中项目时调用。 */
564
1338
  onDeselect?: (value: TreeSelectValue, node: TreeSelectNode) => void;
1339
+ /** 值发生变化时调用;参数为新值及类型声明中列出的关联信息。 */
565
1340
  onChange?: (value: TreeSelectValue | readonly TreeSelectValue[] | undefined, nodes: readonly TreeSelectNode[]) => void;
1341
+ /** 搜索条件变化或提交搜索时调用,具体参数见签名。 */
566
1342
  onSearch?: (value: string) => void;
1343
+ /** 下拉面板显示状态变化时调用。 */
567
1344
  onDropdownVisibleChange?: (open: boolean) => void;
568
1345
  }
1346
+ /** 树选择组件。 */
569
1347
  declare function TreeSelect({ treeData, value, defaultValue, multiple, treeCheckable, showSearch, allowClear, treeDefaultExpandAll, placeholder, placeholderMode, searchPlaceholder, maxTagCount, disabled, size: sizeProp, status, className, onChange, onSearch, onDropdownVisibleChange, open: controlledOpen, defaultOpen, searchValue, treeExpandedKeys, treeDefaultExpandedKeys, onTreeExpand, filterTreeNode, treeCheckStrictly, showCheckedStrategy, loading, listHeight, popupClassName, popupStyle, dropdownFooter, displayRender, renderTrigger, onClear, onSelect, onDeselect, ...props }: TreeSelectProps): react.JSX.Element;
570
1348
 
1349
+ /** FlatTree的配置选项。 */
571
1350
  interface FlatTreeOptions {
1351
+ /** 扁平数据中用作节点唯一标识的字段名。 */
572
1352
  idField?: string;
1353
+ /** 扁平数据中用作父节点标识的字段名。 */
573
1354
  parentIdField?: string;
1355
+ /** 用来判断根节点的父标识值。 */
574
1356
  rootParentId?: unknown;
575
1357
  }
1358
+ /** 保留原始字段并补充 children 的树节点。 */
576
1359
  type FlatTreeNode<T> = T & {
1360
+ /** 子内容;组件嵌套内容或当前节点的子项。 */
577
1361
  children: FlatTreeNode<T>[];
578
1362
  };
579
1363
  /** 平级列表转树;容忍孤儿节点,并切断自引用和循环关系,防止递归溢出。 */
580
1364
  declare function buildFlatTree<T extends Record<string, any>>(items: readonly T[], options?: FlatTreeOptions): FlatTreeNode<T>[];
581
1365
 
1366
+ /** 多行输入的属性配置。 */
582
1367
  interface TextAreaProps extends TextareaHTMLAttributes<HTMLTextAreaElement> {
1368
+ /** 调整字号和内边距;保留 rows 和内容决定的多行高度。默认继承 Form */
583
1369
  size?: ControlSize;
1370
+ /** 字段标签 */
584
1371
  label?: ReactNode;
1372
+ /** 帮助或校验信息 */
585
1373
  hint?: ReactNode;
1374
+ /**
1375
+ * 校验状态
1376
+ * @defaultValue "default"
1377
+ */
586
1378
  status?: ControlStatus;
1379
+ /**
1380
+ * 显示当前字符数
1381
+ * @defaultValue false
1382
+ */
587
1383
  showCount?: boolean;
1384
+ /** 占位提示的显示模式;floating 为浮动标签。 */
588
1385
  placeholderMode?: InputPlaceholderMode;
589
1386
  }
1387
+ /** 多行输入组件。 */
590
1388
  declare const TextArea: react.ForwardRefExoticComponent<TextAreaProps & react.RefAttributes<HTMLTextAreaElement>>;
591
1389
 
1390
+ /** 代码编辑器支持的 SQL 方言名称。 */
592
1391
  type SqlDialectLanguage = "sql-postgresql" | "sql-mysql" | "sql-sqlserver" | "sql-sqlite";
593
1392
 
1393
+ /** 代码编辑器的配色主题。 */
594
1394
  type EditorTheme = "light" | "dark";
1395
+ /** 代码编辑器支持的语言名称。 */
595
1396
  type EditorLanguage = SqlDialectLanguage | (string & {});
1397
+ /** 编辑器中的文本范围,行号和列号从 1 开始。 */
596
1398
  interface EditorRange {
1399
+ /** 起始行号,从 1 开始。 */
597
1400
  startLineNumber: number;
1401
+ /** 起始列号,从 1 开始。 */
598
1402
  startColumn: number;
1403
+ /** 结束行号,从 1 开始。 */
599
1404
  endLineNumber: number;
1405
+ /** 结束列号,从 1 开始。 */
600
1406
  endColumn: number;
601
1407
  }
1408
+ /** 编辑器中的诊断标记,包含范围、严重程度和提示信息。 */
602
1409
  interface EditorMarker extends EditorRange {
1410
+ /** 提示或错误消息文本。 */
603
1411
  message: string;
1412
+ /** 提示或问题的严重级别。 */
604
1413
  severity?: "error" | "warning" | "info";
1414
+ /** 触发来源,用于区分不同入口的操作。 */
605
1415
  source?: string;
606
1416
  }
1417
+ /** 编辑器选区变化时的范围和选中文本。 */
607
1418
  interface EditorSelectionChange {
1419
+ /** 是否启用范围选择,或指定选择范围。 */
608
1420
  range: EditorRange;
1421
+ /** 显示文本。 */
609
1422
  text: string;
1423
+ /** 插入内容后相对于插入起点的光标偏移。 */
610
1424
  cursorOffset: number;
611
1425
  }
1426
+ /** 编辑器键盘事件及控制默认行为的方法。 */
612
1427
  interface EditorKeyDownEvent {
1428
+ /** 唯一标识;同一集合内应保持唯一且稳定,用于定位、渲染和状态关联。 */
613
1429
  key: string;
1430
+ /** 代码内容或按键代码。 */
614
1431
  code: string;
1432
+ /** 事件发生时是否按下 Ctrl 键。 */
615
1433
  ctrlKey: boolean;
1434
+ /** 事件发生时是否按下 Command 或 Windows 键。 */
616
1435
  metaKey: boolean;
1436
+ /** 事件发生时是否按下 Shift 键。 */
617
1437
  shiftKey: boolean;
1438
+ /** 事件发生时是否按下 Alt 键。 */
618
1439
  altKey: boolean;
1440
+ /** 是否为按住按键产生的重复事件。 */
619
1441
  repeat: boolean;
1442
+ /** 阻止事件的浏览器默认行为。 */
620
1443
  preventDefault(): void;
1444
+ /** 阻止事件继续传播。 */
621
1445
  stopPropagation(): void;
622
1446
  }
1447
+ /** 补全候选项类别,用于显示对应图标。 */
623
1448
  type EditorCompletionItemKind = "text" | "keyword" | "snippet" | "database" | "schema" | "table" | "view" | "column" | "function" | "procedure" | "value";
1449
+ /** 请求补全时的文档、光标和触发字符上下文。 */
624
1450
  interface EditorCompletionContext {
1451
+ /** 该项目对应的数据值,用于标识、选择或计算。 */
625
1452
  value: string;
1453
+ /** 文档起始位置到光标之前的文本。 */
626
1454
  textBeforeCursor: string;
1455
+ /** 当前行内光标之前的文本。 */
627
1456
  lineTextBeforeCursor: string;
1457
+ /** 光标所在位置的单词。 */
628
1458
  word: string;
1459
+ /** 显示位置或定位配置。 */
629
1460
  position: {
1461
+ /** 行号,从 1 开始。 */
630
1462
  lineNumber: number;
1463
+ /** 光标所在的列号,从 1 开始。 */
631
1464
  column: number;
1465
+ /** 相对于默认位置的偏移。 */
632
1466
  offset: number;
633
1467
  };
1468
+ /** 触发补全的字符。 */
634
1469
  triggerCharacter?: string;
635
1470
  }
1471
+ /** EditorCompletion的项目定义。 */
636
1472
  interface EditorCompletionItem {
1473
+ /** 展示给用户的名称,可传入文本或 React 节点。 */
637
1474
  label: string;
1475
+ /** 接受补全项后插入的文本。 */
638
1476
  insertText?: string;
1477
+ /** 补全项或节点的类别。 */
639
1478
  kind?: EditorCompletionItemKind;
1479
+ /** 简短的补充说明。 */
640
1480
  detail?: string;
1481
+ /** 补全项的详细说明文档。 */
641
1482
  documentation?: string;
1483
+ /** 用于补全过滤匹配的文本。 */
642
1484
  filterText?: string;
1485
+ /** 用于补全排序的文本。 */
643
1486
  sortText?: string;
1487
+ /** 是否优先选中该补全项。 */
644
1488
  preselect?: boolean;
1489
+ /** 输入后可确认此补全项的字符集合。 */
645
1490
  commitCharacters?: readonly string[];
1491
+ /** 插入文本的格式,支持普通文本或代码片段。 */
646
1492
  insertTextFormat?: "plain" | "snippet";
1493
+ /** 是否启用范围选择,或指定选择范围。 */
647
1494
  range?: EditorRange;
648
1495
  }
1496
+ /** 根据编辑器上下文生成补全候选项的函数。 */
649
1497
  type EditorCompletionProvider = (context: EditorCompletionContext) => readonly EditorCompletionItem[] | Promise<readonly EditorCompletionItem[]>;
1498
+ /** 编辑器可执行的命令名称。 */
650
1499
  type EditorCommand = "cut" | "copy" | "paste" | "selectAll";
1500
+ /** EditorContextMenu的项目定义。 */
651
1501
  interface EditorContextMenuItem {
1502
+ /** 唯一标识;同一集合内应保持唯一且稳定,用于定位、渲染和状态关联。 */
652
1503
  key: string;
1504
+ /** 展示给用户的名称,可传入文本或 React 节点。 */
653
1505
  label: string;
1506
+ /** 待执行的编辑命令。 */
654
1507
  command?: EditorCommand;
1508
+ /** 显示或绑定的快捷键。 */
655
1509
  shortcut?: string;
1510
+ /** 是否禁用交互。 */
656
1511
  disabled?: boolean | ((api: EditorHandle | null) => boolean);
1512
+ /** 点击时触发,参数为当前点击事件或项目上下文。 */
657
1513
  onClick?: (api: EditorHandle) => void;
658
1514
  }
1515
+ /** 代码编辑器的操作句柄。 */
659
1516
  interface EditorHandle {
1517
+ /** 将焦点移入控件。 */
660
1518
  focus(): void;
1519
+ /** 读取当前内容。 */
661
1520
  getValue(): string;
1521
+ /** 读取当前选区范围。 */
662
1522
  getSelection(): EditorRange | null;
1523
+ /** 读取当前选区的文本。 */
663
1524
  getSelectedText(): string;
1525
+ /** 在当前选区插入块内容。 */
664
1526
  insertBlock(content: string): void;
1527
+ /** 为选中行添加或移除行前缀。 */
665
1528
  prefixLines(prefix: string): void;
1529
+ /** 替换编辑器的全部内容。 */
666
1530
  replaceValue(content: string): void;
1531
+ /** 滚动到指定行并使其可见。 */
667
1532
  revealLine(line: number): void;
1533
+ /** 设置编辑器选区。 */
668
1534
  setSelection(range: EditorRange): void;
1535
+ /** 用指定前后文本包裹当前选区。 */
669
1536
  wrapSelection(prefix: string, suffix: string, placeholder?: string): void;
670
1537
  }
1538
+ /** 代码编辑器的属性配置。 */
671
1539
  interface EditorProps {
1540
+ /** 编辑器内容 */
672
1541
  value: string;
1542
+ /** 内容变化回调 */
673
1543
  onChange?: (value: string) => void;
1544
+ /** 实例初始化完成时调用,提供可用的实例或操作接口。 */
674
1545
  onReady?: (api: EditorHandle | null) => void;
1546
+ /** 编辑器选区变化时调用。 */
675
1547
  onSelectionChange?: (selection: EditorSelectionChange) => void;
1548
+ /** 键盘按下时调用,可用于处理快捷键。 */
676
1549
  onKeyDown?: (event: EditorKeyDownEvent) => void;
1550
+ /**
1551
+ * Monaco 语言标识
1552
+ * @defaultValue "plaintext"
1553
+ */
677
1554
  language?: EditorLanguage;
1555
+ /** 文件路径或文档标识,用于关联编辑器模型。 */
678
1556
  path?: string;
1557
+ /**
1558
+ 组件的配色主题。
1559
+ * @defaultValue "light"
1560
+ */
679
1561
  theme?: EditorTheme;
1562
+ /** Monaco 编辑器配置 */
680
1563
  options?: Monaco.editor.IStandaloneEditorConstructionOptions;
1564
+ /** 需要额外高亮的文档范围。 */
681
1565
  highlightRange?: EditorRange | null;
1566
+ /**
1567
+ * 在指定文本范围显示错误、警告或信息波浪线
1568
+ * @defaultValue []
1569
+ */
682
1570
  markers?: readonly EditorMarker[];
1571
+ /**
1572
+ * 右键菜单项目配置。
1573
+ * @defaultValue []
1574
+ */
683
1575
  contextMenuItems?: readonly EditorContextMenuItem[];
1576
+ /** 按当前文本和光标上下文异步提供智能提示 */
684
1577
  completionProvider?: EditorCompletionProvider;
1578
+ /**
1579
+ * 主动触发智能提示的字符
1580
+ * @defaultValue ["."]
1581
+ */
685
1582
  completionTriggerCharacters?: readonly string[];
1583
+ /**
1584
+ * 按空格时正常输入空格、关闭当前提示,并根据新的光标位置重新触发智能提示
1585
+ * @defaultValue false
1586
+ */
686
1587
  refreshSuggestionOnSpace?: boolean;
1588
+ /**
1589
+ * 附加到组件根节点的 CSS 类名。
1590
+ * @defaultValue ""
1591
+ */
687
1592
  className?: string;
1593
+ /**
1594
+ 控件的无障碍名称,供屏幕阅读器识别。
1595
+ * @defaultValue "代码编辑器"
1596
+ */
688
1597
  ariaLabel?: string;
1598
+ /**
1599
+ * 加载过程中的提示内容。
1600
+ * @defaultValue "正在加载编辑器…"
1601
+ */
689
1602
  loadingText?: string;
690
1603
  }
1604
+ /** 代码编辑器组件。 */
691
1605
  declare function Editor({ value, onChange, onReady, onSelectionChange, onKeyDown, language, path, theme, options, highlightRange, markers, contextMenuItems, completionProvider, completionTriggerCharacters, refreshSuggestionOnSpace, className, ariaLabel, loadingText, }: EditorProps): react.JSX.Element;
692
1606
 
1607
+ /** Markdown内容的属性配置。 */
693
1608
  interface MarkdownProps extends Omit<HTMLAttributes<HTMLElement>, "children"> {
1609
+ /** 需要渲染的 Markdown 源文本。 */
694
1610
  content: string;
1611
+ /**
1612
+ * 内容为空时显示的占位内容
1613
+ * @defaultValue "暂无 Markdown 内容"
1614
+ */
695
1615
  emptyText?: ReactNode;
1616
+ /** 图片加载失败时异步解析真实地址 */
696
1617
  resolveImageSrc?: (src: string) => string | Promise<string>;
1618
+ /**
1619
+ * 允许点击或键盘打开图片预览
1620
+ * @defaultValue true
1621
+ */
697
1622
  imagePreview?: boolean;
698
1623
  }
1624
+ /** Markdown内容组件。 */
699
1625
  declare function Markdown({ content, emptyText, resolveImageSrc, imagePreview, className, onClick, onKeyDown, ...props }: MarkdownProps): react.JSX.Element;
700
1626
 
1627
+ /** 数字输入的属性配置。 */
701
1628
  interface InputNumberProps extends Omit<InputHTMLAttributes<HTMLInputElement>, "defaultValue" | "onChange" | "prefix" | "size" | "type" | "value"> {
1629
+ /** 当前数值(受控) */
702
1630
  value?: number | null;
1631
+ /**
1632
+ * 初始数值
1633
+ * @defaultValue null
1634
+ */
703
1635
  defaultValue?: number | null;
1636
+ /** 数值变化回调 */
704
1637
  onChange?: (value: number | null) => void;
1638
+ /** 允许的最小值。 */
705
1639
  min?: number;
1640
+ /** 允许的最大值。 */
706
1641
  max?: number;
1642
+ /**
1643
+ * 每次改变的步长
1644
+ * @defaultValue 1
1645
+ */
707
1646
  step?: number;
1647
+ /** 固定小数位数 */
708
1648
  precision?: number;
1649
+ /** small / medium / large 高度为 22 / 30 / 38px;默认继承 Form,组件自身 size 优先 */
709
1650
  size?: ControlSize;
1651
+ /**
1652
+ * 当前状态,用于选择对应的状态样式。
1653
+ * @defaultValue "default"
1654
+ */
710
1655
  status?: ControlStatus;
1656
+ /** 输入框前缀 */
711
1657
  prefix?: ReactNode;
1658
+ /** 输入框后缀 */
712
1659
  suffix?: ReactNode;
1660
+ /**
1661
+ 是否显示操作控件。
1662
+ * @defaultValue true
1663
+ */
713
1664
  controls?: boolean;
1665
+ /** 占位文案的显示模式 */
714
1666
  placeholderMode?: InputPlaceholderMode;
715
1667
  }
1668
+ /** 数字输入组件。 */
716
1669
  declare const InputNumber: react.ForwardRefExoticComponent<InputNumberProps & react.RefAttributes<HTMLInputElement>>;
717
1670
 
1671
+ /** 独立选择弹框的配置。 */
718
1672
  interface SelectModalConfig extends Omit<ModalOpenConfig, "children" | "footer" | "onOk" | "type"> {
1673
+ /** 可供用户选择的候选项列表。 */
719
1674
  options: readonly SelectOption[];
1675
+ /** 弹框打开时的初始选中值;通过返回句柄 update({ value }) 可替换当前草稿。 */
720
1676
  value?: SelectChangeValue;
1677
+ /** 展示或交互模式;可选值见类型定义。 */
721
1678
  mode?: SelectProps["mode"];
1679
+ /** 在选项名称下方显示 value,下拉与弹框模式均支持;不影响按 value 搜索 */
722
1680
  showValue?: boolean;
1681
+ /** 弹框选项每行列数;长文本单行省略。 */
723
1682
  columns?: number;
1683
+ /** 允许的最大高度。 */
724
1684
  maxHeight?: number;
1685
+ /** 搜索框的占位提示文字。 */
725
1686
  searchPlaceholder?: string;
1687
+ /** 自定义搜索匹配函数,返回 true 时保留该选项。 */
726
1688
  filterOption?: SelectProps["filterOption"];
1689
+ /** 搜索条件变化或提交搜索时调用,具体参数见签名。 */
727
1690
  onSearch?: SelectProps["onSearch"];
1691
+ /** 确认后接收选中的值和对应选项;单选为单值,多选为数组。支持异步处理;返回 false 或抛出异常时保留弹框,允许重试。 */
728
1692
  onConfirm?: (value: SelectChangeValue, option: SelectOption | SelectOption[] | null) => ModalActionResult;
729
1693
  }
730
1694
  /** 无需渲染 Select,直接打开选择弹框。取消不提交,确认支持异步处理及返回 false 阻止关闭。 */
731
1695
  declare function openSelectModal(config: SelectModalConfig): OverlayApiHandle<SelectModalConfig>;
732
1696
 
1697
+ /** 矩形树图节点的种类。 */
733
1698
  type TreemapNodeKind = "directory" | "file";
1699
+ /** 可下钻矩形树图的节点,包含权重、子节点和业务数据。 */
734
1700
  interface TreemapNode {
1701
+ /** 唯一标识;同一集合内应保持唯一且稳定,用于定位、渲染和状态关联。 */
735
1702
  key: string;
1703
+ /** 展示给用户的名称,可传入文本或 React 节点。 */
736
1704
  label: string;
1705
+ /** 该项目对应的数据值,用于标识、选择或计算。 */
737
1706
  value: number;
1707
+ /** 补全项或节点的类别。 */
738
1708
  kind?: TreemapNodeKind;
1709
+ /** 显示颜色,可使用 CSS 颜色值。 */
739
1710
  color?: string;
1711
+ /** 附加的业务元数据。 */
740
1712
  meta?: ReactNode;
1713
+ /** 用于布局计算的权重值。 */
741
1714
  layoutValue?: number;
1715
+ /** 子内容;组件嵌套内容或当前节点的子项。 */
742
1716
  children?: readonly TreemapNode[];
1717
+ /** 是否包含子节点。 */
743
1718
  hasChildren?: boolean;
1719
+ /** 是否禁用交互。 */
744
1720
  disabled?: boolean;
745
1721
  }
1722
+ /** TreemapNode的点击事件上下文。 */
746
1723
  interface TreemapNodeClickInfo {
1724
+ /** 当前操作关联的节点数据。 */
747
1725
  node: TreemapNode;
1726
+ /** 是否处于展开状态。 */
748
1727
  expanded: boolean;
1728
+ /** 触发本次操作的原生事件。 */
749
1729
  nativeEvent: MouseEvent<HTMLElement>;
750
1730
  }
1731
+ /** 矩形树图的属性配置。 */
751
1732
  interface TreemapProps extends Omit<HTMLAttributes<HTMLDivElement>, "onChange"> {
1733
+ /** 用于渲染的数据集合。 */
752
1734
  data: readonly TreemapNode[];
1735
+ /**
1736
+ * 高亮节点键值
1737
+ * @defaultValue null
1738
+ */
753
1739
  activeKey?: string | null;
1740
+ /** 受控的展开节点标识集合。 */
754
1741
  expandedKeys?: readonly string[];
1742
+ /**
1743
+ * 初始化时展开的节点标识集合。
1744
+ * @defaultValue []
1745
+ */
755
1746
  defaultExpandedKeys?: readonly string[];
1747
+ /** 当前聚焦节点的唯一标识。 */
756
1748
  focusedKey?: string | null;
1749
+ /**
1750
+ * 初始化时聚焦的节点标识。
1751
+ * @defaultValue null
1752
+ */
757
1753
  defaultFocusedKey?: string | null;
1754
+ /**
1755
+ * 预设或自定义间距
1756
+ * @defaultValue 2
1757
+ */
758
1758
  gap?: number;
1759
+ /**
1760
+ * 标题区域高度。
1761
+ * @defaultValue 28
1762
+ */
759
1763
  headerHeight?: number;
1764
+ /**
1765
+ * 显示标签所需的最小宽度。
1766
+ * @defaultValue 26
1767
+ */
760
1768
  minLabelWidth?: number;
1769
+ /**
1770
+ * 显示标签所需的最小高度。
1771
+ * @defaultValue 18
1772
+ */
761
1773
  minLabelHeight?: number;
1774
+ /**
1775
+ * 矩形块的最小宽度。
1776
+ * @defaultValue 28
1777
+ */
762
1778
  minTileWidth?: number;
1779
+ /**
1780
+ * 矩形块的最小高度。
1781
+ * @defaultValue 18
1782
+ */
763
1783
  minTileHeight?: number;
1784
+ /**
1785
+ * 最大可见节点数,超出后合并为其他项
1786
+ * @defaultValue 180
1787
+ */
764
1788
  maxVisibleNodes?: number;
1789
+ /**
1790
+ * 没有数据时的显示内容。
1791
+ * @defaultValue "暂无数据"
1792
+ */
765
1793
  emptyContent?: ReactNode;
1794
+ /**
1795
+ 将数值格式化为显示文本的函数。
1796
+ * @defaultValue defaultValueFormatter
1797
+ */
766
1798
  valueFormatter?: (value: number, node: TreemapNode) => ReactNode;
1799
+ /** 自定义合并节点文案 */
767
1800
  overflowLabel?: (count: number) => string;
1801
+ /** 展开状态改变时调用。 */
768
1802
  onExpandedChange?: (keys: string[]) => void;
1803
+ /** 聚焦节点改变时调用。 */
769
1804
  onFocusedChange?: (key: string | null) => void;
1805
+ /** 节点点击回调 */
770
1806
  onNodeClick?: (info: TreemapNodeClickInfo) => void;
771
1807
  }
1808
+ /** 矩形树图组件。 */
772
1809
  declare function Treemap({ data, activeKey, expandedKeys, defaultExpandedKeys, focusedKey, defaultFocusedKey, gap, headerHeight, minLabelWidth, minLabelHeight, minTileWidth, minTileHeight, maxVisibleNodes, emptyContent, valueFormatter, overflowLabel, onExpandedChange, onFocusedChange, onNodeClick, className, style, ...props }: TreemapProps): react.JSX.Element;
773
1810
 
1811
+ /** 表格行或列的唯一标识类型。 */
774
1812
  type TableKey = Key;
1813
+ /** 表格列的固定方向。 */
775
1814
  type TableFixed = "left" | "right";
1815
+ /** 表格单元格的水平对齐方式。 */
776
1816
  type TableAlign = "left" | "center" | "right";
1817
+ /** 表格行高和字号的尺寸等级。 */
777
1818
  type TableSize = "small" | "medium" | "large";
1819
+ /** 经过表格插件处理的行数据及其层级和索引信息。 */
778
1820
  interface TableRow<T> {
1821
+ /** 唯一标识;同一集合内应保持唯一且稳定,用于定位、渲染和状态关联。 */
779
1822
  key: TableKey;
1823
+ /** 当前业务记录。 */
780
1824
  record: T;
1825
+ /** 记录在原始数据中的索引。 */
781
1826
  sourceIndex: number;
1827
+ /** 当前节点或行的嵌套深度。 */
782
1828
  depth: number;
1829
+ /** 附加的业务元数据。 */
783
1830
  meta: Record<string, unknown>;
784
1831
  }
1832
+ /** 单元格渲染和事件回调的上下文,包含行、列和索引。 */
785
1833
  interface TableCellRenderInfo<T> {
1834
+ /** 当前行记录。 */
786
1835
  row: TableRow<T>;
1836
+ /** 行索引,从 0 开始。 */
787
1837
  rowIndex: number;
1838
+ /** 当前单元格对应的完整列配置。 */
788
1839
  column: TableColumn<T>;
789
1840
  }
1841
+ /** TableMergeSticky的配置。 */
790
1842
  interface TableMergeStickyConfig<T> {
1843
+ /** 内容或选区与外边缘之间的内缩距离。 */
791
1844
  inset?: number;
1845
+ /** 组件或浮层的堆叠层级。 */
792
1846
  zIndex?: number;
1847
+ /** 附加到组件根节点的 CSS 类名。 */
793
1848
  className?: string;
1849
+ /** 组件根节点的内联样式。 */
794
1850
  style?: CSSProperties;
1851
+ /** 交叉轴对齐 */
795
1852
  align?: TableAlign;
1853
+ /** 读取当前内容。 */
796
1854
  getValue?: (record: T, index: number, rows: readonly T[]) => ReactNode;
797
1855
  }
1856
+ /** 表格的列定义,支持取值、渲染、固定、排序和分组表头。 */
798
1857
  interface TableColumn<T = Record<string, unknown>> {
1858
+ /** 唯一标识;同一集合内应保持唯一且稳定,用于定位、渲染和状态关联。 */
799
1859
  key: string;
1860
+ /** 代码内容或按键代码。 */
800
1861
  code?: string;
1862
+ /** 名称或字段标识。 */
801
1863
  name?: string;
1864
+ /** 标题内容,可传入文本或 React 节点。 */
802
1865
  title?: ReactNode;
1866
+ /** 补充说明内容。 */
803
1867
  description?: ReactNode;
1868
+ /** 读取单元格值的字段名或嵌套路径。 */
804
1869
  dataIndex?: keyof T | string | readonly string[];
1870
+ /** 列宽,单位为像素;拖拽调整后可由列设置插件持久化。 */
805
1871
  width?: number;
1872
+ /** 弹性布局的伸缩权重或 CSS flex 配置。 */
806
1873
  flex?: number;
1874
+ /** 是否根据单元格内容自动计算列宽。 */
807
1875
  autoWidth?: boolean;
1876
+ /** 允许的最小宽度。 */
808
1877
  minWidth?: number;
1878
+ /** 允许的最大宽度。 */
809
1879
  maxWidth?: number;
1880
+ /** 交叉轴对齐 */
810
1881
  align?: TableAlign;
1882
+ /** 固定列位置:left 固定在左侧,right 固定在右侧;未设置时随横向滚动。 */
811
1883
  fixed?: TableFixed | boolean;
1884
+ /** 是否隐藏此项。 */
812
1885
  hidden?: boolean;
813
1886
  /** 默认单行显示并省略溢出内容(含 Space 标签组);设为 false 允许多行。 */
814
1887
  ellipsis?: boolean;
1888
+ /** 是否使用 Sia Tooltip 显示完整文本;默认 false,不生成浏览器原生 title。 */
815
1889
  showTitle?: boolean;
1890
+ /** 是否允许该列排序。 */
816
1891
  sortable?: boolean;
1892
+ /** 是否允许该列筛选。 */
817
1893
  filterable?: boolean;
1894
+ /** 纯文本编辑;text 用于受控内容,onChange 在保存时触发 */
818
1895
  editable?: boolean | TableEditableCellConfig<T>;
1896
+ /** 是否将该列包含在导出结果中。 */
819
1897
  exportable?: boolean;
1898
+ /** 将单元格值转换为导出内容的函数。 */
820
1899
  exportRender?: (value: unknown, record: T, index: number, info: TableCellRenderInfo<T>) => ReactNode;
1900
+ /** 单元格跨越的行数,或按行计算跨行数量。 */
821
1901
  rowSpan?: boolean | keyof T | string | readonly string[] | ((record: T, index: number, rows: readonly T[]) => unknown);
1902
+ /** 合并单元格是否随滚动保持粘性定位。 */
822
1903
  mergeSticky?: boolean | TableMergeStickyConfig<T>;
1904
+ /** 合计行对此列的求和方式或求和值。 */
823
1905
  sum?: boolean;
1906
+ /** 子内容;组件嵌套内容或当前节点的子项。 */
824
1907
  children?: readonly TableColumn<T>[];
1908
+ /** 自定义数据单元格内容,接收该列的值、行数据和单元格上下文。 */
825
1909
  render?: (value: unknown, record: T, index: number, info: TableCellRenderInfo<T>) => ReactNode;
1910
+ /** 自定义列头内容。 */
826
1911
  renderHeader?: (column: TableColumn<T>, context: TablePluginContext<T, any>) => ReactNode;
1912
+ /** 数据单元格的 CSS 类名,也可按单元格计算。 */
827
1913
  cellClassName?: string | ((record: T, index: number) => string);
1914
+ /** 表头单元格的附加 CSS 类名。 */
828
1915
  headerClassName?: string;
1916
+ /** 附加的业务元数据。 */
829
1917
  meta?: Record<string, unknown>;
830
1918
  }
1919
+ /** TableEditableCell的类型标识。 */
831
1920
  type TableEditableCellType = "input" | "inputNumber" | "select" | "custom";
1921
+ /** TableEditableCell的配置。 */
832
1922
  interface TableEditableCellConfig<T> {
1923
+ /** 类型标识,用于选择对应的表现形式。 */
833
1924
  type?: TableEditableCellType;
1925
+ /** 可供用户选择的候选项列表。 */
834
1926
  options?: readonly {
1927
+ /** 展示给用户的名称,可传入文本或 React 节点。 */
835
1928
  label: ReactNode;
1929
+ /** 该项目对应的数据值,用于标识、选择或计算。 */
836
1930
  value: string | number;
837
1931
  }[];
1932
+ /** 自定义单元格编辑控件。 */
838
1933
  editRender?: (record: T, save: (value: unknown) => void, cancel: () => void) => ReactNode;
1934
+ /** 判断当前单元格是否允许编辑。 */
839
1935
  canEdit?: (record: T) => boolean;
840
1936
  }
1937
+ /** 表格插件执行时的上下文,提供数据、列、状态和事件操作。 */
841
1938
  interface TablePluginContext<T, S = unknown> {
1939
+ /** 插件唯一标识。 */
842
1940
  readonly pluginId: string;
1941
+ /** 未经插件处理的原始数据。 */
843
1942
  readonly sourceData: readonly T[];
1943
+ /** 未经插件转换的基础列配置。 */
844
1944
  readonly baseColumns: readonly TableColumn<T>[];
1945
+ /** 默认可见行数 */
845
1946
  readonly rows: readonly TableRow<T>[];
1947
+ /** 列配置或选项布局列数,具体类型见签名。 */
846
1948
  readonly columns: readonly TableColumn<T>[];
1949
+ /** 当前状态快照。 */
847
1950
  readonly state: S;
1951
+ /** 读取记录的唯一标识。 */
848
1952
  getRowKey: (record: T, index: number) => TableKey;
1953
+ /** 读取当前状态。 */
849
1954
  getState: <Value = unknown>(pluginId: string) => Value | undefined;
1955
+ /** 更新当前状态,可传入基于旧状态的更新函数。 */
850
1956
  setState: (next: S | ((previous: S) => S)) => void;
1957
+ /** 更新指定插件的状态。 */
851
1958
  setPluginState: <Value>(pluginId: string, next: Value | ((previous: Value) => Value)) => void;
1959
+ /** 按插件标识获取该插件暴露的 API。 */
852
1960
  getPluginApi: <Api = unknown>(pluginId: string) => Api | undefined;
1961
+ /** 发出事件,通知已注册的插件监听者。 */
853
1962
  emit: (event: TablePluginEvent) => void;
854
1963
  }
1964
+ /** 表格插件间传递的事件,包含类型、来源和负载。 */
855
1965
  interface TablePluginEvent {
1966
+ /** 类型标识,用于选择对应的表现形式。 */
856
1967
  type: string;
1968
+ /** 触发来源,用于区分不同入口的操作。 */
857
1969
  source: string;
1970
+ /** 事件携带的数据。 */
858
1971
  payload?: unknown;
859
1972
  }
1973
+ /** TablePluginCell的属性配置。 */
860
1974
  interface TablePluginCellProps {
1975
+ /** 单元格跨越的行数,或按行计算跨行数量。 */
861
1976
  rowSpan?: number;
1977
+ /** 单元格跨越的列数。 */
862
1978
  colSpan?: number;
1979
+ /** 是否隐藏此项。 */
863
1980
  hidden?: boolean;
1981
+ /** 附加到组件根节点的 CSS 类名。 */
864
1982
  className?: string;
1983
+ /** 组件根节点的内联样式。 */
865
1984
  style?: CSSProperties;
1985
+ /** 需要显示的内容,支持文本或 React 节点。 */
866
1986
  content?: ReactNode;
867
1987
  }
1988
+ /** TablePluginHeaderCell的属性配置。 */
868
1989
  interface TablePluginHeaderCellProps {
1990
+ /** 附加到组件根节点的 CSS 类名。 */
869
1991
  className?: string;
1992
+ /** 组件根节点的内联样式。 */
870
1993
  style?: CSSProperties;
871
1994
  }
1995
+ /** 表格插件契约,提供数据转换、渲染扩展、事件监听和对外 API。 */
872
1996
  interface TablePlugin<T, S = unknown, Api = unknown> {
1997
+ /** 唯一标识,用于关联实例或插件。 */
873
1998
  id: string;
1999
+ /** 排序位置或排序方向。 */
874
2000
  order?: number;
2001
+ /** 是否禁用虚拟渲染。 */
875
2002
  disableVirtual?: boolean;
2003
+ /** 插件或功能初始化时的状态。 */
876
2004
  initialState?: S | (() => S);
2005
+ /** 转换列配置;返回值传递给后续插件和表格渲染。 */
877
2006
  transformColumns?: (columns: readonly TableColumn<T>[], context: TablePluginContext<T, S>) => readonly TableColumn<T>[];
2007
+ /** 转换行数据;返回值传递给后续插件和表格渲染。 */
878
2008
  transformRows?: (rows: readonly TableRow<T>[], context: TablePluginContext<T, S>) => readonly TableRow<T>[];
2009
+ /** 渲染表格工具栏起始区域。 */
879
2010
  renderToolbarStart?: (context: TablePluginContext<T, S>) => ReactNode;
2011
+ /** 渲染表格工具栏末尾区域。 */
880
2012
  renderToolbarEnd?: (context: TablePluginContext<T, S>) => ReactNode;
2013
+ /** 渲染表格合计区域。 */
881
2014
  renderSummary?: (context: TablePluginContext<T, S>) => readonly TableSummaryRow[] | null;
2015
+ /** 渲染底部内容。 */
882
2016
  renderFooter?: (context: TablePluginContext<T, S>) => ReactNode;
2017
+ /** 渲染覆盖层或弹出面板。 */
883
2018
  renderOverlay?: (context: TablePluginContext<T, S>) => ReactNode;
2019
+ /** 根据行信息生成 CSS 类名。 */
884
2020
  getRowClassName?: (row: TableRow<T>, context: TablePluginContext<T, S>) => string;
2021
+ /** 根据单元格上下文生成附加属性。 */
885
2022
  getCellProps?: (row: TableRow<T>, column: TableColumn<T>, context: TablePluginContext<T, S>) => TablePluginCellProps | void;
2023
+ /** 根据列信息生成表头附加属性。 */
886
2024
  getHeaderCellProps?: (column: TableColumn<T>, context: TablePluginContext<T, S>) => TablePluginHeaderCellProps | void;
2025
+ /** 点击行时调用。 */
887
2026
  onRowClick?: (row: TableRow<T>, context: TablePluginContext<T, S>) => void;
2027
+ /** 鼠标进入行时调用。 */
888
2028
  onRowMouseEnter?: (row: TableRow<T>, context: TablePluginContext<T, S>) => void;
2029
+ /** 鼠标离开行时调用。 */
889
2030
  onRowMouseLeave?: (row: TableRow<T>, context: TablePluginContext<T, S>) => void;
2031
+ /** 鼠标进入单元格时调用。 */
890
2032
  onCellMouseEnter?: (row: TableRow<T>, column: TableColumn<T>, context: TablePluginContext<T, S>) => void;
2033
+ /** 鼠标离开单元格时调用。 */
891
2034
  onCellMouseLeave?: (row: TableRow<T>, column: TableColumn<T>, context: TablePluginContext<T, S>) => void;
2035
+ /** 点击单元格时调用。 */
892
2036
  onCellClick?: (row: TableRow<T>, column: TableColumn<T>, event: MouseEvent<HTMLTableCellElement>, context: TablePluginContext<T, S>) => void;
2037
+ /** 指针在单元格按下时调用。 */
893
2038
  onCellPointerDown?: (row: TableRow<T>, column: TableColumn<T>, event: PointerEvent<HTMLTableCellElement>, context: TablePluginContext<T, S>) => void;
2039
+ /** 指针在单元格移动时调用。 */
894
2040
  onCellPointerMove?: (row: TableRow<T>, column: TableColumn<T>, event: PointerEvent<HTMLTableCellElement>, context: TablePluginContext<T, S>) => void;
2041
+ /** 指针在表头按下时调用。 */
895
2042
  onHeaderPointerDown?: (column: TableColumn<T>, event: PointerEvent<HTMLTableCellElement>, context: TablePluginContext<T, S>) => void;
2043
+ /** 指针在表头移动时调用。 */
896
2044
  onHeaderPointerMove?: (column: TableColumn<T>, event: PointerEvent<HTMLTableCellElement>, context: TablePluginContext<T, S>) => void;
2045
+ /** 插件挂载时调用;可返回清理函数,在卸载时执行。 */
897
2046
  onMount?: (context: TablePluginContext<T, S>) => void | (() => void);
2047
+ /** 接收其他插件或表格发出的事件。 */
898
2048
  onEvent?: (event: TablePluginEvent, context: TablePluginContext<T, S>) => void;
2049
+ /** 创建插件对外暴露的操作 API。 */
899
2050
  getApi?: (context: TablePluginContext<T, S>) => Api;
900
2051
  }
2052
+ /** 可组合到 Table.plugins 中的表格插件类型。 */
901
2053
  type AnyTablePlugin<T> = TablePlugin<T, any, any>;
2054
+ /** 一条小计或总计行的标签和单元格内容。 */
902
2055
  interface TableSummaryRow {
2056
+ /** 唯一标识;同一集合内应保持唯一且稳定,用于定位、渲染和状态关联。 */
903
2057
  key: string;
2058
+ /** 展示给用户的名称,可传入文本或 React 节点。 */
904
2059
  label?: ReactNode;
2060
+ /** 字段值或选中值的集合。 */
905
2061
  values: Record<string, ReactNode>;
2062
+ /** 附加到组件根节点的 CSS 类名。 */
906
2063
  className?: string;
907
2064
  }
2065
+ /** 表格的属性配置。 */
908
2066
  interface TableProps<T extends Record<string, unknown> = Record<string, unknown>> extends Omit<HTMLAttributes<HTMLDivElement>, "children"> {
2067
+ /** 表格或列表的原始数据集合。 */
909
2068
  dataSource?: readonly T[];
2069
+ /** 表格列定义;支持 children 构建分组表头。 */
910
2070
  columns?: readonly TableColumn<T>[];
2071
+ /** 行唯一键字段或计算函数 */
911
2072
  rowKey?: keyof T | string | ((record: T, index: number) => TableKey);
912
2073
  /** 默认启用行悬停高亮;传入 createHighlightPlugin({ row: false }) 可关闭。 */
913
2074
  plugins?: readonly AnyTablePlugin<T>[];
2075
+ /** 是否处于加载状态。 */
914
2076
  loading?: boolean;
2077
+ /** 内容为空时显示的占位内容 */
915
2078
  emptyText?: ReactNode;
2079
+ /** 高度;数值按像素处理,字符串可使用 CSS 尺寸。 */
916
2080
  height?: number | string;
2081
+ /** 表格滚动区域的高度。 */
917
2082
  tableHeight?: number | string;
2083
+ /** 表格密度 */
918
2084
  size?: TableSize;
2085
+ /** 是否显示边框。 */
919
2086
  bordered?: boolean;
920
2087
  /** 是否显示行分隔线(含表头和汇总行),默认 true。 */
921
2088
  rowBordered?: boolean;
@@ -923,297 +2090,538 @@ interface TableProps<T extends Record<string, unknown> = Record<string, unknown>
923
2090
  columnBordered?: boolean;
924
2091
  /** 是否将工具栏纳入表格边框,默认 false;表格主体边框仍由 bordered 控制。 */
925
2092
  toolbarBordered?: boolean;
2093
+ /** 是否显示隔行背景。 */
926
2094
  striped?: boolean;
2095
+ /** 长列表启用窗口化渲染 */
927
2096
  virtual?: boolean;
2097
+ /** 启用虚拟滚动的选项数量 */
928
2098
  virtualThreshold?: number;
2099
+ /** 行高度,虚拟滚动用其计算行位置。 */
929
2100
  rowHeight?: number;
2101
+ /** 虚拟列表在可视区域前后额外渲染的数量。 */
930
2102
  overscan?: number;
2103
+ /** 滚动时是否固定表头。 */
931
2104
  stickyHeader?: boolean;
2105
+ /** 是否允许拖拽表头边界调整列宽;默认启用内置列宽调整插件。 */
932
2106
  resizable?: boolean;
2107
+ /** 点击行时调用。 */
933
2108
  onRowClick?: (record: T, index: number) => void;
2109
+ /** 双击行时调用。 */
934
2110
  onRowDoubleClick?: (record: T, index: number) => void;
2111
+ /** 单元格右键事件,可用于业务上下文菜单 */
935
2112
  onCellContextMenu?: (record: T, column: TableColumn<T>, index: number, event: MouseEvent<HTMLTableCellElement>) => void;
2113
+ /** 行的 CSS 类名或计算函数。 */
936
2114
  rowClassName?: string | ((record: T, index: number) => string);
2115
+ /** 表格元素的内联样式。 */
937
2116
  tableStyle?: CSSProperties;
938
2117
  }
2118
+ /** 表格的实例引用接口。 */
939
2119
  interface TableRef<T> {
2120
+ /** 读取插件当前处理的行数据。 */
940
2121
  getRows: () => readonly T[];
2122
+ /** 读取当前表格列配置。 */
941
2123
  getColumns: () => readonly TableColumn<T>[];
2124
+ /** 按插件标识获取该插件暴露的 API。 */
942
2125
  getPluginApi: <Api = unknown>(pluginId: string) => Api | undefined;
2126
+ /** 滚动到指定位置。 */
943
2127
  scrollTo: (options: ScrollToOptions) => void;
2128
+ /** 切换加载状态。 */
944
2129
  setLoading: (loading: boolean) => void;
2130
+ /** 读取当前分页状态。 */
945
2131
  getPage: () => {
2132
+ /** 当前页码、步骤或播放位置,具体取值见组件类型。 */
946
2133
  current: number;
2134
+ /** 每页显示的记录数。 */
947
2135
  pageSize: number;
948
2136
  };
2137
+ /** 设置当前页码与分页参数。 */
949
2138
  setPage: (page: Partial<{
2139
+ /** 当前页码、步骤或播放位置,具体取值见组件类型。 */
950
2140
  current: number;
2141
+ /** 每页显示的记录数。 */
951
2142
  pageSize: number;
952
2143
  }>) => void;
2144
+ /** 清空当前选择。 */
953
2145
  clearSelection: () => void;
2146
+ /** 设置选中行标识集合。 */
954
2147
  setSelectedKeys: (keys: readonly TableKey[]) => void;
2148
+ /** 读取当前选中的行数据。 */
955
2149
  getSelectedRows: () => readonly T[];
2150
+ /** 读取当前排序列及方向。 */
956
2151
  getSortInfo: () => TableSortInfo | null;
2152
+ /** 读取当前列设置。 */
957
2153
  getColumnSettings: () => readonly TableColumnSettingItem[];
2154
+ /** 打开列设置面板。 */
958
2155
  openColumnSetting: () => void;
2156
+ /** 将分页状态转换为业务请求需要的参数。 */
959
2157
  generatePageParams: <Model extends Record<string, unknown>>(model: Model) => Model & TablePageParams;
2158
+ /** 请求记录总数的函数。 */
960
2159
  requestCount: (model?: unknown) => Promise<void>;
961
2160
  }
2161
+ /** 当前排序列和排序方向。 */
962
2162
  interface TableSortInfo {
2163
+ /** 字段名或字段路径。 */
963
2164
  field: string;
2165
+ /** 排序位置或排序方向。 */
964
2166
  order: "ascend" | "descend" | null;
2167
+ /** 配置存储的作用域,用于隔离不同模块和业务表格。 */
965
2168
  scope?: "page" | "all";
966
2169
  }
2170
+ /** 传递给业务数据请求的分页参数。 */
967
2171
  interface TablePageParams {
2172
+ /** 当前页码、步骤或播放位置,具体取值见组件类型。 */
968
2173
  current: number;
2174
+ /** 当前页索引。 */
969
2175
  pageIndex: number;
2176
+ /** 每页显示的记录数。 */
970
2177
  pageSize: number;
2178
+ /** 请求数据时跳过的记录数。 */
971
2179
  skipCount: number;
2180
+ /** 请求数据时最多返回的记录数。 */
972
2181
  maxResultCount: number;
973
2182
  }
2183
+ /** TableColumnSetting的项目定义。 */
974
2184
  interface TableColumnSettingItem {
2185
+ /** 唯一标识;同一集合内应保持唯一且稳定,用于定位、渲染和状态关联。 */
975
2186
  key: string;
2187
+ /** 宽度;数值按像素处理,字符串可使用 CSS 尺寸。 */
976
2188
  width?: number;
2189
+ /** 列固定位置,left 固定左侧,right 固定右侧。 */
977
2190
  fixed?: TableFixed;
2191
+ /** 是否可见。 */
978
2192
  visible: boolean;
2193
+ /** 排序位置或排序方向。 */
979
2194
  order: number;
980
2195
  }
2196
+ /** 可持久化的表格列设置和分页大小快照。 */
981
2197
  interface TableSettingsSnapshot {
2198
+ /** 列配置或选项布局列数,具体类型见签名。 */
982
2199
  columns?: readonly TableColumnSettingItem[];
2200
+ /** 每页显示的记录数。 */
983
2201
  pageSize?: number;
2202
+ /** 配置格式版本号,用于兼容历史数据。 */
984
2203
  version?: number;
985
2204
  }
2205
+ /** 读取与保存表格设置的适配器契约。 */
986
2206
  interface TableSettingsAdapter {
2207
+ /** 按 scope 读取表格配置;首次挂载及打开列设置时调用。无已保存配置时返回 null 或 undefined。 */
987
2208
  load: (scope: {
2209
+ /** 所属业务模块名称。 */
988
2210
  moduleName: string;
2211
+ /** 同一模块内用于区分表格配置的业务标识。 */
989
2212
  businessKey: string;
990
2213
  }) => Promise<TableSettingsSnapshot | null>;
2214
+ /** 按 scope 保存完整的列设置快照。用于列设置应用、拖拽列宽结束或分页大小变化后的持久化,可返回 Promise。 */
991
2215
  save: (scope: {
2216
+ /** 所属业务模块名称。 */
992
2217
  moduleName: string;
2218
+ /** 同一模块内用于区分表格配置的业务标识。 */
993
2219
  businessKey: string;
994
2220
  }, settings: TableSettingsSnapshot) => Promise<void>;
995
2221
  }
996
2222
 
2223
+ /** 表格组件。 */
997
2224
  declare const Table: <T extends Record<string, unknown> = Record<string, unknown>>(props: TableProps<T> & {
998
2225
  ref?: Ref<TableRef<T>>;
999
2226
  }) => ReactElement | null;
1000
2227
 
2228
+ /** TableColumnTransform的插件配置。 */
1001
2229
  interface TableColumnTransformPluginOptions<T> {
2230
+ /** 插入在原有列之前的列配置。 */
1002
2231
  prepend?: readonly TableColumn<T>[];
2232
+ /** 追加在原有列之后的列配置。 */
1003
2233
  append?: readonly TableColumn<T>[];
2234
+ /** 转换表格列配置,返回用于后续处理和渲染的新列集合。 */
1004
2235
  transform?: (columns: readonly TableColumn<T>[]) => readonly TableColumn<T>[];
1005
2236
  }
2237
+ /** 创建表格列转换插件。将返回值加入 Table 的 plugins 后生效。 */
1006
2238
  declare function createColumnTransformPlugin<T extends Record<string, unknown>>(options: TableColumnTransformPluginOptions<T>): TablePlugin<T, undefined>;
2239
+ /** TableHighlight的值类型。 */
1007
2240
  type TableHighlightValue = boolean | CSSProperties;
2241
+ /** TableHighlight的插件配置。 */
1008
2242
  interface TableHighlightPluginOptions {
2243
+ /** 当前行记录。 */
1009
2244
  row?: TableHighlightValue;
2245
+ /** 列号或当前列配置,具体含义由所在类型决定。 */
1010
2246
  column?: TableHighlightValue;
2247
+ /** 当前单元格的配置或状态。 */
1011
2248
  cell?: TableHighlightValue;
1012
2249
  }
2250
+ /** 当前高亮的行和列。 */
1013
2251
  interface HighlightState {
2252
+ /** 当前高亮行的标识。 */
1014
2253
  rowKey?: TableKey;
2254
+ /** 当前高亮列的标识。 */
1015
2255
  columnKey?: string;
1016
2256
  }
2257
+ /** 创建表格行和单元格高亮插件。将返回值加入 Table 的 plugins 后生效。 */
1017
2258
  declare function createHighlightPlugin<T extends Record<string, unknown>>(options?: TableHighlightPluginOptions): TablePlugin<T, HighlightState>;
2259
+ /** 通过行标识和列标识定位一个单元格。 */
1018
2260
  interface TableCellAddress {
2261
+ /** 行唯一键字段或计算函数 */
1019
2262
  rowKey: TableKey;
2263
+ /** 列的唯一标识,对应 TableColumn.key。 */
1020
2264
  columnKey: string;
1021
2265
  }
2266
+ /** 通过起止单元格定义的选区。 */
1022
2267
  interface TableCellRange {
2268
+ /** 单元格选区的起始锚点。 */
1023
2269
  anchor: TableCellAddress;
2270
+ /** 将焦点移入控件。 */
1024
2271
  focus: TableCellAddress;
1025
2272
  }
2273
+ /** 选区内一个单元格的值和行列上下文。 */
1026
2274
  interface TableSelectedCell<T> {
2275
+ /** 行唯一键字段或计算函数 */
1027
2276
  rowKey: TableKey;
2277
+ /** 列的唯一标识,对应 TableColumn.key。 */
1028
2278
  columnKey: string;
2279
+ /** 当前业务记录。 */
1029
2280
  record: T;
2281
+ /** 列号或当前列配置,具体含义由所在类型决定。 */
1030
2282
  column: TableColumn<T>;
2283
+ /** 该项目对应的数据值,用于标识、选择或计算。 */
1031
2284
  value: unknown;
2285
+ /** 行索引,从 0 开始。 */
1032
2286
  rowIndex: number;
2287
+ /** 列索引,从 0 开始。 */
1033
2288
  columnIndex: number;
1034
2289
  }
2290
+ /** TableCellSelection的插件配置。 */
1035
2291
  interface TableCellSelectionPluginOptions<T> {
2292
+ /** 初始化时的单元格选区。 */
1036
2293
  defaultRange?: TableCellRange | null;
2294
+ /** 是否包含勾选、序号等工具列。 */
1037
2295
  includeUtilityColumns?: boolean;
2296
+ /** 复制完整文本,可指定复制内容和成功回调 */
1038
2297
  copyable?: boolean;
2298
+ /** 判断指定单元格是否允许加入选区。 */
1039
2299
  isCellSelectable?: (record: T, column: TableColumn<T>, rowIndex: number, columnIndex: number) => boolean;
2300
+ /** 值发生变化时调用;参数为新值及类型声明中列出的关联信息。 */
1040
2301
  onChange?: (range: TableCellRange | null, cells: readonly TableSelectedCell<T>[]) => void;
2302
+ /** 复制操作触发后的回调。 */
1041
2303
  onCopy?: (text: string, cells: readonly TableSelectedCell<T>[]) => void;
1042
2304
  }
2305
+ /** 表格单元格选区状态。 */
1043
2306
  interface CellSelectionState {
2307
+ /** 当前单元格选区,null 表示无选区。 */
1044
2308
  range: TableCellRange | null;
2309
+ /** 复制选区时是否包含表头。 */
1045
2310
  includeHeaders: boolean;
2311
+ /** 通过表头选择的列标识。 */
1046
2312
  selectedHeaderKey: string | null;
1047
2313
  }
2314
+ /** TableCellSelection的操作接口。 */
1048
2315
  interface TableCellSelectionApi<T> {
2316
+ /** 读取当前单元格选区。 */
1049
2317
  getRange: () => TableCellRange | null;
2318
+ /** 设置单元格选区,传入空值可清除选区。 */
1050
2319
  setRange: (range: TableCellRange | null) => void;
2320
+ /** 清空当前值或内容。 */
1051
2321
  clear: () => void;
2322
+ /** 读取当前选区中的单元格信息。 */
1052
2323
  getSelectedCells: () => readonly TableSelectedCell<T>[];
2324
+ /** 将当前选区转换为可复制文本。 */
1053
2325
  getCopyText: () => string;
1054
2326
  }
2327
+ /** 创建表格单元格区域选择插件。将返回值加入 Table 的 plugins 后生效。 */
1055
2328
  declare function createCellSelectionPlugin<T extends Record<string, unknown>>(options?: TableCellSelectionPluginOptions<T>): TablePlugin<T, CellSelectionState, TableCellSelectionApi<T>>;
2329
+ /** TableRowSpan的插件配置。 */
1056
2330
  interface TableRowSpanPluginOptions<T> {
2331
+ /** 列配置或选项布局列数,具体类型见签名。 */
1057
2332
  columns?: readonly string[];
2333
+ /** 自定义两个值的相等性判断。 */
1058
2334
  equals?: (left: unknown, right: unknown, column: TableColumn<T>) => boolean;
2335
+ /** 是否禁用虚拟渲染。 */
1059
2336
  disableVirtual?: boolean;
1060
2337
  }
2338
+ /** 创建表格跨行合并插件。将返回值加入 Table 的 plugins 后生效。 */
1061
2339
  declare function createRowSpanPlugin<T extends Record<string, unknown>>(options?: TableRowSpanPluginOptions<T>): TablePlugin<T, undefined>;
2340
+ /** TableSelection的模式类型。 */
1062
2341
  type TableSelectionMode = "single" | "multiple" | "row";
2342
+ /** TableSelection的插件配置。 */
1063
2343
  interface TableSelectionPluginOptions<T> {
2344
+ /** 展示或交互模式;可选值见类型定义。 */
1064
2345
  mode?: TableSelectionMode;
2346
+ /** 当前选中项目的标识集合;传入后由外部控制。 */
1065
2347
  selectedKeys?: readonly TableKey[];
2348
+ /** 非受控模式下初始选中的项目标识集合。 */
1066
2349
  defaultSelectedKeys?: readonly TableKey[];
2350
+ /** 值发生变化时调用;参数为新值及类型声明中列出的关联信息。 */
1067
2351
  onChange?: (keys: readonly TableKey[], rows: readonly T[]) => void;
2352
+ /** 按行判断其勾选框是否禁用。 */
1068
2353
  getCheckboxDisabled?: (record: T) => boolean;
2354
+ /** 是否展示已选记录数。 */
1069
2355
  showSelectedCount?: boolean;
2356
+ /** 切换页面或数据源时是否保留已选行标识。 */
1070
2357
  preserveSelectedRowKeys?: boolean;
2358
+ /** 是否显示跨页保留勾选的开关。 */
1071
2359
  showPreserveSelectedRowKeys?: boolean;
2360
+ /** 已选记录面板的列数。 */
1072
2361
  selectionPanelColumnCount?: number;
2362
+ /** 已选记录面板最多展示的条数。 */
1073
2363
  selectionPanelMaxCount?: number;
2364
+ /** 跨页保留勾选开关变化时调用。 */
1074
2365
  onPreserveSelectedRowKeysChange?: (preserve: boolean) => void;
2366
+ /** 行数据中存放子行的字段名。 */
1075
2367
  childrenColumnName?: string;
1076
2368
  }
2369
+ /** 行勾选和已选面板状态。 */
1077
2370
  interface SelectionState {
2371
+ /** 当前选中的行标识。 */
1078
2372
  selectedKeys: readonly TableKey[];
2373
+ /** 是否跨页保留选中行。 */
1079
2374
  preserveSelectedRowKeys: boolean;
2375
+ /** 已选记录面板是否打开。 */
1080
2376
  panelOpen: boolean;
1081
2377
  }
2378
+ /** TableSelection的操作接口。 */
1082
2379
  interface TableSelectionApi<T> {
2380
+ /** 读取当前选中行的标识。 */
1083
2381
  getSelectedKeys: () => readonly TableKey[];
2382
+ /** 设置选中行标识集合。 */
1084
2383
  setSelectedKeys: (keys: readonly TableKey[]) => void;
2384
+ /** 清空当前值或内容。 */
1085
2385
  clear: () => void;
2386
+ /** 切换指定行的选中状态。 */
1086
2387
  toggle: (key: TableKey, checked?: boolean) => void;
2388
+ /** 读取当前选中的行数据。 */
1087
2389
  getSelectedRows: () => readonly T[];
2390
+ /** 读取是否跨页保留选中行。 */
1088
2391
  getPreserveSelectedRowKeys: () => boolean;
2392
+ /** 设置是否跨页保留选中行。 */
1089
2393
  setPreserveSelectedRowKeys: (preserve: boolean) => void;
1090
2394
  }
2395
+ /** 创建表格行勾选插件。将返回值加入 Table 的 plugins 后生效。 */
1091
2396
  declare function createSelectionPlugin<T extends Record<string, unknown>>(options?: TableSelectionPluginOptions<T>): TablePlugin<T, SelectionState, TableSelectionApi<T>>;
2397
+ /** TableSort的插件配置。 */
1092
2398
  interface TableSortPluginOptions {
2399
+ /** 展示或交互模式;可选值见类型定义。 */
1093
2400
  mode?: "local" | "remote";
2401
+ /** 配置存储的作用域,用于隔离不同模块和业务表格。 */
1094
2402
  scope?: "page" | "all";
2403
+ /** 该项目对应的数据值,用于标识、选择或计算。 */
1095
2404
  value?: TableSortInfo | null;
2405
+ /** 非受控模式的初始值,仅在初始化时使用。 */
1096
2406
  defaultValue?: TableSortInfo | null;
2407
+ /** 值发生变化时调用;参数为新值及类型声明中列出的关联信息。 */
1097
2408
  onChange?: (sort: TableSortInfo) => void;
2409
+ /** 比较两条记录的排序函数;负数表示前者排在前面。 */
1098
2410
  compare?: (a: unknown, b: unknown, field: string) => number;
1099
2411
  }
2412
+ /** 表格排序状态。 */
1100
2413
  interface SortState {
2414
+ /** 当前排序配置。 */
1101
2415
  sort: TableSortInfo | null;
1102
2416
  }
2417
+ /** TableSort的操作接口。 */
1103
2418
  interface TableSortApi {
2419
+ /** 读取当前排序列及方向。 */
1104
2420
  getSortInfo: () => TableSortInfo | null;
2421
+ /** 设置当前排序信息。 */
1105
2422
  setSortInfo: (sort: TableSortInfo | null) => void;
2423
+ /** 清空当前值或内容。 */
1106
2424
  clear: () => void;
1107
2425
  }
2426
+ /** 创建表格列排序插件。将返回值加入 Table 的 plugins 后生效。 */
1108
2427
  declare function createSortPlugin<T extends Record<string, unknown>>(options?: TableSortPluginOptions): TablePlugin<T, SortState, TableSortApi>;
2428
+ /** 列标识到筛选条件的映射。 */
1109
2429
  type TableFilterValues = Readonly<Record<string, string>>;
2430
+ /** TableFilter的插件配置。 */
1110
2431
  interface TableFilterPluginOptions<T> {
2432
+ /** 该项目对应的数据值,用于标识、选择或计算。 */
1111
2433
  value?: TableFilterValues;
2434
+ /** 非受控模式的初始值,仅在初始化时使用。 */
1112
2435
  defaultValue?: TableFilterValues;
2436
+ /** 未填写或未选择时的提示内容。 */
1113
2437
  placeholder?: string | ((column: TableColumn<T>) => string);
2438
+ /** 用于判断记录是否满足条件的函数。 */
1114
2439
  predicate?: (value: unknown, filterValue: string, record: T, column: TableColumn<T>) => boolean;
2440
+ /** 值发生变化时调用;参数为新值及类型声明中列出的关联信息。 */
1115
2441
  onChange?: (filters: TableFilterValues) => void;
1116
2442
  }
2443
+ /** 表格筛选条件状态。 */
1117
2444
  interface FilterState {
2445
+ /** 按列保存的筛选条件。 */
1118
2446
  filters: Record<string, string>;
1119
2447
  }
2448
+ /** TableFilter的操作接口。 */
1120
2449
  interface TableFilterApi<T> {
2450
+ /** 读取当前筛选条件。 */
1121
2451
  getFilters: () => TableFilterValues;
2452
+ /** 设置指定列的筛选条件。 */
1122
2453
  setFilter: (columnKey: string, value: string) => void;
2454
+ /** 清空当前值或内容。 */
1123
2455
  clear: (columnKey?: string) => void;
2456
+ /** 读取应用筛选后的行数据。 */
1124
2457
  getFilteredRows: () => readonly T[];
1125
2458
  }
2459
+ /** 创建表格数据筛选插件。将返回值加入 Table 的 plugins 后生效。 */
1126
2460
  declare function createFilterPlugin<T extends Record<string, unknown>>(options?: TableFilterPluginOptions<T>): TablePlugin<T, FilterState, TableFilterApi<T>>;
2461
+ /** TablePagination的插件配置。 */
1127
2462
  interface TablePaginationPluginOptions {
2463
+ /** 展示或交互模式;可选值见类型定义。 */
1128
2464
  mode?: "local" | "server" | "auto";
2465
+ /** 记录总条数。 */
1129
2466
  totalCount?: number;
2467
+ /** 当前页码、步骤或播放位置,具体取值见组件类型。 */
1130
2468
  current?: number;
2469
+ /** 每页显示的记录数。 */
1131
2470
  pageSize?: number;
2471
+ /** 非受控模式的初始页码或步骤位置。 */
1132
2472
  defaultCurrent?: number;
2473
+ /** 非受控模式下每页默认展示的记录数。 */
1133
2474
  defaultPageSize?: number;
2475
+ /** 每页条数候选项 */
1134
2476
  pageSizeOptions?: readonly number[];
2477
+ /** 值发生变化时调用;参数为新值及类型声明中列出的关联信息。 */
1135
2478
  onChange?: (current: number, pageSize: number, isFirstLoad?: boolean) => void;
2479
+ /** 按分页上下文异步请求总记录数。 */
1136
2480
  requestTotal?: (model?: unknown) => Promise<void>;
2481
+ /** 是否为首次加载。 */
1137
2482
  isFirstLoad?: boolean;
1138
2483
  }
2484
+ /** 表格分页和总数请求状态。 */
1139
2485
  interface PaginationState {
2486
+ /** 当前页码。 */
1140
2487
  current: number;
2488
+ /** 每页记录数。 */
1141
2489
  pageSize: number;
2490
+ /** 是否正在请求记录总数。 */
1142
2491
  requestLoading: boolean;
1143
2492
  }
2493
+ /** TablePagination的操作接口。 */
1144
2494
  interface TablePaginationApi {
2495
+ /** 读取当前分页状态。 */
1145
2496
  getPage: () => {
2497
+ /** 当前页码、步骤或播放位置,具体取值见组件类型。 */
1146
2498
  current: number;
2499
+ /** 每页显示的记录数。 */
1147
2500
  pageSize: number;
1148
2501
  };
2502
+ /** 设置当前页码与分页参数。 */
1149
2503
  setPage: (page: Partial<{
2504
+ /** 当前页码、步骤或播放位置,具体取值见组件类型。 */
1150
2505
  current: number;
2506
+ /** 每页显示的记录数。 */
1151
2507
  pageSize: number;
1152
2508
  }>) => void;
2509
+ /** 将分页状态转换为业务请求需要的参数。 */
1153
2510
  generatePageParams: <Model extends Record<string, unknown>>(model: Model) => Model & TablePageParams;
2511
+ /** 请求记录总数的函数。 */
1154
2512
  requestCount: (model?: unknown) => Promise<void>;
1155
2513
  }
2514
+ /** 创建表格分页插件。将返回值加入 Table 的 plugins 后生效。 */
1156
2515
  declare function createPaginationPlugin<T extends Record<string, unknown>>(options?: TablePaginationPluginOptions): TablePlugin<T, PaginationState, TablePaginationApi>;
2516
+ /** TableIndex的插件配置。 */
1157
2517
  interface TableIndexPluginOptions {
2518
+ /** 标题内容,可传入文本或 React 节点。 */
1158
2519
  title?: ReactNode;
2520
+ /** 宽度;数值按像素处理,字符串可使用 CSS 尺寸。 */
1159
2521
  width?: number;
2522
+ /** 序号列的起始编号。 */
1160
2523
  startIndex?: number;
1161
2524
  }
2525
+ /** 创建表格序号列插件。将返回值加入 Table 的 plugins 后生效。 */
1162
2526
  declare function createIndexPlugin<T extends Record<string, unknown>>(options?: TableIndexPluginOptions): TablePlugin<T, undefined>;
2527
+ /** TableTree的插件配置。 */
1163
2528
  interface TableTreePluginOptions<T> {
2529
+ /** 行数据中存放子行的字段名。 */
1164
2530
  childrenColumnName?: string;
2531
+ /** 是否忽略数据内的子行字段。 */
1165
2532
  ignoreChildrenColumn?: boolean;
2533
+ /** 受控的展开行标识集合。 */
1166
2534
  expandedRowKeys?: readonly TableKey[];
2535
+ /** 初始化时展开的行标识集合。 */
1167
2536
  defaultExpandedRowKeys?: readonly TableKey[];
2537
+ /** 是否在初始化时展开全部行。 */
1168
2538
  defaultExpandAllRows?: boolean;
2539
+ /** 展开行集合变化时调用。 */
1169
2540
  onExpandedRowsChange?: (keys: readonly TableKey[]) => void;
2541
+ /** 按记录判断是否允许展开该行。 */
1170
2542
  canExpand?: (record: T) => boolean;
1171
2543
  }
2544
+ /** 树形行的展开状态。 */
1172
2545
  interface TreeState {
2546
+ /** 已展开的行标识集合。 */
1173
2547
  expandedKeys: readonly TableKey[];
1174
2548
  }
2549
+ /** TableTree的操作接口。 */
1175
2550
  interface TableTreeApi {
2551
+ /** 读取展开行或节点的标识集合。 */
1176
2552
  getExpandedKeys: () => readonly TableKey[];
2553
+ /** 设置展开行或节点的标识集合。 */
1177
2554
  setExpandedKeys: (keys: readonly TableKey[]) => void;
2555
+ /** 展开全部可展开行或节点。 */
1178
2556
  expandAll: () => void;
2557
+ /** 收起全部已展开行或节点。 */
1179
2558
  collapseAll: () => void;
1180
2559
  }
2560
+ /** 创建表格树形行展开插件。将返回值加入 Table 的 plugins 后生效。 */
1181
2561
  declare function createTreePlugin<T extends Record<string, unknown>>(options?: TableTreePluginOptions<T>): TablePlugin<T, TreeState, TableTreeApi>;
2562
+ /** TableSummary的插件配置。 */
1182
2563
  interface TableSummaryPluginOptions<T> {
2564
+ /** 当前数据范围的小计配置。 */
1183
2565
  subTotal?: Record<string, ReactNode> | ((pageData: readonly T[]) => Record<string, ReactNode>);
2566
+ /** 数据总数 */
1184
2567
  total?: Record<string, ReactNode>;
2568
+ /** 小计行的标题文案。 */
1185
2569
  subTotalLabel?: ReactNode;
2570
+ /** 总计行的标题文案。 */
1186
2571
  totalLabel?: ReactNode;
1187
2572
  }
2573
+ /** 创建表格小计与总计插件。将返回值加入 Table 的 plugins 后生效。 */
1188
2574
  declare function createSummaryPlugin<T extends Record<string, unknown>>(options: TableSummaryPluginOptions<T>): TablePlugin<T, undefined>;
2575
+ /** 表格当前编辑单元格的状态。 */
1189
2576
  interface EditableState {
2577
+ /** 是否处于编辑状态。 */
1190
2578
  editing: {
2579
+ /** 行唯一键字段或计算函数 */
1191
2580
  rowKey: TableKey;
2581
+ /** 列的唯一标识,对应 TableColumn.key。 */
1192
2582
  columnKey: string;
1193
2583
  } | null;
1194
2584
  }
2585
+ /** TableEditable的插件配置。 */
1195
2586
  interface TableEditablePluginOptions<T> {
2587
+ /** 单元格编辑值变化时调用,接收行、列及新旧值等上下文。 */
1196
2588
  onCellChange?: (columnKey: string, record: T, newValue: unknown) => boolean | Promise<boolean>;
2589
+ /** 触发显示的交互方式。 */
1197
2590
  trigger?: "click" | "doubleClick";
1198
2591
  }
2592
+ /** TableEditable的操作接口。 */
1199
2593
  interface TableEditableApi {
2594
+ /** 取消当前编辑或操作。 */
1200
2595
  cancel: () => void;
2596
+ /** 读取当前正在编辑的单元格。 */
1201
2597
  getEditingCell: () => EditableState["editing"];
1202
2598
  }
2599
+ /** 创建表格单元格编辑插件。将返回值加入 Table 的 plugins 后生效。 */
1203
2600
  declare function createEditablePlugin<T extends Record<string, unknown>>(options?: TableEditablePluginOptions<T>): TablePlugin<T, EditableState, TableEditableApi>;
2601
+ /** 已调整列宽和手动布局状态。 */
1204
2602
  interface ResizeState {
2603
+ /** 列标识到已调整宽度的映射。 */
1205
2604
  widths: Record<string, number>;
2605
+ /** 是否已启用手动列宽布局。 */
1206
2606
  manualLayout?: boolean;
1207
2607
  }
2608
+ /** TableResize的插件配置。 */
1208
2609
  interface TableResizePluginOptions {
2610
+ /** 是否启用该功能。 */
1209
2611
  enabled?: boolean;
2612
+ /** 拖拽调整列宽结束时调用,接收 columnKey 和最终宽度(px);拖动过程中不会逐帧触发。 */
1210
2613
  onResize?: (columnKey: string, width: number) => void;
1211
2614
  }
2615
+ /** TableResize的操作接口。 */
1212
2616
  interface TableResizeApi {
2617
+ /** 读取已调整的列宽映射,键为列标识。 */
1213
2618
  getWidths: () => Readonly<Record<string, number>>;
2619
+ /** 设置指定列的宽度,并通知列宽变更监听者。 */
1214
2620
  setWidth: (columnKey: string, width: number) => void;
1215
2621
  }
2622
+ /** 创建表格列宽拖拽调整插件。将返回值加入 Table 的 plugins 后生效。 */
1216
2623
  declare function createResizePlugin<T extends Record<string, unknown>>(options?: TableResizePluginOptions): TablePlugin<T, ResizeState, TableResizeApi>;
2624
+ /** TableColumnSetting的插件配置。 */
1217
2625
  interface TableColumnSettingPluginOptions<T> {
1218
2626
  /** 设置按钮的完整 Button 属性;className 合并,disabled/loading 同时禁用菜单触发。 */
1219
2627
  buttonProps?: ButtonProps;
@@ -1221,217 +2629,498 @@ interface TableColumnSettingPluginOptions<T> {
1221
2629
  menuItems?: readonly TableToolbarItem<T>[];
1222
2630
  /** 是否显示设置菜单中的导出操作,默认 true。 */
1223
2631
  showExport?: boolean;
2632
+ /** 未读取到保存配置时默认显示的列标识。 */
1224
2633
  defaultVisibleKeys?: readonly string[];
2634
+ /** 是否在工具栏显示此插件的操作按钮。 */
1225
2635
  showButton?: boolean;
2636
+ /** 可见列集合变化时调用。 */
1226
2637
  onVisibleChange?: (columns: readonly TableColumn<T>[]) => void;
2638
+ /** 列顺序变化时调用。 */
1227
2639
  onOrderChange?: (columns: readonly TableColumn<T>[]) => void;
2640
+ /** 配置持久化适配器,提供 load 和 save 方法对接本地或云端存储。 */
1228
2641
  adapter?: TableSettingsAdapter;
2642
+ /** 配置存储的作用域,用于隔离不同模块和业务表格。 */
1229
2643
  scope?: {
2644
+ /** 所属业务模块名称。 */
1230
2645
  moduleName: string;
2646
+ /** 同一模块内用于区分表格配置的业务标识。 */
1231
2647
  businessKey: string;
1232
2648
  };
1233
2649
  }
2650
+ /** 列设置插件的加载、面板和持久化状态。 */
1234
2651
  interface ColumnSettingState {
2652
+ /** 列设置面板是否打开。 */
1235
2653
  open: boolean;
2654
+ /** 当前列设置集合。 */
1236
2655
  items: readonly TableColumnSettingItem[];
2656
+ /** 是否已完成一次配置读取。 */
1237
2657
  loaded: boolean;
2658
+ /** 是否正在读取配置。 */
1238
2659
  loading?: boolean;
2660
+ /** 最近一次配置读取是否失败。 */
1239
2661
  loadError?: boolean;
2662
+ /** 用于忽略过期读取响应的请求标记。 */
1240
2663
  loadToken?: symbol;
2664
+ /** 每页记录数。 */
1241
2665
  pageSize?: number;
1242
2666
  }
2667
+ /** TableColumnSetting的操作接口。 */
1243
2668
  interface TableColumnSettingApi {
2669
+ /** 打开列设置面板,并通过已配置的适配器重新读取保存配置。 */
1244
2670
  open: () => void;
2671
+ /** 关闭当前界面或实例。 */
1245
2672
  close: () => void;
2673
+ /** 读取当前列设置快照。 */
1246
2674
  getSettings: () => readonly TableColumnSettingItem[];
2675
+ /** 应用传入的配置;是否持久化由方法参数或插件选项控制。 */
1247
2676
  apply: (settings: readonly TableColumnSettingItem[]) => void;
1248
2677
  }
2678
+ /** 创建表格列设置和持久化插件。将返回值加入 Table 的 plugins 后生效。 */
1249
2679
  declare function createColumnSettingPlugin<T extends Record<string, unknown>>(options?: TableColumnSettingPluginOptions<T>): TablePlugin<T, ColumnSettingState, TableColumnSettingApi>;
2680
+ /** 创建使用 localStorage 持久化表格设置的适配器,按模块及业务标识隔离配置。 */
1250
2681
  declare function createLocalStorageTableSettingsAdapter(prefix?: string): TableSettingsAdapter;
2682
+ /** TableToolbar的项目定义。 */
1251
2683
  interface TableToolbarItem<T> {
2684
+ /** 唯一标识;同一集合内应保持唯一且稳定,用于定位、渲染和状态关联。 */
1252
2685
  key: string;
2686
+ /** 展示给用户的名称,可传入文本或 React 节点。 */
1253
2687
  label: ReactNode;
2688
+ /** 显示在内容旁的图标节点,建议使用 Icon 组件。 */
1254
2689
  icon?: ReactNode;
2690
+ /** 显示位置或定位配置。 */
1255
2691
  position?: "start" | "end";
2692
+ /** 是否允许该列出现在列设置面板中。 */
1256
2693
  inSettings?: boolean;
2694
+ /** 危险操作样式 */
1257
2695
  danger?: boolean;
2696
+ /** 是否禁用交互。 */
1258
2697
  disabled?: boolean | ((context: TablePluginContext<T, any>) => boolean);
2698
+ /** 是否隐藏此项。 */
1259
2699
  hidden?: boolean | ((context: TablePluginContext<T, any>) => boolean);
2700
+ /** 点击时触发,参数为当前点击事件或项目上下文。 */
1260
2701
  onClick?: (context: TablePluginContext<T, any>) => void | Promise<void>;
1261
2702
  }
2703
+ /** TableToolbar的插件配置。 */
1262
2704
  interface TableToolbarPluginOptions<T> {
2705
+ /** 范围起点。 */
1263
2706
  start?: ReactNode;
2707
+ /** 范围终点。 */
1264
2708
  end?: ReactNode;
2709
+ /** 按展示顺序排列的项目配置。 */
1265
2710
  items?: readonly TableToolbarItem<T>[];
2711
+ /** 按业务权限判断是否允许访问或展示。 */
1266
2712
  canAccess?: (item: TableToolbarItem<T>) => boolean;
1267
2713
  }
2714
+ /** 创建表格工具栏操作插件。将返回值加入 Table 的 plugins 后生效。 */
1268
2715
  declare function createToolbarPlugin<T extends Record<string, unknown>>(options: TableToolbarPluginOptions<T>): TablePlugin<T, undefined>;
2716
+ /** 表格导出的数据范围。 */
1269
2717
  type TableExportScope = "visible" | "all" | "selected";
2718
+ /** TableExport的插件配置。 */
1270
2719
  interface TableExportPluginOptions<T> {
2720
+ /** 配置存储的作用域,用于隔离不同模块和业务表格。 */
1271
2721
  scope?: TableExportScope;
2722
+ /** 导出文件名。 */
1272
2723
  fileName?: string | ((context: TablePluginContext<T, undefined>) => string);
2724
+ /** CSV 字段分隔符。 */
1273
2725
  delimiter?: "," | "\t" | ";";
2726
+ /** 是否在导出文本前添加 UTF-8 BOM,便于表格软件识别中文。 */
1274
2727
  includeBom?: boolean;
2728
+ /** 是否处理可能被表格软件当作公式执行的单元格文本。 */
1275
2729
  sanitizeFormula?: boolean;
2730
+ /** 操作按钮的显示文案。 */
1276
2731
  buttonLabel?: ReactNode;
2732
+ /** 是否在工具栏显示此插件的操作按钮。 */
1277
2733
  showButton?: boolean;
2734
+ /** 执行导出时调用。 */
1278
2735
  onExport?: (csv: string, rows: readonly T[]) => void | Promise<void>;
1279
2736
  }
2737
+ /** TableExport的操作接口。 */
1280
2738
  interface TableExportApi<T> {
2739
+ /** 生成当前导出范围的 CSV 文本。 */
1281
2740
  getCsv: (scope?: TableExportScope) => string;
2741
+ /** 下载当前导出结果。 */
1282
2742
  download: (scope?: TableExportScope) => Promise<void>;
2743
+ /** 读取插件当前处理的行数据。 */
1283
2744
  getRows: (scope?: TableExportScope) => readonly T[];
1284
2745
  }
2746
+ /** 创建表格数据导出插件。将返回值加入 Table 的 plugins 后生效。 */
1285
2747
  declare function createExportPlugin<T extends Record<string, unknown>>(options?: TableExportPluginOptions<T>): TablePlugin<T, undefined, TableExportApi<T>>;
1286
2748
 
2749
+ /** 主题切换的属性配置。 */
1287
2750
  interface ThemeSwitchProps extends Omit<ButtonHTMLAttributes<HTMLButtonElement>, "onChange"> {
2751
+ /** 当前是否勾选;作为受控属性时通过回调更新。 */
1288
2752
  checked: boolean;
2753
+ /** 状态变化时返回最新布尔值 */
1289
2754
  onCheckedChange?: (checked: boolean) => void;
2755
+ /**
2756
+ * 亮色主题的显示文案。
2757
+ * @defaultValue "亮色模式"
2758
+ */
1290
2759
  lightLabel?: string;
2760
+ /**
2761
+ * 暗色主题的显示文案。
2762
+ * @defaultValue "暗色模式"
2763
+ */
1291
2764
  darkLabel?: string;
1292
2765
  }
2766
+ /** 主题切换组件。 */
1293
2767
  declare const ThemeSwitch: react.ForwardRefExoticComponent<ThemeSwitchProps & react.RefAttributes<HTMLButtonElement>>;
1294
2768
 
2769
+ /** 浮动滚动条接入组件的属性配置。 */
1295
2770
  interface FloatingScrollbarProviderProps {
2771
+ /**
2772
+ * 是否禁用交互。
2773
+ * @defaultValue false
2774
+ */
1296
2775
  disabled?: boolean;
1297
2776
  /** 仅接管指定容器;不传时接管页面中的滚动容器。 */
1298
2777
  targetRef?: RefObject<HTMLElement | null>;
1299
2778
  }
2779
+ /** 浮动滚动条接入组件组件。 */
1300
2780
  declare function FloatingScrollbarProvider({ disabled, targetRef }: FloatingScrollbarProviderProps): null;
1301
2781
 
2782
+ /** SiaTheme的模式类型。 */
1302
2783
  type SiaThemeMode = "light" | "dark";
2784
+ /** 框架主题令牌集合。 */
1303
2785
  declare const SIA_THEME: {
2786
+ /** 主色。 */
1304
2787
  readonly colorPrimary: "#1677ff";
2788
+ /** 主色的悬停色。 */
1305
2789
  readonly colorPrimaryHover: "#4096ff";
2790
+ /** 主色的按下色。 */
1306
2791
  readonly colorPrimaryActive: "#0958d9";
2792
+ /** 主要文本颜色。 */
1307
2793
  readonly colorText: "#1f1f1f";
2794
+ /** 次要文本颜色。 */
1308
2795
  readonly colorTextSecondary: "#666666";
2796
+ /** 页面背景颜色。 */
1309
2797
  readonly colorBackground: "#f5f7fa";
2798
+ /** 组件表面颜色。 */
1310
2799
  readonly colorSurface: "#ffffff";
2800
+ /** 默认边框颜色。 */
1311
2801
  readonly colorBorder: "#d9d9d9";
2802
+ /** 默认圆角半径,单位为像素。 */
1312
2803
  readonly borderRadius: 6;
2804
+ /** 默认控件高度,单位为像素。 */
1313
2805
  readonly controlHeight: 32;
2806
+ /** 默认布局间距,单位为像素。 */
1314
2807
  readonly spacing: 16;
2808
+ /** 默认字号,单位为像素。 */
1315
2809
  readonly fontSize: 16;
2810
+ /** 小号文字尺寸,单位为像素。 */
1316
2811
  readonly fontSizeSmall: 14;
2812
+ /** 大号文字尺寸,单位为像素。 */
1317
2813
  readonly fontSizeLarge: 18;
1318
2814
  };
2815
+ /** 将亮色或暗色主题应用到指定元素;省略目标时应用到文档根节点。 */
1319
2816
  declare function applySiaTheme(mode: SiaThemeMode, target?: HTMLElement): void;
1320
2817
 
2818
+ /** Selection的值类型。 */
1321
2819
  type SelectionValue = string | number;
2820
+ /** Selection的候选项定义。 */
1322
2821
  interface SelectionOption {
2822
+ /** 该项目对应的数据值,用于标识、选择或计算。 */
1323
2823
  value: SelectionValue;
2824
+ /** 展示给用户的名称,可传入文本或 React 节点。 */
1324
2825
  label: ReactNode;
2826
+ /** 是否禁用交互。 */
1325
2827
  disabled?: boolean;
2828
+ /** 禁用项悬停时显示的原因说明。 */
1326
2829
  disabledTip?: ReactNode;
2830
+ /** 选项所属分组名称。 */
1327
2831
  group?: string;
2832
+ /** 普通或按钮形态 */
1328
2833
  optionType?: "divider";
1329
2834
  }
2835
+ /** 分组选择面板的属性配置。 */
1330
2836
  interface SelectionPanelProps {
2837
+ /** 可供用户选择的候选项列表。 */
1331
2838
  options: readonly SelectionOption[];
2839
+ /** 当前值;作为受控属性时,需要在变更回调中同步更新。 */
1332
2840
  value: readonly SelectionValue[];
2841
+ /** 值发生变化时调用;参数为新值及类型声明中列出的关联信息。 */
1333
2842
  onChange: (values: SelectionValue[]) => void;
2843
+ /**
2844
+ 是否允许同时选择多个项目。
2845
+ * @defaultValue false
2846
+ */
1334
2847
  multiple?: boolean;
1335
2848
  /** 单选时允许再次点击已选项以清空选择。 */
1336
2849
  allowDeselect?: boolean;
2850
+ /**
2851
+ * 是否禁用交互。
2852
+ * @defaultValue false
2853
+ */
1337
2854
  disabled?: boolean;
2855
+ /**
2856
+ * 是否处于加载状态。
2857
+ * @defaultValue false
2858
+ */
1338
2859
  loading?: boolean;
2860
+ /**
2861
+ 是否显示搜索输入框。
2862
+ * @defaultValue true
2863
+ */
1339
2864
  showSearch?: boolean;
2865
+ /**
2866
+ 是否显示全选、反选、清空及已选数量操作行。
2867
+ * @defaultValue true
2868
+ */
1340
2869
  showActions?: boolean;
2870
+ /**
2871
+ * 是否将不在 options 中的已选值作为自定义选项展示。
2872
+ * @defaultValue true
2873
+ */
1341
2874
  includeUnknownValues?: boolean;
2875
+ /** 受控的搜索文本。 */
1342
2876
  searchValue?: string;
2877
+ /** 搜索条件变化或提交搜索时调用,具体参数见签名。 */
1343
2878
  onSearch?: (value: string) => void;
2879
+ /**
2880
+ * 是否只显示已选中的选项。
2881
+ * @defaultValue false
2882
+ */
1344
2883
  selectedOnly?: boolean;
2884
+ /**
2885
+ * 在选项名称下方显示 value,下拉与弹框模式均支持;不影响按 value 搜索
2886
+ * @defaultValue false
2887
+ */
1345
2888
  showValue?: boolean;
2889
+ /**
2890
+ * 选项主文本显示 label 还是 value。
2891
+ * @defaultValue "label"
2892
+ */
1346
2893
  displayField?: "label" | "value";
2894
+ /**
2895
+ * 每行选项列数;长文本在格内单行省略。
2896
+ * @defaultValue 1
2897
+ */
1347
2898
  columns?: number;
2899
+ /**
2900
+ * 允许的最大高度。
2901
+ * @defaultValue 250
2902
+ */
1348
2903
  maxHeight?: number;
2904
+ /**
2905
+ * 面板挂载后是否自动聚焦搜索框。
2906
+ * @defaultValue false
2907
+ */
1349
2908
  autoFocusSearch?: boolean;
1350
2909
  }
1351
2910
  /** 可嵌入下拉或弹窗的分组选择面板,长列表按行虚拟化。 */
1352
2911
  declare function SelectionPanel({ options, value, onChange, multiple, allowDeselect, disabled, loading, showSearch, showActions, includeUnknownValues, searchValue, onSearch, selectedOnly, showValue, displayField, columns, maxHeight, autoFocusSearch }: SelectionPanelProps): react.JSX.Element;
1353
2912
 
2913
+ /** 输入选择组合控件的属性配置。 */
1354
2914
  interface InputSelectProps {
2915
+ /** 可供用户选择的候选项列表。 */
1355
2916
  options: readonly SelectionOption[];
2917
+ /** 当前值;作为受控属性时,需要在变更回调中同步更新。 */
1356
2918
  value?: SelectionValue | readonly SelectionValue[] | null;
2919
+ /** 非受控模式的初始值,仅在初始化时使用。 */
1357
2920
  defaultValue?: SelectionValue | readonly SelectionValue[];
2921
+ /** 值发生变化时调用;参数为新值及类型声明中列出的关联信息。 */
1358
2922
  onChange?: (value: SelectionValue | SelectionValue[] | undefined) => void;
2923
+ /**
2924
+ 是否允许同时选择多个项目。
2925
+ * @defaultValue false
2926
+ */
1359
2927
  multiple?: boolean;
2928
+ /**
2929
+ * 选项主文本显示 label 还是 value。
2930
+ * @defaultValue "label"
2931
+ */
1360
2932
  displayField?: "label" | "value";
2933
+ /**
2934
+ * 在选项名称下方显示 value,下拉与弹框模式均支持;不影响按 value 搜索
2935
+ * @defaultValue false
2936
+ */
1361
2937
  showValue?: boolean;
2938
+ /**
2939
+ * 未填写或未选择时的提示内容。
2940
+ * @defaultValue "请选择"
2941
+ */
1362
2942
  placeholder?: string;
2943
+ /** 占位提示的显示模式;floating 为浮动标签。 */
1363
2944
  placeholderMode?: InputPlaceholderMode;
2945
+ /** 组件尺寸;用于调整控件高度、字号和间距。 */
1364
2946
  size?: ControlSize;
2947
+ /** 当前状态,用于选择对应的状态样式。 */
1365
2948
  status?: ControlStatus;
2949
+ /**
2950
+ * 是否禁用交互。
2951
+ * @defaultValue false
2952
+ */
1366
2953
  disabled?: boolean;
2954
+ /**
2955
+ * 是否处于加载状态。
2956
+ * @defaultValue false
2957
+ */
1367
2958
  loading?: boolean;
2959
+ /**
2960
+ 是否允许清空当前选择或输入值。
2961
+ * @defaultValue true
2962
+ */
1368
2963
  allowClear?: boolean;
2964
+ /** 是否隐藏搜索输入框。 */
1369
2965
  hideSearch?: boolean;
2966
+ /** 手动输入内容的最大长度 */
1370
2967
  inputMaxLength?: number;
2968
+ /** 将输入文本解析为选项值的函数。 */
1371
2969
  parseInput?: (text: string) => SelectionValue | SelectionValue[] | undefined;
2970
+ /** 是否显示通过弹框选择的入口。 */
1372
2971
  enableModal?: boolean | {
2972
+ /** 标题内容,可传入文本或 React 节点。 */
1373
2973
  title?: string;
2974
+ /** 宽度;数值按像素处理,字符串可使用 CSS 尺寸。 */
1374
2975
  width?: number | string;
2976
+ /** 列配置或选项布局列数,具体类型见签名。 */
1375
2977
  columns?: number;
2978
+ /** 允许的最大高度。 */
1376
2979
  maxHeight?: number;
1377
2980
  };
2981
+ /** 输入框后缀 */
1378
2982
  suffix?: ReactNode;
2983
+ /** 组件根节点的内联样式。 */
1379
2984
  style?: CSSProperties;
2985
+ /**
2986
+ * 附加到组件根节点的 CSS 类名。
2987
+ * @defaultValue ""
2988
+ */
1380
2989
  className?: string;
2990
+ /** 唯一标识,用于关联实例或插件。 */
1381
2991
  id?: string;
2992
+ /** 辅助技术读取的控件名称。 */
1382
2993
  "aria-label"?: string;
2994
+ /** 向辅助技术声明该控件是否必填。 */
1383
2995
  "aria-required"?: boolean | "true" | "false";
2996
+ /** 打开状态改变时触发,参数为新的打开状态。 */
1384
2997
  onOpenChange?: (open: boolean) => void;
1385
2998
  }
2999
+ /** 输入选择组合控件组件。 */
1386
3000
  declare const InputSelect: react.ForwardRefExoticComponent<InputSelectProps & react.RefAttributes<HTMLInputElement>>;
1387
3001
 
3002
+ /** 查询区中的一个字段,复用 Form.Item 绑定能力并增加布局宽度配置。 */
1388
3003
  interface QueryFormField extends FormItemProps {
3004
+ /** 字段布局的稳定唯一标识;用于 React 渲染,不替代 Form.Item 的 name 字段路径。 */
1389
3005
  key: string;
1390
3006
  /** 字段占用宽度,默认由 fieldWidth 控制;组合字段可指定更大的宽度。 */
1391
3007
  width?: number | string;
1392
3008
  }
3009
+ /** 预设或已保存的快捷查询,包含名称、条件、颜色和可选数量徽标。 */
1393
3010
  interface QueryFormShortcut<T extends FormValues = FormValues> {
3011
+ /** 快捷查询的稳定唯一标识,用于选中态和 onSearch 的 info.shortcutKey;建议使用后端主键,不使用可变排序索引。 */
1394
3012
  key: string;
3013
+ /** 展示给用户的名称,可传入文本或 React 节点。 */
1395
3014
  label: ReactNode;
3015
+ /** 该快捷查询保存的条件。点击时先恢复表单初始值,再用这些字段覆盖;支持与 Form 字段一致的嵌套数据结构。 */
1396
3016
  values: Partial<T>;
3017
+ /** 是否禁用交互。 */
1397
3018
  disabled?: boolean;
3019
+ /** 底部已保存快捷标签的颜色状态;未指定时使用组件分配的配色。 */
1398
3020
  status?: TagStatus;
1399
3021
  /** 顶部快捷查询按钮尺寸,优先于 quickQuerySize。 */
1400
3022
  size?: ButtonSize;
1401
3023
  /** 该快捷查询对应的数据总量,由业务接口提供。 */
1402
3024
  count?: number;
3025
+ /** 顶部数量徽标的附加属性,例如 overflowCount、showZero 和颜色;徽标数量由同一快捷项的 count 提供。 */
1403
3026
  badgeProps?: Omit<BadgeProps, "children" | "count">;
1404
3027
  }
3028
+ /** 本次查询的触发来源及关联快捷查询标识。 */
1405
3029
  interface QueryFormSearchInfo {
3030
+ /** 查询来源:submit 为查询按钮或表单提交,reset 为重置后查询,quick 为顶部预设,saved 为底部已保存条件。 */
1406
3031
  source: "submit" | "reset" | "quick" | "saved";
3032
+ /** 触发查询的快捷项标识;普通查询或重置时可能未提供。 */
1407
3033
  shortcutKey?: string;
1408
3034
  }
3035
+ /** 查询表单的属性配置。 */
1409
3036
  interface QueryFormProps<T extends FormValues = FormValues> extends Omit<FormProps, "onFinish" | "children" | "onError"> {
3037
+ /** 查询字段配置,每项包含稳定 key、可选宽度以及 Form.Item 属性;提供后优先于 children。 */
1410
3038
  fields?: readonly QueryFormField[];
1411
3039
  /** 也可直接放入 Form.Item 或 Space.Compact,每个直接子项视为一个查询字段。 */
1412
3040
  children?: ReactNode;
3041
+ /** 表单校验通过后执行查询。values 是完整条件;info.source 区分 submit(查询)、reset(重置)、quick(顶部预设)和 saved(已保存条件)。返回 Promise 时自动显示加载状态并阻止重复提交。 */
1413
3042
  onSearch: (values: T, info: QueryFormSearchInfo) => void | Promise<void>;
3043
+ /**
3044
+ * 是否处于加载状态。
3045
+ * @defaultValue false
3046
+ */
1414
3047
  loading?: boolean;
3048
+ /**
3049
+ * 查询字段的默认宽度,数值单位为像素,可传 CSS 尺寸字符串。
3050
+ * @defaultValue 220
3051
+ */
1415
3052
  fieldWidth?: number | string;
3053
+ /**
3054
+ 是否显示展开和收起入口;false 时始终展示全部字段。
3055
+ * @defaultValue true
3056
+ */
1416
3057
  collapsible?: boolean;
3058
+ /** 受控收起状态,需在 onCollapsedChange 中更新。收起时保留字段挂载和值,只隐藏放不下的字段和底部快捷标签。 */
1417
3059
  collapsed?: boolean;
3060
+ /**
3061
+ * 非受控模式的初始收起状态。
3062
+ * @defaultValue false
3063
+ */
1418
3064
  defaultCollapsed?: boolean;
3065
+ /**
3066
+ * 收起时最多保留的字段数;实际数量会根据可用宽度减少,以保持单行。
3067
+ * @defaultValue 3
3068
+ */
1419
3069
  collapsedCount?: number;
3070
+ /** 收起状态变化回调 */
1420
3071
  onCollapsedChange?: (collapsed: boolean) => void;
3072
+ /**
3073
+ * 顶部预设快捷查询按钮。点击后先恢复 initialValues,再覆盖该项 values,校验并自动触发 onSearch。
3074
+ * @defaultValue []
3075
+ */
1421
3076
  quickQueries?: readonly QueryFormShortcut<T>[];
3077
+ /**
3078
+ * 顶部快捷查询按钮的默认尺寸,单项 size 优先。
3079
+ * @defaultValue "small"
3080
+ */
1422
3081
  quickQuerySize?: ButtonSize;
3082
+ /**
3083
+ * 底部已保存快捷查询标签。点击回填该项条件并查询;收起时隐藏。业务方负责加载数据,并在保存或删除成功后更新此数组。
3084
+ * @defaultValue []
3085
+ */
1423
3086
  savedQueries?: readonly QueryFormShortcut<T>[];
3087
+ /**
3088
+ * 快捷查询正在加载或更新时设为 true,期间禁用快捷操作。
3089
+ * @defaultValue false
3090
+ */
1424
3091
  shortcutsLoading?: boolean;
3092
+ /** 点击“另存为快捷查询”并确认名称后调用。query.name 为去除首尾空格的名称,query.values 为打开保存弹框时的条件快照。业务方负责持久化并更新 savedQueries;返回 Promise 时显示等待状态,失败保留弹框供重试。 */
1425
3093
  onSaveQuery?: (query: {
3094
+ /** 用户输入的快捷查询名称,已经去除首尾空格。 */
1426
3095
  name: string;
3096
+ /** 打开保存弹框时的完整查询条件快照。 */
1427
3097
  values: T;
1428
3098
  }) => void | Promise<void>;
3099
+ /** 删除已保存快捷项时调用,query 为被删除的完整快捷项。业务方负责持久化并更新 savedQueries;失败保留该项,删除操作不会触发查询。 */
1429
3100
  onRemoveQuery?: (query: QueryFormShortcut<T>) => void | Promise<void>;
3101
+ /** 查询、保存或删除失败时调用。error 为原始异常,operation 为 search、save 或 remove;组件同时显示错误提示。 */
1430
3102
  onError?: (error: unknown, operation: "search" | "save" | "remove") => void;
3103
+ /**
3104
+ * 查询按钮文案。
3105
+ * @defaultValue "查询"
3106
+ */
1431
3107
  searchText?: ReactNode;
3108
+ /**
3109
+ * 重置按钮文案。
3110
+ * @defaultValue "重置"
3111
+ */
1432
3112
  resetText?: ReactNode;
3113
+ /**
3114
+ * 保存快捷查询按钮文案。
3115
+ * @defaultValue "另存为快捷查询"
3116
+ */
1433
3117
  saveText?: ReactNode;
3118
+ /**
3119
+ * 点击重置后是否自动提交查询;false 时只恢复 initialValues,不调用 onSearch。
3120
+ * @defaultValue true
3121
+ */
1434
3122
  resetSearch?: boolean;
3123
+ /** 查询按钮组旁的自定义操作内容。 */
1435
3124
  actionsExtra?: ReactNode;
1436
3125
  }
1437
3126
  /** 可复用的业务查询表单;快捷查询的存储和结果数据由业务方管理。 */