rowvia 0.2.3 → 0.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 (125) hide show
  1. package/README.md +29 -9
  2. package/dist/fields.css +1 -0
  3. package/dist/fields.es.js +1913 -0
  4. package/dist/fields.umd.cjs +1 -0
  5. package/dist/rowvia.css +1 -1
  6. package/dist/rowvia.es.js +10659 -10122
  7. package/dist/rowvia.umd.cjs +84 -103
  8. package/dist/types/api.d.ts +1 -1
  9. package/dist/types/components/cells.d.ts +25 -0
  10. package/dist/types/components/detailDialog.d.ts +7 -1
  11. package/dist/types/components/scrollbars.d.ts +10 -0
  12. package/dist/types/contracts/work-item.d.ts +335 -0
  13. package/dist/types/core/clientSideRowModel.d.ts +1 -2
  14. package/dist/types/core/columnModel.d.ts +2 -2
  15. package/dist/types/core/gridHost.d.ts +365 -0
  16. package/dist/types/core/remoteRowModels.d.ts +2 -10
  17. package/dist/types/core/rowNode.d.ts +1 -2
  18. package/dist/types/core/valueService.d.ts +1 -1
  19. package/dist/types/createGrid.d.ts +10 -0
  20. package/dist/types/features/chartService.d.ts +2 -11
  21. package/dist/types/features/columnMenu.d.ts +1 -1
  22. package/dist/types/features/contextMenu.d.ts +2 -13
  23. package/dist/types/features/editService.d.ts +3 -8
  24. package/dist/types/features/exportService.d.ts +3 -2
  25. package/dist/types/features/filterGui.d.ts +1 -1
  26. package/dist/types/features/filterService.d.ts +2 -14
  27. package/dist/types/features/findService.d.ts +1 -1
  28. package/dist/types/features/formulaEditor.d.ts +1 -1
  29. package/dist/types/features/notesService.d.ts +1 -5
  30. package/dist/types/features/overlays.d.ts +1 -1
  31. package/dist/types/features/paginationService.d.ts +1 -2
  32. package/dist/types/features/popupService.d.ts +1 -1
  33. package/dist/types/features/rangeSelection.d.ts +1 -8
  34. package/dist/types/features/rowDragService.d.ts +1 -1
  35. package/dist/types/features/rowGroupPanel.d.ts +1 -1
  36. package/dist/types/features/selectionService.d.ts +1 -1
  37. package/dist/types/features/sideBar.d.ts +2 -5
  38. package/dist/types/features/sortService.d.ts +1 -1
  39. package/dist/types/features/statusBar.d.ts +2 -3
  40. package/dist/types/features/undoRedoService.d.ts +2 -9
  41. package/dist/types/fields/attachment-control.d.ts +2 -0
  42. package/dist/types/fields/base-field.d.ts +62 -0
  43. package/dist/types/fields/cascade-control.d.ts +3 -0
  44. package/dist/types/fields/choice-control.d.ts +8 -0
  45. package/dist/types/fields/composite-control.d.ts +3 -0
  46. package/dist/types/fields/controls.d.ts +19 -0
  47. package/dist/types/{pages/work-items → fields}/date-control.d.ts +1 -1
  48. package/dist/types/fields/field-types.d.ts +114 -0
  49. package/dist/types/fields/index.d.ts +8 -0
  50. package/dist/types/fields/internal/dom.d.ts +1 -0
  51. package/dist/types/fields/internal/focus-boundary.d.ts +7 -0
  52. package/dist/types/fields/internal/interaction.d.ts +23 -0
  53. package/dist/types/fields/internal/lifecycle.d.ts +12 -0
  54. package/dist/types/fields/internal/textarea.d.ts +1 -0
  55. package/dist/types/fields/location-control.d.ts +3 -0
  56. package/dist/types/fields/popup.d.ts +38 -0
  57. package/dist/types/{pages/work-items → fields}/rich-control.d.ts +1 -1
  58. package/dist/types/fields/text-control.d.ts +3 -0
  59. package/dist/types/fields/types.d.ts +185 -0
  60. package/dist/types/fields/value-control.d.ts +12 -0
  61. package/dist/types/fields/vote-control.d.ts +2 -0
  62. package/dist/types/forms/form-conditions.d.ts +29 -0
  63. package/dist/types/forms/form-surface.d.ts +13 -0
  64. package/dist/types/gantt/component.d.ts +5 -4
  65. package/dist/types/gantt/ganttChart.d.ts +7 -7
  66. package/dist/types/gantt/index.d.ts +3 -3
  67. package/dist/types/gantt/scale.d.ts +18 -0
  68. package/dist/types/grid.d.ts +21 -17
  69. package/dist/types/index.d.ts +19 -20
  70. package/dist/types/node-flow/canvas.d.ts +26 -0
  71. package/dist/types/node-flow/card.d.ts +23 -0
  72. package/dist/types/node-flow/cardSections.d.ts +14 -0
  73. package/dist/types/node-flow/component.d.ts +9 -0
  74. package/dist/types/node-flow/contextBar.d.ts +20 -0
  75. package/dist/types/node-flow/demo.d.ts +6 -0
  76. package/dist/types/node-flow/index.d.ts +13 -0
  77. package/dist/types/node-flow/model.d.ts +48 -0
  78. package/dist/types/node-flow/timeline.d.ts +16 -0
  79. package/dist/types/node-flow/types.d.ts +220 -0
  80. package/dist/types/personnel/component.d.ts +3 -2
  81. package/dist/types/personnel/index.d.ts +1 -1
  82. package/dist/types/personnel/render.d.ts +22 -0
  83. package/dist/types/render/headerView.d.ts +1 -1
  84. package/dist/types/render/rowComponent.d.ts +29 -0
  85. package/dist/types/render/rowContext.d.ts +39 -0
  86. package/dist/types/render/rowRenderer.d.ts +6 -73
  87. package/dist/types/shared/dom.d.ts +1 -0
  88. package/dist/types/shared/interaction.d.ts +1 -0
  89. package/dist/types/shared/lifecycle.d.ts +1 -0
  90. package/dist/types/shared/markup.d.ts +5 -0
  91. package/dist/types/shared/state.d.ts +5 -0
  92. package/dist/types/types.d.ts +3 -2
  93. package/dist/types/work-items/action-surface.d.ts +17 -0
  94. package/dist/types/work-items/detail/detail-header.d.ts +23 -0
  95. package/dist/types/work-items/fields/control-base.d.ts +17 -0
  96. package/dist/types/work-items/fields/focus-editor.d.ts +3 -0
  97. package/dist/types/work-items/fields/registry.d.ts +5 -0
  98. package/dist/types/work-items/index.d.ts +19 -0
  99. package/dist/types/work-items/layers.d.ts +19 -0
  100. package/dist/types/work-items/model.d.ts +10 -0
  101. package/dist/types/work-items/selection-bar.d.ts +7 -0
  102. package/dist/types/work-items/style-scope.d.ts +1 -0
  103. package/dist/types/work-items/table/column-panels.d.ts +39 -0
  104. package/dist/types/work-items/table/columns.d.ts +28 -0
  105. package/dist/types/work-items/table/headers.d.ts +10 -0
  106. package/dist/types/work-items/table/table.d.ts +10 -0
  107. package/dist/types/work-items/tabs.d.ts +14 -0
  108. package/dist/types/work-items/toolbar.d.ts +11 -0
  109. package/dist/types/work-items/views/rule-panels.d.ts +28 -0
  110. package/package.json +24 -6
  111. package/dist/types/pages/finance/component.d.ts +0 -2
  112. package/dist/types/pages/finance/data.d.ts +0 -14
  113. package/dist/types/pages/hr/component.d.ts +0 -2
  114. package/dist/types/pages/hr/data.d.ts +0 -21
  115. package/dist/types/pages/index.d.ts +0 -12
  116. package/dist/types/pages/inventory/component.d.ts +0 -2
  117. package/dist/types/pages/inventory/data.d.ts +0 -26
  118. package/dist/types/pages/lifecycle.d.ts +0 -24
  119. package/dist/types/pages/performance/component.d.ts +0 -2
  120. package/dist/types/pages/performance/data.d.ts +0 -33
  121. package/dist/types/pages/server-side/component.d.ts +0 -2
  122. package/dist/types/pages/work-items/config.d.ts +0 -71
  123. package/dist/types/pages/work-items/controls.d.ts +0 -34
  124. package/dist/types/pages/work-items/model.d.ts +0 -72
  125. package/dist/types/pages/work-items/page.d.ts +0 -24
