@sia.soul/sia-react-ui 0.1.0 → 0.1.2

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.
package/dist/index.css CHANGED
@@ -3915,6 +3915,17 @@
3915
3915
  .sia-space-compact--vertical > *:not(:first-child) {
3916
3916
  margin-top: -1px;
3917
3917
  }
3918
+ .sia-space-compact--horizontal > *:not(:first-child) :is(.sia-input, .sia-input-control, .sia-select, .sia-tree-select__trigger, .sia-picker, .sia-input-number) {
3919
+ border-top-left-radius: 0;
3920
+ border-bottom-left-radius: 0;
3921
+ }
3922
+ .sia-space-compact--horizontal > *:not(:last-child) :is(.sia-input, .sia-input-control, .sia-select, .sia-tree-select__trigger, .sia-picker, .sia-input-number) {
3923
+ border-top-right-radius: 0;
3924
+ border-bottom-right-radius: 0;
3925
+ }
3926
+ .sia-space-compact > *:focus-within {
3927
+ z-index: 1;
3928
+ }
3918
3929
  .sia-row {
3919
3930
  --sia-grid-gutter-x: 0px;
3920
3931
  --sia-grid-gutter-y: 0px;
@@ -5674,10 +5685,20 @@
5674
5685
  font-size: 12px;
5675
5686
  }
5676
5687
  .sia-tree-select__clear {
5688
+ position: absolute;
5689
+ right: 30px;
5690
+ top: 50%;
5691
+ transform: translateY(-50%);
5677
5692
  display: none;
5693
+ align-items: center;
5694
+ padding: 2px;
5695
+ border: 0;
5696
+ background: var(--sia-color-surface);
5678
5697
  color: var(--sia-color-text-secondary);
5698
+ cursor: pointer;
5679
5699
  }
5680
- .sia-tree-select__trigger:hover .sia-tree-select__clear {
5700
+ .sia-tree-select:hover .sia-tree-select__clear,
5701
+ .sia-tree-select:focus-within .sia-tree-select__clear {
5681
5702
  display: inline-flex;
5682
5703
  }
5683
5704
  .sia-tree-select__dropdown {
@@ -8382,6 +8403,115 @@ button.sia-treemap__tile:focus-visible,
8382
8403
  transition-duration: .01ms;
8383
8404
  }
8384
8405
  }
