ag-grid-community 35.2.0 → 35.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 (131) hide show
  1. package/README.md +36 -36
  2. package/dist/ag-grid-community.js +14153 -1434
  3. package/dist/ag-grid-community.min.js +882 -258
  4. package/dist/ag-grid-community.min.noStyle.js +51 -43
  5. package/dist/ag-grid-community.noStyle.js +2037 -1420
  6. package/dist/package/main.cjs.js +2034 -1402
  7. package/dist/package/main.cjs.min.js +49 -41
  8. package/dist/package/main.esm.min.mjs +46 -38
  9. package/dist/package/main.esm.mjs +2034 -1402
  10. package/dist/package/package.json +5 -8
  11. package/dist/package.json +5 -8
  12. package/dist/types/package.json +5 -8
  13. package/dist/types/src/agStack/interfaces/iIcon.d.ts +1 -1
  14. package/dist/types/src/agStack/popup/popupPositionUtils.d.ts +71 -0
  15. package/dist/types/src/agStack/rendering/agPositionableFeature.d.ts +1 -1
  16. package/dist/types/src/agStack/theming/inject.d.ts +3 -2
  17. package/dist/types/src/agStack/theming/shared/shared-css.d.ts +1 -0
  18. package/dist/types/src/agStack/utils/array.d.ts +9 -0
  19. package/dist/types/src/agStack/utils/dom.d.ts +1 -1
  20. package/dist/types/src/agStack/utils/fuzzyMatch.d.ts +2 -1
  21. package/dist/types/src/agStack/utils/value.d.ts +6 -1
  22. package/dist/types/src/agStack/widgets/agInputTextArea.d.ts +1 -0
  23. package/dist/types/src/api/gridApi.d.ts +60 -1
  24. package/dist/types/src/clientSideRowModel/clientSideRowModel.d.ts +1 -0
  25. package/dist/types/src/clientSideRowModel/deltaSort.d.ts +2 -0
  26. package/dist/types/src/clientSideRowModel/filterStage.d.ts +2 -9
  27. package/dist/types/src/clientSideRowModel/sortStage.d.ts +1 -1
  28. package/dist/types/src/columns/columnDefFactory.d.ts +1 -0
  29. package/dist/types/src/columns/columnModel.d.ts +6 -1
  30. package/dist/types/src/context/context.d.ts +17 -4
  31. package/dist/types/src/edit/cellEditors/largeTextCellEditor.d.ts +4 -0
  32. package/dist/types/src/edit/editService.d.ts +1 -1
  33. package/dist/types/src/edit/strategy/fullRowEditStrategy.d.ts +1 -1
  34. package/dist/types/src/edit/strategy/singleCellEditStrategy.d.ts +1 -1
  35. package/dist/types/src/entities/agColumn.d.ts +3 -5
  36. package/dist/types/src/entities/colDef.d.ts +20 -8
  37. package/dist/types/src/entities/gridOptions.d.ts +70 -5
  38. package/dist/types/src/entities/rowNode.d.ts +17 -2
  39. package/dist/types/src/filter/filterManager.d.ts +1 -5
  40. package/dist/types/src/filter/filterValueService.d.ts +1 -2
  41. package/dist/types/src/filter/provided/date/dateFilterHandler.d.ts +1 -0
  42. package/dist/types/src/gridBodyComp/rowContainer/rowContainerEventsFeature.d.ts +2 -0
  43. package/dist/types/src/gridComp/gridComp.d.ts +1 -0
  44. package/dist/types/src/gridComp/gridCtrl.d.ts +1 -0
  45. package/dist/types/src/gridOptionsDefault.d.ts +3 -0
  46. package/dist/types/src/gridOptionsInitial.d.ts +1 -1
  47. package/dist/types/src/gridOptionsService.d.ts +1 -0
  48. package/dist/types/src/gridOptionsUtils.d.ts +8 -2
  49. package/dist/types/src/headerRendering/row/headerRowCtrl.d.ts +1 -1
  50. package/dist/types/src/interfaces/exportParams.d.ts +12 -0
  51. package/dist/types/src/interfaces/formulas.d.ts +15 -0
  52. package/dist/types/src/interfaces/iCallbackParams.d.ts +3 -0
  53. package/dist/types/src/interfaces/iCellRangeFeature.d.ts +1 -1
  54. package/dist/types/src/interfaces/iExcelCreator.d.ts +40 -1
  55. package/dist/types/src/interfaces/iFilter.d.ts +1 -1
  56. package/dist/types/src/interfaces/iFocusableContainer.d.ts +1 -1
  57. package/dist/types/src/interfaces/iFrameworkOverrides.d.ts +2 -0
  58. package/dist/types/src/interfaces/iModule.d.ts +4 -4
  59. package/dist/types/src/interfaces/iRowGroupPanelBuilder.d.ts +11 -0
  60. package/dist/types/src/interfaces/iRowNode.d.ts +20 -6
  61. package/dist/types/src/interfaces/iRowNodeStage.d.ts +6 -3
  62. package/dist/types/src/interfaces/iServerSideDatasource.d.ts +10 -0
  63. package/dist/types/src/interfaces/iServerSideRowModel.d.ts +6 -0
  64. package/dist/types/src/interfaces/iToolbar.d.ts +178 -0
  65. package/dist/types/src/interfaces/menuItem.d.ts +1 -1
  66. package/dist/types/src/interfaces/notes.d.ts +147 -0
  67. package/dist/types/src/main-internal.d.ts +15 -8
  68. package/dist/types/src/main.d.ts +6 -3
  69. package/dist/types/src/navigation/cellNavigationService.d.ts +0 -3
  70. package/dist/types/src/pagination/{pageSizeSelector/pageSizeSelectorComp.d.ts → pageSizeSelectorComp.d.ts} +3 -4
  71. package/dist/types/src/pagination/pageSummaryComp.d.ts +29 -0
  72. package/dist/types/src/pagination/paginationService.d.ts +0 -1
  73. package/dist/types/src/pagination/paginationUtils.d.ts +3 -0
  74. package/dist/types/src/pagination/rowSummaryComp.d.ts +15 -0
  75. package/dist/types/src/pinnedColumns/pinnedColumnService.d.ts +2 -0
  76. package/dist/types/src/pinnedRowModel/manualPinnedRowModel.d.ts +2 -0
  77. package/dist/types/src/propertyKeys.d.ts +1 -1
  78. package/dist/types/src/publicEventHandlersMap.d.ts +1 -1
  79. package/dist/types/src/rendering/cell/cellCtrl.d.ts +6 -0
  80. package/dist/types/src/rendering/cell/cellPositionFeature.d.ts +0 -2
  81. package/dist/types/src/rendering/row/rowCtrl.d.ts +22 -2
  82. package/dist/types/src/rendering/spanning/rowSpanService.d.ts +2 -0
  83. package/dist/types/src/testing/testIdUtils.d.ts +6 -0
  84. package/dist/types/src/theming/core/core-css.d.ts +16 -0
  85. package/dist/types/src/theming/createTheme.d.ts +3 -1
  86. package/dist/types/src/theming/parts/notes/note-styles.d.ts +37 -0
  87. package/dist/types/src/theming/parts/theme/themes.d.ts +6 -2
  88. package/dist/types/src/utils/icon.d.ts +1 -1
  89. package/dist/types/src/validation/errorMessages/errorText.d.ts +25 -4
  90. package/dist/types/src/validation/validationService.d.ts +7 -1
  91. package/dist/types/src/validation/validationTypes.d.ts +5 -2
  92. package/dist/types/src/valueService/valueCache.d.ts +1 -2
  93. package/dist/types/src/valueService/valueService.d.ts +18 -13
  94. package/dist/types/src/vanillaFrameworkOverrides.d.ts +1 -0
  95. package/dist/types/src/version.d.ts +1 -1
  96. package/dist/types/src/widgets/component.d.ts +1 -1
  97. package/package.json +5 -8
  98. package/styles/_css-content.scss +1290 -310
  99. package/styles/_icon-font-codes.scss +1 -0
  100. package/styles/_index.scss +3 -3
  101. package/styles/ag-grid-no-native-widgets.css +416 -52
  102. package/styles/ag-grid-no-native-widgets.min.css +4 -4
  103. package/styles/ag-grid.css +433 -63
  104. package/styles/ag-grid.min.css +4 -4
  105. package/styles/ag-theme-alpine-no-font.css +21 -11
  106. package/styles/ag-theme-alpine-no-font.min.css +3 -3
  107. package/styles/ag-theme-alpine.css +22 -12
  108. package/styles/ag-theme-alpine.min.css +3 -3
  109. package/styles/ag-theme-balham-no-font.css +15 -2
  110. package/styles/ag-theme-balham-no-font.min.css +3 -3
  111. package/styles/ag-theme-balham.css +16 -3
  112. package/styles/ag-theme-balham.min.css +3 -3
  113. package/styles/ag-theme-material-no-font.css +92 -11
  114. package/styles/ag-theme-material-no-font.min.css +3 -4
  115. package/styles/ag-theme-material.css +93 -12
  116. package/styles/ag-theme-material.min.css +3 -4
  117. package/styles/ag-theme-quartz-no-font.css +49 -30
  118. package/styles/ag-theme-quartz-no-font.min.css +3 -3
  119. package/styles/ag-theme-quartz.css +50 -31
  120. package/styles/ag-theme-quartz.min.css +3 -3
  121. package/styles/agGridAlpineFont.css +1 -1
  122. package/styles/agGridAlpineFont.min.css +1 -1
  123. package/styles/agGridBalhamFont.css +1 -1
  124. package/styles/agGridBalhamFont.min.css +1 -1
  125. package/styles/agGridClassicFont.css +1 -1
  126. package/styles/agGridClassicFont.min.css +1 -1
  127. package/styles/agGridMaterialFont.css +1 -1
  128. package/styles/agGridMaterialFont.min.css +1 -1
  129. package/styles/agGridQuartzFont.css +1 -1
  130. package/styles/agGridQuartzFont.min.css +1 -1
  131. /package/dist/types/src/{export/downloader.d.ts → agStack/utils/download.d.ts} +0 -0
