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

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.js CHANGED
@@ -79,7 +79,7 @@ import {
79
79
  Watermark,
80
80
  message,
81
81
  notification
82
- } from "./chunk-KJYKC5IV.js";
82
+ } from "./chunk-3RWL67CK.js";
83
83
  import {
84
84
  TextArea
85
85
  } from "./chunk-YT6E3X2K.js";
@@ -89,12 +89,12 @@ import {
89
89
  import {
90
90
  RichTextContent,
91
91
  RichTextEditor
92
- } from "./chunk-MUTJVDM6.js";
92
+ } from "./chunk-I3EF5SF2.js";
93
93
  import {
94
94
  DatePicker,
95
95
  SelectDateRange,
96
96
  TimePanel
97
- } from "./chunk-G47MREYI.js";
97
+ } from "./chunk-LO3BUBWU.js";
98
98
  import {
99
99
  Checkbox,
100
100
  FloatingScrollbarProvider,
@@ -109,7 +109,7 @@ import {
109
109
  Tree,
110
110
  useOverlayLifecycle,
111
111
  useScrollbarProximity
112
- } from "./chunk-VXSG4EAO.js";
112
+ } from "./chunk-4HB6GC24.js";
113
113
  import {
114
114
  Dropdown,
115
115
  FILLED_ICON_NAMES,
@@ -120,7 +120,7 @@ import {
120
120
  PopupPortal,
121
121
  Segmented,
122
122
  Steps
123
- } from "./chunk-ALWHRV4L.js";
123
+ } from "./chunk-SUMXP2SF.js";
124
124
  import {
125
125
  Button
126
126
  } from "./chunk-TZGUBGA4.js";
@@ -4052,9 +4052,135 @@ var InputNumber = forwardRef4(function InputNumber2({
4052
4052
  ] });
4053
4053
  });
4054
4054
 
4055
+ // src/components/SelectModal.tsx
4056
+ import { useState as useState14 } from "react";
4057
+ import { Fragment as Fragment6, jsx as jsx18, jsxs as jsxs18 } from "react/jsx-runtime";
4058
+ function SelectModalBody({ config, values, disabled, onChange }) {
4059
+ const [query, setQuery] = useState14("");
4060
+ const [selectedOnly, setSelectedOnly] = useState14(false);
4061
+ const multiple = config.mode === "multiple";
4062
+ const search = query.trim();
4063
+ const filtered = config.options.filter((option) => !search || (config.filterOption ? config.filterOption(search, option) : [option.label, option.value].some((text) => String(text ?? "").toLowerCase().includes(search.toLowerCase()))));
4064
+ const enabled = filtered.filter((option) => !option.disabled && (!selectedOnly || values.includes(option.value)));
4065
+ const all = enabled.length > 0 && enabled.every((option) => values.includes(option.value));
4066
+ const batch = (action) => {
4067
+ const next = new Set(values);
4068
+ enabled.forEach((option) => {
4069
+ if (action === "remove" || action === "invert" && next.has(option.value)) next.delete(option.value);
4070
+ else next.add(option.value);
4071
+ });
4072
+ onChange([...next]);
4073
+ };
4074
+ return /* @__PURE__ */ jsxs18(Fragment6, { children: [
4075
+ /* @__PURE__ */ jsxs18("div", { className: "sia-select-modal__heading", children: [
4076
+ /* @__PURE__ */ jsxs18("div", { role: "tablist", "aria-label": "\u9009\u9879\u8303\u56F4", children: [
4077
+ /* @__PURE__ */ jsx18(Button, { role: "tab", "aria-selected": !selectedOnly, variant: "link", onClick: () => setSelectedOnly(false), children: "\u5168\u90E8" }),
4078
+ /* @__PURE__ */ jsxs18(Button, { role: "tab", "aria-selected": selectedOnly, variant: "link", onClick: () => setSelectedOnly(true), children: [
4079
+ "\u5DF2\u9009\u9879(",
4080
+ values.length,
4081
+ ")"
4082
+ ] })
4083
+ ] }),
4084
+ /* @__PURE__ */ jsx18(
4085
+ Input,
4086
+ {
4087
+ "aria-label": config.searchPlaceholder ?? "\u641C\u7D22\u9009\u9879",
4088
+ placeholder: config.searchPlaceholder ?? "\u641C\u7D22\u9009\u9879",
4089
+ prefix: /* @__PURE__ */ jsx18(Icon, { name: "search", size: 14 }),
4090
+ value: query,
4091
+ allowClear: true,
4092
+ disabled,
4093
+ onChange: (event) => {
4094
+ setQuery(event.target.value);
4095
+ config.onSearch?.(event.target.value);
4096
+ }
4097
+ }
4098
+ )
4099
+ ] }),
4100
+ multiple ? /* @__PURE__ */ jsxs18("div", { className: "sia-select-modal__actions", children: [
4101
+ /* @__PURE__ */ jsx18(
4102
+ Checkbox,
4103
+ {
4104
+ checked: all,
4105
+ indeterminate: !all && enabled.some((option) => values.includes(option.value)),
4106
+ disabled: disabled || !enabled.length,
4107
+ onChange: (checked) => batch(checked ? "all" : "remove"),
4108
+ children: "\u5168\u9009"
4109
+ }
4110
+ ),
4111
+ /* @__PURE__ */ jsx18(Button, { variant: "link", size: "small", disabled: disabled || !enabled.length, onClick: () => batch("invert"), children: "\u53CD\u9009" }),
4112
+ /* @__PURE__ */ jsx18(Button, { variant: "link", size: "small", danger: true, disabled: disabled || !values.length, onClick: () => onChange([]), children: "\u6E05\u7A7A" })
4113
+ ] }) : null,
4114
+ /* @__PURE__ */ jsx18(
4115
+ SelectionPanel,
4116
+ {
4117
+ options: filtered,
4118
+ value: values,
4119
+ onChange,
4120
+ multiple,
4121
+ disabled,
4122
+ selectedOnly,
4123
+ showValue: config.showValue,
4124
+ showSearch: false,
4125
+ showActions: false,
4126
+ includeUnknownValues: false,
4127
+ columns: config.columns ?? 3,
4128
+ maxHeight: config.maxHeight ?? 360
4129
+ }
4130
+ )
4131
+ ] });
4132
+ }
4133
+ function openSelectModal(config) {
4134
+ let current = config;
4135
+ const normalize = (value) => value == null ? [] : Array.isArray(value) ? [...value] : [value];
4136
+ let values = normalize(config.value);
4137
+ if (config.mode !== "multiple") values = values.slice(0, 1);
4138
+ let submitting = false;
4139
+ function body() {
4140
+ return /* @__PURE__ */ jsx18(SelectModalBody, { config: current, values, disabled: submitting || Boolean(current.confirmLoading), onChange: (next) => {
4141
+ values = next;
4142
+ handle.update({ children: body() });
4143
+ } });
4144
+ }
4145
+ function modalConfig() {
4146
+ const { options, value, mode, showValue, columns, maxHeight, searchPlaceholder, filterOption, onSearch, onConfirm, ...modal } = current;
4147
+ return {
4148
+ ...modal,
4149
+ title: current.title ?? "\u8BF7\u9009\u62E9",
4150
+ width: current.width ?? 900,
4151
+ className: `sia-select-modal ${current.className ?? ""}`,
4152
+ children: body(),
4153
+ onOk: async () => {
4154
+ const selected = values.map((value2) => current.options.find((option) => option.value === value2) ?? { value: value2, label: String(value2) });
4155
+ submitting = true;
4156
+ handle.update({ children: body() });
4157
+ try {
4158
+ return await current.onConfirm?.(
4159
+ current.mode === "multiple" ? [...values] : values[0] ?? null,
4160
+ current.mode === "multiple" ? selected : selected[0] ?? null
4161
+ );
4162
+ } finally {
4163
+ submitting = false;
4164
+ handle.update({ children: body() });
4165
+ }
4166
+ }
4167
+ };
4168
+ }
4169
+ const handle = Modal.open(modalConfig());
4170
+ return {
4171
+ destroy: handle.destroy,
4172
+ update(next) {
4173
+ current = { ...current, ...next };
4174
+ if (Object.prototype.hasOwnProperty.call(next, "value")) values = normalize(next.value);
4175
+ if (current.mode !== "multiple") values = values.slice(0, 1);
4176
+ handle.update(modalConfig());
4177
+ }
4178
+ };
4179
+ }
4180
+
4055
4181
  // src/components/Treemap.tsx
4056
- import { useEffect as useEffect10, useMemo as useMemo8, useRef as useRef12, useState as useState14 } from "react";
4057
- import { jsx as jsx18, jsxs as jsxs18 } from "react/jsx-runtime";
4182
+ import { useEffect as useEffect10, useMemo as useMemo8, useRef as useRef12, useState as useState15 } from "react";
4183
+ import { jsx as jsx19, jsxs as jsxs19 } from "react/jsx-runtime";
4058
4184
  function positiveValue(value) {
4059
4185
  return Number.isFinite(value) && value > 0 ? value : 1;
4060
4186
  }
