ag-grid-community 33.2.3 → 33.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (144) hide show
  1. package/LICENSE.txt +1 -1
  2. package/dist/ag-grid-community.js +2834 -1393
  3. package/dist/ag-grid-community.min.js +1 -1
  4. package/dist/ag-grid-community.min.noStyle.js +1 -1
  5. package/dist/ag-grid-community.noStyle.js +2810 -1369
  6. package/dist/package/main.cjs.js +8950 -7722
  7. package/dist/package/main.cjs.min.js +32 -33
  8. package/dist/package/main.esm.min.mjs +32 -33
  9. package/dist/package/main.esm.mjs +8950 -7722
  10. package/dist/package/package.json +34 -3
  11. package/dist/types/package.json +34 -3
  12. package/dist/types/src/api/coreApi.d.ts +2 -0
  13. package/dist/types/src/api/gridApi.d.ts +663 -147
  14. package/dist/types/src/clientSideRowModel/clientSideRowModel.d.ts +2 -6
  15. package/dist/types/src/columnMove/columnDrag/moveColumnFeature.d.ts +1 -0
  16. package/dist/types/src/columns/columnFactoryUtils.d.ts +12 -4
  17. package/dist/types/src/columns/columnGroups/columnGroupService.d.ts +3 -4
  18. package/dist/types/src/columns/columnGroups/columnGroupUtils.d.ts +3 -0
  19. package/dist/types/src/columns/columnKeyCreator.d.ts +4 -1
  20. package/dist/types/src/columns/columnModel.d.ts +13 -1
  21. package/dist/types/src/columns/columnViewportService.d.ts +1 -1
  22. package/dist/types/src/columns/selectionColService.d.ts +13 -2
  23. package/dist/types/src/components/framework/userCompUtils.d.ts +1 -1
  24. package/dist/types/src/context/context.d.ts +6 -4
  25. package/dist/types/src/dragAndDrop/rowDragFeature.d.ts +19 -3
  26. package/dist/types/src/edit/cell-editing.css-GENERATED.d.ts +1 -1
  27. package/dist/types/src/entities/agProvidedColumnGroup.d.ts +1 -0
  28. package/dist/types/src/entities/colDef.d.ts +79 -13
  29. package/dist/types/src/entities/gridOptions.d.ts +250 -16
  30. package/dist/types/src/entities/rowNode.d.ts +6 -0
  31. package/dist/types/src/entities/rowNodeUtils.d.ts +3 -1
  32. package/dist/types/src/environment.d.ts +3 -5
  33. package/dist/types/src/eventService.d.ts +1 -1
  34. package/dist/types/src/eventTypes.d.ts +2 -2
  35. package/dist/types/src/events.d.ts +14 -0
  36. package/dist/types/src/export/baseGridSerializingSession.d.ts +2 -6
  37. package/dist/types/src/filter/column-filters.css-GENERATED.d.ts +1 -1
  38. package/dist/types/src/filter/filterManager.d.ts +2 -1
  39. package/dist/types/src/filter/filterMenuFactory.d.ts +3 -2
  40. package/dist/types/src/filter/provided/iSimpleFilter.d.ts +1 -1
  41. package/dist/types/src/filter/provided/number/iNumberFilter.d.ts +1 -1
  42. package/dist/types/src/gridBodyComp/gridBodyCtrl.d.ts +1 -0
  43. package/dist/types/src/gridBodyComp/gridBodyScrollFeature.d.ts +3 -1
  44. package/dist/types/src/gridOptionsService.d.ts +7 -0
  45. package/dist/types/src/gridOptionsUtils.d.ts +2 -1
  46. package/dist/types/src/headerRendering/cells/abstractCell/abstractHeaderCellComp.d.ts +1 -1
  47. package/dist/types/src/headerRendering/cells/abstractCell/abstractHeaderCellCtrl.d.ts +1 -1
  48. package/dist/types/src/headerRendering/cells/column/headerCellCtrl.d.ts +1 -1
  49. package/dist/types/src/headerRendering/cells/column/headerComp.d.ts +11 -101
  50. package/dist/types/src/headerRendering/cells/columnGroup/headerGroupComp.d.ts +24 -1
  51. package/dist/types/src/headerRendering/gridHeaderCtrl.d.ts +1 -1
  52. package/dist/types/src/interfaces/agFieldParams.d.ts +1 -1
  53. package/dist/types/src/interfaces/gridState.d.ts +8 -0
  54. package/dist/types/src/interfaces/groupCellRenderer.d.ts +1 -1
  55. package/dist/types/src/interfaces/iClientSideRowModel.d.ts +2 -3
  56. package/dist/types/src/interfaces/iDragItem.d.ts +3 -1
  57. package/dist/types/src/interfaces/iFind.d.ts +1 -4
  58. package/dist/types/src/interfaces/iFooterService.d.ts +4 -0
  59. package/dist/types/src/interfaces/iFrameworkEventListenerService.d.ts +7 -2
  60. package/dist/types/src/interfaces/iHeader.d.ts +90 -0
  61. package/dist/types/src/interfaces/iMenuFactory.d.ts +2 -2
  62. package/dist/types/src/interfaces/iModule.d.ts +3 -0
  63. package/dist/types/src/interfaces/iPinnedRowModel.d.ts +51 -0
  64. package/dist/types/src/interfaces/iRowNode.d.ts +4 -1
  65. package/dist/types/src/interfaces/iSetFilter.d.ts +1 -1
  66. package/dist/types/src/interfaces/iShowRowGroupColsValueService.d.ts +13 -0
  67. package/dist/types/src/interfaces/masterDetail.d.ts +2 -2
  68. package/dist/types/src/interfaces/menuItem.d.ts +1 -1
  69. package/dist/types/src/interfaces/rowNumbers.d.ts +11 -0
  70. package/dist/types/src/localEventService.d.ts +1 -0
  71. package/dist/types/src/main-umd-noStyles.d.ts +1 -0
  72. package/dist/types/src/main.d.ts +20 -15
  73. package/dist/types/src/misc/state/stateService.d.ts +2 -0
  74. package/dist/types/src/misc/state/stateUtils.d.ts +22 -0
  75. package/dist/types/src/misc/touchService.d.ts +2 -1
  76. package/dist/types/src/modules/moduleRegistry.d.ts +3 -1
  77. package/dist/types/src/pinnedRowModel/manualPinnedRow.css-GENERATED.d.ts +1 -0
  78. package/dist/types/src/pinnedRowModel/manualPinnedRowModel.d.ts +43 -0
  79. package/dist/types/src/pinnedRowModel/manualPinnedRowUtils.d.ts +34 -0
  80. package/dist/types/src/pinnedRowModel/pinnedRowApi.d.ts +2 -1
  81. package/dist/types/src/pinnedRowModel/pinnedRowModel.d.ts +17 -19
  82. package/dist/types/src/pinnedRowModel/pinnedRowModule.d.ts +1 -1
  83. package/dist/types/src/pinnedRowModel/pinnedRowUtils.d.ts +6 -0
  84. package/dist/types/src/pinnedRowModel/staticPinnedRowModel.d.ts +39 -0
  85. package/dist/types/src/propertyKeys.d.ts +1 -1
  86. package/dist/types/src/rendering/cell/cellComp.d.ts +1 -1
  87. package/dist/types/src/rendering/cell/cellCtrl.d.ts +9 -3
  88. package/dist/types/src/rendering/cell/cellFlashService.d.ts +6 -1
  89. package/dist/types/src/rendering/cssClassManager.d.ts +1 -4
  90. package/dist/types/src/rendering/row/rowAutoHeightService.d.ts +5 -0
  91. package/dist/types/src/rendering/row/rowCtrl.d.ts +4 -1
  92. package/dist/types/src/rendering/rowRenderer.d.ts +15 -2
  93. package/dist/types/src/selection/baseSelectionService.d.ts +1 -0
  94. package/dist/types/src/selection/rowRangeSelectionContext.d.ts +9 -5
  95. package/dist/types/src/selection/selectAllFeature.d.ts +0 -2
  96. package/dist/types/src/selection/selectionService.d.ts +3 -1
  97. package/dist/types/src/sort/sortIndicatorComp.d.ts +6 -6
  98. package/dist/types/src/theming/core/core-css.d.ts +24 -0
  99. package/dist/types/src/theming/core/core.css-GENERATED.d.ts +1 -1
  100. package/dist/types/src/theming/parts/icon-set/alpine/icon-set-alpine.css-GENERATED.d.ts +1 -1
  101. package/dist/types/src/theming/parts/icon-set/balham/icon-set-balham.css-GENERATED.d.ts +1 -1
  102. package/dist/types/src/theming/parts/icon-set/material/icon-set-material.css-GENERATED.d.ts +1 -1
  103. package/dist/types/src/theming/parts/input-style/input-style-base.css-GENERATED.d.ts +1 -1
  104. package/dist/types/src/theming/parts/input-style/input-style-bordered.css-GENERATED.d.ts +1 -1
  105. package/dist/types/src/theming/parts/input-style/input-style-underlined.css-GENERATED.d.ts +1 -1
  106. package/dist/types/src/theming/parts/theme/material-adjustments.css-GENERATED.d.ts +1 -1
  107. package/dist/types/src/utils/dom.d.ts +2 -2
  108. package/dist/types/src/utils/icon.d.ts +2 -2
  109. package/dist/types/src/utils/string.d.ts +6 -1
  110. package/dist/types/src/validation/errorMessages/errorText.d.ts +16 -1
  111. package/dist/types/src/validation/rules/colDefValidations.d.ts +2 -1
  112. package/dist/types/src/validation/rules/gridOptionsValidations.d.ts +2 -0
  113. package/dist/types/src/validation/validationService.d.ts +2 -3
  114. package/dist/types/src/validation/validationTypes.d.ts +8 -6
  115. package/dist/types/src/valueService/valueService.d.ts +4 -14
  116. package/dist/types/src/version.d.ts +1 -1
  117. package/dist/types/src/widgets/agAbstractField.d.ts +1 -1
  118. package/dist/types/src/widgets/component.d.ts +4 -5
  119. package/package.json +34 -3
  120. package/styles/_css-content.scss +227 -21
  121. package/styles/_icon-font-codes.scss +4 -0
  122. package/styles/ag-grid-no-native-widgets.css +109 -6
  123. package/styles/ag-grid-no-native-widgets.min.css +3 -3
  124. package/styles/ag-grid.css +109 -6
  125. package/styles/ag-grid.min.css +3 -3
  126. package/styles/ag-theme-alpine.css +1 -1
  127. package/styles/ag-theme-alpine.min.css +1 -1
  128. package/styles/ag-theme-balham.css +1 -1
  129. package/styles/ag-theme-balham.min.css +1 -1
  130. package/styles/ag-theme-material.css +1 -1
  131. package/styles/ag-theme-material.min.css +1 -1
  132. package/styles/ag-theme-quartz.css +1 -1
  133. package/styles/ag-theme-quartz.min.css +1 -1
  134. package/styles/agGridAlpineFont.css +1 -1
  135. package/styles/agGridAlpineFont.min.css +1 -1
  136. package/styles/agGridBalhamFont.css +1 -1
  137. package/styles/agGridBalhamFont.min.css +1 -1
  138. package/styles/agGridClassicFont.css +1 -1
  139. package/styles/agGridClassicFont.min.css +1 -1
  140. package/styles/agGridMaterialFont.css +1 -1
  141. package/styles/agGridMaterialFont.min.css +1 -1
  142. package/styles/agGridQuartzFont.css +1 -1
  143. package/styles/agGridQuartzFont.min.css +1 -1
  144. package/dist/types/src/validation/rules/menuItemValidations.d.ts +0 -3
@@ -1,6 +1,7 @@
1
1
  import type { BeanCollection } from '../context/context';
2
- import type { IRowNode } from '../interfaces/iRowNode';
2
+ import type { IRowNode, RowPinnedType } from '../interfaces/iRowNode';
3
3
  export declare function getPinnedTopRowCount(beans: BeanCollection): number;
4
4
  export declare function getPinnedBottomRowCount(beans: BeanCollection): number;
5
5
  export declare function getPinnedTopRow(beans: BeanCollection, index: number): IRowNode | undefined;
6
6
  export declare function getPinnedBottomRow(beans: BeanCollection, index: number): IRowNode | undefined;
7
+ export declare function forEachPinnedRow(beans: BeanCollection, floating: NonNullable<RowPinnedType>, callback: (rowNode: IRowNode) => void): void;
@@ -1,32 +1,30 @@
1
1
  import type { NamedBean } from '../context/bean';
2
2
  import { BeanStub } from '../context/beanStub';
3
- import { RowNode } from '../entities/rowNode';
3
+ import type { AgColumn } from '../entities/agColumn';
4
+ import type { RowNode } from '../entities/rowNode';
5
+ import type { RowPinningState } from '../interfaces/gridState';
6
+ import type { IPinnedRowModel } from '../interfaces/iPinnedRowModel';
4
7
  import type { RowPinnedType } from '../interfaces/iRowNode';
