@infinite-table/infinite-react 4.0.0 → 4.1.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.
package/index.dev.mjs CHANGED
@@ -1176,9 +1176,10 @@ var useOnScroll = (domRef, onScroll) => {
1176
1176
  };
1177
1177
 
1178
1178
  // src/components/VirtualScrollContainer/VirtualScrollContainer.css.ts
1179
- var ScrollableCls = { true: "VirtualScrollContainer_getOverflowFor_true__1ueijco1", false: "VirtualScrollContainer_getOverflowFor_false__1ueijco2", visible: "VirtualScrollContainer_getOverflowFor_visible__1ueijco3", auto: "VirtualScrollContainer_getOverflowFor_auto__1ueijco4", hidden: "VirtualScrollContainer_getOverflowFor_hidden__1ueijco5" };
1180
- var ScrollableHorizontalCls = { true: "VirtualScrollContainer_getOverflowFor_true__1ueijco6", false: "VirtualScrollContainer_getOverflowFor_false__1ueijco7", visible: "VirtualScrollContainer_getOverflowFor_visible__1ueijco8", auto: "VirtualScrollContainer_getOverflowFor_auto__1ueijco9", hidden: "VirtualScrollContainer_getOverflowFor_hidden__1ueijcoa" };
1181
- var ScrollableVerticalCls = { true: "VirtualScrollContainer_getOverflowFor_true__1ueijcob", false: "VirtualScrollContainer_getOverflowFor_false__1ueijcoc", visible: "VirtualScrollContainer_getOverflowFor_visible__1ueijcod", auto: "VirtualScrollContainer_getOverflowFor_auto__1ueijcoe", hidden: "VirtualScrollContainer_getOverflowFor_hidden__1ueijcof" };
1179
+ var ScrollableCls = { true: "VirtualScrollContainer_getOverflowFor_true__1ueijco2", false: "VirtualScrollContainer_getOverflowFor_false__1ueijco3", visible: "VirtualScrollContainer_getOverflowFor_visible__1ueijco4", auto: "VirtualScrollContainer_getOverflowFor_auto__1ueijco5", hidden: "VirtualScrollContainer_getOverflowFor_hidden__1ueijco6" };
1180
+ var ScrollableHorizontalCls = { true: "VirtualScrollContainer_getOverflowFor_true__1ueijco7", false: "VirtualScrollContainer_getOverflowFor_false__1ueijco8", visible: "VirtualScrollContainer_getOverflowFor_visible__1ueijco9", auto: "VirtualScrollContainer_getOverflowFor_auto__1ueijcoa", hidden: "VirtualScrollContainer_getOverflowFor_hidden__1ueijcob" };
1181
+ var ScrollableVerticalCls = { true: "VirtualScrollContainer_getOverflowFor_true__1ueijcoc", false: "VirtualScrollContainer_getOverflowFor_false__1ueijcod", visible: "VirtualScrollContainer_getOverflowFor_visible__1ueijcoe", auto: "VirtualScrollContainer_getOverflowFor_auto__1ueijcof", hidden: "VirtualScrollContainer_getOverflowFor_hidden__1ueijcog" };
1182
+ var VirtualScrollContainerChildToScrollCls = "VirtualScrollContainer_VirtualScrollContainerChildToScrollCls__1ueijco1";
1182
1183
  var VirtualScrollContainerCls = "VirtualScrollContainer_VirtualScrollContainerCls__1ueijco0 utilities_boxSizingBorderBox__16lm1iw0";
1183
1184
 
1184
1185
  // src/components/VirtualScrollContainer/getScrollableClassName.ts
@@ -1387,7 +1388,7 @@ var internalProps = {
1387
1388
  };
1388
1389
 
1389
1390
  // src/components/InfiniteTable/vars.css.ts
1390
- var ThemeVars = { color: { accent: "var(--infinite-accent-color)", error: "var(--infinite-error-color)", color: "var(--infinite-color)" }, spacing: { "0": "var(--infinite-space-0)", "1": "var(--infinite-space-1)", "2": "var(--infinite-space-2)", "3": "var(--infinite-space-3)", "4": "var(--infinite-space-4)", "5": "var(--infinite-space-5)", "6": "var(--infinite-space-6)", "7": "var(--infinite-space-7)", "8": "var(--infinite-space-8)", "9": "var(--infinite-space-9)", "10": "var(--infinite-space-10)" }, fontSize: { "0": "var(--infinite-font-size-0)", "1": "var(--infinite-font-size-1)", "2": "var(--infinite-font-size-2)", "3": "var(--infinite-font-size-3)", "4": "var(--infinite-font-size-4)", "5": "var(--infinite-font-size-5)", "6": "var(--infinite-font-size-6)", "7": "var(--infinite-font-size-7)" }, fontFamily: "var(--infinite-font-family)", minHeight: "var(--infinite-min-height)", borderRadius: "var(--infinite-border-radius)", background: "var(--infinite-background)", iconSize: "var(--infinite-icon-size)", components: { LoadMask: { padding: "var(--infinite-load-mask-padding)", color: "var(--infinite-load-mask-color)", textBackground: "var(--infinite-load-mask-text-background)", overlayBackground: "var(--infinite-load-mask-overlay-background)", overlayOpacity: "var(--infinite-load-mask-overlay-opacity)", borderRadius: "var(--infinite-load-mask-border-radius)" }, Header: { background: "var(--infinite-header-background)", color: "var(--infinite-header-color)", columnHeaderHeight: "var(--infinite-column-header-height)" }, HeaderCell: { background: "var(--infinite-header-cell-background)", hoverBackground: "var(--infinite-header-cell-hover-background)", border: "var(--infinite-header-cell-border)", padding: "var(--infinite-header-cell-padding)", paddingX: "var(--infinite-header-cell-padding-x)", paddingY: "var(--infinite-header-cell-padding-y)", iconSize: "var(--infinite-header-cell-icon-size)", menuIconLineWidth: "var(--infinite-header-cell-menu-icon-line-width)", sortIconMargin: "var(--infinite-header-cell-sort-icon-margin)", borderRight: "var(--infinite-header-cell-border-right)", resizeHandleActiveAreaWidth: "var(--infinite-resize-handle-active-area-width)", resizeHandleWidth: "var(--infinite-resize-handle-width)", resizeHandleHoverBackground: "var(--infinite-resize-handle-hover-background)", resizeHandleConstrainedHoverBackground: "var(--infinite-resize-handle-constrained-hover-background)", filterOperatorPaddingX: "var(--infinite-filter-operator-padding-x)", filterEditorPaddingX: "var(--infinite-filter-editor-padding-x)", filterEditorMarginX: "var(--infinite-filter-editor-margin-x)", filterOperatorPaddingY: "var(--infinite-filter-operator-padding-y)", filterEditorPaddingY: "var(--infinite-filter-editor-padding-y)", filterEditorMarginY: "var(--infinite-filter-editor-margin-y)", filterEditorBackground: "var(--infinite-filter-editor-background)", filterEditorBorder: "var(--infinite-filter-editor-border)", filterEditorFocusBorderColor: "var(--infinite-filter-editor-focus-border-color)", filterEditorBorderRadius: "var(--infinite-filter-editor-border-radius)", filterEditorColor: "var(--infinite-filter-editor-color)" }, Cell: { padding: "var(--infinite-cell-padding)", borderWidth: "var(--infinite-cell-border-width)", border: "var(--infinite-cell-border)", borderLeft: "var(--infinite-cell-border-left)", borderRight: "var(--infinite-cell-border-right)", borderTop: "var(--infinite-cell-border-top)", borderInvisible: "var(--infinite-cell-border-invisible)", borderRadius: "var(--infinite-cell-border-radius)", reorderEffectDuration: "var(--infinite-column-reorder-effect-duration)", pinnedBorder: "var(--infinite-pinned-cell-border)", color: "var(--infinite-cell-color)", selectedBackground: "var(--infinite-selected-cell-background)", selectedBackgroundDefault: "var(--infinite-selected-cell-background-default)", selectedBackgroundAlpha: "var(--infinite-selected-cell-background-alpha)", selectedBackgroundAlphaWhenTableUnfocused: "var(--infinite-selected-cell-background-alpha--table-unfocused)", selectedBorderColor: "var(--infinite-selected-cell-border-color)", selectedBorderWidth: "var(--infinite-selected-cell-border-width)", selectedBorderStyle: "var(--infinite-selected-cell-border-style)", selectedBorder: "var(--infinite-selected-cell-border)", activeBackgroundAlpha: "var(--infinite-active-cell-background-alpha)", activeBackgroundAlphaWhenTableUnfocused: "var(--infinite-active-cell-background-alpha--table-unfocused)", activeBackground: "var(--infinite-active-cell-background)", activeBackgroundDefault: "var(--infinite-active-cell-background-default)", activeBorderColor: "var(--infinite-active-cell-border-color)", activeBorderWidth: "var(--infinite-active-cell-border-width)", activeBorderStyle: "var(--infinite-active-cell-border-style)", activeBorder: "var(--infinite-active-cell-border)" }, SelectionCheckBox: { marginInline: "var(--infinite-selection-checkbox-margin-inline)" }, Menu: { background: "var(--infinite-menu-background)", color: "var(--infinite-menu-color)", separatorColor: "var(--infinite-menu-separator-color)", padding: "var(--infinite-menu-padding)", cellPaddingVertical: "var(--infinite-menu-cell-padding-vertical)", cellPaddingHorizontal: "var(--infinite-menu-cell-padding-horizontal)", cellMarginVertical: "var(--infinite-menu-cell-margin-vertical)", itemDisabledBackground: "var(--infinite-menu-item-disabled-background)", itemActiveBackground: "var(--infinite-menu-item-active-background)", itemActiveOpacity: "var(--infinite-menu-item-active-opacity)", itemPressedOpacity: "var(--infinite-menu-item-pressed-opacity)", itemPressedBackground: "var(--infinite-menu-item-pressed-background)", itemDisabledOpacity: "var(--infinite-menu-item-disabled-opacity)", borderRadius: "var(--infinite-menu-border-radius)", shadowColor: "var(--infinite-menu-shadow-color)" }, RowDetail: { background: "var(--infinite-rowdetail-background)", padding: "var(--infinite-rowdetail-padding)", gridHeight: "var(--infinite-rowdetail-grid-height)" }, Row: { background: "var(--infinite-row-background)", oddBackground: "var(--infinite-row-odd-background)", selectedBackground: "var(--infinite-row-selected-background)", activeBackground: "var(--infinite-active-row-background)", activeBorderColor: "var(--infinite-active-row-border-color)", activeBorderWidth: "var(--infinite-active-row-border-width)", activeBorderStyle: "var(--infinite-active-row-border-style)", activeBorder: "var(--infinite-active-row-border)", activeBackgroundAlpha: "var(--infinite-active-row-background-alpha)", activeBackgroundAlphaWhenTableUnfocused: "var(--infinite-active-row-background-alpha--table-unfocused)", hoverBackground: "var(--infinite-row-hover-background)", selectedHoverBackground: "var(--infinite-row-selected-hover-background)", groupRowBackground: "var(--infinite-group-row-background)", groupRowColumnNesting: "var(--infinite-group-row-column-nesting)", groupNesting: "var(--infinite-dont-override-group-row-nesting-length)", pointerEventsWhileScrolling: "var(--infinite-row-pointer-events-while-scrolling)" }, ColumnCell: { background: "var(--infinite-column-cell-bg-dont-override)" } } };
1391
+ var ThemeVars = { color: { accent: "var(--infinite-accent-color)", error: "var(--infinite-error-color)", color: "var(--infinite-color)" }, spacing: { "0": "var(--infinite-space-0)", "1": "var(--infinite-space-1)", "2": "var(--infinite-space-2)", "3": "var(--infinite-space-3)", "4": "var(--infinite-space-4)", "5": "var(--infinite-space-5)", "6": "var(--infinite-space-6)", "7": "var(--infinite-space-7)", "8": "var(--infinite-space-8)", "9": "var(--infinite-space-9)", "10": "var(--infinite-space-10)" }, fontSize: { "0": "var(--infinite-font-size-0)", "1": "var(--infinite-font-size-1)", "2": "var(--infinite-font-size-2)", "3": "var(--infinite-font-size-3)", "4": "var(--infinite-font-size-4)", "5": "var(--infinite-font-size-5)", "6": "var(--infinite-font-size-6)", "7": "var(--infinite-font-size-7)" }, fontFamily: "var(--infinite-font-family)", minHeight: "var(--infinite-min-height)", borderRadius: "var(--infinite-border-radius)", background: "var(--infinite-background)", iconSize: "var(--infinite-icon-size)", runtime: { bodyWidth: "var(--infinite-runtime-body-content-width)", totalVisibleColumnsWidth: "var(--infinite-runtime-total-visible-columns-width)", visibleColumnsCount: "var(--infinite-runtime-visible-columns-count)" }, components: { LoadMask: { padding: "var(--infinite-load-mask-padding)", color: "var(--infinite-load-mask-color)", textBackground: "var(--infinite-load-mask-text-background)", overlayBackground: "var(--infinite-load-mask-overlay-background)", overlayOpacity: "var(--infinite-load-mask-overlay-opacity)", borderRadius: "var(--infinite-load-mask-border-radius)" }, Header: { background: "var(--infinite-header-background)", color: "var(--infinite-header-color)", columnHeaderHeight: "var(--infinite-column-header-height)" }, HeaderCell: { background: "var(--infinite-header-cell-background)", hoverBackground: "var(--infinite-header-cell-hover-background)", border: "var(--infinite-header-cell-border)", padding: "var(--infinite-header-cell-padding)", paddingX: "var(--infinite-header-cell-padding-x)", paddingY: "var(--infinite-header-cell-padding-y)", iconSize: "var(--infinite-header-cell-icon-size)", menuIconLineWidth: "var(--infinite-header-cell-menu-icon-line-width)", sortIconMargin: "var(--infinite-header-cell-sort-icon-margin)", borderRight: "var(--infinite-header-cell-border-right)", resizeHandleActiveAreaWidth: "var(--infinite-resize-handle-active-area-width)", resizeHandleWidth: "var(--infinite-resize-handle-width)", resizeHandleHoverBackground: "var(--infinite-resize-handle-hover-background)", resizeHandleConstrainedHoverBackground: "var(--infinite-resize-handle-constrained-hover-background)", filterOperatorPaddingX: "var(--infinite-filter-operator-padding-x)", filterEditorPaddingX: "var(--infinite-filter-editor-padding-x)", filterEditorMarginX: "var(--infinite-filter-editor-margin-x)", filterOperatorPaddingY: "var(--infinite-filter-operator-padding-y)", filterEditorPaddingY: "var(--infinite-filter-editor-padding-y)", filterEditorMarginY: "var(--infinite-filter-editor-margin-y)", filterEditorBackground: "var(--infinite-filter-editor-background)", filterEditorBorder: "var(--infinite-filter-editor-border)", filterEditorFocusBorderColor: "var(--infinite-filter-editor-focus-border-color)", filterEditorBorderRadius: "var(--infinite-filter-editor-border-radius)", filterEditorColor: "var(--infinite-filter-editor-color)" }, ActiveCellIndicator: { inset: "var(--infinite-active-cell-indicator-inset)" }, Cell: { padding: "var(--infinite-cell-padding)", borderWidth: "var(--infinite-cell-border-width)", border: "var(--infinite-cell-border)", borderLeft: "var(--infinite-cell-border-left)", borderRight: "var(--infinite-cell-border-right)", borderTop: "var(--infinite-cell-border-top)", borderInvisible: "var(--infinite-cell-border-invisible)", borderRadius: "var(--infinite-cell-border-radius)", reorderEffectDuration: "var(--infinite-column-reorder-effect-duration)", pinnedBorder: "var(--infinite-pinned-cell-border)", color: "var(--infinite-cell-color)", selectedBackground: "var(--infinite-selected-cell-background)", selectedBackgroundDefault: "var(--infinite-selected-cell-background-default)", selectedBackgroundAlpha: "var(--infinite-selected-cell-background-alpha)", selectedBackgroundAlphaWhenTableUnfocused: "var(--infinite-selected-cell-background-alpha--table-unfocused)", selectedBorderColor: "var(--infinite-selected-cell-border-color)", selectedBorderWidth: "var(--infinite-selected-cell-border-width)", selectedBorderStyle: "var(--infinite-selected-cell-border-style)", selectedBorder: "var(--infinite-selected-cell-border)", activeBackgroundAlpha: "var(--infinite-active-cell-background-alpha)", activeBackgroundAlphaWhenTableUnfocused: "var(--infinite-active-cell-background-alpha--table-unfocused)", activeBackground: "var(--infinite-active-cell-background)", activeBackgroundDefault: "var(--infinite-active-cell-background-default)", activeBorderColor: "var(--infinite-active-cell-border-color)", activeBorderWidth: "var(--infinite-active-cell-border-width)", activeBorderStyle: "var(--infinite-active-cell-border-style)", activeBorder: "var(--infinite-active-cell-border)" }, SelectionCheckBox: { marginInline: "var(--infinite-selection-checkbox-margin-inline)" }, Menu: { background: "var(--infinite-menu-background)", color: "var(--infinite-menu-color)", separatorColor: "var(--infinite-menu-separator-color)", padding: "var(--infinite-menu-padding)", cellPaddingVertical: "var(--infinite-menu-cell-padding-vertical)", cellPaddingHorizontal: "var(--infinite-menu-cell-padding-horizontal)", cellMarginVertical: "var(--infinite-menu-cell-margin-vertical)", itemDisabledBackground: "var(--infinite-menu-item-disabled-background)", itemActiveBackground: "var(--infinite-menu-item-active-background)", itemActiveOpacity: "var(--infinite-menu-item-active-opacity)", itemPressedOpacity: "var(--infinite-menu-item-pressed-opacity)", itemPressedBackground: "var(--infinite-menu-item-pressed-background)", itemDisabledOpacity: "var(--infinite-menu-item-disabled-opacity)", borderRadius: "var(--infinite-menu-border-radius)", shadowColor: "var(--infinite-menu-shadow-color)" }, RowDetail: { background: "var(--infinite-rowdetail-background)", padding: "var(--infinite-rowdetail-padding)", gridHeight: "var(--infinite-rowdetail-grid-height)" }, Row: { background: "var(--infinite-row-background)", oddBackground: "var(--infinite-row-odd-background)", selectedBackground: "var(--infinite-row-selected-background)", activeBackground: "var(--infinite-active-row-background)", activeBorderColor: "var(--infinite-active-row-border-color)", activeBorderWidth: "var(--infinite-active-row-border-width)", activeBorderStyle: "var(--infinite-active-row-border-style)", activeBorder: "var(--infinite-active-row-border)", activeBackgroundAlpha: "var(--infinite-active-row-background-alpha)", activeBackgroundAlphaWhenTableUnfocused: "var(--infinite-active-row-background-alpha--table-unfocused)", hoverBackground: "var(--infinite-row-hover-background)", selectedHoverBackground: "var(--infinite-row-selected-hover-background)", groupRowBackground: "var(--infinite-group-row-background)", groupRowColumnNesting: "var(--infinite-group-row-column-nesting)", groupNesting: "var(--infinite-dont-override-group-row-nesting-length)", pointerEventsWhileScrolling: "var(--infinite-row-pointer-events-while-scrolling)" }, ColumnCell: { background: "var(--infinite-column-cell-bg-dont-override)" } } };
1391
1392
  var columnHeaderHeightName = "column-header-height";
1392
1393
 
1393
1394
  // src/components/InfiniteTable/utils/infiniteDOMUtils.ts
@@ -4096,8 +4097,8 @@ var useRerender = () => {
4096
4097
  };
4097
4098
 
4098
4099
  // src/components/InfiniteTable/components/ActiveCellIndicator.css.ts
4099
- var ActiveCellIndicatorCls = { visible: "ActiveCellIndicator_ActiveCellIndicatorCls_visible__nxbq1c2 ActiveCellIndicator_ActiveCellIndicator__nxbq1c1 utilities_pointerEvents_none__16lm1iwl utilities_position_sticky__16lm1iw4 utilities_left_0__16lm1iw1e utilities_top_0__16lm1iw1c", hidden: "ActiveCellIndicator_ActiveCellIndicatorCls_hidden__nxbq1c3 ActiveCellIndicator_ActiveCellIndicator__nxbq1c1 utilities_pointerEvents_none__16lm1iwl utilities_position_sticky__16lm1iw4 utilities_left_0__16lm1iw1e utilities_top_0__16lm1iw1c" };
4100
- var ActiveIndicatorWrapperCls = "utilities_pointerEvents_none__16lm1iwl utilities_position_sticky__16lm1iw4 utilities_left_0__16lm1iw1e utilities_top_0__16lm1iw1c utilities_height_0__16lm1iw18 utilities_zIndex_1000000__16lm1iwu";
4100
+ var ActiveCellIndicatorCls = { visible: "ActiveCellIndicator_ActiveCellIndicatorCls_visible__nxbq1c2 ActiveCellIndicator_ActiveCellIndicator__nxbq1c1 utilities_pointerEvents_none__16lm1iwl utilities_position_absolute__16lm1iw2", hidden: "ActiveCellIndicator_ActiveCellIndicatorCls_hidden__nxbq1c3 ActiveCellIndicator_ActiveCellIndicator__nxbq1c1 utilities_pointerEvents_none__16lm1iwl utilities_position_absolute__16lm1iw2" };
4101
+ var ActiveIndicatorWrapperCls = "ActiveCellIndicator_ActiveIndicatorWrapperCls__nxbq1c0 utilities_pointerEvents_none__16lm1iwl utilities_position_sticky__16lm1iw4 utilities_left_0__16lm1iw1e utilities_top_0__16lm1iw1c utilities_height_0__16lm1iw18 utilities_zIndex_1000000__16lm1iwu";
4101
4102
 
