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
@@ -2,7 +2,7 @@
2
2
  * If you change the GridOptions interface, you must also update PropertyKeys to be consistent. *
3
3
  ************************************************************************************************/
4
4
  import type { AgChartTheme, AgChartThemeOverrides } from 'ag-charts-types';
5
- import type { AdvancedFilterBuilderVisibleChangedEvent, AsyncTransactionsFlushedEvent, BodyScrollEndEvent, BodyScrollEvent, CellClickedEvent, CellContextMenuEvent, CellDoubleClickedEvent, CellEditRequestEvent, CellEditingStartedEvent, CellEditingStoppedEvent, CellFocusedEvent, CellKeyDownEvent, CellMouseDownEvent, CellMouseOutEvent, CellMouseOverEvent, CellSelectionChangedEvent, CellSelectionDeleteEndEvent, CellSelectionDeleteStartEvent, CellValueChangedEvent, ChartCreatedEvent, ChartDestroyedEvent, ChartOptionsChangedEvent, ChartRangeSelectionChangedEvent, ColumnEverythingChangedEvent, ColumnGroupOpenedEvent, ColumnHeaderClickedEvent, ColumnHeaderContextMenuEvent, ColumnHeaderMouseLeaveEvent, ColumnHeaderMouseOverEvent, ColumnMenuVisibleChangedEvent, ColumnMovedEvent, ColumnPinnedEvent, ColumnPivotChangedEvent, ColumnPivotModeChangedEvent, ColumnResizedEvent, ColumnRowGroupChangedEvent, ColumnValueChangedEvent, ColumnVisibleEvent, ComponentStateChangedEvent, ContextMenuVisibleChangedEvent, CutEndEvent, CutStartEvent, DisplayedColumnsChangedEvent, DragCancelledEvent, DragStartedEvent, DragStoppedEvent, ExpandOrCollapseAllEvent, FillEndEvent, FillStartEvent, FilterChangedEvent, FilterModifiedEvent, FilterOpenedEvent, FindChangedEvent, FirstDataRenderedEvent, FullWidthCellKeyDownEvent, GridColumnsChangedEvent, GridPreDestroyedEvent, GridReadyEvent, GridSizeChangedEvent, HeaderFocusedEvent, ModelUpdatedEvent, NewColumnsLoadedEvent, PaginationChangedEvent, PasteEndEvent, PasteStartEvent, PinnedRowDataChangedEvent, PivotMaxColumnsExceededEvent, RangeDeleteEndEvent, RangeDeleteStartEvent, RangeSelectionChangedEvent, RedoEndedEvent, RedoStartedEvent, RowClickedEvent, RowDataUpdatedEvent, RowDoubleClickedEvent, RowDragCancelEvent, RowDragEndEvent, RowDragEnterEvent, RowDragLeaveEvent, RowDragMoveEvent, RowEditingStartedEvent, RowEditingStoppedEvent, RowGroupOpenedEvent, RowSelectedEvent, RowValueChangedEvent, SelectionChangedEvent, SortChangedEvent, StateUpdatedEvent, StoreRefreshedEvent, ToolPanelSizeChangedEvent, ToolPanelVisibleChangedEvent, TooltipHideEvent, TooltipShowEvent, UndoEndedEvent, UndoStartedEvent, ViewportChangedEvent, VirtualColumnsChangedEvent, VirtualRowRemovedEvent } from '../events';
5
+ import type { AdvancedFilterBuilderVisibleChangedEvent, AsyncTransactionsFlushedEvent, BodyScrollEndEvent, BodyScrollEvent, CellClickedEvent, CellContextMenuEvent, CellDoubleClickedEvent, CellEditRequestEvent, CellEditingStartedEvent, CellEditingStoppedEvent, CellFocusedEvent, CellKeyDownEvent, CellMouseDownEvent, CellMouseOutEvent, CellMouseOverEvent, CellSelectionChangedEvent, CellSelectionDeleteEndEvent, CellSelectionDeleteStartEvent, CellValueChangedEvent, ChartCreatedEvent, ChartDestroyedEvent, ChartOptionsChangedEvent, ChartRangeSelectionChangedEvent, ColumnEverythingChangedEvent, ColumnGroupOpenedEvent, ColumnHeaderClickedEvent, ColumnHeaderContextMenuEvent, ColumnHeaderMouseLeaveEvent, ColumnHeaderMouseOverEvent, ColumnMenuVisibleChangedEvent, ColumnMovedEvent, ColumnPinnedEvent, ColumnPivotChangedEvent, ColumnPivotModeChangedEvent, ColumnResizedEvent, ColumnRowGroupChangedEvent, ColumnValueChangedEvent, ColumnVisibleEvent, ComponentStateChangedEvent, ContextMenuVisibleChangedEvent, CutEndEvent, CutStartEvent, DisplayedColumnsChangedEvent, DragCancelledEvent, DragStartedEvent, DragStoppedEvent, ExpandOrCollapseAllEvent, FillEndEvent, FillStartEvent, FilterChangedEvent, FilterModifiedEvent, FilterOpenedEvent, FindChangedEvent, FirstDataRenderedEvent, FullWidthCellKeyDownEvent, GridColumnsChangedEvent, GridPreDestroyedEvent, GridReadyEvent, GridSizeChangedEvent, HeaderFocusedEvent, ModelUpdatedEvent, NewColumnsLoadedEvent, PaginationChangedEvent, PasteEndEvent, PasteStartEvent, PinnedRowDataChangedEvent, PinnedRowsChangedEvent, PivotMaxColumnsExceededEvent, RangeDeleteEndEvent, RangeDeleteStartEvent, RangeSelectionChangedEvent, RedoEndedEvent, RedoStartedEvent, RowClickedEvent, RowDataUpdatedEvent, RowDoubleClickedEvent, RowDragCancelEvent, RowDragEndEvent, RowDragEnterEvent, RowDragLeaveEvent, RowDragMoveEvent, RowEditingStartedEvent, RowEditingStoppedEvent, RowGroupOpenedEvent, RowResizeEndedEvent, RowResizeStartedEvent, RowSelectedEvent, RowValueChangedEvent, SelectionChangedEvent, SortChangedEvent, StateUpdatedEvent, StoreRefreshedEvent, ToolPanelSizeChangedEvent, ToolPanelVisibleChangedEvent, TooltipHideEvent, TooltipShowEvent, UndoEndedEvent, UndoStartedEvent, ViewportChangedEvent, VirtualColumnsChangedEvent, VirtualRowRemovedEvent } from '../events';
6
6
  import type { SizeColumnsToContentStrategy, SizeColumnsToFitGridStrategy, SizeColumnsToFitProvidedWidthStrategy } from '../interfaces/autoSize';
7
7
  import type { CsvExportParams, ProcessCellForExportParams, ProcessGroupHeaderForExportParams, ProcessHeaderForExportParams } from '../interfaces/exportParams';
8
8
  import type { GridState } from '../interfaces/gridState';
@@ -20,7 +20,7 @@ import type { HeaderPosition } from '../interfaces/iHeaderPosition';
20
20
  import type { ILoadingCellRendererParams } from '../interfaces/iLoadingCellRenderer';
21
21
  import type { IRowDragItem } from '../interfaces/iRowDragItem';
22
22
  import type { RowModelType } from '../interfaces/iRowModel';
23
- import type { IRowNode } from '../interfaces/iRowNode';
23
+ import type { IRowNode, RowPinnedType } from '../interfaces/iRowNode';
24
24
  import type { IServerSideDatasource } from '../interfaces/iServerSideDatasource';
25
25
  import type { SideBarDef } from '../interfaces/iSideBar';
26
26
  import type { StatusPanelDef } from '../interfaces/iStatusPanel';
