@servicetitan/anvil2 1.49.7 → 1.50.1

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 (69) hide show
  1. package/CHANGELOG.md +24 -0
  2. package/dist/{Combobox-hxGMMb8x.js → Combobox-DGAa9vgU.js} +7 -19
  3. package/dist/Combobox-DGAa9vgU.js.map +1 -0
  4. package/dist/Combobox.js +1 -1
  5. package/dist/{DataTable-CUFa7cQK.js → DataTable-DQ9FFuV8.js} +111 -57
  6. package/dist/DataTable-DQ9FFuV8.js.map +1 -0
  7. package/dist/DataTable.css +68 -26
  8. package/dist/{Dialog-UzG6-s9H.js → Dialog-BwabBKoZ.js} +19 -13
  9. package/dist/Dialog-BwabBKoZ.js.map +1 -0
  10. package/dist/Dialog.css +31 -28
  11. package/dist/Dialog.js +1 -1
  12. package/dist/{Drawer-BHK18NYm.js → Drawer-GXeoK-r9.js} +20 -12
  13. package/dist/Drawer-GXeoK-r9.js.map +1 -0
  14. package/dist/Drawer.css +33 -27
  15. package/dist/Drawer.js +1 -1
  16. package/dist/{Page-ClI3IOc7.js → Page-DEbpjQw0.js} +2 -2
  17. package/dist/{Page-ClI3IOc7.js.map → Page-DEbpjQw0.js.map} +1 -1
  18. package/dist/Page.js +1 -1
  19. package/dist/{Pagination-CnF6yBr5.js → Pagination-BR8MiRaA.js} +17 -25
  20. package/dist/Pagination-BR8MiRaA.js.map +1 -0
  21. package/dist/Pagination.js +1 -1
  22. package/dist/{SearchField-D6bICv4b.js → SearchField-CJAo8dE0.js} +10 -7
  23. package/dist/{SearchField-D6bICv4b.js.map → SearchField-CJAo8dE0.js.map} +1 -1
  24. package/dist/SearchField.css +14 -8
  25. package/dist/SearchField.js +1 -1
  26. package/dist/SelectField.js +1 -1
  27. package/dist/{SelectFieldSync-BOzavAtv.js → SelectFieldSync-D4VdOXoY.js} +93 -81
  28. package/dist/SelectFieldSync-D4VdOXoY.js.map +1 -0
  29. package/dist/SelectFieldSync.css +6 -5
  30. package/dist/{SelectTrigger-DfVnPiNf.js → SelectTrigger-D4AjiMKp.js} +2 -2
  31. package/dist/{SelectTrigger-DfVnPiNf.js.map → SelectTrigger-D4AjiMKp.js.map} +1 -1
  32. package/dist/SelectTrigger.js +1 -1
  33. package/dist/{SelectTriggerBase-D8scKtBr.js → SelectTriggerBase-D9GuxPxR.js} +3 -15
  34. package/dist/SelectTriggerBase-D9GuxPxR.js.map +1 -0
  35. package/dist/Table.js +1 -1
  36. package/dist/{Toolbar-BxYOXLmv.js → Toolbar-Vw9V1RHr.js} +208 -139
  37. package/dist/Toolbar-Vw9V1RHr.js.map +1 -0
  38. package/dist/Toolbar.css +62 -30
  39. package/dist/Toolbar.js +1 -1
  40. package/dist/beta/components/SelectField/internal/useCombo.d.ts +1 -0
  41. package/dist/beta/components/Table/DataTable/internal/cells/DataTableHeaderCell.d.ts +9 -1
  42. package/dist/beta/components/Table/DataTable/stories/DataTable.story-data.d.ts +1 -0
  43. package/dist/beta/components/Table/internal/ResizeHandle.d.ts +5 -2
  44. package/dist/beta/components/Table/internal/getCommonPinningStyles.d.ts +2 -1
  45. package/dist/beta/components/Toolbar/Filters/internal/utils/filter-state.d.ts +28 -0
  46. package/dist/beta.js +3 -3
  47. package/dist/components/Combobox/internal/ComboboxLegacy/ComboboxLegacyUtils.d.ts +0 -36
  48. package/dist/components/Combobox/internal/ComboboxUtils.d.ts +0 -57
  49. package/dist/components/Dialog/Dialog.d.ts +3 -3
  50. package/dist/components/Drawer/Drawer.d.ts +2 -2
  51. package/dist/components/Pagination/internal/Pagination.d.ts +3 -4
  52. package/dist/components/Pagination/internal/PaginationList.d.ts +1 -0
  53. package/dist/components/Pagination/internal/PaginationTotalCount.d.ts +2 -4
  54. package/dist/index.js +7 -7
  55. package/dist/internal/hooks/index.d.ts +1 -0
  56. package/dist/internal/hooks/useDownshiftEnvironment/index.d.ts +1 -0
  57. package/dist/internal/hooks/useDownshiftEnvironment/useDownshiftEnvironment.d.ts +36 -0
  58. package/dist/{match-sorter.esm-CtBw0MrM.js → match-sorter.esm-NrKOPPde.js} +16 -3
  59. package/dist/match-sorter.esm-NrKOPPde.js.map +1 -0
  60. package/package.json +7 -7
  61. package/dist/Combobox-hxGMMb8x.js.map +0 -1
  62. package/dist/DataTable-CUFa7cQK.js.map +0 -1
  63. package/dist/Dialog-UzG6-s9H.js.map +0 -1
  64. package/dist/Drawer-BHK18NYm.js.map +0 -1
  65. package/dist/Pagination-CnF6yBr5.js.map +0 -1
  66. package/dist/SelectFieldSync-BOzavAtv.js.map +0 -1
  67. package/dist/SelectTriggerBase-D8scKtBr.js.map +0 -1
  68. package/dist/Toolbar-BxYOXLmv.js.map +0 -1
  69. package/dist/match-sorter.esm-CtBw0MrM.js.map +0 -1
