ag-grid-enterprise 33.2.3 → 33.2.4

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.
@@ -32479,7 +32479,7 @@ class LicenseManager {
32479
32479
  }
32480
32480
  }
32481
32481
  exports.LicenseManager = LicenseManager;
32482
- LicenseManager.RELEASE_INFORMATION = 'MTc0NDI4NzE1OTY5NQ==';
32482
+ LicenseManager.RELEASE_INFORMATION = 'MTc0NDc4ODcwODE2Nw==';
32483
32483
 
32484
32484
 
32485
32485
  /***/ }),
@@ -54540,7 +54540,7 @@ exports.clearTreeRowFlags = clearTreeRowFlags;
54540
54540
  Object.defineProperty(exports, "__esModule", ({ value: true }));
54541
54541
  exports.VERSION = void 0;
54542
54542
  // DO NOT UPDATE MANUALLY: Generated from script during build time
54543
- exports.VERSION = '33.2.3';
54543
+ exports.VERSION = '33.2.4';
54544
54544
 
54545
54545
 
54546
54546
  /***/ }),
@@ -60310,7 +60310,7 @@ function _waitUntil(condition, callback, timeout = 100, timeoutMessage) {
60310
60310
  }
60311
60311
 
60312
60312
  // packages/ag-grid-community/src/version.ts
60313
- var VERSION = "33.2.3";
60313
+ var VERSION = "33.2.4";
60314
60314
 
60315
60315
  // packages/ag-grid-community/src/validation/logging.ts
60316
60316
  var MAX_URL_LENGTH = 2e3;
@@ -70723,6 +70723,9 @@ var RowCtrl = class extends BeanStub {
70723
70723
  this.allRowGuis.forEach(callback);
70724
70724
  }
70725
70725
  }
70726
+ isRowRendered() {
70727
+ return this.allRowGuis.length > 0;
70728
+ }
70726
70729
  onRowHeightChanged(gui) {
70727
70730
  if (this.rowNode.rowHeight == null) {
70728
70731
  return;
@@ -86858,13 +86861,14 @@ var FocusService = class extends BeanStub {
86858
86861
  // grid cell will still be focused as far as the grid is concerned,
86859
86862
  // however the browser focus will have moved somewhere else.
86860
86863
  getFocusCellToUseAfterRefresh() {
86861
- if (this.gos.get("suppressFocusAfterRefresh") || !this.focusedCell) {
86864
+ const { gos, focusedCell } = this;
86865
+ if (gos.get("suppressFocusAfterRefresh") || gos.get("suppressCellFocus") || !focusedCell) {
86862
86866
  return null;
86863
86867
  }
86864
86868
  if (!this.doesRowOrCellHaveBrowserFocus()) {
86865
86869
  return null;
86866
86870
  }
86867
- return this.focusedCell;
86871
+ return focusedCell;
86868
86872
  }
86869
86873
  getFocusHeaderToUseAfterRefresh() {
86870
86874
  if (this.gos.get("suppressFocusAfterRefresh") || !this.focusedHeader) {
@@ -90254,33 +90258,44 @@ var RowRenderer = class extends BeanStub {
90254
90258
  this.allRowCtrls = liveList;
90255
90259
  }
90256
90260
  }
90257
- isCellRendered(rowIndex, column) {
90261
+ /**
90262
+ * Checks if the cell is rendered or not. Also returns true if row ctrl is present but has not rendered
90263
+ * cells yet.
90264
+ * @returns true if cellCtrl is present, or if the row is present but has not rendered rows yet
90265
+ */
90266
+ isCellBeingRendered(rowIndex, column) {
90258
90267
  const rowCtrl = this.rowCtrlsByRowIndex[rowIndex];
90259
- if (!column) {
90268
+ if (!column || !rowCtrl) {
90260
90269
  return !!rowCtrl;
90261
90270
  }
90262
- if (rowCtrl && rowCtrl.isFullWidth()) {
90271
+ if (rowCtrl.isFullWidth()) {
90263
90272
  return true;
90264
90273
  }
90265
90274
  const spannedCell = this.beans.spannedRowRenderer?.getCellByPosition({ rowIndex, column, rowPinned: null });
90266
- if (spannedCell) {
90267
- return true;
90268
- }
90269
- return !!rowCtrl?.getCellCtrl(column);
90275
+ return !!spannedCell || !!rowCtrl.getCellCtrl(column) || !rowCtrl.isRowRendered();
90270
90276
  }
90271
90277
  /**
90272
90278
  * Notifies all row and cell controls of any change in focused cell.
90273
90279
  * @param event cell focused event
90274
90280
  */
90281
+ updateCellFocus(event) {
90282
+ this.getAllCellCtrls().forEach((cellCtrl) => cellCtrl.onCellFocused(event));
90283
+ this.getFullWidthRowCtrls().forEach((rowCtrl) => rowCtrl.onFullWidthRowFocused(event));
90284
+ }
90285
+ /**
90286
+ * Called when a new cell is focused in the grid
90287
+ * - if the focused cell isn't rendered; re-draw rows to dry to render it
90288
+ * - subsequently updates all cell and row controls with the new focused cell
90289
+ * @param event cell focused event
90290
+ */
90275
90291
  onCellFocusChanged(event) {
90276
90292
  if (event && event.rowIndex != null && !event.rowPinned) {
90277
90293
  const col = this.beans.colModel.getCol(event.column) ?? void 0;
90278
- if (!this.isCellRendered(event.rowIndex, col)) {
90294
+ if (!this.isCellBeingRendered(event.rowIndex, col)) {
90279
90295
  this.redraw();
90280
90296
  }
90281
90297
  }
90282
- this.getAllCellCtrls().forEach((cellCtrl) => cellCtrl.onCellFocused(event));
90283
- this.getFullWidthRowCtrls().forEach((rowCtrl) => rowCtrl.onFullWidthRowFocused(event));
90298
+ this.updateCellFocus(event);
90284
90299
  }
90285
90300
  onSuppressCellFocusChanged(suppressCellFocus) {
90286
90301
  this.getAllCellCtrls().forEach((cellCtrl) => cellCtrl.onSuppressCellFocusChanged(suppressCellFocus));
@@ -90291,10 +90306,8 @@ var RowRenderer = class extends BeanStub {
90291
90306
  // all active cells.
90292
90307
  registerCellEventListeners() {
90293
90308
  this.addManagedEventListeners({
90294
- cellFocused: (event) => {
90295
- this.onCellFocusChanged(event);
90296
- },
90297
- cellFocusCleared: () => this.onCellFocusChanged(),
90309
+ cellFocused: (event) => this.onCellFocusChanged(event),
90310
+ cellFocusCleared: () => this.updateCellFocus(),
90298
90311
  flashCells: (event) => {
90299
90312
  const { cellFlashSvc } = this.beans;
90300
90313
  if (cellFlashSvc) {
@@ -90603,7 +90616,7 @@ var RowRenderer = class extends BeanStub {
90603
90616
  return;
90604
90617
  }
90605
90618
  if (!focusSvc.doesRowOrCellHaveBrowserFocus()) {
90606
- this.onCellFocusChanged(
90619
+ this.updateCellFocus(
90607
90620
  _addGridCommonParams(this.gos, {
90608
90621
  ...cellToFocus,
90609
90622
  forceBrowserFocus: true,