@@ -4341,9 +4467,9 @@ function Treemap({
4341
4467
  ...props
4342
4468
  }) {
4343
4469
  const containerRef = useRef12(null);
4344
- const [size, setSize] = useState14({ width: 0, height: 0 });
4345
- const [internalExpandedKeys, setInternalExpandedKeys] = useState14(() => [...defaultExpandedKeys]);
4346
- const [internalFocusedKey, setInternalFocusedKey] = useState14(defaultFocusedKey);
4470
+ const [size, setSize] = useState15({ width: 0, height: 0 });
4471
+ const [internalExpandedKeys, setInternalExpandedKeys] = useState15(() => [...defaultExpandedKeys]);
4472
+ const [internalFocusedKey, setInternalFocusedKey] = useState15(defaultFocusedKey);
4347
4473
  const currentExpandedKeys = expandedKeys ?? internalExpandedKeys;
4348
4474
  const currentFocusedKey = focusedKey === void 0 ? internalFocusedKey : focusedKey;
4349
4475
  const expandedSet = useMemo8(() => new Set(currentExpandedKeys), [currentExpandedKeys]);
@@ -4399,7 +4525,7 @@ function Treemap({
4399
4525
  }
4400
4526
  onNodeClick?.({ node, expanded: isExpanded, nativeEvent });
4401
4527
  }
4402
- return /* @__PURE__ */ jsxs18(
4528
+ return /* @__PURE__ */ jsxs19(
4403
4529
  "div",
4404
4530
  {
4405
4531
  ...props,
@@ -4408,7 +4534,7 @@ function Treemap({
4408
4534
  style,
4409
4535
  role: "tree",
4410
4536
  children: [
4411
- data.length === 0 ? /* @__PURE__ */ jsx18("div", { className: "sia-treemap__empty", children: emptyContent }) : null,
4537
+ data.length === 0 ? /* @__PURE__ */ jsx19("div", { className: "sia-treemap__empty", children: emptyContent }) : null,
4412
4538
  positions.map(({ node, rectangle, depth, expanded }) => {
4413
4539
  const active = node.key === activeKey || Boolean(node.__active);
4414
4540
  const fontSize = tileFontSize(rectangle);
@@ -4427,7 +4553,7 @@ function Treemap({
4427
4553
  const hasChildren = Boolean(node.hasChildren || node.children?.length);
4428
4554
  const title = `${node.label} \xB7 ${String(valueFormatter(node.value, node))}`;
4429
4555
  if (expanded) {
4430
- return /* @__PURE__ */ jsx18(
4556
+ return /* @__PURE__ */ jsx19(
4431
4557
  "div",
4432
4558
  {
4433
4559
  className: `sia-treemap__tile sia-treemap__tile--directory is-expanded${effectiveFocusedNode?.key === node.key ? " is-focused" : ""}${active ? " is-active" : ""}`,
@@ -4436,8 +4562,8 @@ function Treemap({
4436
4562
  "aria-expanded": "true",
4437
4563
  title,
4438
4564
  "data-treemap-key": node.key,
4439
- children: /* @__PURE__ */ jsxs18("div", { className: "sia-treemap__header", children: [
4440
- /* @__PURE__ */ jsxs18(
4565
+ children: /* @__PURE__ */ jsxs19("div", { className: "sia-treemap__header", children: [
4566
+ /* @__PURE__ */ jsxs19(
4441
4567
  "button",
4442
4568
  {
4443
4569
  type: "button",
@@ -4445,12 +4571,12 @@ function Treemap({
4445
4571
  disabled: node.disabled,
4446
4572
  onClick: (event) => handleNodeClick(node, event),
4447
4573
  children: [
4448
- /* @__PURE__ */ jsx18("span", { className: "sia-treemap__label", children: node.label }),
4449
- showValue ? /* @__PURE__ */ jsx18("span", { className: "sia-treemap__value", children: valueFormatter(node.value, node) }) : null
4574
+ /* @__PURE__ */ jsx19("span", { className: "sia-treemap__label", children: node.label }),
4575
+ showValue ? /* @__PURE__ */ jsx19("span", { className: "sia-treemap__value", children: valueFormatter(node.value, node) }) : null
4450
4576
  ]
4451
4577
  }
4452
4578
  ),
4453
- /* @__PURE__ */ jsx18(
4579
+ /* @__PURE__ */ jsx19(
4454
4580
  "button",
4455
4581
  {
4456
4582
  type: "button",
@@ -4458,7 +4584,7 @@ function Treemap({
4458
4584
  "aria-label": effectiveFocusedNode?.key === node.key ? `\u8FD8\u539F ${node.label}` : `\u805A\u7126\u5C55\u5F00 ${node.label}`,
4459
4585
  title: effectiveFocusedNode?.key === node.key ? "\u8FD8\u539F\u539F\u6709\u89C6\u56FE" : "\u5C55\u5F00\u5230\u6574\u4E2A\u533A\u57DF",
4460
4586
  onClick: () => updateFocusedKey(effectiveFocusedNode?.key === node.key ? null : node.key),
4461
- children: /* @__PURE__ */ jsx18(Icon, { name: effectiveFocusedNode?.key === node.key ? "fullscreen-exit" : "fullscreen", size: 14 })
4587
+ children: /* @__PURE__ */ jsx19(Icon, { name: effectiveFocusedNode?.key === node.key ? "fullscreen-exit" : "fullscreen", size: 14 })
4462
4588
  }
4463
4589
  )
4464
4590
  ] })
@@ -4466,7 +4592,7 @@ function Treemap({
4466
4592
  node.key
4467
4593
  );
4468
4594
  }
4469
- return /* @__PURE__ */ jsx18(
4595
+ return /* @__PURE__ */ jsx19(
4470
4596
  "button",
4471
4597
  {
4472
4598
  type: "button",
@@ -4478,9 +4604,9 @@ function Treemap({
4478
4604
  title,
4479
4605
  "data-treemap-key": node.key,
4480
4606
  onClick: (event) => handleNodeClick(node, event),
4481
- children: showLabel ? /* @__PURE__ */ jsxs18("span", { className: "sia-treemap__content", children: [
4482
- /* @__PURE__ */ jsx18("span", { className: "sia-treemap__label", children: node.label }),
4483
- showValue ? /* @__PURE__ */ jsx18("span", { className: "sia-treemap__value", children: valueFormatter(node.value, node) }) : null
4607
+ children: showLabel ? /* @__PURE__ */ jsxs19("span", { className: "sia-treemap__content", children: [
4608
+ /* @__PURE__ */ jsx19("span", { className: "sia-treemap__label", children: node.label }),
4609
+ showValue ? /* @__PURE__ */ jsx19("span", { className: "sia-treemap__value", children: valueFormatter(node.value, node) }) : null
4484
4610
  ] }) : null
4485
4611
  },
4486
4612
  node.key
@@ -4492,11 +4618,11 @@ function Treemap({
4492
4618
  }
4493
4619
 
4494
4620
  // src/components/Table/TableCellContent.tsx
4495
- import { useLayoutEffect as useLayoutEffect2, useRef as useRef13, useState as useState15 } from "react";
4496
- import { jsx as jsx19 } from "react/jsx-runtime";
4621
+ import { useLayoutEffect as useLayoutEffect2, useRef as useRef13, useState as useState16 } from "react";
4622
+ import { jsx as jsx20 } from "react/jsx-runtime";
4497
4623
  function TableCellContent({ children, ellipsis, title }) {
4498
4624
  const ref = useRef13(null);
4499
- const [overflowing, setOverflowing] = useState15(false);
4625
+ const [overflowing, setOverflowing] = useState16(false);
4500
4626
  const customContent = typeof children !== "string" && typeof children !== "number" && children != null;
4501
4627
  useLayoutEffect2(() => {
4502
4628
  const element = ref.current;
@@ -4526,14 +4652,14 @@ function TableCellContent({ children, ellipsis, title }) {
4526
4652
  layouts.forEach((layout) => layout.removeAttribute("data-table-inline-layout"));
4527
4653
  };
4528
4654
  }, [children, ellipsis, customContent]);
4529
- return /* @__PURE__ */ jsx19("div", { ref, className: "sia-table__cell-content", title, "data-custom-content": customContent || void 0, "data-content-overflow": ellipsis && customContent && overflowing || void 0, children });
4655
+ return /* @__PURE__ */ jsx20("div", { ref, className: "sia-table__cell-content", title, "data-custom-content": customContent || void 0, "data-content-overflow": ellipsis && customContent && overflowing || void 0, children });
4530
4656
  }
4531
4657
 
4532
4658
  // src/components/Table/Table.tsx
4533
- import { Fragment as Fragment7, forwardRef as forwardRef5, memo, useCallback as useCallback2, useEffect as useEffect12, useImperativeHandle, useMemo as useMemo9, useRef as useRef15, useState as useState17 } from "react";
4659
+ import { Fragment as Fragment8, forwardRef as forwardRef5, memo, useCallback as useCallback2, useEffect as useEffect12, useImperativeHandle, useMemo as useMemo9, useRef as useRef15, useState as useState18 } from "react";
4534
4660
 
4535
4661
  // src/components/Table/plugins.tsx
4536
- import { isValidElement as isValidElement3, useEffect as useEffect11, useRef as useRef14, useState as useState16 } from "react";
4662
+ import { isValidElement as isValidElement3, useEffect as useEffect11, useRef as useRef14, useState as useState17 } from "react";
4537
4663
 
4538
4664
  // src/components/Table/utils.ts
4539
4665
  var AUTO_WIDTH_COLUMN_KEYS = /* @__PURE__ */ new Set(["action", "actions", "operation", "operations"]);
@@ -4586,7 +4712,7 @@ function toTablePageParams(current, pageSize) {
4586
4712
  }
4587
4713
 
4588
4714
  // src/components/Table/plugins.tsx
4589
- import { Fragment as Fragment6, jsx as jsx20, jsxs as jsxs19 } from "react/jsx-runtime";
4715
+ import { Fragment as Fragment7, jsx as jsx21, jsxs as jsxs20 } from "react/jsx-runtime";
4590
4716
  function TableCheckbox({
4591
4717
  checked,
4592
4718
  indeterminate,
@@ -4594,7 +4720,7 @@ function TableCheckbox({
4594
4720
  label,
4595
4721
  onChange
4596
4722
  }) {
4597
- return /* @__PURE__ */ jsx20(
4723
+ return /* @__PURE__ */ jsx21(
4598
4724
  Checkbox,
4599
4725
  {
4600
4726
  className: "sia-table__checkbox",
@@ -5165,20 +5291,20 @@ function TableSelectedItemsPanel({
5165
5291
  onRemove,
5166
5292
  onClear
5167
5293
  }) {
5168
- const [showAll, setShowAll] = useState16(false);
5294
+ const [showAll, setShowAll] = useState17(false);
5169
5295
  const visibleEntries = showAll ? entries : entries.slice(0, maxCount);
5170
5296
  const hiddenCount = Math.max(0, entries.length - visibleEntries.length);
5171
5297
  const baseColumnMap = new Map(
5172
5298
  flattenTableColumns(baseColumns).map((column) => [column.key, column])
5173
5299
  );
5174
- return /* @__PURE__ */ jsxs19("div", { className: "sia-table-selection-panel", children: [
5175
- /* @__PURE__ */ jsxs19("div", { className: "sia-table-selection-panel__header", children: [
5176
- /* @__PURE__ */ jsxs19("strong", { children: [
5300
+ return /* @__PURE__ */ jsxs20("div", { className: "sia-table-selection-panel", children: [
5301
+ /* @__PURE__ */ jsxs20("div", { className: "sia-table-selection-panel__header", children: [
5302
+ /* @__PURE__ */ jsxs20("strong", { children: [
5177
5303
  "\u5DF2\u9009 ",
5178
- /* @__PURE__ */ jsx20("span", { children: entries.length }),
5304
+ /* @__PURE__ */ jsx21("span", { children: entries.length }),
5179
5305
  " \u9879"
5180
5306
  ] }),
5181
- /* @__PURE__ */ jsx20(
5307
+ /* @__PURE__ */ jsx21(
5182
5308
  Button,
5183
5309
  {
5184
5310
  size: "small",
@@ -5189,15 +5315,15 @@ function TableSelectedItemsPanel({
5189
5315
  }
5190
5316
  )
5191
5317
  ] }),
5192
- /* @__PURE__ */ jsx20("div", { className: "sia-table-selection-panel__body", children: /* @__PURE__ */ jsxs19("table", { children: [
5193
- /* @__PURE__ */ jsx20("thead", { children: /* @__PURE__ */ jsxs19("tr", { children: [
5194
- columns.map((column) => /* @__PURE__ */ jsx20("th", { children: getColumnLabel(column) }, column.key)),
5195
- /* @__PURE__ */ jsx20("th", { "aria-label": "\u64CD\u4F5C" })
5318
+ /* @__PURE__ */ jsx21("div", { className: "sia-table-selection-panel__body", children: /* @__PURE__ */ jsxs20("table", { children: [
5319
+ /* @__PURE__ */ jsx21("thead", { children: /* @__PURE__ */ jsxs20("tr", { children: [
5320
+ columns.map((column) => /* @__PURE__ */ jsx21("th", { children: getColumnLabel(column) }, column.key)),
5321
+ /* @__PURE__ */ jsx21("th", { "aria-label": "\u64CD\u4F5C" })
5196
5322
  ] }) }),
5197
- /* @__PURE__ */ jsx20("tbody", { children: visibleEntries.map((entry, selectedIndex) => /* @__PURE__ */ jsxs19("tr", { children: [
5323
+ /* @__PURE__ */ jsx21("tbody", { children: visibleEntries.map((entry, selectedIndex) => /* @__PURE__ */ jsxs20("tr", { children: [
5198
5324
  columns.map((column) => {
5199
5325
  if (column.meta?.plugin === "index")
5200
- return /* @__PURE__ */ jsx20("td", { children: entry.sourceIndex + 1 }, column.key);
5326
+ return /* @__PURE__ */ jsx21("td", { children: entry.sourceIndex + 1 }, column.key);
5201
5327
  const baseColumn = baseColumnMap.get(column.key) ?? column;
5202
5328
  const value = getTableValue(
5203
5329
  entry.record,
@@ -5217,9 +5343,9 @@ function TableSelectedItemsPanel({
5217
5343
  entry.sourceIndex,
5218
5344
  { row, rowIndex: entry.sourceIndex, column: baseColumn }
5219
5345
  ) ?? value;
5220
- return /* @__PURE__ */ jsx20("td", { children: content }, column.key);
5346
+ return /* @__PURE__ */ jsx21("td", { children: content }, column.key);
5221
5347
  }),
5222
- /* @__PURE__ */ jsx20("td", { children: /* @__PURE__ */ jsx20(
5348
+ /* @__PURE__ */ jsx21("td", { children: /* @__PURE__ */ jsx21(
5223
5349
  Button,
5224
5350
  {
5225
5351
  size: "small",
@@ -5230,11 +5356,11 @@ function TableSelectedItemsPanel({
5230
5356
  ) })
5231
5357
  ] }, entry.key)) })
5232
5358
  ] }) }),
5233
- hiddenCount > 0 ? /* @__PURE__ */ jsxs19("div", { className: "sia-table-selection-panel__more", children: [
5359
+ hiddenCount > 0 ? /* @__PURE__ */ jsxs20("div", { className: "sia-table-selection-panel__more", children: [
5234
5360
  "\u8FD8\u6709 ",
5235
5361
  hiddenCount,
5236
5362
  " \u9879\u672A\u5C55\u793A",
5237
- /* @__PURE__ */ jsx20(Button, { size: "small", variant: "link", onClick: () => setShowAll(true), children: "\u5C55\u793A\u5168\u90E8" })
5363
+ /* @__PURE__ */ jsx21(Button, { size: "small", variant: "link", onClick: () => setShowAll(true), children: "\u5C55\u793A\u5168\u90E8" })
5238
5364
  ] }) : null
5239
5365
  ] });
5240
5366
  }
@@ -5349,7 +5475,7 @@ function createSelectionPlugin(options = {}) {
5349
5475
  const keys = selected(context);
5350
5476
  const allChecked = enabledRows.length > 0 && enabledRows.every((row) => keys.includes(row.key));
5351
5477
  const someChecked = enabledRows.some((row) => keys.includes(row.key));
5352
- return /* @__PURE__ */ jsx20(
5478
+ return /* @__PURE__ */ jsx21(
5353
5479
  TableCheckbox,
5354
5480
  {
5355
5481
  label: "\u9009\u62E9\u5F53\u524D\u9875\u5168\u90E8\u884C",
@@ -5365,7 +5491,7 @@ function createSelectionPlugin(options = {}) {
5365
5491
  }
5366
5492
  );
5367
5493
  },
5368
- render: (_value, record, _index, info) => mode === "single" ? /* @__PURE__ */ jsx20(
5494
+ render: (_value, record, _index, info) => mode === "single" ? /* @__PURE__ */ jsx21(
5369
5495
  Radio2,
5370
5496
  {
5371
5497
  className: "sia-table__checkbox",
@@ -5376,7 +5502,7 @@ function createSelectionPlugin(options = {}) {
5376
5502
  onClick: (event) => event.stopPropagation(),
5377
5503
  onChange: () => toggle(info.row.key, record, context)
5378
5504
  }
5379
- ) : /* @__PURE__ */ jsx20(
5505
+ ) : /* @__PURE__ */ jsx21(
5380
5506
  TableCheckbox,
5381
5507
  {
5382
5508
  label: `\u9009\u62E9\u7B2C ${info.rowIndex + 1} \u884C`,
@@ -5415,8 +5541,8 @@ function createSelectionPlugin(options = {}) {
5415
5541
  const columns = flattenTableColumns(context.columns).filter(
5416
5542
  (column) => !column.hidden && column.meta?.plugin !== "selection"
5417
5543
  ).slice(0, Math.max(1, options.selectionPanelColumnCount ?? 4));
5418
- return /* @__PURE__ */ jsxs19("span", { className: "sia-table__selection-footer", children: [
5419
- /* @__PURE__ */ jsx20(
5544
+ return /* @__PURE__ */ jsxs20("span", { className: "sia-table__selection-footer", children: [
5545
+ /* @__PURE__ */ jsx21(
5420
5546
  Popover,
5421
5547
  {
5422
5548
  placement: "top-start",
@@ -5424,7 +5550,7 @@ function createSelectionPlugin(options = {}) {
5424
5550
  open: context.state.panelOpen && entries.length > 0,
5425
5551
  onOpenChange: (panelOpen) => context.setState((state) => ({ ...state, panelOpen })),
5426
5552
  overlayClassName: "sia-table-selection-popover",
5427
- content: /* @__PURE__ */ jsx20(
5553
+ content: /* @__PURE__ */ jsx21(
5428
5554
  TableSelectedItemsPanel,
5429
5555
  {
5430
5556
  entries,
@@ -5440,7 +5566,7 @@ function createSelectionPlugin(options = {}) {
5440
5566
  onClear: () => setKeys([], context)
5441
5567
  }
5442
5568
  ),
5443
- children: /* @__PURE__ */ jsxs19(
5569
+ children: /* @__PURE__ */ jsxs20(
5444
5570
  Button,
5445
5571
  {
5446
5572
  className: "sia-table__selected-trigger",
@@ -5456,7 +5582,7 @@ function createSelectionPlugin(options = {}) {
5456
5582
  )
5457
5583
  }
5458
5584
  ),
5459
- mode === "multiple" && options.showPreserveSelectedRowKeys !== false ? /* @__PURE__ */ jsx20(
5585
+ mode === "multiple" && options.showPreserveSelectedRowKeys !== false ? /* @__PURE__ */ jsx21(
5460
5586
  Checkbox,
5461
5587
  {
5462
5588
  checked: preserving(context),
@@ -5511,9 +5637,9 @@ function createSortPlugin(options = {}) {
5511
5637
  ...column,
5512
5638
  renderHeader: (currentColumn, coreContext) => {
5513
5639
  const info = current(context);
5514
- return /* @__PURE__ */ jsxs19("span", { className: "sia-table__sortable-header", children: [
5515
- /* @__PURE__ */ jsx20("span", { children: previousHeader ? previousHeader(currentColumn, coreContext) : currentColumn.title ?? currentColumn.name ?? currentColumn.key }),
5516
- /* @__PURE__ */ jsxs19(
5640
+ return /* @__PURE__ */ jsxs20("span", { className: "sia-table__sortable-header", children: [
5641
+ /* @__PURE__ */ jsx21("span", { children: previousHeader ? previousHeader(currentColumn, coreContext) : currentColumn.title ?? currentColumn.name ?? currentColumn.key }),
5642
+ /* @__PURE__ */ jsxs20(
5517
5643
  "button",
5518
5644
  {
5519
5645
  type: "button",
@@ -5524,7 +5650,7 @@ function createSortPlugin(options = {}) {
5524
5650
  cycle(field, context);
5525
5651
  },
5526
5652
  children: [
5527
- /* @__PURE__ */ jsx20(
5653
+ /* @__PURE__ */ jsx21(
5528
5654
  Icon,
5529
5655
  {
5530
5656
  name: "chevron-up",
@@ -5532,7 +5658,7 @@ function createSortPlugin(options = {}) {
5532
5658
  className: info?.field === field && info.order === "ascend" ? "is-active" : ""
5533
5659
  }
5534
5660
  ),
5535
- /* @__PURE__ */ jsx20(
5661
+ /* @__PURE__ */ jsx21(
5536
5662
  Icon,
5537
5663
  {
5538
5664
  name: "chevron-down",
@@ -5574,8 +5700,8 @@ function TableFilterControl({
5574
5700
  placeholder,
5575
5701
  onApply
5576
5702
  }) {
5577
- const [open, setOpen] = useState16(false);
5578
- const [draft, setDraft] = useState16(value);
5703
+ const [open, setOpen] = useState17(false);
5704
+ const [draft, setDraft] = useState17(value);
5579
5705
  const label = getColumnLabel(column);
5580
5706
  useEffect11(() => {
5581
5707
  if (open) setDraft(value);
@@ -5584,17 +5710,17 @@ function TableFilterControl({
5584
5710
  onApply(nextValue.trim());
5585
5711
  setOpen(false);
5586
5712
  };
5587
- return /* @__PURE__ */ jsxs19("span", { className: "sia-table__filter-header", children: [
5588
- /* @__PURE__ */ jsx20("span", { children: column.title ?? column.name ?? column.key }),
5589
- /* @__PURE__ */ jsx20(
5713
+ return /* @__PURE__ */ jsxs20("span", { className: "sia-table__filter-header", children: [
5714
+ /* @__PURE__ */ jsx21("span", { children: column.title ?? column.name ?? column.key }),
5715
+ /* @__PURE__ */ jsx21(
5590
5716
  Popover,
5591
5717
  {
5592
5718
  open,
5593
5719
  onOpenChange: setOpen,
5594
5720
  placement: "bottom-end",
5595
5721
  overlayClassName: "sia-table-filter-popover",
5596
- content: /* @__PURE__ */ jsxs19("div", { className: "sia-table-filter-panel", children: [
5597
- /* @__PURE__ */ jsx20(
5722
+ content: /* @__PURE__ */ jsxs20("div", { className: "sia-table-filter-panel", children: [
5723
+ /* @__PURE__ */ jsx21(
5598
5724
  Input,
5599
5725
  {
5600
5726
  size: "small",
@@ -5608,8 +5734,8 @@ function TableFilterControl({
5608
5734
  }
5609
5735
  }
5610
5736
  ),
5611
- /* @__PURE__ */ jsxs19("div", { className: "sia-table-filter-panel__actions", children: [
5612
- /* @__PURE__ */ jsx20(
5737
+ /* @__PURE__ */ jsxs20("div", { className: "sia-table-filter-panel__actions", children: [
5738
+ /* @__PURE__ */ jsx21(
5613
5739
  Button,
5614
5740
  {
5615
5741
  size: "small",
@@ -5621,7 +5747,7 @@ function TableFilterControl({
5621
5747
  children: "\u6E05\u9664"
5622
5748
  }
5623
5749
  ),
5624
- /* @__PURE__ */ jsx20(
5750
+ /* @__PURE__ */ jsx21(
5625
5751
  Button,
5626
5752
  {
5627
5753
  size: "small",
@@ -5632,7 +5758,7 @@ function TableFilterControl({
5632
5758
  )
5633
5759
  ] })
5634
5760
  ] }),
5635
- children: /* @__PURE__ */ jsx20(
5761
+ children: /* @__PURE__ */ jsx21(
5636
5762
  "button",
5637
5763
  {
5638
5764
  type: "button",
@@ -5640,7 +5766,7 @@ function TableFilterControl({
5640
5766
  "aria-label": `\u7B5B\u9009${label}`,
5641
5767
  "aria-pressed": Boolean(value),
5642
5768
  onClick: (event) => event.stopPropagation(),
5643
- children: /* @__PURE__ */ jsx20(Icon, { name: "search", size: 13 })
5769
+ children: /* @__PURE__ */ jsx21(Icon, { name: "search", size: 13 })
5644
5770
  }
5645
5771
  )
5646
5772
  }
@@ -5702,7 +5828,7 @@ function createFilterPlugin(options = {}) {
5702
5828
  title: previousHeader ? previousHeader(currentColumn, coreContext) : currentColumn.title
5703
5829
  };
5704
5830
  const placeholder = typeof options.placeholder === "function" ? options.placeholder(currentColumn) : options.placeholder ?? `\u8F93\u5165${getColumnLabel(currentColumn)}\u7B5B\u9009`;
5705
- return /* @__PURE__ */ jsx20(
5831
+ return /* @__PURE__ */ jsx21(
5706
5832
  TableFilterControl,
5707
5833
  {
5708
5834
  column: renderedColumn,
@@ -5791,7 +5917,7 @@ function createPaginationPlugin(options = {}) {
5791
5917
  const page = currentPage(context);
5792
5918
  const filteredCount = context.getPluginApi("filter")?.getFilteredRows().length;
5793
5919
  const totalRecords = options.totalCount ?? filteredCount ?? context.sourceData.length;
5794
- return /* @__PURE__ */ jsx20(
5920
+ return /* @__PURE__ */ jsx21(
5795
5921
  Pagination,
5796
5922
  {
5797
5923
  className: "sia-table__pagination",
@@ -5925,13 +6051,13 @@ function createTreePlugin(options = {}) {
5925
6051
  const previousRender = column.render;
5926
6052
  return {
5927
6053
  ...column,
5928
- render: (value, record, index, info) => /* @__PURE__ */ jsxs19(
6054
+ render: (value, record, index, info) => /* @__PURE__ */ jsxs20(
5929
6055
  "span",
5930
6056
  {
5931
6057
  className: "sia-table__tree-cell",
5932
6058
  style: { paddingLeft: info.row.depth * 18 },
5933
6059
  children: [
5934
- info.row.meta.treeHasChildren ? /* @__PURE__ */ jsx20(
6060
+ info.row.meta.treeHasChildren ? /* @__PURE__ */ jsx21(
5935
6061
  "button",
5936
6062
  {
5937
6063
  type: "button",
@@ -5942,7 +6068,7 @@ function createTreePlugin(options = {}) {
5942
6068
  event.stopPropagation();
5943
6069
  toggle(info.row.key, context);
5944
6070
  },
5945
- children: /* @__PURE__ */ jsx20(
6071
+ children: /* @__PURE__ */ jsx21(
5946
6072
  Icon,
5947
6073
  {
5948
6074
  name: current(context).includes(info.row.key) ? "chevron-down" : "chevron-right",
@@ -5950,7 +6076,7 @@ function createTreePlugin(options = {}) {
5950
6076
  }
5951
6077
  )
5952
6078
  }
5953
- ) : /* @__PURE__ */ jsx20("span", { className: "sia-table__tree-placeholder" }),
6079
+ ) : /* @__PURE__ */ jsx21("span", { className: "sia-table__tree-placeholder" }),
5954
6080
  previousRender ? previousRender(value, record, index, info) : value
5955
6081
  ]
5956
6082
  }
@@ -6001,8 +6127,8 @@ function EditableTableCell({
6001
6127
  trigger
6002
6128
  }) {
6003
6129
  const config = typeof editable === "object" ? editable : { type: "input" };
6004
- const [editValue, setEditValue] = useState16(value);
6005
- const [saving, setSaving] = useState16(false);
6130
+ const [editValue, setEditValue] = useState17(value);
6131
+ const [saving, setSaving] = useState17(false);
6006
6132
  const inputRef = useRef14(null);
6007
6133
  const editorRef = useRef14(null);
6008
6134
  const editValueRef = useRef14(value);
@@ -6058,15 +6184,15 @@ function EditableTableCell({
6058
6184
  );
6059
6185
  }, [active, config.type]);
6060
6186
  if (!active)
6061
- return /* @__PURE__ */ jsxs19(
6187
+ return /* @__PURE__ */ jsxs20(
6062
6188
  "div",
6063
6189
  {
6064
6190
  className: "sia-table__editable-display",
6065
6191
  onClick: trigger === "click" ? onStart : void 0,
6066
6192
  onDoubleClick: trigger === "doubleClick" ? onStart : void 0,
6067
6193
  children: [
6068
- /* @__PURE__ */ jsx20("span", { children: content }),
6069
- /* @__PURE__ */ jsx20(Icon, { name: "edit", size: 13 })
6194
+ /* @__PURE__ */ jsx21("span", { children: content }),
6195
+ /* @__PURE__ */ jsx21(Icon, { name: "edit", size: 13 })
6070
6196
  ]
6071
6197
  }
6072
6198
  );
@@ -6074,7 +6200,7 @@ function EditableTableCell({
6074
6200
  if (config.type === "custom" && config.editRender) {
6075
6201
  editor = config.editRender(record, (next) => void save(next), onCancel);
6076
6202
  } else if (config.type === "inputNumber") {
6077
- editor = /* @__PURE__ */ jsx20(
6203
+ editor = /* @__PURE__ */ jsx21(
6078
6204
  InputNumber,
6079
6205
  {
6080
6206
  ref: inputRef,
@@ -6095,7 +6221,7 @@ function EditableTableCell({
6095
6221
  }
6096
6222
  );
6097
6223
  } else if (config.type === "select") {
6098
- editor = /* @__PURE__ */ jsx20(
6224
+ editor = /* @__PURE__ */ jsx21(
6099
6225
  Select,
6100
6226
  {
6101
6227
  size: "small",
@@ -6109,14 +6235,14 @@ function EditableTableCell({
6109
6235
  }
6110
6236
  );
6111
6237
  } else {
6112
- editor = /* @__PURE__ */ jsx20(
6238
+ editor = /* @__PURE__ */ jsx21(
6113
6239
  Input,
6114
6240
  {
6115
6241
  ref: inputRef,
6116
6242
  size: "small",
6117
6243
  value: String(editValue ?? ""),
6118
6244
  disabled: saving,
6119
- suffix: saving ? /* @__PURE__ */ jsx20(Icon, { name: "loader", size: 13, spin: true }) : null,
6245
+ suffix: saving ? /* @__PURE__ */ jsx21(Icon, { name: "loader", size: 13, spin: true }) : null,
6120
6246
  onChange: (event) => updateEditValue(event.target.value),
6121
6247
  onBlur: () => void save(),
6122
6248
  onKeyDown: (event) => {
@@ -6126,7 +6252,7 @@ function EditableTableCell({
6126
6252
  }
6127
6253
  );
6128
6254
  }
6129
- return /* @__PURE__ */ jsx20("div", { ref: editorRef, className: "sia-table__editor", children: editor });
6255
+ return /* @__PURE__ */ jsx21("div", { ref: editorRef, className: "sia-table__editor", children: editor });
6130
6256
  }
6131
6257
  function createEditablePlugin(options = {}) {
6132
6258
  const trigger = options.trigger ?? "click";
@@ -6146,7 +6272,7 @@ function createEditablePlugin(options = {}) {
6146
6272
  const active = canEdit && context.state.editing?.rowKey === info.row.key && context.state.editing.columnKey === column.key;
6147
6273
  const content = previousRender ? previousRender(value, record, index, info) : value;
6148
6274
  if (!canEdit) return content;
6149
- return /* @__PURE__ */ jsx20(
6275
+ return /* @__PURE__ */ jsx21(
6150
6276
  EditableTableCell,
6151
6277
  {
6152
6278
  active,
@@ -6209,9 +6335,9 @@ function createResizePlugin(options = {}) {
6209
6335
  ...column,
6210
6336
  autoWidth,
6211
6337
  width,
6212
- renderHeader: (currentColumn, coreContext) => /* @__PURE__ */ jsxs19("span", { className: "sia-table__resizable-header", children: [
6213
- /* @__PURE__ */ jsx20("span", { children: previousHeader ? previousHeader(currentColumn, coreContext) : currentColumn.title ?? currentColumn.name ?? currentColumn.key }),
6214
- /* @__PURE__ */ jsx20(
6338
+ renderHeader: (currentColumn, coreContext) => /* @__PURE__ */ jsxs20("span", { className: "sia-table__resizable-header", children: [
6339
+ /* @__PURE__ */ jsx21("span", { children: previousHeader ? previousHeader(currentColumn, coreContext) : currentColumn.title ?? currentColumn.name ?? currentColumn.key }),
6340
+ /* @__PURE__ */ jsx21(
6215
6341
  "span",
6216
6342
  {
6217
6343
  className: "sia-table__resize-handle",
@@ -6343,10 +6469,10 @@ function ColumnSettingPanel({
6343
6469
  onClose,
6344
6470
  onApply
6345
6471
  }) {
6346
- const [draft, setDraft] = useState16(items);
6472
+ const [draft, setDraft] = useState17(items);
6347
6473
  const listRef = useRef14(null);
6348
6474
  const cancelDrag = useRef14(null);
6349
- const [preview, setPreview] = useState16(null);
6475
+ const [preview, setPreview] = useState17(null);
6350
6476
  useEffect11(() => {
6351
6477
  cancelDrag.current?.();
6352
6478
  if (open) setDraft(orderColumnSettings(items));
@@ -6478,7 +6604,7 @@ function ColumnSettingPanel({
6478
6604
  window.addEventListener("blur", cancel);
6479
6605
  frame = requestAnimationFrame(tick);
6480
6606
  }
6481
- return /* @__PURE__ */ jsxs19(
6607
+ return /* @__PURE__ */ jsxs20(
6482
6608
  Drawer2,
6483
6609
  {
6484
6610
  open,
@@ -6487,9 +6613,9 @@ function ColumnSettingPanel({
6487
6613
  onOpenChange: (next) => {
6488
6614
  if (!next) onClose();
6489
6615
  },
6490
- footer: /* @__PURE__ */ jsxs19(Fragment6, { children: [
6491
- /* @__PURE__ */ jsx20(Button, { onClick: onClose, children: "\u53D6\u6D88" }),
6492
- /* @__PURE__ */ jsx20(
6616
+ footer: /* @__PURE__ */ jsxs20(Fragment7, { children: [
6617
+ /* @__PURE__ */ jsx21(Button, { onClick: onClose, children: "\u53D6\u6D88" }),
6618
+ /* @__PURE__ */ jsx21(
6493
6619
  Button,
6494
6620
  {
6495
6621
  variant: "primary",
@@ -6500,19 +6626,19 @@ function ColumnSettingPanel({
6500
6626
  )
6501
6627
  ] }),
6502
6628
  children: [
6503
- loadError ? /* @__PURE__ */ jsxs19("p", { role: "alert", children: [
6629
+ loadError ? /* @__PURE__ */ jsxs20("p", { role: "alert", children: [
6504
6630
  "\u8BFB\u53D6\u5217\u914D\u7F6E\u5931\u8D25\u3002",
6505
- /* @__PURE__ */ jsx20(Button, { variant: "link", onClick: onRetry, children: "\u91CD\u8BD5" })
6631
+ /* @__PURE__ */ jsx21(Button, { variant: "link", onClick: onRetry, children: "\u91CD\u8BD5" })
6506
6632
  ] }) : null,
6507
- /* @__PURE__ */ jsx20(Spin, { spinning: Boolean(loading), className: "sia-table-settings__loading", "aria-label": loading ? "\u6B63\u5728\u8BFB\u53D6\u5217\u914D\u7F6E" : void 0, children: /* @__PURE__ */ jsxs19(
6633
+ /* @__PURE__ */ jsx21(Spin, { spinning: Boolean(loading), className: "sia-table-settings__loading", "aria-label": loading ? "\u6B63\u5728\u8BFB\u53D6\u5217\u914D\u7F6E" : void 0, children: /* @__PURE__ */ jsxs20(
6508
6634
  "fieldset",
6509
6635
  {
6510
6636
  disabled: loading || loadError,
6511
6637
  style: { border: 0, padding: 0, margin: 0, minWidth: 0 },
6512
6638
  "aria-busy": loading,
6513
6639
  children: [
6514
- /* @__PURE__ */ jsxs19("label", { className: "sia-table-settings__all", children: [
6515
- /* @__PURE__ */ jsx20(
6640
+ /* @__PURE__ */ jsxs20("label", { className: "sia-table-settings__all", children: [
6641
+ /* @__PURE__ */ jsx21(
6516
6642
  TableCheckbox,
6517
6643
  {
6518
6644
  label: "\u5168\u9009\u5217",
@@ -6523,7 +6649,7 @@ function ColumnSettingPanel({
6523
6649
  )
6524
6650
  }
6525
6651
  ),
6526
- /* @__PURE__ */ jsxs19("span", { children: [
6652
+ /* @__PURE__ */ jsxs20("span", { children: [
6527
6653
  "\u5168\u9009\uFF08",
6528
6654
  visibleCount,
6529
6655
  "/",
@@ -6531,12 +6657,12 @@ function ColumnSettingPanel({
6531
6657
  "\uFF09"
6532
6658
  ] })
6533
6659
  ] }),
6534
- /* @__PURE__ */ jsx20(
6660
+ /* @__PURE__ */ jsx21(
6535
6661
  "div",
6536
6662
  {
6537
6663
  ref: listRef,
6538
6664
  className: `sia-table-settings__list${preview ? " is-sorting" : ""}`,
6539
- children: draft.map((item) => /* @__PURE__ */ jsxs19(
6665
+ children: draft.map((item) => /* @__PURE__ */ jsxs20(
6540
6666
  "div",
6541
6667
  {
6542
6668
  "data-column-key": item.key,
@@ -6546,8 +6672,8 @@ function ColumnSettingPanel({
6546
6672
  } : void 0,
6547
6673
  onPointerDown: (event) => startSort(event, item.key),
6548
6674
  children: [
6549
- /* @__PURE__ */ jsx20(Icon, { name: "menu", size: 15 }),
6550
- /* @__PURE__ */ jsx20(
6675
+ /* @__PURE__ */ jsx21(Icon, { name: "menu", size: 15 }),
6676
+ /* @__PURE__ */ jsx21(
6551
6677
  TableCheckbox,
6552
6678
  {
6553
6679
  label: `\u663E\u793A${labels.get(item.key) ?? item.key}\u5217`,
@@ -6559,7 +6685,7 @@ function ColumnSettingPanel({
6559
6685
  )
6560
6686
  }
6561
6687
  ),
6562
- /* @__PURE__ */ jsx20(
6688
+ /* @__PURE__ */ jsx21(
6563
6689
  "span",
6564
6690
  {
6565
6691
  className: "sia-table-settings__name",
@@ -6567,8 +6693,8 @@ function ColumnSettingPanel({
6567
6693
  children: labels.get(item.key) ?? item.key
6568
6694
  }
6569
6695
  ),
6570
- /* @__PURE__ */ jsxs19("div", { className: "sia-table-settings__actions", children: [
6571
- /* @__PURE__ */ jsx20(
6696
+ /* @__PURE__ */ jsxs20("div", { className: "sia-table-settings__actions", children: [
6697
+ /* @__PURE__ */ jsx21(
6572
6698
  Button,
6573
6699
  {
6574
6700
  size: "small",
@@ -6581,7 +6707,7 @@ function ColumnSettingPanel({
6581
6707
  children: "\u5DE6"
6582
6708
  }
6583
6709
  ),
6584
- /* @__PURE__ */ jsx20(
6710
+ /* @__PURE__ */ jsx21(
6585
6711
  Button,
6586
6712
  {
6587
6713
  size: "small",
@@ -6725,7 +6851,7 @@ function createColumnSettingPlugin(options = {}) {
6725
6851
  {
6726
6852
  key: "builtin:export",
6727
6853
  label: "\u8868\u683C\u5BFC\u51FA",
6728
- icon: /* @__PURE__ */ jsx20(Icon, { name: "download", size: 18 }),
6854
+ icon: /* @__PURE__ */ jsx21(Icon, { name: "download", size: 18 }),
6729
6855
  disabled: exportApi().getRows().length === 0
6730
6856
  },
6731
6857
  { key: "builtin:divider", type: "divider" }
@@ -6733,7 +6859,7 @@ function createColumnSettingPlugin(options = {}) {
6733
6859
  {
6734
6860
  key: "builtin:columns",
6735
6861
  label: "\u5217\u8BBE\u7F6E",
6736
- icon: /* @__PURE__ */ jsx20(Icon, { name: "settings", size: 18 })
6862
+ icon: /* @__PURE__ */ jsx21(Icon, { name: "settings", size: 18 })
6737
6863
  },
6738
6864
  ...customItems.map((item) => ({
6739
6865
  key: "custom:" + item.key,
@@ -6743,7 +6869,7 @@ function createColumnSettingPlugin(options = {}) {
6743
6869
  disabled: item.disabled === true || typeof item.disabled === "function" && item.disabled(context)
6744
6870
  }))
6745
6871
  ];
6746
- return /* @__PURE__ */ jsx20(
6872
+ return /* @__PURE__ */ jsx21(
6747
6873
  Dropdown,
6748
6874
  {
6749
6875
  disabled: options.buttonProps?.disabled || options.buttonProps?.loading,
@@ -6760,12 +6886,12 @@ function createColumnSettingPlugin(options = {}) {
6760
6886
  void customItems.find((item) => "custom:" + item.key === key)?.onClick?.(context);
6761
6887
  }
6762
6888
  },
6763
- children: /* @__PURE__ */ jsx20(
6889
+ children: /* @__PURE__ */ jsx21(
6764
6890
  Button,
6765
6891
  {
6766
6892
  size: "small",
6767
6893
  variant: "text",
6768
- icon: /* @__PURE__ */ jsx20(Icon, { name: "settings", size: 16 }),
6894
+ icon: /* @__PURE__ */ jsx21(Icon, { name: "settings", size: 16 }),
6769
6895
  "aria-label": "\u8868\u683C\u8BBE\u7F6E",
6770
6896
  ...options.buttonProps,
6771
6897
  className: `sia-table__settings-button${options.buttonProps?.children == null ? " sia-table__toolbar-icon" : ""} ${options.buttonProps?.className ?? ""}`.trim()
@@ -6774,7 +6900,7 @@ function createColumnSettingPlugin(options = {}) {
6774
6900
  }
6775
6901
  );
6776
6902
  },
6777
- renderOverlay: (context) => /* @__PURE__ */ jsx20(
6903
+ renderOverlay: (context) => /* @__PURE__ */ jsx21(
6778
6904
  ColumnSettingPanel,
6779
6905
  {
6780
6906
  open: context.state.open,
@@ -6824,11 +6950,11 @@ function ToolbarItems({
6824
6950
  items,
6825
6951
  context
6826
6952
  }) {
6827
- return /* @__PURE__ */ jsx20(Fragment6, { children: items.map((item) => {
6953
+ return /* @__PURE__ */ jsx21(Fragment7, { children: items.map((item) => {
6828
6954
  if (item.hidden === true || typeof item.hidden === "function" && item.hidden(context))
6829
6955
  return null;
6830
6956
  const disabled = item.disabled === true || typeof item.disabled === "function" && item.disabled(context);
6831
- return /* @__PURE__ */ jsx20(
6957
+ return /* @__PURE__ */ jsx21(
6832
6958
  Button,
6833
6959
  {
6834
6960
  size: "small",
@@ -6851,16 +6977,16 @@ function createToolbarPlugin(options) {
6851
6977
  return {
6852
6978
  id: "toolbar",
6853
6979
  order: 5,
6854
- renderToolbarStart: (context) => /* @__PURE__ */ jsxs19(Fragment6, { children: [
6980
+ renderToolbarStart: (context) => /* @__PURE__ */ jsxs20(Fragment7, { children: [
6855
6981
  options.start,
6856
- /* @__PURE__ */ jsx20(ToolbarItems, { items: items("start"), context })
6982
+ /* @__PURE__ */ jsx21(ToolbarItems, { items: items("start"), context })
6857
6983
  ] }),
6858
- renderToolbarEnd: (context) => /* @__PURE__ */ jsxs19(Fragment6, { children: [
6984
+ renderToolbarEnd: (context) => /* @__PURE__ */ jsxs20(Fragment7, { children: [
6859
6985
  options.end,
6860
- /* @__PURE__ */ jsx20(ToolbarItems, { items: items("end"), context }),
6861
- items("end", true).length > 0 ? /* @__PURE__ */ jsxs19("details", { className: "sia-table__toolbar-menu", children: [
6862
- /* @__PURE__ */ jsx20("summary", { "aria-label": "\u66F4\u591A\u8868\u683C\u64CD\u4F5C", children: /* @__PURE__ */ jsx20(Icon, { name: "more-horizontal", size: 16 }) }),
6863
- /* @__PURE__ */ jsx20("div", { children: /* @__PURE__ */ jsx20(ToolbarItems, { items: items("end", true), context }) })
6986
+ /* @__PURE__ */ jsx21(ToolbarItems, { items: items("end"), context }),
6987
+ items("end", true).length > 0 ? /* @__PURE__ */ jsxs20("details", { className: "sia-table__toolbar-menu", children: [
6988
+ /* @__PURE__ */ jsx21("summary", { "aria-label": "\u66F4\u591A\u8868\u683C\u64CD\u4F5C", children: /* @__PURE__ */ jsx21(Icon, { name: "more-horizontal", size: 16 }) }),
6989
+ /* @__PURE__ */ jsx21("div", { children: /* @__PURE__ */ jsx21(ToolbarItems, { items: items("end", true), context }) })
6864
6990
  ] }) : null
6865
6991
  ] })
6866
6992
  };
@@ -6942,11 +7068,11 @@ function createExportPlugin(options = {}) {
6942
7068
  return {
6943
7069
  id: "export",
6944
7070
  order: 95,
6945
- renderToolbarEnd: options.showButton === false ? void 0 : (context) => /* @__PURE__ */ jsx20(
7071
+ renderToolbarEnd: options.showButton === false ? void 0 : (context) => /* @__PURE__ */ jsx21(
6946
7072
  Button,
6947
7073
  {
6948
7074
  size: "small",
6949
- icon: /* @__PURE__ */ jsx20(Icon, { name: "download", size: 14 }),
7075
+ icon: /* @__PURE__ */ jsx21(Icon, { name: "download", size: 14 }),
6950
7076
  disabled: getRows(context).length === 0,
6951
7077
  onClick: () => void download(context),
6952
7078
  children: options.buttonLabel ?? "\u5BFC\u51FA"
@@ -6961,7 +7087,7 @@ function createExportPlugin(options = {}) {
6961
7087
  }
6962
7088
 
6963
7089
  // src/components/Table/Table.tsx
6964
- import { jsx as jsx21, jsxs as jsxs20 } from "react/jsx-runtime";
7090
+ import { jsx as jsx22, jsxs as jsxs21 } from "react/jsx-runtime";
6965
7091
  var EMPTY_DATA = [];
6966
7092
  var EMPTY_COLUMNS = [];
6967
7093
  var EMPTY_PLUGINS = [];
@@ -7071,7 +7197,7 @@ var TableBodyRow = memo(function TableBodyRow2({
7071
7197
  onCellPointerDown,
7072
7198
  onCellPointerMove
7073
7199
  }) {
7074
- return /* @__PURE__ */ jsx21(
7200
+ return /* @__PURE__ */ jsx22(
7075
7201
  "tr",
7076
7202
  {
7077
7203
  className: `sia-table__row${striped && rowIndex % 2 === 1 ? " sia-table__row--striped" : ""} ${className}`.trim(),
@@ -7089,7 +7215,7 @@ var TableBodyRow = memo(function TableBodyRow2({
7089
7215
  const fixedStyle = fixed === "left" ? { left: leftOffsets.get(column.key) } : fixed === "right" ? { right: rightOffsets.get(column.key) } : void 0;
7090
7216
  const fixedEdgeClass = fixed === "left" && column.key === leftFixedEdgeKey ? " sia-table__cell--fixed-left-edge" : fixed === "right" && column.key === rightFixedEdgeKey ? " sia-table__cell--fixed-right-edge" : "";
7091
7217
  const autoWidthClass = column.autoWidth ? " sia-table__cell--auto-width" : "";
7092
- return /* @__PURE__ */ jsx21(
7218
+ return /* @__PURE__ */ jsx22(
7093
7219
  "td",
7094
7220
  {
7095
7221
  "data-column-key": column.key,
@@ -7103,7 +7229,7 @@ var TableBodyRow = memo(function TableBodyRow2({
7103
7229
  onContextMenu: (event) => onCellContextMenu(column, event),
7104
7230
  onPointerDown: (event) => onCellPointerDown(column, event),
7105
7231
  onPointerMove: (event) => onCellPointerMove(column, event),
7106
- children: /* @__PURE__ */ jsx21(
7232
+ children: /* @__PURE__ */ jsx22(
7107
7233
  TableCellContent,
7108
7234
  {
7109
7235
  ellipsis: column.ellipsis !== false,
@@ -7154,11 +7280,11 @@ function TableInner(props, ref) {
7154
7280
  const tableRef = useRef15(null);
7155
7281
  useScrollbarProximity();
7156
7282
  const scrollbarDragRef = useRef15(null);
7157
- const [internalLoading, setInternalLoading] = useState17(false);
7158
- const [scrollTop, setScrollTop] = useState17(0);
7159
- const [viewportHeight, setViewportHeight] = useState17(420);
7160
- const [viewportWidth, setViewportWidth] = useState17(0);
7161
- const [autoColumnWidths, setAutoColumnWidths] = useState17({});
7283
+ const [internalLoading, setInternalLoading] = useState18(false);
7284
+ const [scrollTop, setScrollTop] = useState18(0);
7285
+ const [viewportHeight, setViewportHeight] = useState18(420);
7286
+ const [viewportWidth, setViewportWidth] = useState18(0);
7287
+ const [autoColumnWidths, setAutoColumnWidths] = useState18({});
7162
7288
  const getRowKey = useCallback2((record, index) => typeof rowKey === "function" ? rowKey(record, index) : record[String(rowKey)] ?? index, [rowKey]);
7163
7289
  const builtInResizePlugin = useMemo9(() => createResizePlugin(), []);
7164
7290
  const builtInHighlightPlugin = useMemo9(() => createHighlightPlugin(), []);
@@ -7171,7 +7297,7 @@ function TableInner(props, ref) {
7171
7297
  const sortedPlugins = useMemo9(() => [...activePlugins].sort((a, b) => (a.order ?? 100) - (b.order ?? 100)), [activePlugins]);
7172
7298
  const pluginsByIdRef = useRef15(/* @__PURE__ */ new Map());
7173
7299
  pluginsByIdRef.current = new Map(sortedPlugins.map((plugin) => [plugin.id, plugin]));
7174
- const [pluginStates, setPluginStates] = useState17(() => Object.fromEntries(
7300
+ const [pluginStates, setPluginStates] = useState18(() => Object.fromEntries(
7175
7301
  sortedPlugins.map((plugin) => [plugin.id, resolveInitialState(plugin)])
7176
7302
  ));
7177
7303
  const pluginApisRef = useRef15({});
@@ -7374,20 +7500,20 @@ function TableInner(props, ref) {
7374
7500
  const bottomSpacer = shouldVirtualize ? Math.max(0, (pipeline.rows.length - endIndex) * rowHeight) : 0;
7375
7501
  const toolbarStart = sortedPlugins.map((plugin) => {
7376
7502
  const content = plugin.renderToolbarStart?.(getContext(plugin));
7377
- return content ? /* @__PURE__ */ jsx21(Fragment7, { children: content }, `toolbar-start-${plugin.id}`) : null;
7503
+ return content ? /* @__PURE__ */ jsx22(Fragment8, { children: content }, `toolbar-start-${plugin.id}`) : null;
7378
7504
  }).filter(Boolean);
7379
7505
  const toolbarEnd = sortedPlugins.map((plugin) => {
7380
7506
  const content = plugin.renderToolbarEnd?.(getContext(plugin));
7381
- return content ? /* @__PURE__ */ jsx21(Fragment7, { children: content }, `toolbar-end-${plugin.id}`) : null;
7507
+ return content ? /* @__PURE__ */ jsx22(Fragment8, { children: content }, `toolbar-end-${plugin.id}`) : null;
7382
7508
  }).filter(Boolean);
7383
7509
  const summaries = sortedPlugins.flatMap((plugin) => plugin.renderSummary?.(getContext(plugin)) ?? []);
7384
7510
  const footers = sortedPlugins.map((plugin) => {
7385
7511
  const content = plugin.renderFooter?.(getContext(plugin));
7386
- return content ? /* @__PURE__ */ jsx21(Fragment7, { children: content }, `footer-${plugin.id}`) : null;
7512
+ return content ? /* @__PURE__ */ jsx22(Fragment8, { children: content }, `footer-${plugin.id}`) : null;
7387
7513
  }).filter(Boolean);
7388
7514
  const overlays = sortedPlugins.map((plugin) => {
7389
7515
  const content = plugin.renderOverlay?.(getContext(plugin));
7390
- return content ? /* @__PURE__ */ jsx21(Fragment7, { children: content }, `overlay-${plugin.id}`) : null;
7516
+ return content ? /* @__PURE__ */ jsx22(Fragment8, { children: content }, `overlay-${plugin.id}`) : null;
7391
7517
  }).filter(Boolean);
7392
7518
  const hasToolbar = toolbarStart.length > 0 || toolbarEnd.length > 0;
7393
7519
  const effectiveHeight = height ?? tableHeight ?? (shouldVirtualize ? 420 : void 0);
@@ -7483,9 +7609,9 @@ function TableInner(props, ref) {
7483
7609
  }
7484
7610
  function renderHeaderContent(column, content) {
7485
7611
  if (column.description === void 0 || column.description === null) return content;
7486
- return /* @__PURE__ */ jsxs20("span", { className: "sia-table__header-label", children: [
7487
- /* @__PURE__ */ jsx21("span", { className: "sia-table__header-label-content", children: content }),
7488
- /* @__PURE__ */ jsx21(Tooltip, { title: column.description, placement: "top", trigger: ["hover", "focus"], children: /* @__PURE__ */ jsx21("button", { type: "button", className: "sia-table__header-description", "aria-label": `${column.name ?? column.key}\u5217\u8BF4\u660E`, onClick: (event) => event.stopPropagation(), children: /* @__PURE__ */ jsx21(Icon, { name: "info", size: 14 }) }) })
7612
+ return /* @__PURE__ */ jsxs21("span", { className: "sia-table__header-label", children: [
7613
+ /* @__PURE__ */ jsx22("span", { className: "sia-table__header-label-content", children: content }),
7614
+ /* @__PURE__ */ jsx22(Tooltip, { title: column.description, placement: "top", trigger: ["hover", "focus"], children: /* @__PURE__ */ jsx22("button", { type: "button", className: "sia-table__header-description", "aria-label": `${column.name ?? column.key}\u5217\u8BF4\u660E`, onClick: (event) => event.stopPropagation(), children: /* @__PURE__ */ jsx22(Icon, { name: "info", size: 14 }) }) })
7489
7615
  ] });
7490
7616
  }
7491
7617
  function getPluginCellProps(row, column) {
@@ -7525,17 +7651,17 @@ function TableInner(props, ref) {
7525
7651
  }
7526
7652
  function renderSummaryRow(summary) {
7527
7653
  let labelRendered = false;
7528
- return /* @__PURE__ */ jsx21("tr", { className: `sia-table__summary-row ${summary.className ?? ""}`.trim(), children: leafColumns.map((column) => {
7654
+ return /* @__PURE__ */ jsx22("tr", { className: `sia-table__summary-row ${summary.className ?? ""}`.trim(), children: leafColumns.map((column) => {
7529
7655
  const value = summary.values[column.key];
7530
7656
  const isLabel = value === void 0 && !labelRendered && summary.label !== void 0;
7531
7657
  const content = value !== void 0 ? value : isLabel ? (labelRendered = true, summary.label) : null;
7532
7658
  const fixed = normalizeFixed(column.fixed);
7533
7659
  const fixedEdgeClass = fixed === "left" && column.key === leftFixedEdgeKey ? " sia-table__cell--fixed-left-edge" : fixed === "right" && column.key === rightFixedEdgeKey ? " sia-table__cell--fixed-right-edge" : "";
7534
7660
  const autoWidthClass = column.autoWidth ? " sia-table__cell--auto-width" : "";
7535
- return /* @__PURE__ */ jsx21("td", { "data-column-key": column.key, className: `sia-table__cell sia-table__cell--${column.align ?? "left"} sia-table__summary-cell${isLabel ? " sia-table__summary-cell--label" : ""}${fixed ? ` sia-table__cell--fixed sia-table__cell--fixed-${fixed}` : ""}${fixedEdgeClass}${autoWidthClass}`, style: getFixedStyle(column), children: isLabel ? /* @__PURE__ */ jsx21("span", { className: "sia-table__summary-label", title: typeof content === "string" ? content : void 0, children: content }) : content }, column.key);
7661
+ return /* @__PURE__ */ jsx22("td", { "data-column-key": column.key, className: `sia-table__cell sia-table__cell--${column.align ?? "left"} sia-table__summary-cell${isLabel ? " sia-table__summary-cell--label" : ""}${fixed ? ` sia-table__cell--fixed sia-table__cell--fixed-${fixed}` : ""}${fixedEdgeClass}${autoWidthClass}`, style: getFixedStyle(column), children: isLabel ? /* @__PURE__ */ jsx22("span", { className: "sia-table__summary-label", title: typeof content === "string" ? content : void 0, children: content }) : content }, column.key);
7536
7662
  }) }, summary.key);
7537
7663
  }
7538
- return /* @__PURE__ */ jsxs20(
7664
+ return /* @__PURE__ */ jsxs21(
7539
7665
  "div",
7540
7666
  {
7541
7667
  ref: rootRef,
@@ -7585,19 +7711,19 @@ function TableInner(props, ref) {
7585
7711
  htmlProps.onDoubleClickCapture?.(event);
7586
7712
  },
7587
7713
  children: [
7588
- hasToolbar ? /* @__PURE__ */ jsxs20("div", { className: "sia-table__toolbar", children: [
7589
- /* @__PURE__ */ jsx21("div", { children: toolbarStart }),
7590
- /* @__PURE__ */ jsx21("div", { children: toolbarEnd })
7714
+ hasToolbar ? /* @__PURE__ */ jsxs21("div", { className: "sia-table__toolbar", children: [
7715
+ /* @__PURE__ */ jsx22("div", { children: toolbarStart }),
7716
+ /* @__PURE__ */ jsx22("div", { children: toolbarEnd })
7591
7717
  ] }) : null,
7592
- /* @__PURE__ */ jsxs20("div", { className: "sia-table__viewport-wrap", children: [
7593
- /* @__PURE__ */ jsx21("div", { className: "sia-table__viewport", ref: scrollRef, onScroll: handleScroll, children: /* @__PURE__ */ jsxs20("table", { ref: tableRef, className: "sia-table__element", style: { width: Math.max(totalWidth, 1), ...manualColumnLayout ? { minWidth: 0 } : {}, ...tableStyle }, children: [
7594
- /* @__PURE__ */ jsx21("colgroup", { children: leafColumns.map((column) => /* @__PURE__ */ jsx21("col", { "data-column-key": column.key, style: { width: columnWidths.get(column.key) ?? DEFAULT_WIDTH } }, column.key)) }),
7595
- /* @__PURE__ */ jsx21("thead", { className: stickyHeader ? "sia-table__head sia-table__head--sticky" : "sia-table__head", children: headerRows.map((headerRow, depth) => /* @__PURE__ */ jsx21("tr", { children: headerRow.map((cell) => {
7718
+ /* @__PURE__ */ jsxs21("div", { className: "sia-table__viewport-wrap", children: [
7719
+ /* @__PURE__ */ jsx22("div", { className: "sia-table__viewport", ref: scrollRef, onScroll: handleScroll, children: /* @__PURE__ */ jsxs21("table", { ref: tableRef, className: "sia-table__element", style: { width: Math.max(totalWidth, 1), ...manualColumnLayout ? { minWidth: 0 } : {}, ...tableStyle }, children: [
7720
+ /* @__PURE__ */ jsx22("colgroup", { children: leafColumns.map((column) => /* @__PURE__ */ jsx22("col", { "data-column-key": column.key, style: { width: columnWidths.get(column.key) ?? DEFAULT_WIDTH } }, column.key)) }),
7721
+ /* @__PURE__ */ jsx22("thead", { className: stickyHeader ? "sia-table__head sia-table__head--sticky" : "sia-table__head", children: headerRows.map((headerRow, depth) => /* @__PURE__ */ jsx22("tr", { children: headerRow.map((cell) => {
7596
7722
  const fixed = cell.fixed;
7597
7723
  const pluginHeaderProps = getPluginHeaderCellProps(cell.column);
7598
7724
  const fixedEdgeClass = fixed === "left" && cell.column.key === leftFixedEdgeKey ? " sia-table__cell--fixed-left-edge" : fixed === "right" && cell.column.key === rightFixedEdgeKey ? " sia-table__cell--fixed-right-edge" : "";
7599
7725
  const autoWidthClass = cell.column.autoWidth ? " sia-table__cell--auto-width" : "";
7600
- return /* @__PURE__ */ jsx21(
7726
+ return /* @__PURE__ */ jsx22(
7601
7727
  "th",
7602
7728
  {
7603
7729
  "data-column-key": cell.column.key,
@@ -7618,13 +7744,13 @@ function TableInner(props, ref) {
7618
7744
  `${cell.column.key}-${depth}-${cell.firstLeafKey}`
7619
7745
  );
7620
7746
  }) }, depth)) }),
7621
- /* @__PURE__ */ jsxs20("tbody", { children: [
7622
- topSpacer > 0 ? /* @__PURE__ */ jsx21("tr", { "aria-hidden": "true", children: /* @__PURE__ */ jsx21("td", { colSpan: leafColumns.length, style: { height: topSpacer, padding: 0, border: 0 } }) }) : null,
7747
+ /* @__PURE__ */ jsxs21("tbody", { children: [
7748
+ topSpacer > 0 ? /* @__PURE__ */ jsx22("tr", { "aria-hidden": "true", children: /* @__PURE__ */ jsx22("td", { colSpan: leafColumns.length, style: { height: topSpacer, padding: 0, border: 0 } }) }) : null,
7623
7749
  renderedRows.map((row, offset) => {
7624
7750
  const rowIndex = startIndex + offset;
7625
7751
  const pluginClasses = sortedPlugins.map((plugin) => plugin.getRowClassName?.(row, getContext(plugin))).filter(Boolean).join(" ");
7626
7752
  const customClass = typeof rowClassName === "function" ? rowClassName(row.record, row.sourceIndex) : rowClassName ?? "";
7627
- return /* @__PURE__ */ jsx21(
7753
+ return /* @__PURE__ */ jsx22(
7628
7754
  TableBodyRow,
7629
7755
  {
7630
7756
  row,
@@ -7671,12 +7797,12 @@ function TableInner(props, ref) {
7671
7797
  row.key
7672
7798
  );
7673
7799
  }),
7674
- bottomSpacer > 0 ? /* @__PURE__ */ jsx21("tr", { "aria-hidden": "true", children: /* @__PURE__ */ jsx21("td", { colSpan: leafColumns.length, style: { height: bottomSpacer, padding: 0, border: 0 } }) }) : null
7800
+ bottomSpacer > 0 ? /* @__PURE__ */ jsx22("tr", { "aria-hidden": "true", children: /* @__PURE__ */ jsx22("td", { colSpan: leafColumns.length, style: { height: bottomSpacer, padding: 0, border: 0 } }) }) : null
7675
7801
  ] }),
7676
- summaries.length > 0 ? /* @__PURE__ */ jsx21("tfoot", { className: "sia-table__summary", children: summaries.map(renderSummaryRow) }) : null
7802
+ summaries.length > 0 ? /* @__PURE__ */ jsx22("tfoot", { className: "sia-table__summary", children: summaries.map(renderSummaryRow) }) : null
7677
7803
  ] }) }),
7678
- pipeline.rows.length === 0 ? /* @__PURE__ */ jsx21("div", { className: "sia-table__empty", role: "status", children: emptyText }) : null,
7679
- /* @__PURE__ */ jsx21(
7804
+ pipeline.rows.length === 0 ? /* @__PURE__ */ jsx22("div", { className: "sia-table__empty", role: "status", children: emptyText }) : null,
7805
+ /* @__PURE__ */ jsx22(
7680
7806
  "div",
7681
7807
  {
7682
7808
  className: "sia-scrollbar-track sia-table__scrollbar sia-table__scrollbar--horizontal",
@@ -7687,10 +7813,10 @@ function TableInner(props, ref) {
7687
7813
  onPointerMove: handleScrollbarPointerMove,
7688
7814
  onPointerUp: handleScrollbarPointerEnd,
7689
7815
  onPointerCancel: handleScrollbarPointerEnd,
7690
- children: /* @__PURE__ */ jsx21("div", { className: "sia-table__scrollbar-thumb" })
7816
+ children: /* @__PURE__ */ jsx22("div", { className: "sia-table__scrollbar-thumb" })
7691
7817
  }
7692
7818
  ),
7693
- /* @__PURE__ */ jsx21(
7819
+ /* @__PURE__ */ jsx22(
7694
7820
  "div",
7695
7821
  {
7696
7822
  className: "sia-scrollbar-track sia-table__scrollbar sia-table__scrollbar--vertical",
@@ -7701,14 +7827,14 @@ function TableInner(props, ref) {
7701
7827
  onPointerMove: handleScrollbarPointerMove,
7702
7828
  onPointerUp: handleScrollbarPointerEnd,
7703
7829
  onPointerCancel: handleScrollbarPointerEnd,
7704
- children: /* @__PURE__ */ jsx21("div", { className: "sia-table__scrollbar-thumb" })
7830
+ children: /* @__PURE__ */ jsx22("div", { className: "sia-table__scrollbar-thumb" })
7705
7831
  }
7706
7832
  )
7707
7833
  ] }),
7708
- footers.length > 0 ? /* @__PURE__ */ jsx21("div", { className: "sia-table__footer", children: footers }) : null,
7709
- loading || internalLoading ? /* @__PURE__ */ jsxs20("div", { className: "sia-table__loading", role: "status", children: [
7710
- /* @__PURE__ */ jsx21(Icon, { name: "loader", size: 22, spin: true }),
7711
- /* @__PURE__ */ jsx21("span", { children: "\u52A0\u8F7D\u4E2D" })
7834
+ footers.length > 0 ? /* @__PURE__ */ jsx22("div", { className: "sia-table__footer", children: footers }) : null,
7835
+ loading || internalLoading ? /* @__PURE__ */ jsxs21("div", { className: "sia-table__loading", role: "status", children: [
7836
+ /* @__PURE__ */ jsx22(Icon, { name: "loader", size: 22, spin: true }),
7837
+ /* @__PURE__ */ jsx22("span", { children: "\u52A0\u8F7D\u4E2D" })
7712
7838
  ] }) : null,
7713
7839
  overlays
7714
7840
  ]
@@ -7719,7 +7845,7 @@ var Table = forwardRef5(TableInner);
7719
7845
 
7720
7846
  // src/components/ThemeSwitch.tsx
7721
7847
  import { forwardRef as forwardRef6 } from "react";
7722
- import { jsx as jsx22, jsxs as jsxs21 } from "react/jsx-runtime";
7848
+ import { jsx as jsx23, jsxs as jsxs22 } from "react/jsx-runtime";
7723
7849
  var ThemeSwitch = forwardRef6(function ThemeSwitch2({
7724
7850
  checked,
7725
7851
  onCheckedChange,
@@ -7733,7 +7859,7 @@ var ThemeSwitch = forwardRef6(function ThemeSwitch2({
7733
7859
  onCheckedChange?.(!checked);
7734
7860
  onClick?.(event);
7735
7861
  }
7736
- return /* @__PURE__ */ jsxs21(
7862
+ return /* @__PURE__ */ jsxs22(
7737
7863
  "button",
7738
7864
  {
7739
7865
  ref,
@@ -7745,12 +7871,12 @@ var ThemeSwitch = forwardRef6(function ThemeSwitch2({
7745
7871
  onClick: handleClick,
7746
7872
  ...props,
7747
7873
  children: [
7748
- /* @__PURE__ */ jsx22("span", { className: "sia-theme-switch__selection", "aria-hidden": "true" }),
7749
- /* @__PURE__ */ jsx22("span", { className: `sia-theme-switch__icon${checked ? "" : " is-active"}`, "aria-hidden": "true", children: /* @__PURE__ */ jsxs21("svg", { viewBox: "0 0 24 24", children: [
7750
- /* @__PURE__ */ jsx22("circle", { cx: "12", cy: "12", r: "3.5" }),
7751
- /* @__PURE__ */ jsx22("path", { d: "M12 2.5v2M12 19.5v2M2.5 12h2M19.5 12h2M5.3 5.3l1.4 1.4M17.3 17.3l1.4 1.4M18.7 5.3l-1.4 1.4M6.7 17.3l-1.4 1.4" })
7874
+ /* @__PURE__ */ jsx23("span", { className: "sia-theme-switch__selection", "aria-hidden": "true" }),
7875
+ /* @__PURE__ */ jsx23("span", { className: `sia-theme-switch__icon${checked ? "" : " is-active"}`, "aria-hidden": "true", children: /* @__PURE__ */ jsxs22("svg", { viewBox: "0 0 24 24", children: [
7876
+ /* @__PURE__ */ jsx23("circle", { cx: "12", cy: "12", r: "3.5" }),
7877
+ /* @__PURE__ */ jsx23("path", { d: "M12 2.5v2M12 19.5v2M2.5 12h2M19.5 12h2M5.3 5.3l1.4 1.4M17.3 17.3l1.4 1.4M18.7 5.3l-1.4 1.4M6.7 17.3l-1.4 1.4" })
7752
7878
  ] }) }),
7753
- /* @__PURE__ */ jsx22("span", { className: `sia-theme-switch__icon${checked ? " is-active" : ""}`, "aria-hidden": "true", children: /* @__PURE__ */ jsx22("svg", { viewBox: "0 0 24 24", children: /* @__PURE__ */ jsx22("path", { d: "M20 15.2A8 8 0 0 1 8.8 4 8.5 8.5 0 1 0 20 15.2Z" }) }) })
7879
+ /* @__PURE__ */ jsx23("span", { className: `sia-theme-switch__icon${checked ? " is-active" : ""}`, "aria-hidden": "true", children: /* @__PURE__ */ jsx23("svg", { viewBox: "0 0 24 24", children: /* @__PURE__ */ jsx23("path", { d: "M20 15.2A8 8 0 0 1 8.8 4 8.5 8.5 0 1 0 20 15.2Z" }) }) })
7754
7880
  ]
7755
7881
  }
7756
7882
  );
@@ -7779,8 +7905,8 @@ function applySiaTheme(mode, target = document.documentElement) {
7779
7905
  }
7780
7906
 
7781
7907
  // src/components/InputSelect.tsx
7782
- import { forwardRef as forwardRef7, useEffect as useEffect13, useRef as useRef16, useState as useState18 } from "react";
7783
- import { jsx as jsx23, jsxs as jsxs22 } from "react/jsx-runtime";
7908
+ import { forwardRef as forwardRef7, useEffect as useEffect13, useRef as useRef16, useState as useState19 } from "react";
7909
+ import { jsx as jsx24, jsxs as jsxs23 } from "react/jsx-runtime";
7784
7910
  var InputSelect = forwardRef7(function InputSelect2({
7785
7911
  options,
7786
7912
  value,
@@ -7807,19 +7933,19 @@ var InputSelect = forwardRef7(function InputSelect2({
7807
7933
  ...inputProps
7808
7934
  }, forwardedRef) {
7809
7935
  const size = useControlSize(sizeProp);
7810
- const [internal, setInternal] = useState18(defaultValue);
7936
+ const [internal, setInternal] = useState19(defaultValue);
7811
7937
  const current = value !== void 0 ? value : internal;
7812
7938
  const values = current == null ? [] : Array.isArray(current) ? current : [current];
7813
7939
  const text = values.map((item) => displayField === "label" ? String(options.find((option) => option.optionType !== "divider" && option.value === item)?.label ?? item) : String(item)).join(",");
7814
- const [draft, setDraft] = useState18(text);
7940
+ const [draft, setDraft] = useState19(text);
7815
7941
  useEffect13(() => {
7816
7942
  setDraft(text);
7817
7943
  }, [text, current]);
7818
- const [open, setOpen] = useState18(false);
7819
- const [search, setSearch] = useState18("");
7820
- const [modalOpen, setModalOpen] = useState18(false);
7821
- const [modalValues, setModalValues] = useState18([]);
7822
- const [selectedOnly, setSelectedOnly] = useState18(false);
7944
+ const [open, setOpen] = useState19(false);
7945
+ const [search, setSearch] = useState19("");
7946
+ const [modalOpen, setModalOpen] = useState19(false);
7947
+ const [modalValues, setModalValues] = useState19([]);
7948
+ const [selectedOnly, setSelectedOnly] = useState19(false);
7823
7949
  const rootRef = useRef16(null);
7824
7950
  const popupRef = useRef16(null);
7825
7951
  const inputRef = useRef16(null);
@@ -7863,14 +7989,14 @@ var InputSelect = forwardRef7(function InputSelect2({
7863
7989
  setSelectedOnly(false);
7864
7990
  setModalOpen(true);
7865
7991
  }
7866
- return /* @__PURE__ */ jsxs22("div", { ref: rootRef, style, className: `sia-input-select${open || modalOpen ? " is-open" : ""} ${className}`, onKeyDown: (event) => {
7992
+ return /* @__PURE__ */ jsxs23("div", { ref: rootRef, style, className: `sia-input-select${open || modalOpen ? " is-open" : ""} ${className}`, onKeyDown: (event) => {
7867
7993
  if (event.key === "Escape" && open) {
7868
7994
  event.stopPropagation();
7869
7995
  changeOpen(false);
7870
7996
  inputRef.current?.focus();
7871
7997
  }
7872
7998
  }, children: [
7873
- /* @__PURE__ */ jsx23(
7999
+ /* @__PURE__ */ jsx24(
7874
8000
  Input,
7875
8001
  {
7876
8002
  ...inputProps,
@@ -7907,26 +8033,26 @@ var InputSelect = forwardRef7(function InputSelect2({
7907
8033
  emit(parseInput ? parseInput(next) : multiple ? next.split(",").map((item) => item.trim()).filter(Boolean) : next);
7908
8034
  changeOpen(true);
7909
8035
  },
7910
- suffix: /* @__PURE__ */ jsxs22("span", { className: "sia-input-select__suffix", children: [
7911
- allowClear && draft && !disabled && /* @__PURE__ */ jsx23(Button, { variant: "text", size: "small", disabled: loading, "aria-label": "\u6E05\u9664\u8F93\u5165\u9009\u62E9", onClick: (event) => {
8036
+ suffix: /* @__PURE__ */ jsxs23("span", { className: "sia-input-select__suffix", children: [
8037
+ allowClear && draft && !disabled && /* @__PURE__ */ jsx24(Button, { variant: "text", size: "small", disabled: loading, "aria-label": "\u6E05\u9664\u8F93\u5165\u9009\u62E9", onClick: (event) => {
7912
8038
  event.stopPropagation();
7913
8039
  setDraft("");
7914
8040
  emit(multiple ? [] : void 0);
7915
8041
  inputRef.current?.focus();
7916
8042
  }, children: "\xD7" }),
7917
8043
  suffix,
7918
- enableModal && /* @__PURE__ */ jsx23(Button, { variant: "text", size: "small", disabled: disabled || loading, "aria-label": "\u6253\u5F00\u9009\u62E9\u5F39\u7A97", onClick: (event) => {
8044
+ enableModal && /* @__PURE__ */ jsx24(Button, { variant: "text", size: "small", disabled: disabled || loading, "aria-label": "\u6253\u5F00\u9009\u62E9\u5F39\u7A97", onClick: (event) => {
7919
8045
  event.stopPropagation();
7920
8046
  openModal();
7921
8047
  }, children: "\u2026" }),
7922
- /* @__PURE__ */ jsx23(Button, { variant: "text", size: "small", disabled: disabled || loading, "aria-label": "\u5C55\u5F00\u9009\u9879", onClick: (event) => {
8048
+ /* @__PURE__ */ jsx24(Button, { variant: "text", size: "small", disabled: disabled || loading, "aria-label": "\u5C55\u5F00\u9009\u9879", onClick: (event) => {
7923
8049
  event.stopPropagation();
7924
8050
  changeOpen(!open);
7925
- }, children: /* @__PURE__ */ jsx23(Icon, { name: loading ? "refresh" : open ? "chevron-up" : "chevron-down", size: 13 }) })
8051
+ }, children: /* @__PURE__ */ jsx24(Icon, { name: loading ? "refresh" : open ? "chevron-up" : "chevron-down", size: 13 }) })
7926
8052
  ] })
7927
8053
  }
7928
8054
  ),
7929
- /* @__PURE__ */ jsx23(PopupPortal, { ref: popupRef, anchorRef: rootRef, open: open && !disabled && !loading, className: "sia-input-select__popup", children: /* @__PURE__ */ jsx23(
8055
+ /* @__PURE__ */ jsx24(PopupPortal, { ref: popupRef, anchorRef: rootRef, open: open && !disabled && !loading, className: "sia-input-select__popup", children: /* @__PURE__ */ jsx24(
7930
8056
  SelectionPanel,
7931
8057
  {
7932
8058
  options,
@@ -7941,7 +8067,7 @@ var InputSelect = forwardRef7(function InputSelect2({
7941
8067
  onSearch: setSearch
7942
8068
  }
7943
8069
  ) }),
7944
- enableModal && /* @__PURE__ */ jsxs22(
8070
+ enableModal && /* @__PURE__ */ jsxs23(
7945
8071
  Modal,
7946
8072
  {
7947
8073
  open: modalOpen,
@@ -7954,15 +8080,15 @@ var InputSelect = forwardRef7(function InputSelect2({
7954
8080
  setModalOpen(false);
7955
8081
  },
7956
8082
  children: [
7957
- /* @__PURE__ */ jsxs22("div", { className: "sia-selection-panel__actions", role: "tablist", "aria-label": "\u9009\u9879\u8303\u56F4", children: [
7958
- /* @__PURE__ */ jsx23(Button, { role: "tab", "aria-selected": !selectedOnly, variant: !selectedOnly ? "primary" : "text", onClick: () => setSelectedOnly(false), children: "\u5168\u90E8" }),
7959
- /* @__PURE__ */ jsxs22(Button, { role: "tab", "aria-selected": selectedOnly, variant: selectedOnly ? "primary" : "text", onClick: () => setSelectedOnly(true), children: [
8083
+ /* @__PURE__ */ jsxs23("div", { className: "sia-selection-panel__actions", role: "tablist", "aria-label": "\u9009\u9879\u8303\u56F4", children: [
8084
+ /* @__PURE__ */ jsx24(Button, { role: "tab", "aria-selected": !selectedOnly, variant: !selectedOnly ? "primary" : "text", onClick: () => setSelectedOnly(false), children: "\u5168\u90E8" }),
8085
+ /* @__PURE__ */ jsxs23(Button, { role: "tab", "aria-selected": selectedOnly, variant: selectedOnly ? "primary" : "text", onClick: () => setSelectedOnly(true), children: [
7960
8086
  "\u5DF2\u9009\u9879(",
7961
8087
  modalValues.length,
7962
8088
  ")"
7963
8089
  ] })
7964
8090
  ] }),
7965
- modalOpen && /* @__PURE__ */ jsx23(
8091
+ modalOpen && /* @__PURE__ */ jsx24(
7966
8092
  SelectionPanel,
7967
8093
  {
7968
8094
  options,
@@ -7983,8 +8109,8 @@ var InputSelect = forwardRef7(function InputSelect2({
7983
8109
  });
7984
8110
 
7985
8111
  // src/components/QueryForm.tsx
7986
- import { Children as Children4, useLayoutEffect as useLayoutEffect3, useRef as useRef17, useState as useState19 } from "react";
7987
- import { jsx as jsx24, jsxs as jsxs23 } from "react/jsx-runtime";
8112
+ import { Children as Children4, useLayoutEffect as useLayoutEffect3, useRef as useRef17, useState as useState20 } from "react";
8113
+ import { jsx as jsx25, jsxs as jsxs24 } from "react/jsx-runtime";
7988
8114
  function QueryForm({
7989
8115
  fields,
7990
8116
  children,
@@ -8017,16 +8143,16 @@ function QueryForm({
8017
8143
  ...formProps
8018
8144
  }) {
8019
8145
  const [form] = useForm(providedForm);
8020
- const [internalCollapsed, setInternalCollapsed] = useState19(defaultCollapsed);
8146
+ const [internalCollapsed, setInternalCollapsed] = useState20(defaultCollapsed);
8021
8147
  const collapsed = collapsible && (controlledCollapsed ?? internalCollapsed);
8022
- const [searching, setSearching] = useState19(false);
8023
- const [saving, setSaving] = useState19(false);
8024
- const [removing, setRemoving] = useState19(false);
8025
- const [saveOpen, setSaveOpen] = useState19(false);
8026
- const [saveName, setSaveName] = useState19("");
8027
- const [saveError, setSaveError] = useState19("");
8028
- const [error, setError] = useState19("");
8029
- const [activeShortcut, setActiveShortcut] = useState19("");
8148
+ const [searching, setSearching] = useState20(false);
8149
+ const [saving, setSaving] = useState20(false);
8150
+ const [removing, setRemoving] = useState20(false);
8151
+ const [saveOpen, setSaveOpen] = useState20(false);
8152
+ const [saveName, setSaveName] = useState20("");
8153
+ const [saveError, setSaveError] = useState20("");
8154
+ const [error, setError] = useState20("");
8155
+ const [activeShortcut, setActiveShortcut] = useState20("");
8030
8156
  const source = useRef17({ source: "submit" });
8031
8157
  const searchLock = useRef17(false);
8032
8158
  const saveLock = useRef17(false);
@@ -8034,11 +8160,11 @@ function QueryForm({
8034
8160
  const snapshot = useRef17();
8035
8161
  const busy = disabled || loading || searching;
8036
8162
  const shortcutBusy = busy || shortcutsLoading || saving || removing;
8037
- const entries = fields ? fields.map(({ key, width, ...item }) => ({ key, width, content: /* @__PURE__ */ jsx24(Form.Item, { noStyle: true, ...item }) })) : Children4.toArray(children).map((content, index) => ({ key: String(index), width: void 0, content }));
8163
+ const entries = fields ? fields.map(({ key, width, ...item }) => ({ key, width, content: /* @__PURE__ */ jsx25(Form.Item, { noStyle: true, ...item }) })) : Children4.toArray(children).map((content, index) => ({ key: String(index), width: void 0, content }));
8038
8164
  const limit = Math.max(1, Math.floor(collapsedCount));
8039
8165
  const rowRef = useRef17(null);
8040
8166
  const actionsRef = useRef17(null);
8041
- const [fittingCount, setFittingCount] = useState19(limit);
8167
+ const [fittingCount, setFittingCount] = useState20(limit);
8042
8168
  useLayoutEffect3(() => {
8043
8169
  if (!collapsed) return;
8044
8170
  const row = rowRef.current;
@@ -8138,8 +8264,8 @@ function QueryForm({
8138
8264
  setRemoving(false);
8139
8265
  }
8140
8266
  }
8141
- return /* @__PURE__ */ jsxs23("div", { className: `sia-query-form ${className}`.trim(), children: [
8142
- /* @__PURE__ */ jsxs23(
8267
+ return /* @__PURE__ */ jsxs24("div", { className: `sia-query-form ${className}`.trim(), children: [
8268
+ /* @__PURE__ */ jsxs24(
8143
8269
  Form,
8144
8270
  {
8145
8271
  ...formProps,
@@ -8158,8 +8284,8 @@ function QueryForm({
8158
8284
  onValuesChange?.(changed, values);
8159
8285
  },
8160
8286
  children: [
8161
- quickQueries.length ? /* @__PURE__ */ jsxs23("div", { className: "sia-query-form__quick", "aria-label": "\u9884\u8BBE\u5FEB\u6377\u67E5\u8BE2", children: [
8162
- quickQueries.map((query) => /* @__PURE__ */ jsx24(Badge, { className: "sia-query-form__quick-badge", showZero: true, size: "small", title: query.count === void 0 ? void 0 : `\u5171 ${query.count} \u6761`, ...query.badgeProps, count: query.count, children: /* @__PURE__ */ jsx24(
8287
+ quickQueries.length ? /* @__PURE__ */ jsxs24("div", { className: "sia-query-form__quick", "aria-label": "\u9884\u8BBE\u5FEB\u6377\u67E5\u8BE2", children: [
8288
+ quickQueries.map((query) => /* @__PURE__ */ jsx25(Badge, { className: "sia-query-form__quick-badge", showZero: true, size: "small", title: query.count === void 0 ? void 0 : `\u5171 ${query.count} \u6761`, ...query.badgeProps, count: query.count, children: /* @__PURE__ */ jsx25(
8163
8289
  Button,
8164
8290
  {
8165
8291
  size: query.size ?? quickQuerySize,
@@ -8172,8 +8298,8 @@ function QueryForm({
8172
8298
  ) }, query.key)),
8173
8299
  " "
8174
8300
  ] }) : null,
8175
- /* @__PURE__ */ jsxs23("div", { ref: rowRef, className: `sia-query-form__fields${collapsed ? " is-collapsed" : ""}`, style: { "--sia-query-field-width": typeof fieldWidth === "number" ? `${fieldWidth}px` : fieldWidth }, children: [
8176
- entries.map((entry, index) => /* @__PURE__ */ jsx24(
8301
+ /* @__PURE__ */ jsxs24("div", { ref: rowRef, className: `sia-query-form__fields${collapsed ? " is-collapsed" : ""}`, style: { "--sia-query-field-width": typeof fieldWidth === "number" ? `${fieldWidth}px` : fieldWidth }, children: [
8302
+ entries.map((entry, index) => /* @__PURE__ */ jsx25(
8177
8303
  "div",
8178
8304
  {
8179
8305
  className: "sia-query-form__field",
@@ -8183,23 +8309,23 @@ function QueryForm({
8183
8309
  },
8184
8310
  entry.key
8185
8311
  )),
8186
- /* @__PURE__ */ jsxs23("div", { ref: actionsRef, className: "sia-query-form__actions", children: [
8187
- /* @__PURE__ */ jsxs23(Space.Compact, { children: [
8188
- /* @__PURE__ */ jsx24(Button, { type: "submit", variant: "primary", loading: loading || searching, disabled, children: searchText }),
8189
- /* @__PURE__ */ jsx24(Button, { disabled: busy, onClick: reset, children: resetText }),
8190
- onSaveQuery ? /* @__PURE__ */ jsx24(Button, { disabled: shortcutBusy, onClick: () => {
8312
+ /* @__PURE__ */ jsxs24("div", { ref: actionsRef, className: "sia-query-form__actions", children: [
8313
+ /* @__PURE__ */ jsxs24(Space.Compact, { children: [
8314
+ /* @__PURE__ */ jsx25(Button, { type: "submit", variant: "primary", loading: loading || searching, disabled, children: searchText }),
8315
+ /* @__PURE__ */ jsx25(Button, { disabled: busy, onClick: reset, children: resetText }),
8316
+ onSaveQuery ? /* @__PURE__ */ jsx25(Button, { disabled: shortcutBusy, onClick: () => {
8191
8317
  snapshot.current = form.getFieldsValue();
8192
8318
  setSaveName("");
8193
8319
  setSaveError("");
8194
8320
  setSaveOpen(true);
8195
8321
  }, children: saveText }) : null
8196
8322
  ] }),
8197
- collapsible && entries.length > 0 ? /* @__PURE__ */ jsx24(
8323
+ collapsible && entries.length > 0 ? /* @__PURE__ */ jsx25(
8198
8324
  Button,
8199
8325
  {
8200
8326
  variant: "link",
8201
8327
  "aria-expanded": !collapsed,
8202
- icon: /* @__PURE__ */ jsx24(Icon, { name: collapsed ? "chevron-down" : "chevron-up" }),
8328
+ icon: /* @__PURE__ */ jsx25(Icon, { name: collapsed ? "chevron-down" : "chevron-up" }),
8203
8329
  iconPosition: "end",
8204
8330
  onClick: () => {
8205
8331
  setInternalCollapsed(!collapsed);
@@ -8211,8 +8337,8 @@ function QueryForm({
8211
8337
  actionsExtra
8212
8338
  ] })
8213
8339
  ] }),
8214
- savedQueries.length && !collapsed ? /* @__PURE__ */ jsxs23("div", { className: "sia-query-form__saved", "aria-label": "\u5DF2\u4FDD\u5B58\u5FEB\u6377\u67E5\u8BE2", children: [
8215
- savedQueries.map((query, index) => /* @__PURE__ */ jsx24(
8340
+ savedQueries.length && !collapsed ? /* @__PURE__ */ jsxs24("div", { className: "sia-query-form__saved", "aria-label": "\u5DF2\u4FDD\u5B58\u5FEB\u6377\u67E5\u8BE2", children: [
8341
+ savedQueries.map((query, index) => /* @__PURE__ */ jsx25(
8216
8342
  Tag,
8217
8343
  {
8218
8344
  status: query.status ?? ["processing", "success", "warning", "error"][index % 4],
@@ -8238,14 +8364,14 @@ function QueryForm({
8238
8364
  )),
8239
8365
  " "
8240
8366
  ] }) : null,
8241
- error ? /* @__PURE__ */ jsx24("p", { className: "sia-query-form__error", role: "alert", children: error }) : null
8367
+ error ? /* @__PURE__ */ jsx25("p", { className: "sia-query-form__error", role: "alert", children: error }) : null
8242
8368
  ]
8243
8369
  }
8244
8370
  ),
8245
- /* @__PURE__ */ jsxs23(Modal, { open: saveOpen, title: "\u53E6\u5B58\u4E3A\u5FEB\u6377\u67E5\u8BE2", width: 420, confirmLoading: saving, onOk: save, onOpenChange: (next) => {
8371
+ /* @__PURE__ */ jsxs24(Modal, { open: saveOpen, title: "\u53E6\u5B58\u4E3A\u5FEB\u6377\u67E5\u8BE2", width: 420, confirmLoading: saving, onOk: save, onOpenChange: (next) => {
8246
8372
  if (!saveLock.current) setSaveOpen(next);
8247
8373
  }, children: [
8248
- /* @__PURE__ */ jsx24(
8374
+ /* @__PURE__ */ jsx25(
8249
8375
  Input,
8250
8376
  {
8251
8377
  autoFocus: true,
@@ -8264,7 +8390,7 @@ function QueryForm({
8264
8390
  }
8265
8391
  }
8266
8392
  ),
8267
- saveError ? /* @__PURE__ */ jsx24("p", { className: "sia-query-form__error", role: "alert", children: saveError }) : null
8393
+ saveError ? /* @__PURE__ */ jsx25("p", { className: "sia-query-form__error", role: "alert", children: saveError }) : null
8268
8394
  ] })
8269
8395
  ] });
8270
8396
  }
@@ -8414,6 +8540,7 @@ export {
8414
8540
  message,
8415
8541
  niceChartDomain,
8416
8542
  notification,
8543
+ openSelectModal,
8417
8544
  paddedValueExtent,
8418
8545
  registerChartMap,
8419
8546
  saveCompositeImage,