@@ -5,7 +5,7 @@ import type { CellCtrl } from '../../rendering/cell/cellCtrl';
5
5
  import type { EditValidationAction, EditValidationResult } from './baseEditStrategy';
6
6
  import { BaseEditStrategy } from './baseEditStrategy';
7
7
  export declare class SingleCellEditStrategy extends BaseEditStrategy {
8
- beanName: "ariaAnnounce" | "dragSvc" | "dragAndDrop" | "environment" | "eventSvc" | "iconSvc" | "localeSvc" | "popupSvc" | "gos" | "registry" | "context" | "frameworkOverrides" | "eRootDiv" | "agChartsExports" | "rangeSvc" | "advFilterExpSvc" | "advSettingsMenuFactory" | "chartCrossFilterSvc" | "chartMenuItemMapper" | "chartMenuListFactory" | "chartMenuSvc" | "chartTranslation" | "colChooserFactory" | "colMenuFactory" | "colToolPanelFactory" | "enterpriseChartProxyFactory" | "lazyBlockLoadingSvc" | "menuItemMapper" | "menuUtils" | "ssrmBlockUtils" | "ssrmExpandListener" | "ssrmFilterListener" | "ssrmListenerUtils" | "ssrmNodeManager" | "ssrmSortSvc" | "ssrmStoreFactory" | "ssrmStoreUtils" | "statusBarSvc" | "testIdSvc" | "formula" | "sideBar" | "valueCache" | "pagination" | "groupFilter" | "advancedFilter" | "rowModel" | "gridOptions" | "pageBoundsListener" | "rowRenderer" | "valueSvc" | "colModel" | "colViewport" | "colNames" | "visibleCols" | "colMoves" | "colFlex" | "colResize" | "headerNavigation" | "navigation" | "colAnimation" | "focusSvc" | "cellStyles" | "colHover" | "userCompFactory" | "animationFrameSvc" | "sortSvc" | "colFilter" | "filterManager" | "rowContainerHeight" | "selectionSvc" | "rowStyleSvc" | "ctrlsSvc" | "syncSvc" | "validation" | "gridApi" | "eGridDiv" | "withinStudio" | "pivotResultCols" | "autoColSvc" | "selectionColSvc" | "rowNumbersSvc" | "colDefFactory" | "colAutosize" | "rowGroupColsSvc" | "valueColsSvc" | "pivotColsSvc" | "quickFilter" | "showRowGroupCols" | "showRowGroupColValueSvc" | "dataTypeSvc" | "globalListener" | "globalSyncListener" | "stateSvc" | "overlays" | "pinnedRowModel" | "menuSvc" | "apiEventSvc" | "undoRedo" | "rowNodeBlockLoader" | "csvCreator" | "excelCreator" | "clipboardSvc" | "cellNavigation" | "scrollVisibleSvc" | "pinnedCols" | "expressionSvc" | "autoWidthCalc" | "agCompUtils" | "frameworkCompWrapper" | "horizontalResizeSvc" | "filterMenuFactory" | "enterpriseMenuFactory" | "contextMenuSvc" | "editSvc" | "editModelSvc" | "alignedGridsSvc" | "paginationAutoPageSizeSvc" | "pageBounds" | "apiFunctionSvc" | "gridDestroySvc" | "expansionSvc" | "ssrmTxnManager" | "aggFuncSvc" | "filterStage" | "sortStage" | "flattenStage" | "groupStage" | "aggStage" | "aggChildrenSvc" | "pivotStage" | "filterAggStage" | "rowNodeSorter" | "pivotColDefSvc" | "chartSvc" | "aggColNameSvc" | "renderStatus" | "rowDropHighlightSvc" | "rowDragSvc" | "groupEditSvc" | "rowGroupingEditValueSvc" | "stickyRowSvc" | "filterValueSvc" | "cellFlashSvc" | "masterDetailSvc" | "tooltipSvc" | "colGroupSvc" | "rowAutoHeight" | "rowChildrenSvc" | "footerSvc" | "touchSvc" | "rowSpanSvc" | "spannedRowRenderer" | "findSvc" | "multiFilter" | "filterPanelSvc" | "selectableFilter" | "colDelayRenderSvc" | "gridSerializer" | "licenseManager" | "changedPathFactory" | "changeDetectionSvc" | "groupHierarchyColSvc" | "formulaDataSvc" | "formulaInputManager" | "columnStateUpdateStrategy" | undefined;
8
+ beanName: "ariaAnnounce" | "dragSvc" | "dragAndDrop" | "environment" | "eventSvc" | "iconSvc" | "localeSvc" | "popupSvc" | "gos" | "registry" | "context" | "frameworkOverrides" | "eRootDiv" | "agChartsExports" | "toolbar" | "rangeSvc" | "sideBar" | "valueCache" | "pagination" | "advFilterExpSvc" | "advSettingsMenuFactory" | "chartCrossFilterSvc" | "chartMenuItemMapper" | "chartMenuListFactory" | "chartMenuSvc" | "chartTranslation" | "colChooserFactory" | "colMenuFactory" | "colToolPanelFactory" | "enterpriseChartProxyFactory" | "lazyBlockLoadingSvc" | "menuItemMapper" | "menuUtils" | "ssrmBlockUtils" | "ssrmExpandListener" | "ssrmFilterListener" | "ssrmListenerUtils" | "ssrmNodeManager" | "ssrmSortSvc" | "ssrmStoreFactory" | "ssrmStoreUtils" | "statusBarSvc" | "testIdSvc" | "toolbarMenuBuilder" | "formula" | "groupFilter" | "advancedFilter" | "rowModel" | "sortSvc" | "pinnedCols" | "colFlex" | "gridOptions" | "pageBoundsListener" | "rowRenderer" | "valueSvc" | "colModel" | "colViewport" | "colNames" | "visibleCols" | "colMoves" | "colResize" | "headerNavigation" | "navigation" | "colAnimation" | "focusSvc" | "cellStyles" | "colHover" | "userCompFactory" | "animationFrameSvc" | "colFilter" | "filterManager" | "rowContainerHeight" | "selectionSvc" | "rowStyleSvc" | "ctrlsSvc" | "syncSvc" | "validation" | "gridApi" | "eGridDiv" | "withinStudio" | "pivotResultCols" | "autoColSvc" | "selectionColSvc" | "rowNumbersSvc" | "colDefFactory" | "colAutosize" | "rowGroupColsSvc" | "valueColsSvc" | "pivotColsSvc" | "quickFilter" | "showRowGroupCols" | "showRowGroupColValueSvc" | "dataTypeSvc" | "globalListener" | "globalSyncListener" | "stateSvc" | "overlays" | "pinnedRowModel" | "menuSvc" | "apiEventSvc" | "undoRedo" | "rowNodeBlockLoader" | "csvCreator" | "excelCreator" | "clipboardSvc" | "cellNavigation" | "scrollVisibleSvc" | "expressionSvc" | "autoWidthCalc" | "agCompUtils" | "frameworkCompWrapper" | "horizontalResizeSvc" | "filterMenuFactory" | "enterpriseMenuFactory" | "contextMenuSvc" | "editSvc" | "editModelSvc" | "alignedGridsSvc" | "paginationAutoPageSizeSvc" | "pageBounds" | "apiFunctionSvc" | "gridDestroySvc" | "expansionSvc" | "ssrmTxnManager" | "aggFuncSvc" | "filterStage" | "sortStage" | "groupFilterStage" | "groupSortStage" | "flattenStage" | "groupStage" | "aggStage" | "aggChildrenSvc" | "pivotStage" | "filterAggStage" | "rowNodeSorter" | "pivotColDefSvc" | "chartSvc" | "aggColNameSvc" | "renderStatus" | "rowDropHighlightSvc" | "rowDragSvc" | "groupEditSvc" | "rowGroupingEditValueSvc" | "stickyRowSvc" | "filterValueSvc" | "cellFlashSvc" | "masterDetailSvc" | "tooltipSvc" | "colGroupSvc" | "rowAutoHeight" | "rowChildrenSvc" | "footerSvc" | "touchSvc" | "rowSpanSvc" | "spannedRowRenderer" | "findSvc" | "rowGroupPanelBuilder" | "multiFilter" | "filterPanelSvc" | "selectableFilter" | "colDelayRenderSvc" | "gridSerializer" | "licenseManager" | "changedPathFactory" | "changeDetectionSvc" | "groupHierarchyColSvc" | "formulaDataSvc" | "formulaInputManager" | "notesDataSvc" | "notesSvc" | "columnStateUpdateStrategy" | undefined;
9
9
  private rowNode?;
10
10
  private column?;
11
11
  shouldStop(position?: EditPosition, event?: KeyboardEvent | MouseEvent | null | undefined, source?: 'api' | 'ui'): boolean | null;
@@ -15,7 +15,7 @@ export declare class AgColumn<TValue = any> extends BeanStub<ColumnEventName> im
15
15
  colDef: ColDef<any, TValue>;
16
16
  userProvidedColDef: ColDef<any, TValue> | null;
17
17
  readonly colId: string;
18
- private readonly primary;
18
+ readonly primary: boolean;
19
19
  readonly isColumn: true;
20
20
  private frameworkEventListenerService?;
21
21
  private readonly instanceId;
@@ -29,7 +29,6 @@ export declare class AgColumn<TValue = any> extends BeanStub<ColumnEventName> im
29
29
  private oldLeft;
30
30
  aggFunc: string | IAggFunc | null | undefined;
31
31
  private sortDef;
32
- private _wasSortExplicitlyRemoved;
33
32
  sortIndex: number | null | undefined;
34
33
  moving: boolean;
35
34
  resizing: boolean;
@@ -42,7 +41,7 @@ export declare class AgColumn<TValue = any> extends BeanStub<ColumnEventName> im
42
41
  private maxWidth;
43
42
  filterActive: boolean;
44
43
  private readonly colEventSvc;
45
- private fieldContainsDots;
44
+ fieldContainsDots: boolean;
46
45
  private tooltipFieldContainsDots;
47
46
  tooltipEnabled: boolean;
48
47
  rowGroupActive: boolean;
@@ -109,8 +108,7 @@ export declare class AgColumn<TValue = any> extends BeanStub<ColumnEventName> im
109
108
  private getColDefAllowedSortTypes;
110
109
  getSortingOrder(): SortDef[];
111
110
  getAvailableSortTypes(): Set<string>;
112
- get wasSortExplicitlyRemoved(): boolean;
113
- setSortDef(sortDef: SortDef, initial?: boolean): void;
111
+ setSortDef(sortDef: SortDef): void;
114
112
  isSortable(): boolean;
115
113
  /** @deprecated v32 use col.getSort() === 'asc */
116
114
  isSortAscending(): boolean;
@@ -139,22 +139,23 @@ export type IAggFuncs<TData = any, TValue = any, TContext = any> = {
139
139
  [key: string]: IAggFunc<TData, TValue, TContext>;
140
140
  };
141
141
  /**
142
- * Wrapper object returned by built-in aggregation functions `avg` and `count` on group rows.
142
+ * Wrapper returned by the built-in `avg` and `count` aggregation functions, and the recommended
143
+ * shape for custom agg functions that expose a scalar value alongside metadata (e.g. a count, used
144
+ * when re-aggregating across nested groups).
143
145
  *
144
- * - `avg` returns `{ value: number | bigint | null, count: number, toString(), toNumber() }`
145
- * - `count` returns `{ value: number, toString(), toNumber() }`
146
+ * - `avg` returns `{ value, count, toString(), toNumber() }`
147
+ * - `count` returns `{ value, toString(), toNumber() }`
146
148
  *
147
- * Other built-in agg functions (`sum`, `min`, `max`, `first`, `last`) return plain scalar values.
148
- * Custom aggregation functions may return any value.
149
+ * Other built-ins (`sum`, `min`, `max`, `first`, `last`) return plain scalars.
149
150
  */
150
151
  export interface IAggFuncResult<TAggValue = number | bigint | null> {
151
- /** The aggregated scalar value */
152
+ /** The aggregated scalar value. */
152
153
  value?: TAggValue;
153
154
  /** The count of aggregated values. Present on `avg` results. */
154
155
  count?: number;
155
- /** Returns a string representation of the aggregated value */
156
+ /** Returns a string representation of the aggregated value. Used also for sorting. */
156
157
  toString(): string;
157
- /** Returns the numeric representation of the aggregated value */
158
+ /** Returns the numeric representation of the aggregated value. Used also for sorting. */
158
159
  toNumber?(): TAggValue;
159
160
  }
160
161
  export interface IAggFuncParams<TData = any, TValue = any, TContext = any> extends AgGridCommon<TData, TContext> {
@@ -310,6 +311,14 @@ export interface ColDef<TData = any, TValue = any> extends AbstractColDef<TData,
310
311
  * @default false
311
312
  */
312
313
  suppressNavigable?: boolean | SuppressNavigableCallback<TData, TValue>;
314
+ /**
315
+ * Set to `true` to suppress built-in note actions for this column.
316
+ * Existing notes remain viewable on hover and through `getNote()`.
317
+ * Can also be a callback function to suppress notes for specific rows.
318
+ * @default false
319
+ * @agModule `NotesModule`
320
+ */
321
+ suppressNoteActions?: boolean | SuppressNoteActionsCallback<TData, TValue>;
313
322
  /**
314
323
  * Allows the user to suppress certain keyboard events in the grid cell.
315
324
  * @default false
@@ -893,6 +902,9 @@ export type SuppressPasteCallback<TData = any, TValue = any, TContext = any> = (
893
902
  export interface SuppressNavigableCallbackParams<TData = any, TValue = any, TContext = any> extends ColumnFunctionCallbackParams<TData, TValue, TContext> {
894
903
  }
895
904
  export type SuppressNavigableCallback<TData = any, TValue = any, TContext = any> = (params: SuppressNavigableCallbackParams<TData, TValue, TContext>) => boolean;
905
+ export interface SuppressNoteActionsCallbackParams<TData = any, TValue = any, TContext = any> extends ColumnFunctionCallbackParams<TData, TValue, TContext> {
906
+ }
907
+ export type SuppressNoteActionsCallback<TData = any, TValue = any, TContext = any> = (params: SuppressNoteActionsCallbackParams<TData, TValue, TContext>) => boolean;
896
908
  export interface HeaderCheckboxSelectionCallbackParams<TData = any, TValue = any, TContext = any> extends AgGridCommon<TData, TContext> {
897
909
  column: Column<TValue>;
898
910
  colDef: ColDef<TData, TValue>;
@@ -29,14 +29,21 @@ import type { IRowNode, RowPinnedType } from '../interfaces/iRowNode';
29
29
  import type { IServerSideDatasource } from '../interfaces/iServerSideDatasource';
30
30
  import type { SideBarDef } from '../interfaces/iSideBar';
31
31
  import type { StatusBar } from '../interfaces/iStatusPanel';
32
+ import type { Toolbar } from '../interfaces/iToolbar';
32
33
  import type { IViewportDatasource } from '../interfaces/iViewportDatasource';
33
34
  import type { DefaultMenuItem, MenuItemDef } from '../interfaces/menuItem';
35
+ import type { FullWidthNotesDataSource, NotesDataSource } from '../interfaces/notes';
34
36
  import type { RowNumbersOptions } from '../interfaces/rowNumbers';
35
37
  import type { OverlaySelectorFunc, OverlayType } from '../rendering/overlays/overlayComponent';
36
38
  import type { Icons } from '../utils/icon';
37
39
  import type { CheckboxSelectionCallback, ColDef, ColGroupDef, ColTypeDefs, GroupHierarchyConfig, IAggFuncs, SortDirection } from './colDef';
38
40
  import type { DataTypeDefinitions } from './dataType';
39
41
  export interface GridOptions<TData = any> {
42
+ /**
43
+ * Specifies the toolbar items to use in the toolbar.
44
+ * @agModule `ToolbarModule`
45
+ */
46
+ toolbar?: Toolbar;
40
47
  /**
41
48
  * Specifies the status bar components to use in the status bar.
42
49
  * @agModule `StatusBarModule`
@@ -857,7 +864,6 @@ export interface GridOptions<TData = any> {
857
864
  * Set to `true` to show the page size selector with the default page sizes `[20, 50, 100]`.
858
865
  * Set to `false` to hide the page size selector.
859
866
  * @default true
860
- * @initial
861
867
  * @agModule `PaginationModule`
862
868
  */
863
869
  paginationPageSizeSelector?: number[] | boolean;
@@ -882,6 +888,15 @@ export interface GridOptions<TData = any> {
882
888
  * @agModule `PaginationModule`
883
889
  */
884
890
  suppressPaginationPanel?: boolean;
891
+ /**
892
+ * Controls which built-in components appear in the pagination panel and in what order.
893
+ * Accepts an array of names: `'pageSize'`, `'rowSummary'`, `'pageSummary'`.
894
+ * Components render in the order they appear in the array. Omitted components are hidden.
895
+ * An empty array hides the pagination panel entirely.
896
+ * When not set, all three components render in the default order: [`pageSize`, `rowSummary`, `pageSummary`].
897
+ * @agModule `PaginationModule`
898
+ */
899
+ paginationPanels?: PaginationPanel[];
885
900
  /**
886
901
  * Set to `true` to enable pivot mode.
887
902
  * @default false
@@ -912,12 +927,12 @@ export interface GridOptions<TData = any> {
912
927
  * When set and the grid is in pivot mode, automatically calculated totals will appear within the Pivot Column Groups, in the position specified.
913
928
  * @agModule `PivotModule`
914
929
  */
915
- pivotColumnGroupTotals?: 'before' | 'after';
930
+ pivotColumnGroupTotals?: PivotColumnGroupTotals;
916
931
  /**
917
932
  * When set and the grid is in pivot mode, automatically calculated totals will appear for each value column in the position specified.
918
933
  * @agModule `PivotModule`
919
934
  */
920
- pivotRowTotals?: 'before' | 'after';
935
+ pivotRowTotals?: PivotRowTotals;
921
936
  /**
922
937
  * If `true`, the grid will not swap in the grouping column when pivoting. Useful if pivoting using Server Side Row Model or Viewport Row Model and you want full control of all columns including the group column.
923
938
  * @default false
@@ -951,6 +966,33 @@ export interface GridOptions<TData = any> {
951
966
  * @agModule `FormulaModule`
952
967
  */
953
968
  formulaDataSource?: FormulaDataSource;
969
+ /**
970
+ * Provide a data source to control where notes are stored and retrieved.
971
+ * Can be updated to enable, disable, or replace Notes at runtime.
972
+ * @agModule `NotesModule`
973
+ */
974
+ notesDataSource?: NotesDataSource | FullWidthNotesDataSource;
975
+ /**
976
+ * Changes how existing notes are opened.
977
+ * - `'hover'` - Existing notes open when hovering a noted cell or full width row.
978
+ * - `'click'` - Existing notes open when clicking a noted cell or full width row.
979
+ * @default 'hover'
980
+ * @agModule `NotesModule`
981
+ */
982
+ noteTrigger?: 'hover' | 'click';
983
+ /**
984
+ * The delay in milliseconds before a note is shown when hovering a noted cell.
985
+ * Only applies when `noteTrigger = 'hover'`.
986
+ * @default 180
987
+ * @agModule `NotesModule`
988
+ */
989
+ noteShowDelay?: number;
990
+ /**
991
+ * The delay in milliseconds before a note is hidden after the pointer leaves a noted cell or note popup.
992
+ * @default 220
993
+ * @agModule `NotesModule`
994
+ */
995
+ noteHideDelay?: number;
954
996
  /**
955
997
  * A map of 'function name' to 'function' for custom functions that are used for formulas.
956
998
  * @initial
@@ -1157,8 +1199,18 @@ export interface GridOptions<TData = any> {
1157
1199
  */
1158
1200
  autoGroupColumnDef?: AutoGroupColumnDef<TData>;
1159
1201
  /**
1160
- * When `true`, preserves the current group order when sorting on non-group columns.
1161
- * If a user explicitly resets the current group sort direction, then the current group column order is not preserved.
1202
+ * When `true`, sorting on non-group columns does not reorder groups; only the rows within
1203
+ * each group are sorted. Group order remains the structural order set at grouping time
1204
+ * (data-insertion order, or `initialGroupOrderComparator` if configured) and is preserved
1205
+ * across filter changes and transactions. If a group column was sorted via `colDef.sort`
1206
+ * and the user later explicitly clears that sort, the structural order is restored.
1207
+ *
1208
+ * With multi-level row grouping, the order is maintained per level: a sort on a group
1209
+ * column at one level only re-orders that level's groups; sibling levels keep their
1210
+ * structural order.
1211
+ *
1212
+ * Applies to row grouping only. Has no effect on tree data, where row order is determined
1213
+ * by the tree structure.
1162
1214
  * @default false
1163
1215
  * @agModule `RowGroupingModule`
1164
1216
  */
@@ -1701,6 +1753,12 @@ export interface GridOptions<TData = any> {
1701
1753
  * @initial
1702
1754
  */
1703
1755
  suppressRowTransform?: boolean;
1756
+ /**
1757
+ * Set to `true` to suppress `content-visibility: auto` on the grid wrapper element. This degrades performance by causing the browser to render grids even when they are off screen, but may be necessary if your application depends on receiving resize events from hidden grids.
1758
+ * @default false
1759
+ * @initial
1760
+ */
1761
+ suppressContentVisibilityAuto?: boolean;
1704
1762
  /**
1705
1763
  * Set to `true` to highlight columns by adding the `ag-column-hover` CSS class.
1706
1764
  * @default false
@@ -1714,6 +1772,8 @@ export interface GridOptions<TData = any> {
1714
1772
  gridId?: string;
1715
1773
  /**
1716
1774
  * When enabled, sorts only the rows added/updated by a transaction.
1775
+ *
1776
+ * Ignored when `postSortRows` is configured (falls back to full sort).
1717
1777
  * @default false
1718
1778
  */
1719
1779
  deltaSort?: boolean;
@@ -2030,6 +2090,8 @@ export interface GridOptions<TData = any> {
2030
2090
  fillOperation?: FillOperation<TData>;
2031
2091
  /**
2032
2092
  * Callback to perform additional sorting after the grid has sorted the rows.
2093
+ *
2094
+ * When configured, `deltaSort` is ignored.
2033
2095
  */
2034
2096
  postSortRows?: PostSortRows<TData>;
2035
2097
  /**
@@ -2768,4 +2830,7 @@ export type MasterSelectionMode = NonNullable<CommonRowSelectionOptions['masterS
2768
2830
  export type AgPublicEventHandlerType = `on${Capitalize<AgPublicEventType>}` & keyof GridOptions;
2769
2831
  export type ProcessPivotResultColDef<TData = any, TValue = any> = (colDef: ColDef<TData, TValue>) => void;
2770
2832
  export type ProcessPivotResultColGroupDef<TData = any> = (colDef: ColGroupDef<TData>) => void;
2833
+ export type PaginationPanel = 'pageSize' | 'rowSummary' | 'pageSummary';
2834
+ export type PivotColumnGroupTotals = 'before' | 'after';
2835
+ export type PivotRowTotals = 'before' | 'after';
2771
2836
  export {};
@@ -228,6 +228,13 @@ export declare class RowNode<TData = any> implements IEventEmitter<RowNodeEventT
228
228
  * Updates the data on the `rowNode`. When this method is called, the grid refreshes the entire rendered row if it is displayed.
229
229
  */
230
230
  updateData(data: TData): void;
231
+ /**
232
+ * Like {@link updateData}, but does NOT mirror the data onto `this.sibling`. Used for
233
+ * row nodes whose sibling must not share data — e.g. the SSRM grand total node, whose
234
+ * sibling is the root.
235
+ * @internal AG_GRID_INTERNAL - Not for public use. Can change / be removed at any time.
236
+ */
237
+ _updateDataNoSibling(data: TData): void;
231
238
  private setDataCommon;
232
239
  private updateDataOnDetailNode;
233
240
  private createDataChangedEvent;
@@ -333,6 +340,14 @@ export declare class RowNode<TData = any> implements IEventEmitter<RowNodeEventT
333
340
  setAllChildrenCount(allChildrenCount: number | null): void;
334
341
  setUiLevel(uiLevel: number): void;
335
342
  getFirstChild(): RowNode<TData> | null;
336
- /** Called internally to destroy this node */
337
- _destroy(fadeOut: boolean): boolean;
343
+ /**
344
+ * Called internally to destroy this node.
345
+ * @param fadeOut
346
+ * - `true`: fade-out animation; preserves slide-in via `oldRowTop`.
347
+ * - `false`: instant removal; dispatches position events.
348
+ * - `null`: silent. Wholesale tree replacement only — the rowRenderer is about to
349
+ * tear down every RowCtrl, so position events would just trigger wasted work in
350
+ * `cellCtrl.onRowIndexChanged()` on rows that are about to vanish.
351
+ */
352
+ _destroy(fadeOut: boolean | null): boolean;
338
353
  }
@@ -45,15 +45,11 @@ export declare class FilterManager extends BeanStub implements NamedBean {
45
45
  isAggregateQuickFilterPresent(): boolean;
46
46
  private isNonAggregateQuickFilterPresent;
47
47
  private shouldApplyQuickFilterAfterAgg;
48
- doesRowPassOtherFilters(colIdToSkip: string, rowNode: RowNode): boolean;
49
48
  doesRowPassAggregateFilters(params: {
50
49
  rowNode: RowNode;
51
50
  colIdToSkip?: string;
52
51
  }): boolean;
53
- doesRowPassFilter(params: {
54
- rowNode: RowNode;
55
- colIdToSkip?: string;
56
- }): boolean;
52
+ doesRowPassFilter(rowNode: RowNode, colIdToSkip?: string): boolean;
57
53
  isFilterAllowed(column: AgColumn): boolean;
58
54
  getAdvFilterModel(): AdvancedFilterModel | null;
59
55
  setAdvFilterModel(expression: AdvancedFilterModel | null | undefined, source?: FilterChangedEventSourceType): void;
@@ -7,6 +7,5 @@ import type { IRowNode } from '../interfaces/iRowNode';
7
7
  /** @internal AG_GRID_INTERNAL - Not for public use. Can change / be removed at any time. */
8
8
  export declare class FilterValueService extends BeanStub implements NamedBean {
9
9
  beanName: BeanName;
10
- getValue(column: AgColumn, rowNode?: IRowNode | null, filterValueGetterOverride?: string | ValueGetterFunc): any;
11
- private executeFilterValueGetter;
10
+ getValue(column: AgColumn, rowNode: IRowNode, filterValueGetterOverride?: string | ValueGetterFunc): any;
12
11
  }
@@ -43,6 +43,7 @@ type RelativeRangeFn = (from: Date, to: Date) => [Date, Date];
43
43
  * Last 6 months last6Months [startOfToday − 6 months, startOfTomorrow)
44
44
  * Last 12 months last12Months [startOfToday − 12 months, startOfTomorrow)
45
45
  * Last 24 months last24Months [startOfToday − 24 months, startOfTomorrow)
46
+ * @knipIgnore Used in tests
46
47
  */
47
48
  export declare const presetDateFilterTypeRelativeFromToMap: Record<ISimpleFilterModelPresetType | 'setStartOfDay' | 'setStartOfWeek' | 'setStartOfNextDay' | 'setStartOfNextWeek' | 'setStartOfMonth' | 'setStartOfNextMonth' | 'setStartOfQuarter' | 'setStartOfNextQuarter' | 'setStartOfYear' | 'setStartOfNextYear' | 'setPreviousDay' | 'setPreviousWeek' | 'setPreviousMonth' | 'setPreviousQuarter', RelativeRangeFn | RelativeDateFn>;
48
49
  export {};
@@ -16,6 +16,8 @@ export declare class RowContainerEventsFeature extends BeanStub {
16
16
  private processKeyboardEvent;
17
17
  private processCellKeyboardEvent;
18
18
  private processFullWidthRowKeyboardEvent;
19
+ private processFullWidthRowKeyDown;
20
+ private processFullWidthRowNoteShortcut;
19
21
  private doGridOperations;
20
22
  private onCtrlAndA;
21
23
  private onCtrlAndC;
@@ -2,6 +2,7 @@ import type { FocusableContainer } from '../interfaces/iFocusableContainer';
2
2
  import { TabGuardComp } from '../widgets/tabGuardComp';
3
3
  export declare class GridComp extends TabGuardComp {
4
4
  private readonly gridBody;
5
+ private readonly toolbar;
5
6
  private readonly gridHeaderDropZones;
6
7
  private readonly sideBar;
7
8
  private readonly statusBar;
@@ -17,6 +17,7 @@ export interface OptionalGridComponents {
17
17
  gridHeaderDropZonesSelector?: ComponentSelector<Component>;
18
18
  sideBarSelector?: ComponentSelector<Component>;
19
19
  statusBarSelector?: ComponentSelector<Component>;
20
+ toolbarSelector?: ComponentSelector<Component & FocusableContainer>;
20
21
  watermarkSelector?: ComponentSelector<Component>;
21
22
  }
22
23
  /** @internal AG_GRID_INTERNAL - Not for public use. Can change / be removed at any time. */
@@ -9,6 +9,9 @@ export declare const GRID_OPTION_DEFAULTS: {
9
9
  readonly tooltipShowDelay: 2000;
10
10
  readonly tooltipSwitchShowDelay: 200;
11
11
  readonly tooltipHideDelay: 10000;
12
+ readonly noteTrigger: "hover";
13
+ readonly noteShowDelay: 180;
14
+ readonly noteHideDelay: 220;
12
15
  readonly tooltipMouseTrack: false;
13
16
  readonly tooltipShowMode: "standard";
14
17
  readonly tooltipInteraction: false;
@@ -38,7 +38,6 @@ export declare const INITIAL_GRID_OPTION_KEYS: {
38
38
  loadingOverlayComponent: boolean;
39
39
  suppressLoadingOverlay: boolean;
40
40
  noRowsOverlayComponent: boolean;
41
- paginationPageSizeSelector: boolean;
42
41
  paginateChildRows: boolean;
43
42
  pivotPanelShow: boolean;
44
43
  pivotSuppressAutoColumn: boolean;
@@ -70,6 +69,7 @@ export declare const INITIAL_GRID_OPTION_KEYS: {
70
69
  scrollbarWidth: boolean;
71
70
  icons: boolean;
72
71
  suppressRowTransform: boolean;
72
+ suppressContentVisibilityAuto: boolean;
73
73
  gridId: boolean;
74
74
  enableGroupEdit: boolean;
75
75
  initialState: boolean;
@@ -84,6 +84,7 @@ export declare class GridOptionsService extends BeanStub implements NamedBean, I
84
84
  gridId: string;
85
85
  rowModelType: RowModelType;
86
86
  isUmd: boolean;
87
+ usesAgGridProvider: boolean;
87
88
  };
88
89
  isModuleRegistered(moduleName: ModuleName): boolean;
89
90
  setInstanceDomData(element: HTMLElement): void;
@@ -11,9 +11,9 @@ import type { IRowModel } from './interfaces/iRowModel';
11
11
  import type { IRowNode } from './interfaces/iRowNode';
12
12
  import type { IServerSideRowModel } from './interfaces/iServerSideRowModel';
13
13
  /** @internal AG_GRID_INTERNAL - Not for public use. Can change / be removed at any time. */
14
- export declare function _isClientSideRowModel(gos: GridOptionsService, rowModel?: IRowModel): rowModel is IClientSideRowModel;
14
+ export declare function _isClientSideRowModel(gos: GridOptionsService, _rowModel?: IRowModel): _rowModel is IClientSideRowModel;
15
15
  /** @internal AG_GRID_INTERNAL - Not for public use. Can change / be removed at any time. */
16
- export declare function _isServerSideRowModel(gos: GridOptionsService, rowModel?: IRowModel): rowModel is IServerSideRowModel;
16
+ export declare function _isServerSideRowModel(gos: GridOptionsService, _rowModel?: IRowModel): _rowModel is IServerSideRowModel;
17
17
  /** @internal AG_GRID_INTERNAL - Not for public use. Can change / be removed at any time. */
18
18
  export declare function _isDomLayout(gos: GridOptionsService, domLayout: DomLayoutType): boolean;
19
19
  /** @internal AG_GRID_INTERNAL - Not for public use. Can change / be removed at any time. */
@@ -42,6 +42,12 @@ export declare function _isColumnsSortingCoupledToGroup(gos: GridOptionsService)
42
42
  export declare function _getGroupAggFiltering(gos: GridOptionsService): ((params: WithoutGridCommon<GetGroupAggFilteringParams>) => boolean) | undefined;
43
43
  /** @internal AG_GRID_INTERNAL - Not for public use. Can change / be removed at any time. */
44
44
  export declare function _getGrandTotalRow(gos: GridOptionsService): GridOptions['grandTotalRow'];
45
+ /**
46
+ * Maps a `grandTotalRow` option to the floating side the grand total should be pinned to,
47
+ * or `null` when it should render inline (or is disabled).
48
+ * @internal AG_GRID_INTERNAL - Not for public use. Can change / be removed at any time.
49
+ */
50
+ export declare function _getGrandTotalPinnedFloat(grandTotalRow: GridOptions['grandTotalRow']): 'top' | 'bottom' | null;
45
51
  /** @internal AG_GRID_INTERNAL - Not for public use. Can change / be removed at any time. */
46
52
  export declare function _getGroupTotalRowCallback(gos: GridOptionsService): (params: WithoutGridCommon<GetGroupIncludeFooterParams>) => 'top' | 'bottom' | undefined;
47
53
  /** @internal AG_GRID_INTERNAL - Not for public use. Can change / be removed at any time. */
@@ -54,7 +54,7 @@ export declare class HeaderRowCtrl extends BeanStub {
54
54
  * Recycles the header cell ctrls and creates new ones for the columns in the viewport
55
55
  * @returns The updated header cell ctrls
56
56
  */
57
- getUpdatedHeaderCtrls(): AbstractHeaderCellCtrl<import("../../main-umd-noStyles").IAbstractHeaderCellComp, AgColumn<any> | AgColumnGroup<any>, import("../cells/abstractCell/abstractHeaderCellCtrl").IHeaderResizeFeature>[];
57
+ getUpdatedHeaderCtrls(): AbstractHeaderCellCtrl<import("../../main-umd-noStyles").IAbstractHeaderCellComp, AgColumnGroup<any> | AgColumn<any>, import("../cells/abstractCell/abstractHeaderCellCtrl").IHeaderResizeFeature>[];
58
58
  /** Get the current header cell ctrls */
59
59
  getHeaderCellCtrls(): AbstractHeaderCellCtrl[];
60
60
  private recycleAndCreateHeaderCtrls;
@@ -146,10 +146,18 @@ export interface ShouldRowBeSkippedParams<TData = any, TContext = any> extends A
146
146
  export type ProcessCellForClipboard<TData = any, TContext = any> = (params: ProcessCellForExportParams<TData, TContext>) => any;
147
147
  export type ProcessCellFromClipboard<TData = any, TContext = any> = (params: ProcessCellForExportParams<TData, TContext>) => any;
148
148
  export interface ProcessCellForExportParams<TData = any, TContext = any> extends AgGridCommon<TData, TContext> {
149
+ /** The raw cell value before any formatting or processing. */
149
150
  value: any;
151
+ /**
152
+ * The zero-based row index in the exported output, including any prepended content rows.
153
+ * Only populated for file export flows (`'excel'`, `'csv'`); omitted for clipboard flows.
154
+ */
150
155
  accumulatedRowIndex?: number;
156
+ /** The row node for the cell. May be `null` or `undefined` for clipboard flows when no row is associated. */
151
157
  node?: IRowNode<TData> | null;
158
+ /** The column for the cell. */
152
159
  column: Column;
160
+ /** The operation that triggered the callback */
153
161
  type: string;
154
162
  /** Utility function to parse a value using the column's `colDef.valueParser` */
155
163
  parseValue: (value: string) => any;
@@ -158,13 +166,17 @@ export interface ProcessCellForExportParams<TData = any, TContext = any> extends
158
166
  }
159
167
  export type ProcessHeaderForClipboard<TData = any, TContext = any> = (params: ProcessHeaderForExportParams<TData, TContext>) => any;
160
168
  export interface ProcessHeaderForExportParams<TData = any, TContext = any> extends AgGridCommon<TData, TContext> {
169
+ /** The grid column */
161
170
  column: Column;
162
171
  }
163
172
  export type ProcessGroupHeaderForClipboard<TData = any, TContext = any> = (params: ProcessGroupHeaderForExportParams<TData, TContext>) => any;
164
173
  export interface ProcessGroupHeaderForExportParams<TData = any, TContext = any> extends AgGridCommon<TData, TContext> {
174
+ /** The grid column group */
165
175
  columnGroup: ColumnGroup;
166
176
  }
167
177
  export interface ProcessRowGroupForExportParams<TData = any, TContext = any> extends AgGridCommon<TData, TContext> {
178
+ /** Row node. */
168
179
  node: IRowNode<TData>;
180
+ /** The grid column */
169
181
  column?: Column;
170
182
  }
@@ -1,3 +1,4 @@
1
+ import type { ChangedRowNodes } from '../clientSideRowModel/changedRowNodes';
1
2
  import type { ColumnCollections } from '../columns/columnModel';
2
3
  import type { Bean } from '../context/bean';
3
4
  import type { AgColumn } from '../entities/agColumn';
@@ -65,9 +66,11 @@ export interface IFormulaDataService extends Bean {
65
66
  }
66
67
  export interface IFormulaService extends Bean {
67
68
  active: boolean;
69
+ hasCachedRows(): boolean;
68
70
  isFormula(value: unknown): value is `=${string}`;
69
71
  setFormulasActive(cols: ColumnCollections): void;
70
72
  resolveValue(col: AgColumn, row: RowNode): unknown;
73
+ getDataSourceFormula(row: RowNode, col: AgColumn): string | undefined;
71
74
  getFormulaError(col: AgColumn, row: RowNode): Error | null;
72
75
  normaliseFormula(value: string, shorthand: boolean): string | null;
73
76
  getColByRef(ref: string): AgColumn | null;
@@ -79,6 +82,18 @@ export interface IFormulaService extends Bean {
79
82
  useRefFormat?: boolean;
80
83
  }): string;
81
84
  refreshFormulas(refreshRows: boolean): void;
85
+ /**
86
+ * Drop a row's formula cache (including pinned / group-footer siblings) and repaint.
87
+ * Accepts a `RowNode` directly, or a row id string — in which case the main row model,
88
+ * pinned-top and pinned-bottom row models are all consulted and every matching chain is
89
+ * invalidated. Returns `true` when at least one entry was dropped.
90
+ */
91
+ refreshRow(row: RowNode | string): boolean;
92
+ /**
93
+ * Called by CSRM after every model refresh so the service can evict cache entries for destroyed
94
+ * rows and, if the row order or set changed, drop stale computed values while keeping parsed ASTs.
95
+ */
96
+ onRowsChanged(changedRowNodes: ChangedRowNodes | undefined, newData: boolean | undefined): void;
82
97
  getFunction(name: string): ((params: FormulaFunctionParams) => unknown) | undefined;
83
98
  getFunctionNames(): string[];
84
99
  }
@@ -7,6 +7,7 @@ import type { FocusableContainerName } from './iFocusableContainer';
7
7
  import type { HeaderPosition } from './iHeaderPosition';
8
8
  import type { IRowNode, RowPinnedType } from './iRowNode';
9
9
  import type { DefaultMenuItem } from './menuItem';
10
+ import type { GetNoteParams } from './notes';
10
11
  import type { ServerSideTransaction } from './serverSideTransaction';
11
12
  export interface GetContextMenuItemsParams<TData = any, TContext = any> extends AgGridCommon<TData, TContext> {
12
13
  /** Names of the items that would be provided by default. */
@@ -295,5 +296,7 @@ export interface IMenuActionParams<TData = any, TContext = any> extends AgGridCo
295
296
  node: IRowNode<TData> | null;
296
297
  /** The value, if a cell was clicked, otherwise null. */
297
298
  value: any;
299
+ /** The note params for the cell or full width row that was clicked, if notes are enabled. */
300
+ noteParams?: GetNoteParams;
298
301
  }
299
302
  export type GetBusinessKeyForNode<TData = any> = (node: IRowNode<TData>) => string;
@@ -3,7 +3,7 @@ import type { ICellComp } from '../rendering/cell/cellCtrl';
3
3
  export interface ICellRangeFeature {
4
4
  setComp(cellComp: ICellComp): void;
5
5
  unsetComp(): void;
6
- refreshRangeStyleAndHandle(): void;
6
+ scheduleRefreshRangeStyleAndHandle(): void;
7
7
  updateRangeBordersIfRangeCount(): void;
8
8
  onCellSelectionChanged(): void;
9
9
  destroy(): void;
@@ -1,8 +1,9 @@
1
1
  import type { Column } from '../interfaces/iColumn';
2
- import type { ExportFileNameGetter, ExportParams } from './exportParams';
2
+ import type { ExportFileNameGetter, ExportParams, ProcessCellForExportParams } from './exportParams';
3
3
  import type { AgGridCommon } from './iCommon';
4
4
  import type { IRowNode } from './iRowNode';
5
5
  import type { XmlElement } from './iXmlFactory';
6
+ import type { Note } from './notes';
6
7
  export interface ExcelStyle {
7
8
  /** The id of the Excel Style, this should match a CSS cell class. */
8
9
  id: string;
@@ -262,6 +263,12 @@ export interface ExcelRow {
262
263
  /** An array of ExcelCells. */
263
264
  cells: ExcelCell[];
264
265
  }
266
+ export interface ExcelNote {
267
+ /** The body text to export in the Excel note/comment. */
268
+ text: string;
269
+ /** Optional author name shown in Excel. */
270
+ author?: string;
271
+ }
265
272
  export interface ExcelCell {
266
273
  /** The data that will be added to the cell. */
267
274
  data?: ExcelData;
@@ -276,6 +283,8 @@ export interface ExcelCell {
276
283
  * @default 0
277
284
  */
278
285
  mergeAcross?: number;
286
+ /** Optional note/comment to export for this cell. */
287
+ note?: ExcelNote;
279
288
  }
280
289
  export interface ExcelImagePosition {
281
290
  /** The row containing this image. This property is set automatically, don't change it unless you know what you are doing. */
@@ -494,6 +503,29 @@ export interface ExcelWorksheetConfigParams {
494
503
  image: ExcelImage;
495
504
  value?: string;
496
505
  } | undefined;
506
+ /**
507
+ * Set to `true` to suppress exporting cell notes from the grid `notesDataSource`.
508
+ * Callback-based note injection via `processNoteCallback` still works when this is set.
509
+ * @default false
510
+ */
511
+ suppressGridNotesExport?: boolean;
512
+ /**
513
+ * Allows customising, suppressing, or injecting Excel notes/comments for exported cells.
514
+ *
515
+ * Return `undefined` to keep the default behaviour, `null` to suppress the note for the current cell,
516
+ * or an `ExcelNote` to export a custom note.
517
+ */
518
+ processNoteCallback?: (params: ProcessNoteForExportParams) => ExcelNote | null | undefined;
519
+ }
520
+ export interface ProcessNoteForExportParams<TData = any, TContext = any> extends ProcessCellForExportParams<TData, TContext> {
521
+ /**
522
+ * The grid note resolved for the current cell, when the Notes feature is available.
523
+ */
524
+ gridNote?: Note;
525
+ /**
526
+ * The Excel note/comment value derived from `gridNote` when automatic note export is enabled.
527
+ */
528
+ excelNote?: ExcelNote;
497
529
  }
498
530
  export type ExcelCustomMetadataValue = string | number | boolean;
499
531
  export type ExcelCustomMetadata = Record<string, ExcelCustomMetadataValue>;
@@ -508,6 +540,13 @@ interface ExcelFileParams {
508
540
  * @default "AG Grid"
509
541
  * */
510
542
  author?: string;
543
+ /**
544
+ * Set to `true` to suppress prepending the author name as bold text in the
545
+ * exported Excel note body. The note author is still stored in the
546
+ * exported Excel note metadata regardless of this setting.
547
+ * @default false
548
+ */
549
+ suppressPrependAuthorToNotes?: boolean;
511
550
  /**
512
551
  * The default value for the font size of the Excel document.
513
552
  * @default 11
@@ -76,7 +76,7 @@ export type FilterHandlers<TData = any, TValue = any, TContext = any, TModel = a
76
76
  export interface ColumnFilter<TData = any, TValue = any, TContext = any, TModel = any, TCustomParams = any> {
77
77
  /**
78
78
  * Filter component to use for this column.
79
- * - Set to the name of a provided filter: `agNumberColumnFilter`, `agBigIntColumnFilter`, `agTextColumnFilter`, `agDateColumnFilter`, `agMultiColumnFilter`, `agSetColumnFilter`.
79
+ * - Set to the name of a provided filter: `agNumberColumnFilter`, `agBigIntColumnFilter`, `agTextColumnFilter`, `agDateColumnFilter`.
80
80
  * - Set to a custom filter `FilterDisplay`
81
81
  */
82
82
  component: any;
@@ -1,4 +1,4 @@
1
- export type FocusableContainerName = 'dialog' | 'gridBody' | 'pagination' | 'pivotToolbar' | 'rowGroupToolbar' | 'sideBar' | 'statusBar';
1
+ export type FocusableContainerName = 'dialog' | 'gridBody' | 'pagination' | 'pivotToolbar' | 'rowGroupToolbar' | 'sideBar' | 'statusBar' | 'toolbar';
2
2
  /** @internal AG_GRID_INTERNAL - Not for public use. Can change / be removed at any time. */
3
3
  export interface FocusableContainer {
4
4
  getGui(): HTMLElement;