@@ -0,0 +1,365 @@
1
+ import type { SelectionService } from '../features/selectionService';
2
+ import type { HeaderView } from '../render/headerView';
3
+ import type { RowRenderer } from '../render/rowRenderer';
4
+ import type { observeInteractions } from '../shared/interaction';
5
+ import type { Column, ColumnApi, ExportParams, FilterModelItem, GridApi, GridOptions, RowDataTransaction, RowNode, RowNodeTransactionResult, SortDirection, SortModelItem } from '../types';
6
+ import type { RowModel } from './clientSideRowModel';
7
+ import type { ColumnModel } from './columnModel';
8
+ import type { EventService } from './eventService';
9
+ import type { InfiniteRowModel, ServerSideRowModel, ViewportRowModel } from './remoteRowModels';
10
+ /** Ports used by features; implementations are assembled by Grid. */
11
+ export interface GridHost {
12
+ onInteraction: ReturnType<typeof observeInteractions>['onInteraction'];
13
+ getOptions(): GridOptions;
14
+ t(key: string): string;
15
+ translate(key: string, fallback: string): string;
16
+ getContext(): any;
17
+ getEventService(): EventService;
18
+ getColumnModel(): ColumnModel;
19
+ getRowModel(): RowModel;
20
+ getRowRenderer(): RowRenderer;
21
+ getHeaderView(): HeaderView;
22
+ getSelectionService(): SelectionService;
23
+ getEditService(): EditService;
24
+ getFilterService(): FilterService;
25
+ getSortService(): SortService;
26
+ getFilterGui(): FilterGui;
27
+ getPaginationService(): PaginationService | null;
28
+ getSideBarService(): SideBarService;
29
+ getChartService(): ChartService;
30
+ getFindService(): FindService;
31
+ getRangeSelectionService(): RangeSelectionService;
32
+ getExportService(): ExportService;
33
+ getPopupService(): PopupService;
34
+ getOverlayService(): OverlayService;
35
+ getRowGroupPanel(): RowGroupPanel | null;
36
+ getUndoRedoService(): UndoRedoService;
37
+ getFormulaEditorService(): FormulaEditorService;
38
+ getNotesService(): NotesService;
39
+ getRowDragService(): RowDragService;
40
+ getServerSideRowModel(): ServerSideRowModel | null;
41
+ getInfiniteRowModel(): InfiniteRowModel | null;
42
+ getViewportRowModel(): ViewportRowModel | null;
43
+ refreshPivotColumns(): void;
44
+ isRemoteLoading(): boolean;
45
+ getApi(): GridApi;
46
+ getColumnApi(): ColumnApi;
47
+ getRootElement(): HTMLElement;
48
+ getMainElement(): HTMLElement;
49
+ getHeaderElement(): HTMLElement;
50
+ getGridDiv(): HTMLElement;
51
+ getColumns(): {
52
+ left: Column[];
53
+ center: Column[];
54
+ right: Column[];
55
+ };
56
+ getAllColumns(): Column[];
57
+ getColumn(key: string | Column): Column | undefined;
58
+ getDisplayedRowCount(): number;
59
+ getDisplayedRowAtIndex(index: number): RowNode | undefined;
60
+ getRowNode(id: string): RowNode | undefined;
61
+ getRowHeight(node: RowNode): number;
62
+ getRowClass(node: RowNode): string;
63
+ getRowStyle(node: RowNode): Record<string, any>;
64
+ isNodeSelectable(node: RowNode): boolean;
65
+ isCellEditable(column: Column, node: RowNode): boolean;
66
+ setRowData(rowData: any[], initial?: boolean): void;
67
+ applyTransaction(transaction: RowDataTransaction): RowNodeTransactionResult | null;
68
+ setCellValue(column: Column, node: RowNode, value: any, source?: string, oldValueOverride?: any): void;
69
+ refreshModel(step?: string): void;
70
+ refreshCells(params?: {
71
+ rowNodes?: RowNode[];
72
+ columns?: Array<string | Column>;
73
+ force?: boolean;
74
+ flash?: boolean;
75
+ }): void;
76
+ setQuickFilter(text: string): void;
77
+ getQuickFilter(): string;
78
+ setRowNodePinned(node: RowNode, pinned: 'top' | 'bottom' | null): void;
79
+ openFind(): void;
80
+ closeFind(): void;
81
+ setHorizontalScrollLeft(left: number): void;
82
+ onGridSizeChanged(): void;
83
+ updateGridOptions(options: Partial<GridOptions>): void;
84
+ destroy(): void;
85
+ }
86
+ export type ChartType = 'line' | 'area' | 'column' | 'bar' | 'pie' | 'scatter';
87
+ export interface ChartSeries {
88
+ title: string;
89
+ data: number[];
90
+ }
91
+ export interface ChartData {
92
+ categories: string[];
93
+ series: ChartSeries[];
94
+ }
95
+ export interface ChartService {
96
+ isEnabled(): boolean;
97
+ getChartData(params?: {
98
+ categoryColumn?: Column;
99
+ valueColumns?: Column[];
100
+ }): ChartData;
101
+ buildChartPanel(): HTMLElement;
102
+ createChart(params?: {
103
+ type?: ChartType;
104
+ categoryColumn?: Column;
105
+ valueColumns?: Column[];
106
+ title?: string;
107
+ }): string;
108
+ destroyChart(id: string): void;
109
+ getChartModels(): any[];
110
+ refreshCharts(): void;
111
+ saveCharts(): void;
112
+ loadCharts(): void;
113
+ }
114
+ export interface ColumnMenuService {
115
+ openColumnMenu(column: Column, anchor: HTMLElement): void;
116
+ }
117
+ export interface MenuItem {
118
+ name: string;
119
+ label?: string;
120
+ icon?: string;
121
+ disabled?: boolean;
122
+ checked?: boolean;
123
+ subMenu?: MenuItem[];
124
+ action?: () => void;
125
+ separator?: boolean;
126
+ cssClasses?: string[];
127
+ shortcut?: string;
128
+ }
129
+ export interface ContextMenuService {
130
+ openContextMenu(anchor: HTMLElement, params: {
131
+ column?: any;
132
+ node?: any;
133
+ }): void;
134
+ }
135
+ export interface FocusedCell {
136
+ rowIndex: number;
137
+ column: Column;
138
+ rowNode: RowNode;
139
+ }
140
+ export interface EditService {
141
+ getFocusedCell(): FocusedCell | null;
142
+ setFocusedCell(rowIndex: number, column: Column): void;
143
+ clearFocusedCell(): void;
144
+ isEditing(): boolean;
145
+ getEditingCells(): Array<{
146
+ rowIndex: number;
147
+ colId: string;
148
+ }>;
149
+ startEditingCell(params: {
150
+ rowIndex: number;
151
+ colKey: string | Column;
152
+ charPress?: string;
153
+ }): void;
154
+ stopEditing(cancel?: boolean): boolean;
155
+ onGridKeyDown(event: KeyboardEvent): void;
156
+ moveFocus(rowDelta: number, colDelta: number): void;
157
+ tabToNextCell(): void;
158
+ tabToPreviousCell(): void;
159
+ onCellClicked(params: {
160
+ node: RowNode;
161
+ column: Column;
162
+ event: MouseEvent;
163
+ rowIndex: number;
164
+ }): void;
165
+ onCellDoubleClicked(params: {
166
+ node: RowNode;
167
+ column: Column;
168
+ event: MouseEvent;
169
+ rowIndex: number;
170
+ }): void;
171
+ destroy(): void;
172
+ }
173
+ export interface ExportService {
174
+ getDataAsCsv(params?: ExportParams): string;
175
+ getDataAsExcel(params?: ExportParams): Blob;
176
+ exportToCsv(params?: ExportParams): void;
177
+ exportToExcel(params?: ExportParams): void;
178
+ getDataAsPdf(params?: ExportParams & {
179
+ pageSize?: string;
180
+ title?: string;
181
+ }): Blob;
182
+ exportToPdf(params?: ExportParams & {
183
+ pageSize?: string;
184
+ title?: string;
185
+ }): void;
186
+ importExcel(file: Blob | ArrayBuffer, params?: {
187
+ sheetIndex?: number;
188
+ onSuccess?: (rows: any[]) => void;
189
+ }): Promise<any[]>;
190
+ copyToClipboard(params?: any): void;
191
+ cutToClipboard(params?: any): void;
192
+ pasteFromClipboard(): void;
193
+ pasteText(text: string): void;
194
+ }
195
+ export interface FilterGui {
196
+ openFilter(column: Column, anchor: HTMLElement): void;
197
+ openMultiFilter(column: Column, anchor: HTMLElement): void;
198
+ openAdvancedFilter(anchor: HTMLElement): void;
199
+ }
200
+ export interface AdvancedFilterCondition {
201
+ colId: string;
202
+ type: string;
203
+ filter?: any;
204
+ filterTo?: any;
205
+ dateFrom?: string;
206
+ dateTo?: string;
207
+ }
208
+ export interface AdvancedFilterModel {
209
+ filterType: 'advanced';
210
+ operator: 'AND' | 'OR';
211
+ conditions: AdvancedFilterCondition[];
212
+ }
213
+ export interface FilterService {
214
+ getAdvancedFilterModel(): AdvancedFilterModel | null;
215
+ setAdvancedFilterModel(model: AdvancedFilterModel | null): void;
216
+ isAdvancedFilterEnabled(): boolean;
217
+ doesNodePassAdvancedFilter(node: any): boolean;
218
+ getFilterModel(): Record<string, FilterModelItem>;
219
+ getFilterInstance(colId: string): FilterModelItem | undefined;
220
+ setFilterModel(model: Record<string, FilterModelItem> | null): void;
221
+ setColumnFilterModel(colKey: string | Column, model: FilterModelItem | null): void;
222
+ isFilterActive(column: Column): boolean;
223
+ handleFloatingFilterChange(column: Column, value: string): void;
224
+ resetFilters(): void;
225
+ onFilterChanged(source: string): void;
226
+ }
227
+ export interface FindService {
228
+ isOpen(): boolean;
229
+ open(): void;
230
+ close(): void;
231
+ setFindText(text: string): void;
232
+ getFindText(): string;
233
+ getNumMatches(): number;
234
+ getActiveMatch(): number;
235
+ find(text: string): void;
236
+ findNext(): boolean;
237
+ findPrevious(): boolean;
238
+ applyHighlight(): void;
239
+ }
240
+ export interface FormulaEditorService {
241
+ isFormulaColumn(column: Column): boolean;
242
+ openFormulaEditor(column: Column, anchor: HTMLElement): void;
243
+ }
244
+ export interface NoteKey {
245
+ rowNodeId: string;
246
+ colId: string;
247
+ }
248
+ export interface NotesService {
249
+ getNote(rowNodeId: string, colId: string, colDefNote?: any, params?: any): string | undefined;
250
+ setNote(rowNodeId: string, colId: string, note: string | undefined): void;
251
+ openNoteEditor(rowNodeId: string, colId: string, anchor: HTMLElement): void;
252
+ }
253
+ export interface OverlayService {
254
+ showLoadingOverlay(): void;
255
+ showNoRowsOverlay(): void;
256
+ hideOverlay(): void;
257
+ updateAuto(): void;
258
+ getCurrent(): 'loading' | 'noRows' | null;
259
+ }
260
+ export interface PaginationService {
261
+ isEnabled(): boolean;
262
+ setEnabled(enabled: boolean): void;
263
+ getPageSize(): number;
264
+ setPageSize(size: number): void;
265
+ getCurrentPage(): number;
266
+ getTotalPages(): number;
267
+ goToPage(page: number): void;
268
+ goToNextPage(): void;
269
+ goToPreviousPage(): void;
270
+ goToFirstPage(): void;
271
+ goToLastPage(): void;
272
+ update(): void;
273
+ getPanel(): HTMLElement;
274
+ isLastPageFound(): boolean;
275
+ }
276
+ export interface PopupService {
277
+ getParent(): HTMLElement;
278
+ createPopup(width?: number, className?: string): {
279
+ ePopup: HTMLElement;
280
+ close: () => void;
281
+ onClose: (cb: () => void) => void;
282
+ };
283
+ positionAt(ePopup: HTMLElement, anchor: HTMLElement, offsetX?: number): void;
284
+ closeAll(): void;
285
+ }
286
+ export interface RangeState {
287
+ rowStartIndex: number;
288
+ rowEndIndex: number;
289
+ colStartId: string;
290
+ colEndId: string;
291
+ }
292
+ export interface RangeSelectionService {
293
+ isEnabled(): boolean;
294
+ getRanges(): RangeState[];
295
+ clearRanges(): void;
296
+ onCellMouseDown(params: {
297
+ event: MouseEvent;
298
+ column: Column;
299
+ rowIndex: number;
300
+ }): void;
301
+ onHandleMouseDown(event: MouseEvent): void;
302
+ updateOverlay(): void;
303
+ applyHighlight(): void;
304
+ getRangeCells(range: RangeState): Array<{
305
+ node: any;
306
+ column: Column;
307
+ }>;
308
+ getCurrentRange(): RangeState | null;
309
+ onGridKeyDown(event: KeyboardEvent): void;
310
+ }
311
+ export interface RowDragService {
312
+ isEnabled(): boolean;
313
+ startDrag(rowNode: RowNode, event: MouseEvent): void;
314
+ }
315
+ export interface RowGroupPanel {
316
+ refresh(): void;
317
+ }
318
+ export interface ToolPanelDef {
319
+ id: string;
320
+ label: string;
321
+ }
322
+ export interface SideBarService {
323
+ getElement(): HTMLElement;
324
+ setPosition(position: 'left' | 'right'): void;
325
+ setVisible(visible: boolean): void;
326
+ isVisible(): boolean;
327
+ openPanel(id: string): void;
328
+ getActivePanel(): string | null;
329
+ refresh(): void;
330
+ }
331
+ export interface SortService {
332
+ getSortingOrder(): SortDirection[];
333
+ onSortRequested(column: Column, event: MouseEvent, multiSort: boolean): void;
334
+ getSortModel(): SortModelItem[];
335
+ setSortModel(model: SortModelItem[]): void;
336
+ onSortChanged(source: string): void;
337
+ }
338
+ export interface StatusBarService {
339
+ getElement(): HTMLElement;
340
+ isVisible(): boolean;
341
+ setVisible(visible: boolean): void;
342
+ update(): void;
343
+ }
344
+ export interface UndoRedoAction {
345
+ rowNodeId: string;
346
+ colId: string;
347
+ oldValue: any;
348
+ newValue: any;
349
+ /** batch id — edits committed in one batch share an id and undo together */
350
+ batchId: number;
351
+ }
352
+ export interface UndoRedoService {
353
+ isEnabled(): boolean;
354
+ pushAction(action: UndoRedoAction): void;
355
+ canUndo(): boolean;
356
+ canRedo(): boolean;
357
+ getUndoStackSize(): number;
358
+ getRedoStackSize(): number;
359
+ undo(): number;
360
+ redo(): number;
361
+ startBatchEdit(): void;
362
+ endBatchEdit(cancel?: boolean): void;
363
+ isBatchEditing(): boolean;
364
+ clear(): void;
365
+ }
@@ -1,7 +1,7 @@
1
1
  import type { Column, GridOptions, RowDataTransaction, RowNode, RowNodeTransactionResult, SortModelItem } from '../types';