4102
4103
  // src/components/InfiniteTable/components/ActiveRowIndicator.css.ts
4103
4104
  var ActiveRowIndicatorCls = { visible: "ActiveRowIndicator_ActiveRowIndicatorCls_visible__j26lrx1 ActiveRowIndicator_ActiveRowIndicator__j26lrx0 utilities_pointerEvents_none__16lm1iwl utilities_position_sticky__16lm1iw4 utilities_width_100%__16lm1iw1b utilities_top_0__16lm1iw1c utilities_left_0__16lm1iw1e", hidden: "ActiveRowIndicator_ActiveRowIndicatorCls_hidden__j26lrx2 ActiveRowIndicator_ActiveRowIndicator__j26lrx0 utilities_pointerEvents_none__16lm1iwl utilities_position_sticky__16lm1iw4 utilities_width_100%__16lm1iw1b utilities_top_0__16lm1iw1c utilities_left_0__16lm1iw1e" };
@@ -4167,13 +4168,6 @@ import { useEffect as useEffect6, useLayoutEffect as useLayoutEffect5, useRef as
4167
4168
  var { rootClassName: rootClassName4 } = internalProps;
4168
4169
  var baseCls2 = `${rootClassName4}-ActiveCellIndicator`;
4169
4170
  var columnZIndexAtIndex2 = stripVar(InternalVars.columnZIndexAtIndex);
4170
- var ActiveStyle2 = {
4171
- [stripVar(InternalVars.activeCellOffsetX)]: InternalVars.activeCellColOffset,
4172
- [stripVar(InternalVars.activeCellOffsetY)]: InternalVars.activeCellRowOffset,
4173
- transform: `translate3d(${InternalVars.activeCellOffsetX}, ${InternalVars.activeCellOffsetY}, 0px)`,
4174
- width: InternalVars.activeCellColWidth,
4175
- height: InternalVars.activeCellRowHeight
4176
- };
4177
4171
  var reposition = (brain, activeCellIndex, rowHeight, domRef) => {
4178
4172
  if (activeCellIndex == null) {
4179
4173
  return;
@@ -4212,6 +4206,7 @@ var ActiveCellIndicatorFn = (props) => {
4212
4206
  "div",
4213
4207
  {
4214
4208
  className: ActiveIndicatorWrapperCls,
4209
+ ref: domRef,
4215
4210
  "data-name": "active-cell",
4216
4211
  style: active ? {
4217
4212
  zIndex: `var(${columnZIndexAtIndex2}-${props.activeCellIndex[1]})`
@@ -4220,10 +4215,8 @@ var ActiveCellIndicatorFn = (props) => {
4220
4215
  /* @__PURE__ */ React12.createElement(
4221
4216
  "div",
4222
4217
  {
4223
- ref: domRef,
4224
4218
  "data-name": "active-cell-indicator",
4225
- className: `${baseCls2} ${active ? ActiveCellIndicatorCls.visible : ActiveCellIndicatorCls.hidden}`,
4226
- style: active ? ActiveStyle2 : void 0
4219
+ className: `${baseCls2} ${active ? ActiveCellIndicatorCls.visible : ActiveCellIndicatorCls.hidden}`
4227
4220
  }
4228
4221
  )
4229
4222
  )
@@ -4254,6 +4247,10 @@ function useMatrixBrain(brain, brainOptions, fixedCellsInfo) {
4254
4247
  colspan: brainOptions.colspan
4255
4248
  });
4256
4249
  }
4250
+ var CHILD_TO_SCROLL_CLS = join(
4251
+ scrollTransformTargetCls,
4252
+ VirtualScrollContainerChildToScrollCls
4253
+ );
4257
4254
  function HeadlessTable(props) {
4258
4255
  const _a = props, {
4259
4256
  brain,
@@ -4332,7 +4329,7 @@ function HeadlessTable(props) {
4332
4329
  "div",
4333
4330
  {
4334
4331
  ref: domRef,
4335
- className: scrollTransformTargetCls,
4332
+ className: CHILD_TO_SCROLL_CLS,
4336
4333
  "data-name": "scroll-transform-target"
4337
4334
  },
4338
4335
  /* @__PURE__ */ React13.createElement(
@@ -4768,7 +4765,7 @@ function useComponentState() {
4768
4765
  return React14.useContext(Context);
4769
4766
  }
4770
4767
 
4771
- // src/components/InfiniteTable/components/InfiniteTableBody/InfiniteTableBody.tsx
4768
+ // src/components/InfiniteTable/components/InfiniteTableFooter/InfiniteTableFooter.tsx
4772
4769
  import * as React15 from "react";
4773
4770
 
4774
4771
  // src/components/InfiniteTable/hooks/useInternalProps.ts
@@ -4795,49 +4792,25 @@ var userSelect = { none: "utilities_userSelect_none__16lm1iw17" };
4795
4792
  var visibility = { visible: "utilities_visibility_visible__16lm1iw20", hidden: "utilities_visibility_hidden__16lm1iw21" };
4796
4793
  var zIndex = { "1": "utilities_zIndex_1__16lm1iwo", "10": "utilities_zIndex_10__16lm1iwp", "100": "utilities_zIndex_100__16lm1iwq", "1000": "utilities_zIndex_1000__16lm1iwr", "10000": "utilities_zIndex_10000__16lm1iws", "100000": "utilities_zIndex_100000__16lm1iwt", "1000000": "utilities_zIndex_1000000__16lm1iwu", "10000000": "utilities_zIndex_10000000__16lm1iwv", "1k": "utilities_zIndex_1k__16lm1iww", "10k": "utilities_zIndex_10k__16lm1iwx", "100k": "utilities_zIndex_100k__16lm1iwy" };
4797
4794
 
4798
- // src/components/InfiniteTable/components/InfiniteTableBody/InfiniteTableBody.tsx
4799
- var InfiniteTableBody = React15.forwardRef(function InfiniteTableBody2(props, ref) {
4795
+ // src/components/InfiniteTable/components/InfiniteTableFooter/InfiniteTableFooter.tsx
4796
+ function InfiniteTableFooter(props) {
4800
4797
  const { rootClassName: rootClassName12 } = useInternalProps();
4801
4798
  return /* @__PURE__ */ React15.createElement(
4802
4799
  "div",
4803
- __spreadProps(__spreadValues({
4804
- ref
4805
- }, props), {
4800
+ __spreadProps(__spreadValues({}, props), {
4806
4801
  className: join(
4807
- `${rootClassName12}Body`,
4802
+ `${rootClassName12}Footer`,
4808
4803
  position.relative,
4809
- flex["1"],
4810
- transformTranslateZero,
4804
+ display.flex,
4805
+ flexFlow.row,
4811
4806
  props.className
4812
4807
  )
4813
4808
  })
4814
4809
  );
4815
- });
4816
-
4817
- // src/components/InfiniteTable/components/InfiniteTableFooter/InfiniteTableFooter.tsx
4818
- import * as React16 from "react";
4819
- var InfiniteTableFooter = React16.forwardRef(
4820
- function InfiniteTableFooter2(props, ref) {
4821
- const { rootClassName: rootClassName12 } = useInternalProps();
4822
- return /* @__PURE__ */ React16.createElement(
4823
- "div",
4824
- __spreadProps(__spreadValues({
4825
- ref
4826
- }, props), {
4827
- className: join(
4828
- `${rootClassName12}Footer`,
4829
- position.relative,
4830
- display.flex,
4831
- flexFlow.row,
4832
- props.className
4833
- )
4834
- })
4835
- );
4836
- }
4837
- );
4810
+ }
4838
4811
 
4839
4812
  // src/components/InfiniteTable/components/InfiniteTableHeader/InfiniteTableHeaderCell.tsx
4840
- import * as React43 from "react";
4813
+ import * as React42 from "react";
4841
4814
  import { useCallback as useCallback14, useContext as useContext7, useEffect as useEffect15, useRef as useRef16 } from "react";
4842
4815
  import { createPortal } from "react-dom";
4843
4816
 
@@ -4851,7 +4824,7 @@ function keyMirror(obj) {
4851
4824
  }
4852
4825
 
4853
4826
  // src/components/InfiniteTable/components/icons/Icon.tsx
4854
- import * as React17 from "react";
4827
+ import * as React16 from "react";
4855
4828
  var Icon = (props) => {
4856
4829
  var _a;
4857
4830
  const size = (_a = props.size) != null ? _a : `var(--infinite-icon-size)`;
@@ -4863,69 +4836,69 @@ var Icon = (props) => {
4863
4836
  }, props.style);
4864
4837
  return (
4865
4838
  //@ts-ignore
4866
- /* @__PURE__ */ React17.createElement("svg", __spreadProps(__spreadValues({ viewBox: "0 0 24 24" }, props), { style: style2 }), props.children)
4839
+ /* @__PURE__ */ React16.createElement("svg", __spreadProps(__spreadValues({ viewBox: "0 0 24 24" }, props), { style: style2 }), props.children)
4867
4840
  );
4868
4841
  };
4869
4842
 
4870
4843
  // src/components/InfiniteTable/components/icons/IncludesOperatorIcon.tsx
4871
- import * as React18 from "react";
4844
+ import * as React17 from "react";
4872
4845
  var IncludesOperatorIcon = (props) => {
4873
- return /* @__PURE__ */ React18.createElement(Icon, __spreadValues({}, props), /* @__PURE__ */ React18.createElement("path", { d: "M5,4V7H10.5V19H13.5V7H19V4H5Z" }));
4846
+ return /* @__PURE__ */ React17.createElement(Icon, __spreadValues({}, props), /* @__PURE__ */ React17.createElement("path", { d: "M5,4V7H10.5V19H13.5V7H19V4H5Z" }));
4874
4847
  };
4875
4848
 
4876
4849
  // src/components/InfiniteTable/components/icons/EndsWithOperatorIcon.tsx
4877
- import * as React19 from "react";
4850
+ import * as React18 from "react";
4878
4851
  var EndsWithOperatorIcon = (props) => {
4879
- return /* @__PURE__ */ React19.createElement(Icon, __spreadValues({}, props), /* @__PURE__ */ React19.createElement("path", { d: "M11.14 4L6.43 16H8.36L9.32 13.43H14.67L15.64 16H17.57L12.86 4M12 6.29L14.03 11.71H9.96M20 14V18H2V20H22V14Z" }));
4852
+ return /* @__PURE__ */ React18.createElement(Icon, __spreadValues({}, props), /* @__PURE__ */ React18.createElement("path", { d: "M11.14 4L6.43 16H8.36L9.32 13.43H14.67L15.64 16H17.57L12.86 4M12 6.29L14.03 11.71H9.96M20 14V18H2V20H22V14Z" }));
4880
4853
  };
4881
4854
 
4882
4855
  // src/components/InfiniteTable/components/icons/EqualOperatorIcon.tsx
4883
- import * as React20 from "react";
4856
+ import * as React19 from "react";
4884
4857
  var EqualOperatorIcon = (props) => {
4885
- return /* @__PURE__ */ React20.createElement(Icon, __spreadValues({}, props), /* @__PURE__ */ React20.createElement("path", { d: "M19,10H5V8H19V10M19,16H5V14H19V16Z" }));
4858
+ return /* @__PURE__ */ React19.createElement(Icon, __spreadValues({}, props), /* @__PURE__ */ React19.createElement("path", { d: "M19,10H5V8H19V10M19,16H5V14H19V16Z" }));
4886
4859
  };
4887
4860
 
4888
4861
  // src/components/InfiniteTable/components/icons/GTEOperatorIcon.tsx
4889
- import * as React21 from "react";
4862
+ import * as React20 from "react";
4890
4863
  var GTEOperatorIcon = (props) => {
4891
- return /* @__PURE__ */ React21.createElement(Icon, __spreadValues({}, props), /* @__PURE__ */ React21.createElement("path", { d: "M6.5,2.27L20,10.14L6.5,18L5.5,16.27L16.03,10.14L5.5,4L6.5,2.27M20,20V22H5V20H20Z" }));
4864
+ return /* @__PURE__ */ React20.createElement(Icon, __spreadValues({}, props), /* @__PURE__ */ React20.createElement("path", { d: "M6.5,2.27L20,10.14L6.5,18L5.5,16.27L16.03,10.14L5.5,4L6.5,2.27M20,20V22H5V20H20Z" }));
4892
4865
  };
4893
4866
 
4894
4867
  // src/components/InfiniteTable/components/icons/GTOperatorIcon.tsx
4895
- import * as React22 from "react";
4868
+ import * as React21 from "react";
4896
4869
  var GTOperatorIcon = (props) => {
4897
- return /* @__PURE__ */ React22.createElement(Icon, __spreadValues({}, props), /* @__PURE__ */ React22.createElement("path", { d: "M5.5,4.14L4.5,5.86L15,12L4.5,18.14L5.5,19.86L19,12L5.5,4.14Z" }));
4870
+ return /* @__PURE__ */ React21.createElement(Icon, __spreadValues({}, props), /* @__PURE__ */ React21.createElement("path", { d: "M5.5,4.14L4.5,5.86L15,12L4.5,18.14L5.5,19.86L19,12L5.5,4.14Z" }));
4898
4871
  };
4899
4872
 
4900
4873
  // src/components/InfiniteTable/components/icons/LTEOperatorIcon.tsx
4901
- import * as React23 from "react";
4874
+ import * as React22 from "react";
4902
4875
  var LTEOperatorIcon = (props) => {
4903
- return /* @__PURE__ */ React23.createElement(Icon, __spreadValues({}, props), /* @__PURE__ */ React23.createElement("path", { d: "M18.5,2.27L5,10.14L18.5,18L19.5,16.27L8.97,10.14L19.5,4L18.5,2.27M5,20V22H20V20H5Z" }));
4876
+ return /* @__PURE__ */ React22.createElement(Icon, __spreadValues({}, props), /* @__PURE__ */ React22.createElement("path", { d: "M18.5,2.27L5,10.14L18.5,18L19.5,16.27L8.97,10.14L19.5,4L18.5,2.27M5,20V22H20V20H5Z" }));
4904
4877
  };
4905
4878
 
4906
4879
  // src/components/InfiniteTable/components/icons/LTOperatorIcon.tsx
4907
- import * as React24 from "react";
4880
+ import * as React23 from "react";
4908
4881
  var LTOperatorIcon = (props) => {
4909
- return /* @__PURE__ */ React24.createElement(Icon, __spreadValues({}, props), /* @__PURE__ */ React24.createElement("path", { d: "M18.5,4.14L19.5,5.86L8.97,12L19.5,18.14L18.5,19.86L5,12L18.5,4.14Z" }));
4882
+ return /* @__PURE__ */ React23.createElement(Icon, __spreadValues({}, props), /* @__PURE__ */ React23.createElement("path", { d: "M18.5,4.14L19.5,5.86L8.97,12L19.5,18.14L18.5,19.86L5,12L18.5,4.14Z" }));
4910
4883
  };
4911
4884
 
4912
4885
  // src/components/InfiniteTable/components/icons/NotEqualOperatorIcon.tsx
4913
- import * as React25 from "react";
4886
+ import * as React24 from "react";
4914
4887
  var NotEqualOperatorIcon = (props) => {
4915
- return /* @__PURE__ */ React25.createElement(Icon, __spreadValues({}, props), /* @__PURE__ */ React25.createElement("path", { d: "M21,10H9V8H21V10M21,16H9V14H21V16M4,5H6V16H4V5M6,18V20H4V18H6Z" }));
4888
+ return /* @__PURE__ */ React24.createElement(Icon, __spreadValues({}, props), /* @__PURE__ */ React24.createElement("path", { d: "M21,10H9V8H21V10M21,16H9V14H21V16M4,5H6V16H4V5M6,18V20H4V18H6Z" }));
4916
4889
  };
4917
4890
 
4918
4891
  // src/components/InfiniteTable/components/icons/StartsWithOperatorIcon.tsx
4919
- import * as React26 from "react";
4892
+ import * as React25 from "react";
4920
4893
  var StartsWithOperatorIcon = (props) => {
4921
- return /* @__PURE__ */ React26.createElement(Icon, __spreadValues({}, props), /* @__PURE__ */ React26.createElement("path", { d: "M11.14 4L6.43 16H8.36L9.32 13.43H14.67L15.64 16H17.57L12.86 4M12 6.29L14.03 11.71H9.96M4 18V15H2V20H22V18Z" }));
4894
+ return /* @__PURE__ */ React25.createElement(Icon, __spreadValues({}, props), /* @__PURE__ */ React25.createElement("path", { d: "M11.14 4L6.43 16H8.36L9.32 13.43H14.67L15.64 16H17.57L12.86 4M12 6.29L14.03 11.71H9.96M4 18V15H2V20H22V18Z" }));
4922
4895
  };
4923
4896
 
4924
4897
  // src/components/InfiniteTable/components/FilterEditors.tsx
4925
- import * as React30 from "react";
4898
+ import * as React29 from "react";
4926
4899
 
4927
4900
  // src/components/InfiniteTable/components/InfiniteTableHeader/InfiniteTableColumnHeaderFilter.tsx
4928
- import * as React29 from "react";
4901
+ import * as React28 from "react";
4929
4902
  import { useEffect as useEffect11, useState as useState6 } from "react";
4930
4903
 
4931
4904
  // src/components/InfiniteTable/hooks/useInfiniteTable.ts
@@ -4958,7 +4931,7 @@ var useInfiniteTableState = () => {
4958
4931
  };
4959
4932
 
4960
4933
  // src/components/InfiniteTable/components/icons/FilterIcon.tsx
4961
- import * as React27 from "react";
4934
+ import * as React26 from "react";
4962
4935
  import { useEffect as useEffect10, useLayoutEffect as useLayoutEffect8, useState as useState5 } from "react";
4963
4936
 
4964
4937
  // ../node_modules/@vanilla-extract/recipes/dist/createRuntimeFn-62c9670f.esm.js
@@ -5132,7 +5105,7 @@ function FilterIcon(props) {
5132
5105
  return null;
5133
5106
  }
5134
5107
  const indexStyle = {};
5135
- return /* @__PURE__ */ React27.createElement(
5108
+ return /* @__PURE__ */ React26.createElement(
5136
5109
  "div",
5137
5110
  {
5138
5111
  "data-name": "filter-icon",
@@ -5144,7 +5117,7 @@ function FilterIcon(props) {
5144
5117
  `${InfiniteTableIconClassName}-sort`
5145
5118
  )
5146
5119
  },
5147
- showIndex ? /* @__PURE__ */ React27.createElement(
5120
+ showIndex ? /* @__PURE__ */ React26.createElement(
5148
5121
  "div",
5149
5122
  {
5150
5123
  "data-name": "index",
@@ -5153,9 +5126,9 @@ function FilterIcon(props) {
5153
5126
  },
5154
5127
  index
5155
5128
  ) : null,
5156
- /* @__PURE__ */ React27.createElement("div", { style: __spreadValues({ width: sizes[0] }, lineStyle) }),
5157
- /* @__PURE__ */ React27.createElement("div", { style: __spreadValues({ width: sizes[1] }, lineStyle) }),
5158
- /* @__PURE__ */ React27.createElement("div", { style: __spreadValues({ width: sizes[2] }, lineStyle) })
5129
+ /* @__PURE__ */ React26.createElement("div", { style: __spreadValues({ width: sizes[0] }, lineStyle) }),
5130
+ /* @__PURE__ */ React26.createElement("div", { style: __spreadValues({ width: sizes[1] }, lineStyle) }),
5131
+ /* @__PURE__ */ React26.createElement("div", { style: __spreadValues({ width: sizes[2] }, lineStyle) })
5159
5132
  );
5160
5133
  }
5161
5134
 
@@ -6200,10 +6173,10 @@ function getColumnLabel(colIdOrCol, context) {
6200
6173
  }
6201
6174
 
6202
6175
  // src/components/InfiniteTable/components/InfiniteTableHeader/InfiniteTableColumnHeaderFilterContext.ts
6203
- import React28 from "react";
6176
+ import React27 from "react";
6204
6177
  var InfiniteTableColumnHeaderFilterClassName = `${rootClassName2}HeaderCell__filter`;
6205
6178
  var InfiniteTableColumnHeaderFilterOperatorClassName = `${rootClassName2}HeaderCell__filterOperator`;
6206
- var InfiniteTableColumnHeaderFilterContext = React28.createContext(null);
6179
+ var InfiniteTableColumnHeaderFilterContext = React27.createContext(null);
6207
6180
 
6208
6181
  // src/components/InfiniteTable/components/InfiniteTableHeader/InfiniteTableColumnHeaderFilter.tsx
6209
6182
  var InfiniteTableColumnHeaderFilterInputClassName = `${InfiniteTableColumnHeaderFilterClassName}__input`;
@@ -6214,14 +6187,14 @@ function InfiniteTableColumnHeaderFilter(props) {
6214
6187
  const FilterEditor = props.filterEditor;
6215
6188
  const FilterOperatorSwitch = props.filterOperatorSwitch;
6216
6189
  const [focused, setFocused] = useState6(false);
6217
- const onFocus = React29.useCallback(() => {
6190
+ const onFocus = React28.useCallback(() => {
6218
6191
  setFocused(true);
6219
6192
  }, []);
6220
- const onBlur = React29.useCallback(() => {
6193
+ const onBlur = React28.useCallback(() => {
6221
6194
  setFocused(false);
6222
6195
  }, []);
6223
6196
  const active = filterOperatorMenuVisibleForColumnId === column.id || focused;
6224
- return /* @__PURE__ */ React29.createElement(
6197
+ return /* @__PURE__ */ React28.createElement(
6225
6198
  "div",
6226
6199
  {
6227
6200
  onPointerUp: stopPropagation,
@@ -6235,14 +6208,14 @@ function InfiniteTableColumnHeaderFilter(props) {
6235
6208
  )}`,
6236
6209
  style: { height: props.columnHeaderHeight }
6237
6210
  },
6238
- /* @__PURE__ */ React29.createElement(InfiniteTableColumnHeaderFilterContext.Provider, { value: props }, /* @__PURE__ */ React29.createElement(FilterOperatorSwitch, null), /* @__PURE__ */ React29.createElement(FilterEditor, null))
6211
+ /* @__PURE__ */ React28.createElement(InfiniteTableColumnHeaderFilterContext.Provider, { value: props }, /* @__PURE__ */ React28.createElement(FilterOperatorSwitch, null), /* @__PURE__ */ React28.createElement(FilterEditor, null))
6239
6212
  );
6240
6213
  }
6241
6214
  function InfiniteTableFilterOperatorSwitch() {
6242
6215
  var _a, _b;
6243
6216
  const { columnApi, disabled, operator } = useInfiniteColumnFilterEditor();
6244
6217
  const Icon2 = (_b = (_a = operator == null ? void 0 : operator.components) == null ? void 0 : _a.Icon) != null ? _b : FilterIcon;
6245
- return /* @__PURE__ */ React29.createElement(
6218
+ return /* @__PURE__ */ React28.createElement(
6246
6219
  "div",
6247
6220
  {
6248
6221
  "data-name": "filter-operator",
@@ -6260,7 +6233,7 @@ function InfiniteTableFilterOperatorSwitch() {
6260
6233
  disabled ? `${InfiniteTableColumnHeaderFilterOperatorClassName}--disabled` : ""
6261
6234
  )
6262
6235
  },
6263
- /* @__PURE__ */ React29.createElement(
6236
+ /* @__PURE__ */ React28.createElement(
6264
6237
  Icon2,
6265
6238
  {
6266
6239
  size: 20,
@@ -6272,7 +6245,7 @@ function InfiniteTableFilterOperatorSwitch() {
6272
6245
  );
6273
6246
  }
6274
6247
  function InfiniteTableColumnHeaderFilterEmpty() {
6275
- return /* @__PURE__ */ React29.createElement(
6248
+ return /* @__PURE__ */ React28.createElement(
6276
6249
  "div",
6277
6250
  {
6278
6251
  onPointerUp: stopPropagation,
@@ -6289,7 +6262,7 @@ function useInfiniteColumnFilterEditor() {
6289
6262
  const context = useInfiniteTable();
6290
6263
  const { column, columnApi } = useInfiniteHeaderCell();
6291
6264
  const columnLabel = getColumnLabel(column, context);
6292
- const filterContextValue = React29.useContext(
6265
+ const filterContextValue = React28.useContext(
6293
6266
  InfiniteTableColumnHeaderFilterContext
6294
6267
  );
6295
6268
  const { columnFilterType, filterTypes, columnFilterValue } = filterContextValue;
@@ -6297,17 +6270,17 @@ function useInfiniteColumnFilterEditor() {
6297
6270
  const [theValue, setTheValue] = useState6(
6298
6271
  (_a = columnFilterValue == null ? void 0 : columnFilterValue.filter.value) != null ? _a : ""
6299
6272
  );
6300
- const onInputChange = React29.useCallback(
6273
+ const onInputChange = React28.useCallback(
6301
6274
  (filterValue) => {
6302
6275
  setTheValue(filterValue);
6303
6276
  filterContextValue.onChange(filterValue);
6304
6277
  },
6305
6278
  [filterContextValue.onChange]
6306
6279
  );
6307
- const clearValue = React29.useCallback(() => {
6280
+ const clearValue = React28.useCallback(() => {
6308
6281
  context.api.clearColumnFilter(column.id);
6309
6282
  }, [column.id]);
6310
- const removeColumnFilter = React29.useCallback(() => {
6283
+ const removeColumnFilter = React28.useCallback(() => {
6311
6284
  context.api.removeColumnFilter(column.id);
6312
6285
  }, [column.id]);
6313
6286
  useEffect11(() => {
@@ -6350,7 +6323,7 @@ function useInfiniteColumnFilterEditor() {
6350
6323
  // src/components/InfiniteTable/components/FilterEditors.tsx
6351
6324
  function StringFilterEditor() {
6352
6325
  const { ariaLabel, value, setValue, className, disabled } = useInfiniteColumnFilterEditor();
6353
- return /* @__PURE__ */ React30.createElement(
6326
+ return /* @__PURE__ */ React29.createElement(
6354
6327
  "input",
6355
6328
  {
6356
6329
  "data-xxx": true,
@@ -6367,7 +6340,7 @@ function StringFilterEditor() {
6367
6340
  }
6368
6341
  function NumberFilterEditor() {
6369
6342
  const { ariaLabel, value, setValue, className, disabled } = useInfiniteColumnFilterEditor();
6370
- return /* @__PURE__ */ React30.createElement(
6343
+ return /* @__PURE__ */ React29.createElement(
6371
6344
  "input",
6372
6345
  {
6373
6346
  "aria-label": ariaLabel,
@@ -6608,6 +6581,17 @@ var rafFn = (fn) => {
6608
6581
  };
6609
6582
 
6610
6583
  // src/components/InfiniteTable/hooks/useDOMProps.ts
6584
+ var publicRuntimeVars = {
6585
+ bodyWidth: { name: stripVar(ThemeVars.runtime.bodyWidth), value: "" },
6586
+ totalVisibleColumnsWidth: {
6587
+ name: stripVar(ThemeVars.runtime.totalVisibleColumnsWidth),
6588
+ value: ""
6589
+ },
6590
+ visibleColumnsCount: {
6591
+ name: stripVar(ThemeVars.runtime.visibleColumnsCount),
6592
+ value: ""
6593
+ }
6594
+ };
6611
6595
  var scrollbarWidthHorizontal = stripVar(
6612
6596
  InternalVars.scrollbarWidthHorizontal
6613
6597
  );
@@ -6663,6 +6647,7 @@ function useDOMProps(initialDOMProps) {
6663
6647
  computedPinnedStartColumns,
6664
6648
  computedPinnedEndColumns,
6665
6649
  computedVisibleColumns,
6650
+ computedUnpinnedColumnsWidth,
6666
6651
  scrollbars
6667
6652
  } = computed;
6668
6653
  const prevPinnedEndCols = [];
@@ -6688,6 +6673,9 @@ function useDOMProps(initialDOMProps) {
6688
6673
  },
6689
6674
  {}
6690
6675
  );
6676
+ cssVars[publicRuntimeVars.bodyWidth.name] = `calc(${InternalVars.bodyWidth} - ${InternalVars.scrollbarWidthVertical})`;
6677
+ cssVars[publicRuntimeVars.totalVisibleColumnsWidth.name] = `${computedPinnedStartColumnsWidth + computedPinnedEndColumnsWidth + computedUnpinnedColumnsWidth}px`;
6678
+ cssVars[publicRuntimeVars.visibleColumnsCount.name] = computedVisibleColumns.length;
6691
6679
  if (activeCellIndex != null) {
6692
6680
  cssVars[activeCellColWidth] = `var(${getCSSVarNameForColWidth(
6693
6681
  activeCellIndex[1]
@@ -7427,14 +7415,14 @@ var useColumnPointerEvents = ({
7427
7415
  };
7428
7416
 
7429
7417
  // src/components/InfiniteTable/utils/RenderHookComponentForInfinite.tsx
7430
- import * as React38 from "react";
7418
+ import * as React37 from "react";
7431
7419
 
7432
7420
  // src/components/InfiniteTable/components/InfiniteTableRow/InfiniteTableColumnCell.tsx
7433
- import * as React37 from "react";
7421
+ import * as React36 from "react";
7434
7422
  import { useCallback as useCallback12, useContext as useContext6, useMemo as useMemo4 } from "react";
7435
7423
 
7436
7424
  // src/components/InfiniteTable/utils/getColumnForGroupBy.tsx
7437
- import * as React33 from "react";
7425
+ import * as React32 from "react";
7438
7426
 
7439
7427
  // src/components/DataSource/state/rowInfoStatus.ts
7440
7428
  var showLoadingIcon = (rowInfo) => {
@@ -7445,7 +7433,7 @@ var showLoadingIcon = (rowInfo) => {
7445
7433
  };
7446
7434
 
7447
7435
  // src/components/InfiniteTable/components/icons/ExpanderIcon.tsx
7448
- import * as React31 from "react";
7436
+ import * as React30 from "react";
7449
7437
  import { useState as useState8 } from "react";
7450
7438
 
7451
7439
  // src/components/InfiniteTable/components/icons/ExpanderIcon.css.ts
@@ -7466,12 +7454,12 @@ function ExpanderIcon(props) {
7466
7454
  setExpanded(!expanded);
7467
7455
  }
7468
7456
  };
7469
- React31.useEffect(() => {
7457
+ React30.useEffect(() => {
7470
7458
  if (isControlled("expanded", props)) {
7471
7459
  setExpanded(props.expanded);
7472
7460
  }
7473
7461
  }, [props.expanded]);
7474
- return /* @__PURE__ */ React31.createElement(
7462
+ return /* @__PURE__ */ React30.createElement(
7475
7463
  "svg",
7476
7464
  {
7477
7465
  "data-name": "expander-icon",
@@ -7494,19 +7482,19 @@ function ExpanderIcon(props) {
7494
7482
  `InfiniteIcon-expander--${direction === "end" ? "end" : "start"}`
7495
7483
  )
7496
7484
  },
7497
- /* @__PURE__ */ React31.createElement("path", { d: "M8.59 16.59L13.17 12 8.59 7.41 10 6l6 6-6 6-1.41-1.41z" })
7485
+ /* @__PURE__ */ React30.createElement("path", { d: "M8.59 16.59L13.17 12 8.59 7.41 10 6l6 6-6 6-1.41-1.41z" })
7498
7486
  );
7499
7487
  }
7500
7488
 
7501
7489
  // src/components/InfiniteTable/components/icons/LoadingIcon.tsx
7502
- import * as React32 from "react";
7490
+ import * as React31 from "react";
7503
7491
 
7504
7492
  // src/components/InfiniteTable/components/icons/LoadingIcon.css.ts
7505
7493
  var LoadingIconCls = "utilities_stroke_accentColor__16lm1iwb utilities_flex_none__16lm1iwn utilities_cursor_pointer__16lm1iwi";
7506
7494
 
7507
7495
  // src/components/InfiniteTable/components/icons/LoadingIcon.tsx
7508
7496
  var LoadingIcon = (props) => {
7509
- return /* @__PURE__ */ React32.createElement(
7497
+ return /* @__PURE__ */ React31.createElement(
7510
7498
  "svg",
7511
7499
  {
7512
7500
  xmlns: "http://www.w3.org/2000/svg",
@@ -7526,7 +7514,7 @@ var LoadingIcon = (props) => {
7526
7514
  "InfiniteIcon-loading"
7527
7515
  )
7528
7516
  },
7529
- /* @__PURE__ */ React32.createElement(
7517
+ /* @__PURE__ */ React31.createElement(
7530
7518
  "circle",
7531
7519
  {
7532
7520
  cx: "50",
@@ -7536,7 +7524,7 @@ var LoadingIcon = (props) => {
7536
7524
  r: "35",
7537
7525
  strokeDasharray: "164.93361431346415 56.97787143782138"
7538
7526
  },
7539
- /* @__PURE__ */ React32.createElement(
7527
+ /* @__PURE__ */ React31.createElement(
7540
7528
  "animateTransform",
7541
7529
  {
7542
7530
  attributeName: "transform",
@@ -7581,11 +7569,11 @@ function getGroupColumnRender({
7581
7569
  );
7582
7570
  if (groupRenderStrategy === "multi-column") {
7583
7571
  if (groupIndexForColumn + 1 !== groupRowInfo.groupNesting && groupRowInfo.isGroupRow) {
7584
- return selectionCheckBox ? /* @__PURE__ */ React33.createElement("div", { className }, selectionCheckBox) : null;
7572
+ return selectionCheckBox ? /* @__PURE__ */ React32.createElement("div", { className }, selectionCheckBox) : null;
7585
7573
  }
7586
7574
  } else if (groupRenderStrategy === "single-column" && !groupRowInfo.isGroupRow) {
7587
7575
  }
7588
- return /* @__PURE__ */ React33.createElement("div", { className }, groupIcon, selectionCheckBox, /* @__PURE__ */ React33.createElement("div", { className: cssEllipsisClassName }, valueToRender != null ? valueToRender : null));
7576
+ return /* @__PURE__ */ React32.createElement("div", { className }, groupIcon, selectionCheckBox, /* @__PURE__ */ React32.createElement("div", { className: cssEllipsisClassName }, valueToRender != null ? valueToRender : null));
7589
7577
  };
7590
7578
  }
7591
7579
  function getGroupColumnRenderGroupIcon({
@@ -7634,9 +7622,9 @@ function getGroupColumnRenderGroupIcon({
7634
7622
  const showExpanderIcon = pivotBy ? (((_b = groupRowInfo.groupKeys) == null ? void 0 : _b.length) || 0) < (groupBy == null ? void 0 : groupBy.length) : (((_c = groupRowInfo.groupKeys) == null ? void 0 : _c.length) || 0) <= (groupBy == null ? void 0 : groupBy.length);
7635
7623
  const isLoading = showLoadingIcon(groupRowInfo);
7636
7624
  if (isLoading) {
7637
- icon = /* @__PURE__ */ React33.createElement(LoadingIcon, null);
7625
+ icon = /* @__PURE__ */ React32.createElement(LoadingIcon, null);
7638
7626
  } else if (showExpanderIcon) {
7639
- const defaultIcon = /* @__PURE__ */ React33.createElement(
7627
+ const defaultIcon = /* @__PURE__ */ React32.createElement(
7640
7628
  ExpanderIcon,
7641
7629
  {
7642
7630
  expanded: !collapsed,
@@ -7650,7 +7638,7 @@ function getGroupColumnRenderGroupIcon({
7650
7638
  }
7651
7639
  if (initialRenderGroupIcon) {
7652
7640
  renderOptions.renderBag.groupIcon = icon;
7653
- icon = /* @__PURE__ */ React33.createElement(
7641
+ icon = /* @__PURE__ */ React32.createElement(
7654
7642
  RenderCellHookComponent,
7655
7643
  {
7656
7644
  render: initialRenderGroupIcon,
@@ -7730,7 +7718,7 @@ var ColumnCellSelectionIndicatorRecipe = createRuntimeFn({ defaultClassName: "ce
7730
7718
  var SelectionCheckboxCls = "cell_SelectionCheckboxCls__1eexc2a7";
7731
7719
 
7732
7720
  // src/components/InfiniteTable/components/CheckBox.tsx
7733
- import * as React34 from "react";
7721
+ import * as React33 from "react";
7734
7722
  import { useEffect as useEffect13, useRef as useRef12 } from "react";
7735
7723
 
7736
7724
  // src/components/InfiniteTable/components/CheckBox.css.ts
@@ -7769,7 +7757,7 @@ function InfiniteCheckBoxComponent() {
7769
7757
  useEffect13(() => {
7770
7758
  inputRef.current.indeterminate = checked == null;
7771
7759
  }, [checked]);
7772
- return /* @__PURE__ */ React34.createElement(
7760
+ return /* @__PURE__ */ React33.createElement(
7773
7761
  "input",
7774
7762
  __spreadProps(__spreadValues({}, domProps), {
7775
7763
  className: join("InfiniteCheckBox", CheckBoxCls, domProps == null ? void 0 : domProps.className),
@@ -7787,7 +7775,7 @@ function InfiniteCheckBoxComponent() {
7787
7775
  );
7788
7776
  }
7789
7777
  function InfiniteCheckBox(props) {
7790
- return /* @__PURE__ */ React34.createElement(InfiniteCheckBoxRoot, __spreadValues({}, props), /* @__PURE__ */ React34.createElement(InfiniteCheckBoxComponent, null));
7778
+ return /* @__PURE__ */ React33.createElement(InfiniteCheckBoxRoot, __spreadValues({}, props), /* @__PURE__ */ React33.createElement(InfiniteCheckBoxComponent, null));
7791
7779
  }
7792
7780
 
7793
7781
  // src/components/InfiniteTable/components/InfiniteTableRow/columnRendering.tsx
@@ -8098,7 +8086,7 @@ function getFormattedValueContextForCell(options) {
8098
8086
  }
8099
8087
 
8100
8088
  // src/components/InfiniteTable/components/InfiniteTableRow/InfiniteTableCell.tsx
8101
- import * as React35 from "react";
8089
+ import * as React34 from "react";
8102
8090
  var { rootClassName: rootClassName5 } = internalProps;
8103
8091
  var InfiniteTableCellClassName = `${rootClassName5}Cell`;
8104
8092
  var InfiniteTableCellContentClassName = `${rootClassName5}Cell_content`;
@@ -8157,7 +8145,7 @@ function InfiniteTableCellFn(props) {
8157
8145
  // ? `${InfiniteTableCellClassName}--shifting ${CellClsVariants.shifting}`
8158
8146
  // : '',
8159
8147
  ),
8160
- children: /* @__PURE__ */ React35.createElement(React35.Fragment, null, beforeChildren, /* @__PURE__ */ React35.createElement(
8148
+ children: /* @__PURE__ */ React34.createElement(React34.Fragment, null, beforeChildren, /* @__PURE__ */ React34.createElement(
8161
8149
  "div",
8162
8150
  {
8163
8151
  className: join(
@@ -8175,21 +8163,21 @@ function InfiniteTableCellFn(props) {
8175
8163
  }
8176
8164
  const RenderComponent = cellType === "body" ? (_b = column.components) == null ? void 0 : _b.ColumnCell : (_c = column.components) == null ? void 0 : _c.HeaderCell;
8177
8165
  if (RenderComponent) {
8178
- return /* @__PURE__ */ React35.createElement(RenderComponent, __spreadValues({}, finalDOMProps));
8166
+ return /* @__PURE__ */ React34.createElement(RenderComponent, __spreadValues({}, finalDOMProps));
8179
8167
  }
8180
- return /* @__PURE__ */ React35.createElement("div", __spreadProps(__spreadValues({}, finalDOMProps), { ref: domRef }));
8168
+ return /* @__PURE__ */ React34.createElement("div", __spreadProps(__spreadValues({}, finalDOMProps), { ref: domRef }));
8181
8169
  }
8182
- var InfiniteTableCell = React35.memo(
8170
+ var InfiniteTableCell = React34.memo(
8183
8171
  InfiniteTableCellFn
8184
8172
  );
8185
8173
 
8186
8174
  // src/components/InfiniteTable/components/InfiniteTableRow/InfiniteTableColumnEditor.tsx
8187
- import * as React36 from "react";
8175
+ import * as React35 from "react";
8188
8176
  import { useCallback as useCallback10, useRef as useRef13 } from "react";
8189
8177
  function InfiniteTableColumnEditor() {
8190
8178
  const { initialValue, setValue, confirmEdit, cancelEdit, readOnly } = useInfiniteColumnEditor();
8191
8179
  const domRef = useRef13();
8192
- const refCallback = React36.useCallback((node) => {
8180
+ const refCallback = React35.useCallback((node) => {
8193
8181
  domRef.current = node;
8194
8182
  if (node) {
8195
8183
  node.focus();
@@ -8205,7 +8193,7 @@ function InfiniteTableColumnEditor() {
8205
8193
  event.stopPropagation();
8206
8194
  }
8207
8195
  }, []);
8208
- return /* @__PURE__ */ React36.createElement(React36.Fragment, null, /* @__PURE__ */ React36.createElement(
8196
+ return /* @__PURE__ */ React35.createElement(React35.Fragment, null, /* @__PURE__ */ React35.createElement(
8209
8197
  "input",
8210
8198
  {
8211
8199
  readOnly,
@@ -8225,11 +8213,11 @@ function InfiniteTableColumnEditor() {
8225
8213
  // src/components/InfiniteTable/components/InfiniteTableRow/InfiniteTableColumnCell.tsx
8226
8214
  var { rootClassName: rootClassName6 } = internalProps;
8227
8215
  var columnZIndexAtIndex4 = stripVar(InternalVars.columnZIndexAtIndex);
8228
- var InfiniteTableColumnCellContext = React37.createContext(null);
8216
+ var InfiniteTableColumnCellContext = React36.createContext(null);
8229
8217
  var InfiniteTableColumnCellClassName = `${rootClassName6}ColumnCell`;
8230
8218
  var defaultRenderRowDetailIcon = (params) => {
8231
8219
  const { toggleCurrentRowDetails, rowDetailState } = params;
8232
- return /* @__PURE__ */ React37.createElement(
8220
+ return /* @__PURE__ */ React36.createElement(
8233
8221
  ExpanderIcon,
8234
8222
  {
8235
8223
  style: {
@@ -8250,7 +8238,7 @@ var defaultRenderSelectionCheckBox = (params) => {
8250
8238
  } = params;
8251
8239
  if (rowInfo.isGroupRow && !column.groupByForColumn) {
8252
8240
  }
8253
- return /* @__PURE__ */ React37.createElement(
8241
+ return /* @__PURE__ */ React36.createElement(
8254
8242
  InfiniteCheckBox,
8255
8243
  {
8256
8244
  domProps: {
@@ -8302,7 +8290,7 @@ function InfiniteTableColumnCellFn(props) {
8302
8290
  showZebraRows
8303
8291
  } = props;
8304
8292
  if (!column) {
8305
- return /* @__PURE__ */ React37.createElement("div", { ref: domRef }, "no column");
8293
+ return /* @__PURE__ */ React36.createElement("div", { ref: domRef }, "no column");
8306
8294
  }
8307
8295
  const { rowSelected } = rowInfo;
8308
8296
  const {
@@ -8349,7 +8337,7 @@ function InfiniteTableColumnCellFn(props) {
8349
8337
  } = colRenderingParams;
8350
8338
  const { align: align2, verticalAlign } = renderParams;
8351
8339
  const renderParam = renderParams;
8352
- const renderParamRef = React37.useRef(renderParam);
8340
+ const renderParamRef = React36.useRef(renderParam);
8353
8341
  const onClick = useCallback12(
8354
8342
  (event) => {
8355
8343
  const colIndex = column.computedVisibleIndex;
@@ -8403,7 +8391,7 @@ function InfiniteTableColumnCellFn(props) {
8403
8391
  [rowInfo]
8404
8392
  );
8405
8393
  const EditorComponent = (_b = (_a = column.components) == null ? void 0 : _a.Editor) != null ? _b : InfiniteTableColumnEditor;
8406
- const editor = inEdit ? /* @__PURE__ */ React37.createElement(CellEditorContextComponent, { contextValue: renderParam }, /* @__PURE__ */ React37.createElement(EditorComponent, null)) : null;
8394
+ const editor = inEdit ? /* @__PURE__ */ React36.createElement(CellEditorContextComponent, { contextValue: renderParam }, /* @__PURE__ */ React36.createElement(EditorComponent, null)) : null;
8407
8395
  const renderChildren = useCallback12(
8408
8396
  once(() => {
8409
8397
  if (hidden) {
@@ -8413,7 +8401,7 @@ function InfiniteTableColumnCellFn(props) {
8413
8401
  return null;
8414
8402
  }
8415
8403
  if (renderFunctions.renderGroupIcon) {
8416
- renderParam.renderBag.groupIcon = /* @__PURE__ */ React37.createElement(
8404
+ renderParam.renderBag.groupIcon = /* @__PURE__ */ React36.createElement(
8417
8405
  RenderCellHookComponent,
8418
8406
  {
8419
8407
  render: renderFunctions.renderGroupIcon,
@@ -8424,7 +8412,7 @@ function InfiniteTableColumnCellFn(props) {
8424
8412
  );
8425
8413
  }
8426
8414
  if (renderFunctions.renderSelectionCheckBox && selectionMode == "multi-row") {
8427
- renderParam.renderBag.selectionCheckBox = /* @__PURE__ */ React37.createElement(
8415
+ renderParam.renderBag.selectionCheckBox = /* @__PURE__ */ React36.createElement(
8428
8416
  RenderCellHookComponent,
8429
8417
  {
8430
8418
  render: defaultRenderSelectionCheckBox,
@@ -8432,7 +8420,7 @@ function InfiniteTableColumnCellFn(props) {
8432
8420
  }
8433
8421
  );
8434
8422
  if (renderFunctions.renderSelectionCheckBox !== true) {
8435
- renderParam.renderBag.selectionCheckBox = /* @__PURE__ */ React37.createElement(
8423
+ renderParam.renderBag.selectionCheckBox = /* @__PURE__ */ React36.createElement(
8436
8424
  RenderCellHookComponent,
8437
8425
  {
8438
8426
  render: renderFunctions.renderSelectionCheckBox,
@@ -8444,7 +8432,7 @@ function InfiniteTableColumnCellFn(props) {
8444
8432
  }
8445
8433
  }
8446
8434
  if (renderFunctions.renderRowDetailIcon) {
8447
- renderParam.renderBag.rowDetailsIcon = /* @__PURE__ */ React37.createElement(
8435
+ renderParam.renderBag.rowDetailsIcon = /* @__PURE__ */ React36.createElement(
8448
8436
  RenderCellHookComponent,
8449
8437
  {
8450
8438
  render: defaultRenderRowDetailIcon,
@@ -8454,7 +8442,7 @@ function InfiniteTableColumnCellFn(props) {
8454
8442
  }
8455
8443
  );
8456
8444
  if (typeof renderFunctions.renderRowDetailIcon === "function") {
8457
- renderParam.renderBag.rowDetailsIcon = /* @__PURE__ */ React37.createElement(
8445
+ renderParam.renderBag.rowDetailsIcon = /* @__PURE__ */ React36.createElement(
8458
8446
  RenderCellHookComponent,
8459
8447
  {
8460
8448
  render: renderFunctions.renderRowDetailIcon,
@@ -8466,7 +8454,7 @@ function InfiniteTableColumnCellFn(props) {
8466
8454
  }
8467
8455
  }
8468
8456
  if (renderFunctions.renderValue) {
8469
- renderParam.renderBag.value = /* @__PURE__ */ React37.createElement(
8457
+ renderParam.renderBag.value = /* @__PURE__ */ React36.createElement(
8470
8458
  RenderCellHookComponent,
8471
8459
  {
8472
8460
  render: renderFunctions.renderValue,
@@ -8477,7 +8465,7 @@ function InfiniteTableColumnCellFn(props) {
8477
8465
  );
8478
8466
  }
8479
8467
  if (rowInfo.isGroupRow && renderFunctions.renderGroupValue) {
8480
- renderParam.renderBag.value = /* @__PURE__ */ React37.createElement(
8468
+ renderParam.renderBag.value = /* @__PURE__ */ React36.createElement(
8481
8469
  RenderCellHookComponent,
8482
8470
  {
8483
8471
  render: renderFunctions.renderGroupValue,
@@ -8488,7 +8476,7 @@ function InfiniteTableColumnCellFn(props) {
8488
8476
  );
8489
8477
  }
8490
8478
  if (!rowInfo.isGroupRow && renderFunctions.renderLeafValue) {
8491
- renderParam.renderBag.value = /* @__PURE__ */ React37.createElement(
8479
+ renderParam.renderBag.value = /* @__PURE__ */ React36.createElement(
8492
8480
  RenderCellHookComponent,
8493
8481
  {
8494
8482
  render: renderFunctions.renderLeafValue,
@@ -8503,9 +8491,9 @@ function InfiniteTableColumnCellFn(props) {
8503
8491
  if (valueToRender instanceof Date) {
8504
8492
  valueToRender = valueToRender.toLocaleDateString();
8505
8493
  }
8506
- const all = /* @__PURE__ */ React37.createElement(React37.Fragment, null, align2 !== "end" ? renderParam.renderBag.groupIcon : null, align2 !== "end" ? renderParam.renderBag.rowDetailsIcon : null, align2 !== "end" ? renderParam.renderBag.selectionCheckBox : null, valueToRender, align2 === "end" ? renderParam.renderBag.selectionCheckBox : null, align2 === "end" ? renderParam.renderBag.rowDetailsIcon : null, align2 === "end" ? renderParam.renderBag.groupIcon : null);
8494
+ const all = /* @__PURE__ */ React36.createElement(React36.Fragment, null, align2 !== "end" ? renderParam.renderBag.groupIcon : null, align2 !== "end" ? renderParam.renderBag.rowDetailsIcon : null, align2 !== "end" ? renderParam.renderBag.selectionCheckBox : null, valueToRender, align2 === "end" ? renderParam.renderBag.selectionCheckBox : null, align2 === "end" ? renderParam.renderBag.rowDetailsIcon : null, align2 === "end" ? renderParam.renderBag.groupIcon : null);
8507
8495
  if (column.render) {
8508
- return /* @__PURE__ */ React37.createElement(
8496
+ return /* @__PURE__ */ React36.createElement(
8509
8497
  RenderCellHookComponent,
8510
8498
  {
8511
8499
  render: column.render,
@@ -8667,16 +8655,16 @@ function InfiniteTableColumnCellFn(props) {
8667
8655
  return (
8668
8656
  // this context is here for supporting useInfiniteColumnCell to be used
8669
8657
  // with a custom column component, specified via column.components.ColumnCell
8670
- /* @__PURE__ */ React37.createElement(
8658
+ /* @__PURE__ */ React36.createElement(
8671
8659
  ContextProvider,
8672
8660
  {
8673
8661
  value: renderParamRef.current
8674
8662
  },
8675
- /* @__PURE__ */ React37.createElement(InfiniteTableCell, __spreadValues({}, cellProps))
8663
+ /* @__PURE__ */ React36.createElement(InfiniteTableCell, __spreadValues({}, cellProps))
8676
8664
  )
8677
8665
  );
8678
8666
  }
8679
- var InfiniteTableColumnCell = React37.memo(
8667
+ var InfiniteTableColumnCell = React36.memo(
8680
8668
  InfiniteTableColumnCellFn
8681
8669
  );
8682
8670
  function useInfiniteColumnCell() {
@@ -8691,14 +8679,14 @@ function useInfiniteColumnEditor() {
8691
8679
  state: { editingValueRef, editingCell }
8692
8680
  } = useInfiniteTable();
8693
8681
  const { column, rowInfo } = useInfiniteColumnCell();
8694
- const [initialValue] = React37.useState(() => editingCell == null ? void 0 : editingCell.value);
8695
- const [currentValue, setCurrentValue] = React37.useState(initialValue);
8682
+ const [initialValue] = React36.useState(() => editingCell == null ? void 0 : editingCell.value);
8683
+ const [currentValue, setCurrentValue] = React36.useState(initialValue);
8696
8684
  const readOnly = editingCell ? !editingCell.active && !!editingCell.waiting : false;
8697
- const setValue = React37.useCallback((value) => {
8685
+ const setValue = React36.useCallback((value) => {
8698
8686
  editingValueRef.current = value;
8699
8687
  setCurrentValue(value);
8700
8688
  }, []);
8701
- React37.useLayoutEffect(() => {
8689
+ React36.useLayoutEffect(() => {
8702
8690
  editingValueRef.current = initialValue;
8703
8691
  }, []);
8704
8692
  const confirmEdit = api.confirmEdit;
@@ -8727,7 +8715,7 @@ function RenderHookComponent(props) {
8727
8715
  // src/components/InfiniteTable/utils/RenderHookComponentForInfinite.tsx
8728
8716
  function RenderCellHookComponent(props) {
8729
8717
  const ContextProvider = InfiniteTableColumnCellContext.Provider;
8730
- return /* @__PURE__ */ React38.createElement(ContextProvider, { value: props.renderParam }, /* @__PURE__ */ React38.createElement(
8718
+ return /* @__PURE__ */ React37.createElement(ContextProvider, { value: props.renderParam }, /* @__PURE__ */ React37.createElement(
8731
8719
  RenderHookComponent,
8732
8720
  {
8733
8721
  render: props.render,
@@ -8737,11 +8725,11 @@ function RenderCellHookComponent(props) {
8737
8725
  }
8738
8726
  function CellEditorContextComponent(props) {
8739
8727
  const ContextProvider = InfiniteTableColumnCellContext.Provider;
8740
- return /* @__PURE__ */ React38.createElement(ContextProvider, { value: props.contextValue }, props.children);
8728
+ return /* @__PURE__ */ React37.createElement(ContextProvider, { value: props.contextValue }, props.children);
8741
8729
  }
8742
8730
  function RenderHeaderCellHookComponent(props) {
8743
8731
  const ContextProvider = InfiniteTableHeaderCellContext.Provider;
8744
- return /* @__PURE__ */ React38.createElement(ContextProvider, { value: props.renderParam }, /* @__PURE__ */ React38.createElement(
8732
+ return /* @__PURE__ */ React37.createElement(ContextProvider, { value: props.renderParam }, /* @__PURE__ */ React37.createElement(
8745
8733
  RenderHookComponent,
8746
8734
  {
8747
8735
  render: props.render,
@@ -8751,7 +8739,7 @@ function RenderHeaderCellHookComponent(props) {
8751
8739
  }
8752
8740
 
8753
8741
  // src/components/InfiniteTable/components/icons/MenuIcon.tsx
8754
- import * as React39 from "react";
8742
+ import * as React38 from "react";
8755
8743
  var defaultLineStyle2 = {
8756
8744
  width: "100%",
8757
8745
  pointerEvents: "none"
@@ -8775,7 +8763,7 @@ function MenuIcon(props) {
8775
8763
  const lineStyle = __spreadValues(__spreadProps(__spreadValues({}, defaultLineStyle2), {
8776
8764
  borderTop: `${ThemeVars.components.HeaderCell.menuIconLineWidth} solid currentColor`
8777
8765
  }), props.lineStyle);
8778
- return /* @__PURE__ */ React39.createElement(
8766
+ return /* @__PURE__ */ React38.createElement(
8779
8767
  "div",
8780
8768
  __spreadProps(__spreadValues(__spreadProps(__spreadValues({}, domProps), {
8781
8769
  style: style2
@@ -8791,12 +8779,12 @@ function MenuIcon(props) {
8791
8779
  `${InfiniteTableIconClassName}-menu`
8792
8780
  )
8793
8781
  }),
8794
- children != null ? children : /* @__PURE__ */ React39.createElement(React39.Fragment, null, /* @__PURE__ */ React39.createElement("div", { className: lineClassName, style: lineStyle }), /* @__PURE__ */ React39.createElement("div", { className: lineClassName, style: lineStyle }), /* @__PURE__ */ React39.createElement("div", { className: lineClassName, style: lineStyle }))
8782
+ children != null ? children : /* @__PURE__ */ React38.createElement(React38.Fragment, null, /* @__PURE__ */ React38.createElement("div", { className: lineClassName, style: lineStyle }), /* @__PURE__ */ React38.createElement("div", { className: lineClassName, style: lineStyle }), /* @__PURE__ */ React38.createElement("div", { className: lineClassName, style: lineStyle }))
8795
8783
  );
8796
8784
  }
8797
8785
 
8798
8786
  // src/components/InfiniteTable/components/icons/SortIcon.tsx
8799
- import * as React40 from "react";
8787
+ import * as React39 from "react";
8800
8788
  import { useEffect as useEffect14, useState as useState10 } from "react";
8801
8789
 
8802
8790
  // src/components/InfiniteTable/components/icons/SortIcon.css.ts
@@ -8855,7 +8843,7 @@ function SortIcon(props) {
8855
8843
  if (direction === -1) {
8856
8844
  indexStyle.top = "100%";
8857
8845
  }
8858
- return /* @__PURE__ */ React40.createElement(
8846
+ return /* @__PURE__ */ React39.createElement(
8859
8847
  "div",
8860
8848
  {
8861
8849
  "data-name": "sort-icon",
@@ -8867,7 +8855,7 @@ function SortIcon(props) {
8867
8855
  `${InfiniteTableIconClassName}-sort`
8868
8856
  )
8869
8857
  },
8870
- showIndex ? /* @__PURE__ */ React40.createElement(
8858
+ showIndex ? /* @__PURE__ */ React39.createElement(
8871
8859
  "div",
8872
8860
  {
8873
8861
  "data-name": "index",
@@ -8876,25 +8864,25 @@ function SortIcon(props) {
8876
8864
  },
8877
8865
  index
8878
8866
  ) : null,
8879
- /* @__PURE__ */ React40.createElement(
8867
+ /* @__PURE__ */ React39.createElement(
8880
8868
  "div",
8881
8869
  {
8882
8870
  style: __spreadValues({ width: sizes[0] }, lineStyle),
8883
8871
  onTransitionEnd
8884
8872
  }
8885
8873
  ),
8886
- /* @__PURE__ */ React40.createElement("div", { style: __spreadValues({ width: sizes[1] }, lineStyle) }),
8887
- /* @__PURE__ */ React40.createElement("div", { style: __spreadValues({ width: sizes[2] }, lineStyle) })
8874
+ /* @__PURE__ */ React39.createElement("div", { style: __spreadValues({ width: sizes[1] }, lineStyle) }),
8875
+ /* @__PURE__ */ React39.createElement("div", { style: __spreadValues({ width: sizes[2] }, lineStyle) })
8888
8876
  );
8889
8877
  }
8890
8878
 
8891
8879
  // src/components/InfiniteTable/components/InfiniteTableHeader/useColumnResizeHandle.tsx
8892
- import * as React42 from "react";
8880
+ import * as React41 from "react";
8893
8881
  import { useCallback as useCallback13 } from "react";
8894
8882
 
8895
8883
  // src/components/InfiniteTable/components/InfiniteTableHeader/ResizeHandle/index.tsx
8896
8884
  import { useRef as useRef15, useState as useState11 } from "react";
8897
- import * as React41 from "react";
8885
+ import * as React40 from "react";
8898
8886
 
8899
8887
  // src/components/InfiniteTable/components/InfiniteTableHeader/ResizeHandle/columnResizer.ts
8900
8888
  function getColumnResizer(colIndex, {
@@ -9069,7 +9057,7 @@ function ResizeHandleFn(props) {
9069
9057
  right: computedPinned === "start" ? void 0 : 0
9070
9058
  //ThemeVars.components.HeaderCell.resizeHandleWidth,
9071
9059
  } : computedPinned === "end" && computedFirstInCategory ? { right: void 0 } : void 0;
9072
- return /* @__PURE__ */ React41.createElement(
9060
+ return /* @__PURE__ */ React40.createElement(
9073
9061
  "div",
9074
9062
  {
9075
9063
  ref: domRef,
@@ -9082,7 +9070,7 @@ function ResizeHandleFn(props) {
9082
9070
  )}`,
9083
9071
  onPointerDown
9084
9072
  },
9085
- /* @__PURE__ */ React41.createElement(
9073
+ /* @__PURE__ */ React40.createElement(
9086
9074
  "div",
9087
9075
  {
9088
9076
  style: style2,
@@ -9096,7 +9084,7 @@ function ResizeHandleFn(props) {
9096
9084
  )
9097
9085
  );
9098
9086
  }
9099
- var ResizeHandle = React41.memo(ResizeHandleFn);
9087
+ var ResizeHandle = React40.memo(ResizeHandleFn);
9100
9088
 
9101
9089
  // src/components/InfiniteTable/components/InfiniteTableHeader/useColumnResizeHandle.tsx
9102
9090
  function useColumnResizeHandle(column) {
@@ -9160,7 +9148,7 @@ function useColumnResizeHandle(column) {
9160
9148
  },
9161
9149
  [computeResizeForDiff]
9162
9150
  );
9163
- const resizeHandle = column.computedResizable ? /* @__PURE__ */ React42.createElement(
9151
+ const resizeHandle = column.computedResizable ? /* @__PURE__ */ React41.createElement(
9164
9152
  ResizeHandle,
9165
9153
  {
9166
9154
  columns: computedVisibleColumns,
@@ -9179,7 +9167,7 @@ var InfiniteTableHeaderCellClassName = `${rootClassName2}HeaderCell`;
9179
9167
  var defaultRenderSelectionCheckBox2 = (params) => {
9180
9168
  const { allRowsSelected, someRowsSelected, api } = params;
9181
9169
  const selected = allRowsSelected ? true : someRowsSelected ? null : false;
9182
- return /* @__PURE__ */ React43.createElement(
9170
+ return /* @__PURE__ */ React42.createElement(
9183
9171
  InfiniteCheckBox,
9184
9172
  {
9185
9173
  domProps: {
@@ -9196,9 +9184,9 @@ var defaultRenderSelectionCheckBox2 = (params) => {
9196
9184
  }
9197
9185
  );
9198
9186
  };
9199
- var InfiniteTableHeaderCellContext = React43.createContext(null);
9187
+ var InfiniteTableHeaderCellContext = React42.createContext(null);
9200
9188
  var columnZIndexAtIndex5 = stripVar(InternalVars.columnZIndexAtIndex);
9201
- var spacer = /* @__PURE__ */ React43.createElement("div", { className: flex["1"] });
9189
+ var spacer = /* @__PURE__ */ React42.createElement("div", { className: flex["1"] });
9202
9190
  var InfiniteHeaderCellDataAttributes = keyMirror({
9203
9191
  "data-name": ``,
9204
9192
  "data-field": ``,
@@ -9235,7 +9223,7 @@ function InfiniteTableHeaderCell(props) {
9235
9223
  const dragging = columnReorderDragColumnId === column.id;
9236
9224
  const { onResize, height, width, headerOptions, columnsMap } = props;
9237
9225
  const sortInfo = column.computedSortInfo;
9238
- let header = column.header;
9226
+ const header = column.header;
9239
9227
  const ref = useCallback14(
9240
9228
  (node) => {
9241
9229
  var _a2;
@@ -9259,7 +9247,7 @@ function InfiniteTableHeaderCell(props) {
9259
9247
  getState
9260
9248
  });
9261
9249
  const computedSortable = columnApi.isSortable();
9262
- const sortIcon = computedSortable && (column.computedSorted || alwaysShow) ? /* @__PURE__ */ React43.createElement(
9250
+ const sortIcon = computedSortable && (column.computedSorted || alwaysShow) ? /* @__PURE__ */ React42.createElement(
9263
9251
  SortIcon,
9264
9252
  {
9265
9253
  index: column.computedMultiSort ? column.computedSortIndex + 1 : void 0,
@@ -9276,7 +9264,7 @@ function InfiniteTableHeaderCell(props) {
9276
9264
  }
9277
9265
  ) : null;
9278
9266
  const filtered = column.computedFilterable && column.computedFiltered;
9279
- const filterIcon = filtered ? /* @__PURE__ */ React43.createElement(FilterIcon, null) : null;
9267
+ const filterIcon = filtered ? /* @__PURE__ */ React42.createElement(FilterIcon, null) : null;
9280
9268
  const headerCSSEllipsis = (_e = (_d = column.headerCssEllipsis) != null ? _d : column.cssEllipsis) != null ? _e : true;
9281
9269
  const menuIconProps = {
9282
9270
  reserveSpaceWhenHidden: align2 === "center",
@@ -9296,7 +9284,7 @@ function InfiniteTableHeaderCell(props) {
9296
9284
  }
9297
9285
  };
9298
9286
  const MenuIconCmp = ((_f = column.components) == null ? void 0 : _f.MenuIcon) || (components2 == null ? void 0 : components2.MenuIcon) || MenuIcon;
9299
- const menuIcon = /* @__PURE__ */ React43.createElement(MenuIconCmp, __spreadValues({}, menuIconProps));
9287
+ const menuIcon = /* @__PURE__ */ React42.createElement(MenuIconCmp, __spreadValues({}, menuIconProps));
9300
9288
  const initialRenderParam = {
9301
9289
  dragging,
9302
9290
  domRef: ref,
@@ -9327,7 +9315,7 @@ function InfiniteTableHeaderCell(props) {
9327
9315
  renderBag: __spreadValues({}, initialRenderParam.renderBag)
9328
9316
  });
9329
9317
  if (column.renderSortIcon) {
9330
- renderParam2.renderBag.sortIcon = /* @__PURE__ */ React43.createElement(
9318
+ renderParam2.renderBag.sortIcon = /* @__PURE__ */ React42.createElement(
9331
9319
  RenderHeaderCellHookComponent,
9332
9320
  {
9333
9321
  render: column.renderSortIcon,
@@ -9338,7 +9326,7 @@ function InfiniteTableHeaderCell(props) {
9338
9326
  );
9339
9327
  }
9340
9328
  if (column.renderFilterIcon) {
9341
- renderParam2.renderBag.filterIcon = /* @__PURE__ */ React43.createElement(
9329
+ renderParam2.renderBag.filterIcon = /* @__PURE__ */ React42.createElement(
9342
9330
  RenderHeaderCellHookComponent,
9343
9331
  {
9344
9332
  render: column.renderFilterIcon,
@@ -9349,7 +9337,7 @@ function InfiniteTableHeaderCell(props) {
9349
9337
  );
9350
9338
  }
9351
9339
  if (typeof column.renderMenuIcon === "function") {
9352
- renderParam2.renderBag.menuIcon = /* @__PURE__ */ React43.createElement(
9340
+ renderParam2.renderBag.menuIcon = /* @__PURE__ */ React42.createElement(
9353
9341
  RenderHeaderCellHookComponent,
9354
9342
  {
9355
9343
  render: (param) => {
@@ -9361,7 +9349,7 @@ function InfiniteTableHeaderCell(props) {
9361
9349
  if (result.type === MenuIconCmp || result.type === MenuIcon) {
9362
9350
  return result;
9363
9351
  }
9364
- return /* @__PURE__ */ React43.createElement(MenuIconCmp, __spreadValues({}, menuIconProps), result);
9352
+ return /* @__PURE__ */ React42.createElement(MenuIconCmp, __spreadValues({}, menuIconProps), result);
9365
9353
  }
9366
9354
  return null;
9367
9355
  },
@@ -9372,7 +9360,7 @@ function InfiniteTableHeaderCell(props) {
9372
9360
  );
9373
9361
  }
9374
9362
  if (column.renderSelectionCheckBox && selectionMode === "multi-row") {
9375
- renderParam2.renderBag.selectionCheckBox = /* @__PURE__ */ React43.createElement(
9363
+ renderParam2.renderBag.selectionCheckBox = /* @__PURE__ */ React42.createElement(
9376
9364
  RenderHeaderCellHookComponent,
9377
9365
  {
9378
9366
  render: defaultRenderSelectionCheckBox2,
@@ -9383,7 +9371,7 @@ function InfiniteTableHeaderCell(props) {
9383
9371
  );
9384
9372
  const renderHeaderSelectionCheckBox = (_a2 = column.renderHeaderSelectionCheckBox) != null ? _a2 : column.renderSelectionCheckBox;
9385
9373
  if (renderHeaderSelectionCheckBox && renderHeaderSelectionCheckBox !== true) {
9386
- renderParam2.renderBag.selectionCheckBox = /* @__PURE__ */ React43.createElement(
9374
+ renderParam2.renderBag.selectionCheckBox = /* @__PURE__ */ React42.createElement(
9387
9375
  RenderHeaderCellHookComponent,
9388
9376
  {
9389
9377
  render: renderHeaderSelectionCheckBox,
@@ -9395,7 +9383,7 @@ function InfiniteTableHeaderCell(props) {
9395
9383
  }
9396
9384
  }
9397
9385
  if (header instanceof Function) {
9398
- renderParam2.renderBag.header = /* @__PURE__ */ React43.createElement(
9386
+ renderParam2.renderBag.header = /* @__PURE__ */ React42.createElement(
9399
9387
  RenderHeaderCellHookComponent,
9400
9388
  {
9401
9389
  render: header,
@@ -9406,10 +9394,10 @@ function InfiniteTableHeaderCell(props) {
9406
9394
  );
9407
9395
  }
9408
9396
  const theMenuIcon = column.renderMenuIcon === false ? null : renderParam2.renderBag.menuIcon;
9409
- const headerContent = headerCSSEllipsis ? /* @__PURE__ */ React43.createElement("div", { className: cssEllipsisClassName }, renderParam2.renderBag.header) : renderParam2.renderBag.header;
9410
- const all = /* @__PURE__ */ React43.createElement(React43.Fragment, null, align2 === "center" ? spacer : null, renderParam2.renderBag.selectionCheckBox, headerContent, renderParam2.renderBag.sortIcon, renderParam2.renderBag.filterIcon, align2 === "center" ? spacer : null, align2 !== "center" ? spacer : null, theMenuIcon);
9397
+ const headerContent = headerCSSEllipsis ? /* @__PURE__ */ React42.createElement("div", { className: cssEllipsisClassName }, renderParam2.renderBag.header) : renderParam2.renderBag.header;
9398
+ const all = /* @__PURE__ */ React42.createElement(React42.Fragment, null, align2 === "center" ? spacer : null, renderParam2.renderBag.selectionCheckBox, headerContent, renderParam2.renderBag.sortIcon, renderParam2.renderBag.filterIcon, align2 === "center" ? spacer : null, align2 !== "center" ? spacer : null, theMenuIcon);
9411
9399
  if (column.renderHeader) {
9412
- return /* @__PURE__ */ React43.createElement(
9400
+ return /* @__PURE__ */ React42.createElement(
9413
9401
  RenderHeaderCellHookComponent,
9414
9402
  {
9415
9403
  render: column.renderHeader,
@@ -9446,7 +9434,7 @@ function InfiniteTableHeaderCell(props) {
9446
9434
  });
9447
9435
  let draggingProxy = null;
9448
9436
  if (dragging && proxyPosition) {
9449
- draggingProxy = /* @__PURE__ */ React43.createElement(
9437
+ draggingProxy = /* @__PURE__ */ React42.createElement(
9450
9438
  "div",
9451
9439
  {
9452
9440
  key: column.id,
@@ -9470,7 +9458,7 @@ function InfiniteTableHeaderCell(props) {
9470
9458
  verticalAlign,
9471
9459
  align: align2
9472
9460
  };
9473
- const debouncedOnFilterValueChange = React43.useMemo(() => {
9461
+ const debouncedOnFilterValueChange = React42.useMemo(() => {
9474
9462
  const fn = (filterValue) => {
9475
9463
  api.setColumnFilter(column.id, filterValue);
9476
9464
  };
@@ -9496,7 +9484,7 @@ function InfiniteTableHeaderCell(props) {
9496
9484
  "data-sort": column.computedSortedAsc ? "asc" : column.computedSortedDesc ? "desc" : "none",
9497
9485
  "data-sort-index": `${(_p = column.computedSortIndex) != null ? _p : -1}`
9498
9486
  };
9499
- return /* @__PURE__ */ React43.createElement(ContextProvider, { value: renderParam }, /* @__PURE__ */ React43.createElement(
9487
+ return /* @__PURE__ */ React42.createElement(ContextProvider, { value: renderParam }, /* @__PURE__ */ React42.createElement(
9500
9488
  InfiniteTableCell,
9501
9489
  __spreadProps(__spreadValues({
9502
9490
  domRef: ref,
@@ -9538,7 +9526,7 @@ function InfiniteTableHeaderCell(props) {
9538
9526
  CellCls
9539
9527
  ),
9540
9528
  cssEllipsis: headerCSSEllipsis,
9541
- afterChildren: /* @__PURE__ */ React43.createElement(React43.Fragment, null, showColumnFilters ? column.computedFilterable ? /* @__PURE__ */ React43.createElement(
9529
+ afterChildren: /* @__PURE__ */ React42.createElement(React42.Fragment, null, showColumnFilters ? column.computedFilterable ? /* @__PURE__ */ React42.createElement(
9542
9530
  InfiniteTableColumnHeaderFilter,
9543
9531
  {
9544
9532
  filterEditor: FilterEditor,
@@ -9551,7 +9539,7 @@ function InfiniteTableHeaderCell(props) {
9551
9539
  columnFilterValue: column.computedFilterValue,
9552
9540
  columnHeaderHeight
9553
9541
  }
9554
- ) : /* @__PURE__ */ React43.createElement(InfiniteTableColumnHeaderFilterEmpty, null) : null, resizeHandle),
9542
+ ) : /* @__PURE__ */ React42.createElement(InfiniteTableColumnHeaderFilterEmpty, null) : null, resizeHandle),
9555
9543
  renderChildren
9556
9544
  })
9557
9545
  ), draggingProxy);
@@ -9564,7 +9552,7 @@ function useInfiniteHeaderCell() {
9564
9552
  }
9565
9553
 
9566
9554
  // src/components/InfiniteTable/components/InfiniteTableHeader/InfiniteTableHeaderWrapper.tsx
9567
- import * as React48 from "react";
9555
+ import * as React47 from "react";
9568
9556
 
9569
9557
  // src/components/InfiniteTable/components/InfiniteTableHeader/buildColumnAndGroupTree.ts
9570
9558
  function buildColumnAndGroupTree(columns, columnGroups, columnGroupsDepthsMap, columnGroupsMaxDepth) {
@@ -9670,19 +9658,19 @@ function assignGroupOffsetsAndComputedWidths(items, groupOffset = 0) {
9670
9658
  }
9671
9659
 
9672
9660
  // src/components/InfiniteTable/components/InfiniteTableHeader/InfiniteTableHeader.tsx
9673
- import * as React47 from "react";
9661
+ import * as React46 from "react";
9674
9662
  import { useCallback as useCallback16, useEffect as useEffect16, useRef as useRef18 } from "react";
9675
9663
 
9676
9664
  // src/components/InfiniteTable/components/InfiniteTableHeader/InfiniteTableHeaderGroup.tsx
9677
- import * as React46 from "react";
9665
+ import * as React45 from "react";
9678
9666
 
9679
9667
  // src/components/InfiniteTable/components/InfiniteTableHeader/useColumnGroupResizeHandle.tsx
9680
- import * as React45 from "react";
9668
+ import * as React44 from "react";
9681
9669
  import { useCallback as useCallback15 } from "react";
9682
9670
 
9683
9671
  // src/components/InfiniteTable/components/InfiniteTableHeader/ResizeHandle/GroupResizeHandle.tsx
9684
9672
  import { useRef as useRef17, useState as useState12 } from "react";
9685
- import * as React44 from "react";
9673
+ import * as React43 from "react";
9686
9674
  var { rootClassName: rootClassName8 } = internalProps;
9687
9675
  var InfiniteTableHeaderCellResizeHandleCls2 = `${rootClassName8}HeaderCell_ResizeHandle`;
9688
9676
  function GroupResizeHandleFn(props) {
@@ -9751,7 +9739,7 @@ function GroupResizeHandleFn(props) {
9751
9739
  const style2 = (computedPinned === false || computedPinned === "start") && computedLastInCategory ? {
9752
9740
  right: computedPinned === "start" ? void 0 : ThemeVars.components.HeaderCell.resizeHandleWidth
9753
9741
  } : computedPinned === "end" && computedFirstInCategory ? { right: void 0 } : void 0;
9754
- return /* @__PURE__ */ React44.createElement(
9742
+ return /* @__PURE__ */ React43.createElement(
9755
9743
  "div",
9756
9744
  {
9757
9745
  ref: domRef,
@@ -9764,7 +9752,7 @@ function GroupResizeHandleFn(props) {
9764
9752
  )}`,
9765
9753
  onPointerDown
9766
9754
  },
9767
- /* @__PURE__ */ React44.createElement(
9755
+ /* @__PURE__ */ React43.createElement(
9768
9756
  "div",
9769
9757
  {
9770
9758
  style: __spreadValues(__spreadValues({}, style2), props.style),
@@ -9775,7 +9763,7 @@ function GroupResizeHandleFn(props) {
9775
9763
  )
9776
9764
  );
9777
9765
  }
9778
- var GroupResizeHandle = React44.memo(
9766
+ var GroupResizeHandle = React43.memo(
9779
9767
  GroupResizeHandleFn
9780
9768
  );
9781
9769
 
@@ -9834,7 +9822,7 @@ function useColumnGroupResizeHandle(groupColumns, config) {
9834
9822
  [computeResizeForDiff]
9835
9823
  );
9836
9824
  const groupResizable = groupColumns.some((c) => c.computedResizable);
9837
- const resizeHandle = groupResizable ? /* @__PURE__ */ React45.createElement(
9825
+ const resizeHandle = groupResizable ? /* @__PURE__ */ React44.createElement(
9838
9826
  GroupResizeHandle,
9839
9827
  {
9840
9828
  brain: bodyBrain,
@@ -9874,7 +9862,7 @@ function InfiniteTableHeaderGroup(props) {
9874
9862
  (col) => `var(${columnWidthAtIndex5}-${col.computedVisibleIndex})`
9875
9863
  ).join(" + ") + " )" : `var(${columnWidthAtIndex5}-${firstColumn.computedVisibleIndex})`;
9876
9864
  const zIndex2 = `calc(var(${columnZIndexAtIndex6}-${firstColumn.computedVisibleIndex}) + ${columnGroupsMaxDepth - columnGroup.depth})`;
9877
- return /* @__PURE__ */ React46.createElement(
9865
+ return /* @__PURE__ */ React45.createElement(
9878
9866
  "div",
9879
9867
  {
9880
9868
  ref: props.domRef,
@@ -9883,7 +9871,7 @@ function InfiniteTableHeaderGroup(props) {
9883
9871
  style: { width, height },
9884
9872
  "data-z-index": zIndex2
9885
9873
  },
9886
- /* @__PURE__ */ React46.createElement(
9874
+ /* @__PURE__ */ React45.createElement(
9887
9875
  "div",
9888
9876
  {
9889
9877
  className: join(
@@ -9965,7 +9953,7 @@ function InfiniteTableHeaderFn(props) {
9965
9953
  computedWidth: colGroupItem.computedWidth,
9966
9954
  groupOffset: colGroupItem.groupOffset
9967
9955
  });
9968
- return /* @__PURE__ */ React47.createElement(
9956
+ return /* @__PURE__ */ React46.createElement(
9969
9957
  InfiniteTableHeaderGroup,
9970
9958
  {
9971
9959
  bodyBrain,
@@ -9978,7 +9966,7 @@ function InfiniteTableHeaderFn(props) {
9978
9966
  }
9979
9967
  );
9980
9968
  }
9981
- return /* @__PURE__ */ React47.createElement(
9969
+ return /* @__PURE__ */ React46.createElement(
9982
9970
  InfiniteTableHeaderCell,
9983
9971
  {
9984
9972
  domRef: domRef2,
@@ -10002,7 +9990,7 @@ function InfiniteTableHeaderFn(props) {
10002
9990
  showColumnFilters
10003
9991
  ]
10004
9992
  );
10005
- return /* @__PURE__ */ React47.createElement("div", __spreadValues({}, domProps), /* @__PURE__ */ React47.createElement(
9993
+ return /* @__PURE__ */ React46.createElement("div", __spreadValues({}, domProps), /* @__PURE__ */ React46.createElement(
10006
9994
  RawTable,
10007
9995
  {
10008
9996
  name: "header",
@@ -10012,7 +10000,7 @@ function InfiniteTableHeaderFn(props) {
10012
10000
  }
10013
10001
  ));
10014
10002
  }
10015
- var InfiniteTableHeader = React47.memo(
10003
+ var InfiniteTableHeader = React46.memo(
10016
10004
  InfiniteTableHeaderFn
10017
10005
  );
10018
10006
 
@@ -10037,7 +10025,7 @@ function TableHeaderWrapper(props) {
10037
10025
  } = tableContextValue;
10038
10026
  const rows = !computedColumnGroups || !Object.keys(computedColumnGroups).length ? 1 : columnGroupsMaxDepth + 2;
10039
10027
  const height = rows * columnHeaderHeight + (showColumnFilters ? columnHeaderHeight : 0);
10040
- const columnAndGroupTreeInfo = React48.useMemo(() => {
10028
+ const columnAndGroupTreeInfo = React47.useMemo(() => {
10041
10029
  if (!computedColumnGroups || !Object.keys(computedColumnGroups).length) {
10042
10030
  return void 0;
10043
10031
  }
@@ -10048,7 +10036,7 @@ function TableHeaderWrapper(props) {
10048
10036
  columnGroupsMaxDepth
10049
10037
  );
10050
10038
  }, [computedVisibleColumns, computedColumnGroups, columnGroupsDepthsMap]);
10051
- const cellspan = React48.useCallback(
10039
+ const cellspan = React47.useCallback(
10052
10040
  ({ rowIndex, colIndex }) => {
10053
10041
  const column = computedVisibleColumns[colIndex];
10054
10042
  const rowspan2 = 1;
@@ -10086,15 +10074,15 @@ function TableHeaderWrapper(props) {
10086
10074
  columnGroupsDepthsMap
10087
10075
  ]
10088
10076
  );
10089
- const rowspan = React48.useCallback(
10077
+ const rowspan = React47.useCallback(
10090
10078
  ({ rowIndex, colIndex }) => cellspan({ rowIndex, colIndex }).rowspan,
10091
10079
  [cellspan]
10092
10080
  );
10093
- const colspan = React48.useCallback(
10081
+ const colspan = React47.useCallback(
10094
10082
  ({ rowIndex, colIndex }) => cellspan({ rowIndex, colIndex }).colspan,
10095
10083
  [cellspan]
10096
10084
  );
10097
- const rowHeight = React48.useCallback(
10085
+ const rowHeight = React47.useCallback(
10098
10086
  (index) => {
10099
10087
  return showColumnFilters ? index < rows - 1 ? columnHeaderHeight : 2 * columnHeaderHeight : columnHeaderHeight;
10100
10088
  },
@@ -10116,7 +10104,7 @@ function TableHeaderWrapper(props) {
10116
10104
  fixedColsStart: computedPinnedStartColumns.length
10117
10105
  }
10118
10106
  );
10119
- const header = /* @__PURE__ */ React48.createElement(
10107
+ const header = /* @__PURE__ */ React47.createElement(
10120
10108
  InfiniteTableHeader,
10121
10109
  {
10122
10110
  columns: computedVisibleColumns,
@@ -10127,7 +10115,7 @@ function TableHeaderWrapper(props) {
10127
10115
  columnAndGroupTreeInfo
10128
10116
  }
10129
10117
  );
10130
- const verticalScrollbarPlaceholder = scrollbars.vertical && getScrollbarWidth() ? /* @__PURE__ */ React48.createElement(
10118
+ const verticalScrollbarPlaceholder = scrollbars.vertical && getScrollbarWidth() ? /* @__PURE__ */ React47.createElement(
10131
10119
  "div",
10132
10120
  {
10133
10121
  className: HeaderScrollbarPlaceholderCls,
@@ -10137,7 +10125,7 @@ function TableHeaderWrapper(props) {
10137
10125
  }
10138
10126
  }
10139
10127
  ) : null;
10140
- return /* @__PURE__ */ React48.createElement(
10128
+ return /* @__PURE__ */ React47.createElement(
10141
10129
  "div",
10142
10130
  {
10143
10131
  className: HeaderWrapperCls,
@@ -10151,7 +10139,7 @@ function TableHeaderWrapper(props) {
10151
10139
  }
10152
10140
 
10153
10141
  // src/components/InfiniteTable/components/InfiniteTableLicenseFooter/index.tsx
10154
- import * as React49 from "react";
10142
+ import * as React48 from "react";
10155
10143
  import { useEffect as useEffect17 } from "react";
10156
10144
 
10157
10145
  // src/components/utils/decamelize.ts
@@ -10194,11 +10182,11 @@ var enforceStyle = (node, style2) => {
10194
10182
  );
10195
10183
  }
10196
10184
  };
10197
- var InfiniteTableLicenseFooter = React49.forwardRef(
10185
+ var InfiniteTableLicenseFooter = React48.forwardRef(
10198
10186
  function InfiniteTableLicenseFooter2(props, ref) {
10199
10187
  const { rootClassName: rootClassName12 } = useInternalProps();
10200
- const domRef = React49.useRef(null);
10201
- const domCallback = React49.useCallback((node) => {
10188
+ const domRef = React48.useRef(null);
10189
+ const domCallback = React48.useCallback((node) => {
10202
10190
  domRef.current = node;
10203
10191
  if (!ref) {
10204
10192
  return;
@@ -10226,7 +10214,7 @@ var InfiniteTableLicenseFooter = React49.forwardRef(
10226
10214
  clearInterval(intervalId);
10227
10215
  };
10228
10216
  }, []);
10229
- return /* @__PURE__ */ React49.createElement(
10217
+ return /* @__PURE__ */ React48.createElement(
10230
10218
  "div",
10231
10219
  __spreadProps(__spreadValues({
10232
10220
  ref: domCallback
@@ -10240,7 +10228,7 @@ var InfiniteTableLicenseFooter = React49.forwardRef(
10240
10228
  }),
10241
10229
  "Powered by",
10242
10230
  " ",
10243
- /* @__PURE__ */ React49.createElement(
10231
+ /* @__PURE__ */ React48.createElement(
10244
10232
  "a",
10245
10233
  {
10246
10234
  href: "https://infinite-table.com",
@@ -10255,7 +10243,7 @@ var InfiniteTableLicenseFooter = React49.forwardRef(
10255
10243
  );
10256
10244
 
10257
10245
  // src/components/InfiniteTable/components/LoadMask.tsx
10258
- import * as React50 from "react";
10246
+ import * as React49 from "react";
10259
10247
 
10260
10248
  // src/components/InfiniteTable/components/LoadMask.css.ts
10261
10249
  var LoadMaskCls = { visible: "LoadMask_LoadMaskCls_visible__qy58ya1 LoadMask_LoadMaskBaseCls__qy58ya0 utilities_position_absolute__16lm1iw2 utilities_top_0__16lm1iw1c utilities_left_0__16lm1iw1e utilities_right_0__16lm1iw1j utilities_bottom_0__16lm1iw1h", hidden: "LoadMask_LoadMaskCls_hidden__qy58ya2 LoadMask_LoadMaskBaseCls__qy58ya0 utilities_position_absolute__16lm1iw2 utilities_top_0__16lm1iw1c utilities_left_0__16lm1iw1e utilities_right_0__16lm1iw1j utilities_bottom_0__16lm1iw1h" };
@@ -10267,16 +10255,16 @@ var { rootClassName: rootClassName10 } = internalProps;
10267
10255
  var baseCls3 = `${rootClassName10}-LoadMask`;
10268
10256
  function LoadMaskFn(props) {
10269
10257
  const { visible, children = "Loading" } = props;
10270
- return /* @__PURE__ */ React50.createElement(
10258
+ return /* @__PURE__ */ React49.createElement(
10271
10259
  "div",
10272
10260
  {
10273
10261
  className: `${LoadMaskCls[visible ? "visible" : "hidden"]} ${baseCls3}`
10274
10262
  },
10275
- /* @__PURE__ */ React50.createElement("div", { className: `${LoadMaskOverlayCls} ${baseCls3}-Overlay` }),
10276
- /* @__PURE__ */ React50.createElement("div", { className: `${LoadMaskTextCls} ${baseCls3}-Text` }, children)
10263
+ /* @__PURE__ */ React49.createElement("div", { className: `${LoadMaskOverlayCls} ${baseCls3}-Overlay` }),
10264
+ /* @__PURE__ */ React49.createElement("div", { className: `${LoadMaskTextCls} ${baseCls3}-Text` }, children)
10277
10265
  );
10278
10266
  }
10279
- var LoadMask = React50.memo(LoadMaskFn);
10267
+ var LoadMask = React49.memo(LoadMaskFn);
10280
10268
 
10281
10269
  // src/utils/deepClone.ts
10282
10270
  function cloneArray(arr) {
@@ -10948,7 +10936,7 @@ function enhancedFlatten(param) {
10948
10936
  }
10949
10937
 
10950
10938
  // src/components/DataSource/index.tsx
10951
- import * as React51 from "react";
10939
+ import * as React50 from "react";
10952
10940
  import { useEffect as useEffect20, useLayoutEffect as useLayoutEffect10 } from "react";
10953
10941
 
10954
10942
  // src/utils/multisort/sortTypes.ts
@@ -13759,6 +13747,7 @@ function useLoadData() {
13759
13747
  refetchKey,
13760
13748
  sortInfo,
13761
13749
  sortMode,
13750
+ groupMode,
13762
13751
  groupBy,
13763
13752
  pivotBy,
13764
13753
  filterValue,
@@ -13830,7 +13819,7 @@ function useLoadData() {
13830
13819
  }, [filterValue, filterMode, filterTypes]);
13831
13820
  const depsObject = {
13832
13821
  sortInfo: sortMode === "remote" ? sortInfo : null,
13833
- groupBy,
13822
+ groupBy: groupMode === "remote" ? groupBy : null,
13834
13823
  pivotBy,
13835
13824
  refetchKey,
13836
13825
  filterValue: computedFilterValue,
@@ -14313,7 +14302,7 @@ function getLivePaginationCursorValue(livePaginationCursorProp, state) {
14313
14302
  }
14314
14303
  var weakMap = /* @__PURE__ */ new WeakMap();
14315
14304
  function deriveStateFromProps(params) {
14316
- var _a, _b, _c;
14305
+ var _a, _b, _c, _d;
14317
14306
  const { props, state, oldState } = params;
14318
14307
  const controlledSort = isControlledValue(props.sortInfo);
14319
14308
  const controlledFilter = isControlledValue(props.filterValue);
@@ -14411,8 +14400,9 @@ function deriveStateFromProps(params) {
14411
14400
  operatorsByFilterType,
14412
14401
  controlledSort,
14413
14402
  controlledFilter,
14414
- sortMode: props.sortFunction ? "local" : (_b = props.sortMode) != null ? _b : controlledSort ? "remote" : "local",
14415
- filterMode: typeof props.filterFunction === "function" ? "local" : (_c = props.filterMode) != null ? _c : typeof props.data === "function" ? "remote" : "local",
14403
+ groupMode: typeof props.data === "function" ? (_b = props.groupMode) != null ? _b : "local" : "local",
14404
+ sortMode: props.sortFunction ? "local" : (_c = props.sortMode) != null ? _c : controlledSort ? "remote" : "local",
14405
+ filterMode: typeof props.filterFunction === "function" ? "local" : (_d = props.filterMode) != null ? _d : typeof props.data === "function" ? "remote" : "local",
14416
14406
  multiSort: Array.isArray(
14417
14407
  controlledSort ? props.sortInfo : props.defaultSortInfo
14418
14408
  ),
@@ -14945,7 +14935,7 @@ function DataSourceWithContext(props) {
14945
14935
  var _a;
14946
14936
  (_a = componentState.onReady) == null ? void 0 : _a.call(componentState, api);
14947
14937
  }, []);
14948
- return /* @__PURE__ */ React51.createElement(React51.Fragment, null, children);
14938
+ return /* @__PURE__ */ React50.createElement(React50.Fragment, null, children);
14949
14939
  }
14950
14940
  var DataSourceRoot = getComponentStateRoot({
14951
14941
  //@ts-ignore
@@ -14975,7 +14965,7 @@ function DataSourceCmp({
14975
14965
  const { componentState, componentActions, assignState } = useComponentState();
14976
14966
  componentState.getDataSourceMasterContextRef.current = getDataSourceMasterContext;
14977
14967
  const getState = useLatest(componentState);
14978
- const [api] = React51.useState(() => {
14968
+ const [api] = React50.useState(() => {
14979
14969
  return getDataSourceApi({ getState, actions: componentActions });
14980
14970
  });
14981
14971
  const contextValue = {
@@ -15027,13 +15017,13 @@ function DataSourceCmp({
15027
15017
  });
15028
15018
  }
15029
15019
  }, [componentState.originalDataArrayChangedInfo]);
15030
- return /* @__PURE__ */ React51.createElement(DataSourceContext.Provider, { value: contextValue }, /* @__PURE__ */ React51.createElement(DataSourceWithContext, { children }));
15020
+ return /* @__PURE__ */ React50.createElement(DataSourceContext.Provider, { value: contextValue }, /* @__PURE__ */ React50.createElement(DataSourceWithContext, { children }));
15031
15021
  }
15032
15022
  function DataSource(props) {
15033
15023
  const masterContext = useMasterDetailContext();
15034
15024
  const isDetail = !!masterContext;
15035
15025
  const key = isDetail ? masterContext.masterRowInfo.id : "master";
15036
- return /* @__PURE__ */ React51.createElement(DataSourceRoot, __spreadProps(__spreadValues({}, props), { key }), /* @__PURE__ */ React51.createElement(DataSourceCmp, { children: props.children, isDetail }));
15026
+ return /* @__PURE__ */ React50.createElement(DataSourceRoot, __spreadProps(__spreadValues({}, props), { key }), /* @__PURE__ */ React50.createElement(DataSourceCmp, { children: props.children, isDetail }));
15037
15027
  }
15038
15028
  function useRowInfoReducers() {
15039
15029
  const { rowInfoReducerResults } = useDataSource();
@@ -15355,7 +15345,8 @@ function getRowDetailApi(param) {
15355
15345
  return !rowDetailApi.isRowDetailCollapsed(pk);
15356
15346
  },
15357
15347
  collapseRowDetail(pk) {
15358
- const currentState = getState().rowDetailState;
15348
+ const componentState = getState();
15349
+ const currentState = componentState.rowDetailState;
15359
15350
  if (!currentState) {
15360
15351
  console.error(
15361
15352
  `Cannot collapse row details via rowDetailState, as no props.rowDetailState is provided.`
@@ -15364,10 +15355,13 @@ function getRowDetailApi(param) {
15364
15355
  }
15365
15356
  const state = new RowDetailState(currentState);
15366
15357
  state.collapseRowDetails(pk);
15358
+ componentState.lastRowToExpandRef.current = null;
15359
+ componentState.lastRowToCollapseRef.current = pk;
15367
15360
  actions.rowDetailState = state;
15368
15361
  },
15369
15362
  expandRowDetail(pk) {
15370
- const currentState = getState().rowDetailState;
15363
+ const componentState = getState();
15364
+ const currentState = componentState.rowDetailState;
15371
15365
  if (!currentState) {
15372
15366
  console.error(
15373
15367
  `Cannot expand row details via rowDetailState, as no props.rowDetailState is provided.`
@@ -15376,6 +15370,8 @@ function getRowDetailApi(param) {
15376
15370
  }
15377
15371
  const state = new RowDetailState(currentState);
15378
15372
  state.expandRowDetails(pk);
15373
+ componentState.lastRowToCollapseRef.current = null;
15374
+ componentState.lastRowToExpandRef.current = pk;
15379
15375
  actions.rowDetailState = state;
15380
15376
  },
15381
15377
  toggleRowDetail(pk) {
@@ -16408,7 +16404,7 @@ function useAutoSizeColumns() {
16408
16404
  // src/components/InfiniteTable/hooks/useCellRendering.tsx
16409
16405
  import { useMemo as useMemo9 } from "react";
16410
16406
  import { useCallback as useCallback19, useEffect as useEffect22, useRef as useRef24 } from "react";
16411
- import * as React53 from "react";
16407
+ import * as React52 from "react";
16412
16408
 
16413
16409
  // src/components/InfiniteTable/hooks/useYourBrain.ts
16414
16410
  function useYourBrain(param) {
@@ -16445,7 +16441,7 @@ function useYourBrain(param) {
16445
16441
  }
16446
16442
 
16447
16443
  // src/components/InfiniteTable/components/InfiniteTableRow/InfiniteTableDetailRow.tsx
16448
- import * as React52 from "react";
16444
+ import * as React51 from "react";
16449
16445
 
16450
16446
  // src/components/InfiniteTable/components/rowDetail.css.ts
16451
16447
  var RowDetailRecipe = createRuntimeFn({ defaultClassName: "rowDetail_RowDetailRecipe__evqes20", variantClassNames: {}, defaultVariants: {}, compoundVariants: [] });
@@ -16582,7 +16578,7 @@ function InfiniteTableDetailRowFn(props) {
16582
16578
  rowDetailsCache,
16583
16579
  rowInfo
16584
16580
  });
16585
- return /* @__PURE__ */ React52.createElement(DataSourceMasterDetailContext.Provider, { value: masterDetailContextValue }, /* @__PURE__ */ React52.createElement(
16581
+ return /* @__PURE__ */ React51.createElement(DataSourceMasterDetailContext.Provider, { value: masterDetailContextValue }, /* @__PURE__ */ React51.createElement(
16586
16582
  "div",
16587
16583
  {
16588
16584
  ref: domRef,
@@ -16591,6 +16587,7 @@ function InfiniteTableDetailRowFn(props) {
16591
16587
  position: "absolute",
16592
16588
  top: `${detailOffset}px`,
16593
16589
  left: 0,
16590
+ // TODO see #rowDetailWidth
16594
16591
  width: `calc(${InternalVars.bodyWidth} - ${InternalVars.scrollbarWidthVertical})`,
16595
16592
  height: rowDetailHeight
16596
16593
  }
@@ -16598,7 +16595,7 @@ function InfiniteTableDetailRowFn(props) {
16598
16595
  rowDetailRenderer(rowInfo, currentRowCache)
16599
16596
  ));
16600
16597
  }
16601
- var InfiniteTableDetailRow = React52.memo(
16598
+ var InfiniteTableDetailRow = React51.memo(
16602
16599
  InfiniteTableDetailRowFn
16603
16600
  );
16604
16601
 
@@ -16757,7 +16754,7 @@ function useCellRendering(param) {
16757
16754
  cellStyle,
16758
16755
  cellClassName
16759
16756
  };
16760
- return /* @__PURE__ */ React53.createElement(InfiniteTableColumnCell, __spreadValues({}, cellProps));
16757
+ return /* @__PURE__ */ React52.createElement(InfiniteTableColumnCell, __spreadValues({}, cellProps));
16761
16758
  },
16762
16759
  [
16763
16760
  rowHeight,
@@ -16788,10 +16785,10 @@ function useCellRendering(param) {
16788
16785
  const dataArray2 = getData();
16789
16786
  const rowInfo = dataArray2[rowIndex];
16790
16787
  if (!rowInfo || !isRowDetailsExpanded(rowInfo) || !computedRowSizeCacheForDetails) {
16791
- return /* @__PURE__ */ React53.createElement("div", { ref: domRef, className: visibility.hidden });
16788
+ return /* @__PURE__ */ React52.createElement("div", { ref: domRef, className: visibility.hidden });
16792
16789
  }
16793
16790
  const { rowDetailHeight: rowDetailHeight2, rowHeight: rowHeight2 } = computedRowSizeCacheForDetails.getSize(rowIndex);
16794
- return /* @__PURE__ */ React53.createElement(
16791
+ return /* @__PURE__ */ React52.createElement(
16795
16792
  InfiniteTableDetailRow,
16796
16793
  {
16797
16794
  rowInfo,
@@ -17124,10 +17121,10 @@ function computeColumnGroupsDepths(columnGroups) {
17124
17121
  }
17125
17122
 
17126
17123
  // src/components/InfiniteTable/state/rowDetailRendererFromComponent.tsx
17127
- import * as React54 from "react";
17124
+ import * as React53 from "react";
17128
17125
  function getRowDetailRendererFromComponent(RowDetail) {
17129
17126
  return (rowInfo, cache) => {
17130
- return /* @__PURE__ */ React54.createElement(RowDetail, { key: rowInfo.id, rowInfo, cache });
17127
+ return /* @__PURE__ */ React53.createElement(RowDetail, { key: rowInfo.id, rowInfo, cache });
17131
17128
  };
17132
17129
  }
17133
17130
 
@@ -17176,6 +17173,8 @@ function initSetupState2({
17176
17173
  renderer,
17177
17174
  onRenderUpdater,
17178
17175
  propsCache: /* @__PURE__ */ new Map([]),
17176
+ lastRowToCollapseRef: { current: null },
17177
+ lastRowToExpandRef: { current: null },
17179
17178
  cellContextMenuVisibleFor: null,
17180
17179
  contextMenuVisibleFor: null,
17181
17180
  columnMenuVisibleForColumnId: null,
@@ -17376,6 +17375,21 @@ function getGroupByMap(groupBy) {
17376
17375
  }, /* @__PURE__ */ new Map());
17377
17376
  }
17378
17377
  var weakMap2 = /* @__PURE__ */ new WeakMap();
17378
+ function getMappedCallbacks2() {
17379
+ return {
17380
+ rowDetailState: (rowDetailState, state) => {
17381
+ return {
17382
+ callbackParams: [
17383
+ rowDetailState,
17384
+ {
17385
+ expandRow: state.lastRowToExpandRef.current,
17386
+ collapseRow: state.lastRowToCollapseRef.current
17387
+ }
17388
+ ]
17389
+ };
17390
+ }
17391
+ };
17392
+ }
17379
17393
  var mapPropsToState = (params) => {
17380
17394
  var _a, _b, _c, _d, _e;
17381
17395
  const { props, state, oldState, parentState } = params;
@@ -18593,7 +18607,7 @@ var useLicense = (licenseKey = "") => {
18593
18607
  }
18594
18608
  let valid2 = isValidLicense(licenseKey, {
18595
18609
  publishedAt: 1624970570587,
18596
- version: "4.0.0"
18610
+ version: "4.1.1"
18597
18611
  });
18598
18612
  if (!licenseKey && !valid2 && isInsidePlayground) {
18599
18613
  return true;
@@ -19632,7 +19646,7 @@ function useDOMEventHandlers() {
19632
19646
  import { useEffect as useEffect32 } from "react";
19633
19647
 
19634
19648
  // src/components/hooks/useOverlay/index.tsx
19635
- import * as React55 from "react";
19649
+ import * as React54 from "react";
19636
19650
  import {
19637
19651
  useCallback as useCallback23,
19638
19652
  useEffect as useEffect30,
@@ -20023,10 +20037,10 @@ function retrieveElement(elementGetter) {
20023
20037
  });
20024
20038
  }
20025
20039
  function DefaultOverlayPortal(props) {
20026
- return /* @__PURE__ */ React55.createElement("div", { style: { position: "fixed", top: 0, left: 0 } }, props.children);
20040
+ return /* @__PURE__ */ React54.createElement("div", { style: { position: "fixed", top: 0, left: 0 } }, props.children);
20027
20041
  }
20028
20042
  function OverlayContent(props) {
20029
- const nodeRef = React55.useRef(null);
20043
+ const nodeRef = React54.useRef(null);
20030
20044
  useEffect30(() => {
20031
20045
  return props.realign.onChange((handle) => {
20032
20046
  if (nodeRef.current && handle) {
@@ -20034,7 +20048,7 @@ function OverlayContent(props) {
20034
20048
  }
20035
20049
  });
20036
20050
  }, [props.realign]);
20037
- return /* @__PURE__ */ React55.createElement(
20051
+ return /* @__PURE__ */ React54.createElement(
20038
20052
  "div",
20039
20053
  {
20040
20054
  style: { position: "absolute", top: 0, left: 0 },
@@ -20105,22 +20119,22 @@ function useOverlayPortal(content, portalContainer) {
20105
20119
  }, [portalContainer]);
20106
20120
  return portalContainer ? container ? createPortal2(content, container) : (
20107
20121
  // we're probably still fetching the container
20108
- /* @__PURE__ */ React55.createElement(React55.Fragment, null)
20109
- ) : portalContainer === null || portalContainer === false ? content : /* @__PURE__ */ React55.createElement(DefaultOverlayPortal, null, content);
20122
+ /* @__PURE__ */ React54.createElement(React54.Fragment, null)
20123
+ ) : portalContainer === null || portalContainer === false ? content : /* @__PURE__ */ React54.createElement(DefaultOverlayPortal, null, content);
20110
20124
  }
20111
20125
  function getIdForReactOnlyChild(children) {
20112
- if (React55.Children.count(children) === 1) {
20113
- const child = React55.Children.only(children);
20114
- if (React55.isValidElement(child)) {
20126
+ if (React54.Children.count(children) === 1) {
20127
+ const child = React54.Children.only(children);
20128
+ if (React54.isValidElement(child)) {
20115
20129
  return child.props.id || child.key;
20116
20130
  }
20117
20131
  }
20118
20132
  return null;
20119
20133
  }
20120
20134
  function injectPortalContainerAndConstrainInMenuChild(children, portalContainer, constrainTo) {
20121
- if (React55.Children.count(children) === 1) {
20122
- const child = React55.Children.only(children);
20123
- if (React55.isValidElement(child) && child.type[propToIdentifyMenu]) {
20135
+ if (React54.Children.count(children) === 1) {
20136
+ const child = React54.Children.only(children);
20137
+ if (React54.isValidElement(child) && child.type[propToIdentifyMenu]) {
20124
20138
  const newProps = {};
20125
20139
  if (child.props.portalContainer === void 0) {
20126
20140
  newProps.portalContainer = portalContainer;
@@ -20128,7 +20142,7 @@ function injectPortalContainerAndConstrainInMenuChild(children, portalContainer,
20128
20142
  if (child.props.constrainTo === void 0) {
20129
20143
  newProps.constrainTo = constrainTo;
20130
20144
  }
20131
- return React55.cloneElement(child, newProps);
20145
+ return React54.cloneElement(child, newProps);
20132
20146
  }
20133
20147
  }
20134
20148
  return children;
@@ -20144,7 +20158,7 @@ function useOverlay(params) {
20144
20158
  const contentForPortal = [];
20145
20159
  for (const [_2, handle] of handles) {
20146
20160
  contentForPortal.push(
20147
- /* @__PURE__ */ React55.createElement(OverlayContent, __spreadProps(__spreadValues({}, handle), { key: handle.key }))
20161
+ /* @__PURE__ */ React54.createElement(OverlayContent, __spreadProps(__spreadValues({}, handle), { key: handle.key }))
20148
20162
  );
20149
20163
  }
20150
20164
  return contentForPortal;
@@ -20189,7 +20203,7 @@ function useOverlay(params) {
20189
20203
  },
20190
20204
  [handles, rootParams.portalContainer, updateContent]
20191
20205
  );
20192
- React55.useEffect(() => {
20206
+ React54.useEffect(() => {
20193
20207
  if (handleToRealign) {
20194
20208
  const handle = handles.get(handleToRealign);
20195
20209
  if (handle) {
@@ -20208,7 +20222,7 @@ function useOverlay(params) {
20208
20222
  handles.clear();
20209
20223
  updateContent();
20210
20224
  };
20211
- React55.useEffect(() => {
20225
+ React54.useEffect(() => {
20212
20226
  }, []);
20213
20227
  return {
20214
20228
  portal,
@@ -20220,16 +20234,16 @@ function useOverlay(params) {
20220
20234
  }
20221
20235
 
20222
20236
  // src/components/InfiniteTable/utils/getMenuForColumn.tsx
20223
- import * as React61 from "react";
20237
+ import * as React60 from "react";
20224
20238
 
20225
20239
  // src/components/Menu/index.tsx
20226
- import * as React59 from "react";
20240
+ import * as React58 from "react";
20227
20241
 
20228
20242
  // src/components/Menu/getMenuState.tsx
20229
- import * as React57 from "react";
20243
+ import * as React56 from "react";
20230
20244
 
20231
20245
  // src/components/Menu/childrenToRuntimeItems.tsx
20232
- import * as React56 from "react";
20246
+ import * as React55 from "react";
20233
20247
 
20234
20248
  // src/components/Menu/MenuItem.tsx
20235
20249
  function MenuItem(_props) {
@@ -20248,7 +20262,7 @@ var MenuSeparatorCls = "MenuCls_MenuSeparatorCls__db3arfd";
20248
20262
  // src/components/Menu/childrenToRuntimeItems.tsx
20249
20263
  var SEPARATOR = "-";
20250
20264
  function MenuSeparator() {
20251
- return /* @__PURE__ */ React56.createElement("hr", { className: MenuSeparatorCls });
20265
+ return /* @__PURE__ */ React55.createElement("hr", { className: MenuSeparatorCls });
20252
20266
  }
20253
20267
  var toRuntimeItem = ({
20254
20268
  columns,
@@ -20257,7 +20271,7 @@ var toRuntimeItem = ({
20257
20271
  menuId
20258
20272
  }, item) => {
20259
20273
  const menuItem = item && (item.key != null || item.label != null) ? item : null;
20260
- const menuDecoration = menuItem === null ? item === SEPARATOR ? /* @__PURE__ */ React56.createElement(MenuSeparator, null) : item : null;
20274
+ const menuDecoration = menuItem === null ? item === SEPARATOR ? /* @__PURE__ */ React55.createElement(MenuSeparator, null) : item : null;
20261
20275
  const runtimeItem = menuItem != null ? {
20262
20276
  type: "item",
20263
20277
  parentMenuId: menuId,
@@ -20285,7 +20299,7 @@ var toRuntimeItem = ({
20285
20299
  return runtimeItem;
20286
20300
  };
20287
20301
  function childrenToRuntimeItems(context, children) {
20288
- return React56.Children.map(children, (child) => {
20302
+ return React55.Children.map(children, (child) => {
20289
20303
  if (child) {
20290
20304
  if (child.props.__is_menu_item || child.type === MenuItem) {
20291
20305
  const itemProps = __spreadValues({}, child.props);
@@ -20308,7 +20322,7 @@ function childrenToRuntimeItems(context, children) {
20308
20322
  // src/components/Menu/getMenuState.tsx
20309
20323
  var SUBMENU_COL_NAME = "submenu";
20310
20324
  function getInitialMenuState() {
20311
- const domRef = React57.createRef();
20325
+ const domRef = React56.createRef();
20312
20326
  return {
20313
20327
  keyboardActiveItemKey: null,
20314
20328
  activeItemKey: null,
@@ -20363,7 +20377,7 @@ var deriveStateFromProps2 = (params) => {
20363
20377
  columns.push({
20364
20378
  name: SUBMENU_COL_NAME,
20365
20379
  render: ({ domProps, item }) => {
20366
- return item.menu ? /* @__PURE__ */ React57.createElement("div", __spreadValues({}, domProps), /* @__PURE__ */ React57.createElement(ExpanderIcon, { expanded: false })) : /* @__PURE__ */ React57.createElement("div", __spreadValues({}, domProps));
20380
+ return item.menu ? /* @__PURE__ */ React56.createElement("div", __spreadValues({}, domProps), /* @__PURE__ */ React56.createElement(ExpanderIcon, { expanded: false })) : /* @__PURE__ */ React56.createElement("div", __spreadValues({}, domProps));
20367
20381
  }
20368
20382
  });
20369
20383
  }
@@ -20380,7 +20394,7 @@ var deriveStateFromProps2 = (params) => {
20380
20394
  };
20381
20395
 
20382
20396
  // src/components/Menu/Menu.tsx
20383
- import * as React58 from "react";
20397
+ import * as React57 from "react";
20384
20398
  import {
20385
20399
  useCallback as useCallback25,
20386
20400
  useLayoutEffect as useLayoutEffect14,
@@ -20645,7 +20659,7 @@ function renderSubmenuForItem(item, config) {
20645
20659
  if (typeof itemMenu === "function") {
20646
20660
  itemMenu = itemMenu();
20647
20661
  }
20648
- return /* @__PURE__ */ React58.createElement(
20662
+ return /* @__PURE__ */ React57.createElement(
20649
20663
  Menu,
20650
20664
  __spreadProps(__spreadValues({
20651
20665
  key: overlayId,
@@ -20858,7 +20872,7 @@ function MenuComponent(props) {
20858
20872
  setActiveItemKey(key);
20859
20873
  }
20860
20874
  });
20861
- renderedChildren = runtimeItems.map((runtimeItem, index) => /* @__PURE__ */ React58.createElement(
20875
+ renderedChildren = runtimeItems.map((runtimeItem, index) => /* @__PURE__ */ React57.createElement(
20862
20876
  RuntimeItemRenderer,
20863
20877
  {
20864
20878
  key: runtimeItem.type === "item" ? runtimeItem.key : index,
@@ -21043,7 +21057,7 @@ function MenuComponent(props) {
21043
21057
  domRef.current = node;
21044
21058
  }
21045
21059
  }, []);
21046
- const result = /* @__PURE__ */ React58.createElement("div", { className: display.contents }, /* @__PURE__ */ React58.createElement(
21060
+ const result = /* @__PURE__ */ React57.createElement("div", { className: display.contents }, /* @__PURE__ */ React57.createElement(
21047
21061
  "div",
21048
21062
  __spreadProps(__spreadValues({}, domProps), {
21049
21063
  "data-menu-id": menuId,
@@ -21075,12 +21089,12 @@ function MenuComponent(props) {
21075
21089
  return destroyed ? null : result;
21076
21090
  }
21077
21091
  function RuntimeItemRenderer(props) {
21078
- const [pressed, setPressed] = React58.useState(false);
21092
+ const [pressed, setPressed] = React57.useState(false);
21079
21093
  const { columns, item, index, active, keyboardActive } = props;
21080
21094
  const key = item.type === "item" ? item.value.key : index;
21081
21095
  let content = null;
21082
21096
  if (item.type === "decoration") {
21083
- content = /* @__PURE__ */ React58.createElement("div", { style: item.style }, item.value);
21097
+ content = /* @__PURE__ */ React57.createElement("div", { style: item.style }, item.value);
21084
21098
  } else {
21085
21099
  let spanIndex = 0;
21086
21100
  content = columns.map((col, i) => {
@@ -21141,7 +21155,7 @@ function RuntimeItemRenderer(props) {
21141
21155
  }
21142
21156
  }
21143
21157
  };
21144
- return col.render ? /* @__PURE__ */ React58.createElement(
21158
+ return col.render ? /* @__PURE__ */ React57.createElement(
21145
21159
  RenderHookComponent,
21146
21160
  {
21147
21161
  key: `${key}-${field}`,
@@ -21153,10 +21167,10 @@ function RuntimeItemRenderer(props) {
21153
21167
  domProps
21154
21168
  }
21155
21169
  }
21156
- ) : /* @__PURE__ */ React58.createElement("div", __spreadValues({ key: `${key}-${field}` }, domProps), target[field]);
21170
+ ) : /* @__PURE__ */ React57.createElement("div", __spreadValues({ key: `${key}-${field}` }, domProps), target[field]);
21157
21171
  }).filter(Boolean);
21158
21172
  }
21159
- return /* @__PURE__ */ React58.createElement("div", { className: MenuRowCls }, content);
21173
+ return /* @__PURE__ */ React57.createElement("div", { className: MenuRowCls }, content);
21160
21174
  }
21161
21175
 
21162
21176
  // src/components/Menu/index.tsx
@@ -21170,12 +21184,12 @@ var MenuRoot = getComponentStateRoot({
21170
21184
  function MenuContextProvider(props) {
21171
21185
  const { componentActions, componentState } = useComponentState();
21172
21186
  const getState = useLatest(componentState);
21173
- return /* @__PURE__ */ React59.createElement(
21187
+ return /* @__PURE__ */ React58.createElement(
21174
21188
  MenuContext.Provider,
21175
21189
  {
21176
21190
  value: { componentActions, componentState, getState }
21177
21191
  },
21178
- /* @__PURE__ */ React59.createElement(MenuComponent, { domProps: props.domProps })
21192
+ /* @__PURE__ */ React58.createElement(MenuComponent, { domProps: props.domProps })
21179
21193
  );
21180
21194
  }
21181
21195
  function Menu(props) {
@@ -21217,24 +21231,24 @@ function Menu(props) {
21217
21231
  //@ts-ignore
21218
21232
  "__is_infinite_menu_component"
21219
21233
  ]);
21220
- const menu = /* @__PURE__ */ React59.createElement(
21234
+ const menu = /* @__PURE__ */ React58.createElement(
21221
21235
  MenuRoot,
21222
21236
  __spreadValues({
21223
21237
  addSubmenuColumnIfNeeded,
21224
21238
  bubbleActionsFromSubmenus,
21225
21239
  wrapLabels
21226
21240
  }, props),
21227
- /* @__PURE__ */ React59.createElement(MenuContextProvider, { domProps })
21241
+ /* @__PURE__ */ React58.createElement(MenuContextProvider, { domProps })
21228
21242
  );
21229
21243
  if (false) {
21230
- return /* @__PURE__ */ React59.createElement(React59.StrictMode, null, menu);
21244
+ return /* @__PURE__ */ React58.createElement(React58.StrictMode, null, menu);
21231
21245
  }
21232
21246
  return menu;
21233
21247
  }
21234
21248
  Menu[propToIdentifyMenu] = true;
21235
21249
 
21236
21250
  // src/components/InfiniteTable/utils/defaultGetColumnMenuItems.tsx
21237
- import * as React60 from "react";
21251
+ import * as React59 from "react";
21238
21252
  function defaultGetColumnMenuItems(_items, params) {
21239
21253
  const { columnApi, column, getComputed, api } = params;
21240
21254
  const sortable = columnApi.isSortable();
@@ -21321,7 +21335,7 @@ function defaultGetColumnMenuItems(_items, params) {
21321
21335
  colItems.push({
21322
21336
  key: id,
21323
21337
  label,
21324
- check: /* @__PURE__ */ React60.createElement(
21338
+ check: /* @__PURE__ */ React59.createElement(
21325
21339
  InfiniteCheckBox,
21326
21340
  {
21327
21341
  key: col.id,
@@ -21384,7 +21398,7 @@ function getMenuForColumn(columnId, context, onHideIntent) {
21384
21398
  if (!items || !items.length) {
21385
21399
  return null;
21386
21400
  }
21387
- return /* @__PURE__ */ React61.createElement(
21401
+ return /* @__PURE__ */ React60.createElement(
21388
21402
  MenuCmp,
21389
21403
  {
21390
21404
  autoFocus: true,
@@ -21504,7 +21518,7 @@ function useColumnMenu() {
21504
21518
  }
21505
21519
 
21506
21520
  // src/components/InfiniteTable/components/FocusDetect.tsx
21507
- import * as React62 from "react";
21521
+ import * as React61 from "react";
21508
21522
  import { useCallback as useCallback26 } from "react";
21509
21523
  var style = {
21510
21524
  width: 0,
@@ -21538,7 +21552,7 @@ function FocusDetect() {
21538
21552
  };
21539
21553
  focusLastFocusableCell(context);
21540
21554
  }), []);
21541
- return /* @__PURE__ */ React62.createElement(
21555
+ return /* @__PURE__ */ React61.createElement(
21542
21556
  "div",
21543
21557
  {
21544
21558
  onFocus,
@@ -21669,18 +21683,18 @@ function useEditingCallbackProps() {
21669
21683
  import { useEffect as useEffect34 } from "react";
21670
21684
 
21671
21685
  // src/components/InfiniteTable/utils/getFilterOperatorMenuForColumn.tsx
21672
- import * as React65 from "react";
21686
+ import * as React64 from "react";
21673
21687
 
21674
21688
  // src/components/InfiniteTable/components/icons/ClearIcon.tsx
21675
- import * as React63 from "react";
21689
+ import * as React62 from "react";
21676
21690
  var ClearIcon = (props) => {
21677
- return /* @__PURE__ */ React63.createElement(Icon, __spreadValues({}, props), /* @__PURE__ */ React63.createElement("path", { d: "M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z" }));
21691
+ return /* @__PURE__ */ React62.createElement(Icon, __spreadValues({}, props), /* @__PURE__ */ React62.createElement("path", { d: "M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z" }));
21678
21692
  };
21679
21693
 
21680
21694
  // src/components/InfiniteTable/components/icons/DoneIcon.tsx
21681
- import * as React64 from "react";
21695
+ import * as React63 from "react";
21682
21696
  var DoneIcon = (props) => {
21683
- return /* @__PURE__ */ React64.createElement(Icon, __spreadValues({}, props), /* @__PURE__ */ React64.createElement("path", { d: "m9.55 19-6.725-6.725L5.25 9.85l4.3 4.325 9.225-9.225 2.425 2.4Z" }));
21697
+ return /* @__PURE__ */ React63.createElement(Icon, __spreadValues({}, props), /* @__PURE__ */ React63.createElement("path", { d: "m9.55 19-6.725-6.725L5.25 9.85l4.3 4.325 9.225-9.225 2.425 2.4Z" }));
21684
21698
  };
21685
21699
 
21686
21700
  // src/components/InfiniteTable/utils/getFilterOperatorMenuForColumn.tsx
@@ -21726,12 +21740,12 @@ function getFilterOperatorMenuForColumn(columnId, context, onHideIntent) {
21726
21740
  const IconCmp = (_b = (_a2 = operator.components) == null ? void 0 : _a2.Icon) != null ? _b : FilterIcon;
21727
21741
  return {
21728
21742
  key,
21729
- icon: /* @__PURE__ */ React65.createElement(IconCmp, null),
21730
- label: /* @__PURE__ */ React65.createElement(React65.Fragment, null, (_c = operator.label) != null ? _c : operator.name),
21743
+ icon: /* @__PURE__ */ React64.createElement(IconCmp, null),
21744
+ label: /* @__PURE__ */ React64.createElement(React64.Fragment, null, (_c = operator.label) != null ? _c : operator.name),
21731
21745
  onAction: () => {
21732
21746
  api.setColumnFilterOperator(columnId, key);
21733
21747
  },
21734
- checked: checked ? /* @__PURE__ */ React65.createElement(DoneIcon, { size: 16 }) : null
21748
+ checked: checked ? /* @__PURE__ */ React64.createElement(DoneIcon, { size: 16 }) : null
21735
21749
  };
21736
21750
  });
21737
21751
  const firstItems = [
@@ -21746,7 +21760,7 @@ function getFilterOperatorMenuForColumn(columnId, context, onHideIntent) {
21746
21760
  {
21747
21761
  key: "reset",
21748
21762
  label: "Reset",
21749
- icon: /* @__PURE__ */ React65.createElement(ClearIcon, null),
21763
+ icon: /* @__PURE__ */ React64.createElement(ClearIcon, null),
21750
21764
  disabled: !column.computedFiltered,
21751
21765
  onAction: () => {
21752
21766
  api.clearColumnFilter(columnId);
@@ -21768,7 +21782,7 @@ function getFilterOperatorMenuForColumn(columnId, context, onHideIntent) {
21768
21782
  filterTypes
21769
21783
  };
21770
21784
  const items = getFilterOperatorMenuItems ? getFilterOperatorMenuItems(defaultItems, param) : defaultItems;
21771
- return /* @__PURE__ */ React65.createElement(
21785
+ return /* @__PURE__ */ React64.createElement(
21772
21786
  MenuCmp,
21773
21787
  {
21774
21788
  autoFocus: true,
@@ -21875,7 +21889,7 @@ function useColumnFilterOperatorMenu() {
21875
21889
  import { useEffect as useEffect35 } from "react";
21876
21890
 
21877
21891
  // src/components/InfiniteTable/utils/getCellContextMenu.tsx
21878
- import * as React66 from "react";
21892
+ import * as React65 from "react";
21879
21893
  function getCellContextMenu(cellLocation, context, onHideIntent) {
21880
21894
  var _a;
21881
21895
  const { columnId, rowIndex, event } = cellLocation;
@@ -21915,7 +21929,7 @@ function getCellContextMenu(cellLocation, context, onHideIntent) {
21915
21929
  }
21916
21930
  return {
21917
21931
  preventDefault: true,
21918
- menu: /* @__PURE__ */ React66.createElement(
21932
+ menu: /* @__PURE__ */ React65.createElement(
21919
21933
  MenuCmp,
21920
21934
  {
21921
21935
  columns: menuColumns,
@@ -21970,7 +21984,7 @@ function getTableContextMenu(menuLocation, context, onHideIntent) {
21970
21984
  }
21971
21985
  return {
21972
21986
  preventDefault: true,
21973
- menu: /* @__PURE__ */ React66.createElement(
21987
+ menu: /* @__PURE__ */ React65.createElement(
21974
21988
  MenuCmp,
21975
21989
  {
21976
21990
  columns: menuColumns,
@@ -22174,6 +22188,83 @@ function useTableContextMenu() {
22174
22188
  return { menuPortal };
22175
22189
  }
22176
22190
 
22191
+ // src/components/InfiniteTable/components/HScrollSyncContent.tsx
22192
+ import { useRef as useRef30 } from "react";
22193
+ import * as React66 from "react";
22194
+
22195
+ // src/components/InfiniteTable/hooks/useGridScroll.ts
22196
+ import { useCallback as useCallback27, useEffect as useEffect36 } from "react";
22197
+ function useGridScroll(onScroll, deps) {
22198
+ const {
22199
+ state: { brain }
22200
+ } = useInfiniteTable();
22201
+ const memoizedOnScroll = useCallback27(onScroll, deps);
22202
+ useEffect36(() => {
22203
+ const removeOnScroll = brain.onScroll(memoizedOnScroll);
22204
+ return removeOnScroll;
22205
+ }, [brain, memoizedOnScroll]);
22206
+ }
22207
+
22208
+ // src/components/InfiniteTable/components/HScrollSyncContent.css.ts
22209
+ var HScrollSyncContentCls = "HScrollSyncContent_HScrollSyncContentCls__yzx0vj0";
22210
+
22211
+ // src/components/InfiniteTable/components/HScrollSyncContent.tsx
22212
+ function HScrollSyncContent(props) {
22213
+ const _a = props, { width, maxWidth, minWidth, scrollable } = _a, domProps = __objRest(_a, ["width", "maxWidth", "minWidth", "scrollable"]);
22214
+ const domRef = useRef30(null);
22215
+ useGridScroll(
22216
+ (scrollPos) => {
22217
+ if (domRef.current && scrollable !== false) {
22218
+ domRef.current.style.transform = `translate3d(${-scrollPos.scrollLeft}px, 0px, 0px)`;
22219
+ }
22220
+ },
22221
+ [scrollable]
22222
+ );
22223
+ const style2 = __spreadValues({}, domProps.style);
22224
+ if (width === "column") {
22225
+ style2.width = ThemeVars.runtime.totalVisibleColumnsWidth;
22226
+ } else if (width === "viewport") {
22227
+ style2.width = ThemeVars.runtime.bodyWidth;
22228
+ }
22229
+ if (minWidth === "column") {
22230
+ style2.minWidth = ThemeVars.runtime.totalVisibleColumnsWidth;
22231
+ } else if (minWidth === "viewport") {
22232
+ style2.minWidth = ThemeVars.runtime.bodyWidth;
22233
+ }
22234
+ if (maxWidth === "column") {
22235
+ style2.maxWidth = ThemeVars.runtime.totalVisibleColumnsWidth;
22236
+ } else if (maxWidth === "viewport") {
22237
+ style2.maxWidth = ThemeVars.runtime.bodyWidth;
22238
+ }
22239
+ return /* @__PURE__ */ React66.createElement(
22240
+ "div",
22241
+ __spreadProps(__spreadValues({
22242
+ ref: domRef
22243
+ }, domProps), {
22244
+ className: domProps.className ? join(domProps.className, HScrollSyncContentCls) : HScrollSyncContentCls,
22245
+ style: style2
22246
+ }),
22247
+ domProps.children
22248
+ );
22249
+ }
22250
+
22251
+ // src/components/InfiniteTable/hooks/useVisibleColumnSizes.ts
22252
+ var columnWidthAtIndex6 = stripVar(InternalVars.columnWidthAtIndex);
22253
+ var columnOffsetAtIndex5 = stripVar(InternalVars.columnOffsetAtIndex);
22254
+ function useVisibleColumnSizes() {
22255
+ const context = useInfiniteTable();
22256
+ return context.computed.computedVisibleColumns.map((column) => {
22257
+ return {
22258
+ id: column.id,
22259
+ width: column.computedWidth,
22260
+ cssVarForWidth: `var(${columnWidthAtIndex6}-${column.computedVisibleIndex})`,
22261
+ offset: column.computedOffset,
22262
+ cssVarForOffset: `var(${columnOffsetAtIndex5}-${column.computedVisibleIndex})`,
22263
+ pinned: column.computedPinned
22264
+ };
22265
+ });
22266
+ }
22267
+
22177
22268
  // src/components/InfiniteTable/index.tsx
22178
22269
  var InfiniteTableClassName = internalProps.rootClassName;
22179
22270
  var HOVERED_CLASS_NAMES = [RowHoverCls, "InfiniteColumnCell--hovered"];
@@ -22191,44 +22282,154 @@ var InfiniteTableRoot = getComponentStateRoot({
22191
22282
  rowHeight: true,
22192
22283
  columnHeaderHeight: true
22193
22284
  },
22285
+ //@ts-ignore
22286
+ mappedCallbacks: getMappedCallbacks2(),
22194
22287
  // @ts-ignore
22195
22288
  getParentState: () => useDataSource(),
22196
22289
  debugName: "InfiniteTable"
22197
22290
  });
22291
+ function InfiniteTableHeader2() {
22292
+ const context = useInfiniteTable();
22293
+ const { state: componentState, getComputed } = context;
22294
+ const { header, brain, headerBrain } = componentState;
22295
+ const { scrollbars } = getComputed();
22296
+ return header ? /* @__PURE__ */ React67.createElement(
22297
+ TableHeaderWrapper,
22298
+ {
22299
+ bodyBrain: brain,
22300
+ headerBrain,
22301
+ scrollbars
22302
+ }
22303
+ ) : null;
22304
+ }
22305
+ var InfiniteTableBodyCls = join(
22306
+ `${rootClassName2}Body`,
22307
+ position.relative,
22308
+ flex["1"],
22309
+ transformTranslateZero
22310
+ );
22311
+ function InfiniteTableBodyContainer(props) {
22312
+ return /* @__PURE__ */ React67.createElement(
22313
+ "div",
22314
+ __spreadProps(__spreadValues({}, props), {
22315
+ className: props.className ? join(InfiniteTableBodyCls, props.className) : InfiniteTableBodyCls
22316
+ })
22317
+ );
22318
+ }
22319
+ function InfiniteTableBody() {
22320
+ var _a;
22321
+ const context = useInfiniteTable();
22322
+ const masterContext = useMasterDetailContext();
22323
+ const { state: componentState, getComputed, api } = context;
22324
+ const {
22325
+ renderer,
22326
+ onRenderUpdater,
22327
+ debugId,
22328
+ keyboardNavigation,
22329
+ activeRowIndex,
22330
+ loadingText,
22331
+ scrollStopDelay,
22332
+ brain,
22333
+ scrollerDOMRef,
22334
+ components: components2,
22335
+ bodySize,
22336
+ activeCellIndex,
22337
+ rowDetailRenderer
22338
+ } = componentState;
22339
+ const LoadMaskCmp = (_a = components2 == null ? void 0 : components2.LoadMask) != null ? _a : LoadMask;
22340
+ const computed = getComputed();
22341
+ const { computedRowHeight, computedRowSizeCacheForDetails } = computed;
22342
+ const activeCellRowHeight = (computedRowSizeCacheForDetails == null ? void 0 : computedRowSizeCacheForDetails.getRowHeight) || computedRowHeight;
22343
+ const {
22344
+ componentState: { loading }
22345
+ } = useDataSourceContextValue();
22346
+ const onContextMenu = React67.useCallback((event) => {
22347
+ const state = context.getState();
22348
+ const target = event.target;
22349
+ if (!masterContext && event._from_row_detail) {
22350
+ return;
22351
+ }
22352
+ if (masterContext) {
22353
+ event._from_row_detail = true;
22354
+ }
22355
+ const cell = selectParentUntil(
22356
+ target,
22357
+ getCellSelector(),
22358
+ state.domRef.current
22359
+ );
22360
+ let columnId;
22361
+ let colIndex;
22362
+ let rowId;
22363
+ let rowIndex;
22364
+ if (cell) {
22365
+ colIndex = Number(cell.dataset.colIndex);
22366
+ rowIndex = Number(cell.dataset.rowIndex);
22367
+ columnId = context.getComputed().computedVisibleColumns[colIndex].id;
22368
+ rowId = context.dataSourceApi.getRowInfoArray()[rowIndex].id;
22369
+ }
22370
+ const param = {
22371
+ columnId,
22372
+ colIndex,
22373
+ rowId,
22374
+ rowIndex,
22375
+ event,
22376
+ target: cell != null ? cell : event.target
22377
+ };
22378
+ if (cell) {
22379
+ state.cellContextMenu(param);
22380
+ }
22381
+ state.contextMenu(param);
22382
+ }, []);
22383
+ const { renderCell, renderDetailRow } = useCellRendering({
22384
+ imperativeApi: api,
22385
+ getComputed,
22386
+ domRef: componentState.domRef,
22387
+ bodySize,
22388
+ computed
22389
+ });
22390
+ return /* @__PURE__ */ React67.createElement(InfiniteTableBodyContainer, { onContextMenu }, /* @__PURE__ */ React67.createElement(
22391
+ HeadlessTable,
22392
+ {
22393
+ debugId,
22394
+ tabIndex: 0,
22395
+ activeRowIndex: componentState.ready && keyboardNavigation === "row" ? activeRowIndex : null,
22396
+ activeCellIndex: componentState.ready && keyboardNavigation === "cell" && // we want to hide the active cell indicator while column reodering is happening
22397
+ !componentState.columnReorderDragColumnId ? activeCellIndex : null,
22398
+ scrollStopDelay,
22399
+ renderer,
22400
+ onRenderUpdater,
22401
+ brain,
22402
+ activeCellRowHeight,
22403
+ renderCell,
22404
+ renderDetailRow: rowDetailRenderer ? renderDetailRow : void 0,
22405
+ cellHoverClassNames: HOVERED_CLASS_NAMES,
22406
+ scrollerDOMRef
22407
+ }
22408
+ ), /* @__PURE__ */ React67.createElement(LoadMaskCmp, { visible: loading }, loadingText));
22409
+ }
22198
22410
  var InfiniteTableComponent = React67.memo(
22199
22411
  function InfiniteTableComponent2() {
22200
- var _a;
22201
22412
  const context = useInfiniteTable();
22202
22413
  const masterContext = useMasterDetailContext();
22203
- const { state: componentState, getComputed, computed, api } = context;
22414
+ const { state: componentState, api, children: initialChildren } = context;
22204
22415
  const {
22205
- componentState: { loading, dataArray },
22416
+ componentState: { dataArray },
22206
22417
  getState: getDataSourceState,
22207
22418
  componentActions: dataSourceActions
22208
22419
  } = useDataSourceContextValue();
22209
22420
  const {
22210
22421
  domRef,
22211
- scrollerDOMRef,
22212
22422
  portalDOMRef,
22213
- loadingText,
22214
- rowDetailRenderer,
22215
- header,
22216
22423
  onRowHeightCSSVarChange,
22217
22424
  onRowDetailHeightCSSVarChange,
22218
22425
  onColumnHeaderHeightCSSVarChange,
22219
22426
  rowHeightCSSVar,
22220
22427
  rowDetailHeightCSSVar,
22221
22428
  columnHeaderHeightCSSVar,
22222
- components: components2,
22223
22429
  scrollStopDelay,
22224
22430
  brain,
22225
- headerBrain,
22226
- renderer,
22227
- keyboardNavigation,
22228
22431
  activeRowIndex,
22229
- activeCellIndex,
22230
- onRenderUpdater,
22231
- debugId
22432
+ activeCellIndex
22232
22433
  } = componentState;
22233
22434
  let { licenseKey } = componentState;
22234
22435
  if (!licenseKey && InfiniteTable.licenseKey) {
@@ -22237,16 +22438,6 @@ var InfiniteTableComponent = React67.memo(
22237
22438
  useScrollToActiveRow(activeRowIndex, dataArray.length, api);
22238
22439
  useScrollToActiveCell(activeCellIndex, dataArray.length, api);
22239
22440
  const { onKeyDown: onKeyDown2 } = useDOMEventHandlers();
22240
- const { bodySize } = componentState;
22241
- const { scrollbars, computedRowHeight, computedRowSizeCacheForDetails } = computed;
22242
- const activeCellRowHeight = (computedRowSizeCacheForDetails == null ? void 0 : computedRowSizeCacheForDetails.getRowHeight) || computedRowHeight;
22243
- const { renderCell, renderDetailRow } = useCellRendering({
22244
- imperativeApi: api,
22245
- getComputed,
22246
- domRef: componentState.domRef,
22247
- bodySize,
22248
- computed
22249
- });
22250
22441
  React67.useEffect(() => {
22251
22442
  const dataSourceState = getDataSourceState();
22252
22443
  const onChange = debounce(
@@ -22262,7 +22453,6 @@ var InfiniteTableComponent = React67.memo(
22262
22453
  }, [brain, scrollStopDelay]);
22263
22454
  const licenseValid = useLicense(licenseKey);
22264
22455
  const domProps = useDOMProps(componentState.domProps);
22265
- const LoadMaskCmp = (_a = components2 == null ? void 0 : components2.LoadMask) != null ? _a : LoadMask;
22266
22456
  React67.useEffect(() => {
22267
22457
  brain.setScrollStopDelay(scrollStopDelay);
22268
22458
  dataSourceActions.scrollStopDelayUpdatedByTable = scrollStopDelay;
@@ -22286,74 +22476,13 @@ var InfiniteTableComponent = React67.memo(
22286
22476
  globalThis.infiniteApi = context.api;
22287
22477
  }
22288
22478
  }, [componentState.ready]);
22289
- const onContextMenu = React67.useCallback((event) => {
22290
- const state = context.getState();
22291
- const target = event.target;
22292
- if (!masterContext && event._from_row_detail) {
22293
- return;
22294
- }
22295
- if (masterContext) {
22296
- event._from_row_detail = true;
22297
- }
22298
- const cell = selectParentUntil(
22299
- target,
22300
- getCellSelector(),
22301
- state.domRef.current
22302
- );
22303
- let columnId;
22304
- let colIndex;
22305
- let rowId;
22306
- let rowIndex;
22307
- if (cell) {
22308
- colIndex = Number(cell.dataset.colIndex);
22309
- rowIndex = Number(cell.dataset.rowIndex);
22310
- columnId = context.getComputed().computedVisibleColumns[colIndex].id;
22311
- rowId = context.dataSourceApi.getRowInfoArray()[rowIndex].id;
22312
- }
22313
- const param = {
22314
- columnId,
22315
- colIndex,
22316
- rowId,
22317
- rowIndex,
22318
- event,
22319
- target: cell != null ? cell : event.target
22320
- };
22321
- if (cell) {
22322
- state.cellContextMenu(param);
22323
- }
22324
- state.contextMenu(param);
22325
- }, []);
22326
22479
  React67.useEffect(() => {
22327
22480
  if (masterContext) {
22328
22481
  portalDOMRef.current = masterContext.getMasterState().portalDOMRef.current;
22329
22482
  }
22330
22483
  }, []);
22331
- return /* @__PURE__ */ React67.createElement("div", __spreadValues({ onKeyDown: onKeyDown2, ref: domRef }, domProps), header ? /* @__PURE__ */ React67.createElement(
22332
- TableHeaderWrapper,
22333
- {
22334
- bodyBrain: brain,
22335
- headerBrain,
22336
- scrollbars
22337
- }
22338
- ) : null, /* @__PURE__ */ React67.createElement(InfiniteTableBody, { onContextMenu }, /* @__PURE__ */ React67.createElement(
22339
- HeadlessTable,
22340
- {
22341
- debugId,
22342
- tabIndex: 0,
22343
- activeRowIndex: componentState.ready && keyboardNavigation === "row" ? activeRowIndex : null,
22344
- activeCellIndex: componentState.ready && keyboardNavigation === "cell" && // we want to hide the active cell indicator while column reodering is happening
22345
- !componentState.columnReorderDragColumnId ? activeCellIndex : null,
22346
- scrollStopDelay,
22347
- renderer,
22348
- onRenderUpdater,
22349
- brain,
22350
- activeCellRowHeight,
22351
- renderCell,
22352
- renderDetailRow: rowDetailRenderer ? renderDetailRow : void 0,
22353
- cellHoverClassNames: HOVERED_CLASS_NAMES,
22354
- scrollerDOMRef
22355
- }
22356
- ), /* @__PURE__ */ React67.createElement(LoadMaskCmp, { visible: loading }, loadingText)), /* @__PURE__ */ React67.createElement(
22484
+ const children = initialChildren != null ? initialChildren : /* @__PURE__ */ React67.createElement(React67.Fragment, null, /* @__PURE__ */ React67.createElement(InfiniteTableHeader2, null), /* @__PURE__ */ React67.createElement(InfiniteTableBody, null));
22485
+ return /* @__PURE__ */ React67.createElement("div", __spreadValues({ onKeyDown: onKeyDown2, ref: domRef }, domProps), children, /* @__PURE__ */ React67.createElement(
22357
22486
  "div",
22358
22487
  {
22359
22488
  ref: portalDOMRef,
@@ -22387,10 +22516,12 @@ var InfiniteTableComponent = React67.memo(
22387
22516
  varName: columnHeaderHeightCSSVar,
22388
22517
  onChange: onColumnHeaderHeightCSSVarChange
22389
22518
  }
22390
- ) : null, /* @__PURE__ */ React67.createElement(InfiniteTableFooter, null), licenseValid ? null : /* @__PURE__ */ React67.createElement(InfiniteTableLicenseFooter, null), /* @__PURE__ */ React67.createElement(FocusDetect, null));
22519
+ ) : null, licenseValid ? null : /* @__PURE__ */ React67.createElement(InfiniteTableLicenseFooter, null), /* @__PURE__ */ React67.createElement(FocusDetect, null));
22391
22520
  }
22392
22521
  );
22393
- function InfiniteTableContextProvider() {
22522
+ function InfiniteTableContextProvider({
22523
+ children
22524
+ }) {
22394
22525
  const { componentActions, componentState } = useComponentState();
22395
22526
  const { scrollerDOMRef, scrollTopKey } = componentState;
22396
22527
  const computed = useComputed();
@@ -22430,7 +22561,8 @@ function InfiniteTableContextProvider() {
22430
22561
  getComputed,
22431
22562
  getState,
22432
22563
  api: imperativeApi,
22433
- dataSourceApi
22564
+ dataSourceApi,
22565
+ children
22434
22566
  };
22435
22567
  useResizeObserver(
22436
22568
  scrollerDOMRef,
@@ -22463,7 +22595,7 @@ var InfiniteTable = function(props) {
22463
22595
  rowHeight: DEFAULT_ROW_HEIGHT,
22464
22596
  columnHeaderHeight: DEFAULT_COLUMN_HEADER_HEIGHT
22465
22597
  }, props),
22466
- /* @__PURE__ */ React67.createElement(InfiniteTableContextProvider, null)
22598
+ /* @__PURE__ */ React67.createElement(InfiniteTableContextProvider, { children: props.children })
22467
22599
  )
22468
22600
  );
22469
22601
  if (false) {
@@ -22471,6 +22603,10 @@ var InfiniteTable = function(props) {
22471
22603
  }
22472
22604
  return table;
22473
22605
  };
22606
+ InfiniteTable.Header = InfiniteTableHeader2;
22607
+ InfiniteTable.Body = InfiniteTableBody;
22608
+ InfiniteTable.HScrollSyncContent = HScrollSyncContent;
22609
+ InfiniteTable.Footer = () => /* @__PURE__ */ React67.createElement(InfiniteTableFooter, null);
22474
22610
 
22475
22611
  // src/components/InfiniteTable/eventHandlers/keyboardShortcuts.ts
22476
22612
  var instantEdit = {
@@ -22517,7 +22653,7 @@ var keyboardShortcuts = {
22517
22653
  };
22518
22654
 
22519
22655
  // src/components/hooks/useInterceptedMap.ts
22520
- import { useEffect as useEffect37 } from "react";
22656
+ import { useEffect as useEffect38 } from "react";
22521
22657
  function interceptMap(map2, fns) {
22522
22658
  const { set, delete: deleteKey, clear } = map2;
22523
22659
  if (fns.set) {
@@ -22717,6 +22853,7 @@ export {
22717
22853
  useDataSource,
22718
22854
  useEffectWithChanges,
22719
22855
  useEffectWithObject,
22856
+ useGridScroll,
22720
22857
  useInfiniteColumnCell,
22721
22858
  useInfiniteColumnEditor,
22722
22859
  useInfiniteColumnFilterEditor,
@@ -22724,6 +22861,7 @@ export {
22724
22861
  useMasterRowInfo,
22725
22862
  useOverlay,
22726
22863
  useOverlayPortal,
22727
- useRowInfoReducers
22864
+ useRowInfoReducers,
22865
+ useVisibleColumnSizes
22728
22866
  };
22729
22867
  //!collapsed || lazyLoad;