@bioturing/components 0.46.4 → 0.47.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (95) hide show
  1. package/dist/components/base-menu/component.js +19 -21
  2. package/dist/components/base-menu/component.js.map +1 -1
  3. package/dist/components/base-menu/index.js +12 -7
  4. package/dist/components/base-menu/index.js.map +1 -1
  5. package/dist/components/checkbox/component.d.ts +2 -2
  6. package/dist/components/checkbox/component.d.ts.map +1 -1
  7. package/dist/components/checkbox/component.js.map +1 -1
  8. package/dist/components/choice-list/component.js +12 -12
  9. package/dist/components/data-table/component.d.ts.map +1 -1
  10. package/dist/components/data-table/component.js +73 -64
  11. package/dist/components/data-table/component.js.map +1 -1
  12. package/dist/components/data-table/components/TableBody.d.ts +1 -1
  13. package/dist/components/data-table/components/TableBody.d.ts.map +1 -1
  14. package/dist/components/data-table/components/TableBody.js +62 -53
  15. package/dist/components/data-table/components/TableBody.js.map +1 -1
  16. package/dist/components/data-table/components/TableHeader.d.ts +1 -1
  17. package/dist/components/data-table/components/TableHeader.d.ts.map +1 -1
  18. package/dist/components/data-table/components/TableHeader.js +46 -46
  19. package/dist/components/data-table/components/TableHeader.js.map +1 -1
  20. package/dist/components/data-table/components/TablePagination.d.ts.map +1 -1
  21. package/dist/components/data-table/components/TablePagination.js +22 -28
  22. package/dist/components/data-table/components/TablePagination.js.map +1 -1
  23. package/dist/components/data-table/hooks.d.ts.map +1 -1
  24. package/dist/components/data-table/hooks.js +15 -14
  25. package/dist/components/data-table/hooks.js.map +1 -1
  26. package/dist/components/data-table/style.css +1 -1
  27. package/dist/components/data-table/types.d.ts +1 -1
  28. package/dist/components/data-table/types.d.ts.map +1 -1
  29. package/dist/components/data-table/variant-minimal.css +1 -0
  30. package/dist/components/data-table/variant-zebra.css +1 -0
  31. package/dist/components/dialog/Dialog.js +46 -46
  32. package/dist/components/dialog/Dialog.js.map +1 -1
  33. package/dist/components/dialog/dialog.css +1 -1
  34. package/dist/components/form/FormItem/ItemHolder.d.ts +6 -5
  35. package/dist/components/form/FormItem/ItemHolder.d.ts.map +1 -1
  36. package/dist/components/form/FormItem/ItemHolder.js +32 -29
  37. package/dist/components/form/FormItem/ItemHolder.js.map +1 -1
  38. package/dist/components/form/FormItem/index.d.ts +6 -0
  39. package/dist/components/form/FormItem/index.d.ts.map +1 -1
  40. package/dist/components/form/FormItem/index.js +138 -127
  41. package/dist/components/form/FormItem/index.js.map +1 -1
  42. package/dist/components/form/FormValidationContext.d.ts +5 -0
  43. package/dist/components/form/FormValidationContext.d.ts.map +1 -0
  44. package/dist/components/form/FormValidationContext.js +7 -0
  45. package/dist/components/form/FormValidationContext.js.map +1 -0
  46. package/dist/components/form/component.d.ts +6 -1
  47. package/dist/components/form/component.d.ts.map +1 -1
  48. package/dist/components/form/component.js +30 -20
  49. package/dist/components/form/component.js.map +1 -1
  50. package/dist/components/form/formValidationRule.d.ts +19 -0
  51. package/dist/components/form/formValidationRule.d.ts.map +1 -0
  52. package/dist/components/form/formValidationRule.js +22 -0
  53. package/dist/components/form/formValidationRule.js.map +1 -0
  54. package/dist/components/form/index.d.ts +2 -0
  55. package/dist/components/form/index.d.ts.map +1 -1
  56. package/dist/components/form/useFormValidation.d.ts +3 -0
  57. package/dist/components/form/useFormValidation.d.ts.map +1 -0
  58. package/dist/components/form/useFormValidation.js +18 -0
  59. package/dist/components/form/useFormValidation.js.map +1 -0
  60. package/dist/components/index.d.ts +2 -0
  61. package/dist/components/index.d.ts.map +1 -1
  62. package/dist/components/keyboard-shortcut/component.d.ts +2 -0
  63. package/dist/components/keyboard-shortcut/component.d.ts.map +1 -1
  64. package/dist/components/keyboard-shortcut/component.js +69 -49
  65. package/dist/components/keyboard-shortcut/component.js.map +1 -1
  66. package/dist/components/modal/Modal.d.ts +1 -1
  67. package/dist/components/modal/Modal.js +9 -9
  68. package/dist/components/modal/Modal.js.map +1 -1
  69. package/dist/components/modal/style.css +1 -1
  70. package/dist/components/theme-provider/component.d.ts +3 -1
  71. package/dist/components/theme-provider/component.d.ts.map +1 -1
  72. package/dist/components/theme-provider/component.js +32 -31
  73. package/dist/components/theme-provider/component.js.map +1 -1
  74. package/dist/components/theme-provider/context/index.d.ts +2 -1
  75. package/dist/components/theme-provider/context/index.d.ts.map +1 -1
  76. package/dist/components/theme-provider/context/provider.d.ts +2 -3
  77. package/dist/components/theme-provider/context/provider.d.ts.map +1 -1
  78. package/dist/components/theme-provider/context/provider.js +13 -6
  79. package/dist/components/theme-provider/context/provider.js.map +1 -1
  80. package/dist/components/theme-provider/context/themeStore.d.ts +15 -0
  81. package/dist/components/theme-provider/context/themeStore.d.ts.map +1 -1
  82. package/dist/components/theme-provider/context/themeStore.js +10 -9
  83. package/dist/components/theme-provider/context/themeStore.js.map +1 -1
  84. package/dist/components/theme-provider/style.css +1 -1
  85. package/dist/components/tooltip/component.d.ts.map +1 -1
  86. package/dist/components/tooltip/component.js +23 -12
  87. package/dist/components/tooltip/component.js.map +1 -1
  88. package/dist/index.js +286 -275
  89. package/dist/index.js.map +1 -1
  90. package/dist/metadata.d.ts +9 -0
  91. package/dist/metadata.d.ts.map +1 -1
  92. package/dist/metadata.js +14 -0
  93. package/dist/metadata.js.map +1 -1
  94. package/dist/stats.html +1 -1
  95. package/package.json +6 -6
