@genesislcap/grid-pro 14.162.0 → 14.162.2-alpha-37a3d46.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.
@@ -434,6 +434,15 @@
434
434
  }
435
435
  ]
436
436
  },
437
+ {
438
+ "kind": "field",
439
+ "name": "blockScrollingOnContextMenu",
440
+ "type": {
441
+ "text": "boolean"
442
+ },
443
+ "default": "false",
444
+ "description": "If true, will block scrolling when context menu is open and keep the grid in the same position without scrolling to new records"
445
+ },
437
446
  {
438
447
  "kind": "field",
439
448
  "name": "classNames",
@@ -556,6 +565,20 @@
556
565
  }
557
566
  ]
558
567
  },
568
+ {
569
+ "kind": "field",
570
+ "name": "selectedRowId",
571
+ "type": {
572
+ "text": "string"
573
+ }
574
+ },
575
+ {
576
+ "kind": "field",
577
+ "name": "selectedColId",
578
+ "type": {
579
+ "text": "string"
580
+ }
581
+ },
559
582
  {
560
583
  "kind": "field",
561
584
  "name": "gridOptionsConfig",
@@ -1150,6 +1173,15 @@
1150
1173
  "text": "string"
1151
1174
  },
1152
1175
  "fieldName": "theme"
1176
+ },
1177
+ {
1178
+ "name": "block-scrolling-on-context-menu",
1179
+ "type": {
1180
+ "text": "boolean"
1181
+ },
1182
+ "default": "false",
1183
+ "description": "If true, will block scrolling when context menu is open and keep the grid in the same position without scrolling to new records",
1184
+ "fieldName": "blockScrollingOnContextMenu"
1153
1185
  }
1154
1186
  ],
1155
1187
  "mixins": [
@@ -5977,6 +6009,11 @@
5977
6009
  }
5978
6010
  ]
5979
6011
  },
6012
+ {
6013
+ "kind": "method",
6014
+ "name": "setPreviouslySelectedCell",
6015
+ "privacy": "private"
6016
+ },
5980
6017
  {
5981
6018
  "kind": "method",
5982
6019
  "name": "applyTransaction",
@@ -7310,6 +7347,15 @@
7310
7347
  "module": "src/datasource/base.datasource.ts"
7311
7348
  }
7312
7349
  },
7350
+ {
7351
+ "kind": "method",
7352
+ "name": "setPreviouslySelectedCell",
7353
+ "privacy": "private",
7354
+ "inheritedFrom": {
7355
+ "name": "GridProBaseDatasource",
7356
+ "module": "src/datasource/base.datasource.ts"
7357
+ }
7358
+ },
7313
7359
  {
7314
7360
  "kind": "method",
7315
7361
  "name": "mapTransaction",
@@ -8688,6 +8734,15 @@
8688
8734
  "module": "src/datasource/base.datasource.ts"
8689
8735
  }
8690
8736
  },
8737
+ {
8738
+ "kind": "method",
8739
+ "name": "setPreviouslySelectedCell",
8740
+ "privacy": "private",
8741
+ "inheritedFrom": {
8742
+ "name": "GridProBaseDatasource",
8743
+ "module": "src/datasource/base.datasource.ts"
8744
+ }
8745
+ },
8691
8746
  {
8692
8747
  "kind": "method",
8693
8748
  "name": "mapTransaction",
@@ -10149,6 +10204,15 @@
10149
10204
  "module": "src/datasource/base.datasource.ts"
10150
10205
  }
10151
10206
  },