2
- import { type RowNodeServices } from './rowNode';
3
- import type { EventService } from './eventService';
4
2
  import type { RowModel } from './clientSideRowModel';
3
+ import type { EventService } from './eventService';
4
+ import { type RowNodeServices } from './rowNode';
5
5
  /** ag-grid compatible server-side request */
6
6
  export interface ServerSideGetRowsRequest {
7
7
  startRow: number;
@@ -41,19 +41,16 @@ export interface RemoteRowModelParams {
41
41
  * grouping. Stores rows per group path and lazily requests blocks.
42
42
  */
43
43
  export declare class ServerSideRowModel implements RowModel {
44
- private options;
45
44
  private eventService;
46
45
  private columns;
47
46
  private getSortModel;
48
47
  private getFilterModel;
49
- private rowHeightProvider;
50
48
  private rowNodeServices;
51
49
  private datasource;
52
50
  private stores;
53
51
  private rowNodeMap;
54
52
  private displayRows;
55
53
  private blockSize;
56
- private pureLoad;
57
54
  constructor(params: RemoteRowModelParams);
58
55
  getType(): string;
59
56
  setDatasource(datasource: ServerSideDatasource | null): void;
@@ -96,7 +93,6 @@ export declare class ServerSideRowModel implements RowModel {
96
93
  * Infinite Row Model — lazy-loads pages as the user scrolls.
97
94
  */
98
95
  export declare class InfiniteRowModel implements RowModel {
99
- private options;
100
96
  private eventService;
101
97
  private getSortModel;
102
98
  private getFilterModel;
@@ -105,7 +101,6 @@ export declare class InfiniteRowModel implements RowModel {
105
101
  private nodes;
106
102
  private rowNodeMap;
107
103
  private blockSize;
108
- private lastRow;
109
104
  private loading;
110
105
  constructor(params: RemoteRowModelParams);
111
106
  getType(): string;
@@ -135,14 +130,11 @@ export declare class InfiniteRowModel implements RowModel {
135
130
  * requesting them from the datasource.
136
131
  */
137
132
  export declare class ViewportRowModel implements RowModel {
138
- private options;
139
133
  private eventService;
140
134
  private rowNodeServices;
141
135
  private datasource;
142
136
  private nodes;
143
137
  private rowNodeMap;
144
- private firstRow;
145
- private lastRow;
146
138
  private loading;
147
139
  constructor(params: RemoteRowModelParams);
148
140
  getType(): string;
@@ -1,4 +1,4 @@
1
- import type { RowNode, Column } from '../types';
1
+ import type { Column, RowNode } from '../types';
2
2
  export interface RowNodeServices {
3
3
  selectNode: (node: RowNode, clearSelection: boolean) => void;
4
4
  deselectNode: (node: RowNode) => void;
@@ -30,7 +30,6 @@ export declare class RowNodeImpl implements RowNode {
30
30
  rowIndex: number | null;
31
31
  __displayIndex: number | undefined;
32
32
  private services;
33
- private _id;
34
33
  constructor(data: any, services: RowNodeServices, id?: string);
35
34
  /** true when this is a group node (row grouping) */
36
35
  get isGroup(): boolean;
@@ -1,4 +1,4 @@
1
- import type { AggFunc, Column, RowNode, GridApi } from '../types';
1
+ import type { AggFunc, Column, GridApi, RowNode } from '../types';
2
2
  export declare function getValueForColumn(column: Column, node: RowNode, api: GridApi): any;
3
3
  export declare function formatValue(column: Column, node: RowNode, api: GridApi): string | null;
4
4
  export declare function applyBuiltInFormatter(name: string, value: any, params?: {
@@ -0,0 +1,10 @@
1
+ import { Grid } from './grid';
2
+ import type { ColumnApi, GridApi, GridOptions } from './types';
3
+ /**
4
+ * Create a grid inside the given element. Mirrors ag-grid's createGrid().
5
+ */
6
+ export declare function createGrid(eGridDiv: HTMLElement, gridOptions: GridOptions): {
7
+ api: GridApi;
8
+ columnApi: ColumnApi;
9
+ grid: Grid;
10
+ };
@@ -1,15 +1,7 @@
1
+ export type { ChartData, ChartType } from '../core/gridHost';
2
+ import type { ChartData, ChartType, GridHost as Grid } from '../core/gridHost';
1
3
  import type { Column } from '../types';
2
- import type { Grid } from '../grid';
3
4
  import type { PopupService } from './popupService';
4
- export type ChartType = 'line' | 'area' | 'column' | 'bar' | 'pie' | 'scatter';
5
- interface ChartSeries {
6
- title: string;
7
- data: number[];
8
- }
9
- export interface ChartData {
10
- categories: string[];
11
- series: ChartSeries[];
12
- }
13
5
  export declare class ChartService {
14
6
  private grid;
15
7
  private popupService;
@@ -46,4 +38,3 @@ export declare class ChartService {
46
38
  private formatTick;
47
39
  private truncate;
48
40
  }
49
- export {};
@@ -1,5 +1,5 @@
1
+ import type { GridHost as Grid } from '../core/gridHost';
1
2
  import type { Column } from '../types';
2
- import type { Grid } from '../grid';
3
3
  import type { PopupService } from './popupService';
4
4
  export declare class ColumnMenuService {
5
5
  private grid;
@@ -1,17 +1,6 @@
1
- import type { Grid } from '../grid';
1
+ export type { MenuItem } from '../core/gridHost';
2
+ import type { GridHost as Grid } from '../core/gridHost';
2
3
  import type { PopupService } from './popupService';
3
- export interface MenuItem {
4
- name: string;
5
- label?: string;
6
- icon?: string;
7
- disabled?: boolean;
8
- checked?: boolean;
9
- subMenu?: MenuItem[];
10
- action?: () => void;
11
- separator?: boolean;
12
- cssClasses?: string[];
13
- shortcut?: string;
14
- }
15
4
  export declare class ContextMenuService {
16
5
  private grid;
17
6
  private popupService;
@@ -1,11 +1,7 @@
1
- import type { Column, RowNode } from '../types';
1
+ export type { FocusedCell } from '../core/gridHost';
2
2
  import type { EventService } from '../core/eventService';
3
- import type { Grid } from '../grid';
4
- export interface FocusedCell {
5
- rowIndex: number;
6
- column: Column;
7
- rowNode: RowNode;
8
- }
3
+ import type { FocusedCell, GridHost as Grid } from '../core/gridHost';
4
+ import type { Column, RowNode } from '../types';
9
5
  export declare class EditService {
10
6
  private grid;
11
7
  private eventService;
@@ -14,7 +10,6 @@ export declare class EditService {
14
10
  private fullRowEditors;
15
11
  private fullRowNode;
16
12
  private focusedCell;
17
- private suppressClickEdit;
18
13
  constructor(grid: Grid, eventService: EventService);
19
14
  getFocusedCell(): FocusedCell | null;
20
15
  setFocusedCell(rowIndex: number, column: Column): void;
@@ -1,6 +1,6 @@
1
- import type { ExportParams } from '../types';
2
- import type { Grid } from '../grid';
1
+ import type { GridHost as Grid } from '../core/gridHost';
3
2
  import { escapeHtml } from '../core/utils';
3
+ import type { ExportParams } from '../types';
4
4
  export declare class ExportService {
5
5
  private grid;
6
6
  private lastCopied;
@@ -8,6 +8,7 @@ export declare class ExportService {
8
8
  private getExportColumns;
9
9
  private getExportRows;
10
10
  private getCellValueForExport;
11
+ private groupValue;
11
12
  getDataAsCsv(params?: ExportParams): string;
12
13
  private csvRow;
13
14
  getDataAsExcel(params?: ExportParams): Blob;
@@ -1,5 +1,5 @@
1
+ import type { GridHost as Grid } from '../core/gridHost';
1
2
  import type { Column } from '../types';
2
- import type { Grid } from '../grid';
3
3
  import { PopupService } from './popupService';
4
4
  export declare class FilterGui {
5
5
  private grid;
@@ -1,18 +1,6 @@
1
+ export type { AdvancedFilterCondition, AdvancedFilterModel } from '../core/gridHost';
2
+ import type { AdvancedFilterModel, GridHost as Grid } from '../core/gridHost';
1
3
  import type { Column, FilterModelItem } from '../types';
2
- import type { Grid } from '../grid';
3
- export interface AdvancedFilterCondition {
4
- colId: string;
5
- type: string;
6
- filter?: any;
7
- filterTo?: any;
8
- dateFrom?: string;
9
- dateTo?: string;
10
- }
11
- export interface AdvancedFilterModel {
12
- filterType: 'advanced';
13
- operator: 'AND' | 'OR';
14
- conditions: AdvancedFilterCondition[];
15
- }
16
4
  export declare class FilterService {
17
5
  private grid;
18
6
  private filterModel;
@@ -1,4 +1,4 @@
1
- import type { Grid } from '../grid';
1
+ import type { GridHost as Grid } from '../core/gridHost';
2
2
  import type { PopupService } from './popupService';
3
3
  export declare class FindService {
4
4
  private grid;
@@ -1,5 +1,5 @@
1
+ import type { GridHost as Grid } from '../core/gridHost';
1
2
  import type { Column } from '../types';
2
- import type { Grid } from '../grid';
3
3
  import type { PopupService } from './popupService';
4
4
  /** Formula editor popup — edits a column's formula (calculated columns). */
5
5
  export declare class FormulaEditorService {
@@ -1,9 +1,5 @@
1
- import type { Grid } from '../grid';
1
+ import type { GridHost as Grid, NoteKey } from '../core/gridHost';
2
2
  import type { PopupService } from './popupService';
3
- interface NoteKey {
4
- rowNodeId: string;
5
- colId: string;
6
- }
7
3
  /**
8
4
  * Cell Notes (ag-grid Notes) — note markers in cell corners with an editor popup.
9
5
  * Notes can be declared per column (colDef.note) or set at runtime via the API.
@@ -1,4 +1,4 @@
1
- import type { Grid } from '../grid';
1
+ import type { GridHost as Grid } from '../core/gridHost';
2
2
  export declare class OverlayService {
3
3
  private grid;
4
4
  private eOverlayWrapper;
@@ -1,5 +1,5 @@
1
- import type { Grid } from '../grid';
2
1
  import type { EventService } from '../core/eventService';
2
+ import type { GridHost as Grid } from '../core/gridHost';
3
3
  export declare class PaginationService {
4
4
  private grid;
5
5
  private eventService;
@@ -10,7 +10,6 @@ export declare class PaginationService {
10
10
  private ePanel;
11
11
  private ePageInfo;
12
12
  private ePageInput;
13
- private ePageSizeSelect;
14
13
  private ePageSizeContainer;
15
14
  private eFromToContainer;
16
15
  constructor(grid: Grid, eventService: EventService);
@@ -1,4 +1,4 @@
1
- import type { Grid } from '../grid';
1
+ import type { GridHost as Grid } from '../core/gridHost';
2
2
  /** Generic popup used by filters, menus, find bar and chart panel. */
3
3
  export declare class PopupService {
4
4
  private grid;
@@ -1,12 +1,6 @@
1
- import type { Grid } from '../grid';
2
1
  import type { EventService } from '../core/eventService';
2
+ import type { GridHost as Grid, RangeState } from '../core/gridHost';
3
3
  import type { Column } from '../types';
4
- interface RangeState {
5
- rowStartIndex: number;
6
- rowEndIndex: number;
7
- colStartId: string;
8
- colEndId: string;
9
- }
10
4
  export declare class RangeSelectionService {
11
5
  private grid;
12
6
  private eventService;
@@ -40,4 +34,3 @@ export declare class RangeSelectionService {
40
34
  getCurrentRange(): RangeState | null;
41
35
  onGridKeyDown(event: KeyboardEvent): void;
42
36
  }
43
- export {};
@@ -1,5 +1,5 @@
1
- import type { Grid } from '../grid';
2
1
  import type { EventService } from '../core/eventService';
2
+ import type { GridHost as Grid } from '../core/gridHost';
3
3
  import type { RowNode } from '../types';
4
4
  /**
5
5
  * Row Dragging — managed (grid reorders the data) and unmanaged (app receives
@@ -1,4 +1,4 @@
1
- import type { Grid } from '../grid';
1
+ import type { GridHost as Grid } from '../core/gridHost';
2
2
  /** The "Row Groups" drop strip shown above the header (rowGroupPanelShow). */
3
3
  export declare class RowGroupPanel {
4
4
  private grid;
@@ -1,5 +1,5 @@
1
- import type { RowNode } from '../types';
2
1
  import type { EventService } from '../core/eventService';
2
+ import type { RowNode } from '../types';
3
3
  export declare class SelectionService {
4
4
  private eventService;
5
5
  private getOptions;