package/dist/Combobox.js CHANGED
@@ -1,3 +1,3 @@
1
- export { C as Combobox, c as ComboboxContent, a as ComboboxElement, i as ComboboxEmpty, e as ComboboxItem, f as ComboboxItemAddNew, d as ComboboxList, g as ComboboxSearchField, b as ComboboxSelect, h as ComboboxSelectTrigger, C as default } from './Combobox-hxGMMb8x.js';
1
+ export { C as Combobox, c as ComboboxContent, a as ComboboxElement, i as ComboboxEmpty, e as ComboboxItem, f as ComboboxItemAddNew, d as ComboboxList, g as ComboboxSearchField, b as ComboboxSelect, h as ComboboxSelectTrigger, C as default } from './Combobox-DGAa9vgU.js';
2
2
  export { u as useInfiniteCombobox } from './useInfiniteCombobox-WcRgC9p6.js';
3
3
  //# sourceMappingURL=Combobox.js.map
@@ -11,11 +11,12 @@ import { I as Icon } from './Icon-BSuTVNaa.js';
11
11
  import { S as SrOnly } from './SrOnly-CTsYSuby.js';
12
12
  import { M as Menu } from './Menu-Cn2JJe1Y.js';
13
13
  import { P as Popover } from './Popover-CCXrzBul.js';
14
- import { S as SearchField } from './SearchField-D6bICv4b.js';
14
+ import { S as SearchField } from './SearchField-CJAo8dE0.js';
15
15
  import { L as ListView } from './ListView-D8mfK8Lu.js';
16
+ import { flushSync } from 'react-dom';
16
17
  import { u as useLayoutPropsUtil } from './useLayoutPropsUtil-BlIWftBb.js';
17
18
  import './anvil-fonts.css';import './DataTable.css';/* empty css */