@@ -33,12 +33,14 @@ import type { DataTypeDefinition } from './dataType';
33
33
  export interface GridOptions<TData = any> {
34
34
  /**
35
35
  * Specifies the status bar components to use in the status bar.
36
+ * @agModule `StatusBarModule`
36
37
  */
37
38
  statusBar?: {
38
39
  statusPanels: StatusPanelDef[];
39
40
  };
40
41
  /**
41
42
  * Specifies the side bar components.
43
+ * @agModule `SideBarModule`
42
44
  */
43
45
  sideBar?: SideBarDef | string | string[] | boolean | null;
44
46
  /**
@@ -55,6 +57,7 @@ export interface GridOptions<TData = any> {
55
57
  /**
56
58
  * Allows context menu to show, even when `Ctrl` key is held down.
57
59
  * @default false
60
+ * @agModule `ContextMenuModule`
58
61
  */
59
62
  allowContextMenuWithControlKey?: boolean;
60
63
  /**
@@ -76,6 +79,7 @@ export interface GridOptions<TData = any> {
76
79
  * Set to `true` to use the browser's default tooltip instead of using the grid's Tooltip Component.
77
80
  * @default false
78
81
  * @initial
82
+ * @agModule `TooltipModule`
79
83
  */
80
84
  enableBrowserTooltips?: boolean;
81
85
  /**
@@ -84,24 +88,28 @@ export interface GridOptions<TData = any> {
84
88
  * - `focus` - The tooltip will show/hide when a cell/header is focused.
85
89
  * @default 'hover'
86
90
  * @initial
91
+ * @agModule `TooltipModule`
87
92
  */
88
93
  tooltipTrigger?: 'hover' | 'focus';
89
94
  /**
90
95
  * The delay in milliseconds that it takes for tooltips to show up once an element is hovered over.
91
96
  * **Note:** This property does not work if `enableBrowserTooltips` is `true`.
92
97
  * @default 2000
98
+ * @agModule `TooltipModule`
93
99
  */
94
100
  tooltipShowDelay?: number;
95
101
  /**
96
102
  * The delay in milliseconds that it takes for tooltips to hide once they have been displayed.
97
103
  * **Note:** This property does not work if `enableBrowserTooltips` is `true` and `tooltipHideTriggers` includes `timeout`.
98
104
  * @default 10000
105
+ * @agModule `TooltipModule`
99
106
  */
100
107
  tooltipHideDelay?: number;
101
108
  /**
102
109
  * Set to `true` to have tooltips follow the cursor once they are displayed.
103
110
  * @default false
104
111
  * @initial
112
+ * @agModule `TooltipModule`
105
113
  */
106
114
  tooltipMouseTrack?: boolean;
107
115
  /**
@@ -109,6 +117,7 @@ export interface GridOptions<TData = any> {
109
117
  * - `standard` - The tooltip always shows up when the items configured with Tooltips are hovered.
110
118
  * - `whenTruncated` - The tooltip will only be displayed when the items hovered have truncated (showing ellipsis) values. This property does not work when `enableBrowserTooltips={true}`.
111
119
  * @default `standard`
120
+ * @agModule `TooltipModule`
112
121
  */
113
122
  tooltipShowMode?: 'standard' | 'whenTruncated';
114
123
  /**
@@ -116,6 +125,7 @@ export interface GridOptions<TData = any> {
116
125
  * tooltip itself it being hovered or has focus.
117
126
  * @default false
118
127
  * @initial
128
+ * @agModule `TooltipModule`
119
129
  */
120
130
  tooltipInteraction?: boolean;
121
131
  /**
@@ -125,16 +135,19 @@ export interface GridOptions<TData = any> {
125
135
  /**
126
136
  * Set to `true` to also include headers when copying to clipboard using `Ctrl + C` clipboard.
127
137
  * @default false
138
+ * @agModule `ClipboardModule`
128
139
  */
129
140
  copyHeadersToClipboard?: boolean;
130
141
  /**
131
142
  * Set to `true` to also include group headers when copying to clipboard using `Ctrl + C` clipboard.
132
143
  * @default false
144
+ * @agModule `ClipboardModule`
133
145
  */
134
146
  copyGroupHeadersToClipboard?: boolean;
135
147
  /**
136
148
  * Specify the delimiter to use when copying to clipboard.
137
149
  * @default '\t'
150
+ * @agModule `ClipboardModule`
138
151
  */
139
152
  clipboardDelimiter?: string;
140
153
  /**
@@ -152,21 +165,25 @@ export interface GridOptions<TData = any> {
152
165
  /**
153
166
  * Set to `true` to work around a bug with Excel (Windows) that adds an extra empty line at the end of ranges copied to the clipboard.
154
167
  * @default false
168
+ * @agModule `ClipboardModule`
155
169
  */
156
170
  suppressLastEmptyLineOnPaste?: boolean;
157
171
  /**
158
172
  * Set to `true` to turn off paste operations within the grid.
159
173
  * @default false
174
+ * @agModule `ClipboardModule`
160
175
  */
161
176
  suppressClipboardPaste?: boolean;
162
177
  /**
163
178
  * Set to `true` to stop the grid trying to use the Clipboard API, if it is blocked, and immediately fallback to the workaround.
164
179
  * @default false
180
+ * @agModule `ClipboardModule`
165
181
  */
166
182
  suppressClipboardApi?: boolean;
167
183
  /**
168
184
  * Set to `true` to block **cut** operations within the grid.
169
185
  * @default false
186
+ * @agModule `ClipboardModule`
170
187
  */
171
188
  suppressCutToClipboard?: boolean;
172
189
  /**
@@ -207,6 +224,7 @@ export interface GridOptions<TData = any> {
207
224
  * Resets pivot column order when impacted by filters, data or configuration changes
208
225
  *
209
226
  * @default false
227
+ * @agModule `PivotModule`
210
228
  */
211
229
  enableStrictPivotColumnOrder?: boolean;
212
230
  /**
@@ -237,6 +255,7 @@ export interface GridOptions<TData = any> {
237
255
  /**
238
256
  * Allow reordering and pinning columns by dragging columns from the Columns Tool Panel to the grid.
239
257
  * @default false
258
+ * @agModule `ColumnsToolPanelModule`
240
259
  */
241
260
  allowDragFromColumnsToolPanel?: boolean;
242
261
  /**
@@ -296,11 +315,13 @@ export interface GridOptions<TData = any> {
296
315
  * Set this to `true` to skip the `headerName` when `autoSize` is called by default.
297
316
  * @default false
298
317
  * @initial
318
+ * @agModule `ColumnAutoSizeModule`
299
319
  */
300
320
  skipHeaderOnAutoSize?: boolean;
301
321
  /**
302
322
  * Auto-size the columns when the grid is loaded. Can size to fit the grid width, fit a provided width, or fit the cell contents.
303
323
  * @initial
324
+ * @agModule `ColumnAutoSizeModule`
304
325
  */
305
326
  autoSizeStrategy?: SizeColumnsToFitGridStrategy | SizeColumnsToFitProvidedWidthStrategy | SizeColumnsToContentStrategy;
306
327
  /**
@@ -312,21 +333,25 @@ export interface GridOptions<TData = any> {
312
333
  };
313
334
  /**
314
335
  * Set to `'fullRow'` to enable Full Row Editing. Otherwise leave blank to edit one cell at a time.
336
+ * @agModule `TextEditorModule` / `LargeTextEditorModule` / `NumberEditorModule` / `DateEditorModule` / `CheckboxEditorModule` / `CustomEditorModule` / `SelectEditorModule` / `RichSelectModule`
315
337
  */
316
338
  editType?: 'fullRow';
317
339
  /**
318
340
  * Set to `true` to enable Single Click Editing for cells, to start editing with a single click.
319
341
  * @default false
342
+ * @agModule `TextEditorModule` / `LargeTextEditorModule` / `NumberEditorModule` / `DateEditorModule` / `CheckboxEditorModule` / `CustomEditorModule` / `SelectEditorModule` / `RichSelectModule`
320
343
  */
321
344
  singleClickEdit?: boolean;
322
345
  /**
323
346
  * Set to `true` so that neither single nor double click starts editing.
324
347
  * @default false
348
+ * @agModule `TextEditorModule` / `LargeTextEditorModule` / `NumberEditorModule` / `DateEditorModule` / `CheckboxEditorModule` / `CustomEditorModule` / `SelectEditorModule` / `RichSelectModule`
325
349
  */
326
350
  suppressClickEdit?: boolean;
327
351
  /**
328
352
  * Set to `true` to stop the grid updating data after `Edit`, `Clipboard` and `Fill Handle` operations. When this is set, it is intended the application will update the data, eg in an external immutable store, and then pass the new dataset to the grid. <br />**Note:** `rowNode.setDataValue()` does not update the value of the cell when this is `True`, it fires `onCellEditRequest` instead.
329
353
  * @default false
354
+ * @agModule `TextEditorModule` / `LargeTextEditorModule` / `NumberEditorModule` / `DateEditorModule` / `CheckboxEditorModule` / `CustomEditorModule` / `SelectEditorModule` / `RichSelectModule`
330
355
  */
331
356
  readOnlyEdit?: boolean;
332
357
  /**
@@ -334,37 +359,44 @@ export interface GridOptions<TData = any> {
334
359
  * The default is that the grid stays editing until focus goes onto another cell.
335
360
  * @default false
336
361
  * @initial
362
+ * @agModule `TextEditorModule` / `LargeTextEditorModule` / `NumberEditorModule` / `DateEditorModule` / `CheckboxEditorModule` / `CustomEditorModule` / `SelectEditorModule` / `RichSelectModule`
337
363
  */
338
364
  stopEditingWhenCellsLoseFocus?: boolean;
339
365
  /**
340
366
  * Set to `true` along with `enterNavigatesVerticallyAfterEdit` to have Excel-style behaviour for the `Enter` key.
341
367
  * i.e. pressing the `Enter` key will move down to the cell beneath and `Shift+Enter` will move up to the cell above.
342
368
  * @default false
369
+ * @agModule `TextEditorModule` / `LargeTextEditorModule` / `NumberEditorModule` / `DateEditorModule` / `CheckboxEditorModule` / `CustomEditorModule` / `SelectEditorModule` / `RichSelectModule`
343
370
  */
344
371
  enterNavigatesVertically?: boolean;
345
372
  /**
346
373
  * Set to `true` along with `enterNavigatesVertically` to have Excel-style behaviour for the 'Enter' key.
347
374
  * i.e. pressing the Enter key will move down to the cell beneath and Shift+Enter key will move up to the cell above.
348
375
  * @default false
376
+ * @agModule `TextEditorModule` / `LargeTextEditorModule` / `NumberEditorModule` / `DateEditorModule` / `CheckboxEditorModule` / `CustomEditorModule` / `SelectEditorModule` / `RichSelectModule`
349
377
  */
350
378
  enterNavigatesVerticallyAfterEdit?: boolean;
351
379
  /**
352
380
  * Forces Cell Editing to start when backspace is pressed. This is only relevant for MacOS users.
381
+ * @agModule `TextEditorModule` / `LargeTextEditorModule` / `NumberEditorModule` / `DateEditorModule` / `CheckboxEditorModule` / `CustomEditorModule` / `SelectEditorModule` / `RichSelectModule`
353
382
  */
354
383
  enableCellEditingOnBackspace?: boolean;
355
384
  /**
356
385
  * Set to `true` to enable Undo / Redo while editing.
357
386
  * @initial
387
+ * @agModule `UndoRedoEditModule`
358
388
  */
359
389
  undoRedoCellEditing?: boolean;
360
390
  /**
361
391
  * Set the size of the undo / redo stack.
362
392
  * @default 10
363
393
  * @initial
394
+ * @agModule `UndoRedoEditModule`
364
395
  */
365
396
  undoRedoCellEditingLimit?: number;
366
397
  /**
367
398
  * A default configuration object used to export to CSV.
399
+ * @agModule `CsvExportModule`
368
400
  */
369
401
  defaultCsvExportParams?: CsvExportParams;
370
402
  /**
@@ -374,6 +406,7 @@ export interface GridOptions<TData = any> {
374
406
  suppressCsvExport?: boolean;
375
407
  /**
376
408
  * A default configuration object used to export to Excel.
409
+ * @agModule `ExcelExportModule`
377
410
  */
378
411
  defaultExcelExportParams?: ExcelExportParams;
379
412
  /**
@@ -384,39 +417,47 @@ export interface GridOptions<TData = any> {
384
417
  /**
385
418
  * A list (array) of Excel styles to be used when exporting to Excel with styles.
386
419
  * @initial
420
+ * @agModule `ExcelExportModule`
387
421
  */
388
422
  excelStyles?: ExcelStyle[];
389
423
  /**
390
424
  * Text to find within the grid.
425
+ * @agModule `FindModule`
391
426
  */
392
427
  findSearchValue?: string;
393
428
  /**
394
429
  * Options for the Find feature.
430
+ * @agModule `FindModule`
395
431
  */
396
432
  findOptions?: FindOptions;
397
433
  /**
398
434
  * Rows are filtered using this text as a Quick Filter.
399
435
  * Only supported for Client-Side Row Model.
436
+ * @agModule `QuickFilterModule`
400
437
  */
401
438
  quickFilterText?: string;
402
439
  /**
403
440
  * Set to `true` to turn on the Quick Filter cache, used to improve performance when using the Quick Filter.
404
441
  * @default false
405
442
  * @initial
443
+ * @agModule `QuickFilterModule`
406
444
  */
407
445
  cacheQuickFilter?: boolean;
408
446
  /**
409
447
  * Hidden columns are excluded from the Quick Filter by default.
410
448
  * To include hidden columns, set to `true`.
411
449
  * @default false
450
+ * @agModule `QuickFilterModule`
412
451
  */
413
452
  includeHiddenColumnsInQuickFilter?: boolean;
414
453
  /**
415
454
  * Changes how the Quick Filter splits the Quick Filter text into search terms.
455
+ * @agModule `QuickFilterModule`
416
456
  */
417
457
  quickFilterParser?: (quickFilter: string) => string[];
418
458
  /**
419
459
  * Changes the matching logic for whether a row passes the Quick Filter.
460
+ * @agModule `QuickFilterModule`
420
461
  */
421
462
  quickFilterMatcher?: (quickFilterParts: string[], rowQuickFilterAggregateText: string) => boolean;
422
463
  /**
@@ -424,37 +465,44 @@ export interface GridOptions<TData = any> {
424
465
  * (or aggregated data if `groupAggFiltering = true`).
425
466
  * Set to `true` to apply Quick Filter before pivoting (/aggregating) instead.
426
467
  * @default false
468
+ * @agModule `QuickFilterModule`
427
469
  */
428
470
  applyQuickFilterBeforePivotOrAgg?: boolean;
429
471
  /**
430
472
  * Set to `true` to override the default tree data filtering behaviour to instead exclude child nodes from filter results.
431
473
  * @default false
474
+ * @agModule `TreeDataModule`
432
475
  */
433
476
  excludeChildrenWhenTreeDataFiltering?: boolean;
434
477
  /**
435
478
  * Set to true to enable the Advanced Filter.
436
479
  * @default false
480
+ * @agModule `AdvancedFilterModule`
437
481
  */
438
482
  enableAdvancedFilter?: boolean;
439
483
  /**
440
484
  * Allows rows to always be displayed, even if they don't match the applied filtering.
441
485
  * Return `true` for the provided row to always be displayed.
442
486
  * Only works with the Client-Side Row Model.
487
+ * @agModule `TextFilterModule` / `NumberFilterModule` / `DateFilterModule` / `SetFilterModule` / `MultiFilterModule` / `CustomFilterModule` / `QuickFilterModule` / `ExternalFilterModule` / `AdvancedFilterModule`
443
488
  */
444
489
  alwaysPassFilter?: (rowNode: IRowNode<TData>) => boolean;
445
490
  /**
446
491
  * Hidden columns are excluded from the Advanced Filter by default.
447
492
  * To include hidden columns, set to `true`.
448
493
  * @default false
494
+ * @agModule `AdvancedFilterModule`
449
495
  */
450
496
  includeHiddenColumnsInAdvancedFilter?: boolean;
451
497
  /**
452
498
  * DOM element to use as the parent for the Advanced Filter to allow it to appear outside of the grid.
453
499
  * Set to `null` or `undefined` to appear inside the grid.
500
+ * @agModule `AdvancedFilterModule`
454
501
  */
455
502
  advancedFilterParent?: HTMLElement | null;
456
503
  /**
457
504
  * Customise the parameters passed to the Advanced Filter Builder.
505
+ * @agModule `AdvancedFilterModule`
458
506
  */
459
507
  advancedFilterBuilderParams?: IAdvancedFilterBuilderParams;
460
508
  /**
@@ -462,6 +510,7 @@ export interface GridOptions<TData = any> {
462
510
  * Set to `true` to prevent this and use defined functions instead.
463
511
  * This will result in slower filtering, but it enables Advanced Filter to work when `unsafe-eval` is disabled.
464
512
  * @default false
513
+ * @agModule `AdvancedFilterModule`
465
514
  */
466
515
  suppressAdvancedFilterEval?: boolean;
467
516
  /**
@@ -470,22 +519,26 @@ export interface GridOptions<TData = any> {
470
519
  * the same as when using AG Grid Community.
471
520
  * @default false
472
521
  * @initial
522
+ * @agModule TextFilterModule / NumberFilterModule / DateFilterModule / MultiFilterModule / CustomFilterModule
473
523
  */
474
524
  suppressSetFilterByDefault?: boolean;
475
525
  /**
476
526
  * Set to `true` to Enable Charts.
477
527
  * @default false
528
+ * @agModule `IntegratedChartsModule`
478
529
  */
479
530
  enableCharts?: boolean;
480
531
  /**
481
532
  * The list of chart themes that a user can choose from in the chart panel.
482
533
  * @default ['ag-default', 'ag-material', 'ag-sheets', 'ag-polychroma', 'ag-vivid'];
483
534
  * @initial
535
+ * @agModule `IntegratedChartsModule`
484
536
  */
485
537
  chartThemes?: string[];
486
538
  /**
487
539
  * A map containing custom chart themes.
488
540
  * @initial
541
+ * @agModule `IntegratedChartsModule`
489
542
  */
490
543
  customChartThemes?: {
491
544
  [name: string]: AgChartTheme;
@@ -493,15 +546,18 @@ export interface GridOptions<TData = any> {
493
546
  /**
494
547
  * Chart theme overrides applied to all themes.
495
548
  * @initial
549
+ * @agModule `IntegratedChartsModule`
496
550
  */
497
551
  chartThemeOverrides?: AgChartThemeOverrides;
498
552
  /**
499
553
  * Allows customisation of the Chart Tool Panels, such as changing the tool panels visibility and order, as well as choosing which charts should be displayed in the chart panel.
500
554
  * @initial
555
+ * @agModule `IntegratedChartsModule`
501
556
  */
502
557
  chartToolPanelsDef?: ChartToolPanelsDef;
503
558
  /**
504
559
  * Get chart menu items. Only applies when using AG Charts Enterprise.
560
+ * @agModule `IntegratedChartsModule`
505
561
  */
506
562
  chartMenuItems?: (DefaultChartMenuItem | MenuItemDef)[] | GetChartMenuItems<TData>;
507
563
  /**
@@ -521,6 +577,7 @@ export interface GridOptions<TData = any> {
521
577
  /**
522
578
  * A map of key->value pairs for localising text within the grid.
523
579
  * @initial
580
+ * @agModule `LocaleModule`
524
581
  */
525
582
  localeText?: {
526
583
  [key: string]: string;
@@ -528,37 +585,44 @@ export interface GridOptions<TData = any> {
528
585
  /**
529
586
  * Set to `true` to enable Master Detail.
530
587
  * @default false
588
+ * @agModule `MasterDetailModule`
531
589
  */
532
590
  masterDetail?: boolean;
533
591
  /**
534
592
  * Set to `true` to keep detail rows for when they are displayed again.
535
593
  * @default false
536
594
  * @initial
595
+ * @agModule `MasterDetailModule`
537
596
  */
538
597
  keepDetailRows?: boolean;
539
598
  /**
540
599
  * Sets the number of details rows to keep.
541
600
  * @default 10
542
601
  * @initial
602
+ * @agModule `MasterDetailModule`
543
603
  */
544
604
  keepDetailRowsCount?: number;
545
605
  /**
546
606
  * Provide a custom `detailCellRenderer` to use when a master row is expanded.
547
607
  * See [Detail Cell Renderer](https://www.ag-grid.com/javascript-data-grid/master-detail-custom-detail/) for framework specific implementation details.
608
+ * @agModule `MasterDetailModule`
548
609
  */
549
610
  detailCellRenderer?: any;
550
611
  /**
551
612
  * Specifies the params to be used by the Detail Cell Renderer. Can also be a function that provides the params to enable dynamic definitions of the params.
613
+ * @agModule `MasterDetailModule`
552
614
  */
553
615
  detailCellRendererParams?: any;
554
616
  /**
555
617
  * Set fixed height in pixels for each detail row.
556
618
  * @initial
619
+ * @agModule `MasterDetailModule`
557
620
  */
558
621
  detailRowHeight?: number;
559
622
  /**
560
623
  * Set to `true` to have the detail grid dynamically change it's height to fit it's rows.
561
624
  * @initial
625
+ * @agModule `MasterDetailModule`
562
626
  */
563
627
  detailRowAutoHeight?: boolean;
564
628
  /**
@@ -566,20 +630,12 @@ export interface GridOptions<TData = any> {
566
630
  * @initial
567
631
  */
568
632
  context?: any;
569
- /**
570
- * Provide a custom drag and drop image component.
571
- * @initial
572
- */
573
- dragAndDropImageComponent?: any;
574
- /**
575
- * Customise the parameters provided to the Drag and Drop Image Component.
576
- */
577
- dragAndDropImageComponentParams?: any;
578
633
  /**
579
634
  *
580
635
  * A list of grids to treat as Aligned Grids.
581
636
  * Provide a list if the grids / apis already exist or return via a callback to allow the aligned grids to be retrieved asynchronously.
582
637
  * If grids are aligned then the columns and horizontal scrolling will be kept in sync.
638
+ * @agModule `AlignedGridsModule`
583
639
  */
584
640
  alignedGrids?: AlignedGrid[] | (() => AlignedGrid[]);
585
641
  /**
@@ -598,12 +654,14 @@ export interface GridOptions<TData = any> {
598
654
  * Set to `true` to turn on the value cache.
599
655
  * @default false
600
656
  * @initial
657
+ * @agModule `ValueCacheModule`
601
658
  */
602
659
  valueCache?: boolean;
603
660
  /**
604
661
  * Set to `true` to configure the value cache to not expire after data updates.
605
662
  * @default false
606
663
  * @initial
664
+ * @agModule `ValueCacheModule`
607
665
  */
608
666
  valueCacheNeverExpires?: boolean;
609
667
  /**
@@ -642,6 +700,7 @@ export interface GridOptions<TData = any> {
642
700
  suppressChangeDetection?: boolean;
643
701
  /**
644
702
  * Set this to `true` to enable debug information from the grid and related components. Will result in additional logging being output, but very useful when investigating problems.
703
+ * It is also recommended to register the `ValidationModule` to identify any misconfigurations.
645
704
  * @default false
646
705
  * @initial
647
706
  */
@@ -692,11 +751,13 @@ export interface GridOptions<TData = any> {
692
751
  /**
693
752
  * Set whether pagination is enabled.
694
753
  * @default false
754
+ * @agModule `PaginationModule`
695
755
  */
696
756
  pagination?: boolean;
697
757
  /**
698
758
  * How many rows to load per page. If `paginationAutoPageSize` is specified, this property is ignored.
699
759
  * @default 100
760
+ * @agModule `PaginationModule`
700
761
  */
701
762
  paginationPageSize?: number;
702
763
  /**
@@ -706,17 +767,20 @@ export interface GridOptions<TData = any> {
706
767
  * Set to `false` to hide the page size selector.
707
768
  * @default true
708
769
  * @initial
770
+ * @agModule `PaginationModule`
709
771
  */
710
772
  paginationPageSizeSelector?: number[] | boolean;
711
773
  /**
712
774
  * Set to `true` so that the number of rows to load per page is automatically adjusted by the grid so each page shows enough rows to just fill the area designated for the grid. If `false`, `paginationPageSize` is used.
713
775
  * @default false
776
+ * @agModule `PaginationModule`
714
777
  */
715
778
  paginationAutoPageSize?: boolean;
716
779
  /**
717
780
  * Set to `true` to have pages split children of groups when using Row Grouping or detail rows with Master Detail.
718
781
  * @default false
719
782
  * @initial
783
+ * @agModule `PaginationModule`
720
784
  */
721
785
  paginateChildRows?: boolean;
722
786
  /**
@@ -724,58 +788,69 @@ export interface GridOptions<TData = any> {
724
788
  * This is useful if `pagination=true` and you want to provide your own pagination controls.
725
789
  * Otherwise, when `pagination=true` the grid automatically shows the necessary controls at the bottom so that the user can navigate through the different pages.
726
790
  * @default false
791
+ * @agModule `PaginationModule`
727
792
  */
728
793
  suppressPaginationPanel?: boolean;
729
794
  /**
730
795
  * Set to `true` to enable pivot mode.
731
796
  * @default false
797
+ * @agModule `PivotModule`
732
798
  */
733
799
  pivotMode?: boolean;
734
800
  /**
735
801
  * When to show the 'pivot panel' (where you drag rows to pivot) at the top. Note that the pivot panel will never show if `pivotMode` is off.
736
802
  * @default 'never'
737
803
  * @initial
804
+ * @agModule `RowGroupingPanelModule`
738
805
  */
739
806
  pivotPanelShow?: 'always' | 'onlyWhenPivoting' | 'never';
740
807
  /**
741
808
  * The maximum number of generated columns before the grid halts execution. Upon reaching this number, the grid halts generation of columns
742
809
  * and triggers a `pivotMaxColumnsExceeded` event. `-1` for no limit.
743
810
  * @default -1
811
+ * @agModule `PivotModule`
744
812
  */
745
813
  pivotMaxGeneratedColumns?: number;
746
814
  /**
747
815
  * If pivoting, set to the number of column group levels to expand by default, e.g. `0` for none, `1` for first level only, etc. Set to `-1` to expand everything.
748
816
  * @default 0
817
+ * @agModule `PivotModule`
749
818
  */
750
819
  pivotDefaultExpanded?: number;
751
820
  /**
752
821
  * When set and the grid is in pivot mode, automatically calculated totals will appear within the Pivot Column Groups, in the position specified.
822
+ * @agModule `PivotModule`
753
823
  */
754
824
  pivotColumnGroupTotals?: 'before' | 'after';
755
825
  /**
756
826
  * When set and the grid is in pivot mode, automatically calculated totals will appear for each value column in the position specified.
827
+ * @agModule `PivotModule`
757
828
  */
758
829
  pivotRowTotals?: 'before' | 'after';
759
830
  /**
760
831
  * 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.
761
832
  * @default false
762
833
  * @initial
834
+ * @agModule `PivotModule`
763
835
  */
764
836
  pivotSuppressAutoColumn?: boolean;
765
837
  /**
766
838
  * When enabled, pivot column groups will appear 'fixed', without the ability to expand and collapse the column groups.
767
839
  * @default false
768
840
  * @initial
841
+ * @agModule `PivotModule`
769
842
  */
770
843
  suppressExpandablePivotGroups?: boolean;
771
844
  /**
772
845
  * If `true`, then row group, pivot and value aggregation will be read-only from the GUI. The grid will display what values are used for each, but will not allow the user to change the selection.
773
846
  * @default false
847
+ * @agModule `RowGroupingModule` / `PivotModule` / `TreeDataModule` / `ServerSideRowModelModule`
774
848
  */
775
849
  functionsReadOnly?: boolean;
776
850
  /**
777
851
  * A map of 'function name' to 'function' for custom aggregation functions.
778
852
  * @initial
853
+ * @agModule `RowGroupingModule` / `PivotModule` / `TreeDataModule` / `ServerSideRowModelModule`
779
854
  */
780
855
  aggFuncs?: {
781
856
  [key: string]: IAggFunc<TData>;
@@ -783,26 +858,31 @@ export interface GridOptions<TData = any> {
783
858
  /**
784
859
  * When `true`, column headers won't include the `aggFunc` name, e.g. `'sum(Bank Balance)`' will just be `'Bank Balance'`.
785
860
  * @default false
861
+ * @agModule `RowGroupingModule` / `PivotModule` / `TreeDataModule` / `ServerSideRowModelModule`
786
862
  */
787
863
  suppressAggFuncInHeader?: boolean;
788
864
  /**
789
865
  * When using aggregations, the grid will always calculate the root level aggregation value.
790
866
  * @default false
867
+ * @agModule `RowGroupingModule` / `PivotModule` / `TreeDataModule` / `ServerSideRowModelModule`
791
868
  */
792
869
  alwaysAggregateAtRootLevel?: boolean;
793
870
  /**
794
871
  * When using change detection, only the updated column will be re-aggregated.
795
872
  * @default false
873
+ * @agModule `RowGroupingModule` / `PivotModule` / `TreeDataModule` / `ServerSideRowModelModule`
796
874
  */
797
875
  aggregateOnlyChangedColumns?: boolean;
798
876
  /**
799
877
  * Set to `true` so that aggregations are not impacted by filtering.
800
878
  * @default false
879
+ * @agModule `RowGroupingModule` / `PivotModule` / `TreeDataModule` / `ServerSideRowModelModule`
801
880
  */
802
881
  suppressAggFilteredOnly?: boolean;
803
882
  /**
804
883
  * Set to `true` to omit the value Column header when there is only a single value column.
805
884
  * @default false
885
+ * @agModule `PivotModule`
806
886
  */
807
887
  removePivotHeaderRowWhenSingleValueColumn?: boolean;
808
888
  /**
@@ -843,6 +923,7 @@ export interface GridOptions<TData = any> {
843
923
  * When `true`, enables the cell span feature allowing for the use of the `colDef.spanRows` property.
844
924
  * @default false
845
925
  * @initial
926
+ * @agModule `CellSpanModule`
846
927
  */
847
928
  enableCellSpan?: boolean;
848
929
  /**
@@ -853,6 +934,7 @@ export interface GridOptions<TData = any> {
853
934
  enableRtl?: boolean;
854
935
  /**
855
936
  * Set to `true` so that the grid doesn't virtualise the columns. For example, if you have 100 columns, but only 10 visible due to scrolling, all 100 will always be rendered.
937
+ * **It is not recommended to set this to `true` as it may cause performance issues.**
856
938
  * @default false
857
939
  * @initial
858
940
  */
@@ -866,6 +948,7 @@ export interface GridOptions<TData = any> {
866
948
  suppressMaxRenderedRowRestriction?: boolean;
867
949
  /**
868
950
  * Set to `true` so that the grid doesn't virtualise the rows. For example, if you have 100 rows, but only 10 visible due to scrolling, all 100 will always be rendered.
951
+ * **It is not recommended to set this to `true` as it may cause performance issues.**
869
952
  * @default false
870
953
  * @initial
871
954
  */
@@ -873,6 +956,7 @@ export interface GridOptions<TData = any> {
873
956
  /**
874
957
  * Set to `true` to enable Managed Row Dragging.
875
958
  * @default false
959
+ * @agModule `RowDragModule`
876
960
  */
877
961
  rowDragManaged?: boolean;
878
962
  /**
@@ -883,16 +967,19 @@ export interface GridOptions<TData = any> {
883
967
  /**
884
968
  * Set to `true` to suppress moving rows while dragging the `rowDrag` waffle. This option highlights the position where the row will be placed and it will only move the row on mouse up.
885
969
  * @default false
970
+ * @agModule `RowDragModule`
886
971
  */
887
972
  suppressMoveWhenRowDragging?: boolean;
888
973
  /**
889
974
  * Set to `true` to enable clicking and dragging anywhere on the row without the need for a drag handle.
890
975
  * @default false
976
+ * @agModule `RowDragModule`
891
977
  */
892
978
  rowDragEntireRow?: boolean;
893
979
  /**
894
980
  * Set to `true` to enable dragging multiple rows at the same time.
895
981
  * @default false
982
+ * @agModule `RowDragModule`
896
983
  */
897
984
  rowDragMultiRow?: boolean;
898
985
  /**
@@ -901,8 +988,20 @@ export interface GridOptions<TData = any> {
901
988
  * If the `rowDragText` callback is set in the ColDef it will take precedence over this, except when
902
989
  * `rowDragEntireRow=true`.
903
990
  * @initial
991
+ * @agModule `RowDragModule`
904
992
  */
905
993
  rowDragText?: (params: IRowDragItem, dragItemCount: number) => string;
994
+ /**
995
+ * Provide a custom drag and drop image component.
996
+ * @initial
997
+ * @agModule `RowDragModule`
998
+ */
999
+ dragAndDropImageComponent?: any;
1000
+ /**
1001
+ * Customise the parameters provided to the Drag and Drop Image Component.
1002
+ * @agModule `RowDragModule`
1003
+ */
1004
+ dragAndDropImageComponentParams?: any;
906
1005
  /**
907
1006
  * Provide your own cell renderer component to use for full width rows.
908
1007
  * See [Full Width Rows](https://www.ag-grid.com/javascript-data-grid/full-width-rows/) for framework specific implementation details.
@@ -925,20 +1024,24 @@ export interface GridOptions<TData = any> {
925
1024
  * - `'multipleColumns'`: a group column per row group is added automatically.
926
1025
  * - `'groupRows'`: group rows are automatically added instead of group columns.
927
1026
  * - `'custom'`: informs the grid that group columns will be provided.
1027
+ * @agModule `RowGroupingModule`
928
1028
  */
929
1029
  groupDisplayType?: RowGroupingDisplayType;
930
1030
  /**
931
1031
  * If grouping, set to the number of levels to expand by default, e.g. `0` for none, `1` for first level only, etc. Set to `-1` to expand everything.
932
1032
  * @default 0
1033
+ * @agModule `RowGroupingModule` / `TreeDataModule`
933
1034
  */
934
1035
  groupDefaultExpanded?: number;
935
1036
  /**
936
1037
  * Allows specifying the group 'auto column' if you are not happy with the default. If grouping, this column definition is included as the first column in the grid. If not grouping, this column is not included.
1038
+ * @agModule `RowGroupingModule` / `TreeDataModule`
937
1039
  */
938
1040
  autoGroupColumnDef?: ColDef<TData>;
939
1041
  /**
940
1042
  * When `true`, preserves the current group order when sorting on non-group columns.
941
1043
  * @default false
1044
+ * @agModule `RowGroupingModule`
942
1045
  */
943
1046
  groupMaintainOrder?: boolean;
944
1047
  /**
@@ -951,31 +1054,37 @@ export interface GridOptions<TData = any> {
951
1054
  * If grouping, locks the group settings of a number of columns, e.g. `0` for no group locking. `1` for first group column locked, `-1` for all group columns locked.
952
1055
  * @default 0
953
1056
  * @initial
1057
+ * @agModule `RowGroupingModule`
954
1058
  */
955
1059
  groupLockGroupColumns?: number;
956
1060
  /**
957
1061
  * Set to determine whether filters should be applied on aggregated group values.
958
1062
  * @default false
1063
+ * @agModule `RowGroupingModule`
959
1064
  */
960
1065
  groupAggFiltering?: boolean | IsRowFilterable<TData>;
961
1066
  /**
962
1067
  * When provided, an extra row group total row will be inserted into row groups at the specified position, to display
963
1068
  * when the group is expanded. This row will contain the aggregate values for the group. If a callback function is
964
1069
  * provided, it can be used to selectively determine which groups will have a total row added.
1070
+ * @agModule `RowGroupingModule` / `ServerSideRowModelModule`
965
1071
  */
966
1072
  groupTotalRow?: 'top' | 'bottom' | UseGroupTotalRow<TData>;
967
1073
  /**
968
1074
  * When provided, an extra grand total row will be inserted into the grid at the specified position.
969
1075
  * This row displays the aggregate totals of all rows in the grid.
1076
+ * @agModule `RowGroupingModule` / `ServerSideRowModelModule`
970
1077
  */
971
- grandTotalRow?: 'top' | 'bottom';
1078
+ grandTotalRow?: 'top' | 'bottom' | 'pinnedTop' | 'pinnedBottom';
972
1079
  /**
973
1080
  * Suppress the sticky behaviour of the total rows, can be suppressed individually by passing `'grand'` or `'group'`.
1081
+ * @agModule `RowGroupingModule` / `ServerSideRowModelModule`
974
1082
  */
975
1083
  suppressStickyTotalRow?: boolean | 'grand' | 'group';
976
1084
  /**
977
1085
  * If `true`, and showing footer, aggregate data will always be displayed at both the header and footer levels. This stops the possibly undesirable behaviour of the header details 'jumping' to the footer on expand.
978
1086
  * @default false
1087
+ * @agModule `RowGroupingModule` / `PivotModule` / `TreeDataModule` / `ServerSideRowModelModule`
979
1088
  */
980
1089
  groupSuppressBlankHeader?: boolean;
981
1090
  /**
@@ -987,11 +1096,13 @@ export interface GridOptions<TData = any> {
987
1096
  /**
988
1097
  * Shows the open group in the group column for non-group rows.
989
1098
  * @default false
1099
+ * @agModule `RowGroupingModule`
990
1100
  */
991
1101
  showOpenedGroup?: boolean;
992
1102
  /**
993
1103
  * Enable to display the child row in place of the group row when the group only has a single child.
994
1104
  * @default false
1105
+ * @agModule `RowGroupingModule`
995
1106
  */
996
1107
  groupHideParentOfSingleChild?: boolean | 'leafGroupsOnly';
997
1108
  /**
@@ -1009,36 +1120,43 @@ export interface GridOptions<TData = any> {
1009
1120
  /**
1010
1121
  * Set to `true` to hide parents that are open. When used with multiple columns for showing groups, it can give a more pleasing user experience.
1011
1122
  * @default false
1123
+ * @agModule `RowGroupingModule`
1012
1124
  */
1013
1125
  groupHideOpenParents?: boolean;
1014
1126
  /**
1015
1127
  * Set to `true` to prevent the grid from creating a '(Blanks)' group for nodes which do not belong to a group, and display the unbalanced nodes alongside group nodes.
1016
1128
  * @default false
1129
+ * @agModule `RowGroupingModule`
1017
1130
  */
1018
1131
  groupAllowUnbalanced?: boolean;
1019
1132
  /**
1020
1133
  * When to show the 'row group panel' (where you drag rows to group) at the top.
1021
1134
  * @default 'never'
1135
+ * @agModule `RowGroupingPanelModule`
1022
1136
  */
1023
1137
  rowGroupPanelShow?: 'always' | 'onlyWhenGrouping' | 'never';
1024
1138
  /**
1025
1139
  * Provide the Cell Renderer to use when `groupDisplayType = 'groupRows'`.
1026
1140
  * See [Group Row Cell Renderer](https://www.ag-grid.com/javascript-data-grid/grouping-group-rows/#providing-cell-renderer) for framework specific implementation details.
1141
+ * @agModule `RowGroupingModule`
1027
1142
  */
1028
1143
  groupRowRenderer?: any;
1029
1144
  /**
1030
1145
  * Customise the parameters provided to the `groupRowRenderer` component.
1146
+ * @agModule `RowGroupingModule`
1031
1147
  */
1032
1148
  groupRowRendererParams?: any;
1033
1149
  /**
1034
1150
  * Set to `true` to enable the Grid to work with Tree Data.
1035
1151
  * You must also implement the `getDataPath(data)` callback.
1036
1152
  * @default false
1153
+ * @agModule `TreeDataModule`
1037
1154
  */
1038
1155
  treeData?: boolean;
1039
1156
  /**
1040
1157
  * The name of the field to use in a data item to retrieve the array of children nodes of a node when while using treeData=true.
1041
1158
  * It supports accessing nested fields using the dot notation.
1159
+ * @agModule `TreeDataModule`
1042
1160
  */
1043
1161
  treeDataChildrenField?: string;
1044
1162
  /**
@@ -1046,35 +1164,67 @@ export interface GridOptions<TData = any> {
1046
1164
  * The tree will be constructed via relationships between nodes using this field.
1047
1165
  * getRowId callback need to be provided as well for this to work.
1048
1166
  * It supports accessing nested fields using the dot notation.
1167
+ * @agModule `TreeDataModule`
1049
1168
  */
1050
1169
  treeDataParentIdField?: string;
1051
1170
  /**
1052
1171
  * Set to `true` to suppress sort indicators and actions from the row group panel.
1053
1172
  * @default false
1173
+ * @agModule `RowGroupingPanelModule`
1054
1174
  */
1055
1175
  rowGroupPanelSuppressSort?: boolean;
1056
1176
  /**
1057
1177
  * Set to `true` prevent Group Rows from sticking to the top of the grid.
1058
1178
  * @default false
1059
1179
  * @initial
1180
+ * @agModule `RowGroupingModule` / `TreeDataModule`
1060
1181
  */
1061
1182
  suppressGroupRowsSticky?: boolean;
1062
1183
  /**
1063
1184
  * Data to be displayed as pinned top rows in the grid.
1185
+ * @agModule `PinnedRowModule`
1064
1186
  */
1065
1187
  pinnedTopRowData?: any[];
1066
1188
  /**
1067
1189
  * Data to be displayed as pinned bottom rows in the grid.
1190
+ * @agModule `PinnedRowModule`
1068
1191
  */
1069
1192
  pinnedBottomRowData?: any[];
1193
+ /**
1194
+ * Determines whether manual row pinning is enabled via the row context menu.
1195
+ *
1196
+ * Set to `true` to allow pinning rows to top or bottom.
1197
+ * Set to `'top'` to allow pinning rows to the top only.
1198
+ * Set to `'bottom'` to allow pinning rows to the bottom only.
1199
+ * @agModule `PinnedRowModule`
1200
+ */
1201
+ enableRowPinning?: boolean | 'top' | 'bottom';
1202
+ /**
1203
+ * Return `true` if the grid should allow the row to be manually pinned.
1204
+ * Return `false` if the grid should prevent the row from being pinned
1205
+ *
1206
+ * When not defined, all rows default to pinnable.
1207
+ * @agModule `PinnedRowModule`
1208
+ */
1209
+ isRowPinnable?: IsRowPinnable<TData>;
1210
+ /**
1211
+ * Called for every row in the grid.
1212
+ *
1213
+ * Return `true` if the row should be pinned initially. Return `false` otherwise.
1214
+ * User interactions can subsequently still change the pinned state of a row.
1215
+ * @agModule `PinnedRowModule`
1216
+ */
1217
+ isRowPinned?: IsRowPinned<TData>;
1070
1218
  /**
1071
1219
  * Sets the row model type.
1072
1220
  * @default 'clientSide'
1073
1221
  * @initial
1222
+ * @agModule `ClientSideRowModelModule` / `InfiniteRowModelModule` / `ServerSideRowModelModule` / `ViewportRowModelModule`
1074
1223
  */
1075
1224
  rowModelType?: RowModelType;
1076
1225
  /**
1077
1226
  * Set the data to be displayed as rows in the grid.
1227
+ * @agModule `ClientSideRowModelModule`
1078
1228
  */
1079
1229
  rowData?: TData[] | null;
1080
1230
  /**
@@ -1088,38 +1238,45 @@ export interface GridOptions<TData = any> {
1088
1238
  suppressModelUpdateAfterUpdateTransaction?: boolean;
1089
1239
  /**
1090
1240
  * Provide the datasource for infinite scrolling.
1241
+ * @agModule `InfiniteRowModelModule`
1091
1242
  */
1092
1243
  datasource?: IDatasource;
1093
1244
  /**
1094
1245
  * How many extra blank rows to display to the user at the end of the dataset, which sets the vertical scroll and then allows the grid to request viewing more rows of data.
1095
1246
  * @default 1
1096
1247
  * @initial
1248
+ * @agModule `InfiniteRowModelModule`
1097
1249
  */
1098
1250
  cacheOverflowSize?: number;
1099
1251
  /**
1100
1252
  * How many extra blank rows to display to the user at the end of the dataset, which sets the vertical scroll and then allows the grid to request viewing more rows of data.
1101
1253
  * @default 1
1102
1254
  * @initial
1255
+ * @agModule `InfiniteRowModelModule`
1103
1256
  */
1104
1257
  infiniteInitialRowCount?: number;
1105
1258
  /**
1106
1259
  * Set how many loading rows to display to the user for the root level group.
1107
1260
  * @default 1
1108
1261
  * @initial
1262
+ * @agModule `ServerSideRowModelModule`
1109
1263
  */
1110
1264
  serverSideInitialRowCount?: number;
1111
1265
  /**
1112
1266
  * When `true`, the Server-side Row Model will not use a full width loading renderer, instead using the colDef `loadingCellRenderer` if present.
1267
+ * @agModule `ServerSideRowModelModule`
1113
1268
  */
1114
1269
  suppressServerSideFullWidthLoadingRow?: boolean;
1115
1270
  /**
1116
1271
  * How many rows for each block in the store, i.e. how many rows returned from the server at a time.
1117
1272
  * @default 100
1273
+ * @agModule `ServerSideRowModelModule` / `InfiniteRowModelModule`
1118
1274
  */
1119
1275
  cacheBlockSize?: number;
1120
1276
  /**
1121
1277
  * How many blocks to keep in the store. Default is no limit, so every requested block is kept. Use this if you have memory concerns, and blocks that were least recently viewed will be purged when the limit is hit. The grid will additionally make sure it has all the blocks needed to display what is currently visible, in case this property is set to a low value.
1122
1278
  * @initial
1279
+ * @agModule `ServerSideRowModelModule` / `InfiniteRowModelModule`
1123
1280
  */
1124
1281
  maxBlocksInCache?: number;
1125
1282
  /**
@@ -1127,56 +1284,67 @@ export interface GridOptions<TData = any> {
1127
1284
  * Set to `-1` for no maximum restriction on requests.
1128
1285
  * @default 2
1129
1286
  * @initial
1287
+ * @agModule `ServerSideRowModelModule` / `InfiniteRowModelModule`
1130
1288
  */
1131
1289
  maxConcurrentDatasourceRequests?: number;
1132
1290
  /**
1133
1291
  * How many milliseconds to wait before loading a block. Useful when scrolling over many blocks, as it prevents blocks loading until scrolling has settled.
1134
1292
  * @initial
1293
+ * @agModule `ServerSideRowModelModule` / `InfiniteRowModelModule`
1135
1294
  */
1136
1295
  blockLoadDebounceMillis?: number;
1137
1296
  /**
1138
1297
  * When enabled, closing group rows will remove children of that row. Next time the row is opened, child rows will be read from the datasource again. This property only applies when there is Row Grouping or Tree Data.
1139
1298
  * @default false
1299
+ * @agModule `ServerSideRowModelModule`
1140
1300
  */
1141
1301
  purgeClosedRowNodes?: boolean;
1142
1302
  /**
1143
1303
  * Provide the `serverSideDatasource` for server side row model.
1304
+ * @agModule `ServerSideRowModelModule`
1144
1305
  */
1145
1306
  serverSideDatasource?: IServerSideDatasource;
1146
1307
  /**
1147
1308
  * When enabled, always refreshes top level groups regardless of which column was sorted. This property only applies when there is Row Grouping & sorting is handled on the server.
1148
1309
  * @default false
1310
+ * @agModule `ServerSideRowModelModule`
1149
1311
  */
1150
1312
  serverSideSortAllLevels?: boolean;
1151
1313
  /**
1152
1314
  * When enabled, sorts fully loaded groups in the browser instead of requesting from the server.
1153
1315
  * @default false
1316
+ * @agModule `ServerSideRowModelModule`
1154
1317
  */
1155
1318
  serverSideEnableClientSideSort?: boolean;
1156
1319
  /**
1157
1320
  * When enabled, only refresh groups directly impacted by a filter. This property only applies when there is Row Grouping & filtering is handled on the server.
1158
1321
  * @default false
1159
1322
  * @initial
1323
+ * @agModule `ServerSideRowModelModule`
1160
1324
  */
1161
1325
  serverSideOnlyRefreshFilteredGroups?: boolean;
1162
1326
  /**
1163
1327
  * Used to split pivot field strings for generating pivot result columns when `pivotResultFields` is provided as part of a `getRows` success.
1164
1328
  * @default '_'
1165
1329
  * @initial
1330
+ * @agModule `ServerSideRowModelModule`
1166
1331
  */
1167
1332
  serverSidePivotResultFieldSeparator?: string;
1168
1333
  /**
1169
1334
  * To use the viewport row model you need to provide the grid with a `viewportDatasource`.
1335
+ * @agModule `ViewportRowModelModule`
1170
1336
  */
1171
1337
  viewportDatasource?: IViewportDatasource;
1172
1338
  /**
1173
1339
  * When using viewport row model, sets the page size for the viewport.
1174
1340
  * @initial
1341
+ * @agModule `ViewportRowModelModule`
1175
1342
  */
1176
1343
  viewportRowModelPageSize?: number;
1177
1344
  /**
1178
1345
  * When using viewport row model, sets the buffer size for the viewport.
1179
1346
  * @initial
1347
+ * @agModule `ViewportRowModelModule`
1180
1348
  */
1181
1349
  viewportRowModelBufferSize?: number;
1182
1350
  /**
@@ -1235,10 +1403,12 @@ export interface GridOptions<TData = any> {
1235
1403
  scrollbarWidth?: number;
1236
1404
  /**
1237
1405
  * Use the `RowSelectionOptions` object to configure row selection. The string values `'single'` and `'multiple'` are deprecated.
1406
+ * @agModule `RowSelectionModule`
1238
1407
  */
1239
1408
  rowSelection?: RowSelectionOptions<TData> | 'single' | 'multiple';
1240
1409
  /**
1241
- * Configure cell selection
1410
+ * Configure cell selection.
1411
+ * @agModule `CellSelectionModule`
1242
1412
  */
1243
1413
  cellSelection?: boolean | CellSelectionOptions<TData>;
1244
1414
  /**
@@ -1278,6 +1448,7 @@ export interface GridOptions<TData = any> {
1278
1448
  /**
1279
1449
  * Configure the Row Numbers Feature.
1280
1450
  * @default false
1451
+ * @agModule `RowNumbersModule`
1281
1452
  */
1282
1453
  rowNumbers?: boolean | RowNumbersOptions;
1283
1454
  /**
@@ -1297,6 +1468,7 @@ export interface GridOptions<TData = any> {
1297
1468
  * Set to `true` to enable Range Selection.
1298
1469
  * @default false
1299
1470
  * @deprecated v32.2 Use `cellSelection = true` instead
1471
+ * @agModule `CellSelectionModule`
1300
1472
  */
1301
1473
  enableRangeSelection?: boolean;
1302
1474
  /**
@@ -1373,14 +1545,17 @@ export interface GridOptions<TData = any> {
1373
1545
  rowHeight?: number;
1374
1546
  /**
1375
1547
  * The style properties to apply to all rows. Set to an object of key (style names) and values (style values).
1548
+ * @agModule `RowStyleModule`
1376
1549
  */
1377
1550
  rowStyle?: RowStyle;
1378
1551
  /**
1379
1552
  * CSS class(es) for all rows. Provide either a string (class name) or array of strings (array of class names).
1553
+ * @agModule `RowStyleModule`
1380
1554
  */
1381
1555
  rowClass?: string | string[];
1382
1556
  /**
1383
1557
  * Rules which can be applied to include certain CSS classes.
1558
+ * @agModule `RowStyleModule`
1384
1559
  */
1385
1560
  rowClassRules?: RowClassRules<TData>;
1386
1561
  /**
@@ -1397,6 +1572,7 @@ export interface GridOptions<TData = any> {
1397
1572
  /**
1398
1573
  * Set to `true` to highlight columns by adding the `ag-column-hover` CSS class.
1399
1574
  * @default false
1575
+ * @agModule `ColumnHoverModule`
1400
1576
  */
1401
1577
  columnHoverHighlight?: boolean;
1402
1578
  /**
@@ -1419,6 +1595,7 @@ export interface GridOptions<TData = any> {
1419
1595
  /**
1420
1596
  * Initial state for the grid. Only read once on initialization. Can be used in conjunction with `api.getState()` to save and restore grid state.
1421
1597
  * @initial
1598
+ * @agModule `GridStateModule`
1422
1599
  */
1423
1600
  initialState?: GridState;
1424
1601
  /**
@@ -1473,11 +1650,13 @@ export interface GridOptions<TData = any> {
1473
1650
  themeStyleContainer?: HTMLElement;
1474
1651
  /**
1475
1652
  * For customising the context menu.
1653
+ * @agModule `ContextMenuModule`
1476
1654
  */
1477
1655
  getContextMenuItems?: GetContextMenuItems<TData>;
1478
1656
  /**
1479
1657
  * For customising the main 'column header' menu.
1480
1658
  * @initial
1659
+ * @agModule `ColumnMenuModule`
1481
1660
  */
1482
1661
  getMainMenuItems?: GetMainMenuItems<TData>;
1483
1662
  /**
@@ -1492,44 +1671,54 @@ export interface GridOptions<TData = any> {
1492
1671
  processUnpinnedColumns?: (params: ProcessUnpinnedColumnsParams<TData>) => Column[];
1493
1672
  /**
1494
1673
  * Allows you to process cells for the clipboard. Handy if for example you have `Date` objects that need to have a particular format if importing into Excel.
1674
+ * @agModule `ClipboardModule`
1495
1675
  */
1496
1676
  processCellForClipboard?: (params: ProcessCellForExportParams<TData>) => any;
1497
1677
  /**
1498
1678
  * Allows you to process header values for the clipboard.
1679
+ * @agModule `ClipboardModule`
1499
1680
  */
1500
1681
  processHeaderForClipboard?: (params: ProcessHeaderForExportParams<TData>) => any;
1501
1682
  /**
1502
1683
  * Allows you to process group header values for the clipboard.
1684
+ * @agModule `ClipboardModule`
1503
1685
  */
1504
1686
  processGroupHeaderForClipboard?: (params: ProcessGroupHeaderForExportParams<TData>) => any;
1505
1687
  /**
1506
1688
  * Allows you to process cells from the clipboard. Handy if for example you have number fields and want to block non-numbers from getting into the grid.
1689
+ * @agModule `ClipboardModule`
1507
1690
  */
1508
1691
  processCellFromClipboard?: (params: ProcessCellForExportParams<TData>) => any;
1509
1692
  /**
1510
1693
  * Allows you to get the data that would otherwise go to the clipboard. To be used when you want to control the 'copy to clipboard' operation yourself.
1694
+ * @agModule `ClipboardModule`
1511
1695
  */
1512
1696
  sendToClipboard?: (params: SendToClipboardParams<TData>) => void;
1513
1697
  /**
1514
1698
  * Allows complete control of the paste operation, including cancelling the operation (so nothing happens) or replacing the data with other data.
1699
+ * @agModule `ClipboardModule`
1515
1700
  */
1516
1701
  processDataFromClipboard?: (params: ProcessDataFromClipboardParams<TData>) => string[][] | null;
1517
1702
  /**
1518
1703
  * Grid calls this method to know if an external filter is present.
1704
+ * @agModule `ExternalFilterModule`
1519
1705
  */
1520
1706
  isExternalFilterPresent?: (params: IsExternalFilterPresentParams<TData>) => boolean;
1521
1707
  /**
1522
1708
  * Should return `true` if external filter passes, otherwise `false`.
1709
+ * @agModule `ExternalFilterModule`
1523
1710
  */
1524
1711
  doesExternalFilterPass?: (node: IRowNode<TData>) => boolean;
1525
1712
  /**
1526
1713
  * Callback to be used to customise the chart toolbar items.
1527
1714
  * @initial
1715
+ * @agModule `IntegratedChartsModule`
1528
1716
  */
1529
1717
  getChartToolbarItems?: GetChartToolbarItems;
1530
1718
  /**
1531
1719
  * Callback to enable displaying the chart in an alternative chart container.
1532
1720
  * @initial
1721
+ * @agModule `IntegratedChartsModule`
1533
1722
  */
1534
1723
  createChartContainer?: (params: ChartRefParams<TData>) => void;
1535
1724
  /**
@@ -1560,6 +1749,7 @@ export interface GridOptions<TData = any> {
1560
1749
  /**
1561
1750
  * A callback for localising text within the grid.
1562
1751
  * @initial
1752
+ * @agModule `LocaleModule`
1563
1753
  */
1564
1754
  getLocaleText?: (params: GetLocaleTextParams<TData>) => string;
1565
1755
  /**
@@ -1569,57 +1759,70 @@ export interface GridOptions<TData = any> {
1569
1759
  /**
1570
1760
  * Allows user to format the numbers in the pagination panel, i.e. 'row count' and 'page number' labels. This is for pagination panel only, to format numbers inside the grid's cells (i.e. your data), then use `valueFormatter` in the column definitions.
1571
1761
  * @initial
1762
+ * @agModule `PaginationModule`
1572
1763
  */
1573
1764
  paginationNumberFormatter?: (params: PaginationNumberFormatterParams<TData>) => string;
1574
1765
  /**
1575
1766
  * Callback to use when you need access to more then the current column for aggregation.
1767
+ * @agModule `RowGroupingModule` / `PivotModule` / `TreeDataModule` / `ServerSideRowModelModule`
1576
1768
  */
1577
1769
  getGroupRowAgg?: (params: GetGroupRowAggParams<TData>) => any;
1578
1770
  /**
1579
1771
  * (Client-side Row Model only) Allows groups to be open by default.
1772
+ * @agModule `RowGroupingModule` / `TreeDataModule`
1580
1773
  */
1581
1774
  isGroupOpenByDefault?: (params: IsGroupOpenByDefaultParams<TData>) => boolean;
1582
1775
  /**
1583
1776
  * Allows default sorting of groups.
1777
+ * @agModule `RowGroupingModule`
1584
1778
  */
1585
1779
  initialGroupOrderComparator?: (params: InitialGroupOrderComparatorParams<TData>) => number;
1586
1780
  /**
1587
1781
  * Callback for the mutation of the generated pivot result column definitions
1782
+ * @agModule `PivotModule`
1588
1783
  */
1589
1784
  processPivotResultColDef?: (colDef: ColDef<TData>) => void;
1590
1785
  /**
1591
1786
  * Callback for the mutation of the generated pivot result column group definitions
1787
+ * @agModule `PivotModule`
1592
1788
  */
1593
1789
  processPivotResultColGroupDef?: (colGroupDef: ColGroupDef<TData>) => void;
1594
1790
  /**
1595
1791
  * Callback to be used when working with Tree Data when `treeData = true`.
1596
1792
  * @initial
1793
+ * @agModule `TreeDataModule`
1597
1794
  */
1598
1795
  getDataPath?: GetDataPath<TData>;
1599
1796
  /**
1600
1797
  * Allows setting the child count for a group row.
1601
1798
  * @initial
1799
+ * @agModule `ServerSideRowModelModule`
1602
1800
  */
1603
1801
  getChildCount?: (dataItem: any) => number;
1604
1802
  /**
1605
1803
  * Allows providing different params for different levels of grouping.
1606
1804
  * @initial
1805
+ * @agModule `ServerSideRowModelModule`
1607
1806
  */
1608
1807
  getServerSideGroupLevelParams?: (params: GetServerSideGroupLevelParamsParams) => ServerSideGroupLevelParams;
1609
1808
  /**
1610
1809
  * Allows groups to be open by default.
1810
+ * @agModule `ServerSideRowModelModule`
1611
1811
  */
1612
1812
  isServerSideGroupOpenByDefault?: (params: IsServerSideGroupOpenByDefaultParams) => boolean;
1613
1813
  /**
1614
1814
  * Allows cancelling transactions.
1815
+ * @agModule `ServerSideRowModelModule`
1615
1816
  */
1616
1817
  isApplyServerSideTransaction?: IsApplyServerSideTransaction;
1617
1818
  /**
1618
1819
  * SSRM Tree Data: Allows specifying which rows are expandable.
1820
+ * @agModule `ServerSideRowModelModule`
1619
1821
  */
1620
1822
  isServerSideGroup?: IsServerSideGroup;
1621
1823
  /**
1622
1824
  * SSRM Tree Data: Allows specifying group keys.
1825
+ * @agModule `ServerSideRowModelModule`
1623
1826
  */
1624
1827
  getServerSideGroupKey?: GetServerSideGroupKey;
1625
1828
  /**
@@ -1635,6 +1838,7 @@ export interface GridOptions<TData = any> {
1635
1838
  /**
1636
1839
  * When enabled, getRowId() callback is implemented and new Row Data is set, the grid will disregard all previous rows and treat the new Row Data as new data. As a consequence, all Row State (eg selection, rendered rows) will be reset.
1637
1840
  * @default false
1841
+ * @agModule `ClientSideRowModelModule`
1638
1842
  */
1639
1843
  resetRowDataOnUpdate?: boolean;
1640
1844
  /**
@@ -1648,6 +1852,7 @@ export interface GridOptions<TData = any> {
1648
1852
  isRowSelectable?: IsRowSelectable<TData>;
1649
1853
  /**
1650
1854
  * Callback to be used with Master Detail to determine if a row should be a master row. If `false` is returned no detail row will exist for this row.
1855
+ * @agModule `MasterDetailModule`
1651
1856
  */
1652
1857
  isRowMaster?: IsRowMaster<TData>;
1653
1858
  /**
@@ -1661,10 +1866,12 @@ export interface GridOptions<TData = any> {
1661
1866
  postSortRows?: (params: PostSortRowsParams<TData>) => void;
1662
1867
  /**
1663
1868
  * Callback version of property `rowStyle` to set style for each row individually. Function should return an object of CSS values or undefined for no styles.
1869
+ * @agModule `RowStyleModule`
1664
1870
  */
1665
1871
  getRowStyle?: (params: RowClassParams<TData>) => RowStyle | undefined;
1666
1872
  /**
1667
1873
  * Callback version of property `rowClass` to set class(es) for each row individually. Function should return either a string (class name), array of strings (array of class names) or undefined for no class.
1874
+ * @agModule `RowStyleModule`
1668
1875
  */
1669
1876
  getRowClass?: (params: RowClassParams<TData>) => string | string[] | undefined;
1670
1877
  /**
@@ -1782,9 +1989,18 @@ export interface GridOptions<TData = any> {
1782
1989
  */
1783
1990
  onComponentStateChanged?(event: ComponentStateChangedEvent<TData>): void;
1784
1991
  /**
1785
- * Value has changed after editing (this event will not fire if editing was cancelled, eg ESC was pressed) or
1786
- * if cell value has changed as a result of cut, paste, cell clear (pressing Delete key),
1787
- * fill handle, copy range down, undo and redo.
1992
+ * Cell value has changed. This occurs after the following scenarios:
1993
+ * - Editing. Will not fire if any of the following are true:
1994
+ * new value is the same as old value;
1995
+ * `readOnlyEdit = true`;
1996
+ * editing was cancelled (e.g. Escape key was pressed);
1997
+ * or new value is of the wrong cell data type for the column.
1998
+ * - Cut.
1999
+ * - Paste.
2000
+ * - Cell clear (pressing Delete key).
2001
+ * - Fill handle.
2002
+ * - Copy range down.
2003
+ * - Undo and redo.
1788
2004
  */
1789
2005
  onCellValueChanged?(event: CellValueChangedEvent<TData>): void;
1790
2006
  /**
@@ -1973,6 +2189,14 @@ export interface GridOptions<TData = any> {
1973
2189
  * The drag has been cancelled over the grid.
1974
2190
  */
1975
2191
  onRowDragCancel?(event: RowDragCancelEvent<TData>): void;
2192
+ /**
2193
+ * The row resize has started (Row Numbers Feature)
2194
+ */
2195
+ onRowResizeStarted?(event: RowResizeStartedEvent<TData>): void;
2196
+ /**
2197
+ * The row resize has ended (Row Numbers Feature)
2198
+ */
2199
+ onRowResizeEnded?(event: RowResizeEndedEvent): void;
1976
2200
  /**
1977
2201
  * A row group column was added, removed or reordered.
1978
2202
  */
@@ -1993,6 +2217,10 @@ export interface GridOptions<TData = any> {
1993
2217
  * The client has set new pinned row data into the grid.
1994
2218
  */
1995
2219
  onPinnedRowDataChanged?(event: PinnedRowDataChangedEvent<TData>): void;
2220
+ /**
2221
+ * A row has been pinned to top or bottom, or unpinned.
2222
+ */
2223
+ onPinnedRowsChanged?(event: PinnedRowsChangedEvent<TData>): void;
1996
2224
  /**
1997
2225
  * Client-Side Row Model only. The client has updated data for the grid by either a) setting new Row Data or b) Applying a Row Transaction.
1998
2226
  */
@@ -2104,6 +2332,12 @@ export interface IsRowMaster<TData = any> {
2104
2332
  export interface IsRowSelectable<TData = any> {
2105
2333
  (node: IRowNode<TData>): boolean;
2106
2334
  }
2335
+ export interface IsRowPinnable<TData = any> {
2336
+ (node: IRowNode<TData>): boolean;
2337
+ }
2338
+ export interface IsRowPinned<TData = any> {
2339
+ (node: IRowNode<TData>): RowPinnedType;
2340
+ }
2107
2341
  export interface RowClassRules<TData = any> {
2108
2342
  [cssClassName: string]: ((params: RowClassParams<TData>) => boolean) | string;
2109
2343
  }