10207
+ {
10208
+ "kind": "method",
10209
+ "name": "setPreviouslySelectedCell",
10210
+ "privacy": "private",
10211
+ "inheritedFrom": {
10212
+ "name": "GridProBaseDatasource",
10213
+ "module": "src/datasource/base.datasource.ts"
10214
+ }
10215
+ },
10152
10216
  {
10153
10217
  "kind": "method",
10154
10218
  "name": "mapTransaction",
@@ -1,4 +1,4 @@
1
- import type { ColDef, ColumnState, GridOptions, RowDataTransaction, ServerSideTransaction } from '@ag-grid-community/core';
1
+ import { ColDef, ColumnState, GridOptions, RowDataTransaction, ServerSideTransaction } from '@ag-grid-community/core';
2
2
  import { FieldMetadata } from '@genesislcap/foundation-comms';
3
3
  import { Connect } from '@genesislcap/foundation-comms';
4
4
  import { FoundationElement } from '@microsoft/fast-foundation';
@@ -59,6 +59,7 @@ export declare class GridProBaseDatasource extends GenesisGridDatasourceElement
59
59
  protected applyAllAgTransactions(): void;
60
60
  private flashAddedCells;
61
61
  private applyMappedAgTransaction;
62
+ private setPreviouslySelectedCell;
62
63
  protected applyTransaction(agTransaction: RowDataTransaction): any;
63
64
  protected applyTransactionAsync(agTransaction: RowDataTransaction, callback?: (res: any) => void): void;
64
65
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"base.datasource.d.ts","sourceRoot":"","sources":["../../../src/datasource/base.datasource.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,MAAM,EACN,WAAW,EACX,WAAW,EACX,kBAAkB,EAClB,qBAAqB,EACtB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAEL,aAAa,EAGd,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,OAAO,EAAE,MAAM,+BAA+B,CAAC;AAExD,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAE/D,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAStC,qBAAa,4BAA6B,SAAQ,iBAAiB;IACxD,OAAO,EAAG,OAAO,CAAC;IAEf,mBAAmB,EAAE,WAAW,CAAC;IACjC,oBAAoB,EAAE,WAAW,EAAE,CAAC;IAEhD;;OAEG;IACS,aAAa,EAAE,QAAQ,CAAC;IAE9B,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACgC,UAAU,UAAS;IACvC,OAAO,EAAE,MAAM,CAAmC;IAClD,OAAO,EAAE,MAAM,CAAoC;IAC/B,UAAU,UAAS;IACvC,OAAO,EAAE,MAAM,CAAC;IACX,YAAY,EAAE,MAAM,CAAC;IAChC,OAAO,UAAS;IAE3C;;;;;OAKG;IAC4B,SAAS,MAAC;IAMzC,SAAS,KAAK,KAAK,IAAI,MAAM,CAI5B;IAED;;;OAGG;IACH,SAAS,KAAK,eAAe,IAAI,OAAO,CAMvC;IAED,SAAS,KAAK,0BAA0B,IAAI,MAAM,CAIjD;IAED,SAAS,CAAC,eAAe,UAAS;IAElC,SAAS,KAAK,MAAM,IAAI,OAAO,GAAG,IAAI,CAErC;CACF;AAED;;;GAGG;AACH,oBAAY,aAAa;IACvB,GAAG,QAAQ;IACX,MAAM,WAAW;IACjB,MAAM,WAAW;CAClB;AAED,qBAAa,qBAAsB,SAAQ,4BAA4B;IACrE,SAAS,CAAC,mBAAmB,UAAS;IAEtC,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,CAAa;IAEtC,SAAS,CAAC,aAAa,EAAE,kBAAkB,GAAG,qBAAqB,CAIjE;IAEF,SAAS,CAAC,aAAa,EAAE,MAAM,CAAC;IAChC,SAAS,CAAC,kBAAkB,EAAE,MAAM,CAAC;IAErC,SAAS,CAAC,8BAA8B,CACtC,cAAc,EAAE,aAAa,EAAE,EAC/B,0BAA0B,EAAE,QAAQ,GACnC,MAAM,EAAE;IAsEX,SAAS,CAAC,mBAAmB,CAAC,YAAY,EAAE,GAAG,EAAE;IAgBjD,SAAS,CAAC,mBAAmB,CAAC,WAAW,EAAE,GAAG,EAAE;IAgBhD,SAAS,CAAC,mBAAmB,CAAC,WAAW,EAAE,GAAG,EAAE;IAuBhD,SAAS,CAAC,sBAAsB;IAsChC,OAAO,CAAC,eAAe;IAMvB,OAAO,CAAC,wBAAwB;IAkBhC,SAAS,CAAC,gBAAgB,CAAC,aAAa,EAAE,kBAAkB,GAAG,GAAG;IAIlE,SAAS,CAAC,qBAAqB,CAAC,aAAa,EAAE,kBAAkB,EAAE,QAAQ,CAAC,EAAE,CAAC,GAAG,KAAA,KAAK,IAAI;IAI3F;;;;;OAKG;IACH,OAAO,CAAC,cAAc;CAwBvB;AAED,qBAAa,oBAAoB;IAC/B,SAAS,CAAC,KAAK,EAAE,MAAM,CAAC;IACxB,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,CAAa;CACvC"}
1
+ {"version":3,"file":"base.datasource.d.ts","sourceRoot":"","sources":["../../../src/datasource/base.datasource.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,MAAM,EACN,WAAW,EAEX,WAAW,EACX,kBAAkB,EAClB,qBAAqB,EACtB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAEL,aAAa,EAGd,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,OAAO,EAAE,MAAM,+BAA+B,CAAC;AAExD,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAE/D,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAStC,qBAAa,4BAA6B,SAAQ,iBAAiB;IACxD,OAAO,EAAG,OAAO,CAAC;IAEf,mBAAmB,EAAE,WAAW,CAAC;IACjC,oBAAoB,EAAE,WAAW,EAAE,CAAC;IAEhD;;OAEG;IACS,aAAa,EAAE,QAAQ,CAAC;IAE9B,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACgC,UAAU,UAAS;IACvC,OAAO,EAAE,MAAM,CAAmC;IAClD,OAAO,EAAE,MAAM,CAAoC;IAC/B,UAAU,UAAS;IACvC,OAAO,EAAE,MAAM,CAAC;IACX,YAAY,EAAE,MAAM,CAAC;IAChC,OAAO,UAAS;IAE3C;;;;;OAKG;IAC4B,SAAS,MAAC;IAMzC,SAAS,KAAK,KAAK,IAAI,MAAM,CAI5B;IAED;;;OAGG;IACH,SAAS,KAAK,eAAe,IAAI,OAAO,CAMvC;IAED,SAAS,KAAK,0BAA0B,IAAI,MAAM,CAIjD;IAED,SAAS,CAAC,eAAe,UAAS;IAElC,SAAS,KAAK,MAAM,IAAI,OAAO,GAAG,IAAI,CAErC;CACF;AAED;;;GAGG;AACH,oBAAY,aAAa;IACvB,GAAG,QAAQ;IACX,MAAM,WAAW;IACjB,MAAM,WAAW;CAClB;AAED,qBAAa,qBAAsB,SAAQ,4BAA4B;IACrE,SAAS,CAAC,mBAAmB,UAAS;IAEtC,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,CAAa;IAEtC,SAAS,CAAC,aAAa,EAAE,kBAAkB,GAAG,qBAAqB,CAIjE;IAEF,SAAS,CAAC,aAAa,EAAE,MAAM,CAAC;IAChC,SAAS,CAAC,kBAAkB,EAAE,MAAM,CAAC;IAErC,SAAS,CAAC,8BAA8B,CACtC,cAAc,EAAE,aAAa,EAAE,EAC/B,0BAA0B,EAAE,QAAQ,GACnC,MAAM,EAAE;IAsEX,SAAS,CAAC,mBAAmB,CAAC,YAAY,EAAE,GAAG,EAAE;IAgBjD,SAAS,CAAC,mBAAmB,CAAC,WAAW,EAAE,GAAG,EAAE;IAgBhD,SAAS,CAAC,mBAAmB,CAAC,WAAW,EAAE,GAAG,EAAE;IAuBhD,SAAS,CAAC,sBAAsB;IAsChC,OAAO,CAAC,eAAe;IAMvB,OAAO,CAAC,wBAAwB;IAqChC,OAAO,CAAC,yBAAyB;IAejC,SAAS,CAAC,gBAAgB,CAAC,aAAa,EAAE,kBAAkB,GAAG,GAAG;IAIlE,SAAS,CAAC,qBAAqB,CAAC,aAAa,EAAE,kBAAkB,EAAE,QAAQ,CAAC,EAAE,CAAC,GAAG,KAAA,KAAK,IAAI;IAI3F;;;;;OAKG;IACH,OAAO,CAAC,cAAc;CAwBvB;AAED,qBAAa,oBAAoB;IAC/B,SAAS,CAAC,KAAK,EAAE,MAAM,CAAC;IACxB,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,CAAa;CACvC"}
@@ -63,20 +63,7 @@ declare const GridPro_base: (new (...args: any[]) => {
63
63
  readonly scrollHeight: number;
64
64
  scrollLeft: number;
65
65
  scrollTop: number;
66
- readonly scrollWidth: number; /**
67
- * Injectable config that allows to change grid options on an app level basis
68
- * To modify options, register instance of the config in DOM container that is
69
- * above the grid or on the top level of the application, so it applies to all grids.
70
- *
71
- * @example
72
- * ```
73
- * DI.getOrCreateDOMContainer().register([
74
- * Registration.instance<GridOptionsConfig>(GridOptionsConfig, {
75
- * headerHeight: 50,
76
- * }),
77
- * ]);
78
- * ```
79
- */
66
+ readonly scrollWidth: number;
80
67
  readonly shadowRoot: ShadowRoot;
81
68
  slot: string;
82
69
  readonly tagName: string;
@@ -136,7 +123,11 @@ declare const GridPro_base: (new (...args: any[]) => {
136
123
  readonly nodeType: number;
137
124
  nodeValue: string;
138
125
  readonly parentElement: HTMLElement;
139
- readonly parentNode: ParentNode;
126
+ readonly parentNode: ParentNode; /**
127
+ * Because we try and resize the grid to fit using callbacks on events, this will cause
128
+ * a stack overflow of calls to resize, so we need to debounce it.
129
+ * @internal
130
+ */
140
131
  readonly previousSibling: ChildNode;
141
132
  textContent: string;
142
133
  appendChild<T_1 extends Node>(node: T_1): T_1;
@@ -162,7 +153,12 @@ declare const GridPro_base: (new (...args: any[]) => {
162
153
  readonly DOCUMENT_POSITION_CONTAINS: number;
163
154
  readonly DOCUMENT_POSITION_DISCONNECTED: number;
164
155
  readonly DOCUMENT_POSITION_FOLLOWING: number;
165
- readonly DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC: number;
156
+ readonly DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC: number; /**
157
+ * Gets the saved grid ColumnState[] from storage
158
+ * @remarks This is used to restore the grid state when the grid is rehydrated
159
+ * @privateRemarks Not using `columnApi.get|setColumnState()` for these flows as it doesn't work setting new columnDefs vs different ordering.
160
+ * @public
161
+ */
166
162
  readonly DOCUMENT_POSITION_PRECEDING: number;
167
163
  readonly DOCUMENT_TYPE_NODE: number;
168
164
  readonly ELEMENT_NODE: number;
@@ -281,7 +277,15 @@ declare const GridPro_base: (new (...args: any[]) => {
281
277
  onkeyup: (this: GlobalEventHandlers, ev: KeyboardEvent) => any;
282
278
  onload: (this: GlobalEventHandlers, ev: Event) => any;
283
279
  onloadeddata: (this: GlobalEventHandlers, ev: Event) => any;
284
- onloadedmetadata: (this: GlobalEventHandlers, ev: Event) => any;
280
+ onloadedmetadata: (this: GlobalEventHandlers, ev: Event) => any; /**
281
+ * Will merge templated column definitions with `columnDefs` plus localStorage's column state or `deferredColumnStates`.
282
+ * @public
283
+ * @remarks This will favor the column state from the browser's local storage over the `deferredColumnStates` property on the `grid-pro-genesis-datasource` element.
284
+ * @param columnDefs - The column definitions to apply to the grid.
285
+ * @param deferredColumnDefsOrState - If true, will merge the column definitions with the saved column state or the `deferredColumnStates` property
286
+ * on the `grid-pro-genesis-datasource` element. Defaults to false but `grid-pro-genesis-datasource` will set this to true.
287
+ * @returns The merged column definitions.
288
+ */
285
289
  onloadstart: (this: GlobalEventHandlers, ev: Event) => any;
286
290
  onlostpointercapture: (this: GlobalEventHandlers, ev: PointerEvent) => any;
287
291
  onmousedown: (this: GlobalEventHandlers, ev: MouseEvent) => any;
@@ -417,6 +421,12 @@ export declare class GridPro extends GridPro_base {
417
421
  rowHeight: number;
418
422
  theme: string;
419
423
  themeChanged(oldValue: string, newValue: string): void;
424
+ /**
425
+ * If true, will block scrolling when context menu is open and keep the grid in the same position without scrolling to new records
426
+ * @remarks Defaults to false
427
+ * @alpha
428
+ */
429
+ blockScrollingOnContextMenu: boolean;
420
430
  classNames: string;
421
431
  agGrid: Grid;
422
432
  gridSlot: HTMLSlotElement;
@@ -437,6 +447,8 @@ export declare class GridPro extends GridPro_base {
437
447
  setFilterModel(value: {
438
448
  [key: string]: any;
439
449
  }): Promise<void>;
450
+ selectedRowId: string;
451
+ selectedColId: string;
440
452
  /**
441
453
  * Injectable config that allows to change grid options on an app level basis
442
454
  * To modify options, register instance of the config in DOM container that is
@@ -1 +1 @@
1
- {"version":3,"file":"grid-pro.d.ts","sourceRoot":"","sources":["../../src/grid-pro.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"grid-pro.d.ts","sourceRoot":"","sources":["../../src/grid-pro.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,8 @@
1
1
  import { __decorate } from "tslib";
2
+ import { Events, } from '@ag-grid-community/core';
2
3
  import { DatasourceDefaults, FieldTypeEnum, logger, } from '@genesislcap/foundation-comms';
3
4
  import { Connect } from '@genesislcap/foundation-comms';
4
- import { attr, observable } from '@microsoft/fast-element';
5
+ import { attr, DOM, observable } from '@microsoft/fast-element';
5
6
  import { FoundationElement } from '@microsoft/fast-foundation';
6
7
  import { dateValueFormatter, dateTimeValueFormatter, getColumnType, getFilterByFieldType, } from '../grid-pro.definitions';
7
8
  import { GridProRendererTypes } from '../grid-pro.types';
@@ -232,12 +233,35 @@ export class GridProBaseDatasource extends GenesisGridDatasourceElement {
232
233
  this.applyTransactionAsync(this.mapTransaction(agTransaction, [operation]), (changedNodes) => {
233
234
  this.flashAddedCells(changedNodes.add);
234
235
  });
236
+ if (this.agGrid.blockScrollingOnContextMenu) {
237
+ const listenerEvent = (e) => {
238
+ e.results.forEach((result) => {
239
+ if (result.add.length || result.remove.length) {
240
+ this.setPreviouslySelectedCell();
241
+ }
242
+ });
243
+ };
244
+ this.agGrid.gridApi.addEventListener(Events.EVENT_ASYNC_TRANSACTIONS_FLUSHED, listenerEvent);
245
+ }
235
246
  }
236
247
  else {
237
248
  const changedNodes = this.applyTransaction(this.mapTransaction(agTransaction, [operation]));
238
249
  this.flashAddedCells(changedNodes.add);
250
+ if (this.agGrid.blockScrollingOnContextMenu) {
251
+ this.setPreviouslySelectedCell();
252
+ }
239
253
  }
240
254
  }
255
+ setPreviouslySelectedCell() {
256
+ const previouslySelectedRowNode = this.agGrid.gridApi.getRowNode(this.agGrid.selectedRowId);
257
+ const previouslySelectedColId = this.agGrid.selectedColId;
258
+ if (!previouslySelectedRowNode || !previouslySelectedColId)
259
+ return;
260
+ DOM.queueUpdate(() => {
261
+ this.agGrid.gridApi.setFocusedCell(previouslySelectedRowNode.rowIndex, previouslySelectedColId);
262
+ this.agGrid.gridApi.ensureIndexVisible(previouslySelectedRowNode.rowIndex, 'middle');
263
+ });
264
+ }
241
265
  applyTransaction(agTransaction) {
242
266
  throw new Error('Method not implemented.');
243
267
  }
@@ -110,6 +110,12 @@ export class GridPro extends LifecycleMixin(FoundationElement) {
110
110
  this.gridFontFace = defaultAgGridFontFace;
111
111
  this.columnComponentName = 'grid-pro-column';
112
112
  this.theme = AgGridTheme.alpine;
113
+ /**
114
+ * If true, will block scrolling when context menu is open and keep the grid in the same position without scrolling to new records
115
+ * @remarks Defaults to false
116
+ * @alpha
117
+ */
118
+ this.blockScrollingOnContextMenu = false;
113
119
  this.rehydrationAttempted = false;
114
120
  this.gridEventsQueue = [];
115
121
  this._filterConfig = undefined;
@@ -146,18 +152,15 @@ export class GridPro extends LifecycleMixin(FoundationElement) {
146
152
  });
147
153
  }
148
154
  this.rehydrationAttempted = false;
149
- const shouldRunConnect = this.shouldRunConnect;
150
- DOM.queueUpdate(() => {
151
- if (!shouldRunConnect)
152
- return;
153
- ComponentUtil.ALL_PROPERTIES.forEach((key) => {
154
- Object.defineProperty(this, key, {
155
- set: (v) => {
156
- this.agAttributeChangedCallback(convertToKebabCase(key), undefined, v);
157
- },
158
- enumerable: true,
159
- configurable: true,
160
- });
155
+ if (!this.shouldRunConnect)
156
+ return;
157
+ ComponentUtil.ALL_PROPERTIES.forEach((key) => {
158
+ Object.defineProperty(this, key, {
159
+ set: (v) => {
160
+ this.agAttributeChangedCallback(convertToKebabCase(key), undefined, v);
161
+ },
162
+ enumerable: true,
163
+ configurable: true,
161
164
  });
162
165
  });
163
166
  }
@@ -297,7 +300,7 @@ export class GridPro extends LifecycleMixin(FoundationElement) {
297
300
  return;
298
301
  this.agAttributes[attrName] = attribute.value;
299
302
  });
300
- const { columnDefs, components, defaultColDef, onGridReady, onFilterChanged } = options, rest = __rest(options, ["columnDefs", "components", "defaultColDef", "onGridReady", "onFilterChanged"]);
303
+ const { columnDefs, components, defaultColDef, onCellContextMenu, onGridReady, onFilterChanged } = options, rest = __rest(options, ["columnDefs", "components", "defaultColDef", "onCellContextMenu", "onGridReady", "onFilterChanged"]);
301
304
  const derivedOptions = Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, this.gridOptionsConfig), { defaultColDef: Object.assign({ enableCellChangeFlash: this.enableCellFlashing, filter: true, resizable: true, sortable: true }, defaultColDef), components: this.combineAllGridComponents(components), suppressDragLeaveHidesColumns: true }), this.eventsAndCallbacks), { onGridReady: (event) => {
302
305
  var _a, _b;
303
306
  this.gridApi = (_a = options.api) !== null && _a !== void 0 ? _a : event.api;
@@ -321,7 +324,20 @@ export class GridPro extends LifecycleMixin(FoundationElement) {
321
324
  if (onFilterChanged) {
322
325
  onFilterChanged(filterChangedEvent);
323
326
  }
324
- }, onGridSizeChanged: gridOnChangeCallback, onSortChanged: gridOnChangeCallback }), rest);
327
+ }, onGridSizeChanged: gridOnChangeCallback, onSortChanged: gridOnChangeCallback, onCellContextMenu: (event) => {
328
+ if (this.blockScrollingOnContextMenu) {
329
+ debugger;
330
+ this.selectedRowId = event.node.id;
331
+ this.selectedColId = event.colDef.colId;
332
+ this.addEventListener('click', (e) => {
333
+ this.selectedRowId = undefined;
334
+ this.selectedColId = undefined;
335
+ }, { once: true });
336
+ }
337
+ if (onCellContextMenu) {
338
+ onCellContextMenu(event);
339
+ }
340
+ } }), rest);
325
341
  if (this.gridProDatasource) {
326
342
  derivedOptions.columnDefs = columnDefs;
327
343
  this.initGridOptions(derivedOptions, globalEventListener);
@@ -558,6 +574,9 @@ __decorate([
558
574
  __decorate([
559
575
  attr
560
576
  ], GridPro.prototype, "theme", void 0);
577
+ __decorate([
578
+ attr({ attribute: 'block-scrolling-on-context-menu', mode: 'boolean' })
579
+ ], GridPro.prototype, "blockScrollingOnContextMenu", void 0);
561
580
  __decorate([
562
581
  observable
563
582
  ], GridPro.prototype, "classNames", void 0);
@@ -9034,6 +9034,66 @@
9034
9034
  "isProtected": false,
9035
9035
  "isAbstract": false
9036
9036
  },
9037
+ {
9038
+ "kind": "Property",
9039
+ "canonicalReference": "@genesislcap/grid-pro!GridPro#selectedColId:member",
9040
+ "docComment": "",
9041
+ "excerptTokens": [
9042
+ {
9043
+ "kind": "Content",
9044
+ "text": "selectedColId: "
9045
+ },
9046
+ {
9047
+ "kind": "Content",
9048
+ "text": "string"
9049
+ },
9050
+ {
9051
+ "kind": "Content",
9052
+ "text": ";"
9053
+ }
9054
+ ],
9055
+ "isReadonly": false,
9056
+ "isOptional": false,
9057
+ "releaseTag": "Public",
9058
+ "name": "selectedColId",
9059
+ "propertyTypeTokenRange": {
9060
+ "startIndex": 1,
9061
+ "endIndex": 2
9062
+ },
9063
+ "isStatic": false,
9064
+ "isProtected": false,
9065
+ "isAbstract": false
9066
+ },
9067
+ {
9068
+ "kind": "Property",
9069
+ "canonicalReference": "@genesislcap/grid-pro!GridPro#selectedRowId:member",
9070
+ "docComment": "",
9071
+ "excerptTokens": [
9072
+ {
9073
+ "kind": "Content",
9074
+ "text": "selectedRowId: "
9075
+ },
9076
+ {
9077
+ "kind": "Content",
9078
+ "text": "string"
9079
+ },
9080
+ {
9081
+ "kind": "Content",
9082
+ "text": ";"
9083
+ }
9084
+ ],
9085
+ "isReadonly": false,
9086
+ "isOptional": false,
9087
+ "releaseTag": "Public",
9088
+ "name": "selectedRowId",
9089
+ "propertyTypeTokenRange": {
9090
+ "startIndex": 1,
9091
+ "endIndex": 2
9092
+ },
9093
+ "isStatic": false,
9094
+ "isProtected": false,
9095
+ "isAbstract": false
9096
+ },
9037
9097
  {
9038
9098
  "kind": "Method",
9039
9099
  "canonicalReference": "@genesislcap/grid-pro!GridPro#setFilterModel:member(1)",
@@ -39,9 +39,9 @@ import { LayoutCacheContainer } from '@genesislcap/foundation-utils';
39
39
  import { Logger } from '@genesislcap/foundation-logger';
40
40
  import { MetadataDetail } from '@genesislcap/foundation-comms';
41
41
  import { OverrideFoundationElementDefinition } from '@microsoft/fast-foundation';
42
- import type { RowDataTransaction } from '@ag-grid-community/core';
42
+ import { RowDataTransaction } from '@ag-grid-community/core';
43
43
  import type { RowNodeTransaction } from '@ag-grid-community/core';
44
- import type { ServerSideTransaction } from '@ag-grid-community/core';
44
+ import { ServerSideTransaction } from '@ag-grid-community/core';
45
45
  import type { ServerSideTransactionResult } from '@ag-grid-community/core';
46
46
  import { Session } from '@genesislcap/foundation-comms';
47
47
  import { SocketObservable } from '@genesislcap/foundation-comms';
@@ -1227,6 +1227,12 @@ export declare class GridPro extends GridPro_base {
1227
1227
  rowHeight: number;
1228
1228
  theme: string;
1229
1229
  themeChanged(oldValue: string, newValue: string): void;
1230
+ /**
1231
+ * If true, will block scrolling when context menu is open and keep the grid in the same position without scrolling to new records
1232
+ * @remarks Defaults to false
1233
+ * @alpha
1234
+ */
1235
+ blockScrollingOnContextMenu: boolean;
1230
1236
  classNames: string;
1231
1237
  agGrid: Grid;
1232
1238
  gridSlot: HTMLSlotElement;
@@ -1247,6 +1253,8 @@ export declare class GridPro extends GridPro_base {
1247
1253
  setFilterModel(value: {
1248
1254
  [key: string]: any;
1249
1255
  }): Promise<void>;
1256
+ selectedRowId: string;
1257
+ selectedColId: string;
1250
1258
  /**
1251
1259
  * Injectable config that allows to change grid options on an app level basis
1252
1260
  * To modify options, register instance of the config in DOM container that is
@@ -1384,20 +1392,7 @@ declare const GridPro_base: (new (...args: any[]) => {
1384
1392
  readonly scrollHeight: number;
1385
1393
  scrollLeft: number;
1386
1394
  scrollTop: number;
1387
- readonly scrollWidth: number; /**
1388
- * Injectable config that allows to change grid options on an app level basis
1389
- * To modify options, register instance of the config in DOM container that is
1390
- * above the grid or on the top level of the application, so it applies to all grids.
1391
- *
1392
- * @example
1393
- * ```
1394
- * DI.getOrCreateDOMContainer().register([
1395
- * Registration.instance<GridOptionsConfig>(GridOptionsConfig, {
1396
- * headerHeight: 50,
1397
- * }),
1398
- * ]);
1399
- * ```
1400
- */
1395
+ readonly scrollWidth: number;
1401
1396
  readonly shadowRoot: ShadowRoot;
1402
1397
  slot: string;
1403
1398
  readonly tagName: string;
@@ -1457,7 +1452,11 @@ declare const GridPro_base: (new (...args: any[]) => {
1457
1452
  readonly nodeType: number;
1458
1453
  nodeValue: string;
1459
1454
  readonly parentElement: HTMLElement;
1460
- readonly parentNode: ParentNode;
1455
+ readonly parentNode: ParentNode; /**
1456
+ * Because we try and resize the grid to fit using callbacks on events, this will cause
1457
+ * a stack overflow of calls to resize, so we need to debounce it.
1458
+ * @internal
1459
+ */
1461
1460
  readonly previousSibling: ChildNode;
1462
1461
  textContent: string;
1463
1462
  appendChild<T_1 extends Node>(node: T_1): T_1;
@@ -1483,7 +1482,12 @@ declare const GridPro_base: (new (...args: any[]) => {
1483
1482
  readonly DOCUMENT_POSITION_CONTAINS: number;
1484
1483
  readonly DOCUMENT_POSITION_DISCONNECTED: number;
1485
1484
  readonly DOCUMENT_POSITION_FOLLOWING: number;
1486
- readonly DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC: number;
1485
+ readonly DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC: number; /**
1486
+ * Gets the saved grid ColumnState[] from storage
1487
+ * @remarks This is used to restore the grid state when the grid is rehydrated
1488
+ * @privateRemarks Not using `columnApi.get|setColumnState()` for these flows as it doesn't work setting new columnDefs vs different ordering.
1489
+ * @public
1490
+ */
1487
1491
  readonly DOCUMENT_POSITION_PRECEDING: number;
1488
1492
  readonly DOCUMENT_TYPE_NODE: number;
1489
1493
  readonly ELEMENT_NODE: number;
@@ -1602,7 +1606,15 @@ declare const GridPro_base: (new (...args: any[]) => {
1602
1606
  onkeyup: (this: GlobalEventHandlers, ev: KeyboardEvent) => any;
1603
1607
  onload: (this: GlobalEventHandlers, ev: Event) => any;
1604
1608
  onloadeddata: (this: GlobalEventHandlers, ev: Event) => any;
1605
- onloadedmetadata: (this: GlobalEventHandlers, ev: Event) => any;
1609
+ onloadedmetadata: (this: GlobalEventHandlers, ev: Event) => any; /**
1610
+ * Will merge templated column definitions with `columnDefs` plus localStorage's column state or `deferredColumnStates`.
1611
+ * @public
1612
+ * @remarks This will favor the column state from the browser's local storage over the `deferredColumnStates` property on the `grid-pro-genesis-datasource` element.
1613
+ * @param columnDefs - The column definitions to apply to the grid.
1614
+ * @param deferredColumnDefsOrState - If true, will merge the column definitions with the saved column state or the `deferredColumnStates` property
1615
+ * on the `grid-pro-genesis-datasource` element. Defaults to false but `grid-pro-genesis-datasource` will set this to true.
1616
+ * @returns The merged column definitions.
1617
+ */
1606
1618
  onloadstart: (this: GlobalEventHandlers, ev: Event) => any;
1607
1619
  onlostpointercapture: (this: GlobalEventHandlers, ev: PointerEvent) => any;
1608
1620
  onmousedown: (this: GlobalEventHandlers, ev: MouseEvent) => any;
@@ -1676,6 +1688,7 @@ declare class GridProBaseDatasource extends GenesisGridDatasourceElement {
1676
1688
  protected applyAllAgTransactions(): void;
1677
1689
  private flashAddedCells;
1678
1690
  private applyMappedAgTransaction;
1691
+ private setPreviouslySelectedCell;
1679
1692
  protected applyTransaction(agTransaction: RowDataTransaction): any;
1680
1693
  protected applyTransactionAsync(agTransaction: RowDataTransaction, callback?: (res: any) => void): void;
1681
1694
  /**
@@ -59,6 +59,8 @@ Grid Pro is a Web Component wrapper around the AG Grid Community library.
59
59
  | [persistColumnStateKey](./grid-pro.gridpro.persistcolumnstatekey.md) | | string | The key to use for persisting the column state in local broswer or KV storage. |
60
60
  | [persistFilterModelKey](./grid-pro.gridpro.persistfiltermodelkey.md) | | string | The key to use for persisting the filter model in local browser or KV storage. |
61
61
  | [rowHeight](./grid-pro.gridpro.rowheight.md) | | number | |
62
+ | [selectedColId](./grid-pro.gridpro.selectedcolid.md) | | string | |
63
+ | [selectedRowId](./grid-pro.gridpro.selectedrowid.md) | | string | |
62
64
  | [statePersistence](./grid-pro.gridpro.statepersistence.md) | | [StatePersistence](./grid-pro.statepersistence.md) | |
63
65
  | [theme](./grid-pro.gridpro.theme.md) | | string | |
64
66
 
@@ -0,0 +1,11 @@
1
+ <!-- Do not edit this file. It is automatically generated by API Documenter. -->
2
+
3
+ [Home](./index.md) &gt; [@genesislcap/grid-pro](./grid-pro.md) &gt; [GridPro](./grid-pro.gridpro.md) &gt; [selectedColId](./grid-pro.gridpro.selectedcolid.md)
4
+
5
+ ## GridPro.selectedColId property
6
+
7
+ **Signature:**
8
+
9
+ ```typescript
10
+ selectedColId: string;
11
+ ```
@@ -0,0 +1,11 @@
1
+ <!-- Do not edit this file. It is automatically generated by API Documenter. -->
2
+
3
+ [Home](./index.md) &gt; [@genesislcap/grid-pro](./grid-pro.md) &gt; [GridPro](./grid-pro.gridpro.md) &gt; [selectedRowId](./grid-pro.gridpro.selectedrowid.md)
4
+
5
+ ## GridPro.selectedRowId property
6
+
7
+ **Signature:**
8
+
9
+ ```typescript
10
+ selectedRowId: string;
11
+ ```
@@ -45,9 +45,9 @@ import { LayoutCacheContainer } from '@genesislcap/foundation-utils';
45
45
  import { Logger } from '@genesislcap/foundation-logger';
46
46
  import { MetadataDetail } from '@genesislcap/foundation-comms';
47
47
  import { OverrideFoundationElementDefinition } from '@microsoft/fast-foundation';
48
- import type { RowDataTransaction } from '@ag-grid-community/core';
48
+ import { RowDataTransaction } from '@ag-grid-community/core';
49
49
  import type { RowNodeTransaction } from '@ag-grid-community/core';
50
- import type { ServerSideTransaction } from '@ag-grid-community/core';
50
+ import { ServerSideTransaction } from '@ag-grid-community/core';
51
51
  import type { ServerSideTransactionResult } from '@ag-grid-community/core';
52
52
  import { Session } from '@genesislcap/foundation-comms';
53
53
  import { SocketObservable } from '@genesislcap/foundation-comms';
@@ -804,6 +804,8 @@ export class GridPro extends GridPro_base {
804
804
  asyncUpdate: boolean;
805
805
  // (undocumented)
806
806
  autoCellRendererByType: boolean;
807
+ // @alpha
808
+ blockScrollingOnContextMenu: boolean;
807
809
  // (undocumented)
808
810
  classNames: string;
809
811
  // (undocumented)
@@ -865,6 +867,10 @@ export class GridPro extends GridPro_base {
865
867
  // (undocumented)
866
868
  rowHeight: number;
867
869
  // (undocumented)
870
+ selectedColId: string;
871
+ // (undocumented)
872
+ selectedRowId: string;
873
+ // (undocumented)
868
874
  setFilterModel(value: {
869
875
  [key: string]: any;
870
876
  }): Promise<void>;
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@genesislcap/grid-pro",
3
3
  "description": "Genesis Foundation AG Grid",
4
- "version": "14.162.0",
4
+ "version": "14.162.2-alpha-37a3d46.0",
5
5
  "sideEffects": false,
6
6
  "license": "SEE LICENSE IN license.txt",
7
7
  "main": "dist/esm/index.js",
@@ -30,20 +30,20 @@
30
30
  "test:debug": "genx test --debug"
31
31
  },
32
32
  "devDependencies": {
33
- "@genesislcap/foundation-testing": "14.162.0",
34
- "@genesislcap/genx": "14.162.0",
35
- "@genesislcap/rollup-builder": "14.162.0",
36
- "@genesislcap/ts-builder": "14.162.0",
37
- "@genesislcap/uvu-playwright-builder": "14.162.0",
38
- "@genesislcap/vite-builder": "14.162.0",
39
- "@genesislcap/webpack-builder": "14.162.0",
33
+ "@genesislcap/foundation-testing": "14.162.2-alpha-37a3d46.0",
34
+ "@genesislcap/genx": "14.162.2-alpha-37a3d46.0",
35
+ "@genesislcap/rollup-builder": "14.162.2-alpha-37a3d46.0",
36
+ "@genesislcap/ts-builder": "14.162.2-alpha-37a3d46.0",
37
+ "@genesislcap/uvu-playwright-builder": "14.162.2-alpha-37a3d46.0",
38
+ "@genesislcap/vite-builder": "14.162.2-alpha-37a3d46.0",
39
+ "@genesislcap/webpack-builder": "14.162.2-alpha-37a3d46.0",
40
40
  "rimraf": "^3.0.2"
41
41
  },
42
42
  "dependencies": {
43
- "@genesislcap/foundation-comms": "14.162.0",
44
- "@genesislcap/foundation-logger": "14.162.0",
45
- "@genesislcap/foundation-ui": "14.162.0",
46
- "@genesislcap/foundation-utils": "14.162.0",
43
+ "@genesislcap/foundation-comms": "14.162.2-alpha-37a3d46.0",
44
+ "@genesislcap/foundation-logger": "14.162.2-alpha-37a3d46.0",
45
+ "@genesislcap/foundation-ui": "14.162.2-alpha-37a3d46.0",
46
+ "@genesislcap/foundation-utils": "14.162.2-alpha-37a3d46.0",
47
47
  "@microsoft/fast-colors": "^5.3.1",
48
48
  "@microsoft/fast-components": "^2.30.6",
49
49
  "@microsoft/fast-element": "^1.12.0",
@@ -69,5 +69,5 @@
69
69
  "access": "public"
70
70
  },
71
71
  "customElements": "dist/custom-elements.json",
72
- "gitHead": "874e7ee403e4cfab01c6fb2542ae3264c7202831"
72
+ "gitHead": "1ca1f5a8c54489a32e5bf7ca9cb0182a7822eaa0"
73
73
  }