@@ -4,17 +4,17 @@ import { convertColumnsToTanStack as v, getRowKey as L, convertSelectionToAntFor
4
4
  function A(d) {
5
5
  const {
6
6
  dataSource: g = [],
7
- columns: r = [],
7
+ columns: s = [],
8
8
  rowSelection: i,
9
9
  pagination: a,
10
- loading: s,
10
+ loading: c,
11
11
  enableSorting: f = !0,
12
12
  enableFiltering: u = !1,
13
13
  onSortingChange: p,
14
- onFilteringChange: C,
14
+ onFilteringChange: w,
15
15
  rowKey: S,
16
- enableColumnResizing: c = !1,
17
- columnResizeMode: w = "onChange",
16
+ enableColumnResizing: r = !1,
17
+ columnResizeMode: C = "onChange",
18
18
  columnResizeDirection: h = "ltr",
19
19
  onColumnSizingChange: z
20
20
  } = d, [t, l] = y({
@@ -27,7 +27,7 @@ function A(d) {
27
27
  rowSelection: {},
28
28
  columnSizing: {}
29
29
  }), R = M(() => {
30
- let e = v(r);
30
+ let e = v(s);
31
31
  return i && (e = [{
32
32
  id: "select",
33
33
  header: ({ table: o }) => i.type === "radio" ? i.columnTitle || null : "SELECTION_HEADER",
@@ -40,7 +40,7 @@ function A(d) {
40
40
  isSelectionColumn: !0
41
41
  }
42
42
  }, ...e]), e;
43
- }, [r, i]);
43
+ }, [s, i]);
44
44
  x(() => {
45
45
  if (a === !1) return;
46
46
  const e = t.pagination.pageSize, n = Math.max(0, Math.ceil(g.length / e) - 1);
@@ -71,7 +71,7 @@ function A(d) {
71
71
  columnFilters: t.filtering,
72
72
  pagination: t.pagination,
73
73
  rowSelection: t.rowSelection,
74
- columnSizing: c ? t.columnSizing : void 0
74
+ columnSizing: r ? t.columnSizing : void 0
75
75
  },
76
76
  // State update handlers
77
77
  onSortingChange: (e) => {
@@ -80,7 +80,7 @@ function A(d) {
80
80
  },
81
81
  onColumnFiltersChange: (e) => {
82
82
  const n = typeof e == "function" ? e(t.filtering) : e;
83
- l((o) => ({ ...o, filtering: n })), C?.(n);
83
+ l((o) => ({ ...o, filtering: n })), w?.(n);
84
84
  },
85
85
  onPaginationChange: (e) => {
86
86
  if (a === !1) return;
@@ -98,7 +98,7 @@ function A(d) {
98
98
  i.onChange(o, b);
99
99
  }
100
100
  },
101
- onColumnSizingChange: c ? (e) => {
101
+ onColumnSizingChange: r ? (e) => {
102
102
  const n = typeof e == "function" ? e(t.columnSizing) : e;
103
103
  l((o) => ({
104
104
  ...o,
@@ -109,17 +109,18 @@ function A(d) {
109
109
  enableSorting: f,
110
110
  enableFilters: u,
111
111
  enableRowSelection: !!i,
112
- enableColumnResizing: c,
112
+ enableMultiRowSelection: i?.type !== "radio",
113
+ enableColumnResizing: r,
113
114
  // Column resizing configuration
114
- columnResizeMode: w,
115
+ columnResizeMode: C,
115
116
  columnResizeDirection: h,
116
117
  // Row identification
117
118
  getRowId: (e, n) => String(L(e, n, S))
118
119
  });
119
120
  return {
120
121
  table: m,
121
- isLoading: typeof s == "boolean" ? s : typeof s == "object",
122
- spinProps: typeof s == "object" ? s : {},
122
+ isLoading: typeof c == "boolean" ? c : typeof c == "object",
123
+ spinProps: typeof c == "object" ? c : {},
123
124
  hasRowSelection: !!i,
124
125
  hasPagination: m.getPageCount() > 1,
125
126
  paginationConfig: a === !1 ? void 0 : a,
@@ -1 +1 @@
1
- {"version":3,"file":"hooks.js","sources":["../../../src/components/data-table/hooks.ts"],"sourcesContent":["import { useState, useMemo, useEffect } from \"react\";\nimport {\n useReactTable,\n getCoreRowModel,\n getSortedRowModel,\n getFilteredRowModel,\n getPaginationRowModel,\n type ColumnDef,\n} from \"@tanstack/react-table\";\nimport { type DataTableProps, type DataTableState } from \"./types\";\nimport {\n convertColumnsToTanStack,\n convertSelectionToAntFormat,\n getRowKey,\n} from \"./utils\";\n\n/**\n * Hook to manage DataTable state and TanStack Table integration\n */\nexport function useDataTable<\n RecordType extends Record<string, any> = Record<string, unknown>\n>(props: DataTableProps<RecordType>) {\n const {\n dataSource = [],\n columns = [],\n rowSelection,\n pagination,\n loading,\n enableSorting = true,\n enableFiltering = false,\n onSortingChange,\n onFilteringChange,\n rowKey,\n enableColumnResizing = false,\n columnResizeMode = \"onChange\",\n columnResizeDirection = \"ltr\",\n onColumnSizingChange,\n } = props;\n\n // Internal state for uncontrolled mode\n const [internalState, setInternalState] = useState<DataTableState>({\n sorting: [],\n filtering: [],\n pagination: {\n pageIndex: 0,\n pageSize: !pagination\n ? dataSource.length\n : pagination?.defaultPageSize || pagination?.pageSize || 10,\n },\n rowSelection: {},\n columnSizing: {},\n });\n\n // Convert Ant Design columns to TanStack format\n const tanStackColumns = useMemo(() => {\n let processedColumns = convertColumnsToTanStack(columns);\n\n // Add selection column if needed\n if (rowSelection) {\n const selectionColumn: ColumnDef<RecordType> = {\n id: \"select\",\n header: ({ table: _table }) => {\n if (rowSelection.type === \"radio\")\n return rowSelection.columnTitle || null;\n // Return a marker that will be handled by the TableHeader component\n return \"SELECTION_HEADER\";\n },\n cell: ({ row: _row }) => {\n // Return a marker that will be handled by the TableBody component\n return \"SELECTION_CELL\";\n },\n size:\n typeof rowSelection.columnWidth === \"number\"\n ? rowSelection.columnWidth\n : typeof rowSelection.columnWidth === \"string\"\n ? parseFloat(rowSelection.columnWidth) || 32\n : 32,\n enableSorting: false,\n enableHiding: false,\n meta: {\n fixed: rowSelection.fixed,\n isSelectionColumn: true,\n },\n };\n\n processedColumns = [selectionColumn, ...processedColumns];\n }\n\n return processedColumns;\n }, [columns, rowSelection]);\n\n // Reset pagination when dataSource changes\n useEffect(() => {\n if (pagination === false) return;\n\n const currentPageSize = internalState.pagination.pageSize;\n const maxPageIndex = Math.max(0, Math.ceil(dataSource.length / currentPageSize) - 1);\n\n // Only reset if current page is out of bounds\n if (internalState.pagination.pageIndex > maxPageIndex) {\n setInternalState((prev) => ({\n ...prev,\n pagination: {\n ...prev.pagination,\n pageIndex: 0,\n },\n }));\n }\n }, [dataSource, pagination, internalState.pagination.pageSize, internalState.pagination.pageIndex]);\n\n // Initialize TanStack Table\n const table = useReactTable<RecordType>({\n data: dataSource,\n columns: tanStackColumns,\n getCoreRowModel: getCoreRowModel(),\n getSortedRowModel: enableSorting ? getSortedRowModel() : undefined,\n getFilteredRowModel: enableFiltering ? getFilteredRowModel() : undefined,\n getPaginationRowModel:\n pagination !== false ? getPaginationRowModel() : undefined,\n\n // Default column configuration for sizing\n defaultColumn: {\n size: 150,\n minSize: 50,\n maxSize: 500,\n },\n\n // State management\n state: {\n sorting: internalState.sorting,\n columnFilters: internalState.filtering,\n pagination: internalState.pagination,\n rowSelection: internalState.rowSelection,\n columnSizing: enableColumnResizing\n ? internalState.columnSizing\n : undefined,\n },\n\n // State update handlers\n onSortingChange: (updater) => {\n const newSorting =\n typeof updater === \"function\"\n ? updater(internalState.sorting)\n : updater;\n setInternalState((prev) => ({ ...prev, sorting: newSorting }));\n onSortingChange?.(newSorting);\n },\n\n onColumnFiltersChange: (updater) => {\n const newFiltering =\n typeof updater === \"function\"\n ? updater(internalState.filtering)\n : updater;\n setInternalState((prev) => ({ ...prev, filtering: newFiltering }));\n onFilteringChange?.(newFiltering);\n },\n\n onPaginationChange: (updater) => {\n if (pagination === false) return;\n\n const newPagination =\n typeof updater === \"function\"\n ? updater(internalState.pagination)\n : updater;\n setInternalState((prev) => ({ ...prev, pagination: newPagination }));\n },\n\n onRowSelectionChange: (updater) => {\n const newSelection =\n typeof updater === \"function\"\n ? updater(internalState.rowSelection)\n : updater;\n setInternalState((prev) => ({ ...prev, rowSelection: newSelection }));\n\n // Convert to Ant Design format and call onChange\n if (rowSelection?.onChange) {\n const { selectedRowKeys, selectedRows } = convertSelectionToAntFormat(\n newSelection,\n dataSource,\n rowKey\n );\n rowSelection.onChange(selectedRowKeys, selectedRows);\n }\n },\n\n onColumnSizingChange: enableColumnResizing\n ? (updater) => {\n const newColumnSizing =\n typeof updater === \"function\"\n ? updater(internalState.columnSizing)\n : updater;\n setInternalState((prev) => ({\n ...prev,\n columnSizing: newColumnSizing,\n }));\n onColumnSizingChange?.(newColumnSizing);\n }\n : undefined,\n\n // Feature enables\n enableSorting,\n enableFilters: enableFiltering,\n enableRowSelection: !!rowSelection,\n enableColumnResizing,\n\n // Column resizing configuration\n columnResizeMode,\n columnResizeDirection,\n\n // Row identification\n getRowId: (row, index) => String(getRowKey(row, index, rowKey)),\n });\n\n // Loading state processing\n const isLoading =\n typeof loading === \"boolean\"\n ? loading\n : typeof loading === \"object\"\n ? true\n : false;\n const spinProps = typeof loading === \"object\" ? loading : {};\n\n return {\n table,\n isLoading,\n spinProps,\n hasRowSelection: !!rowSelection,\n hasPagination: table.getPageCount() > 1,\n paginationConfig: pagination === false ? undefined : pagination,\n rowSelectionConfig: rowSelection,\n };\n}\n"],"names":["useDataTable","props","dataSource","columns","rowSelection","pagination","loading","enableSorting","enableFiltering","onSortingChange","onFilteringChange","rowKey","enableColumnResizing","columnResizeMode","columnResizeDirection","onColumnSizingChange","internalState","setInternalState","useState","tanStackColumns","useMemo","processedColumns","convertColumnsToTanStack","_table","_row","useEffect","currentPageSize","maxPageIndex","prev","table","useReactTable","getCoreRowModel","getSortedRowModel","getFilteredRowModel","getPaginationRowModel","updater","newSorting","newFiltering","newPagination","newSelection","selectedRowKeys","selectedRows","convertSelectionToAntFormat","newColumnSizing","row","index","getRowKey"],"mappings":"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"}
1
+ {"version":3,"file":"hooks.js","sources":["../../../src/components/data-table/hooks.ts"],"sourcesContent":["import { useState, useMemo, useEffect } from \"react\";\nimport {\n useReactTable,\n getCoreRowModel,\n getSortedRowModel,\n getFilteredRowModel,\n getPaginationRowModel,\n type ColumnDef,\n} from \"@tanstack/react-table\";\nimport { type DataTableProps, type DataTableState } from \"./types\";\nimport {\n convertColumnsToTanStack,\n convertSelectionToAntFormat,\n getRowKey,\n} from \"./utils\";\n\n/**\n * Hook to manage DataTable state and TanStack Table integration\n */\nexport function useDataTable<\n RecordType extends Record<string, any> = Record<string, unknown>\n>(props: DataTableProps<RecordType>) {\n const {\n dataSource = [],\n columns = [],\n rowSelection,\n pagination,\n loading,\n enableSorting = true,\n enableFiltering = false,\n onSortingChange,\n onFilteringChange,\n rowKey,\n enableColumnResizing = false,\n columnResizeMode = \"onChange\",\n columnResizeDirection = \"ltr\",\n onColumnSizingChange,\n } = props;\n\n // Internal state for uncontrolled mode\n const [internalState, setInternalState] = useState<DataTableState>({\n sorting: [],\n filtering: [],\n pagination: {\n pageIndex: 0,\n pageSize: !pagination\n ? dataSource.length\n : pagination?.defaultPageSize || pagination?.pageSize || 10,\n },\n rowSelection: {},\n columnSizing: {},\n });\n\n // Convert Ant Design columns to TanStack format\n const tanStackColumns = useMemo(() => {\n let processedColumns = convertColumnsToTanStack(columns);\n\n // Add selection column if needed\n if (rowSelection) {\n const selectionColumn: ColumnDef<RecordType> = {\n id: \"select\",\n header: ({ table: _table }) => {\n if (rowSelection.type === \"radio\")\n return rowSelection.columnTitle || null;\n // Return a marker that will be handled by the TableHeader component\n return \"SELECTION_HEADER\";\n },\n cell: ({ row: _row }) => {\n // Return a marker that will be handled by the TableBody component\n return \"SELECTION_CELL\";\n },\n size:\n typeof rowSelection.columnWidth === \"number\"\n ? rowSelection.columnWidth\n : typeof rowSelection.columnWidth === \"string\"\n ? parseFloat(rowSelection.columnWidth) || 32\n : 32,\n enableSorting: false,\n enableHiding: false,\n meta: {\n fixed: rowSelection.fixed,\n isSelectionColumn: true,\n },\n };\n\n processedColumns = [selectionColumn, ...processedColumns];\n }\n\n return processedColumns;\n }, [columns, rowSelection]);\n\n // Reset pagination when dataSource changes\n useEffect(() => {\n if (pagination === false) return;\n\n const currentPageSize = internalState.pagination.pageSize;\n const maxPageIndex = Math.max(0, Math.ceil(dataSource.length / currentPageSize) - 1);\n\n // Only reset if current page is out of bounds\n if (internalState.pagination.pageIndex > maxPageIndex) {\n setInternalState((prev) => ({\n ...prev,\n pagination: {\n ...prev.pagination,\n pageIndex: 0,\n },\n }));\n }\n }, [dataSource, pagination, internalState.pagination.pageSize, internalState.pagination.pageIndex]);\n\n // Initialize TanStack Table\n const table = useReactTable<RecordType>({\n data: dataSource,\n columns: tanStackColumns,\n getCoreRowModel: getCoreRowModel(),\n getSortedRowModel: enableSorting ? getSortedRowModel() : undefined,\n getFilteredRowModel: enableFiltering ? getFilteredRowModel() : undefined,\n getPaginationRowModel:\n pagination !== false ? getPaginationRowModel() : undefined,\n\n // Default column configuration for sizing\n defaultColumn: {\n size: 150,\n minSize: 50,\n maxSize: 500,\n },\n\n // State management\n state: {\n sorting: internalState.sorting,\n columnFilters: internalState.filtering,\n pagination: internalState.pagination,\n rowSelection: internalState.rowSelection,\n columnSizing: enableColumnResizing\n ? internalState.columnSizing\n : undefined,\n },\n\n // State update handlers\n onSortingChange: (updater) => {\n const newSorting =\n typeof updater === \"function\"\n ? updater(internalState.sorting)\n : updater;\n setInternalState((prev) => ({ ...prev, sorting: newSorting }));\n onSortingChange?.(newSorting);\n },\n\n onColumnFiltersChange: (updater) => {\n const newFiltering =\n typeof updater === \"function\"\n ? updater(internalState.filtering)\n : updater;\n setInternalState((prev) => ({ ...prev, filtering: newFiltering }));\n onFilteringChange?.(newFiltering);\n },\n\n onPaginationChange: (updater) => {\n if (pagination === false) return;\n\n const newPagination =\n typeof updater === \"function\"\n ? updater(internalState.pagination)\n : updater;\n setInternalState((prev) => ({ ...prev, pagination: newPagination }));\n },\n\n onRowSelectionChange: (updater) => {\n const newSelection =\n typeof updater === \"function\"\n ? updater(internalState.rowSelection)\n : updater;\n setInternalState((prev) => ({ ...prev, rowSelection: newSelection }));\n\n // Convert to Ant Design format and call onChange\n if (rowSelection?.onChange) {\n const { selectedRowKeys, selectedRows } = convertSelectionToAntFormat(\n newSelection,\n dataSource,\n rowKey\n );\n rowSelection.onChange(selectedRowKeys, selectedRows);\n }\n },\n\n onColumnSizingChange: enableColumnResizing\n ? (updater) => {\n const newColumnSizing =\n typeof updater === \"function\"\n ? updater(internalState.columnSizing)\n : updater;\n setInternalState((prev) => ({\n ...prev,\n columnSizing: newColumnSizing,\n }));\n onColumnSizingChange?.(newColumnSizing);\n }\n : undefined,\n\n // Feature enables\n enableSorting,\n enableFilters: enableFiltering,\n enableRowSelection: !!rowSelection,\n enableMultiRowSelection: rowSelection?.type !== \"radio\",\n enableColumnResizing,\n\n // Column resizing configuration\n columnResizeMode,\n columnResizeDirection,\n\n // Row identification\n getRowId: (row, index) => String(getRowKey(row, index, rowKey)),\n });\n\n // Loading state processing\n const isLoading =\n typeof loading === \"boolean\"\n ? loading\n : typeof loading === \"object\"\n ? true\n : false;\n const spinProps = typeof loading === \"object\" ? loading : {};\n\n return {\n table,\n isLoading,\n spinProps,\n hasRowSelection: !!rowSelection,\n hasPagination: table.getPageCount() > 1,\n paginationConfig: pagination === false ? undefined : pagination,\n rowSelectionConfig: rowSelection,\n };\n}\n"],"names":["useDataTable","props","dataSource","columns","rowSelection","pagination","loading","enableSorting","enableFiltering","onSortingChange","onFilteringChange","rowKey","enableColumnResizing","columnResizeMode","columnResizeDirection","onColumnSizingChange","internalState","setInternalState","useState","tanStackColumns","useMemo","processedColumns","convertColumnsToTanStack","_table","_row","useEffect","currentPageSize","maxPageIndex","prev","table","useReactTable","getCoreRowModel","getSortedRowModel","getFilteredRowModel","getPaginationRowModel","updater","newSorting","newFiltering","newPagination","newSelection","selectedRowKeys","selectedRows","convertSelectionToAntFormat","newColumnSizing","row","index","getRowKey"],"mappings":"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"}
@@ -1 +1 @@
1
- @layer components{.ds-table-wrapper.ds-data-table{display:flex;flex-direction:column;max-height:100%;background-color:var(--ds-color-bg-container);border-radius:8px;border:1px solid var(--ds-color-split)}.ds-table-wrapper.ds-data-table .ds-spin-nested-loading,.ds-table-wrapper.ds-data-table .ds-spin-container{display:flex;flex-direction:column;flex-shrink:1;flex-grow:1;min-height:0}.ds-table-wrapper.ds-data-table .ds-spin-container .ds-table{flex-shrink:1;flex-grow:1;min-height:0}.ds-table-wrapper.ds-data-table .ds-table{display:flex;flex-direction:column}.ds-table-wrapper.ds-data-table .ds-table-thead th.ds-table-cell:first-child{border-top-left-radius:7px}.ds-table-wrapper.ds-data-table .ds-table-thead th.ds-table-cell:last-child{border-top-right-radius:7px}.ds-table-wrapper.ds-data-table .ds-table-container{flex-shrink:1;min-height:0;display:flex;flex-direction:column;position:relative;overflow:auto;border-radius:7px}.ds-table-wrapper.ds-data-table.ds-table-has-pagination .ds-table-container{border-bottom-right-radius:0;border-bottom-left-radius:0}.ds-table-wrapper.ds-data-table.ds-table-has-pagination .ds-table{border:none;border-bottom:none;border-radius:0}.ds-table-wrapper.ds-data-table.ds-table-has-pagination tr.ds-table-row:last-child{border-bottom-left-radius:0;border-bottom-right-radius:0}.ds-table-wrapper.ds-data-table.ds-table-has-pagination tr.ds-table-row:last-child td.ds-table-cell:first-child{border-bottom-left-radius:0}.ds-table-wrapper.ds-data-table.ds-table-has-pagination tr.ds-table-row:last-child td.ds-table-cell:last-child{border-bottom-right-radius:0}.ds-table-wrapper.ds-data-table .ds-table-header{flex-shrink:0}.ds-table-wrapper.ds-data-table .ds-table-body{flex-shrink:1;min-height:0;min-width:0}.ds-table-wrapper.ds-data-table .ds-table-content{flex-grow:0;flex-shrink:1;min-height:0;display:flex}.ds-table-wrapper.ds-data-table .ds-table-content table{width:100%;border-collapse:collapse;flex-grow:0;flex-shrink:1;min-height:0}.ds-table-wrapper.ds-data-table .ds-table-thead{background-color:var(--ds-color-bg-container);position:sticky;top:0;z-index:1;border-top-left-radius:6px;border-top-right-radius:6px}.ds-table-wrapper.ds-data-table .ds-table-thead th.ds-table-cell{text-align:left;font-weight:500;color:var(--ds-color-text-secondary);background-color:var(--ds-color-fill-alter);border-bottom:none;line-height:20px;position:relative}.ds-table-wrapper.ds-data-table .ds-table-thead th.ds-table-cell:hover{background-color:var(--color-ds-color-fill-quaternary)}.ds-table-wrapper.ds-data-table .ds-table-thead th.ds-table-cell:before{content:"";position:absolute;left:0;bottom:0;width:100%;height:1px;background-color:var(--ds-color-split)}.ds-table-wrapper.ds-data-table .ds-table-thead th.ds-table-cell:not(:last-child):after{content:"";position:absolute;right:0;top:50%;transform:translateY(-50%);height:20px;width:1px;background-color:var(--ds-color-split)}.ds-table-wrapper.ds-data-table.ds-table-scroll-vertical .ds-table,.ds-table-wrapper.ds-data-table.ds-table-scroll-vertical .ds-table-container,.ds-table-wrapper.ds-data-table.ds-table-scroll-vertical .ds-table-thead{border-top-right-radius:0}.ds-table-wrapper.ds-data-table.ds-table-scroll-vertical .ds-table-thead th.ds-table-cell:last-child{border-top-right-radius:0}.ds-table-wrapper.ds-data-table.ds-table-small .ds-table-thead th.ds-table-cell{padding:8px 16px;font-size:var(--ds-font-size-body-small, 12px)}.ds-table-wrapper.ds-data-table.ds-table-middle .ds-table-thead th.ds-table-cell{padding:12px 16px}.ds-table-wrapper.ds-data-table.ds-table-large .ds-table-thead th.ds-table-cell{padding:16px}.ds-table-wrapper.ds-data-table .ds-table-tbody{background-color:var(--ds-color-bg-container)}.ds-table-wrapper.ds-data-table .ds-table-tbody tr.ds-table-row{border-bottom:1px solid var(--ds-color-split);transition:background-color .2s ease}.ds-table-wrapper.ds-data-table .ds-table-tbody tr.ds-table-row:hover{background-color:var(--ds-color-fill-tertiary)}.ds-table-wrapper.ds-data-table .ds-table-tbody tr.ds-table-row:last-child{border-bottom:0}.ds-table-wrapper.ds-data-table .ds-table-tbody tr.ds-table-row.ds-table-row-selected{background-color:var(--ds-color-primary-bg)}.ds-table-wrapper.ds-data-table .ds-table-tbody tr.ds-table-row td.ds-table-cell{text-align:left;background-color:inherit;color:var(--ds-color-text);background-color:transparent;line-height:20px}.ds-table-wrapper.ds-data-table.ds-table-small .ds-table-tbody tr.ds-table-row td.ds-table-cell{padding:8px 16px}.ds-table-wrapper.ds-data-table.ds-table-middle .ds-table-tbody tr.ds-table-row td.ds-table-cell{padding:12px 16px}.ds-table-wrapper.ds-data-table.ds-table-large .ds-table-tbody tr.ds-table-row td.ds-table-cell{padding:16px}.ds-table-wrapper.ds-data-table.ds-table-small .ds-table-selection-column,.ds-table-wrapper.ds-data-table.ds-table-middle .ds-table-selection-column,.ds-table-wrapper.ds-data-table.ds-table-large .ds-table-selection-column{padding-left:8px!important;padding-right:8px!important}.ds-table-wrapper.ds-data-table.ds-table-small .ds-table-selection-column.ds-table-cell,.ds-table-wrapper.ds-data-table.ds-table-middle .ds-table-selection-column.ds-table-cell,.ds-table-wrapper.ds-data-table.ds-table-large .ds-table-selection-column.ds-table-cell{padding-top:inherit;padding-bottom:inherit}.ds-table-wrapper.ds-data-table .ds-table-tbody tr.ds-table-row[data-selectable=true]{cursor:pointer}.ds-table-wrapper.ds-data-table .ds-table-tbody tr.ds-table-row[data-selectable=true]:hover{background-color:var(--ds-color-fill-secondary)!important}.ds-table-wrapper.ds-data-table .ds-table-tbody tr.ds-table-row.ds-table-row-selected[data-selectable=true]:hover{background-color:var(--ds-color-primary-bg-hover, rgba(24, 144, 255, .1))!important}.ds-table-wrapper.ds-data-table .ds-table-tbody tr td:has(.ds-empty){padding:1.5rem}.ds-table-wrapper.ds-data-table .ds-table-column-sort-icon{display:flex;flex-direction:column;align-items:center;width:16px;min-width:16px}.ds-table-wrapper.ds-data-table .ds-table-column-sort-icon svg{color:var(--ds-color-text-disabled);width:1rem;height:1rem}.ds-table-wrapper.ds-data-table .ds-table-column-sort-icon svg:hover{color:var(--ds-color-text-secondary)}.ds-table-wrapper.ds-data-table .ds-table-column-sort-icon.ds-table-column-sort-icon-asc svg,.ds-table-wrapper.ds-data-table .ds-table-column-sort-icon.ds-table-column-sort-icon-desc svg{color:var(--ds-color-primary)}.ds-table-wrapper.ds-data-table .ds-table-column-filter-icon{display:flex;align-items:center;justify-content:center;width:12px;min-width:12px}.ds-table-wrapper.ds-data-table .ds-table-column-filter-icon svg{color:var(--ds-color-text-disabled);width:10px;height:10px}.ds-table-wrapper.ds-data-table .ds-table-column-filter-icon svg:hover{color:var(--ds-color-text-secondary)}.ds-table-wrapper.ds-data-table .ds-table-column-filter-icon.ds-table-column-filter-icon-active svg{color:var(--ds-color-primary)}.ds-table-wrapper.ds-data-table .ds-table-column-sorters{display:flex;align-items:center;gap:4px;cursor:pointer}.ds-table-wrapper.ds-data-table .ds-table-column-title{flex:1}.ds-table-wrapper.ds-data-table .ds-table-column-icons{display:flex;align-items:center;gap:4px;min-width:16px;flex-shrink:0}.ds-table-wrapper.ds-data-table .ds-table-column-has-sorters{cursor:pointer}.ds-table-wrapper.ds-data-table .ds-table-column-has-sorters:hover{background-color:var(--ds-color-bg-container)}.ds-table-wrapper.ds-data-table.ds-table-zebra{border:none}.ds-table-wrapper.ds-data-table.ds-table-zebra .ds-table-pagination{background-color:transparent;border-top:none;border-radius:0}.ds-table-wrapper.ds-data-table.ds-table-zebra .ds-table-thead{background-color:transparent}.ds-table-wrapper.ds-data-table.ds-table-zebra .ds-table-thead th.ds-table-cell{background-color:transparent;border-bottom:none}.ds-table-wrapper.ds-data-table.ds-table-zebra .ds-table-thead th.ds-table-cell:before{display:none}.ds-table-wrapper.ds-data-table.ds-table-zebra .ds-table-thead th.ds-table-cell:hover{background-color:var(--ds-color-bg-container)}.ds-table-wrapper.ds-data-table.ds-table-zebra .ds-table-thead th.ds-table-cell:not(:last-child):after{display:block}.ds-table-wrapper.ds-data-table.ds-table-zebra .ds-table-tbody tr.ds-table-row{border-bottom:none}.ds-table-wrapper.ds-data-table.ds-table-zebra .ds-table-tbody tr.ds-table-row:nth-child(2n){background-color:var(--ds-color-fill-tertiary)}.ds-table-wrapper.ds-data-table.ds-table-zebra .ds-table-tbody tr.ds-table-row:nth-child(2n) td.ds-table-cell{background:transparent!important}.ds-table-wrapper.ds-data-table.ds-table-zebra .ds-table-tbody tr.ds-table-row:hover{background-color:var(--ds-color-fill-secondary)!important}.ds-table-wrapper.ds-data-table.ds-table-zebra .ds-table-tbody tr.ds-table-row:hover td.ds-table-cell{background-color:transparent!important}.ds-table-wrapper.ds-data-table.ds-table-zebra .ds-table-tbody tr.ds-table-row.ds-table-row-selected,.ds-table-wrapper.ds-data-table.ds-table-zebra .ds-table-tbody tr.ds-table-row.ds-table-row-selected td.ds-table-cell{background-color:var(--ds-color-primary-bg)!important}.ds-table-wrapper.ds-data-table .ds-table-pagination{padding:16px;border-top:1px solid var(--ds-color-split);background-color:transparent;display:flex;justify-content:flex-end;border-bottom-left-radius:6px;border-bottom-right-radius:6px}.ds-table-wrapper.ds-data-table .ds-table-pagination.ds-table-pagination-right{justify-content:flex-end}.ds-table-wrapper.ds-data-table .ds-table-pagination .ant-pagination{margin:0}.ds-table-wrapper.ds-data-table .ds-table-measure-row{height:0!important;font-size:0!important}.ds-table-wrapper.ds-data-table .ds-table-measure-row td{padding:0!important;border:0!important;height:0!important}.ds-table-wrapper.ds-data-table .text-left{text-align:left!important}.ds-table-wrapper.ds-data-table .text-center{text-align:center!important}.ds-table-wrapper.ds-data-table .text-right{text-align:right!important}.ds-table-wrapper.ds-data-table .ds-table-selection-column{width:32px!important;min-width:48px!important;text-align:center!important;padding-left:8px!important;padding-right:8px!important}.ds-table-wrapper.ds-data-table .ds-table-selection-column .ant-checkbox-wrapper{margin:0}.ds-table-wrapper.ds-data-table .ds-table-selection-column:after{display:none!important}.ds-table-wrapper.ds-data-table .ds-table-resize-handle{position:absolute;top:0;bottom:0;width:4px;background:transparent;cursor:col-resize;-webkit-user-select:none;user-select:none;touch-action:none;border-radius:1px;z-index:50;opacity:0;transition:opacity .2s ease,background-color .2s ease}.ds-table-wrapper.ds-data-table .ds-table-resize-handle.ds-table-resize-ltr{right:-2px}.ds-table-wrapper.ds-data-table .ds-table-resize-handle.ds-table-resize-rtl{left:-2px}.ds-table-wrapper.ds-data-table .ds-table-resize-handle:hover,.ds-table-wrapper.ds-data-table .ds-table-resize-handle.ds-table-resize-handle-active{opacity:1;background-color:var(--ds-color-primary);box-shadow:0 0 0 1px var(--ds-color-primary-bg)}.ds-table-wrapper.ds-data-table .ds-table-resize-handle.ds-table-resize-handle-active{background-color:var(--ds-color-primary);opacity:1;z-index:999}.ds-table-wrapper.ds-data-table .ds-table-thead th.ds-table-cell{z-index:1}.ds-table-wrapper.ds-data-table .ds-table-thead th.ds-table-cell:hover .ds-table-resize-handle{opacity:.6;background-color:var(--ds-color-text-tertiary)}.ds-table-wrapper.ds-data-table .ds-table-thead th.ds-table-cell:hover{box-sizing:border-box}.ds-table-wrapper.ds-data-table .ds-table-thead th.ds-table-cell:has(.ds-table-resize-handle-active){z-index:200}.ds-table-wrapper.ds-data-table .ds-table-thead th.ds-table-cell:has(.ds-table-resize-handle-active) .ds-table-resize-handle-active{z-index:201}.ds-table-wrapper.ds-data-table .ds-table-thead th.ds-table-cell.ds-table-cell-resizing{z-index:200!important}.ds-table-wrapper.ds-data-table .ds-table-thead th.ds-table-cell.ds-table-cell-resizing .ds-table-resize-handle{z-index:999!important}.ds-table-wrapper.ds-data-table .ds-table-resize-indicator{position:absolute;top:0;bottom:0;width:2px;background-color:var(--ds-color-primary);pointer-events:none;z-index:999;opacity:1;transition:transform .1s ease}.ds-table-wrapper.ds-data-table:has(.ds-table-resize-handle-active){-webkit-user-select:none;user-select:none}.ds-table-wrapper.ds-data-table:has(.ds-table-resize-handle-active) *{-webkit-user-select:none;user-select:none}}
1
+ @layer components{.ds-data-table-wrapper{--ds-data-table-border: 1px solid var(--ds-color-border-secondary, var(--ds-color-split));--ds-data-table-radius: 8px;--ds-data-table-inner-radius: calc(var(--ds-data-table-radius) - 1px);--ds-data-table-padding-block: 16px;--ds-data-table-padding-inline: 16px;clear:both;position:relative;display:flex;flex-direction:column;max-width:100%;max-height:100%;background:var(--ds-color-bg-container);border:1px solid transparent;border-radius:var(--ds-data-table-radius);color:var(--ds-color-text);font-size:var(--ds-font-size, 14px)}.ds-data-table-wrapper:after{position:absolute;inset:0;z-index:1;content:"";border-radius:inherit;box-shadow:inset 0 0 0 1px var(--ds-color-split);pointer-events:none}.ds-data-table-wrapper.ds-data-table-zebra:after{box-shadow:none}.ds-data-table-wrapper .ds-spin-nested-loading,.ds-data-table-wrapper .ds-spin-container{display:flex;flex:1 1 auto;flex-direction:column;min-height:0}.ds-data-table-wrapper .ds-data-table{display:flex;flex:1 1 auto;flex-direction:column;min-height:0;background:var(--ds-color-bg-container);border-radius:var(--ds-data-table-inner-radius);scrollbar-color:var(--ds-color-text-quaternary, var(--ds-color-text-placeholder)) var(--ds-color-split)}.ds-data-table-wrapper .ds-data-table-container{position:relative;display:flex;flex:1 1 auto;flex-direction:column;min-height:0;overflow:auto;border-start-start-radius:var(--ds-data-table-inner-radius);border-start-end-radius:var(--ds-data-table-inner-radius)}.ds-data-table-wrapper .ds-data-table-content{display:flex;flex:0 1 auto;min-height:0}.ds-data-table-wrapper table{width:100%;min-height:0;flex:0 1 auto;border-collapse:separate;border-spacing:0;border-radius:var(--ds-data-table-inner-radius) var(--ds-data-table-inner-radius) 0 0;text-align:start}.ds-data-table-wrapper .ds-data-table-cell,.ds-data-table-wrapper .ds-data-table-thead>tr>th,.ds-data-table-wrapper .ds-data-table-tbody>tr>th,.ds-data-table-wrapper .ds-data-table-tbody>tr>td,.ds-data-table-wrapper tfoot>tr>th,.ds-data-table-wrapper tfoot>tr>td{position:relative;padding:var(--ds-data-table-padding-block) var(--ds-data-table-padding-inline);overflow-wrap:break-word}.ds-data-table-wrapper .ds-data-table-thead{position:sticky;top:0;z-index:1;background:var(--ds-color-bg-container)}.ds-data-table-wrapper .ds-data-table-thead>tr:first-child>*:first-child{border-start-start-radius:var(--ds-data-table-inner-radius)}.ds-data-table-wrapper .ds-data-table-thead>tr:first-child>*:last-child{border-start-end-radius:var(--ds-data-table-inner-radius)}.ds-data-table-wrapper .ds-data-table-thead>tr>th,.ds-data-table-wrapper .ds-data-table-thead>tr>td{position:relative;color:var(--ds-color-text-secondary);font-weight:var(--ds-font-weight-medium, 500);text-align:start;background:var(--ds-color-fill-alter);border-bottom:var(--ds-data-table-border);line-height:20px;transition:background .2s ease}.ds-data-table-wrapper .ds-data-table-thead>tr>th[colspan]:not([colspan="1"]),.ds-data-table-wrapper .ds-data-table-thead>tr>td[colspan]:not([colspan="1"]){text-align:center}.ds-data-table-wrapper .ds-data-table-thead>tr>th:not(:last-child):not(.ds-data-table-selection-column):not([colspan]):before,.ds-data-table-wrapper .ds-data-table-thead>tr>td:not(:last-child):not(.ds-data-table-selection-column):not([colspan]):before{position:absolute;top:50%;inset-inline-end:0;width:1px;height:calc(100% - var(--ds-data-table-padding-block) * 2);background-color:var(--ds-color-border-secondary, var(--ds-color-split));transform:translateY(-50%);transition:background-color .2s ease;content:""}.ds-data-table-wrapper .ds-data-table-thead>tr:not(:last-child)>th[colspan]{border-bottom:0}.ds-data-table-wrapper .ds-data-table-tbody{background:var(--ds-color-bg-container)}.ds-data-table-wrapper .ds-data-table-tbody>tr>th,.ds-data-table-wrapper .ds-data-table-tbody>tr>td{border-bottom:var(--ds-data-table-border);transition:background .2s ease}.ds-data-table-wrapper .ds-data-table-tbody>tr>th{position:relative;color:var(--ds-color-text-secondary);font-weight:var(--ds-font-weight-medium, 500);text-align:start;background:var(--ds-color-fill-alter)}.ds-data-table-wrapper .ds-data-table-tbody .ds-data-table-row{transition:background-color .2s ease}.ds-data-table-wrapper .ds-data-table-tbody .ds-data-table-row:hover>.ds-data-table-cell{background:var(--ds-color-fill-alter)}.ds-data-table-wrapper .ds-data-table-tbody .ds-data-table-row:last-child>.ds-data-table-cell{border-bottom-color:transparent}.ds-data-table-wrapper .ds-data-table-tbody .ds-data-table-row:last-child>.ds-data-table-cell:first-child{border-bottom-left-radius:var(--ds-data-table-inner-radius)}.ds-data-table-wrapper .ds-data-table-tbody .ds-data-table-row:last-child>.ds-data-table-cell:last-child{border-bottom-right-radius:var(--ds-data-table-inner-radius)}.ds-data-table-wrapper .ds-data-table-tbody .ds-data-table-row.ds-data-table-row-selected>.ds-data-table-cell{background:var(--ds-color-primary-bg)}.ds-data-table-wrapper .ds-data-table-tbody .ds-data-table-row.ds-data-table-row-selected:hover>.ds-data-table-cell{background:var(--ds-color-primary-bg-hover, var(--ds-color-primary-bg))}.ds-data-table-wrapper .ds-data-table-tbody .ds-data-table-row[data-selectable=true]{cursor:pointer}.ds-data-table-wrapper .ds-data-table-cell{color:var(--ds-color-text);line-height:20px;text-align:start;background:transparent}.ds-data-table-wrapper.ds-data-table-middle{font-size:var(--ds-font-size, 14px);--ds-data-table-padding-block: 12px;--ds-data-table-padding-inline: 12px}.ds-data-table-wrapper.ds-data-table-small{font-size:var(--ds-font-size, 14px);--ds-data-table-padding-block: 8px;--ds-data-table-padding-inline: 8px}.ds-data-table-wrapper .ds-data-table-selection-column{min-width:32px;padding-inline:8px;text-align:center}.ds-data-table-wrapper .ds-data-table-selection-column .ant-checkbox-wrapper,.ds-data-table-wrapper .ds-data-table-selection-column .ant-radio-wrapper{margin-inline-end:0}.ds-data-table-wrapper .ds-data-table-selection-column:before,.ds-data-table-wrapper .ds-data-table-selection-column:after{background-color:transparent}.ds-data-table-wrapper .ds-data-table-tbody>.ds-data-table-placeholder{color:var(--ds-color-text-disabled);text-align:center}.ds-data-table-wrapper .ds-data-table-tbody>.ds-data-table-placeholder:hover>th,.ds-data-table-wrapper .ds-data-table-tbody>.ds-data-table-placeholder:hover>td{background:var(--ds-color-bg-container)}.ds-data-table-wrapper .ds-data-table-tbody>.ds-data-table-placeholder>td{padding:1.5rem;border-bottom:0;border-bottom-right-radius:var(--ds-data-table-inner-radius);border-bottom-left-radius:var(--ds-data-table-inner-radius)}.ds-data-table-wrapper .ds-data-table-measure-row{height:0!important;font-size:0!important}.ds-data-table-wrapper .ds-data-table-measure-cell{height:0!important;padding-block:0!important;border-block:0!important}.ds-data-table-wrapper .ds-data-table-measure-cell-content{height:0;overflow:hidden;pointer-events:none}.ds-data-table-wrapper .ds-data-table-column-has-sorters{cursor:pointer;outline:none;transition:all .3s ease,left 0s}.ds-data-table-wrapper .ds-data-table-column-has-sorters:hover{background:var(--ds-color-fill-content)}.ds-data-table-wrapper .ds-data-table-column-has-sorters:hover:before{background-color:transparent}.ds-data-table-wrapper .ds-data-table-column-has-sorters:focus-visible{color:var(--ds-color-primary)}.ds-data-table-wrapper .ds-data-table-column-title{position:relative;z-index:1;flex:1;min-width:0}.ds-data-table-wrapper .ds-data-table-column-sorters{position:relative;display:flex;flex:auto;align-items:center;justify-content:space-between}.ds-data-table-wrapper .ds-data-table-column-sorters:after{position:absolute;inset:0;width:100%;height:100%;content:""}.ds-data-table-wrapper .ds-data-table-column-icons{display:flex;flex-shrink:0;align-items:center;gap:4px;min-width:16px;margin-inline-start:4px;color:var(--ds-color-icon, var(--ds-color-text-disabled));transition:color .3s ease}.ds-data-table-wrapper .ds-data-table-column-sorters:hover .ds-data-table-column-icons{color:var(--ds-color-icon-hover, var(--ds-color-text-secondary))}.ds-data-table-wrapper .ds-data-table-column-sort-icon{display:flex;flex-direction:column;align-items:center;width:16px;min-width:16px;color:var(--ds-color-text-disabled);font-size:0}.ds-data-table-wrapper .ds-data-table-column-sort-icon svg{width:1rem;height:1rem;color:currentColor;font-size:1rem}.ds-data-table-wrapper .ds-data-table-column-sort-icon svg:hover{color:var(--ds-color-text-secondary)}.ds-data-table-wrapper .ds-data-table-column-sort-icon.ds-data-table-column-sort-icon-none svg{font-size:.75rem}.ds-data-table-wrapper .ds-data-table-column-sort-icon.ds-data-table-column-sort-icon-none>svg:first-child{margin-bottom:-2px}.ds-data-table-wrapper .ds-data-table-column-sort-icon.ds-data-table-column-sort-icon-none>svg:last-child{margin-top:-2px}.ds-data-table-wrapper .ds-data-table-column-sort-icon.ds-data-table-column-sort-icon-asc,.ds-data-table-wrapper .ds-data-table-column-sort-icon.ds-data-table-column-sort-icon-desc{color:var(--ds-color-primary)}.ds-data-table-wrapper .ds-data-table-column-filter-icon{display:flex;flex-direction:column;align-items:center;justify-content:center;width:12px;min-width:12px;color:var(--ds-color-text-disabled)}.ds-data-table-wrapper .ds-data-table-column-filter-icon svg{width:10px;height:10px;color:currentColor;font-size:.875rem}.ds-data-table-wrapper .ds-data-table-column-filter-icon:hover{color:var(--ds-color-text-secondary)}.ds-data-table-wrapper .ds-data-table-column-filter-icon.ds-data-table-column-filter-icon-active{color:var(--ds-color-primary)}.ds-data-table-wrapper .ds-data-table-pagination{display:flex;justify-content:flex-end;padding:16px;background:transparent;border-top:var(--ds-data-table-border);border-bottom-right-radius:var(--ds-data-table-radius);border-bottom-left-radius:var(--ds-data-table-radius)}.ds-data-table-wrapper .ds-data-table-pagination.ds-data-table-pagination-right{justify-content:flex-end}.ds-data-table-wrapper .ds-data-table-pagination .ant-pagination{margin:0}.ds-data-table-wrapper.ds-data-table-has-pagination .ds-data-table-container,.ds-data-table-wrapper.ds-data-table-has-pagination .ds-data-table,.ds-data-table-wrapper.ds-data-table-has-pagination table{border-bottom-right-radius:0;border-bottom-left-radius:0}.ds-data-table-wrapper.ds-data-table-has-pagination .ds-data-table-tbody .ds-data-table-row:last-child>.ds-data-table-cell{border-bottom-color:transparent}.ds-data-table-wrapper.ds-data-table-has-pagination .ds-data-table-tbody .ds-data-table-row:last-child>.ds-data-table-cell:first-child{border-bottom-left-radius:0}.ds-data-table-wrapper.ds-data-table-has-pagination .ds-data-table-tbody .ds-data-table-row:last-child>.ds-data-table-cell:last-child{border-bottom-right-radius:0}.ds-data-table-wrapper.ds-data-table-scroll-vertical .ds-data-table,.ds-data-table-wrapper.ds-data-table-scroll-vertical .ds-data-table-container,.ds-data-table-wrapper.ds-data-table-scroll-vertical table,.ds-data-table-wrapper.ds-data-table-scroll-vertical .ds-data-table-thead>tr:first-child>*:last-child{border-top-right-radius:0}.ds-data-table-wrapper.ds-data-table-ping-left .ds-data-table-cell-fix-left-first:after,.ds-data-table-wrapper.ds-data-table-ping-left .ds-data-table-cell-fix-left-last:after{box-shadow:inset 10px 0 8px -8px var(--ds-color-table-fixed-column-shadow)}.ds-data-table-wrapper.ds-data-table-ping-right .ds-data-table-cell-fix-right-first:after,.ds-data-table-wrapper.ds-data-table-ping-right .ds-data-table-cell-fix-right-last:after{box-shadow:inset -10px 0 8px -8px var(--ds-color-table-fixed-column-shadow)}.ds-data-table-wrapper.ds-data-table-ping-right:not(.ds-data-table-has-fix-right) .ds-data-table-container:after{box-shadow:inset -10px 0 8px -8px var(--ds-color-table-fixed-column-shadow)}.ds-data-table-wrapper.ds-data-table-ping-left:not(.ds-data-table-has-fix-left) .ds-data-table-container:before{box-shadow:inset 10px 0 8px -8px var(--ds-color-table-fixed-column-shadow)}.ds-data-table-wrapper .text-left{text-align:left!important}.ds-data-table-wrapper .text-center{text-align:center!important}.ds-data-table-wrapper .text-right{text-align:right!important}.ds-data-table-wrapper .ds-data-table-resize-handle{position:absolute;top:0;bottom:0;z-index:50;width:12px;background:transparent;cursor:col-resize;opacity:0;touch-action:none;-webkit-user-select:none;user-select:none;transition:opacity .2s ease,background-color .2s ease}.ds-data-table-wrapper .ds-data-table-resize-handle.ds-data-table-resize-ltr{right:-6px}.ds-data-table-wrapper .ds-data-table-resize-handle.ds-data-table-resize-rtl{left:-6px}.ds-data-table-wrapper .ds-data-table-resize-handle:before{position:absolute;top:0;bottom:0;left:50%;width:2px;background:transparent;border-radius:1px;transform:translate(-50%);content:""}.ds-data-table-wrapper .ds-data-table-resize-handle:hover,.ds-data-table-wrapper .ds-data-table-resize-handle.ds-data-table-resize-handle-active{opacity:1}.ds-data-table-wrapper .ds-data-table-resize-handle:hover:before,.ds-data-table-wrapper .ds-data-table-resize-handle.ds-data-table-resize-handle-active:before{background-color:var(--ds-color-primary);box-shadow:0 0 0 1px var(--ds-color-primary-bg)}.ds-data-table-wrapper .ds-data-table-resize-handle.ds-data-table-resize-handle-active{z-index:999}.ds-data-table-wrapper .ds-data-table-thead th.ds-data-table-cell{z-index:1}.ds-data-table-wrapper .ds-data-table-thead th.ds-data-table-cell:hover .ds-data-table-resize-handle{opacity:.6}.ds-data-table-wrapper .ds-data-table-thead th.ds-data-table-cell:hover .ds-data-table-resize-handle:before{background-color:var(--ds-color-text-tertiary)}.ds-data-table-wrapper .ds-data-table-thead th.ds-data-table-cell:has(.ds-data-table-resize-handle-active),.ds-data-table-wrapper .ds-data-table-thead th.ds-data-table-cell.ds-data-table-cell-resizing{z-index:200}.ds-data-table-wrapper .ds-data-table-thead th.ds-data-table-cell:has(.ds-data-table-resize-handle-active) .ds-data-table-resize-handle,.ds-data-table-wrapper .ds-data-table-thead th.ds-data-table-cell.ds-data-table-cell-resizing .ds-data-table-resize-handle{z-index:999}.ds-data-table-wrapper .ds-data-table-resize-indicator{position:absolute;top:0;bottom:0;z-index:999;width:2px;background-color:var(--ds-color-primary);opacity:1;pointer-events:none;transition:transform .1s ease}.ds-data-table-wrapper:has(.ds-data-table-resize-handle-active){-webkit-user-select:none;user-select:none}.ds-data-table-wrapper:has(.ds-data-table-resize-handle-active) *{-webkit-user-select:none;user-select:none}.ds-data-table-wrapper.ds-data-table-resizing,.ds-data-table-wrapper.ds-data-table-resizing *{cursor:col-resize;-webkit-user-select:none;user-select:none}}
@@ -63,7 +63,7 @@ export interface DataTableProps<RecordType extends Record<string, any> = Record<
63
63
  rowKey?: RowKey | ((record: RecordType, index?: number) => RowKey);
64
64
  rowSelection?: DataTableRowSelection<RecordType>;
65
65
  pagination?: false | DataTablePaginationConfig;
66
- variant?: "default" | "zebra";
66
+ variant?: "default" | "zebra" | "minimal";
67
67
  emptyDescription?: React.ReactNode;
68
68
  loading?: boolean | SpinProps;
69
69
  enableSorting?: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/components/data-table/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/components/data-table/types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ @layer components{.ds-data-table-wrapper.ds-data-table-minimal{--ds-data-table-minimal-cell-padding-block: 6px;--ds-data-table-minimal-cell-padding-inline: 8px;--ds-data-table-minimal-header-padding-block-end: 8px;--ds-data-table-minimal-row-height: 28px;margin-inline:calc(-1 * var(--ds-data-table-minimal-cell-padding-inline));background:transparent;border:none;border-radius:0}.ds-data-table-wrapper.ds-data-table-minimal:after{box-shadow:none}.ds-data-table-wrapper.ds-data-table-minimal .ds-data-table,.ds-data-table-wrapper.ds-data-table-minimal .ds-data-table-container,.ds-data-table-wrapper.ds-data-table-minimal .ds-data-table-content,.ds-data-table-wrapper.ds-data-table-minimal table,.ds-data-table-wrapper.ds-data-table-minimal .ds-data-table-thead,.ds-data-table-wrapper.ds-data-table-minimal .ds-data-table-tbody{background:transparent;border-radius:0}.ds-data-table-wrapper.ds-data-table-minimal table{border-collapse:separate;border-spacing:0 1px}.ds-data-table-wrapper.ds-data-table-minimal .ds-data-table-tbody:before{display:block;height:2px;content:""}.ds-data-table-wrapper.ds-data-table-minimal.ds-data-table-middle{--ds-data-table-minimal-cell-padding-block: 4px;--ds-data-table-minimal-cell-padding-inline: 8px;--ds-data-table-minimal-header-padding-block-end: 6px;--ds-data-table-minimal-row-height: 24px}.ds-data-table-wrapper.ds-data-table-minimal.ds-data-table-small{--ds-data-table-minimal-cell-padding-block: 2px;--ds-data-table-minimal-cell-padding-inline: 8px;--ds-data-table-minimal-header-padding-block-end: 6px;--ds-data-table-minimal-row-height: 20px}.ds-data-table-wrapper.ds-data-table-minimal .ds-data-table-thead>tr>th,.ds-data-table-wrapper.ds-data-table-minimal .ds-data-table-thead>tr>td{padding:0 var(--ds-data-table-minimal-cell-padding-inline) var(--ds-data-table-minimal-header-padding-block-end);color:var(--ds-color-text-tertiary);font-size:12px;font-weight:var(--ds-font-weight-medium, 500);line-height:16px;letter-spacing:.02px;text-transform:uppercase;background:transparent;position:relative}.ds-data-table-wrapper.ds-data-table-minimal .ds-data-table-thead>tr>th:after,.ds-data-table-wrapper.ds-data-table-minimal .ds-data-table-thead>tr>td:after{content:"";position:absolute;bottom:0;left:0;right:0;height:1px;background-color:var(--ds-color-split)}.ds-data-table-wrapper.ds-data-table-minimal .ds-data-table-thead>tr>th:first-child:after,.ds-data-table-wrapper.ds-data-table-minimal .ds-data-table-thead>tr>td:first-child:after{left:var(--ds-data-table-minimal-cell-padding-inline)}.ds-data-table-wrapper.ds-data-table-minimal .ds-data-table-thead>tr>th:last-child:after,.ds-data-table-wrapper.ds-data-table-minimal .ds-data-table-thead>tr>td:last-child:after{right:var(--ds-data-table-minimal-cell-padding-inline)}.ds-data-table-wrapper.ds-data-table-minimal .ds-data-table-thead>tr>th:not(:last-child):not(.ds-data-table-selection-column):not([colspan]):before,.ds-data-table-wrapper.ds-data-table-minimal .ds-data-table-thead>tr>td:not(:last-child):not(.ds-data-table-selection-column):not([colspan]):before{position:absolute;top:0;inset-inline-end:0;display:block;width:1px;height:calc(100% - var(--ds-data-table-minimal-header-padding-block-end));background-color:var(--ds-color-split);transform:none;content:""}.ds-data-table-wrapper.ds-data-table-minimal .ds-data-table-thead>tr>th:hover,.ds-data-table-wrapper.ds-data-table-minimal .ds-data-table-thead>tr>td:hover{background:transparent}.ds-data-table-wrapper.ds-data-table-minimal .ds-data-table-tbody>tr>th,.ds-data-table-wrapper.ds-data-table-minimal .ds-data-table-tbody>tr>td,.ds-data-table-wrapper.ds-data-table-minimal .ds-data-table-cell{padding:var(--ds-data-table-minimal-cell-padding-block) var(--ds-data-table-minimal-cell-padding-inline);border-bottom:0;background:transparent}.ds-data-table-wrapper.ds-data-table-minimal .ds-data-table-cell{height:var(--ds-data-table-minimal-row-height)}.ds-data-table-wrapper.ds-data-table-minimal .ds-data-table-tbody .ds-data-table-row:hover>.ds-data-table-cell{background:var(--ds-color-fill-tertiary)}.ds-data-table-wrapper.ds-data-table-minimal .ds-data-table-tbody .ds-data-table-row:hover>.ds-data-table-cell:first-child{border-top-left-radius:var(--ds-border-radius);border-bottom-left-radius:var(--ds-border-radius)}.ds-data-table-wrapper.ds-data-table-minimal .ds-data-table-tbody .ds-data-table-row:hover>.ds-data-table-cell:last-child{border-top-right-radius:var(--ds-border-radius);border-bottom-right-radius:var(--ds-border-radius)}.ds-data-table-wrapper.ds-data-table-minimal .ds-data-table-tbody .ds-data-table-row.ds-data-table-row-selected>.ds-data-table-cell,.ds-data-table-wrapper.ds-data-table-minimal .ds-data-table-tbody .ds-data-table-row.ds-data-table-row-selected:hover>.ds-data-table-cell{background:var(--ds-color-primary-bg)}.ds-data-table-wrapper.ds-data-table-minimal .ds-data-table-tbody .ds-data-table-row.ds-data-table-row-selected>.ds-data-table-cell:first-child,.ds-data-table-wrapper.ds-data-table-minimal .ds-data-table-tbody .ds-data-table-row.ds-data-table-row-selected:hover>.ds-data-table-cell:first-child{border-top-left-radius:var(--ds-border-radius);border-bottom-left-radius:var(--ds-border-radius)}.ds-data-table-wrapper.ds-data-table-minimal .ds-data-table-tbody .ds-data-table-row.ds-data-table-row-selected>.ds-data-table-cell:last-child,.ds-data-table-wrapper.ds-data-table-minimal .ds-data-table-tbody .ds-data-table-row.ds-data-table-row-selected:hover>.ds-data-table-cell:last-child{border-top-right-radius:var(--ds-border-radius);border-bottom-right-radius:var(--ds-border-radius)}.ds-data-table-wrapper.ds-data-table-minimal .ds-data-table-thead>tr>.ds-data-table-selection-column{padding-bottom:var(--ds-data-table-minimal-header-padding-block-end)}.ds-data-table-wrapper.ds-data-table-minimal .ds-data-table-placeholder>td{padding:16px 4px;border-bottom:0;border-radius:0}.ds-data-table-wrapper.ds-data-table-minimal .ds-data-table-pagination{padding:8px 0 0;background:transparent;border-top:0;border-radius:0}}
@@ -0,0 +1 @@
1
+ @layer components{.ds-data-table-wrapper.ds-data-table-zebra{border:none}.ds-data-table-wrapper.ds-data-table-zebra .ds-data-table-pagination{background:transparent;border-top:none;border-radius:0}.ds-data-table-wrapper.ds-data-table-zebra .ds-data-table-thead>tr>th,.ds-data-table-wrapper.ds-data-table-zebra .ds-data-table-thead>tr>td{background:transparent;border-bottom:none}.ds-data-table-wrapper.ds-data-table-zebra .ds-data-table-thead>tr>th:not(:last-child):before,.ds-data-table-wrapper.ds-data-table-zebra .ds-data-table-thead>tr>td:not(:last-child):before{display:block}.ds-data-table-wrapper.ds-data-table-zebra .ds-data-table-thead>tr>th:hover,.ds-data-table-wrapper.ds-data-table-zebra .ds-data-table-thead>tr>td:hover{background:var(--ds-color-bg-container)}.ds-data-table-wrapper.ds-data-table-zebra .ds-data-table-tbody .ds-data-table-row>.ds-data-table-cell{border-bottom:none}.ds-data-table-wrapper.ds-data-table-zebra .ds-data-table-tbody .ds-data-table-row:nth-child(2n)>.ds-data-table-cell{background:var(--ds-color-fill-tertiary)}.ds-data-table-wrapper.ds-data-table-zebra .ds-data-table-tbody .ds-data-table-row:nth-child(2n)>.ds-data-table-cell:first-child{border-top-left-radius:var(--ds-border-radius);border-bottom-left-radius:var(--ds-border-radius)}.ds-data-table-wrapper.ds-data-table-zebra .ds-data-table-tbody .ds-data-table-row:nth-child(2n)>.ds-data-table-cell:last-child{border-top-right-radius:var(--ds-border-radius);border-bottom-right-radius:var(--ds-border-radius)}.ds-data-table-wrapper.ds-data-table-zebra .ds-data-table-tbody .ds-data-table-row:hover>.ds-data-table-cell{background:var(--ds-color-fill-secondary)}.ds-data-table-wrapper.ds-data-table-zebra .ds-data-table-tbody .ds-data-table-row:hover>.ds-data-table-cell:first-child{border-top-left-radius:var(--ds-border-radius);border-bottom-left-radius:var(--ds-border-radius)}.ds-data-table-wrapper.ds-data-table-zebra .ds-data-table-tbody .ds-data-table-row:hover>.ds-data-table-cell:last-child{border-top-right-radius:var(--ds-border-radius);border-bottom-right-radius:var(--ds-border-radius)}.ds-data-table-wrapper.ds-data-table-zebra .ds-data-table-tbody .ds-data-table-row.ds-data-table-row-selected>.ds-data-table-cell{background:var(--ds-color-primary-bg)}.ds-data-table-wrapper.ds-data-table-zebra .ds-data-table-tbody .ds-data-table-row>td.ds-data-table-column-sort{background-color:unset}}
@@ -2,14 +2,14 @@
2
2
  import { jsx as e, jsxs as n } from "react/jsx-runtime";
3
3
  import { Dialog as s } from "@base-ui/react/dialog";
4
4
  import { useStableCallback as D } from "@base-ui/utils/useStableCallback";
5
- import { XIcon as Le } from "@bioturing/assets";
6
- import { getConfirmLocale as be } from "antd/es/modal/locale";
5
+ import { XIcon as be } from "@bioturing/assets";
6
+ import { getConfirmLocale as Le } from "antd/es/modal/locale";
7
7
  import { useLocale as Te } from "antd/es/locale";
8
- import { useState as Ie, useRef as ye, useMemo as Se, useCallback as we, useEffect as xe } from "react";
8
+ import { useState as ye, useRef as Ie, useMemo as Se, useCallback as we, useEffect as xe } from "react";
9
9
  import { Button as z } from "../button/component.js";
10
10
  import { useControlledState as Fe } from "../hooks/useControlledState.js";
11
- import { Stack as L } from "../stack/index.js";
12
- import { DIALOG_SIZE_WIDTHS as b, DIALOG_CLOSE_REASON_ESCAPE as Ge, DIALOG_DEFAULT_CANCEL_TEXT as ke, DIALOG_DEFAULT_OK_TEXT as Re, DIALOG_DEFAULT_SIZE as Ue, DIALOG_DEFAULT_BODY_SCROLLABLE as ze, DIALOG_DEFAULT_CENTERED as He, DIALOG_DEFAULT_OPEN as $e } from "./constants.js";
11
+ import { Stack as b } from "../stack/index.js";
12
+ import { DIALOG_SIZE_WIDTHS as L, DIALOG_CLOSE_REASON_ESCAPE as Ge, DIALOG_DEFAULT_CANCEL_TEXT as ke, DIALOG_DEFAULT_OK_TEXT as Re, DIALOG_DEFAULT_SIZE as Ue, DIALOG_DEFAULT_BODY_SCROLLABLE as ze, DIALOG_DEFAULT_CENTERED as He, DIALOG_DEFAULT_OPEN as $e } from "./constants.js";
13
13
  import { useCls as Be } from "../utils/antdUtils.js";
14
14
  import { useTheme as Me } from "../theme-provider/context/themeStore.js";
15
15
  import { clsx as d } from "../utils/cn.js";
@@ -17,7 +17,7 @@ import { Truncate as We } from "../truncate/component.js";
17
17
  import { IconButton as Xe } from "../icon-button/component.js";
18
18
  import { Spin as je } from "../spin/component.js";
19
19
  const Ke = parseInt(
20
- b.medium,
20
+ L.medium,
21
21
  10
22
22
  );
23
23
  function Ve(l) {
@@ -27,10 +27,10 @@ function Ve(l) {
27
27
  function Ze(l, u) {
28
28
  if (u)
29
29
  return u;
30
- const f = parseInt(b[l], 10);
30
+ const f = parseInt(L[l], 10);
31
31
  return !Number.isNaN(f) && f <= Ke ? "elevated" : "container";
32
32
  }
33
- const fr = ({
33
+ const mo = ({
34
34
  children: l,
35
35
  open: u,
36
36
  defaultOpen: f = $e,
@@ -43,13 +43,13 @@ const fr = ({
43
43
  loading: m = !1,
44
44
  confirmLoading: c = !1,
45
45
  hideOkButton: T = !1,
46
- hideCancelButton: I = !1,
46
+ hideCancelButton: y = !1,
47
47
  okText: W = Re,
48
48
  cancelText: X = ke,
49
49
  okType: j = "primary",
50
50
  contentPadding: K,
51
51
  afterTitle: h,
52
- beforeCloseButton: y,
52
+ beforeCloseButton: I,
53
53
  afterCloseButton: S,
54
54
  defaultFixedHeaderFooter: V = !1,
55
55
  centered: Z = He,
@@ -62,8 +62,8 @@ const fr = ({
62
62
  keyboard: ee = !0,
63
63
  width: C,
64
64
  style: w,
65
- destroyOnHidden: re = !1,
66
- afterOpenChange: oe,
65
+ destroyOnHidden: oe = !1,
66
+ afterOpenChange: re,
67
67
  className: le,
68
68
  rootClassName: se,
69
69
  headerClassName: ae,
@@ -72,40 +72,40 @@ const fr = ({
72
72
  okButtonProps: O,
73
73
  cancelButtonProps: ie
74
74
  }) => {
75
- const r = Be(), { className: ce } = Me(), [de, A] = Fe(
75
+ const o = Be(), { className: ce } = Me(), [de, A] = Fe(
76
76
  u,
77
77
  void 0,
78
78
  f
79
- ), [x] = Te("Modal", be()), [ue, fe] = Ie(!1), a = ye(null), p = M ?? (Y === "default" ? Ue : "xsmall"), F = p === "fullscreen", E = typeof g < "u", me = !E && !(T && I), G = P && v !== !1, k = Ze(p, q), pe = v === void 0 ? /* @__PURE__ */ e(Le, { size: 16, weight: "bold" }) : v, N = Ve(K), ge = W || x?.okText, _ = X || x?.cancelText, he = typeof _ == "string" ? _ : "Close", R = typeof C == "number" ? `${C}px` : C ?? b[p], ve = Se(
79
+ ), [x] = Te("Modal", Le()), [ue, fe] = ye(!1), a = Ie(null), p = M ?? (Y === "default" ? Ue : "xsmall"), F = p === "fullscreen", E = typeof g < "u", me = !E && !(T && y), G = P && v !== !1, k = Ze(p, q), pe = v === void 0 ? /* @__PURE__ */ e(be, { size: 16, weight: "bold" }) : v, N = Ve(K), ge = W || x?.okText, _ = X || x?.cancelText, he = typeof _ == "string" ? _ : "Close", R = typeof C == "number" ? `${C}px` : C ?? L[p], ve = Se(
80
80
  () => ({
81
81
  "--ds-dialog-width": R,
82
82
  "--ds-dialog-bg": `var(--ds-color-bg-${k})`,
83
83
  ...N ? {
84
- "--ds-dialog-content-padding": N
84
+ "--ds-dialog-body-content-padding": N
85
85
  } : {},
86
86
  ...w
87
87
  }),
88
88
  [k, N, R, w]
89
- ), Ce = we((o) => {
90
- if (a.current && (a.current.disconnect(), a.current = null), !o)
89
+ ), Ce = we((r) => {
90
+ if (a.current && (a.current.disconnect(), a.current = null), !r)
91
91
  return;
92
92
  const t = () => {
93
- fe(o.scrollHeight > o.clientHeight);
93
+ fe(r.scrollHeight > r.clientHeight);
94
94
  }, U = new ResizeObserver(() => {
95
95
  t();
96
96
  });
97
- U.observe(o), a.current = U, t();
97
+ U.observe(r), a.current = U, t();
98
98
  }, []);
99
99
  xe(() => () => {
100
100
  a.current && (a.current.disconnect(), a.current = null);
101
101
  }, []);
102
- const Oe = D((o) => {
103
- c || (A(!1), H?.(o), $?.(o));
104
- }), Ae = D((o) => {
105
- c || (A(!1), B?.(o));
102
+ const Oe = D((r) => {
103
+ c || (A(!1), H?.(r), $?.(r));
104
+ }), Ae = D((r) => {
105
+ c || (A(!1), B?.(r));
106
106
  }), Ee = D(
107
- (o, t) => {
108
- if (o) {
107
+ (r, t) => {
108
+ if (r) {
109
109
  A(!0);
110
110
  return;
111
111
  }
@@ -119,24 +119,24 @@ const fr = ({
119
119
  }
120
120
  Oe(t.event);
121
121
  }
122
- ), Ne = i || h || y || S || G, _e = E ? g !== null : me, De = V || ue || F;
122
+ ), Ne = i || h || I || S || G, _e = E ? g !== null : me, De = V || ue || F;
123
123
  return /* @__PURE__ */ e(
124
124
  s.Root,
125
125
  {
126
126
  open: !!de,
127
127
  onOpenChange: Ee,
128
- onOpenChangeComplete: oe,
128
+ onOpenChangeComplete: re,
129
129
  modal: !0,
130
130
  disablePointerDismissal: !Q,
131
- children: /* @__PURE__ */ n(s.Portal, { keepMounted: !re, children: [
132
- /* @__PURE__ */ e(s.Backdrop, { className: r("dialog-mask") }),
131
+ children: /* @__PURE__ */ n(s.Portal, { keepMounted: !oe, children: [
132
+ /* @__PURE__ */ e(s.Backdrop, { className: o("dialog-mask") }),
133
133
  /* @__PURE__ */ e(
134
134
  s.Viewport,
135
135
  {
136
136
  className: d(
137
137
  ce,
138
138
  se,
139
- r(
139
+ o(
140
140
  "dialog-wrap",
141
141
  Z ? "dialog-centered" : "dialog-top-aligned",
142
142
  F && "dialog-wrap-fullscreen",
@@ -147,7 +147,7 @@ const fr = ({
147
147
  s.Popup,
148
148
  {
149
149
  className: d(
150
- r(
150
+ o(
151
151
  "dialog",
152
152
  `dialog-size-${p}`,
153
153
  De && "dialog-fixed",
@@ -158,25 +158,25 @@ const fr = ({
158
158
  ),
159
159
  style: ve,
160
160
  "aria-busy": m || void 0,
161
- children: /* @__PURE__ */ n("div", { className: r("dialog-content"), children: [
162
- Ne && /* @__PURE__ */ n("div", { className: d(r("dialog-header"), ae), children: [
161
+ children: /* @__PURE__ */ n("div", { className: o("dialog-content"), children: [
162
+ Ne && /* @__PURE__ */ n("div", { className: d(o("dialog-header"), ae), children: [
163
163
  /* @__PURE__ */ n(
164
- L,
164
+ b,
165
165
  {
166
166
  align: "center",
167
167
  gap: 8,
168
- className: r("dialog-title-row"),
168
+ className: o("dialog-title-row"),
169
169
  children: [
170
- /* @__PURE__ */ e(L.Child, { grow: !0, children: i ? /* @__PURE__ */ e(s.Title, { className: r("dialog-title"), children: typeof i == "string" ? /* @__PURE__ */ e(We, { children: i }) : i }) : /* @__PURE__ */ e("div", {}) }),
171
- /* @__PURE__ */ n(L.Child, { stack: !0, hug: !0, align: "center", gap: 8, children: [
172
- y,
170
+ /* @__PURE__ */ e(b.Child, { grow: !0, children: i ? /* @__PURE__ */ e(s.Title, { className: o("dialog-title"), children: typeof i == "string" ? /* @__PURE__ */ e(We, { children: i }) : i }) : /* @__PURE__ */ e("div", {}) }),
171
+ /* @__PURE__ */ n(b.Child, { stack: !0, hug: !0, align: "center", gap: 8, children: [
172
+ I,
173
173
  G && /* @__PURE__ */ e(
174
174
  s.Close,
175
175
  {
176
176
  render: /* @__PURE__ */ e(
177
177
  Xe,
178
178
  {
179
- className: r("dialog-close"),
179
+ className: o("dialog-close"),
180
180
  "aria-label": he,
181
181
  children: pe
182
182
  }
@@ -188,21 +188,21 @@ const fr = ({
188
188
  ]
189
189
  }
190
190
  ),
191
- h ? /* @__PURE__ */ e("div", { className: r("dialog-header-after-title"), children: h }) : null
191
+ h ? /* @__PURE__ */ e("div", { className: o("dialog-header-after-title"), children: h }) : null
192
192
  ] }),
193
- /* @__PURE__ */ n("div", { className: r("dialog-body-wrapper"), children: [
193
+ /* @__PURE__ */ n("div", { className: o("dialog-body-wrapper"), children: [
194
194
  /* @__PURE__ */ e(
195
195
  "div",
196
196
  {
197
197
  ref: Ce,
198
- className: d(r("dialog-body"), te),
198
+ className: d(o("dialog-body"), te),
199
199
  children: l
200
200
  }
201
201
  ),
202
- m ? /* @__PURE__ */ e("div", { className: r("dialog-loading-overlay"), children: /* @__PURE__ */ e(je, {}) }) : null
202
+ m ? /* @__PURE__ */ e("div", { className: o("dialog-loading-overlay"), children: /* @__PURE__ */ e(je, {}) }) : null
203
203
  ] }),
204
- _e && /* @__PURE__ */ e("div", { className: d(r("dialog-footer"), ne), children: E ? g : /* @__PURE__ */ n("div", { className: r("dialog-footer-actions"), children: [
205
- !I && /* @__PURE__ */ e(
204
+ _e && /* @__PURE__ */ e("div", { className: d(o("dialog-footer"), ne), children: E ? g : /* @__PURE__ */ n("div", { className: o("dialog-footer-actions"), children: [
205
+ !y && /* @__PURE__ */ e(
206
206
  s.Close,
207
207
  {
208
208
  render: /* @__PURE__ */ e(z, { type: "default", ...ie, children: _ })
@@ -230,6 +230,6 @@ const fr = ({
230
230
  );
231
231
  };
232
232
  export {
233
- fr as Dialog
233
+ mo as Dialog
234
234
  };
235
235
  //# sourceMappingURL=Dialog.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Dialog.js","sources":["../../../src/components/dialog/Dialog.tsx"],"sourcesContent":["\"use client\";\n\nimport { Dialog as BaseDialog } from \"@base-ui/react/dialog\";\nimport { useStableCallback } from \"@base-ui/utils/useStableCallback\";\nimport { XIcon } from \"@bioturing/assets\";\nimport { getConfirmLocale } from \"antd/es/modal/locale\";\nimport { useLocale } from \"antd/es/locale\";\nimport React, {\n useCallback,\n useEffect,\n useMemo,\n useRef,\n useState,\n} from \"react\";\nimport { Button, type ButtonProps } from \"../button/component\";\nimport { useControlledState } from \"../hooks/useControlledState\";\nimport { IconButton } from \"../icon-button\";\nimport { Spin } from \"../spin\";\nimport { Stack } from \"../stack\";\nimport { useTheme } from \"../theme-provider\";\nimport { Truncate } from \"../truncate\";\nimport { clsx, useCls } from \"../utils\";\nimport type { ModalType } from \"../modal/functions\";\nimport {\n DIALOG_CLOSE_REASON_ESCAPE,\n DIALOG_DEFAULT_BODY_SCROLLABLE,\n DIALOG_DEFAULT_CANCEL_TEXT,\n DIALOG_DEFAULT_CENTERED,\n DIALOG_DEFAULT_OK_TEXT,\n DIALOG_DEFAULT_OPEN,\n DIALOG_DEFAULT_SIZE,\n DIALOG_SIZE_WIDTHS,\n type DialogBackground,\n type DialogSize,\n} from \"./constants\";\n\nexport type DialogCancelEvent = Event | React.MouseEvent<HTMLButtonElement>;\nexport type DialogOkEvent = React.MouseEvent<HTMLButtonElement>;\n\nconst DIALOG_ELEVATED_BACKGROUND_MAX_WIDTH = parseInt(\n DIALOG_SIZE_WIDTHS.medium,\n 10,\n);\n\nfunction resolveContentPadding(\n contentPadding: number | string | boolean | undefined,\n) {\n if (typeof contentPadding === \"undefined\") {\n return undefined;\n }\n\n if (contentPadding === false || contentPadding === 0) {\n return \"0\";\n }\n\n return typeof contentPadding === \"number\"\n ? `${contentPadding}px`\n : contentPadding;\n}\n\nfunction resolveBackground(\n size: DialogSize,\n background?: DialogBackground,\n): DialogBackground {\n if (background) {\n return background;\n }\n\n const dialogWidth = parseInt(DIALOG_SIZE_WIDTHS[size], 10);\n\n if (\n !Number.isNaN(dialogWidth) &&\n dialogWidth <= DIALOG_ELEVATED_BACKGROUND_MAX_WIDTH\n ) {\n return \"elevated\";\n }\n\n return \"container\";\n}\n\nexport interface DialogProps {\n children?: React.ReactNode;\n open?: boolean;\n defaultOpen?: boolean;\n onCancel?: (event?: DialogCancelEvent) => void;\n /**\n * @deprecated Use `onCancel` instead.\n */\n onClose?: (event?: DialogCancelEvent) => void;\n onOk?: (event: DialogOkEvent) => void;\n title?: React.ReactNode;\n footer?: React.ReactNode;\n size?: DialogSize;\n loading?: boolean;\n confirmLoading?: boolean;\n hideOkButton?: boolean;\n hideCancelButton?: boolean;\n okText?: React.ReactNode;\n cancelText?: React.ReactNode;\n okType?: ButtonProps[\"type\"];\n contentPadding?: number | string | boolean;\n afterTitle?: React.ReactNode;\n beforeCloseButton?: React.ReactNode;\n afterCloseButton?: React.ReactNode;\n defaultFixedHeaderFooter?: boolean;\n centered?: boolean;\n type?: ModalType;\n background?: DialogBackground;\n bodyScrollable?: boolean;\n closeIcon?: React.ReactNode | false;\n closable?: boolean;\n maskClosable?: boolean;\n keyboard?: boolean;\n width?: number | string;\n style?: React.CSSProperties;\n destroyOnHidden?: boolean;\n afterOpenChange?: (open: boolean) => void;\n className?: string;\n rootClassName?: string;\n headerClassName?: string;\n bodyClassName?: string;\n footerClassName?: string;\n okButtonProps?: ButtonProps;\n cancelButtonProps?: ButtonProps;\n}\n\nexport const Dialog = ({\n children,\n open: openProp,\n defaultOpen = DIALOG_DEFAULT_OPEN,\n onCancel,\n onClose,\n onOk,\n title,\n footer,\n size,\n loading = false,\n confirmLoading = false,\n hideOkButton = false,\n hideCancelButton = false,\n okText = DIALOG_DEFAULT_OK_TEXT,\n cancelText = DIALOG_DEFAULT_CANCEL_TEXT,\n okType = \"primary\",\n contentPadding,\n afterTitle,\n beforeCloseButton,\n afterCloseButton,\n defaultFixedHeaderFooter = false,\n centered = DIALOG_DEFAULT_CENTERED,\n type = \"default\",\n background,\n bodyScrollable = DIALOG_DEFAULT_BODY_SCROLLABLE,\n closeIcon,\n closable = true,\n maskClosable = true,\n keyboard = true,\n width,\n style,\n destroyOnHidden = false,\n afterOpenChange,\n className,\n rootClassName,\n headerClassName,\n bodyClassName,\n footerClassName,\n okButtonProps,\n cancelButtonProps,\n}: DialogProps) => {\n const cls = useCls();\n const { className: themeClassName } = useTheme();\n const [actualOpen, setActualOpen] = useControlledState(\n openProp,\n undefined,\n defaultOpen,\n );\n const [locale] = useLocale(\"Modal\", getConfirmLocale());\n const [isContentOverflow, setIsContentOverflow] = useState(false);\n const resizeObserverRef = useRef<ResizeObserver | null>(null);\n\n const resolvedSize =\n size ?? (type === \"default\" ? DIALOG_DEFAULT_SIZE : \"xsmall\");\n const isFullscreen = resolvedSize === \"fullscreen\";\n const hasCustomFooter = typeof footer !== \"undefined\";\n const showDefaultFooter =\n !hasCustomFooter && !(hideOkButton && hideCancelButton);\n const showCloseButton = closable && closeIcon !== false;\n const resolvedBackground = resolveBackground(resolvedSize, background);\n const resolvedCloseIcon =\n closeIcon === undefined ? <XIcon size={16} weight=\"bold\" /> : closeIcon;\n const resolvedContentPadding = resolveContentPadding(contentPadding);\n const okTextLocale = okText || locale?.okText;\n const cancelTextLocale = cancelText || locale?.cancelText;\n const closeAriaLabel =\n typeof cancelTextLocale === \"string\" ? cancelTextLocale : \"Close\";\n const resolvedWidth =\n typeof width === \"number\"\n ? `${width}px`\n : (width ?? DIALOG_SIZE_WIDTHS[resolvedSize]);\n\n const popupStyle = useMemo(\n () =>\n ({\n \"--ds-dialog-width\": resolvedWidth,\n \"--ds-dialog-bg\": `var(--ds-color-bg-${resolvedBackground})`,\n ...(resolvedContentPadding\n ? {\n \"--ds-dialog-content-padding\": resolvedContentPadding,\n }\n : {}),\n ...style,\n }) as React.CSSProperties,\n [resolvedBackground, resolvedContentPadding, resolvedWidth, style],\n );\n\n const observeBodyOverflow = useCallback((node: HTMLDivElement | null) => {\n if (resizeObserverRef.current) {\n resizeObserverRef.current.disconnect();\n resizeObserverRef.current = null;\n }\n\n if (!node) {\n return;\n }\n\n const updateOverflowState = () => {\n setIsContentOverflow(node.scrollHeight > node.clientHeight);\n };\n\n const resizeObserver = new ResizeObserver(() => {\n updateOverflowState();\n });\n\n resizeObserver.observe(node);\n resizeObserverRef.current = resizeObserver;\n updateOverflowState();\n }, []);\n\n useEffect(() => {\n return () => {\n if (resizeObserverRef.current) {\n resizeObserverRef.current.disconnect();\n resizeObserverRef.current = null;\n }\n };\n }, []);\n\n const handleCancel = useStableCallback((event?: DialogCancelEvent) => {\n if (confirmLoading) {\n return;\n }\n setActualOpen(false);\n onCancel?.(event);\n onClose?.(event);\n });\n\n const handleOk = useStableCallback((event: DialogOkEvent) => {\n if (confirmLoading) {\n return;\n }\n setActualOpen(false);\n onOk?.(event);\n });\n\n const handleOpenChange = useStableCallback(\n (\n nextOpen: boolean,\n eventDetails: Parameters<\n NonNullable<\n React.ComponentProps<typeof BaseDialog.Root>[\"onOpenChange\"]\n >\n >[1],\n ) => {\n if (nextOpen) {\n setActualOpen(true);\n return;\n }\n\n if (\n eventDetails.reason === DIALOG_CLOSE_REASON_ESCAPE &&\n keyboard === false\n ) {\n eventDetails.cancel();\n return;\n }\n\n if (confirmLoading) {\n eventDetails.cancel();\n return;\n }\n\n handleCancel(eventDetails.event);\n },\n );\n\n const hasHeader =\n title ||\n afterTitle ||\n beforeCloseButton ||\n afterCloseButton ||\n showCloseButton;\n const hasFooter = hasCustomFooter ? footer !== null : showDefaultFooter;\n const fixedChrome =\n defaultFixedHeaderFooter || isContentOverflow || isFullscreen;\n\n return (\n <BaseDialog.Root\n open={!!actualOpen}\n onOpenChange={handleOpenChange}\n onOpenChangeComplete={afterOpenChange}\n modal={true}\n disablePointerDismissal={!maskClosable}\n >\n <BaseDialog.Portal keepMounted={!destroyOnHidden}>\n <BaseDialog.Backdrop className={cls(\"dialog-mask\")} />\n <BaseDialog.Viewport\n className={clsx(\n themeClassName,\n rootClassName,\n cls(\n \"dialog-wrap\",\n centered ? \"dialog-centered\" : \"dialog-top-aligned\",\n isFullscreen && \"dialog-wrap-fullscreen\",\n loading && \"dialog-loading\",\n ),\n )}\n >\n <BaseDialog.Popup\n className={clsx(\n cls(\n \"dialog\",\n `dialog-size-${resolvedSize}`,\n fixedChrome && \"dialog-fixed\",\n bodyScrollable === false && \"dialog-no-body-scroll\",\n loading && \"dialog-loading\",\n ),\n className,\n )}\n style={popupStyle}\n aria-busy={loading || undefined}\n >\n <div className={cls(\"dialog-content\")}>\n {hasHeader && (\n <div className={clsx(cls(\"dialog-header\"), headerClassName)}>\n <Stack\n align=\"center\"\n gap={8}\n className={cls(\"dialog-title-row\")}\n >\n <Stack.Child grow>\n {title ? (\n <BaseDialog.Title className={cls(\"dialog-title\")}>\n {typeof title === \"string\" ? (\n <Truncate>{title}</Truncate>\n ) : (\n title\n )}\n </BaseDialog.Title>\n ) : (\n <div />\n )}\n </Stack.Child>\n <Stack.Child stack hug align=\"center\" gap={8}>\n {beforeCloseButton}\n {showCloseButton && (\n <BaseDialog.Close\n render={\n <IconButton\n className={cls(\"dialog-close\")}\n aria-label={closeAriaLabel}\n >\n {resolvedCloseIcon}\n </IconButton>\n }\n />\n )}\n {afterCloseButton}\n </Stack.Child>\n </Stack>\n {afterTitle ? (\n <div className={cls(\"dialog-header-after-title\")}>\n {afterTitle}\n </div>\n ) : null}\n </div>\n )}\n <div className={cls(\"dialog-body-wrapper\")}>\n <div\n ref={observeBodyOverflow}\n className={clsx(cls(\"dialog-body\"), bodyClassName)}\n >\n {children}\n </div>\n {loading ? (\n <div className={cls(\"dialog-loading-overlay\")}>\n <Spin />\n </div>\n ) : null}\n </div>\n\n {hasFooter && (\n <div className={clsx(cls(\"dialog-footer\"), footerClassName)}>\n {hasCustomFooter ? (\n footer\n ) : (\n <div className={cls(\"dialog-footer-actions\")}>\n {!hideCancelButton && (\n <BaseDialog.Close\n render={\n <Button type=\"default\" {...cancelButtonProps}>\n {cancelTextLocale}\n </Button>\n }\n />\n )}\n {!hideOkButton && (\n <Button\n type={okType}\n {...okButtonProps}\n disabled={confirmLoading || okButtonProps?.disabled}\n loading={confirmLoading || okButtonProps?.loading}\n onClick={handleOk}\n >\n {okTextLocale}\n </Button>\n )}\n </div>\n )}\n </div>\n )}\n </div>\n </BaseDialog.Popup>\n </BaseDialog.Viewport>\n </BaseDialog.Portal>\n </BaseDialog.Root>\n );\n};\n"],"names":["DIALOG_ELEVATED_BACKGROUND_MAX_WIDTH","DIALOG_SIZE_WIDTHS","resolveContentPadding","contentPadding","resolveBackground","size","background","dialogWidth","Dialog","children","openProp","defaultOpen","DIALOG_DEFAULT_OPEN","onCancel","onClose","onOk","title","footer","loading","confirmLoading","hideOkButton","hideCancelButton","okText","DIALOG_DEFAULT_OK_TEXT","cancelText","DIALOG_DEFAULT_CANCEL_TEXT","okType","afterTitle","beforeCloseButton","afterCloseButton","defaultFixedHeaderFooter","centered","DIALOG_DEFAULT_CENTERED","type","bodyScrollable","DIALOG_DEFAULT_BODY_SCROLLABLE","closeIcon","closable","maskClosable","keyboard","width","style","destroyOnHidden","afterOpenChange","className","rootClassName","headerClassName","bodyClassName","footerClassName","okButtonProps","cancelButtonProps","cls","useCls","themeClassName","useTheme","actualOpen","setActualOpen","useControlledState","locale","useLocale","getConfirmLocale","isContentOverflow","setIsContentOverflow","useState","resizeObserverRef","useRef","resolvedSize","DIALOG_DEFAULT_SIZE","isFullscreen","hasCustomFooter","showDefaultFooter","showCloseButton","resolvedBackground","resolvedCloseIcon","jsx","XIcon","resolvedContentPadding","okTextLocale","cancelTextLocale","closeAriaLabel","resolvedWidth","popupStyle","useMemo","observeBodyOverflow","useCallback","node","updateOverflowState","resizeObserver","useEffect","handleCancel","useStableCallback","event","handleOk","handleOpenChange","nextOpen","eventDetails","DIALOG_CLOSE_REASON_ESCAPE","hasHeader","hasFooter","fixedChrome","BaseDialog","clsx","jsxs","Stack","Truncate","IconButton","Spin","Button"],"mappings":"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"}
1
+ {"version":3,"file":"Dialog.js","sources":["../../../src/components/dialog/Dialog.tsx"],"sourcesContent":["\"use client\";\n\nimport { Dialog as BaseDialog } from \"@base-ui/react/dialog\";\nimport { useStableCallback } from \"@base-ui/utils/useStableCallback\";\nimport { XIcon } from \"@bioturing/assets\";\nimport { getConfirmLocale } from \"antd/es/modal/locale\";\nimport { useLocale } from \"antd/es/locale\";\nimport React, {\n useCallback,\n useEffect,\n useMemo,\n useRef,\n useState,\n} from \"react\";\nimport { Button, type ButtonProps } from \"../button/component\";\nimport { useControlledState } from \"../hooks/useControlledState\";\nimport { IconButton } from \"../icon-button\";\nimport { Spin } from \"../spin\";\nimport { Stack } from \"../stack\";\nimport { useTheme } from \"../theme-provider\";\nimport { Truncate } from \"../truncate\";\nimport { clsx, useCls } from \"../utils\";\nimport type { ModalType } from \"../modal/functions\";\nimport {\n DIALOG_CLOSE_REASON_ESCAPE,\n DIALOG_DEFAULT_BODY_SCROLLABLE,\n DIALOG_DEFAULT_CANCEL_TEXT,\n DIALOG_DEFAULT_CENTERED,\n DIALOG_DEFAULT_OK_TEXT,\n DIALOG_DEFAULT_OPEN,\n DIALOG_DEFAULT_SIZE,\n DIALOG_SIZE_WIDTHS,\n type DialogBackground,\n type DialogSize,\n} from \"./constants\";\n\nexport type DialogCancelEvent = Event | React.MouseEvent<HTMLButtonElement>;\nexport type DialogOkEvent = React.MouseEvent<HTMLButtonElement>;\n\nconst DIALOG_ELEVATED_BACKGROUND_MAX_WIDTH = parseInt(\n DIALOG_SIZE_WIDTHS.medium,\n 10,\n);\n\nfunction resolveContentPadding(\n contentPadding: number | string | boolean | undefined,\n) {\n if (typeof contentPadding === \"undefined\") {\n return undefined;\n }\n\n if (contentPadding === false || contentPadding === 0) {\n return \"0\";\n }\n\n return typeof contentPadding === \"number\"\n ? `${contentPadding}px`\n : contentPadding;\n}\n\nfunction resolveBackground(\n size: DialogSize,\n background?: DialogBackground,\n): DialogBackground {\n if (background) {\n return background;\n }\n\n const dialogWidth = parseInt(DIALOG_SIZE_WIDTHS[size], 10);\n\n if (\n !Number.isNaN(dialogWidth) &&\n dialogWidth <= DIALOG_ELEVATED_BACKGROUND_MAX_WIDTH\n ) {\n return \"elevated\";\n }\n\n return \"container\";\n}\n\nexport interface DialogProps {\n children?: React.ReactNode;\n open?: boolean;\n defaultOpen?: boolean;\n onCancel?: (event?: DialogCancelEvent) => void;\n /**\n * @deprecated Use `onCancel` instead.\n */\n onClose?: (event?: DialogCancelEvent) => void;\n onOk?: (event: DialogOkEvent) => void;\n title?: React.ReactNode;\n footer?: React.ReactNode;\n size?: DialogSize;\n loading?: boolean;\n confirmLoading?: boolean;\n hideOkButton?: boolean;\n hideCancelButton?: boolean;\n okText?: React.ReactNode;\n cancelText?: React.ReactNode;\n okType?: ButtonProps[\"type\"];\n contentPadding?: number | string | boolean;\n afterTitle?: React.ReactNode;\n beforeCloseButton?: React.ReactNode;\n afterCloseButton?: React.ReactNode;\n defaultFixedHeaderFooter?: boolean;\n centered?: boolean;\n type?: ModalType;\n background?: DialogBackground;\n bodyScrollable?: boolean;\n closeIcon?: React.ReactNode | false;\n closable?: boolean;\n maskClosable?: boolean;\n keyboard?: boolean;\n width?: number | string;\n style?: React.CSSProperties;\n destroyOnHidden?: boolean;\n afterOpenChange?: (open: boolean) => void;\n className?: string;\n rootClassName?: string;\n headerClassName?: string;\n bodyClassName?: string;\n footerClassName?: string;\n okButtonProps?: ButtonProps;\n cancelButtonProps?: ButtonProps;\n}\n\nexport const Dialog = ({\n children,\n open: openProp,\n defaultOpen = DIALOG_DEFAULT_OPEN,\n onCancel,\n onClose,\n onOk,\n title,\n footer,\n size,\n loading = false,\n confirmLoading = false,\n hideOkButton = false,\n hideCancelButton = false,\n okText = DIALOG_DEFAULT_OK_TEXT,\n cancelText = DIALOG_DEFAULT_CANCEL_TEXT,\n okType = \"primary\",\n contentPadding,\n afterTitle,\n beforeCloseButton,\n afterCloseButton,\n defaultFixedHeaderFooter = false,\n centered = DIALOG_DEFAULT_CENTERED,\n type = \"default\",\n background,\n bodyScrollable = DIALOG_DEFAULT_BODY_SCROLLABLE,\n closeIcon,\n closable = true,\n maskClosable = true,\n keyboard = true,\n width,\n style,\n destroyOnHidden = false,\n afterOpenChange,\n className,\n rootClassName,\n headerClassName,\n bodyClassName,\n footerClassName,\n okButtonProps,\n cancelButtonProps,\n}: DialogProps) => {\n const cls = useCls();\n const { className: themeClassName } = useTheme();\n const [actualOpen, setActualOpen] = useControlledState(\n openProp,\n undefined,\n defaultOpen,\n );\n const [locale] = useLocale(\"Modal\", getConfirmLocale());\n const [isContentOverflow, setIsContentOverflow] = useState(false);\n const resizeObserverRef = useRef<ResizeObserver | null>(null);\n\n const resolvedSize =\n size ?? (type === \"default\" ? DIALOG_DEFAULT_SIZE : \"xsmall\");\n const isFullscreen = resolvedSize === \"fullscreen\";\n const hasCustomFooter = typeof footer !== \"undefined\";\n const showDefaultFooter =\n !hasCustomFooter && !(hideOkButton && hideCancelButton);\n const showCloseButton = closable && closeIcon !== false;\n const resolvedBackground = resolveBackground(resolvedSize, background);\n const resolvedCloseIcon =\n closeIcon === undefined ? <XIcon size={16} weight=\"bold\" /> : closeIcon;\n const resolvedContentPadding = resolveContentPadding(contentPadding);\n const okTextLocale = okText || locale?.okText;\n const cancelTextLocale = cancelText || locale?.cancelText;\n const closeAriaLabel =\n typeof cancelTextLocale === \"string\" ? cancelTextLocale : \"Close\";\n const resolvedWidth =\n typeof width === \"number\"\n ? `${width}px`\n : (width ?? DIALOG_SIZE_WIDTHS[resolvedSize]);\n\n const popupStyle = useMemo(\n () =>\n ({\n \"--ds-dialog-width\": resolvedWidth,\n \"--ds-dialog-bg\": `var(--ds-color-bg-${resolvedBackground})`,\n ...(resolvedContentPadding\n ? {\n \"--ds-dialog-body-content-padding\": resolvedContentPadding,\n }\n : {}),\n ...style,\n }) as React.CSSProperties,\n [resolvedBackground, resolvedContentPadding, resolvedWidth, style],\n );\n\n const observeBodyOverflow = useCallback((node: HTMLDivElement | null) => {\n if (resizeObserverRef.current) {\n resizeObserverRef.current.disconnect();\n resizeObserverRef.current = null;\n }\n\n if (!node) {\n return;\n }\n\n const updateOverflowState = () => {\n setIsContentOverflow(node.scrollHeight > node.clientHeight);\n };\n\n const resizeObserver = new ResizeObserver(() => {\n updateOverflowState();\n });\n\n resizeObserver.observe(node);\n resizeObserverRef.current = resizeObserver;\n updateOverflowState();\n }, []);\n\n useEffect(() => {\n return () => {\n if (resizeObserverRef.current) {\n resizeObserverRef.current.disconnect();\n resizeObserverRef.current = null;\n }\n };\n }, []);\n\n const handleCancel = useStableCallback((event?: DialogCancelEvent) => {\n if (confirmLoading) {\n return;\n }\n setActualOpen(false);\n onCancel?.(event);\n onClose?.(event);\n });\n\n const handleOk = useStableCallback((event: DialogOkEvent) => {\n if (confirmLoading) {\n return;\n }\n setActualOpen(false);\n onOk?.(event);\n });\n\n const handleOpenChange = useStableCallback(\n (\n nextOpen: boolean,\n eventDetails: Parameters<\n NonNullable<\n React.ComponentProps<typeof BaseDialog.Root>[\"onOpenChange\"]\n >\n >[1],\n ) => {\n if (nextOpen) {\n setActualOpen(true);\n return;\n }\n\n if (\n eventDetails.reason === DIALOG_CLOSE_REASON_ESCAPE &&\n keyboard === false\n ) {\n eventDetails.cancel();\n return;\n }\n\n if (confirmLoading) {\n eventDetails.cancel();\n return;\n }\n\n handleCancel(eventDetails.event);\n },\n );\n\n const hasHeader =\n title ||\n afterTitle ||\n beforeCloseButton ||\n afterCloseButton ||\n showCloseButton;\n const hasFooter = hasCustomFooter ? footer !== null : showDefaultFooter;\n const fixedChrome =\n defaultFixedHeaderFooter || isContentOverflow || isFullscreen;\n\n return (\n <BaseDialog.Root\n open={!!actualOpen}\n onOpenChange={handleOpenChange}\n onOpenChangeComplete={afterOpenChange}\n modal={true}\n disablePointerDismissal={!maskClosable}\n >\n <BaseDialog.Portal keepMounted={!destroyOnHidden}>\n <BaseDialog.Backdrop className={cls(\"dialog-mask\")} />\n <BaseDialog.Viewport\n className={clsx(\n themeClassName,\n rootClassName,\n cls(\n \"dialog-wrap\",\n centered ? \"dialog-centered\" : \"dialog-top-aligned\",\n isFullscreen && \"dialog-wrap-fullscreen\",\n loading && \"dialog-loading\",\n ),\n )}\n >\n <BaseDialog.Popup\n className={clsx(\n cls(\n \"dialog\",\n `dialog-size-${resolvedSize}`,\n fixedChrome && \"dialog-fixed\",\n bodyScrollable === false && \"dialog-no-body-scroll\",\n loading && \"dialog-loading\",\n ),\n className,\n )}\n style={popupStyle}\n aria-busy={loading || undefined}\n >\n <div className={cls(\"dialog-content\")}>\n {hasHeader && (\n <div className={clsx(cls(\"dialog-header\"), headerClassName)}>\n <Stack\n align=\"center\"\n gap={8}\n className={cls(\"dialog-title-row\")}\n >\n <Stack.Child grow>\n {title ? (\n <BaseDialog.Title className={cls(\"dialog-title\")}>\n {typeof title === \"string\" ? (\n <Truncate>{title}</Truncate>\n ) : (\n title\n )}\n </BaseDialog.Title>\n ) : (\n <div />\n )}\n </Stack.Child>\n <Stack.Child stack hug align=\"center\" gap={8}>\n {beforeCloseButton}\n {showCloseButton && (\n <BaseDialog.Close\n render={\n <IconButton\n className={cls(\"dialog-close\")}\n aria-label={closeAriaLabel}\n >\n {resolvedCloseIcon}\n </IconButton>\n }\n />\n )}\n {afterCloseButton}\n </Stack.Child>\n </Stack>\n {afterTitle ? (\n <div className={cls(\"dialog-header-after-title\")}>\n {afterTitle}\n </div>\n ) : null}\n </div>\n )}\n <div className={cls(\"dialog-body-wrapper\")}>\n <div\n ref={observeBodyOverflow}\n className={clsx(cls(\"dialog-body\"), bodyClassName)}\n >\n {children}\n </div>\n {loading ? (\n <div className={cls(\"dialog-loading-overlay\")}>\n <Spin />\n </div>\n ) : null}\n </div>\n\n {hasFooter && (\n <div className={clsx(cls(\"dialog-footer\"), footerClassName)}>\n {hasCustomFooter ? (\n footer\n ) : (\n <div className={cls(\"dialog-footer-actions\")}>\n {!hideCancelButton && (\n <BaseDialog.Close\n render={\n <Button type=\"default\" {...cancelButtonProps}>\n {cancelTextLocale}\n </Button>\n }\n />\n )}\n {!hideOkButton && (\n <Button\n type={okType}\n {...okButtonProps}\n disabled={confirmLoading || okButtonProps?.disabled}\n loading={confirmLoading || okButtonProps?.loading}\n onClick={handleOk}\n >\n {okTextLocale}\n </Button>\n )}\n </div>\n )}\n </div>\n )}\n </div>\n </BaseDialog.Popup>\n </BaseDialog.Viewport>\n </BaseDialog.Portal>\n </BaseDialog.Root>\n );\n};\n"],"names":["DIALOG_ELEVATED_BACKGROUND_MAX_WIDTH","DIALOG_SIZE_WIDTHS","resolveContentPadding","contentPadding","resolveBackground","size","background","dialogWidth","Dialog","children","openProp","defaultOpen","DIALOG_DEFAULT_OPEN","onCancel","onClose","onOk","title","footer","loading","confirmLoading","hideOkButton","hideCancelButton","okText","DIALOG_DEFAULT_OK_TEXT","cancelText","DIALOG_DEFAULT_CANCEL_TEXT","okType","afterTitle","beforeCloseButton","afterCloseButton","defaultFixedHeaderFooter","centered","DIALOG_DEFAULT_CENTERED","type","bodyScrollable","DIALOG_DEFAULT_BODY_SCROLLABLE","closeIcon","closable","maskClosable","keyboard","width","style","destroyOnHidden","afterOpenChange","className","rootClassName","headerClassName","bodyClassName","footerClassName","okButtonProps","cancelButtonProps","cls","useCls","themeClassName","useTheme","actualOpen","setActualOpen","useControlledState","locale","useLocale","getConfirmLocale","isContentOverflow","setIsContentOverflow","useState","resizeObserverRef","useRef","resolvedSize","DIALOG_DEFAULT_SIZE","isFullscreen","hasCustomFooter","showDefaultFooter","showCloseButton","resolvedBackground","resolvedCloseIcon","jsx","XIcon","resolvedContentPadding","okTextLocale","cancelTextLocale","closeAriaLabel","resolvedWidth","popupStyle","useMemo","observeBodyOverflow","useCallback","node","updateOverflowState","resizeObserver","useEffect","handleCancel","useStableCallback","event","handleOk","handleOpenChange","nextOpen","eventDetails","DIALOG_CLOSE_REASON_ESCAPE","hasHeader","hasFooter","fixedChrome","BaseDialog","clsx","jsxs","Stack","Truncate","IconButton","Spin","Button"],"mappings":";;;;;;;;;;;;;;;;;;AAuCA,MAAMA,KAAuC;AAAA,EAC3CC,EAAmB;AAAA,EACnB;AACF;AAEA,SAASC,GACPC,GACA;AACA,MAAI,SAAOA,IAAmB;AAI9B,WAAIA,MAAmB,MAASA,MAAmB,IAC1C,MAGF,OAAOA,KAAmB,WAC7B,GAAGA,CAAc,OACjBA;AACN;AAEA,SAASC,GACPC,GACAC,GACkB;AAClB,MAAIA;AACF,WAAOA;AAGT,QAAMC,IAAc,SAASN,EAAmBI,CAAI,GAAG,EAAE;AAEzD,SACE,CAAC,OAAO,MAAME,CAAW,KACzBA,KAAeP,KAER,aAGF;AACT;AAgDO,MAAMQ,KAAS,CAAC;AAAA,EACrB,UAAAC;AAAA,EACA,MAAMC;AAAA,EACN,aAAAC,IAAcC;AAAA,EACd,UAAAC;AAAA,EACA,SAAAC;AAAA,EACA,MAAAC;AAAA,EACA,OAAAC;AAAA,EACA,QAAAC;AAAA,EACA,MAAAZ;AAAA,EACA,SAAAa,IAAU;AAAA,EACV,gBAAAC,IAAiB;AAAA,EACjB,cAAAC,IAAe;AAAA,EACf,kBAAAC,IAAmB;AAAA,EACnB,QAAAC,IAASC;AAAA,EACT,YAAAC,IAAaC;AAAA,EACb,QAAAC,IAAS;AAAA,EACT,gBAAAvB;AAAA,EACA,YAAAwB;AAAA,EACA,mBAAAC;AAAA,EACA,kBAAAC;AAAA,EACA,0BAAAC,IAA2B;AAAA,EAC3B,UAAAC,IAAWC;AAAA,EACX,MAAAC,IAAO;AAAA,EACP,YAAA3B;AAAA,EACA,gBAAA4B,IAAiBC;AAAA,EACjB,WAAAC;AAAA,EACA,UAAAC,IAAW;AAAA,EACX,cAAAC,IAAe;AAAA,EACf,UAAAC,KAAW;AAAA,EACX,OAAAC;AAAA,EACA,OAAAC;AAAA,EACA,iBAAAC,KAAkB;AAAA,EAClB,iBAAAC;AAAA,EACA,WAAAC;AAAA,EACA,eAAAC;AAAA,EACA,iBAAAC;AAAA,EACA,eAAAC;AAAA,EACA,iBAAAC;AAAA,EACA,eAAAC;AAAA,EACA,mBAAAC;AACF,MAAmB;AACjB,QAAMC,IAAMC,GAAA,GACN,EAAE,WAAWC,GAAA,IAAmBC,GAAA,GAChC,CAACC,IAAYC,CAAa,IAAIC;AAAA,IAClC/C;AAAA,IACA;AAAA,IACAC;AAAA,EAAA,GAEI,CAAC+C,CAAM,IAAIC,GAAU,SAASC,IAAkB,GAChD,CAACC,IAAmBC,EAAoB,IAAIC,GAAS,EAAK,GAC1DC,IAAoBC,GAA8B,IAAI,GAEtDC,IACJ7D,MAAS4B,MAAS,YAAYkC,KAAsB,WAChDC,IAAeF,MAAiB,cAChCG,IAAkB,OAAOpD,IAAW,KACpCqD,KACJ,CAACD,KAAmB,EAAEjD,KAAgBC,IAClCkD,IAAkBlC,KAAYD,MAAc,IAC5CoC,IAAqBpE,GAAkB8D,GAAc5D,CAAU,GAC/DmE,KACJrC,MAAc,SAAY,gBAAAsC,EAACC,MAAM,MAAM,IAAI,QAAO,OAAA,CAAO,IAAKvC,GAC1DwC,IAAyB1E,GAAsBC,CAAc,GAC7D0E,KAAevD,KAAUoC,GAAQ,QACjCoB,IAAmBtD,KAAckC,GAAQ,YACzCqB,KACJ,OAAOD,KAAqB,WAAWA,IAAmB,SACtDE,IACJ,OAAOxC,KAAU,WACb,GAAGA,CAAK,OACPA,KAASvC,EAAmBiE,CAAY,GAEzCe,KAAaC;AAAA,IACjB,OACG;AAAA,MACC,qBAAqBF;AAAA,MACrB,kBAAkB,qBAAqBR,CAAkB;AAAA,MACzD,GAAII,IACA;AAAA,QACE,oCAAoCA;AAAA,MAAA,IAEtC,CAAA;AAAA,MACJ,GAAGnC;AAAA,IAAA;AAAA,IAEP,CAAC+B,GAAoBI,GAAwBI,GAAevC,CAAK;AAAA,EAAA,GAG7D0C,KAAsBC,GAAY,CAACC,MAAgC;AAMvE,QALIrB,EAAkB,YACpBA,EAAkB,QAAQ,WAAA,GAC1BA,EAAkB,UAAU,OAG1B,CAACqB;AACH;AAGF,UAAMC,IAAsB,MAAM;AAChC,MAAAxB,GAAqBuB,EAAK,eAAeA,EAAK,YAAY;AAAA,IAC5D,GAEME,IAAiB,IAAI,eAAe,MAAM;AAC9C,MAAAD,EAAA;AAAA,IACF,CAAC;AAED,IAAAC,EAAe,QAAQF,CAAI,GAC3BrB,EAAkB,UAAUuB,GAC5BD,EAAA;AAAA,EACF,GAAG,CAAA,CAAE;AAEL,EAAAE,GAAU,MACD,MAAM;AACX,IAAIxB,EAAkB,YACpBA,EAAkB,QAAQ,WAAA,GAC1BA,EAAkB,UAAU;AAAA,EAEhC,GACC,CAAA,CAAE;AAEL,QAAMyB,KAAeC,EAAkB,CAACC,MAA8B;AACpE,IAAIxE,MAGJqC,EAAc,EAAK,GACnB3C,IAAW8E,CAAK,GAChB7E,IAAU6E,CAAK;AAAA,EACjB,CAAC,GAEKC,KAAWF,EAAkB,CAACC,MAAyB;AAC3D,IAAIxE,MAGJqC,EAAc,EAAK,GACnBzC,IAAO4E,CAAK;AAAA,EACd,CAAC,GAEKE,KAAmBH;AAAA,IACvB,CACEI,GACAC,MAKG;AACH,UAAID,GAAU;AACZ,QAAAtC,EAAc,EAAI;AAClB;AAAA,MACF;AAEA,UACEuC,EAAa,WAAWC,MACxBzD,OAAa,IACb;AACA,QAAAwD,EAAa,OAAA;AACb;AAAA,MACF;AAEA,UAAI5E,GAAgB;AAClB,QAAA4E,EAAa,OAAA;AACb;AAAA,MACF;AAEA,MAAAN,GAAaM,EAAa,KAAK;AAAA,IACjC;AAAA,EAAA,GAGIE,KACJjF,KACAW,KACAC,KACAC,KACA0C,GACI2B,KAAY7B,IAAkBpD,MAAW,OAAOqD,IAChD6B,KACJrE,KAA4B+B,MAAqBO;AAEnD,SACE,gBAAAM;AAAA,IAAC0B,EAAW;AAAA,IAAX;AAAA,MACC,MAAM,CAAC,CAAC7C;AAAA,MACR,cAAcsC;AAAA,MACd,sBAAsBlD;AAAA,MACtB,OAAO;AAAA,MACP,yBAAyB,CAACL;AAAA,MAE1B,4BAAC8D,EAAW,QAAX,EAAkB,aAAa,CAAC1D,IAC/B,UAAA;AAAA,QAAA,gBAAAgC,EAAC0B,EAAW,UAAX,EAAoB,WAAWjD,EAAI,aAAa,GAAG;AAAA,QACpD,gBAAAuB;AAAA,UAAC0B,EAAW;AAAA,UAAX;AAAA,YACC,WAAWC;AAAA,cACThD;AAAA,cACAR;AAAA,cACAM;AAAA,gBACE;AAAA,gBACApB,IAAW,oBAAoB;AAAA,gBAC/BqC,KAAgB;AAAA,gBAChBlD,KAAW;AAAA,cAAA;AAAA,YACb;AAAA,YAGF,UAAA,gBAAAwD;AAAA,cAAC0B,EAAW;AAAA,cAAX;AAAA,gBACC,WAAWC;AAAA,kBACTlD;AAAA,oBACE;AAAA,oBACA,eAAee,CAAY;AAAA,oBAC3BiC,MAAe;AAAA,oBACfjE,MAAmB,MAAS;AAAA,oBAC5BhB,KAAW;AAAA,kBAAA;AAAA,kBAEb0B;AAAA,gBAAA;AAAA,gBAEF,OAAOqC;AAAA,gBACP,aAAW/D,KAAW;AAAA,gBAEtB,UAAA,gBAAAoF,EAAC,OAAA,EAAI,WAAWnD,EAAI,gBAAgB,GACjC,UAAA;AAAA,kBAAA8C,MACC,gBAAAK,EAAC,SAAI,WAAWD,EAAKlD,EAAI,eAAe,GAAGL,EAAe,GACxD,UAAA;AAAA,oBAAA,gBAAAwD;AAAA,sBAACC;AAAA,sBAAA;AAAA,wBACC,OAAM;AAAA,wBACN,KAAK;AAAA,wBACL,WAAWpD,EAAI,kBAAkB;AAAA,wBAEjC,UAAA;AAAA,0BAAA,gBAAAuB,EAAC6B,EAAM,OAAN,EAAY,MAAI,IACd,cACC,gBAAA7B,EAAC0B,EAAW,OAAX,EAAiB,WAAWjD,EAAI,cAAc,GAC5C,UAAA,OAAOnC,KAAU,WAChB,gBAAA0D,EAAC8B,IAAA,EAAU,UAAAxF,EAAA,CAAM,IAEjBA,EAAA,CAEJ,IAEA,gBAAA0D,EAAC,OAAA,CAAA,CAAI,EAAA,CAET;AAAA,0BACA,gBAAA4B,EAACC,EAAM,OAAN,EAAY,OAAK,IAAC,KAAG,IAAC,OAAM,UAAS,KAAK,GACxC,UAAA;AAAA,4BAAA3E;AAAA,4BACA2C,KACC,gBAAAG;AAAA,8BAAC0B,EAAW;AAAA,8BAAX;AAAA,gCACC,QACE,gBAAA1B;AAAA,kCAAC+B;AAAA,kCAAA;AAAA,oCACC,WAAWtD,EAAI,cAAc;AAAA,oCAC7B,cAAY4B;AAAA,oCAEX,UAAAN;AAAA,kCAAA;AAAA,gCAAA;AAAA,8BACH;AAAA,4BAAA;AAAA,4BAIL5C;AAAA,0BAAA,EAAA,CACH;AAAA,wBAAA;AAAA,sBAAA;AAAA,oBAAA;AAAA,oBAEDF,sBACE,OAAA,EAAI,WAAWwB,EAAI,2BAA2B,GAC5C,aACH,IACE;AAAA,kBAAA,GACN;AAAA,kBAEF,gBAAAmD,EAAC,OAAA,EAAI,WAAWnD,EAAI,qBAAqB,GACvC,UAAA;AAAA,oBAAA,gBAAAuB;AAAA,sBAAC;AAAA,sBAAA;AAAA,wBACC,KAAKS;AAAA,wBACL,WAAWkB,EAAKlD,EAAI,aAAa,GAAGJ,EAAa;AAAA,wBAEhD,UAAAtC;AAAA,sBAAA;AAAA,oBAAA;AAAA,oBAEFS,IACC,gBAAAwD,EAAC,OAAA,EAAI,WAAWvB,EAAI,wBAAwB,GAC1C,UAAA,gBAAAuB,EAACgC,IAAA,CAAA,CAAK,EAAA,CACR,IACE;AAAA,kBAAA,GACN;AAAA,kBAECR,MACC,gBAAAxB,EAAC,OAAA,EAAI,WAAW2B,EAAKlD,EAAI,eAAe,GAAGH,EAAe,GACvD,cACC/B,IAEA,gBAAAqF,EAAC,SAAI,WAAWnD,EAAI,uBAAuB,GACxC,UAAA;AAAA,oBAAA,CAAC9B,KACA,gBAAAqD;AAAA,sBAAC0B,EAAW;AAAA,sBAAX;AAAA,wBACC,QACE,gBAAA1B,EAACiC,GAAA,EAAO,MAAK,WAAW,GAAGzD,IACxB,UAAA4B,EAAA,CACH;AAAA,sBAAA;AAAA,oBAAA;AAAA,oBAIL,CAAC1D,KACA,gBAAAsD;AAAA,sBAACiC;AAAA,sBAAA;AAAA,wBACC,MAAMjF;AAAA,wBACL,GAAGuB;AAAA,wBACJ,UAAU9B,KAAkB8B,GAAe;AAAA,wBAC3C,SAAS9B,KAAkB8B,GAAe;AAAA,wBAC1C,SAAS2C;AAAA,wBAER,UAAAf;AAAA,sBAAA;AAAA,oBAAA;AAAA,kBACH,EAAA,CAEJ,EAAA,CAEJ;AAAA,gBAAA,EAAA,CAEJ;AAAA,cAAA;AAAA,YAAA;AAAA,UACF;AAAA,QAAA;AAAA,MACF,EAAA,CACF;AAAA,IAAA;AAAA,EAAA;AAGN;"}