5
- export declare class PinnedRowModel extends BeanStub implements NamedBean {
8
+ export declare class PinnedRowModel extends BeanStub implements NamedBean, IPinnedRowModel {
6
9
  beanName: "pinnedRowModel";
7
- private nextId;
8
- private pinnedTopRows;
9
- private pinnedBottomRows;
10
+ private inner;
10
11
  postConstruct(): void;
11
- isEmpty(floating: RowPinnedType): boolean;
12
- isRowsToRender(floating: RowPinnedType): boolean;
13
- private onGridStylesChanges;
12
+ reset(): void;
13
+ isEmpty(container: NonNullable<RowPinnedType>): boolean;
14
+ isManual(): boolean;
15
+ isRowsToRender(container: NonNullable<RowPinnedType>): boolean;
16
+ pinRow(node: RowNode<any>, container: RowPinnedType, column?: AgColumn | null): void;
14
17
  ensureRowHeightsValid(): boolean;
15
- private setPinnedRowData;
16
- /**
17
- * Updates existing RowNode instances and creates new ones if necessary
18
- *
19
- * Setting data as `undefined` will clear row nodes
20
- */
21
- private updateNodesFromRowData;
22
- private setRowTopAndRowIndex;
18
+ getPinnedRowById(id: string, container: NonNullable<RowPinnedType>): RowNode<any> | undefined;
23
19
  getPinnedTopTotalHeight(): number;
24
20
  getPinnedBottomTotalHeight(): number;
25
21
  getPinnedTopRowCount(): number;
26
22
  getPinnedBottomRowCount(): number;
27
23
  getPinnedTopRow(index: number): RowNode | undefined;
28
24
  getPinnedBottomRow(index: number): RowNode | undefined;
29
- getPinnedRowById(id: string, floating: NonNullable<RowPinnedType>): RowNode | undefined;
30
- forEachPinnedRow(floating: NonNullable<RowPinnedType>, callback: (node: RowNode, index: number) => void): void;
31
- private getCache;
25
+ forEachPinnedRow(container: NonNullable<RowPinnedType>, callback: (node: RowNode, index: number) => void): void;
26
+ getPinnedState(): RowPinningState;
27
+ setPinnedState(state: RowPinningState): void;
28
+ setGrandTotalPinned(value: RowPinnedType): void;
29
+ getGrandTotalPinned(): RowPinnedType;
32
30
  }
@@ -2,6 +2,6 @@ import type { _PinnedRowGridApi } from '../api/gridApi';
2
2
  import type { _ModuleWithApi } from '../interfaces/iModule';
3
3
  /**
4
4
  * @feature Rows -> Row Pinning
5
- * @gridOption pinnedTopRowData, pinnedBottomRowData
5
+ * @gridOption enableRowPinning, isRowPinnable, isRowPinned, pinnedTopRowData, pinnedBottomRowData
6
6
  */
7
7
  export declare const PinnedRowModule: _ModuleWithApi<_PinnedRowGridApi>;
@@ -0,0 +1,6 @@
1
+ import type { RowNode } from '../entities/rowNode';
2
+ import type { IPinnedRowModel } from '../interfaces/iPinnedRowModel';
3
+ import type { RowPinnedType } from '../interfaces/iRowNode';
4
+ /** Whether the given node is pinned manually to the top or bottom container */
5
+ export declare function _isManualPinnedRow(rowNode: RowNode): boolean;
6
+ export declare function _getNodesInRangeForSelection(rowModel: IPinnedRowModel, float: NonNullable<RowPinnedType>, start: RowNode | undefined, end: RowNode | undefined): RowNode[];
@@ -0,0 +1,39 @@
1
+ import { BeanStub } from '../context/beanStub';
2
+ import { RowNode } from '../entities/rowNode';
3
+ import type { RowPinningState } from '../interfaces/gridState';
4
+ import type { IPinnedRowModel } from '../interfaces/iPinnedRowModel';
5
+ import type { RowPinnedType } from '../interfaces/iRowNode';
6
+ export declare class StaticPinnedRowModel extends BeanStub implements IPinnedRowModel {
7
+ private nextId;
8
+ private pinnedTopRows;
9
+ private pinnedBottomRows;
10
+ postConstruct(): void;
11
+ reset(): void;
12
+ isEmpty(floating: RowPinnedType): boolean;
13
+ isRowsToRender(floating: RowPinnedType): boolean;
14
+ isManual(): boolean;
15
+ pinRow(_node: RowNode<any>, _container: RowPinnedType): void;
16
+ private onGridStylesChanges;
17
+ ensureRowHeightsValid(): boolean;
18
+ private setPinnedRowData;
19
+ /**
20
+ * Updates existing RowNode instances and creates new ones if necessary
21
+ *
22
+ * Setting data as `undefined` will clear row nodes
23
+ */
24
+ private updateNodesFromRowData;
25
+ private setRowTopAndRowIndex;
26
+ getPinnedTopTotalHeight(): number;
27
+ getPinnedBottomTotalHeight(): number;
28
+ getPinnedTopRowCount(): number;
29
+ getPinnedBottomRowCount(): number;
30
+ getPinnedTopRow(index: number): RowNode | undefined;
31
+ getPinnedBottomRow(index: number): RowNode | undefined;
32
+ getPinnedRowById(id: string, floating: NonNullable<RowPinnedType>): RowNode | undefined;
33
+ forEachPinnedRow(floating: NonNullable<RowPinnedType>, callback: (node: RowNode, index: number) => void): void;
34
+ private getCache;
35
+ getPinnedState(): RowPinningState;
36
+ setPinnedState(): void;
37
+ getGrandTotalPinned(): RowPinnedType;
38
+ setGrandTotalPinned(): void;
39
+ }
@@ -29,5 +29,5 @@ export declare const _NUMBER_GRID_OPTIONS: KeysWithType<number>[];
29
29
  export declare const _BOOLEAN_MIXED_GRID_OPTIONS: KeysWithType<boolean>[];
30
30
  export declare const _BOOLEAN_GRID_OPTIONS: KeysWithType<boolean>[];
31
31
  export declare const _FUNCTION_GRID_OPTIONS: (CallbackKeys | FunctionKeys)[];
32
- export declare const _ALL_GRID_OPTIONS: GridOptionKey[];
32
+ export declare const _GET_ALL_GRID_OPTIONS: () => GridOptionKey[];
33
33
  export {};
@@ -6,7 +6,7 @@ export declare class CellComp extends Component {
6
6
  private eCell;
7
7
  private eCellWrapper;
8
8
  private eCellValue;
9
- private cellCssClassManager;
9
+ private cellCssManager;
10
10
  private readonly column;
11
11
  private readonly rowNode;
12
12
  private eRow;
@@ -19,7 +19,7 @@ import type { DndSourceComp } from '../dndSourceComp';
19
19
  import type { RowCtrl } from '../row/rowCtrl';
20
20
  import type { CellSpan } from '../spanning/rowSpanCache';
21
21
  export interface ICellComp {
22
- addOrRemoveCssClass(cssClassName: string, on: boolean): void;
22
+ toggleCss(cssClassName: string, on: boolean): void;
23
23
  setUserStyles(styles: CellStyle): void;
24
24
  getFocusableElement(): HTMLElement;
25
25
  setIncludeSelection(include: boolean): void;
@@ -39,7 +39,6 @@ export declare class CellCtrl extends BeanStub {
39
39
  readonly rowNode: RowNode;
40
40
  readonly rowCtrl: RowCtrl;
41
41
  readonly instanceId: CellCtrlInstanceId;
42
- readonly colIdSanitised: string;
43
42
  eGui: HTMLElement;
44
43
  comp: ICellComp;
45
44
  editCompDetails?: UserCompDetails;
@@ -47,6 +46,7 @@ export declare class CellCtrl extends BeanStub {
47
46
  value: any;
48
47
  valueFormatted: any;
49
48
  private rangeFeature;
49
+ private rowResizeFeature;
50
50
  private positionFeature;
51
51
  private customStyleFeature;
52
52
  private tooltipFeature;
@@ -57,7 +57,7 @@ export declare class CellCtrl extends BeanStub {
57
57
  private includeSelection;
58
58
  private includeDndSource;
59
59
  private includeRowDrag;
60
- private isAutoHeight;
60
+ isAutoHeight: boolean;
61
61
  suppressRefreshCell: boolean;
62
62
  private customRowDragComp;
63
63
  onCompAttachedFuncs: (() => void)[];
@@ -79,6 +79,12 @@ export declare class CellCtrl extends BeanStub {
79
79
  private showValue;
80
80
  private setupControlComps;
81
81
  isForceWrapper(): boolean;
82
+ /**
83
+ * Wrapper providing general conditions under which control elements (e.g. checkboxes and drag handles)
84
+ * are rendered for a particular cell.
85
+ * @param value Whether to render the control in the specific context of the caller
86
+ * @param allowManuallyPinned Whether manually pinned rows are permitted this form of control element
87
+ */
82
88
  private isIncludeControl;
83
89
  private isCheckboxSelection;
84
90
  private refreshShouldDestroy;
@@ -5,7 +5,12 @@ import type { FlashCellsParams } from '../../interfaces/iCellsParams';
5
5
  import type { CellCtrl } from './cellCtrl';
6
6
  export declare class CellFlashService extends BeanStub implements NamedBean {
7
7
  beanName: "cellFlashSvc";
8
+ private nextAnimationTime;
9
+ private nextAnimationCycle;
10
+ private animations;
11
+ private animateCell;
12
+ private advanceAnimations;
8
13
  onFlashCells(cellCtrl: CellCtrl, event: FlashCellsEvent): void;
9
14
  flashCell(cellCtrl: CellCtrl, delays?: Pick<FlashCellsParams, 'fadeDuration' | 'flashDuration'>): void;
10
- private animateCell;
15
+ destroy(): void;
11
16
  }
@@ -2,8 +2,5 @@ export declare class CssClassManager {
2
2
  private getGui;
3
3
  private cssClassStates;
4
4
  constructor(getGui: () => HTMLElement | undefined | null);
5
- addCssClass(className: string): void;
6
- removeCssClass(className: string): void;
7
- containsCssClass(className: string): boolean;
8
- addOrRemoveCssClass(className: string, addOrRemove: boolean): void;
5
+ toggleCss(className: string, addOrRemove: boolean): void;
9
6
  }
@@ -36,4 +36,9 @@ export declare class RowAutoHeightService extends BeanStub implements NamedBean
36
36
  */
37
37
  setupCellAutoHeight(cellCtrl: CellCtrl, eCellWrapper: HTMLElement | undefined, compBean: BeanStub): boolean;
38
38
  setAutoHeightActive(cols: ColumnCollections): void;
39
+ /**
40
+ * Determines if the row auto height service has cells to grow.
41
+ * @returns true if all of the rendered rows are at least as tall as their rendered cells.
42
+ */
43
+ areRowsMeasured(): boolean;
39
44
  }
@@ -15,7 +15,7 @@ import type { ICellRenderer, ICellRendererParams } from '../cellRenderers/iCellR
15
15
  export type RowCtrlInstanceId = BrandedType<string, 'RowCtrlInstanceId'>;
16
16
  export interface IRowComp {
17
17
  setDomOrder(domOrder: boolean): void;
18
- addOrRemoveCssClass(cssClassName: string, on: boolean): void;
18
+ toggleCss(cssClassName: string, on: boolean): void;
19
19
  setCellCtrls(cellCtrls: CellCtrl[], useFlushSync: boolean): void;
20
20
  showFullWidth(compDetails: UserCompDetails): void;
21
21
  getFullWidthCellRenderer(): ICellRenderer | null | undefined;
@@ -117,6 +117,8 @@ export declare class RowCtrl extends BeanStub<RowCtrlEvent> {
117
117
  refreshFullWidth(): boolean;
118
118
  private addListeners;
119
119
  private addListenersForCellComps;
120
+ /** Should only ever be triggered on source rows (i.e. not on pinned siblings) */
121
+ private onRowPinned;
120
122
  private onRowNodeDataChanged;
121
123
  private postProcessCss;
122
124
  private onRowNodeHighlightChanged;
@@ -165,6 +167,7 @@ export declare class RowCtrl extends BeanStub<RowCtrlEvent> {
165
167
  resetHoveredStatus(el?: HTMLElement): void;
166
168
  private roundRowTopToBounds;
167
169
  forEachGui(gui: RowGui | undefined, callback: (gui: RowGui) => void): void;
170
+ isRowRendered(): boolean;
168
171
  protected onRowHeightChanged(gui?: RowGui): void;
169
172
  destroyFirstPass(suppressAnimation?: boolean): void;
170
173
  destroySecondPass(): void;
@@ -49,11 +49,23 @@ export declare class RowRenderer extends BeanStub implements NamedBean {
49
49
  getStickyTopRowCtrls(): RowCtrl[];
50
50
  getStickyBottomRowCtrls(): RowCtrl[];
51
51
  private updateAllRowCtrls;
52
- private isCellRendered;
52
+ /**
53
+ * Checks if the cell is rendered or not. Also returns true if row ctrl is present but has not rendered
54
+ * cells yet.
55
+ * @returns true if cellCtrl is present, or if the row is present but has not rendered rows yet
56
+ */
57
+ private isCellBeingRendered;
53
58
  /**
54
59
  * Notifies all row and cell controls of any change in focused cell.
55
60
  * @param event cell focused event
56
61
  */
62
+ private updateCellFocus;
63
+ /**
64
+ * Called when a new cell is focused in the grid
65
+ * - if the focused cell isn't rendered; re-draw rows to dry to render it
66
+ * - subsequently updates all cell and row controls with the new focused cell
67
+ * @param event cell focused event
68
+ */
57
69
  private onCellFocusChanged;
58
70
  private onSuppressCellFocusChanged;
59
71
  private registerCellEventListeners;
@@ -70,7 +82,7 @@ export declare class RowRenderer extends BeanStub implements NamedBean {
70
82
  * if the column passed is the first column of the span (used for auto width calculation).
71
83
  */
72
84
  getAllCellsNotSpanningForColumn(column: AgColumn): HTMLElement[];
73
- refreshFloatingRowComps(): void;
85
+ refreshFloatingRowComps(recycleRows?: boolean): void;
74
86
  /**
75
87
  * Determines which row controllers need to be destroyed and re-created vs which ones can
76
88
  * be re-used.
@@ -86,6 +98,7 @@ export declare class RowRenderer extends BeanStub implements NamedBean {
86
98
  */
87
99
  private refreshFloatingRows;
88
100
  private onPinnedRowDataChanged;
101
+ private onPinnedRowsChanged;
89
102
  redrawRow(rowNode: RowNode, suppressEvent?: boolean): void;
90
103
  redrawRows(rowNodes?: IRowNode[]): void;
91
104
  private redrawAfterModelUpdate;
@@ -35,6 +35,7 @@ interface SingleNodeSelection {
35
35
  node: RowNode;
36
36
  newValue: boolean;
37
37
  clearSelection: boolean;
38
+ keepDescendants?: boolean;
38
39
  }
39
40
  interface MultiNodeSelection {
40
41
  select: readonly RowNode[];
@@ -1,5 +1,6 @@
1
1
  import type { RowNode } from '../entities/rowNode';
2
2
  import type { IRowModel } from '../interfaces/iRowModel';
3
+ import type { IPinnedRowModel } from '../main-umd-noStyles';
3
4
  interface RangePartition {
4
5
  keep: readonly RowNode[];
5
6
  discard: readonly RowNode[];
@@ -7,14 +8,15 @@ interface RangePartition {
7
8
  /**
8
9
  * The context of a row range selection operation.
9
10
  *
10
- * Used to model the stateful range selection behaviour found in Excel, where
11
- * a given cell/row represents the "root" of a selection range, and subsequent
12
- * selections are based off that root.
11
+ * Used to model the stateful range selection behaviour found in things like Excel and
12
+ * various file explorers, in particular Windows File Explorer, where a given cell/row
13
+ * represents the "root" of a selection range, and subsequent selections are based off that root.
13
14
  *
14
15
  * See AG-9620 for more
15
16
  */
16
17
  export declare class RowRangeSelectionContext {
17
18
  private readonly rowModel;
19
+ private readonly pinnedRowModel?;
18
20
  /** Whether the user is currently selecting all nodes either via the header checkbox or API */
19
21
  selectAll: boolean;
20
22
  private rootId;
@@ -24,14 +26,15 @@ export declare class RowRangeSelectionContext {
24
26
  */
25
27
  private endId;
26
28
  private cachedRange;
27
- constructor(rowModel: IRowModel);
29
+ constructor(rowModel: IRowModel, pinnedRowModel?: IPinnedRowModel | undefined);
28
30
  reset(): void;
29
31
  setRoot(node: RowNode): void;
30
32
  setEndRange(end: RowNode): void;
31
33
  getRange(): readonly RowNode[];
32
34
  isInRange(node: RowNode): boolean;
33
- getRoot(fallback?: RowNode): RowNode | null;
35
+ getRoot(fallback?: RowNode): RowNode | undefined;
34
36
  private getEnd;
37
+ private getRowNode;
35
38
  /**
36
39
  * Truncates the range to the given node (assumed to be within the current range).
37
40
  * Returns nodes that remain in the current range and those that should be removed
@@ -48,5 +51,6 @@ export declare class RowRangeSelectionContext {
48
51
  * @returns Object of nodes to either keep or discard (i.e. deselect) from the range
49
52
  */
50
53
  extend(node: RowNode, groupSelectsChildren?: boolean): RangePartition;
54
+ private getNodesInRange;
51
55
  }
52
56
  export {};
@@ -13,8 +13,6 @@ export declare class SelectAllFeature extends BeanStub {
13
13
  setComp(ctrl: HeaderCellCtrl): void;
14
14
  private onDisplayedColumnsChanged;
15
15
  private showOrHideSelectAll;
16
- private onModelChanged;
17
- private onSelectionChanged;
18
16
  private updateStateOfCheckbox;
19
17
  private refreshSelectAllLabel;
20
18
  private checkSelectionType;
@@ -19,7 +19,9 @@ export declare class SelectionService extends BaseSelectionService implements Na
19
19
  postConstruct(): void;
20
20
  destroy(): void;
21
21
  handleSelectionEvent(event: MouseEvent | KeyboardEvent, rowNode: RowNode, source: SelectionEventSourceType): number;
22
- setNodesSelected({ newValue, clearSelection, suppressFinishActions, nodes, event, source, }: ISetNodesSelectedParams): number;
22
+ setNodesSelected({ newValue, clearSelection, suppressFinishActions, nodes, event, source, keepDescendants, }: ISetNodesSelectedParams & {
23
+ keepDescendants?: boolean;
24
+ }): number;
23
25
  private selectRange;
24
26
  private selectChildren;
25
27
  getSelectedNodes(): RowNode[];
@@ -2,15 +2,15 @@ import type { AgColumn } from '../entities/agColumn';
2
2
  import type { ComponentSelector } from '../widgets/component';
3
3
  import { Component } from '../widgets/component';
4
4
  export declare class SortIndicatorComp extends Component {
5
- private eSortOrder;
6
- private eSortAsc;
7
- private eSortDesc;
8
- private eSortMixed;
9
- private eSortNone;
5
+ private eSortOrder?;
6
+ private eSortAsc?;
7
+ private eSortDesc?;
8
+ private eSortMixed?;
9
+ private eSortNone?;
10
10
  private column;
11
11
  private suppressOrder;
12
12
  constructor(skipTemplate?: boolean);
13
- attachCustomElements(eSortOrder: HTMLElement, eSortAsc: HTMLElement, eSortDesc: HTMLElement, eSortMixed: HTMLElement, eSortNone: HTMLElement): void;
13
+ attachCustomElements(eSortOrder: HTMLElement | undefined, eSortAsc: HTMLElement | undefined, eSortDesc: HTMLElement | undefined, eSortMixed: HTMLElement | undefined, eSortNone: HTMLElement | undefined): void;
14
14
  setupSort(column: AgColumn, suppressOrder?: boolean): void;
15
15
  private addInIcon;
16
16
  private onSortChanged;
@@ -368,6 +368,30 @@ export type CoreParams = {
368
368
  * Horizontal borders between the grid and rows that are pinned to the top or bottom and the rest of the grid
369
369
  */
370
370
  pinnedRowBorder: BorderValue;
371
+ /**
372
+ * Font-weight for the rows that have been pinned to the top or bottom.
373
+ */
374
+ pinnedRowFontWeight: FontWeightValue;
375
+ /**
376
+ * Background color for the rows that have been pinned to the top or bottom.
377
+ */
378
+ pinnedRowBackgroundColor: ColorValue;
379
+ /**
380
+ * Text color for the rows that have been pinned to the top or bottom.
381
+ */
382
+ pinnedRowTextColor: ColorValue;
383
+ /**
384
+ * Text color for row in the main viewport that has been pinned to the top or bottom.
385
+ */
386
+ pinnedSourceRowTextColor: ColorValue;
387
+ /**
388
+ * Background color for the row in the main viewport that has been pinned to the top or bottom.
389
+ */
390
+ pinnedSourceRowBackgroundColor: ColorValue;
391
+ /**
392
+ * Font-weight for the row in the main viewport that has been pinned to the top or bottom.
393
+ */
394
+ pinnedSourceRowFontWeight: FontWeightValue;
371
395
  /**
372
396
  * Default shadow for elements that float above the grid and are intended to appear separated from it e.g. dialogs and menus
373
397
  */
@@ -1 +1 @@
1
- export declare const coreCSS = ":where(.ag-root-wrapper,.ag-popup,.ag-dnd-ghost,.ag-chart),:where(.ag-root-wrapper,.ag-popup,.ag-dnd-ghost,.ag-chart) :where([class^=ag-]){box-sizing:border-box;&:after,&:before{box-sizing:border-box}&:where(div,span,label):focus-visible{box-shadow:inset var(--ag-focus-shadow);outline:none}}:where(.ag-root-wrapper,.ag-popup,.ag-dnd-ghost,.ag-chart) :where([class^=ag-]) ::-ms-clear{display:none}.ag-aria-description-container{border:0;z-index:9999;clip:rect(1px,1px,1px,1px);height:1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.ag-hidden{display:none!important}.ag-invisible{visibility:hidden!important}.ag-unselectable{-webkit-user-select:none;-moz-user-select:none;user-select:none}.ag-selectable{-webkit-user-select:text;-moz-user-select:text;user-select:text}.ag-tab-guard{display:block;height:0;position:absolute;width:0}:where(.ag-virtual-list-viewport) .ag-tab-guard{position:sticky}.ag-tab-guard-top{top:1px}.ag-tab-guard-bottom{bottom:1px}.ag-shake-left-to-right{animation-direction:alternate;animation-duration:.2s;animation-iteration-count:infinite;animation-name:ag-shake-left-to-right}@keyframes ag-shake-left-to-right{0%{padding-left:6px;padding-right:2px}to{padding-left:2px;padding-right:6px}}.ag-body-horizontal-scroll-viewport,.ag-body-vertical-scroll-viewport,.ag-body-viewport,.ag-center-cols-viewport,.ag-floating-bottom-viewport,.ag-floating-top-viewport,.ag-header-viewport,.ag-sticky-bottom-viewport,.ag-sticky-top-viewport,.ag-virtual-list-viewport{flex:1 1 auto;height:100%;min-width:0;overflow:hidden;position:relative}.ag-viewport{position:relative}.ag-spanning-container{position:absolute;top:0;z-index:1}.ag-body-viewport,.ag-center-cols-viewport,.ag-floating-bottom-viewport,.ag-floating-top-viewport,.ag-header-viewport,.ag-sticky-bottom-viewport,.ag-sticky-top-viewport{overflow-x:auto;-ms-overflow-style:none!important;scrollbar-width:none!important;&::-webkit-scrollbar{display:none!important}}.ag-body-viewport{display:flex;overflow-x:hidden;&:where(.ag-layout-normal){overflow-y:auto;-webkit-overflow-scrolling:touch}}.ag-floating-bottom-container,.ag-floating-top-container,.ag-sticky-bottom-container,.ag-sticky-top-container{min-height:1px}.ag-center-cols-viewport{min-height:100%;width:100%}.ag-body-horizontal-scroll-viewport{overflow-x:scroll}.ag-body-vertical-scroll-viewport{overflow-y:scroll}.ag-virtual-list-viewport{overflow:auto;width:100%}.ag-body-container,.ag-body-horizontal-scroll-container,.ag-body-vertical-scroll-container,.ag-center-cols-container,.ag-floating-bottom-container,.ag-floating-bottom-full-width-container,.ag-floating-top-container,.ag-full-width-container,.ag-header-container,.ag-pinned-left-cols-container,.ag-pinned-right-cols-container,.ag-sticky-bottom-container,.ag-sticky-top-container,.ag-virtual-list-container{position:relative}.ag-floating-bottom-container,.ag-floating-top-container,.ag-header-container,.ag-pinned-left-floating-bottom,.ag-pinned-left-floating-top,.ag-pinned-right-floating-bottom,.ag-pinned-right-floating-top,.ag-sticky-bottom-container,.ag-sticky-top-container{height:100%;white-space:nowrap}.ag-center-cols-container,.ag-pinned-right-cols-container{display:block}.ag-body-horizontal-scroll-container{height:100%}.ag-body-vertical-scroll-container{width:100%}.ag-floating-bottom-full-width-container,.ag-floating-top-full-width-container,.ag-full-width-container,.ag-sticky-bottom-full-width-container,.ag-sticky-top-full-width-container{pointer-events:none;position:absolute;top:0}:where(.ag-ltr) .ag-floating-bottom-full-width-container,:where(.ag-ltr) .ag-floating-top-full-width-container,:where(.ag-ltr) .ag-full-width-container,:where(.ag-ltr) .ag-sticky-bottom-full-width-container,:where(.ag-ltr) .ag-sticky-top-full-width-container{left:0}:where(.ag-rtl) .ag-floating-bottom-full-width-container,:where(.ag-rtl) .ag-floating-top-full-width-container,:where(.ag-rtl) .ag-full-width-container,:where(.ag-rtl) .ag-sticky-bottom-full-width-container,:where(.ag-rtl) .ag-sticky-top-full-width-container{right:0}.ag-full-width-container{width:100%}.ag-floating-bottom-full-width-container,.ag-floating-top-full-width-container{display:inline-block;height:100%;overflow:hidden;width:100%}.ag-virtual-list-container{overflow:hidden}.ag-body{display:flex;flex:1 1 auto;flex-direction:row!important;min-height:0;position:relative}.ag-body-horizontal-scroll,.ag-body-vertical-scroll{display:flex;min-height:0;min-width:0;position:relative;&:where(.ag-scrollbar-invisible){bottom:0;position:absolute;&:where(.ag-apple-scrollbar){opacity:0;transition:opacity .4s;visibility:hidden;&:where(.ag-scrollbar-scrolling,.ag-scrollbar-active){opacity:1;visibility:visible}}}}.ag-body-horizontal-scroll{width:100%;&:where(.ag-scrollbar-invisible){left:0;right:0}}.ag-body-vertical-scroll{height:100%;&:where(.ag-scrollbar-invisible){top:0;z-index:10}}:where(.ag-ltr) .ag-body-vertical-scroll{&:where(.ag-scrollbar-invisible){right:0}}:where(.ag-rtl) .ag-body-vertical-scroll{&:where(.ag-scrollbar-invisible){left:0}}.ag-force-vertical-scroll{overflow-y:scroll!important}.ag-horizontal-left-spacer,.ag-horizontal-right-spacer{height:100%;min-width:0;overflow-x:scroll;&:where(.ag-scroller-corner){overflow-x:hidden}}:where(.ag-row-animation) .ag-row{transition:transform .4s,top .4s,opacity .2s;&:where(.ag-after-created){transition:transform .4s,top .4s,height .4s,opacity .2s}}:where(.ag-row-no-animation) .ag-row{transition:none}.ag-row-loading{align-items:center;display:flex}.ag-row-position-absolute{position:absolute}.ag-row-position-relative{position:relative}.ag-full-width-row{overflow:hidden;pointer-events:all}.ag-row-inline-editing{z-index:1}.ag-row-dragging{z-index:2}.ag-stub-cell{align-items:center;display:flex}.ag-cell{display:inline-block;height:100%;position:absolute;white-space:nowrap;&:focus-visible{box-shadow:none}}.ag-cell-value{flex:1 1 auto}.ag-cell-value,.ag-group-value{overflow:hidden;text-overflow:ellipsis}.ag-cell-wrap-text{white-space:normal;word-break:break-word}:where(.ag-cell) .ag-icon{display:inline-block;vertical-align:middle}.ag-floating-top{border-bottom:var(--ag-pinned-row-border)}.ag-floating-bottom,.ag-floating-top{display:flex;overflow:hidden;position:relative;white-space:nowrap;width:100%}.ag-floating-bottom{border-top:var(--ag-pinned-row-border)}.ag-sticky-bottom,.ag-sticky-top{background-color:var(--ag-background-color);display:flex;height:0;overflow:hidden;position:absolute;width:100%;z-index:1}.ag-opacity-zero{opacity:0!important}.ag-cell-label-container{align-items:center;display:flex;flex-direction:row-reverse;height:100%;justify-content:space-between;width:100%}:where(.ag-right-aligned-header){.ag-cell-label-container{flex-direction:row}.ag-header-cell-text{text-align:end}}.ag-column-group-icons{display:block;>*{cursor:pointer}}:where(.ag-ltr){direction:ltr;.ag-body,.ag-body-horizontal-scroll,.ag-body-viewport,.ag-floating-bottom,.ag-floating-top,.ag-header,.ag-sticky-bottom,.ag-sticky-top{flex-direction:row}}:where(.ag-rtl){direction:rtl;text-align:right;.ag-body,.ag-body-horizontal-scroll,.ag-body-viewport,.ag-floating-bottom,.ag-floating-top,.ag-header,.ag-sticky-bottom,.ag-sticky-top{flex-direction:row-reverse}.ag-icon-contracted,.ag-icon-expanded,.ag-icon-tree-closed{display:block}}:where(.ag-rtl){.ag-icon-contracted,.ag-icon-expanded,.ag-icon-tree-closed{transform:rotate(180deg)}}:where(.ag-rtl){.ag-icon-contracted,.ag-icon-expanded,.ag-icon-tree-closed{transform:rotate(-180deg)}}.ag-measurement-container{height:0;overflow:hidden;visibility:hidden;width:0}.ag-measurement-element-border{display:inline-block;&:before{border-left:var(--ag-internal-measurement-border);content:\"\";display:block}}.ag-group{position:relative;width:100%}.ag-group-title-bar{align-items:center;display:flex;padding:var(--ag-spacing)}.ag-group-title{display:inline;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}:where(.ag-group-title-bar) .ag-group-title{cursor:default}.ag-group-toolbar{align-items:center;display:flex;padding:var(--ag-spacing)}.ag-group-container{display:flex}.ag-disabled .ag-group-container{pointer-events:none}.ag-disabled-group-container,.ag-disabled-group-title-bar{opacity:.5}.ag-group-container-horizontal{flex-flow:row wrap}.ag-group-container-vertical{flex-direction:column}.ag-group-title-bar-icon{cursor:pointer;flex:none}:where(.ag-ltr) .ag-group-title-bar-icon{margin-right:var(--ag-spacing)}:where(.ag-rtl) .ag-group-title-bar-icon{margin-left:var(--ag-spacing)}:where(.ag-group-item-alignment-stretch) .ag-group-item{align-items:stretch}:where(.ag-group-item-alignment-start) .ag-group-item{align-items:flex-start}:where(.ag-group-item-alignment-end) .ag-group-item{align-items:flex-end}.ag-popup-child{top:0;z-index:5;&:where(:not(.ag-tooltip-custom)){box-shadow:var(--ag-popup-shadow)}}.ag-popup-editor{position:absolute;-webkit-user-select:none;-moz-user-select:none;user-select:none}.ag-large-text-input{display:block}:where(.ag-ltr) .ag-row:not(.ag-row-level-0) .ag-pivot-leaf-group{margin-left:var(--ag-row-group-indent-size)}:where(.ag-rtl) .ag-row:not(.ag-row-level-0) .ag-pivot-leaf-group{margin-right:var(--ag-row-group-indent-size)}:where(.ag-ltr) .ag-row-group-leaf-indent{margin-left:calc(var(--ag-cell-widget-spacing) + var(--ag-icon-size))}:where(.ag-rtl) .ag-row-group-leaf-indent{margin-right:calc(var(--ag-cell-widget-spacing) + var(--ag-icon-size))}.ag-value-change-delta{padding:0 2px}.ag-value-change-delta-up{color:var(--ag-value-change-delta-up-color)}.ag-value-change-delta-down{color:var(--ag-value-change-delta-down-color)}.ag-value-change-value{background-color:transparent;border-radius:1px;padding-left:1px;padding-right:1px;transition:background-color 1s}.ag-value-change-value-highlight{background-color:var(--ag-value-change-value-highlight-background-color);transition:background-color .1s}.ag-cell-data-changed{background-color:var(--ag-value-change-value-highlight-background-color)!important}.ag-cell-data-changed-animation{background-color:transparent}.ag-cell-highlight{background-color:var(--ag-range-selection-highlight-color)!important}.ag-row,.ag-spanned-row{color:var(--ag-cell-text-color);font-family:var(--ag-cell-font-family);font-size:var(--ag-data-font-size);white-space:nowrap;--ag-internal-content-line-height:calc(min(var(--ag-row-height), var(--ag-line-height, 1000px)) - var(--ag-internal-row-border-width, 1px) - 2px)}.ag-row{background-color:var(--ag-background-color);border-bottom:var(--ag-row-border);height:var(--ag-row-height);width:100%}:where(.ag-body-vertical-content-no-gap>div>div>div,.ag-body-vertical-content-no-gap>div>div>div>div)>.ag-row-last{border-bottom-color:transparent}.ag-sticky-bottom{border-top:var(--ag-row-border);box-sizing:content-box!important}.ag-group-contracted,.ag-group-expanded{cursor:pointer}.ag-cell,.ag-full-width-row .ag-cell-wrapper.ag-row-group{border:1px solid transparent;line-height:var(--ag-internal-content-line-height);-webkit-font-smoothing:subpixel-antialiased}:where(.ag-ltr) .ag-cell{border-right:var(--ag-column-border)}:where(.ag-rtl) .ag-cell{border-left:var(--ag-column-border)}.ag-spanned-cell-wrapper{background-color:var(--ag-background-color);position:absolute}.ag-spanned-cell-wrapper>.ag-spanned-cell{display:block;position:relative}:where(.ag-ltr) :where(.ag-body-horizontal-content-no-gap) .ag-column-last{border-right-color:transparent}:where(.ag-rtl) :where(.ag-body-horizontal-content-no-gap) .ag-column-last{border-left-color:transparent}.ag-cell-wrapper{align-items:center;display:flex;>:where(:not(.ag-cell-value,.ag-group-value)){align-items:center;display:flex;height:var(--ag-internal-content-line-height)}&:where(.ag-row-group){align-items:flex-start}:where(.ag-full-width-row) &:where(.ag-row-group){align-items:center;height:100%}}:where(.ag-ltr) .ag-cell-wrapper{padding-left:calc(var(--ag-indentation-level)*var(--ag-row-group-indent-size))}:where(.ag-rtl) .ag-cell-wrapper{padding-right:calc(var(--ag-indentation-level)*var(--ag-row-group-indent-size))}:where(.ag-cell-wrap-text:not(.ag-cell-auto-height)) .ag-cell-wrapper{align-items:normal;height:100%;:where(.ag-cell-value){height:100%}}:where(.ag-ltr) .ag-row>.ag-cell-wrapper.ag-row-group{padding-left:calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size)*var(--ag-indentation-level))}:where(.ag-rtl) .ag-row>.ag-cell-wrapper.ag-row-group{padding-right:calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size)*var(--ag-indentation-level))}.ag-cell-focus:not(.ag-cell-range-selected):focus-within,.ag-cell-range-single-cell,.ag-cell-range-single-cell.ag-cell-range-handle,.ag-context-menu-open .ag-cell-focus:not(.ag-cell-range-selected),.ag-context-menu-open .ag-full-width-row.ag-row-focus .ag-cell-wrapper.ag-row-group,.ag-full-width-row.ag-row-focus:focus .ag-cell-wrapper.ag-row-group{border:1px solid;border-color:var(--ag-range-selection-border-color);border-style:var(--ag-range-selection-border-style);outline:initial}.ag-full-width-row.ag-row-focus:focus{box-shadow:none}:where(.ag-ltr) .ag-group-contracted,:where(.ag-ltr) .ag-group-expanded,:where(.ag-ltr) .ag-row-drag,:where(.ag-ltr) .ag-selection-checkbox{margin-right:var(--ag-cell-widget-spacing)}:where(.ag-rtl) .ag-group-contracted,:where(.ag-rtl) .ag-group-expanded,:where(.ag-rtl) .ag-row-drag,:where(.ag-rtl) .ag-selection-checkbox{margin-left:var(--ag-cell-widget-spacing)}:where(.ag-ltr) .ag-group-child-count{margin-left:3px}:where(.ag-rtl) .ag-group-child-count{margin-right:3px}.ag-row-highlight-above:after,.ag-row-highlight-below:after{background-color:var(--ag-range-selection-border-color);content:\"\";height:1px;position:absolute;width:calc(100% - 1px)}:where(.ag-ltr) .ag-row-highlight-above:after,:where(.ag-ltr) .ag-row-highlight-below:after{left:1px}:where(.ag-rtl) .ag-row-highlight-above:after,:where(.ag-rtl) .ag-row-highlight-below:after{right:1px}.ag-row-highlight-above:after{top:0}.ag-row-highlight-below:after{bottom:0}.ag-row-odd{background-color:var(--ag-odd-row-background-color)}.ag-row-selected:before{background-color:var(--ag-selected-row-background-color);content:\"\";display:block;inset:0;pointer-events:none;position:absolute}.ag-row-hover.ag-full-width-row.ag-row-group:before,.ag-row-hover:not(.ag-full-width-row):before{background-color:var(--ag-row-hover-color);content:\"\";display:block;inset:0;pointer-events:none;position:absolute}.ag-row-hover.ag-row-selected:before{background-color:var(--ag-row-hover-color);background-image:linear-gradient(var(--ag-selected-row-background-color),var(--ag-selected-row-background-color))}.ag-row.ag-full-width-row.ag-row-group>*{position:relative}.ag-column-hover{background-color:var(--ag-column-hover-color)}.ag-header-range-highlight{background-color:var(--ag-range-header-highlight-color)}.ag-right-aligned-cell{font-variant-numeric:tabular-nums}:where(.ag-ltr) .ag-right-aligned-cell{text-align:right}:where(.ag-rtl) .ag-right-aligned-cell{text-align:left}.ag-right-aligned-cell .ag-cell-value,.ag-right-aligned-cell .ag-group-value{margin-left:auto}:where(.ag-ltr) .ag-cell:not(.ag-cell-inline-editing),:where(.ag-ltr) .ag-full-width-row .ag-cell-wrapper.ag-row-group{padding-left:calc(var(--ag-cell-horizontal-padding) - 1px + var(--ag-row-group-indent-size)*var(--ag-indentation-level));padding-right:calc(var(--ag-cell-horizontal-padding) - 1px)}:where(.ag-rtl) .ag-cell:not(.ag-cell-inline-editing),:where(.ag-rtl) .ag-full-width-row .ag-cell-wrapper.ag-row-group{padding-left:calc(var(--ag-cell-horizontal-padding) - 1px);padding-right:calc(var(--ag-cell-horizontal-padding) - 1px + var(--ag-row-group-indent-size)*var(--ag-indentation-level))}.ag-row>.ag-cell-wrapper{padding-left:calc(var(--ag-cell-horizontal-padding) - 1px);padding-right:calc(var(--ag-cell-horizontal-padding) - 1px)}.ag-row-dragging{cursor:move;opacity:.5}.ag-details-row{background-color:var(--ag-background-color);padding:calc(var(--ag-spacing)*3.75)}.ag-layout-auto-height,.ag-layout-print{.ag-center-cols-container,.ag-center-cols-viewport{min-height:150px}}.ag-overlay-loading-wrapper{background-color:var(--ag-modal-overlay-background-color)}.ag-skeleton-container{align-content:center;height:100%;width:100%}.ag-skeleton-effect{animation:ag-skeleton-loading 1.5s ease-in-out .5s infinite;background-color:var(--ag-row-loading-skeleton-effect-color);border-radius:.25rem;height:1em;width:100%}:where(.ag-ltr) .ag-right-aligned-cell .ag-skeleton-effect{margin-left:auto}:where(.ag-rtl) .ag-right-aligned-cell .ag-skeleton-effect{margin-right:auto}@keyframes ag-skeleton-loading{0%{opacity:1}50%{opacity:.4}to{opacity:1}}.ag-loading{align-items:center;display:flex;height:100%}:where(.ag-ltr) .ag-loading{padding-left:var(--ag-cell-horizontal-padding)}:where(.ag-rtl) .ag-loading{padding-right:var(--ag-cell-horizontal-padding)}:where(.ag-ltr) .ag-loading-icon{padding-right:var(--ag-cell-widget-spacing)}:where(.ag-rtl) .ag-loading-icon{padding-left:var(--ag-cell-widget-spacing)}.ag-icon-loading{animation-duration:1s;animation-iteration-count:infinite;animation-name:spin;animation-timing-function:linear}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.ag-input-wrapper,.ag-picker-field-wrapper{align-items:center;display:flex;flex:1 1 auto;line-height:normal;position:relative}.ag-input-field{align-items:center;display:flex;flex-direction:row}.ag-input-field-input:where(:not([type=checkbox],[type=radio])){flex:1 1 auto;min-width:0;width:100%}.ag-header{background-color:var(--ag-header-background-color);border-bottom:var(--ag-header-row-border);color:var(--ag-header-text-color);display:flex;font-family:var(--ag-header-font-family);font-size:var(--ag-header-font-size);font-weight:var(--ag-header-font-weight);overflow:hidden;white-space:nowrap;width:100%}.ag-header-row{height:var(--ag-header-height);position:absolute}.ag-floating-filter-button-button,.ag-header-cell-filter-button,.ag-header-cell-menu-button,.ag-header-expand-icon,.ag-panel-title-bar-button,:where(.ag-header-cell-sortable) .ag-header-cell-label{cursor:pointer}:where(.ag-ltr) .ag-header-expand-icon{margin-left:4px}:where(.ag-rtl) .ag-header-expand-icon{margin-right:4px}.ag-header-row:where(:not(:first-child)){:where(.ag-header-cell:not(.ag-header-span-height.ag-header-span-total,.ag-header-parent-hidden),.ag-header-group-cell.ag-header-group-cell-with-group){border-top:var(--ag-header-row-border)}}.ag-header-row:where(:not(.ag-header-row-column-group)){overflow:hidden}:where(.ag-header.ag-header-allow-overflow) .ag-header-row{overflow:visible}.ag-header-cell{display:inline-flex;overflow:hidden}.ag-header-group-cell{contain:paint;display:flex}.ag-header-cell,.ag-header-group-cell{align-items:center;gap:var(--ag-cell-widget-spacing);height:100%;padding:0 var(--ag-cell-horizontal-padding);position:absolute}@property --ag-internal-moving-color{syntax:\"<color>\";inherits:false;initial-value:transparent}@property --ag-internal-hover-color{syntax:\"<color>\";inherits:false;initial-value:transparent}.ag-header-cell:where(:not(.ag-floating-filter)),.ag-header-group-cell{&:before{background-image:linear-gradient(var(--ag-internal-hover-color),var(--ag-internal-hover-color)),linear-gradient(var(--ag-internal-moving-color),var(--ag-internal-moving-color));content:\"\";inset:0;position:absolute;--ag-internal-moving-color:transparent;--ag-internal-hover-color:transparent;transition:--ag-internal-moving-color var(--ag-header-cell-background-transition-duration),--ag-internal-hover-color var(--ag-header-cell-background-transition-duration)}&:where(:hover):before{--ag-internal-hover-color:var(--ag-header-cell-hover-background-color)}&:where(.ag-header-cell-moving):before{--ag-internal-moving-color:var(--ag-header-cell-moving-background-color);--ag-internal-hover-color:var(--ag-header-cell-hover-background-color)}}:where(.ag-header-cell:not(.ag-floating-filter) *,.ag-header-group-cell *){position:relative;z-index:1}.ag-header-cell-menu-button:where(:not(.ag-header-menu-always-show)){opacity:0;transition:opacity .2s}.ag-header-cell-filter-button,:where(.ag-header-cell.ag-header-active) .ag-header-cell-menu-button{opacity:1}.ag-header-cell-label,.ag-header-group-cell-label{align-items:center;align-self:stretch;display:flex;flex:1 1 auto;overflow:hidden;padding:5px 0}:where(.ag-ltr) .ag-sort-indicator-icon{padding-left:var(--ag-spacing)}:where(.ag-rtl) .ag-sort-indicator-icon{padding-right:var(--ag-spacing)}.ag-header-cell-label{text-overflow:ellipsis}.ag-header-group-cell-label.ag-sticky-label{flex:none;max-width:100%;overflow:visible;position:sticky}:where(.ag-ltr) .ag-header-group-cell-label.ag-sticky-label{left:var(--ag-cell-horizontal-padding)}:where(.ag-rtl) .ag-header-group-cell-label.ag-sticky-label{right:var(--ag-cell-horizontal-padding)}.ag-header-cell-text,.ag-header-group-text{overflow:hidden;text-overflow:ellipsis}.ag-header-cell-text{word-break:break-word}.ag-header-cell-comp-wrapper{width:100%}:where(.ag-header-group-cell) .ag-header-cell-comp-wrapper{display:flex}:where(.ag-header-cell:not(.ag-header-cell-auto-height)) .ag-header-cell-comp-wrapper{align-items:center;display:flex;height:100%}.ag-header-cell-wrap-text .ag-header-cell-comp-wrapper{white-space:normal}.ag-header-cell-comp-wrapper-limited-height>*{overflow:hidden}:where(.ag-right-aligned-header) .ag-header-cell-label{flex-direction:row-reverse}:where(.ag-ltr) :where(.ag-header-cell:not(.ag-right-aligned-header)){.ag-header-label-icon,.ag-header-menu-icon{margin-left:var(--ag-spacing)}}:where(.ag-rtl) :where(.ag-header-cell:not(.ag-right-aligned-header)){.ag-header-label-icon,.ag-header-menu-icon{margin-right:var(--ag-spacing)}}:where(.ag-ltr) :where(.ag-header-cell.ag-right-aligned-header){.ag-header-label-icon,.ag-header-menu-icon{margin-right:var(--ag-spacing)}}:where(.ag-rtl) :where(.ag-header-cell.ag-right-aligned-header){.ag-header-label-icon,.ag-header-menu-icon{margin-left:var(--ag-spacing)}}.ag-header-cell:after,.ag-header-group-cell:where(:not(.ag-header-span-height.ag-header-group-cell-no-group)):after{content:\"\";height:var(--ag-header-column-border-height);position:absolute;top:calc(50% - var(--ag-header-column-border-height)*.5);z-index:1}:where(.ag-ltr) .ag-header-cell:after,:where(.ag-ltr) .ag-header-group-cell:where(:not(.ag-header-span-height.ag-header-group-cell-no-group)):after{border-right:var(--ag-header-column-border);right:0}:where(.ag-rtl) .ag-header-cell:after,:where(.ag-rtl) .ag-header-group-cell:where(:not(.ag-header-span-height.ag-header-group-cell-no-group)):after{border-left:var(--ag-header-column-border);left:0}.ag-header-highlight-after:after,.ag-header-highlight-before:after{background-color:var(--ag-accent-color);content:\"\";height:100%;position:absolute;width:1px}:where(.ag-ltr) .ag-header-highlight-before:after{left:0}:where(.ag-rtl) .ag-header-highlight-before:after{right:0}:where(.ag-ltr) .ag-header-highlight-after:after{right:0;:where(.ag-pinned-left-header) &{right:1px}}:where(.ag-rtl) .ag-header-highlight-after:after{left:0;:where(.ag-pinned-left-header) &{left:1px}}.ag-header-cell-resize{align-items:center;cursor:ew-resize;display:flex;height:100%;position:absolute;top:0;width:8px;z-index:2;&:after{background-color:var(--ag-header-column-resize-handle-color);content:\"\";height:var(--ag-header-column-resize-handle-height);position:absolute;top:calc(50% - var(--ag-header-column-resize-handle-height)*.5);width:var(--ag-header-column-resize-handle-width);z-index:1}}:where(.ag-ltr) .ag-header-cell-resize{right:-3px;&:after{left:calc(50% - var(--ag-header-column-resize-handle-width))}}:where(.ag-rtl) .ag-header-cell-resize{left:-3px;&:after{right:calc(50% - var(--ag-header-column-resize-handle-width))}}:where(.ag-header-cell.ag-header-span-height) .ag-header-cell-resize:after{height:calc(100% - var(--ag-spacing)*4);top:calc(var(--ag-spacing)*2)}.ag-header-group-cell-no-group:where(.ag-header-span-height){display:none}.ag-sort-indicator-container{display:flex;gap:var(--ag-spacing)}.ag-layout-print{&.ag-body{display:block;height:unset}&.ag-root-wrapper{display:inline-block}.ag-body-horizontal-scroll,.ag-body-vertical-scroll{display:none}&.ag-force-vertical-scroll{overflow-y:visible!important}}@media print{.ag-root-wrapper.ag-layout-print{display:table;.ag-body-horizontal-scroll-viewport,.ag-body-viewport,.ag-center-cols-container,.ag-center-cols-viewport,.ag-root,.ag-root-wrapper-body,.ag-virtual-list-viewport{display:block!important;height:auto!important;overflow:hidden!important}.ag-cell,.ag-row{-moz-column-break-inside:avoid;break-inside:avoid}}}ag-grid,ag-grid-angular{display:block}.ag-chart,.ag-dnd-ghost,.ag-popup,.ag-root-wrapper{cursor:default;line-height:normal;white-space:normal;-webkit-font-smoothing:antialiased;background-color:var(--ag-background-color);color:var(--ag-text-color);color-scheme:var(--ag-browser-color-scheme);font-family:var(--ag-font-family);font-size:var(--ag-font-size);--ag-indentation-level:0}.ag-root-wrapper{border:var(--ag-wrapper-border);border-radius:var(--ag-wrapper-border-radius);display:flex;flex-direction:column;overflow:hidden;position:relative;&.ag-layout-normal{height:100%}}.ag-root-wrapper-body{display:flex;flex-direction:row;&.ag-layout-normal{flex:1 1 auto;height:0;min-height:0}}.ag-root{display:flex;flex-direction:column;position:relative;&.ag-layout-auto-height,&.ag-layout-normal{flex:1 1 auto;overflow:hidden;width:0}&.ag-layout-normal{height:100%}}.ag-drag-handle{color:var(--ag-drag-handle-color);cursor:grab}.ag-list-item,.ag-virtual-list-item{height:var(--ag-list-item-height)}.ag-virtual-list-item{position:absolute;width:100%}.ag-select-list{background-color:var(--ag-picker-list-background-color);border:var(--ag-picker-list-border);border-radius:var(--ag-border-radius);box-shadow:var(--ag-dropdown-shadow);overflow:hidden auto}.ag-list-item{align-items:center;display:flex;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;&.ag-active-item{background-color:var(--ag-row-hover-color)}}.ag-select-list-item{cursor:default;-webkit-user-select:none;-moz-user-select:none;user-select:none;:where(span){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}:where(.ag-ltr) .ag-select-list-item{padding-left:calc(var(--ag-cell-horizontal-padding)/2)}:where(.ag-rtl) .ag-select-list-item{padding-right:calc(var(--ag-cell-horizontal-padding)/2)}.ag-list-item-hovered:after{background-color:var(--ag-accent-color);content:\"\";height:1px;left:0;position:absolute;right:0}.ag-item-highlight-top:after{top:0}.ag-item-highlight-bottom:after{bottom:0}:where(.ag-icon):before{align-items:center;background-color:currentcolor;color:inherit;content:\"\";display:flex;font-family:inherit;font-size:var(--ag-icon-size);font-style:normal;font-variant:normal;height:var(--ag-icon-size);justify-content:center;line-height:var(--ag-icon-size);-webkit-mask-size:contain;mask-size:contain;text-transform:none;width:var(--ag-icon-size)}.ag-icon{background-position:50%;background-repeat:no-repeat;background-size:contain;color:var(--ag-icon-color);display:block;height:var(--ag-icon-size);position:relative;-webkit-user-select:none;-moz-user-select:none;user-select:none;width:var(--ag-icon-size)}.ag-column-select-column-group-readonly,.ag-column-select-column-readonly,.ag-disabled,[disabled]{.ag-icon{opacity:.5}&.ag-icon-grip{opacity:.35}}.ag-column-select-column-readonly{&.ag-icon-grip,.ag-icon-grip{opacity:.35}}.ag-chart-menu-icon,.ag-chart-settings-next,.ag-chart-settings-prev,.ag-column-group-icons,.ag-column-select-header-icon,.ag-filter-toolpanel-expand,.ag-floating-filter-button-button,.ag-group-title-bar-icon,.ag-header-cell-filter-button,.ag-header-cell-menu-button,.ag-header-expand-icon,.ag-panel-title-bar-button,.ag-panel-title-bar-button-icon,.ag-set-filter-group-icons,:where(.ag-group-contracted) .ag-icon,:where(.ag-group-expanded) .ag-icon{background-color:var(--ag-icon-button-background-color);border-radius:var(--ag-icon-button-border-radius);box-shadow:0 0 0 var(--ag-icon-button-background-spread) var(--ag-icon-button-background-color);color:var(--ag-icon-button-color);&:hover{background-color:var(--ag-icon-button-hover-background-color);box-shadow:0 0 0 var(--ag-icon-button-background-spread) var(--ag-icon-button-hover-background-color);color:var(--ag-icon-button-hover-color)}}.ag-filter-active{background-image:linear-gradient(var(--ag-icon-button-active-background-color),var(--ag-icon-button-active-background-color));border-radius:1px;outline:solid var(--ag-icon-button-background-spread) var(--ag-icon-button-active-background-color);position:relative;&:after{background-color:var(--ag-accent-color);border-radius:50%;content:\"\";height:6px;position:absolute;top:-1px;width:6px}:where(.ag-icon-filter){clip-path:path(\"M8,0C8,4.415 11.585,8 16,8L16,16L0,16L0,0L8,0Z\");color:var(--ag-icon-button-active-color)}}:where(.ag-ltr) .ag-filter-active{&:after{right:-1px}}:where(.ag-rtl) .ag-filter-active{&:after{left:-1px}}.ag-menu{background-color:var(--ag-menu-background-color);border:var(--ag-menu-border);border-radius:var(--ag-border-radius);box-shadow:var(--ag-menu-shadow);color:var(--ag-menu-text-color);max-height:100%;overflow-y:auto}.ag-menu,.ag-resizer{position:absolute;-webkit-user-select:none;-moz-user-select:none;user-select:none}.ag-resizer{pointer-events:none;z-index:1}:where(.ag-resizer){&.ag-resizer-topLeft{cursor:nwse-resize;height:5px;left:0;top:0;width:5px}&.ag-resizer-top{cursor:ns-resize;height:5px;left:5px;right:5px;top:0}&.ag-resizer-topRight{cursor:nesw-resize;height:5px;right:0;top:0;width:5px}&.ag-resizer-right{bottom:5px;cursor:ew-resize;right:0;top:5px;width:5px}&.ag-resizer-bottomRight{bottom:0;cursor:nwse-resize;height:5px;right:0;width:5px}&.ag-resizer-bottom{bottom:0;cursor:ns-resize;height:5px;left:5px;right:5px}&.ag-resizer-bottomLeft{bottom:0;cursor:nesw-resize;height:5px;left:0;width:5px}&.ag-resizer-left{bottom:5px;cursor:ew-resize;left:0;top:5px;width:5px}}";
1
+ export declare const coreCSS = ":where(.ag-root-wrapper,.ag-popup,.ag-dnd-ghost,.ag-chart),:where(.ag-root-wrapper,.ag-popup,.ag-dnd-ghost,.ag-chart) :where([class^=ag-]){box-sizing:border-box;&:after,&:before{box-sizing:border-box}&:where(div,span,label):focus-visible{box-shadow:inset var(--ag-focus-shadow);outline:none}}:where(.ag-root-wrapper,.ag-popup,.ag-dnd-ghost,.ag-chart) :where([class^=ag-]) ::-ms-clear{display:none}.ag-aria-description-container{border:0;z-index:9999;clip:rect(1px,1px,1px,1px);height:1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.ag-hidden{display:none!important}.ag-invisible{visibility:hidden!important}.ag-unselectable{-webkit-user-select:none;-moz-user-select:none;user-select:none}.ag-selectable{-webkit-user-select:text;-moz-user-select:text;user-select:text}.ag-tab-guard{display:block;height:0;position:absolute;width:0}:where(.ag-virtual-list-viewport) .ag-tab-guard{position:sticky}.ag-tab-guard-top{top:1px}.ag-tab-guard-bottom{bottom:1px}.ag-shake-left-to-right{animation-direction:alternate;animation-duration:.2s;animation-iteration-count:infinite;animation-name:ag-shake-left-to-right}@keyframes ag-shake-left-to-right{0%{padding-left:6px;padding-right:2px}to{padding-left:2px;padding-right:6px}}.ag-body-horizontal-scroll-viewport,.ag-body-vertical-scroll-viewport,.ag-body-viewport,.ag-center-cols-viewport,.ag-floating-bottom-viewport,.ag-floating-top-viewport,.ag-header-viewport,.ag-sticky-bottom-viewport,.ag-sticky-top-viewport,.ag-virtual-list-viewport{flex:1 1 auto;height:100%;min-width:0;overflow:hidden;position:relative}.ag-viewport{position:relative}.ag-spanning-container{position:absolute;top:0;z-index:1}.ag-body-viewport,.ag-center-cols-viewport,.ag-floating-bottom-viewport,.ag-floating-top-viewport,.ag-header-viewport,.ag-sticky-bottom-viewport,.ag-sticky-top-viewport{overflow-x:auto;-ms-overflow-style:none!important;scrollbar-width:none!important;&::-webkit-scrollbar{display:none!important}}.ag-body-viewport{display:flex;overflow-x:hidden;&:where(.ag-layout-normal){overflow-y:auto;-webkit-overflow-scrolling:touch}}.ag-floating-bottom-container,.ag-floating-top-container,.ag-sticky-bottom-container,.ag-sticky-top-container{min-height:1px}.ag-center-cols-viewport{min-height:100%;width:100%}.ag-body-horizontal-scroll-viewport{overflow-x:scroll}.ag-body-vertical-scroll-viewport{overflow-y:scroll}.ag-virtual-list-viewport{overflow:auto;width:100%}.ag-body-container,.ag-body-horizontal-scroll-container,.ag-body-vertical-scroll-container,.ag-center-cols-container,.ag-floating-bottom-container,.ag-floating-bottom-full-width-container,.ag-floating-top-container,.ag-full-width-container,.ag-header-container,.ag-pinned-left-cols-container,.ag-pinned-right-cols-container,.ag-sticky-bottom-container,.ag-sticky-top-container,.ag-virtual-list-container{position:relative}.ag-floating-bottom-container,.ag-floating-top-container,.ag-header-container,.ag-pinned-left-floating-bottom,.ag-pinned-left-floating-top,.ag-pinned-right-floating-bottom,.ag-pinned-right-floating-top,.ag-sticky-bottom-container,.ag-sticky-top-container{height:100%;white-space:nowrap}.ag-center-cols-container,.ag-pinned-right-cols-container{display:block}.ag-body-horizontal-scroll-container{height:100%}.ag-body-vertical-scroll-container{width:100%}.ag-floating-bottom-full-width-container,.ag-floating-top-full-width-container,.ag-full-width-container,.ag-sticky-bottom-full-width-container,.ag-sticky-top-full-width-container{pointer-events:none;position:absolute;top:0}:where(.ag-ltr) .ag-floating-bottom-full-width-container,:where(.ag-ltr) .ag-floating-top-full-width-container,:where(.ag-ltr) .ag-full-width-container,:where(.ag-ltr) .ag-sticky-bottom-full-width-container,:where(.ag-ltr) .ag-sticky-top-full-width-container{left:0}:where(.ag-rtl) .ag-floating-bottom-full-width-container,:where(.ag-rtl) .ag-floating-top-full-width-container,:where(.ag-rtl) .ag-full-width-container,:where(.ag-rtl) .ag-sticky-bottom-full-width-container,:where(.ag-rtl) .ag-sticky-top-full-width-container{right:0}.ag-full-width-container{width:100%}.ag-floating-bottom-full-width-container,.ag-floating-top-full-width-container{display:inline-block;height:100%;overflow:hidden;width:100%}.ag-virtual-list-container{overflow:hidden}.ag-body{display:flex;flex:1 1 auto;flex-direction:row!important;min-height:0;position:relative}.ag-body-horizontal-scroll,.ag-body-vertical-scroll{display:flex;min-height:0;min-width:0;position:relative;&:where(.ag-scrollbar-invisible){bottom:0;position:absolute;&:where(.ag-apple-scrollbar){opacity:0;transition:opacity .4s;visibility:hidden;&:where(.ag-scrollbar-scrolling,.ag-scrollbar-active){opacity:1;visibility:visible}}}}.ag-body-horizontal-scroll{width:100%;&:where(.ag-scrollbar-invisible){left:0;right:0}}.ag-body-vertical-scroll{height:100%;&:where(.ag-scrollbar-invisible){top:0;z-index:10}}:where(.ag-ltr) .ag-body-vertical-scroll{&:where(.ag-scrollbar-invisible){right:0}}:where(.ag-rtl) .ag-body-vertical-scroll{&:where(.ag-scrollbar-invisible){left:0}}.ag-force-vertical-scroll{overflow-y:scroll!important}.ag-horizontal-left-spacer,.ag-horizontal-right-spacer{height:100%;min-width:0;overflow-x:scroll;&:where(.ag-scroller-corner){overflow-x:hidden}}:where(.ag-row-animation) .ag-row{transition:transform .4s,top .4s,opacity .2s;&:where(.ag-after-created){transition:transform .4s,top .4s,height .4s,opacity .2s}}:where(.ag-row-animation.ag-prevent-animation) .ag-row{transition:none!important;&:where(.ag-row.ag-after-created){transition:none!important}}:where(.ag-row-no-animation) .ag-row{transition:none}.ag-row-loading{align-items:center;display:flex}.ag-row-position-absolute{position:absolute}.ag-row-position-relative{position:relative}.ag-full-width-row{overflow:hidden;pointer-events:all}.ag-row-inline-editing{z-index:1}.ag-row-dragging{z-index:2}.ag-stub-cell{align-items:center;display:flex}.ag-cell{display:inline-block;height:100%;position:absolute;white-space:nowrap;&:focus-visible{box-shadow:none}}.ag-cell-value{flex:1 1 auto}.ag-cell-value,.ag-group-value{overflow:hidden;text-overflow:ellipsis}.ag-cell-wrap-text{white-space:normal;word-break:break-word}:where(.ag-cell) .ag-icon{display:inline-block;vertical-align:middle}.ag-floating-top{display:flex;overflow:hidden;position:relative;white-space:nowrap;width:100%}:where(.ag-floating-top:not(.ag-invisible)){border-bottom:var(--ag-pinned-row-border)}.ag-floating-bottom{display:flex;overflow:hidden;position:relative;white-space:nowrap;width:100%}:where(.ag-floating-bottom:not(.ag-invisible)){border-top:var(--ag-pinned-row-border)}.ag-sticky-bottom,.ag-sticky-top{background-color:var(--ag-background-color);display:flex;height:0;overflow:hidden;position:absolute;width:100%;z-index:1}.ag-opacity-zero{opacity:0!important}.ag-cell-label-container{align-items:center;display:flex;flex-direction:row-reverse;height:100%;justify-content:space-between;width:100%}:where(.ag-right-aligned-header){.ag-cell-label-container{flex-direction:row}.ag-header-cell-text{text-align:end}}.ag-column-group-icons{display:block;>*{cursor:pointer}}:where(.ag-ltr){direction:ltr;.ag-body,.ag-body-horizontal-scroll,.ag-body-viewport,.ag-floating-bottom,.ag-floating-top,.ag-header,.ag-sticky-bottom,.ag-sticky-top{flex-direction:row}}:where(.ag-rtl){direction:rtl;text-align:right;.ag-body,.ag-body-horizontal-scroll,.ag-body-viewport,.ag-floating-bottom,.ag-floating-top,.ag-header,.ag-sticky-bottom,.ag-sticky-top{flex-direction:row-reverse}.ag-icon-contracted,.ag-icon-expanded,.ag-icon-tree-closed{display:block}}:where(.ag-rtl){.ag-icon-contracted,.ag-icon-expanded,.ag-icon-tree-closed{transform:rotate(180deg)}}:where(.ag-rtl){.ag-icon-contracted,.ag-icon-expanded,.ag-icon-tree-closed{transform:rotate(-180deg)}}.ag-measurement-container{height:0;overflow:hidden;visibility:hidden;width:0}.ag-measurement-element-border{display:inline-block;&:before{border-left:var(--ag-internal-measurement-border);content:\"\";display:block}}.ag-group{position:relative;width:100%}.ag-group-title-bar{align-items:center;display:flex;padding:var(--ag-spacing)}.ag-group-title{display:inline;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}:where(.ag-group-title-bar) .ag-group-title{cursor:default}.ag-group-toolbar{align-items:center;display:flex;padding:var(--ag-spacing)}.ag-group-container{display:flex}.ag-disabled .ag-group-container{pointer-events:none}.ag-disabled-group-container,.ag-disabled-group-title-bar{opacity:.5}.ag-group-container-horizontal{flex-flow:row wrap}.ag-group-container-vertical{flex-direction:column}.ag-group-title-bar-icon{cursor:pointer;flex:none}:where(.ag-ltr) .ag-group-title-bar-icon{margin-right:var(--ag-spacing)}:where(.ag-rtl) .ag-group-title-bar-icon{margin-left:var(--ag-spacing)}:where(.ag-group-item-alignment-stretch) .ag-group-item{align-items:stretch}:where(.ag-group-item-alignment-start) .ag-group-item{align-items:flex-start}:where(.ag-group-item-alignment-end) .ag-group-item{align-items:flex-end}.ag-popup-child{top:0;z-index:5;&:where(:not(.ag-tooltip-custom)){box-shadow:var(--ag-popup-shadow)}}.ag-popup-editor{position:absolute;-webkit-user-select:none;-moz-user-select:none;user-select:none}.ag-large-text-input{display:block}:where(.ag-ltr) .ag-row:not(.ag-row-level-0) .ag-pivot-leaf-group{margin-left:var(--ag-row-group-indent-size)}:where(.ag-rtl) .ag-row:not(.ag-row-level-0) .ag-pivot-leaf-group{margin-right:var(--ag-row-group-indent-size)}:where(.ag-ltr) .ag-row-group-leaf-indent{margin-left:calc(var(--ag-cell-widget-spacing) + var(--ag-icon-size))}:where(.ag-rtl) .ag-row-group-leaf-indent{margin-right:calc(var(--ag-cell-widget-spacing) + var(--ag-icon-size))}.ag-value-change-delta{padding:0 2px}.ag-value-change-delta-up{color:var(--ag-value-change-delta-up-color)}.ag-value-change-delta-down{color:var(--ag-value-change-delta-down-color)}.ag-value-change-value{background-color:transparent;border-radius:1px;padding-left:1px;padding-right:1px;transition:background-color 1s}.ag-value-change-value-highlight{background-color:var(--ag-value-change-value-highlight-background-color);transition:background-color .1s}.ag-cell-data-changed{background-color:var(--ag-value-change-value-highlight-background-color)!important}.ag-cell-data-changed-animation{background-color:transparent}.ag-cell-highlight{background-color:var(--ag-range-selection-highlight-color)!important}.ag-row,.ag-spanned-row{color:var(--ag-cell-text-color);font-family:var(--ag-cell-font-family);font-size:var(--ag-data-font-size);white-space:nowrap;--ag-internal-content-line-height:calc(min(var(--ag-row-height), var(--ag-line-height, 1000px)) - var(--ag-internal-row-border-width, 1px) - 2px)}.ag-row{background-color:var(--ag-background-color);border-bottom:var(--ag-row-border);height:var(--ag-row-height);width:100%}:where(.ag-body-vertical-content-no-gap>div>div>div,.ag-body-vertical-content-no-gap>div>div>div>div)>.ag-row-last{border-bottom-color:transparent}.ag-sticky-bottom{border-top:var(--ag-row-border);box-sizing:content-box!important}.ag-group-contracted,.ag-group-expanded{cursor:pointer}.ag-cell,.ag-full-width-row .ag-cell-wrapper.ag-row-group{border:1px solid transparent;line-height:var(--ag-internal-content-line-height);-webkit-font-smoothing:subpixel-antialiased}:where(.ag-ltr) .ag-cell{border-right:var(--ag-column-border)}:where(.ag-rtl) .ag-cell{border-left:var(--ag-column-border)}.ag-spanned-cell-wrapper{background-color:var(--ag-background-color);position:absolute}.ag-spanned-cell-wrapper>.ag-spanned-cell{display:block;position:relative}:where(.ag-ltr) :where(.ag-body-horizontal-content-no-gap) .ag-column-last{border-right-color:transparent}:where(.ag-rtl) :where(.ag-body-horizontal-content-no-gap) .ag-column-last{border-left-color:transparent}.ag-cell-wrapper{align-items:center;display:flex;>:where(:not(.ag-cell-value,.ag-group-value)){align-items:center;display:flex;height:var(--ag-internal-content-line-height)}&:where(.ag-row-group){align-items:flex-start}:where(.ag-full-width-row) &:where(.ag-row-group){align-items:center;height:100%}}:where(.ag-ltr) .ag-cell-wrapper{padding-left:calc(var(--ag-indentation-level)*var(--ag-row-group-indent-size))}:where(.ag-rtl) .ag-cell-wrapper{padding-right:calc(var(--ag-indentation-level)*var(--ag-row-group-indent-size))}:where(.ag-cell-wrap-text:not(.ag-cell-auto-height)) .ag-cell-wrapper{align-items:normal;height:100%;:where(.ag-cell-value){height:100%}}:where(.ag-ltr) .ag-row>.ag-cell-wrapper.ag-row-group{padding-left:calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size)*var(--ag-indentation-level))}:where(.ag-rtl) .ag-row>.ag-cell-wrapper.ag-row-group{padding-right:calc(var(--ag-cell-horizontal-padding) + var(--ag-row-group-indent-size)*var(--ag-indentation-level))}.ag-cell-focus:not(.ag-cell-range-selected):focus-within,.ag-cell-range-single-cell,.ag-cell-range-single-cell.ag-cell-range-handle,.ag-context-menu-open .ag-cell-focus:not(.ag-cell-range-selected),.ag-context-menu-open .ag-full-width-row.ag-row-focus .ag-cell-wrapper.ag-row-group,.ag-full-width-row.ag-row-focus:focus .ag-cell-wrapper.ag-row-group{border:1px solid;border-color:var(--ag-range-selection-border-color);border-style:var(--ag-range-selection-border-style);outline:initial}.ag-full-width-row.ag-row-focus:focus{box-shadow:none}:where(.ag-ltr) .ag-group-contracted,:where(.ag-ltr) .ag-group-expanded,:where(.ag-ltr) .ag-row-drag,:where(.ag-ltr) .ag-selection-checkbox{margin-right:var(--ag-cell-widget-spacing)}:where(.ag-rtl) .ag-group-contracted,:where(.ag-rtl) .ag-group-expanded,:where(.ag-rtl) .ag-row-drag,:where(.ag-rtl) .ag-selection-checkbox{margin-left:var(--ag-cell-widget-spacing)}:where(.ag-ltr) .ag-group-child-count{margin-left:3px}:where(.ag-rtl) .ag-group-child-count{margin-right:3px}.ag-row-highlight-above:after,.ag-row-highlight-below:after{background-color:var(--ag-range-selection-border-color);content:\"\";height:1px;position:absolute;width:calc(100% - 1px)}:where(.ag-ltr) .ag-row-highlight-above:after,:where(.ag-ltr) .ag-row-highlight-below:after{left:1px}:where(.ag-rtl) .ag-row-highlight-above:after,:where(.ag-rtl) .ag-row-highlight-below:after{right:1px}.ag-row-highlight-above:after{top:0}.ag-row-highlight-below:after{bottom:0}.ag-row-odd{background-color:var(--ag-odd-row-background-color)}.ag-row-selected:before{background-color:var(--ag-selected-row-background-color);content:\"\";display:block;inset:0;pointer-events:none;position:absolute}.ag-row-hover.ag-full-width-row.ag-row-group:before,.ag-row-hover:not(.ag-full-width-row):before{background-color:var(--ag-row-hover-color);content:\"\";display:block;inset:0;pointer-events:none;position:absolute}.ag-row-hover.ag-row-selected:before{background-color:var(--ag-row-hover-color);background-image:linear-gradient(var(--ag-selected-row-background-color),var(--ag-selected-row-background-color))}.ag-row.ag-full-width-row.ag-row-group>*{position:relative}.ag-column-hover{background-color:var(--ag-column-hover-color)}.ag-header-range-highlight{background-color:var(--ag-range-header-highlight-color)}.ag-right-aligned-cell{font-variant-numeric:tabular-nums}:where(.ag-ltr) .ag-right-aligned-cell{text-align:right}:where(.ag-rtl) .ag-right-aligned-cell{text-align:left}.ag-right-aligned-cell .ag-cell-value,.ag-right-aligned-cell .ag-group-value{margin-left:auto}:where(.ag-ltr) .ag-cell:not(.ag-cell-inline-editing),:where(.ag-ltr) .ag-full-width-row .ag-cell-wrapper.ag-row-group{padding-left:calc(var(--ag-cell-horizontal-padding) - 1px + var(--ag-row-group-indent-size)*var(--ag-indentation-level));padding-right:calc(var(--ag-cell-horizontal-padding) - 1px)}:where(.ag-rtl) .ag-cell:not(.ag-cell-inline-editing),:where(.ag-rtl) .ag-full-width-row .ag-cell-wrapper.ag-row-group{padding-left:calc(var(--ag-cell-horizontal-padding) - 1px);padding-right:calc(var(--ag-cell-horizontal-padding) - 1px + var(--ag-row-group-indent-size)*var(--ag-indentation-level))}.ag-row>.ag-cell-wrapper{padding-left:calc(var(--ag-cell-horizontal-padding) - 1px);padding-right:calc(var(--ag-cell-horizontal-padding) - 1px)}.ag-row-dragging{cursor:move;opacity:.5}.ag-details-row{background-color:var(--ag-background-color);padding:calc(var(--ag-spacing)*3.75)}.ag-layout-auto-height,.ag-layout-print{.ag-center-cols-container,.ag-center-cols-viewport{min-height:150px}}.ag-overlay-loading-wrapper{background-color:var(--ag-modal-overlay-background-color)}.ag-skeleton-container{align-content:center;height:100%;width:100%}.ag-skeleton-effect{animation:ag-skeleton-loading 1.5s ease-in-out .5s infinite;background-color:var(--ag-row-loading-skeleton-effect-color);border-radius:.25rem;height:1em;width:100%}:where(.ag-ltr) .ag-right-aligned-cell .ag-skeleton-effect{margin-left:auto}:where(.ag-rtl) .ag-right-aligned-cell .ag-skeleton-effect{margin-right:auto}@keyframes ag-skeleton-loading{0%{opacity:1}50%{opacity:.4}to{opacity:1}}.ag-loading{align-items:center;display:flex;height:100%}:where(.ag-ltr) .ag-loading{padding-left:var(--ag-cell-horizontal-padding)}:where(.ag-rtl) .ag-loading{padding-right:var(--ag-cell-horizontal-padding)}:where(.ag-ltr) .ag-loading-icon{padding-right:var(--ag-cell-widget-spacing)}:where(.ag-rtl) .ag-loading-icon{padding-left:var(--ag-cell-widget-spacing)}.ag-icon-loading{animation-duration:1s;animation-iteration-count:infinite;animation-name:spin;animation-timing-function:linear}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.ag-input-wrapper,.ag-picker-field-wrapper{align-items:center;display:flex;flex:1 1 auto;line-height:normal;position:relative}.ag-input-field{align-items:center;display:flex;flex-direction:row}.ag-input-field-input:where(:not([type=checkbox],[type=radio])){flex:1 1 auto;min-width:0;width:100%}.ag-header{background-color:var(--ag-header-background-color);border-bottom:var(--ag-header-row-border);color:var(--ag-header-text-color);display:flex;font-family:var(--ag-header-font-family);font-size:var(--ag-header-font-size);font-weight:var(--ag-header-font-weight);overflow:hidden;white-space:nowrap;width:100%}.ag-header-row{height:var(--ag-header-height);position:absolute}.ag-floating-filter-button-button,.ag-header-cell-filter-button,.ag-header-cell-menu-button,.ag-header-expand-icon,.ag-panel-title-bar-button,:where(.ag-header-cell-sortable) .ag-header-cell-label{cursor:pointer}:where(.ag-ltr) .ag-header-expand-icon{margin-left:4px}:where(.ag-rtl) .ag-header-expand-icon{margin-right:4px}.ag-header-row:where(:not(:first-child)){:where(.ag-header-cell:not(.ag-header-span-height.ag-header-span-total,.ag-header-parent-hidden),.ag-header-group-cell.ag-header-group-cell-with-group){border-top:var(--ag-header-row-border)}}.ag-header-row:where(:not(.ag-header-row-column-group)){overflow:hidden}:where(.ag-header.ag-header-allow-overflow) .ag-header-row{overflow:visible}.ag-header-cell{display:inline-flex;overflow:hidden}.ag-header-group-cell{contain:paint;display:flex}.ag-header-cell,.ag-header-group-cell{align-items:center;gap:var(--ag-cell-widget-spacing);height:100%;padding:0 var(--ag-cell-horizontal-padding);position:absolute}@property --ag-internal-moving-color{syntax:\"<color>\";inherits:false;initial-value:transparent}@property --ag-internal-hover-color{syntax:\"<color>\";inherits:false;initial-value:transparent}.ag-header-cell:where(:not(.ag-floating-filter)),.ag-header-group-cell{&:before{background-image:linear-gradient(var(--ag-internal-hover-color),var(--ag-internal-hover-color)),linear-gradient(var(--ag-internal-moving-color),var(--ag-internal-moving-color));content:\"\";inset:0;position:absolute;--ag-internal-moving-color:transparent;--ag-internal-hover-color:transparent;transition:--ag-internal-moving-color var(--ag-header-cell-background-transition-duration),--ag-internal-hover-color var(--ag-header-cell-background-transition-duration)}&:where(:hover):before{--ag-internal-hover-color:var(--ag-header-cell-hover-background-color)}&:where(.ag-header-cell-moving):before{--ag-internal-moving-color:var(--ag-header-cell-moving-background-color);--ag-internal-hover-color:var(--ag-header-cell-hover-background-color)}}:where(.ag-header-cell:not(.ag-floating-filter) *,.ag-header-group-cell *){position:relative;z-index:1}.ag-header-cell-menu-button:where(:not(.ag-header-menu-always-show)){opacity:0;transition:opacity .2s}.ag-header-cell-filter-button,:where(.ag-header-cell.ag-header-active) .ag-header-cell-menu-button{opacity:1}.ag-header-cell-label,.ag-header-group-cell-label{align-items:center;align-self:stretch;display:flex;flex:1 1 auto;overflow:hidden;padding:5px 0}:where(.ag-ltr) .ag-sort-indicator-icon{padding-left:var(--ag-spacing)}:where(.ag-rtl) .ag-sort-indicator-icon{padding-right:var(--ag-spacing)}.ag-header-cell-label{text-overflow:ellipsis}.ag-header-group-cell-label.ag-sticky-label{flex:none;max-width:100%;overflow:visible;position:sticky}:where(.ag-ltr) .ag-header-group-cell-label.ag-sticky-label{left:var(--ag-cell-horizontal-padding)}:where(.ag-rtl) .ag-header-group-cell-label.ag-sticky-label{right:var(--ag-cell-horizontal-padding)}.ag-header-cell-text,.ag-header-group-text{overflow:hidden;text-overflow:ellipsis}.ag-header-cell-text{word-break:break-word}.ag-header-cell-comp-wrapper{width:100%}:where(.ag-header-group-cell) .ag-header-cell-comp-wrapper{display:flex}:where(.ag-header-cell:not(.ag-header-cell-auto-height)) .ag-header-cell-comp-wrapper{align-items:center;display:flex;height:100%}.ag-header-cell-wrap-text .ag-header-cell-comp-wrapper{white-space:normal}.ag-header-cell-comp-wrapper-limited-height>*{overflow:hidden}:where(.ag-right-aligned-header) .ag-header-cell-label{flex-direction:row-reverse}:where(.ag-ltr) :where(.ag-header-cell:not(.ag-right-aligned-header)){.ag-header-label-icon,.ag-header-menu-icon{margin-left:var(--ag-spacing)}}:where(.ag-rtl) :where(.ag-header-cell:not(.ag-right-aligned-header)){.ag-header-label-icon,.ag-header-menu-icon{margin-right:var(--ag-spacing)}}:where(.ag-ltr) :where(.ag-header-cell.ag-right-aligned-header){.ag-header-label-icon,.ag-header-menu-icon{margin-right:var(--ag-spacing)}}:where(.ag-rtl) :where(.ag-header-cell.ag-right-aligned-header){.ag-header-label-icon,.ag-header-menu-icon{margin-left:var(--ag-spacing)}}.ag-header-cell:after,.ag-header-group-cell:where(:not(.ag-header-span-height.ag-header-group-cell-no-group)):after{content:\"\";height:var(--ag-header-column-border-height);position:absolute;top:calc(50% - var(--ag-header-column-border-height)*.5);z-index:1}:where(.ag-ltr) .ag-header-cell:after,:where(.ag-ltr) .ag-header-group-cell:where(:not(.ag-header-span-height.ag-header-group-cell-no-group)):after{border-right:var(--ag-header-column-border);right:0}:where(.ag-rtl) .ag-header-cell:after,:where(.ag-rtl) .ag-header-group-cell:where(:not(.ag-header-span-height.ag-header-group-cell-no-group)):after{border-left:var(--ag-header-column-border);left:0}.ag-header-highlight-after:after,.ag-header-highlight-before:after{background-color:var(--ag-accent-color);content:\"\";height:100%;position:absolute;width:1px}:where(.ag-ltr) .ag-header-highlight-before:after{left:0}:where(.ag-rtl) .ag-header-highlight-before:after{right:0}:where(.ag-ltr) .ag-header-highlight-after:after{right:0;:where(.ag-pinned-left-header) &{right:1px}}:where(.ag-rtl) .ag-header-highlight-after:after{left:0;:where(.ag-pinned-left-header) &{left:1px}}.ag-header-cell-resize{align-items:center;cursor:ew-resize;display:flex;height:100%;position:absolute;top:0;width:8px;z-index:2;&:after{background-color:var(--ag-header-column-resize-handle-color);content:\"\";height:var(--ag-header-column-resize-handle-height);position:absolute;top:calc(50% - var(--ag-header-column-resize-handle-height)*.5);width:var(--ag-header-column-resize-handle-width);z-index:1}}:where(.ag-ltr) .ag-header-cell-resize{right:-3px;&:after{left:calc(50% - var(--ag-header-column-resize-handle-width))}}:where(.ag-rtl) .ag-header-cell-resize{left:-3px;&:after{right:calc(50% - var(--ag-header-column-resize-handle-width))}}:where(.ag-header-cell.ag-header-span-height) .ag-header-cell-resize:after{height:calc(100% - var(--ag-spacing)*4);top:calc(var(--ag-spacing)*2)}.ag-header-group-cell-no-group:where(.ag-header-span-height){display:none}.ag-sort-indicator-container{display:flex;gap:var(--ag-spacing)}.ag-layout-print{&.ag-body{display:block;height:unset}&.ag-root-wrapper{display:inline-block}.ag-body-horizontal-scroll,.ag-body-vertical-scroll{display:none}&.ag-force-vertical-scroll{overflow-y:visible!important}}@media print{.ag-root-wrapper.ag-layout-print{display:table;.ag-body-horizontal-scroll-viewport,.ag-body-viewport,.ag-center-cols-container,.ag-center-cols-viewport,.ag-root,.ag-root-wrapper-body,.ag-virtual-list-viewport{display:block!important;height:auto!important;overflow:hidden!important}.ag-cell,.ag-row{-moz-column-break-inside:avoid;break-inside:avoid}}}ag-grid,ag-grid-angular{display:block}.ag-chart,.ag-dnd-ghost,.ag-popup,.ag-root-wrapper{cursor:default;line-height:normal;white-space:normal;-webkit-font-smoothing:antialiased;background-color:var(--ag-background-color);color:var(--ag-text-color);color-scheme:var(--ag-browser-color-scheme);font-family:var(--ag-font-family);font-size:var(--ag-font-size);--ag-indentation-level:0}.ag-root-wrapper{border:var(--ag-wrapper-border);border-radius:var(--ag-wrapper-border-radius);display:flex;flex-direction:column;overflow:hidden;position:relative;&.ag-layout-normal{height:100%}}.ag-root-wrapper-body{display:flex;flex-direction:row;&.ag-layout-normal{flex:1 1 auto;height:0;min-height:0}}.ag-root{display:flex;flex-direction:column;position:relative;&.ag-layout-auto-height,&.ag-layout-normal{flex:1 1 auto;overflow:hidden;width:0}&.ag-layout-normal{height:100%}}.ag-drag-handle{color:var(--ag-drag-handle-color);cursor:grab}.ag-list-item,.ag-virtual-list-item{height:var(--ag-list-item-height)}.ag-virtual-list-item{position:absolute;width:100%}.ag-select-list{background-color:var(--ag-picker-list-background-color);border:var(--ag-picker-list-border);border-radius:var(--ag-border-radius);box-shadow:var(--ag-dropdown-shadow);overflow:hidden auto}.ag-list-item{align-items:center;display:flex;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;&.ag-active-item{background-color:var(--ag-row-hover-color)}}.ag-select-list-item{cursor:default;-webkit-user-select:none;-moz-user-select:none;user-select:none;:where(span){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}:where(.ag-ltr) .ag-select-list-item{padding-left:calc(var(--ag-cell-horizontal-padding)/2)}:where(.ag-rtl) .ag-select-list-item{padding-right:calc(var(--ag-cell-horizontal-padding)/2)}.ag-list-item-hovered:after{background-color:var(--ag-accent-color);content:\"\";height:1px;left:0;position:absolute;right:0}.ag-item-highlight-top:after{top:0}.ag-item-highlight-bottom:after{bottom:0}:where(.ag-icon):before{align-items:center;background-color:currentcolor;color:inherit;content:\"\";display:flex;font-family:inherit;font-size:var(--ag-icon-size);font-style:normal;font-variant:normal;height:var(--ag-icon-size);justify-content:center;line-height:var(--ag-icon-size);-webkit-mask-size:contain;mask-size:contain;text-transform:none;width:var(--ag-icon-size)}.ag-icon{background-position:50%;background-repeat:no-repeat;background-size:contain;color:var(--ag-icon-color);display:block;height:var(--ag-icon-size);position:relative;-webkit-user-select:none;-moz-user-select:none;user-select:none;width:var(--ag-icon-size)}.ag-column-select-column-group-readonly,.ag-column-select-column-readonly,.ag-disabled,[disabled]{.ag-icon{opacity:.5}&.ag-icon-grip{opacity:.35}}.ag-column-select-column-readonly{&.ag-icon-grip,.ag-icon-grip{opacity:.35}}.ag-chart-menu-icon,.ag-chart-settings-next,.ag-chart-settings-prev,.ag-column-group-icons,.ag-column-select-header-icon,.ag-filter-toolpanel-expand,.ag-floating-filter-button-button,.ag-group-title-bar-icon,.ag-header-cell-filter-button,.ag-header-cell-menu-button,.ag-header-expand-icon,.ag-panel-title-bar-button,.ag-panel-title-bar-button-icon,.ag-set-filter-group-icons,:where(.ag-group-contracted) .ag-icon,:where(.ag-group-expanded) .ag-icon{background-color:var(--ag-icon-button-background-color);border-radius:var(--ag-icon-button-border-radius);box-shadow:0 0 0 var(--ag-icon-button-background-spread) var(--ag-icon-button-background-color);color:var(--ag-icon-button-color);&:hover{background-color:var(--ag-icon-button-hover-background-color);box-shadow:0 0 0 var(--ag-icon-button-background-spread) var(--ag-icon-button-hover-background-color);color:var(--ag-icon-button-hover-color)}}.ag-filter-active{background-image:linear-gradient(var(--ag-icon-button-active-background-color),var(--ag-icon-button-active-background-color));border-radius:1px;outline:solid var(--ag-icon-button-background-spread) var(--ag-icon-button-active-background-color);position:relative;&:after{background-color:var(--ag-accent-color);border-radius:50%;content:\"\";height:6px;position:absolute;top:-1px;width:6px}:where(.ag-icon-filter){clip-path:path(\"M8,0C8,4.415 11.585,8 16,8L16,16L0,16L0,0L8,0Z\");color:var(--ag-icon-button-active-color)}}:where(.ag-ltr) .ag-filter-active{&:after{right:-1px}}:where(.ag-rtl) .ag-filter-active{&:after{left:-1px}}.ag-menu{background-color:var(--ag-menu-background-color);border:var(--ag-menu-border);border-radius:var(--ag-border-radius);box-shadow:var(--ag-menu-shadow);color:var(--ag-menu-text-color);max-height:100%;overflow-y:auto}.ag-menu,.ag-resizer{position:absolute;-webkit-user-select:none;-moz-user-select:none;user-select:none}.ag-resizer{pointer-events:none;z-index:1}:where(.ag-resizer){&.ag-resizer-topLeft{cursor:nwse-resize;height:5px;left:0;top:0;width:5px}&.ag-resizer-top{cursor:ns-resize;height:5px;left:5px;right:5px;top:0}&.ag-resizer-topRight{cursor:nesw-resize;height:5px;right:0;top:0;width:5px}&.ag-resizer-right{bottom:5px;cursor:ew-resize;right:0;top:5px;width:5px}&.ag-resizer-bottomRight{bottom:0;cursor:nwse-resize;height:5px;right:0;width:5px}&.ag-resizer-bottom{bottom:0;cursor:ns-resize;height:5px;left:5px;right:5px}&.ag-resizer-bottomLeft{bottom:0;cursor:nesw-resize;height:5px;left:0;width:5px}&.ag-resizer-left{bottom:5px;cursor:ew-resize;left:0;top:5px;width:5px}}";