8406
+ .sia-input-select {
8407
+ min-width: 0;
8408
+ }
8409
+ .sia-input-select__suffix,
8410
+ .sia-selection-panel__actions {
8411
+ display: flex;
8412
+ align-items: center;
8413
+ gap: 4px;
8414
+ }
8415
+ .sia-input-select__suffix .sia-button {
8416
+ padding: 0 3px;
8417
+ min-width: 18px;
8418
+ }
8419
+ .sia-input-select__popup {
8420
+ z-index: 1100;
8421
+ width: max(240px, var(--sia-popup-anchor-width));
8422
+ max-width: calc(100vw - 24px);
8423
+ padding: 8px;
8424
+ background: var(--sia-color-bg, white);
8425
+ border: 1px solid var(--sia-color-border, #ddd);
8426
+ border-radius: 6px;
8427
+ box-shadow: 0 6px 24px #0002;
8428
+ }
8429
+ .sia-selection-panel {
8430
+ min-width: 0;
8431
+ display: grid;
8432
+ gap: 8px;
8433
+ }
8434
+ .sia-selection-panel__actions {
8435
+ margin-bottom: 4px;
8436
+ flex-wrap: wrap;
8437
+ font-size: 12px;
8438
+ }
8439
+ .sia-selection-panel__actions > span {
8440
+ margin-left: auto;
8441
+ color: var(--sia-color-text-secondary, #777);
8442
+ }
8443
+ .sia-selection-panel__list {
8444
+ overflow: auto;
8445
+ outline-offset: 1px;
8446
+ }
8447
+ .sia-selection-panel__row {
8448
+ display: grid;
8449
+ gap: 4px;
8450
+ }
8451
+ .sia-selection-panel__group {
8452
+ display: flex;
8453
+ align-items: center;
8454
+ font-size: 12px;
8455
+ font-weight: 600;
8456
+ color: var(--sia-color-text-secondary, #777);
8457
+ padding: 0 6px;
8458
+ }
8459
+ .sia-selection-panel__option {
8460
+ width: 100%;
8461
+ height: 100%;
8462
+ display: flex;
8463
+ align-items: center;
8464
+ gap: 6px;
8465
+ border: 0;
8466
+ background: transparent;
8467
+ border-radius: 4px;
8468
+ padding: 4px 8px;
8469
+ text-align: left;
8470
+ color: inherit;
8471
+ cursor: pointer;
8472
+ min-width: 0;
8473
+ font: inherit;
8474
+ }
8475
+ .sia-selection-panel__option:hover,
8476
+ .sia-selection-panel__option.is-active {
8477
+ background: var(--sia-color-fill-secondary, #f2f5f8);
8478
+ }
8479
+ .sia-selection-panel__option[aria-selected=true] {
8480
+ background: var(--sia-color-primary-bg, #eaf4ff);
8481
+ color: var(--sia-color-primary, #1677ff);
8482
+ }
8483
+ .sia-selection-panel__option[aria-disabled=true] {
8484
+ opacity: .45;
8485
+ cursor: not-allowed;
8486
+ }
8487
+ .sia-selection-panel__check {
8488
+ width: 14px;
8489
+ height: 14px;
8490
+ flex-shrink: 0;
8491
+ border: 1px solid currentColor;
8492
+ border-radius: 3px;
8493
+ line-height: 12px;
8494
+ text-align: center;
8495
+ }
8496
+ .sia-selection-panel__text {
8497
+ overflow: hidden;
8498
+ white-space: nowrap;
8499
+ text-overflow: ellipsis;
8500
+ }
8501
+ .sia-selection-panel__text small {
8502
+ display: block;
8503
+ opacity: .65;
8504
+ font-size: 11px;
8505
+ }
8506
+ .sia-selection-panel__divider {
8507
+ align-self: center;
8508
+ border-top: 1px solid var(--sia-color-border, #ddd);
8509
+ }
8510
+ .sia-selection-panel__empty {
8511
+ padding: 16px;
8512
+ text-align: center;
8513
+ color: var(--sia-color-text-secondary, #777);
8514
+ }
8385
8515
 
8386
8516
  /* src/breadcrumb.css */
8387
8517
  .sia-breadcrumb {
package/dist/index.d.cts CHANGED
@@ -1,8 +1,8 @@
1
1
  import * as react from 'react';
2
- import { HTMLAttributes, ReactNode, CSSProperties, ElementType, FormHTMLAttributes, InputHTMLAttributes, ChangeEvent, TextareaHTMLAttributes, MouseEvent, Key, PointerEvent, Ref, ButtonHTMLAttributes } from 'react';
3
- import { O as OverlayContainer, a as OverlayApiHandle } from './core-DRICIs2n.cjs';
4
- export { B as Badge, b as BadgeProps, c as BadgeRibbonProps, d as BadgeStatus, e as Breadcrumb, f as BreadcrumbItem, g as BreadcrumbProps, h as Button, i as ButtonProps, j as ButtonSize, k as ButtonVariant, C as Calendar, l as CalendarProps, m as Card, n as CardAccent, o as CardProps, p as Carousel, q as CarouselProps, r as CarouselRef, s as Collapse, t as CollapseItem, u as CollapseKey, v as CollapseProps, D as Dropdown, w as DropdownButtonProps, x as DropdownMenuProps, y as DropdownOpenSource, z as DropdownPlacement, A as DropdownProps, E as DropdownTrigger, F as FILLED_ICON_NAMES, G as FilledIconName, H as FloatButton, I as FloatButtonBackTopProps, J as FloatButtonGroupProps, K as FloatButtonProps, L as FloatButtonShape, M as FloatingPlacement, N as FloatingTrigger, P as ICON_NAMES, Q as Icon, R as IconName, S as IconProps, T as IconVariant, U as Image, V as ImagePreview, W as ImagePreviewConfig, X as ImagePreviewProps, Y as ImageProps, Z as Input, _ as InputProps, $ as Menu, a0 as MenuClickInfo, a1 as MenuItem, a2 as MenuMode, a3 as MenuProps, a4 as MenuTheme, a5 as MessageConfig, a6 as MessageHandle, a7 as MessageKey, a8 as MessageType, a9 as Modal, aa as ModalActionResult, ab as ModalOpenConfig, ac as ModalProps, ad as ModalType, ae as NotificationConfig, af as NotificationPlacement, ag as NotificationType, ah as Popconfirm, ai as PopconfirmProps, aj as Popover, ak as PopoverProps, al as Progress, am as ProgressProps, an as ProgressStatus, ao as Rate, ap as RateProps, aq as Segmented, ar as SegmentedOption, as as SegmentedProps, at as SegmentedValue, au as Spin, av as SpinProps, aw as StepItem, ax as StepStatus, ay as Steps, az as StepsProps, aA as TabItem, aB as Tabs, aC as TabsContextMenuClickInfo, aD as TabsOrientation, aE as TabsPosition, aF as TabsProps, aG as TabsType, aH as Tag, aI as TagProps, aJ as TagStatus, 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-DRICIs2n.cjs';
5
- 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-DWik3ADr.cjs';
2
+ import { HTMLAttributes, ReactNode, CSSProperties, ElementType, FormHTMLAttributes, InputHTMLAttributes, ChangeEvent, TextareaHTMLAttributes, MouseEvent, Key, PointerEvent, Ref, ReactElement, ButtonHTMLAttributes } from 'react';
3
+ import { O as OverlayContainer, a as OverlayApiHandle } from './core-De2pRX5w.cjs';
4
+ export { B as Badge, b as BadgeProps, c as BadgeRibbonProps, d as BadgeStatus, e as Breadcrumb, f as BreadcrumbItem, g as BreadcrumbProps, h as Button, i as ButtonProps, j as ButtonSize, k as ButtonVariant, C as Calendar, l as CalendarProps, m as Card, n as CardAccent, o as CardProps, p as Carousel, q as CarouselProps, r as CarouselRef, s as Collapse, t as CollapseItem, u as CollapseKey, v as CollapseProps, D as Dropdown, w as DropdownButtonProps, x as DropdownMenuProps, y as DropdownOpenSource, z as DropdownPlacement, A as DropdownProps, E as DropdownTrigger, F as FILLED_ICON_NAMES, G as FilledIconName, H as FloatButton, I as FloatButtonBackTopProps, J as FloatButtonGroupProps, K as FloatButtonProps, L as FloatButtonShape, M as FloatingPlacement, N as FloatingTrigger, P as ICON_NAMES, Q as Icon, R as IconName, S as IconProps, T as IconVariant, U as Image, V as ImagePreview, W as ImagePreviewConfig, X as ImagePreviewProps, Y as ImageProps, Z as Input, _ as InputProps, $ as Menu, a0 as MenuClickInfo, a1 as MenuItem, a2 as MenuMode, a3 as MenuProps, a4 as MenuTheme, a5 as MessageConfig, a6 as MessageHandle, a7 as MessageKey, a8 as MessageType, a9 as Modal, aa as ModalActionResult, ab as ModalOpenConfig, ac as ModalProps, ad as ModalType, ae as NotificationConfig, af as NotificationPlacement, ag as NotificationType, ah as Popconfirm, ai as PopconfirmProps, aj as Popover, ak as PopoverProps, al as Progress, am as ProgressProps, an as ProgressStatus, ao as Rate, ap as RateProps, aq as Segmented, ar as SegmentedOption, as as SegmentedProps, at as SegmentedValue, au as Spin, av as SpinProps, aw as StepItem, ax as StepStatus, ay as Steps, az as StepsProps, aA as TabItem, aB as Tabs, aC as TabsContextMenuClickInfo, aD as TabsOrientation, aE as TabsPosition, aF as TabsProps, aG as TabsType, aH as Tag, aI as TagProps, aJ as TagStatus, 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-De2pRX5w.cjs';
5
+ 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-UyYrHex6.cjs';
6
6
  import { C as ControlSize, a as ControlStatus, I as InputPlaceholderMode } from './Select-CJJ5LQap.cjs';
7
7
  export { S as Select, b as SelectChangeValue, c as SelectMode, d as SelectOption, e as SelectProps, f as SelectValue } from './Select-CJJ5LQap.cjs';
8
8
  export { RichTextContent, RichTextContentFormat, RichTextContentProps, RichTextEditor, RichTextEditorProps, RichTextImagePasteHandler, RichTextToolbar } from './rich-text-editor.cjs';
@@ -328,7 +328,7 @@ interface FormItemProps {
328
328
  children?: ReactNode | ((form: FormInstance) => ReactNode);
329
329
  className?: string;
330
330
  }
331
- declare function FormItem({ name, label, rules, required, extra, help, validateStatus, valuePropName, trigger, validateTrigger, getValueFromEvent, noStyle, children, className, }: FormItemProps): string | number | boolean | Iterable<ReactNode> | react.JSX.Element | null | undefined;
331
+ declare function FormItem({ name, label, rules, required, extra, help, validateStatus, valuePropName, trigger, validateTrigger, getValueFromEvent, noStyle, children, className, }: FormItemProps): react.JSX.Element;
332
332
  interface FormListField {
333
333
  key: number;
334
334
  name: number;
@@ -493,11 +493,13 @@ interface TreeSelectNode {
493
493
  key?: string | number;
494
494
  disabled?: boolean;
495
495
  selectable?: boolean;
496
+ disableCheckbox?: boolean;
497
+ checkable?: boolean;
496
498
  children?: readonly TreeSelectNode[];
497
499
  }
498
- interface TreeSelectProps extends Omit<HTMLAttributes<HTMLDivElement>, "defaultValue" | "onChange"> {
500
+ interface TreeSelectProps extends Omit<HTMLAttributes<HTMLDivElement>, "defaultValue" | "onChange" | "onSelect"> {
499
501
  treeData: readonly TreeSelectNode[];
500
- value?: TreeSelectValue | readonly TreeSelectValue[];
502
+ value?: TreeSelectValue | readonly TreeSelectValue[] | null;
501
503
  defaultValue?: TreeSelectValue | readonly TreeSelectValue[];
502
504
  multiple?: boolean;
503
505
  treeCheckable?: boolean;
@@ -510,11 +512,46 @@ interface TreeSelectProps extends Omit<HTMLAttributes<HTMLDivElement>, "defaultV
510
512
  disabled?: boolean;
511
513
  size?: ControlSize;
512
514
  status?: ControlStatus;
515
+ open?: boolean;
516
+ defaultOpen?: boolean;
517
+ searchValue?: string;
518
+ treeExpandedKeys?: readonly TreeSelectValue[];
519
+ treeDefaultExpandedKeys?: readonly TreeSelectValue[];
520
+ onTreeExpand?: (keys: TreeSelectValue[]) => void;
521
+ filterTreeNode?: false | ((search: string, node: TreeSelectNode) => boolean);
522
+ /** 默认独立勾选;关闭后父子节点联动,禁用节点作为边界。 */
523
+ treeCheckStrictly?: boolean;
524
+ showCheckedStrategy?: "all" | "parent" | "child";
525
+ loading?: boolean;
526
+ listHeight?: number;
527
+ popupClassName?: string;
528
+ popupStyle?: React.CSSProperties;
529
+ dropdownFooter?: ReactNode;
530
+ displayRender?: (nodes: readonly TreeSelectNode[]) => ReactNode;
531
+ renderTrigger?: (state: {
532
+ open: boolean;
533
+ toggle: () => void;
534
+ clear: () => void;
535
+ }) => ReactNode;
536
+ onClear?: () => void;
537
+ onSelect?: (value: TreeSelectValue, node: TreeSelectNode) => void;
538
+ onDeselect?: (value: TreeSelectValue, node: TreeSelectNode) => void;
513
539
  onChange?: (value: TreeSelectValue | readonly TreeSelectValue[] | undefined, nodes: readonly TreeSelectNode[]) => void;
514
540
  onSearch?: (value: string) => void;
515
541
  onDropdownVisibleChange?: (open: boolean) => void;
516
542
  }
517
- declare function TreeSelect({ treeData, value, defaultValue, multiple, treeCheckable, showSearch, allowClear, treeDefaultExpandAll, placeholder, searchPlaceholder, maxTagCount, disabled, size, status, className, onChange, onSearch, onDropdownVisibleChange, ...props }: TreeSelectProps): react.JSX.Element;
543
+ declare function TreeSelect({ treeData, value, defaultValue, multiple, treeCheckable, showSearch, allowClear, treeDefaultExpandAll, placeholder, searchPlaceholder, maxTagCount, disabled, size, 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;
544
+
545
+ interface FlatTreeOptions {
546
+ idField?: string;
547
+ parentIdField?: string;
548
+ rootParentId?: unknown;
549
+ }
550
+ type FlatTreeNode<T> = T & {
551
+ children: FlatTreeNode<T>[];
552
+ };
553
+ /** 平级列表转树;容忍孤儿节点,并切断自引用和循环关系,防止递归溢出。 */
554
+ declare function buildFlatTree<T extends Record<string, any>>(items: readonly T[], options?: FlatTreeOptions): FlatTreeNode<T>[];
518
555
 
519
556
  interface TextAreaProps extends TextareaHTMLAttributes<HTMLTextAreaElement> {
520
557
  label?: ReactNode;
@@ -908,7 +945,7 @@ interface TableSettingsAdapter {
908
945
 
909
946
  declare const Table: <T extends Record<string, unknown> = Record<string, unknown>>(props: TableProps<T> & {
910
947
  ref?: Ref<TableRef<T>>;
911
- }) => ReactNode;
948
+ }) => ReactElement | null;
912
949
 
913
950
  interface TableColumnTransformPluginOptions<T> {
914
951
  prepend?: readonly TableColumn<T>[];
@@ -1219,4 +1256,66 @@ declare const SIA_THEME: {
1219
1256
  };
1220
1257
  declare function applySiaTheme(mode: SiaThemeMode, target?: HTMLElement): void;
1221
1258
 
1222
- export { Alert, type AlertProps, type AlertStatus, type AnyTablePlugin, Cascader, type CascaderFieldNames, type CascaderOption, type CascaderProps, type CascaderValue, Checkbox, type CheckboxGroupProps, type CheckboxOption, type CheckboxProps, type CheckboxValue, Col, type ColProps, type ColSize, ColorPicker, type ColorPickerMode, type ColorPickerPreset, type ColorPickerProps, ControlSize, ControlStatus, DEFAULT_PAGE_SIZE_OPTIONS, Divider, type DividerProps, Drawer, type DrawerOpenConfig, type DrawerPlacement, type DrawerProps, type DrawerPush, type DrawerPushConfig, Editor, type EditorCommand, type EditorCompletionContext, type EditorCompletionItem, type EditorCompletionItemKind, type EditorCompletionProvider, type EditorContextMenuItem, type EditorHandle, type EditorKeyDownEvent, type EditorLanguage, type EditorMarker, type EditorProps, type EditorRange, type EditorSelectionChange, type EditorTheme, Flex, type FlexProps, FloatingScrollbarProvider, type FloatingScrollbarProviderProps, Form, type FormErrorField, type FormInstance, type FormItemProps, type FormListField, type FormListOperation, type FormListProps, type FormProps, type FormRule, type FormValues, type GridBreakpoint, InputNumber, type InputNumberProps, InputPlaceholderMode, type LayoutGap, Markdown, type MarkdownProps, type NamePath, OverlayApiHandle, Pagination, type PaginationProps, Radio, type RadioGroupProps, type RadioOption, type RadioProps, type RadioValue, Row, type RowProps, SIA_THEME, type SiaThemeMode, Slider, type SliderMark, type SliderProps, type SliderValue, Space, type SpaceCompactProps, type SpaceProps, Splitter, type SplitterPanelProps, type SplitterProps, Switch, type SwitchProps, type SwitchVariant, Table, type TableAlign, type TableCellAddress, type TableCellRange, type TableCellRenderInfo, type TableCellSelectionApi, type TableCellSelectionPluginOptions, type TableColumn, type TableColumnSettingApi, type TableColumnSettingItem, type TableColumnSettingPluginOptions, type TableColumnTransformPluginOptions, type TableEditableApi, type TableEditableCellConfig, type TableEditableCellType, type TableEditablePluginOptions, type TableExportApi, type TableExportPluginOptions, type TableExportScope, type TableFilterApi, type TableFilterPluginOptions, type TableFilterValues, type TableFixed, type TableHighlightPluginOptions, type TableHighlightValue, type TableIndexPluginOptions, type TableKey, type TableMergeStickyConfig, type TablePageParams, type TablePaginationApi, type TablePaginationPluginOptions, type TablePlugin, type TablePluginCellProps, type TablePluginContext, type TablePluginEvent, type TableProps, type TableRef, type TableResizeApi, type TableResizePluginOptions, type TableRow, type TableRowSpanPluginOptions, type TableSelectedCell, type TableSelectionApi, type TableSelectionMode, type TableSelectionPluginOptions, type TableSettingsAdapter, type TableSettingsSnapshot, type TableSize, type TableSortApi, type TableSortInfo, type TableSortPluginOptions, type TableSummaryPluginOptions, type TableSummaryRow, type TableToolbarItem, type TableToolbarPluginOptions, type TableTreeApi, type TableTreePluginOptions, TextArea, type TextAreaProps, ThemeSwitch, type ThemeSwitchProps, TimePicker, type TimePickerProps, type TimeRangePickerProps, ToolPanel, type ToolPanelPlacement, type ToolPanelProps, TreeSelect, type TreeSelectNode, type TreeSelectProps, type TreeSelectValue, Treemap, type TreemapNode, type TreemapNodeClickInfo, type TreemapNodeKind, type TreemapProps, type WindowAction, type WindowActionHandler, type WindowControlAction, type WindowControlLabels, WindowControls, type WindowControlsProps, WindowFrame, type WindowFrameProps, WindowTitleBar, type WindowTitleBarActionsAlign, type WindowTitleBarProps, applySiaTheme, createCellSelectionPlugin, createColumnSettingPlugin, createColumnTransformPlugin, createEditablePlugin, createExportPlugin, createFilterPlugin, createHighlightPlugin, createIndexPlugin, createLocalStorageTableSettingsAdapter, createPaginationPlugin, createResizePlugin, createRowSpanPlugin, createSelectionPlugin, createSortPlugin, createSummaryPlugin, createToolbarPlugin, createTreePlugin, useForm };
1259
+ type SelectionValue = string | number;
1260
+ interface SelectionOption {
1261
+ value: SelectionValue;
1262
+ label: ReactNode;
1263
+ disabled?: boolean;
1264
+ disabledTip?: ReactNode;
1265
+ group?: string;
1266
+ optionType?: "divider";
1267
+ }
1268
+ interface SelectionPanelProps {
1269
+ options: readonly SelectionOption[];
1270
+ value: readonly SelectionValue[];
1271
+ onChange: (values: SelectionValue[]) => void;
1272
+ multiple?: boolean;
1273
+ disabled?: boolean;
1274
+ loading?: boolean;
1275
+ showSearch?: boolean;
1276
+ searchValue?: string;
1277
+ onSearch?: (value: string) => void;
1278
+ selectedOnly?: boolean;
1279
+ showValue?: boolean;
1280
+ displayField?: "label" | "value";
1281
+ columns?: number;
1282
+ maxHeight?: number;
1283
+ autoFocusSearch?: boolean;
1284
+ }
1285
+ /** 可嵌入下拉或弹窗的分组选择面板,长列表按行虚拟化。 */
1286
+ declare function SelectionPanel({ options, value, onChange, multiple, disabled, loading, showSearch, searchValue, onSearch, selectedOnly, showValue, displayField, columns, maxHeight, autoFocusSearch }: SelectionPanelProps): react.JSX.Element;
1287
+
1288
+ interface InputSelectProps {
1289
+ options: readonly SelectionOption[];
1290
+ value?: SelectionValue | readonly SelectionValue[] | null;
1291
+ defaultValue?: SelectionValue | readonly SelectionValue[];
1292
+ onChange?: (value: SelectionValue | SelectionValue[] | undefined) => void;
1293
+ multiple?: boolean;
1294
+ displayField?: "label" | "value";
1295
+ showValue?: boolean;
1296
+ placeholder?: string;
1297
+ size?: ControlSize;
1298
+ status?: ControlStatus;
1299
+ disabled?: boolean;
1300
+ loading?: boolean;
1301
+ allowClear?: boolean;
1302
+ hideSearch?: boolean;
1303
+ inputMaxLength?: number;
1304
+ parseInput?: (text: string) => SelectionValue | SelectionValue[] | undefined;
1305
+ enableModal?: boolean | {
1306
+ title?: string;
1307
+ width?: number | string;
1308
+ columns?: number;
1309
+ maxHeight?: number;
1310
+ };
1311
+ suffix?: ReactNode;
1312
+ style?: CSSProperties;
1313
+ className?: string;
1314
+ id?: string;
1315
+ "aria-label"?: string;
1316
+ "aria-required"?: boolean | "true" | "false";
1317
+ onOpenChange?: (open: boolean) => void;
1318
+ }
1319
+ declare const InputSelect: react.ForwardRefExoticComponent<InputSelectProps & react.RefAttributes<HTMLInputElement>>;
1320
+
1321
+ export { Alert, type AlertProps, type AlertStatus, type AnyTablePlugin, Cascader, type CascaderFieldNames, type CascaderOption, type CascaderProps, type CascaderValue, Checkbox, type CheckboxGroupProps, type CheckboxOption, type CheckboxProps, type CheckboxValue, Col, type ColProps, type ColSize, ColorPicker, type ColorPickerMode, type ColorPickerPreset, type ColorPickerProps, ControlSize, ControlStatus, DEFAULT_PAGE_SIZE_OPTIONS, Divider, type DividerProps, Drawer, type DrawerOpenConfig, type DrawerPlacement, type DrawerProps, type DrawerPush, type DrawerPushConfig, Editor, type EditorCommand, type EditorCompletionContext, type EditorCompletionItem, type EditorCompletionItemKind, type EditorCompletionProvider, type EditorContextMenuItem, type EditorHandle, type EditorKeyDownEvent, type EditorLanguage, type EditorMarker, type EditorProps, type EditorRange, type EditorSelectionChange, type EditorTheme, type FlatTreeNode, type FlatTreeOptions, Flex, type FlexProps, FloatingScrollbarProvider, type FloatingScrollbarProviderProps, Form, type FormErrorField, type FormInstance, type FormItemProps, type FormListField, type FormListOperation, type FormListProps, type FormProps, type FormRule, type FormValues, type GridBreakpoint, InputNumber, type InputNumberProps, InputPlaceholderMode, InputSelect, type InputSelectProps, type LayoutGap, Markdown, type MarkdownProps, type NamePath, OverlayApiHandle, Pagination, type PaginationProps, Radio, type RadioGroupProps, type RadioOption, type RadioProps, type RadioValue, Row, type RowProps, SIA_THEME, type SelectionOption, SelectionPanel, type SelectionPanelProps, type SelectionValue, type SiaThemeMode, Slider, type SliderMark, type SliderProps, type SliderValue, Space, type SpaceCompactProps, type SpaceProps, Splitter, type SplitterPanelProps, type SplitterProps, Switch, type SwitchProps, type SwitchVariant, Table, type TableAlign, type TableCellAddress, type TableCellRange, type TableCellRenderInfo, type TableCellSelectionApi, type TableCellSelectionPluginOptions, type TableColumn, type TableColumnSettingApi, type TableColumnSettingItem, type TableColumnSettingPluginOptions, type TableColumnTransformPluginOptions, type TableEditableApi, type TableEditableCellConfig, type TableEditableCellType, type TableEditablePluginOptions, type TableExportApi, type TableExportPluginOptions, type TableExportScope, type TableFilterApi, type TableFilterPluginOptions, type TableFilterValues, type TableFixed, type TableHighlightPluginOptions, type TableHighlightValue, type TableIndexPluginOptions, type TableKey, type TableMergeStickyConfig, type TablePageParams, type TablePaginationApi, type TablePaginationPluginOptions, type TablePlugin, type TablePluginCellProps, type TablePluginContext, type TablePluginEvent, type TableProps, type TableRef, type TableResizeApi, type TableResizePluginOptions, type TableRow, type TableRowSpanPluginOptions, type TableSelectedCell, type TableSelectionApi, type TableSelectionMode, type TableSelectionPluginOptions, type TableSettingsAdapter, type TableSettingsSnapshot, type TableSize, type TableSortApi, type TableSortInfo, type TableSortPluginOptions, type TableSummaryPluginOptions, type TableSummaryRow, type TableToolbarItem, type TableToolbarPluginOptions, type TableTreeApi, type TableTreePluginOptions, TextArea, type TextAreaProps, ThemeSwitch, type ThemeSwitchProps, TimePicker, type TimePickerProps, type TimeRangePickerProps, ToolPanel, type ToolPanelPlacement, type ToolPanelProps, TreeSelect, type TreeSelectNode, type TreeSelectProps, type TreeSelectValue, Treemap, type TreemapNode, type TreemapNodeClickInfo, type TreemapNodeKind, type TreemapProps, type WindowAction, type WindowActionHandler, type WindowControlAction, type WindowControlLabels, WindowControls, type WindowControlsProps, WindowFrame, type WindowFrameProps, WindowTitleBar, type WindowTitleBarActionsAlign, type WindowTitleBarProps, applySiaTheme, buildFlatTree, createCellSelectionPlugin, createColumnSettingPlugin, createColumnTransformPlugin, createEditablePlugin, createExportPlugin, createFilterPlugin, createHighlightPlugin, createIndexPlugin, createLocalStorageTableSettingsAdapter, createPaginationPlugin, createResizePlugin, createRowSpanPlugin, createSelectionPlugin, createSortPlugin, createSummaryPlugin, createToolbarPlugin, createTreePlugin, useForm };
package/dist/index.d.ts CHANGED
@@ -1,8 +1,8 @@
1
1
  import * as react from 'react';
2
- import { HTMLAttributes, ReactNode, CSSProperties, ElementType, FormHTMLAttributes, InputHTMLAttributes, ChangeEvent, TextareaHTMLAttributes, MouseEvent, Key, PointerEvent, Ref, ButtonHTMLAttributes } from 'react';
3
- import { O as OverlayContainer, a as OverlayApiHandle } from './core-BeiAQiDY.js';
4
- export { B as Badge, b as BadgeProps, c as BadgeRibbonProps, d as BadgeStatus, e as Breadcrumb, f as BreadcrumbItem, g as BreadcrumbProps, h as Button, i as ButtonProps, j as ButtonSize, k as ButtonVariant, C as Calendar, l as CalendarProps, m as Card, n as CardAccent, o as CardProps, p as Carousel, q as CarouselProps, r as CarouselRef, s as Collapse, t as CollapseItem, u as CollapseKey, v as CollapseProps, D as Dropdown, w as DropdownButtonProps, x as DropdownMenuProps, y as DropdownOpenSource, z as DropdownPlacement, A as DropdownProps, E as DropdownTrigger, F as FILLED_ICON_NAMES, G as FilledIconName, H as FloatButton, I as FloatButtonBackTopProps, J as FloatButtonGroupProps, K as FloatButtonProps, L as FloatButtonShape, M as FloatingPlacement, N as FloatingTrigger, P as ICON_NAMES, Q as Icon, R as IconName, S as IconProps, T as IconVariant, U as Image, V as ImagePreview, W as ImagePreviewConfig, X as ImagePreviewProps, Y as ImageProps, Z as Input, _ as InputProps, $ as Menu, a0 as MenuClickInfo, a1 as MenuItem, a2 as MenuMode, a3 as MenuProps, a4 as MenuTheme, a5 as MessageConfig, a6 as MessageHandle, a7 as MessageKey, a8 as MessageType, a9 as Modal, aa as ModalActionResult, ab as ModalOpenConfig, ac as ModalProps, ad as ModalType, ae as NotificationConfig, af as NotificationPlacement, ag as NotificationType, ah as Popconfirm, ai as PopconfirmProps, aj as Popover, ak as PopoverProps, al as Progress, am as ProgressProps, an as ProgressStatus, ao as Rate, ap as RateProps, aq as Segmented, ar as SegmentedOption, as as SegmentedProps, at as SegmentedValue, au as Spin, av as SpinProps, aw as StepItem, ax as StepStatus, ay as Steps, az as StepsProps, aA as TabItem, aB as Tabs, aC as TabsContextMenuClickInfo, aD as TabsOrientation, aE as TabsPosition, aF as TabsProps, aG as TabsType, aH as Tag, aI as TagProps, aJ as TagStatus, 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-BeiAQiDY.js';
5
- 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-BDWdo7qt.js';
2
+ import { HTMLAttributes, ReactNode, CSSProperties, ElementType, FormHTMLAttributes, InputHTMLAttributes, ChangeEvent, TextareaHTMLAttributes, MouseEvent, Key, PointerEvent, Ref, ReactElement, ButtonHTMLAttributes } from 'react';
3
+ import { O as OverlayContainer, a as OverlayApiHandle } from './core-DFYheaoJ.js';
4
+ export { B as Badge, b as BadgeProps, c as BadgeRibbonProps, d as BadgeStatus, e as Breadcrumb, f as BreadcrumbItem, g as BreadcrumbProps, h as Button, i as ButtonProps, j as ButtonSize, k as ButtonVariant, C as Calendar, l as CalendarProps, m as Card, n as CardAccent, o as CardProps, p as Carousel, q as CarouselProps, r as CarouselRef, s as Collapse, t as CollapseItem, u as CollapseKey, v as CollapseProps, D as Dropdown, w as DropdownButtonProps, x as DropdownMenuProps, y as DropdownOpenSource, z as DropdownPlacement, A as DropdownProps, E as DropdownTrigger, F as FILLED_ICON_NAMES, G as FilledIconName, H as FloatButton, I as FloatButtonBackTopProps, J as FloatButtonGroupProps, K as FloatButtonProps, L as FloatButtonShape, M as FloatingPlacement, N as FloatingTrigger, P as ICON_NAMES, Q as Icon, R as IconName, S as IconProps, T as IconVariant, U as Image, V as ImagePreview, W as ImagePreviewConfig, X as ImagePreviewProps, Y as ImageProps, Z as Input, _ as InputProps, $ as Menu, a0 as MenuClickInfo, a1 as MenuItem, a2 as MenuMode, a3 as MenuProps, a4 as MenuTheme, a5 as MessageConfig, a6 as MessageHandle, a7 as MessageKey, a8 as MessageType, a9 as Modal, aa as ModalActionResult, ab as ModalOpenConfig, ac as ModalProps, ad as ModalType, ae as NotificationConfig, af as NotificationPlacement, ag as NotificationType, ah as Popconfirm, ai as PopconfirmProps, aj as Popover, ak as PopoverProps, al as Progress, am as ProgressProps, an as ProgressStatus, ao as Rate, ap as RateProps, aq as Segmented, ar as SegmentedOption, as as SegmentedProps, at as SegmentedValue, au as Spin, av as SpinProps, aw as StepItem, ax as StepStatus, ay as Steps, az as StepsProps, aA as TabItem, aB as Tabs, aC as TabsContextMenuClickInfo, aD as TabsOrientation, aE as TabsPosition, aF as TabsProps, aG as TabsType, aH as Tag, aI as TagProps, aJ as TagStatus, 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-DFYheaoJ.js';
5
+ 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-DOyG1DGp.js';
6
6
  import { C as ControlSize, a as ControlStatus, I as InputPlaceholderMode } from './Select-CJJ5LQap.js';
7
7
  export { S as Select, b as SelectChangeValue, c as SelectMode, d as SelectOption, e as SelectProps, f as SelectValue } from './Select-CJJ5LQap.js';
8
8
  export { RichTextContent, RichTextContentFormat, RichTextContentProps, RichTextEditor, RichTextEditorProps, RichTextImagePasteHandler, RichTextToolbar } from './rich-text-editor.js';
@@ -328,7 +328,7 @@ interface FormItemProps {
328
328
  children?: ReactNode | ((form: FormInstance) => ReactNode);
329
329
  className?: string;
330
330
  }
331
- declare function FormItem({ name, label, rules, required, extra, help, validateStatus, valuePropName, trigger, validateTrigger, getValueFromEvent, noStyle, children, className, }: FormItemProps): string | number | boolean | Iterable<ReactNode> | react.JSX.Element | null | undefined;
331
+ declare function FormItem({ name, label, rules, required, extra, help, validateStatus, valuePropName, trigger, validateTrigger, getValueFromEvent, noStyle, children, className, }: FormItemProps): react.JSX.Element;
332
332
  interface FormListField {
333
333
  key: number;
334
334
  name: number;
@@ -493,11 +493,13 @@ interface TreeSelectNode {
493
493
  key?: string | number;
494
494
  disabled?: boolean;
495
495
  selectable?: boolean;
496
+ disableCheckbox?: boolean;
497
+ checkable?: boolean;
496
498
  children?: readonly TreeSelectNode[];
497
499
  }
498
- interface TreeSelectProps extends Omit<HTMLAttributes<HTMLDivElement>, "defaultValue" | "onChange"> {
500
+ interface TreeSelectProps extends Omit<HTMLAttributes<HTMLDivElement>, "defaultValue" | "onChange" | "onSelect"> {
499
501
  treeData: readonly TreeSelectNode[];
500
- value?: TreeSelectValue | readonly TreeSelectValue[];
502
+ value?: TreeSelectValue | readonly TreeSelectValue[] | null;
501
503
  defaultValue?: TreeSelectValue | readonly TreeSelectValue[];
502
504
  multiple?: boolean;
503
505
  treeCheckable?: boolean;
@@ -510,11 +512,46 @@ interface TreeSelectProps extends Omit<HTMLAttributes<HTMLDivElement>, "defaultV
510
512
  disabled?: boolean;
511
513
  size?: ControlSize;
512
514
  status?: ControlStatus;
515
+ open?: boolean;
516
+ defaultOpen?: boolean;
517
+ searchValue?: string;
518
+ treeExpandedKeys?: readonly TreeSelectValue[];
519
+ treeDefaultExpandedKeys?: readonly TreeSelectValue[];
520
+ onTreeExpand?: (keys: TreeSelectValue[]) => void;
521
+ filterTreeNode?: false | ((search: string, node: TreeSelectNode) => boolean);
522
+ /** 默认独立勾选;关闭后父子节点联动,禁用节点作为边界。 */
523
+ treeCheckStrictly?: boolean;
524
+ showCheckedStrategy?: "all" | "parent" | "child";
525
+ loading?: boolean;
526
+ listHeight?: number;
527
+ popupClassName?: string;
528
+ popupStyle?: React.CSSProperties;
529
+ dropdownFooter?: ReactNode;
530
+ displayRender?: (nodes: readonly TreeSelectNode[]) => ReactNode;
531
+ renderTrigger?: (state: {
532
+ open: boolean;
533
+ toggle: () => void;
534
+ clear: () => void;
535
+ }) => ReactNode;
536
+ onClear?: () => void;
537
+ onSelect?: (value: TreeSelectValue, node: TreeSelectNode) => void;
538
+ onDeselect?: (value: TreeSelectValue, node: TreeSelectNode) => void;
513
539
  onChange?: (value: TreeSelectValue | readonly TreeSelectValue[] | undefined, nodes: readonly TreeSelectNode[]) => void;
514
540
  onSearch?: (value: string) => void;
515
541
  onDropdownVisibleChange?: (open: boolean) => void;
516
542
  }
517
- declare function TreeSelect({ treeData, value, defaultValue, multiple, treeCheckable, showSearch, allowClear, treeDefaultExpandAll, placeholder, searchPlaceholder, maxTagCount, disabled, size, status, className, onChange, onSearch, onDropdownVisibleChange, ...props }: TreeSelectProps): react.JSX.Element;
543
+ declare function TreeSelect({ treeData, value, defaultValue, multiple, treeCheckable, showSearch, allowClear, treeDefaultExpandAll, placeholder, searchPlaceholder, maxTagCount, disabled, size, 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;
544
+
545
+ interface FlatTreeOptions {
546
+ idField?: string;
547
+ parentIdField?: string;
548
+ rootParentId?: unknown;
549
+ }
550
+ type FlatTreeNode<T> = T & {
551
+ children: FlatTreeNode<T>[];
552
+ };
553
+ /** 平级列表转树;容忍孤儿节点,并切断自引用和循环关系,防止递归溢出。 */
554
+ declare function buildFlatTree<T extends Record<string, any>>(items: readonly T[], options?: FlatTreeOptions): FlatTreeNode<T>[];
518
555
 
519
556
  interface TextAreaProps extends TextareaHTMLAttributes<HTMLTextAreaElement> {
520
557
  label?: ReactNode;
@@ -908,7 +945,7 @@ interface TableSettingsAdapter {
908
945
 
909
946
  declare const Table: <T extends Record<string, unknown> = Record<string, unknown>>(props: TableProps<T> & {
910
947
  ref?: Ref<TableRef<T>>;
911
- }) => ReactNode;
948
+ }) => ReactElement | null;
912
949
 
913
950
  interface TableColumnTransformPluginOptions<T> {
914
951
  prepend?: readonly TableColumn<T>[];
@@ -1219,4 +1256,66 @@ declare const SIA_THEME: {
1219
1256
  };
1220
1257
  declare function applySiaTheme(mode: SiaThemeMode, target?: HTMLElement): void;
1221
1258
 
1222
- export { Alert, type AlertProps, type AlertStatus, type AnyTablePlugin, Cascader, type CascaderFieldNames, type CascaderOption, type CascaderProps, type CascaderValue, Checkbox, type CheckboxGroupProps, type CheckboxOption, type CheckboxProps, type CheckboxValue, Col, type ColProps, type ColSize, ColorPicker, type ColorPickerMode, type ColorPickerPreset, type ColorPickerProps, ControlSize, ControlStatus, DEFAULT_PAGE_SIZE_OPTIONS, Divider, type DividerProps, Drawer, type DrawerOpenConfig, type DrawerPlacement, type DrawerProps, type DrawerPush, type DrawerPushConfig, Editor, type EditorCommand, type EditorCompletionContext, type EditorCompletionItem, type EditorCompletionItemKind, type EditorCompletionProvider, type EditorContextMenuItem, type EditorHandle, type EditorKeyDownEvent, type EditorLanguage, type EditorMarker, type EditorProps, type EditorRange, type EditorSelectionChange, type EditorTheme, Flex, type FlexProps, FloatingScrollbarProvider, type FloatingScrollbarProviderProps, Form, type FormErrorField, type FormInstance, type FormItemProps, type FormListField, type FormListOperation, type FormListProps, type FormProps, type FormRule, type FormValues, type GridBreakpoint, InputNumber, type InputNumberProps, InputPlaceholderMode, type LayoutGap, Markdown, type MarkdownProps, type NamePath, OverlayApiHandle, Pagination, type PaginationProps, Radio, type RadioGroupProps, type RadioOption, type RadioProps, type RadioValue, Row, type RowProps, SIA_THEME, type SiaThemeMode, Slider, type SliderMark, type SliderProps, type SliderValue, Space, type SpaceCompactProps, type SpaceProps, Splitter, type SplitterPanelProps, type SplitterProps, Switch, type SwitchProps, type SwitchVariant, Table, type TableAlign, type TableCellAddress, type TableCellRange, type TableCellRenderInfo, type TableCellSelectionApi, type TableCellSelectionPluginOptions, type TableColumn, type TableColumnSettingApi, type TableColumnSettingItem, type TableColumnSettingPluginOptions, type TableColumnTransformPluginOptions, type TableEditableApi, type TableEditableCellConfig, type TableEditableCellType, type TableEditablePluginOptions, type TableExportApi, type TableExportPluginOptions, type TableExportScope, type TableFilterApi, type TableFilterPluginOptions, type TableFilterValues, type TableFixed, type TableHighlightPluginOptions, type TableHighlightValue, type TableIndexPluginOptions, type TableKey, type TableMergeStickyConfig, type TablePageParams, type TablePaginationApi, type TablePaginationPluginOptions, type TablePlugin, type TablePluginCellProps, type TablePluginContext, type TablePluginEvent, type TableProps, type TableRef, type TableResizeApi, type TableResizePluginOptions, type TableRow, type TableRowSpanPluginOptions, type TableSelectedCell, type TableSelectionApi, type TableSelectionMode, type TableSelectionPluginOptions, type TableSettingsAdapter, type TableSettingsSnapshot, type TableSize, type TableSortApi, type TableSortInfo, type TableSortPluginOptions, type TableSummaryPluginOptions, type TableSummaryRow, type TableToolbarItem, type TableToolbarPluginOptions, type TableTreeApi, type TableTreePluginOptions, TextArea, type TextAreaProps, ThemeSwitch, type ThemeSwitchProps, TimePicker, type TimePickerProps, type TimeRangePickerProps, ToolPanel, type ToolPanelPlacement, type ToolPanelProps, TreeSelect, type TreeSelectNode, type TreeSelectProps, type TreeSelectValue, Treemap, type TreemapNode, type TreemapNodeClickInfo, type TreemapNodeKind, type TreemapProps, type WindowAction, type WindowActionHandler, type WindowControlAction, type WindowControlLabels, WindowControls, type WindowControlsProps, WindowFrame, type WindowFrameProps, WindowTitleBar, type WindowTitleBarActionsAlign, type WindowTitleBarProps, applySiaTheme, createCellSelectionPlugin, createColumnSettingPlugin, createColumnTransformPlugin, createEditablePlugin, createExportPlugin, createFilterPlugin, createHighlightPlugin, createIndexPlugin, createLocalStorageTableSettingsAdapter, createPaginationPlugin, createResizePlugin, createRowSpanPlugin, createSelectionPlugin, createSortPlugin, createSummaryPlugin, createToolbarPlugin, createTreePlugin, useForm };
1259
+ type SelectionValue = string | number;
1260
+ interface SelectionOption {
1261
+ value: SelectionValue;
1262
+ label: ReactNode;
1263
+ disabled?: boolean;
1264
+ disabledTip?: ReactNode;
1265
+ group?: string;
1266
+ optionType?: "divider";
1267
+ }
1268
+ interface SelectionPanelProps {
1269
+ options: readonly SelectionOption[];
1270
+ value: readonly SelectionValue[];
1271
+ onChange: (values: SelectionValue[]) => void;
1272
+ multiple?: boolean;
1273
+ disabled?: boolean;
1274
+ loading?: boolean;
1275
+ showSearch?: boolean;
1276
+ searchValue?: string;
1277
+ onSearch?: (value: string) => void;
1278
+ selectedOnly?: boolean;
1279
+ showValue?: boolean;
1280
+ displayField?: "label" | "value";
1281
+ columns?: number;
1282
+ maxHeight?: number;
1283
+ autoFocusSearch?: boolean;
1284
+ }
1285
+ /** 可嵌入下拉或弹窗的分组选择面板,长列表按行虚拟化。 */
1286
+ declare function SelectionPanel({ options, value, onChange, multiple, disabled, loading, showSearch, searchValue, onSearch, selectedOnly, showValue, displayField, columns, maxHeight, autoFocusSearch }: SelectionPanelProps): react.JSX.Element;
1287
+
1288
+ interface InputSelectProps {
1289
+ options: readonly SelectionOption[];
1290
+ value?: SelectionValue | readonly SelectionValue[] | null;
1291
+ defaultValue?: SelectionValue | readonly SelectionValue[];
1292
+ onChange?: (value: SelectionValue | SelectionValue[] | undefined) => void;
1293
+ multiple?: boolean;
1294
+ displayField?: "label" | "value";
1295
+ showValue?: boolean;
1296
+ placeholder?: string;
1297
+ size?: ControlSize;
1298
+ status?: ControlStatus;
1299
+ disabled?: boolean;
1300
+ loading?: boolean;
1301
+ allowClear?: boolean;
1302
+ hideSearch?: boolean;
1303
+ inputMaxLength?: number;
1304
+ parseInput?: (text: string) => SelectionValue | SelectionValue[] | undefined;
1305
+ enableModal?: boolean | {
1306
+ title?: string;
1307
+ width?: number | string;
1308
+ columns?: number;
1309
+ maxHeight?: number;
1310
+ };
1311
+ suffix?: ReactNode;
1312
+ style?: CSSProperties;
1313
+ className?: string;
1314
+ id?: string;
1315
+ "aria-label"?: string;
1316
+ "aria-required"?: boolean | "true" | "false";
1317
+ onOpenChange?: (open: boolean) => void;
1318
+ }
1319
+ declare const InputSelect: react.ForwardRefExoticComponent<InputSelectProps & react.RefAttributes<HTMLInputElement>>;
1320
+
1321
+ export { Alert, type AlertProps, type AlertStatus, type AnyTablePlugin, Cascader, type CascaderFieldNames, type CascaderOption, type CascaderProps, type CascaderValue, Checkbox, type CheckboxGroupProps, type CheckboxOption, type CheckboxProps, type CheckboxValue, Col, type ColProps, type ColSize, ColorPicker, type ColorPickerMode, type ColorPickerPreset, type ColorPickerProps, ControlSize, ControlStatus, DEFAULT_PAGE_SIZE_OPTIONS, Divider, type DividerProps, Drawer, type DrawerOpenConfig, type DrawerPlacement, type DrawerProps, type DrawerPush, type DrawerPushConfig, Editor, type EditorCommand, type EditorCompletionContext, type EditorCompletionItem, type EditorCompletionItemKind, type EditorCompletionProvider, type EditorContextMenuItem, type EditorHandle, type EditorKeyDownEvent, type EditorLanguage, type EditorMarker, type EditorProps, type EditorRange, type EditorSelectionChange, type EditorTheme, type FlatTreeNode, type FlatTreeOptions, Flex, type FlexProps, FloatingScrollbarProvider, type FloatingScrollbarProviderProps, Form, type FormErrorField, type FormInstance, type FormItemProps, type FormListField, type FormListOperation, type FormListProps, type FormProps, type FormRule, type FormValues, type GridBreakpoint, InputNumber, type InputNumberProps, InputPlaceholderMode, InputSelect, type InputSelectProps, type LayoutGap, Markdown, type MarkdownProps, type NamePath, OverlayApiHandle, Pagination, type PaginationProps, Radio, type RadioGroupProps, type RadioOption, type RadioProps, type RadioValue, Row, type RowProps, SIA_THEME, type SelectionOption, SelectionPanel, type SelectionPanelProps, type SelectionValue, type SiaThemeMode, Slider, type SliderMark, type SliderProps, type SliderValue, Space, type SpaceCompactProps, type SpaceProps, Splitter, type SplitterPanelProps, type SplitterProps, Switch, type SwitchProps, type SwitchVariant, Table, type TableAlign, type TableCellAddress, type TableCellRange, type TableCellRenderInfo, type TableCellSelectionApi, type TableCellSelectionPluginOptions, type TableColumn, type TableColumnSettingApi, type TableColumnSettingItem, type TableColumnSettingPluginOptions, type TableColumnTransformPluginOptions, type TableEditableApi, type TableEditableCellConfig, type TableEditableCellType, type TableEditablePluginOptions, type TableExportApi, type TableExportPluginOptions, type TableExportScope, type TableFilterApi, type TableFilterPluginOptions, type TableFilterValues, type TableFixed, type TableHighlightPluginOptions, type TableHighlightValue, type TableIndexPluginOptions, type TableKey, type TableMergeStickyConfig, type TablePageParams, type TablePaginationApi, type TablePaginationPluginOptions, type TablePlugin, type TablePluginCellProps, type TablePluginContext, type TablePluginEvent, type TableProps, type TableRef, type TableResizeApi, type TableResizePluginOptions, type TableRow, type TableRowSpanPluginOptions, type TableSelectedCell, type TableSelectionApi, type TableSelectionMode, type TableSelectionPluginOptions, type TableSettingsAdapter, type TableSettingsSnapshot, type TableSize, type TableSortApi, type TableSortInfo, type TableSortPluginOptions, type TableSummaryPluginOptions, type TableSummaryRow, type TableToolbarItem, type TableToolbarPluginOptions, type TableTreeApi, type TableTreePluginOptions, TextArea, type TextAreaProps, ThemeSwitch, type ThemeSwitchProps, TimePicker, type TimePickerProps, type TimeRangePickerProps, ToolPanel, type ToolPanelPlacement, type ToolPanelProps, TreeSelect, type TreeSelectNode, type TreeSelectProps, type TreeSelectValue, Treemap, type TreemapNode, type TreemapNodeClickInfo, type TreemapNodeKind, type TreemapProps, type WindowAction, type WindowActionHandler, type WindowControlAction, type WindowControlLabels, WindowControls, type WindowControlsProps, WindowFrame, type WindowFrameProps, WindowTitleBar, type WindowTitleBarActionsAlign, type WindowTitleBarProps, applySiaTheme, buildFlatTree, createCellSelectionPlugin, createColumnSettingPlugin, createColumnTransformPlugin, createEditablePlugin, createExportPlugin, createFilterPlugin, createHighlightPlugin, createIndexPlugin, createLocalStorageTableSettingsAdapter, createPaginationPlugin, createResizePlugin, createRowSpanPlugin, createSelectionPlugin, createSortPlugin, createSummaryPlugin, createToolbarPlugin, createTreePlugin, useForm };