18
- import { P as Pagination } from './Pagination-CnF6yBr5.js';
19
+ import { P as Pagination } from './Pagination-BR8MiRaA.js';
19
20
  import { S as Spinner } from './Spinner-xEFwsq8_.js';
20
21
  import { u as useOptionallyControlledState } from './useOptionallyControlledState-DbDuos5L.js';
21
22
 
@@ -3485,7 +3486,8 @@ function useReactTable(options) {
3485
3486
  }
3486
3487
 
3487
3488
  const styles$c = {
3488
- "table-base": "_table-base_wtnhx_2"
3489
+ "table-base": "_table-base_11xh7_2",
3490
+ "data-table-base": "_data-table-base_11xh7_15"
3489
3491
  };
3490
3492
 
3491
3493
  const SimpleTableBase = ({
@@ -3512,7 +3514,7 @@ const DataTableBase = ({
3512
3514
  hasSubRows,
3513
3515
  ...rest
3514
3516
  }) => {
3515
- const tableBaseClassNames = cx(className, styles$c["table-base"]);
3517
+ const tableBaseClassNames = cx(className, styles$c["data-table-base"]);
3516
3518
  return /* @__PURE__ */ jsx(
3517
3519
  "div",
3518
3520
  {
@@ -3548,7 +3550,6 @@ const getCommonPinningStyles = (column) => {
3548
3550
  left: isPinned === "left" ? `${column.getStart("left")}px` : void 0,
3549
3551
  right: isPinned === "right" ? `${column.getAfter("right")}px` : void 0,
3550
3552
  position: isPinned ? "sticky" : "relative",
3551
- width: `calc(var(--a2-table-col-${column.getIndex()}-size) * 1px)`,
3552
3553
  zIndex: isPinned ? 1 : 0
3553
3554
  };
3554
3555
  };
@@ -3566,7 +3567,7 @@ const getCommonPinningClasses = (column) => {
3566
3567
  };
3567
3568
 
3568
3569
  const styles$b = {
3569
- "table-body": "_table-body_zs2gj_2"
3570
+ "table-body": "_table-body_zx1bt_2"
3570
3571
  };
3571
3572
 
3572
3573
  function TableBody({ type, children, ...rest }) {
@@ -4157,10 +4158,11 @@ function DataTableBodyCellElement(props) {
4157
4158
  const DataTableBodyCell = memo$1(DataTableBodyCellElement);
4158
4159
 
4159
4160
  const styles$8 = {
4160
- "data-table-body-row": "_data-table-body-row_1vs3r_2",
4161
- "data-table-body-sub-component-container": "_data-table-body-sub-component-container_1vs3r_20",
4162
- "data-table-body-sub-component-content": "_data-table-body-sub-component-content_1vs3r_25",
4163
- "data-table-body-cell-group": "_data-table-body-cell-group_1vs3r_31"
4161
+ "data-table-body-row": "_data-table-body-row_3jgem_2",
4162
+ "data-table-body-sub-component-row": "_data-table-body-sub-component-row_3jgem_22",
4163
+ "data-table-body-sub-component-container": "_data-table-body-sub-component-container_3jgem_26",
4164
+ "data-table-body-sub-component-content": "_data-table-body-sub-component-content_3jgem_31",
4165
+ "data-table-body-cell-group": "_data-table-body-cell-group_3jgem_37"
4164
4166
  };
4165
4167
 
4166
4168
  const DataTableBodyContent = ({
@@ -4186,10 +4188,7 @@ const DataTableBodyContent = ({
4186
4188
  {
4187
4189
  "aria-colindex": cell.column.getIndex() + 1,
4188
4190
  className: cellClasses,
4189
- style: {
4190
- minWidth: `calc(var(--a2-table-col-${cell.column.getIndex()}-size) * 1px)`,
4191
- ...getCommonPinningStyles(cell.column)
4192
- },
4191
+ style: getCommonPinningStyles(cell.column),
4193
4192
  columnId: cell.column.id,
4194
4193
  cellPosition: {
4195
4194
  rowIndex: sortedIndex + table.getHeaderGroups().length,
@@ -4214,7 +4213,7 @@ const DataTableBodyContent = ({
4214
4213
  {
4215
4214
  id: `${row.id}-sub-component`,
4216
4215
  "aria-hidden": !row.getIsExpanded(),
4217
- className: styles$8["data-table-body-row"],
4216
+ className: styles$8["data-table-body-sub-component-row"],
4218
4217
  children: /* @__PURE__ */ jsx("div", { className: styles$8["data-table-body-sub-component-container"], children: /* @__PURE__ */ jsx(Flex, { className: styles$8["data-table-body-sub-component-content"], children: row.original.subComponent }) })
4219
4218
  }
4220
4219
  )
@@ -4225,20 +4224,8 @@ function DataTableBody(props) {
4225
4224
  return /* @__PURE__ */ jsx(TableBody, { type: "data-table", ...rest, children: /* @__PURE__ */ jsx(DataTableBodyContent, { table }) });
4226
4225
  }
4227
4226
 
4228
- const getColSpanWidth = (colSpan, cellIndex) => {
4229
- let minWidth = `calc(var(--a2-table-col-${cellIndex}-size) * 1px)`;
4230
- if (colSpan > 1) {
4231
- const varsToAdd = Array.from(
4232
- { length: colSpan },
4233
- (_, i) => `var(--a2-table-col-${cellIndex + i}-size)`
4234
- );
4235
- minWidth = `calc((${varsToAdd.join(" + ")}) * 1px)`;
4236
- }
4237
- return minWidth;
4238
- };
4239
-
4240
4227
  const styles$7 = {
4241
- "table-footer": "_table-footer_hq77m_2"};
4228
+ "table-footer": "_table-footer_9bv2z_2"};
4242
4229
 
4243
4230
  function TableFooter({ type, children, ...rest }) {
4244
4231
  const classes = cx(styles$7["table-footer"], rest.className);
@@ -4310,8 +4297,8 @@ function DataTableFooterCell(props) {
4310
4297
  }
4311
4298
 
4312
4299
  const styles$6 = {
4313
- "data-table-footer-row": "_data-table-footer-row_1nmuq_2",
4314
- "data-table-footer": "_data-table-footer_1nmuq_2"
4300
+ "data-table-footer-row": "_data-table-footer-row_13en8_2",
4301
+ "data-table-footer": "_data-table-footer_13en8_2"
4315
4302
  };
4316
4303
 
4317
4304
  function DefaultTableFooterRows({
@@ -4374,10 +4361,7 @@ function DefaultTableFooterRows({
4374
4361
  DataTableFooterCell,
4375
4362
  {
4376
4363
  className: getCommonPinningClasses(header.column),
4377
- style: {
4378
- minWidth: `calc(var(--a2-table-col-${header.column.getIndex()}-size) * 1px)`,
4379
- ...getCommonPinningStyles(header.column)
4380
- },
4364
+ style: getCommonPinningStyles(header.column),
4381
4365
  cellPosition: {
4382
4366
  rowIndex: rowIndex + table.getHeaderGroups().length + table.getRowModel().rows.length,
4383
4367
  columnIndex: header.column.getIndex()
@@ -4415,16 +4399,13 @@ function CustomTableFooterRows({
4415
4399
  )
4416
4400
  }).map((_, index) => {
4417
4401
  const footer = footerRow[index] ?? { content: "", colSpan: 1 };
4418
- const minWidth = getColSpanWidth(
4419
- footer.colSpan,
4420
- currentColumnIndex
4421
- );
4402
+ const gridColumn = footer.colSpan > 1 ? `span ${footer.colSpan}` : void 0;
4422
4403
  const cell = /* @__PURE__ */ jsx(
4423
4404
  DataTableFooterCell,
4424
4405
  {
4425
4406
  colSpan: footer.colSpan,
4426
4407
  style: {
4427
- minWidth
4408
+ gridColumn
4428
4409
  },
4429
4410
  cellPosition: {
4430
4411
  rowIndex: rowIndex + table.getHeaderGroups().length + table.getRowModel().rows.length,
@@ -5083,7 +5064,7 @@ const SvgArrowUpward = (props) => /* @__PURE__ */ React.createElement("svg", { x
5083
5064
  const SvgArrowDownward = (props) => /* @__PURE__ */ React.createElement("svg", { xmlns: "http://www.w3.org/2000/svg", width: "1em", height: "1em", viewBox: "0 0 24 24", ...props }, /* @__PURE__ */ React.createElement("path", { d: "M11 5v11.17l-4.88-4.88c-.39-.39-1.03-.39-1.42 0a.996.996 0 0 0 0 1.41l6.59 6.59c.39.39 1.02.39 1.41 0l6.59-6.59a.996.996 0 1 0-1.41-1.41L13 16.17V5c0-.55-.45-1-1-1s-1 .45-1 1z" }));
5084
5065
 
5085
5066
  const styles$5 = {
5086
- "table-header": "_table-header_1pe38_2"
5067
+ "table-header": "_table-header_y7cb1_2"
5087
5068
  };
5088
5069
 
5089
5070
  function TableHeader({ type, children, ...rest }) {
@@ -5133,16 +5114,27 @@ const TableHeaderCell = forwardRef(
5133
5114
  );
5134
5115
  TableHeaderCell.displayName = "TableHeaderCell";
5135
5116
 
5136
- function DataTableHeaderCell(props) {
5117
+ function DataTableHeaderCellInner(props, forwardedRef) {
5137
5118
  const { cellPosition, children, header, className, ...rest } = props;
5138
- const headerCellRef = useRef(null);
5119
+ const internalRef = useRef(null);
5120
+ const setRefs = useCallback(
5121
+ (element) => {
5122
+ internalRef.current = element;
5123
+ if (typeof forwardedRef === "function") {
5124
+ forwardedRef(element);
5125
+ } else if (forwardedRef) {
5126
+ forwardedRef.current = element;
5127
+ }
5128
+ },
5129
+ [forwardedRef]
5130
+ );
5139
5131
  const tableContext = useDataTableContext();
5140
5132
  useEffect(() => {
5141
- if (headerCellRef.current) {
5133
+ if (internalRef.current) {
5142
5134
  const sortingHandler = header.column.columnDef.enableSorting ? header.column.getToggleSortingHandler() : void 0;
5143
5135
  tableContext.registerCell({
5144
5136
  position: cellPosition,
5145
- element: headerCellRef.current,
5137
+ element: internalRef.current,
5146
5138
  isHeader: true,
5147
5139
  sortingHandler
5148
5140
  });
@@ -5178,7 +5170,7 @@ function DataTableHeaderCell(props) {
5178
5170
  {
5179
5171
  type: "data-table",
5180
5172
  ...rest,
5181
- ref: headerCellRef,
5173
+ ref: setRefs,
5182
5174
  tabIndex,
5183
5175
  onFocus: handleFocus,
5184
5176
  onClick: handleClick,
@@ -5195,6 +5187,7 @@ function DataTableHeaderCell(props) {
5195
5187
  }
5196
5188
  );
5197
5189
  }
5190
+ const DataTableHeaderCell = forwardRef(DataTableHeaderCellInner);
5198
5191
 
5199
5192
  const resizing = "_resizing_spw3o_35";
5200
5193
  const styles$4 = {
@@ -5202,18 +5195,25 @@ const styles$4 = {
5202
5195
  resizing: resizing
5203
5196
  };
5204
5197
 
5205
- function ResizeHandle({ header }) {
5198
+ function ResizeHandle({
5199
+ header,
5200
+ onResizeStart
5201
+ }) {
5206
5202
  const classes = cx(styles$4["resize-handle"], {
5207
5203
  [styles$4["resizing"]]: header.column.getIsResizing()
5208
5204
  });
5205
+ const handleResizeStart = (e) => {
5206
+ onResizeStart?.();
5207
+ header.getResizeHandler()(e);
5208
+ };
5209
5209
  return /* @__PURE__ */ jsx(
5210
5210
  "div",
5211
5211
  {
5212
5212
  role: "button",
5213
5213
  tabIndex: -1,
5214
5214
  onDoubleClick: () => header.column.resetSize(),
5215
- onMouseDown: header.getResizeHandler(),
5216
- onTouchStart: header.getResizeHandler(),
5215
+ onMouseDown: handleResizeStart,
5216
+ onTouchStart: handleResizeStart,
5217
5217
  className: classes,
5218
5218
  "aria-label": "Resize column",
5219
5219
  "aria-pressed": header.column.getIsResizing(),
@@ -5223,11 +5223,27 @@ function ResizeHandle({ header }) {
5223
5223
  }
5224
5224
 
5225
5225
  const styles$3 = {
5226
- "data-table-header-row": "_data-table-header-row_blxpc_17"
5226
+ "data-table-header-row": "_data-table-header-row_6qs0u_17"
5227
5227
  };
5228
5228
 
5229
5229
  function DataTableHeader({ table }) {
5230
5230
  const { setHoveredColumnId } = useDataTableContext();
5231
+ const cellRefs = useRef(/* @__PURE__ */ new Map());
5232
+ const createResizeStartHandler = useCallback(
5233
+ (columnId) => () => {
5234
+ const cellElement = cellRefs.current.get(columnId);
5235
+ if (cellElement) {
5236
+ const actualWidth = cellElement.getBoundingClientRect().width;
5237
+ flushSync(() => {
5238
+ table.setColumnSizing((prev) => ({
5239
+ ...prev,
5240
+ [columnId]: actualWidth
5241
+ }));
5242
+ });
5243
+ }
5244
+ },
5245
+ [table]
5246
+ );
5231
5247
  return /* @__PURE__ */ jsx(TableHeader, { type: "data-table", children: table.getHeaderGroups().map((headerGroup, index) => /* @__PURE__ */ jsx(
5232
5248
  "div",
5233
5249
  {
@@ -5238,17 +5254,21 @@ function DataTableHeader({ table }) {
5238
5254
  const isLastInParentGroup = header.column.parent ? header.column.parent.getLeafColumns().slice(-1)[0] === header.column : false;
5239
5255
  const isInternalSelectColumn = header.column.id === "a2-table-internal-select";
5240
5256
  const isInternalExpandColumn = header.column.id === "a2-table-internal-expand";
5241
- const minWidth = getColSpanWidth(
5242
- header.colSpan,
5243
- header.column.columns?.length > 0 ? header.column.columns[0].getIndex() : header.column.getIndex()
5244
- );
5257
+ const gridColumn = header.colSpan > 1 ? `span ${header.colSpan}` : void 0;
5245
5258
  return /* @__PURE__ */ jsx(
5246
5259
  DataTableHeaderCell,
5247
5260
  {
5248
5261
  header: header.getContext(),
5262
+ ref: (el) => {
5263
+ if (el) {
5264
+ cellRefs.current.set(header.column.id, el);
5265
+ } else {
5266
+ cellRefs.current.delete(header.column.id);
5267
+ }
5268
+ },
5249
5269
  className: getCommonPinningClasses(header.column),
5250
5270
  style: {
5251
- minWidth,
5271
+ gridColumn,
5252
5272
  ...getCommonPinningStyles(header.column)
5253
5273
  },
5254
5274
  "aria-colspan": header.colSpan,
@@ -5282,7 +5302,15 @@ function DataTableHeader({ table }) {
5282
5302
  desc: /* @__PURE__ */ jsx(Icon, { svg: SvgArrowDownward, size: "small" })
5283
5303
  }[header.column.getIsSorted()] ?? null
5284
5304
  ] }),
5285
- header.column.columnDef.enableResizing && /* @__PURE__ */ jsx(ResizeHandle, { header })
5305
+ header.column.columnDef.enableResizing && /* @__PURE__ */ jsx(
5306
+ ResizeHandle,
5307
+ {
5308
+ header,
5309
+ onResizeStart: createResizeStartHandler(
5310
+ header.column.id
5311
+ )
5312
+ }
5313
+ )
5286
5314
  ]
5287
5315
  }
5288
5316
  )
@@ -5575,6 +5603,8 @@ function DataTable(props) {
5575
5603
  tableColumns.unshift({
5576
5604
  id: "a2-table-internal-expand",
5577
5605
  size: 44,
5606
+ maxSize: 44,
5607
+ minSize: 44,
5578
5608
  header: ({ table: table2 }) => {
5579
5609
  return /* @__PURE__ */ jsx(Flex, { grow: 1, justifyContent: "center", children: /* @__PURE__ */ jsx(
5580
5610
  Button,
@@ -5626,6 +5656,8 @@ function DataTable(props) {
5626
5656
  tableColumns.unshift({
5627
5657
  id: "a2-table-internal-select",
5628
5658
  size: 44,
5659
+ maxSize: 44,
5660
+ minSize: 44,
5629
5661
  header: ({ table: table2 }) => /* @__PURE__ */ jsx(Flex, { grow: 1, justifyContent: "center", children: /* @__PURE__ */ jsx(
5630
5662
  Checkbox,
5631
5663
  {
@@ -5723,6 +5755,25 @@ function DataTable(props) {
5723
5755
  );
5724
5756
  const cssVars = useMemo(() => {
5725
5757
  const vars = {};
5758
+ const leafHeaders = headers.filter(
5759
+ (header) => header.subHeaders?.length === 0
5760
+ );
5761
+ const allHaveMaxWidth = leafHeaders.every(
5762
+ (header) => header.column.columnDef.maxSize != null
5763
+ );
5764
+ const gridColumns = leafHeaders.map((header) => {
5765
+ const columnId = header.column.id;
5766
+ const hasBeenResized = columnId in columnSizing;
5767
+ const currentSize = header.column.getSize();
5768
+ if (hasBeenResized) {
5769
+ return `${currentSize}px`;
5770
+ }
5771
+ const minSize = header.column.columnDef.minSize ?? currentSize;
5772
+ const maxSize = header.column.columnDef.maxSize;
5773
+ return `minmax(${minSize}px, ${maxSize ? `${maxSize}px` : "1fr"})`;
5774
+ }).join(" ");
5775
+ vars["--a2-grid-template-columns"] = gridColumns;
5776
+ vars["--a2-table-width"] = allHaveMaxWidth ? "max-content" : "100%";
5726
5777
  for (let i = 0; i < headers.length; i++) {
5727
5778
  const header = headers[i];
5728
5779
  vars[`--a2-table-col-${header.column.getIndex()}-size`] = header.column.getSize();
@@ -5736,7 +5787,10 @@ function DataTable(props) {
5736
5787
  DataTableContainer,
5737
5788
  {
5738
5789
  ...rest,
5739
- style: styleCombined,
5790
+ style: {
5791
+ ...styleCombined,
5792
+ width: cssVars["--a2-table-width"]
5793
+ },
5740
5794
  background,
5741
5795
  className: pagination ? styles["container-with-pagination"] : void 0,
5742
5796
  children: [
@@ -5811,4 +5865,4 @@ function DataTable(props) {
5811
5865
  }
5812
5866
 
5813
5867
  export { DataTable as D, chipsFormatter as a, currencyFormatter as b, createColumnHelper$1 as c, percentFormatter as p };
5814
- //# sourceMappingURL=DataTable-CUFa7cQK.js.map
5868
+ //# sourceMappingURL=DataTable-DQ9FFuV8.js.map