ag-grid-community 32.3.6 → 32.3.8

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.
@@ -1327,31 +1327,56 @@ var FrameworkEventListenerService = class {
1327
1327
  this.wrappedListeners = /* @__PURE__ */ new Map();
1328
1328
  this.wrappedGlobalListeners = /* @__PURE__ */ new Map();
1329
1329
  }
1330
- wrap(userListener) {
1330
+ wrap(eventType, userListener) {
1331
+ const { frameworkOverrides, wrappedListeners } = this;
1331
1332
  let listener = userListener;
1332
- if (this.frameworkOverrides.shouldWrapOutgoing) {
1333
+ if (frameworkOverrides.shouldWrapOutgoing) {
1333
1334
  listener = (event) => {
1334
- this.frameworkOverrides.wrapOutgoing(() => userListener(event));
1335
+ frameworkOverrides.wrapOutgoing(() => userListener(event));
1335
1336
  };
1336
- this.wrappedListeners.set(userListener, listener);
1337
+ let eventListeners = wrappedListeners.get(eventType);
1338
+ if (!eventListeners) {
1339
+ eventListeners = /* @__PURE__ */ new Map();
1340
+ wrappedListeners.set(eventType, eventListeners);
1341
+ }
1342
+ eventListeners.set(userListener, listener);
1337
1343
  }
1338
1344
  return listener;
1339
1345
  }
1340
1346
  wrapGlobal(userListener) {
1347
+ const { frameworkOverrides, wrappedGlobalListeners } = this;
1341
1348
  let listener = userListener;
1342
- if (this.frameworkOverrides.shouldWrapOutgoing) {
1349
+ if (frameworkOverrides.shouldWrapOutgoing) {
1343
1350
  listener = (eventType, event) => {
1344
- this.frameworkOverrides.wrapOutgoing(() => userListener(eventType, event));
1351
+ frameworkOverrides.wrapOutgoing(() => userListener(eventType, event));
1345
1352
  };
1346
- this.wrappedGlobalListeners.set(userListener, listener);
1353
+ wrappedGlobalListeners.set(userListener, listener);
1347
1354
  }
1348
1355
  return listener;
1349
1356
  }
1350
- unwrap(userListener) {
1351
- return this.wrappedListeners.get(userListener) ?? userListener;
1357
+ unwrap(eventType, userListener) {
1358
+ const { wrappedListeners } = this;
1359
+ const eventListeners = wrappedListeners.get(eventType);
1360
+ if (eventListeners) {
1361
+ const wrapped = eventListeners.get(userListener);
1362
+ if (wrapped) {
1363
+ eventListeners.delete(userListener);
1364
+ if (eventListeners.size === 0) {
1365
+ wrappedListeners.delete(eventType);
1366
+ }
1367
+ return wrapped;
1368
+ }
1369
+ }
1370
+ return userListener;
1352
1371
  }
1353
1372
  unwrapGlobal(userListener) {
1354
- return this.wrappedGlobalListeners.get(userListener) ?? userListener;
1373
+ const { wrappedGlobalListeners } = this;
1374
+ const wrapped = wrappedGlobalListeners.get(userListener);
1375
+ if (wrapped) {
1376
+ wrappedGlobalListeners.delete(userListener);
1377
+ return wrapped;
1378
+ }
1379
+ return userListener;
1355
1380
  }
1356
1381
  };
1357
1382
 
@@ -1651,11 +1676,11 @@ var AgColumn = class extends BeanStub {
1651
1676
  this.columnEventService.setFrameworkOverrides(this.frameworkOverrides);
1652
1677
  this.frameworkEventListenerService = new FrameworkEventListenerService(this.frameworkOverrides);
1653
1678
  }
1654
- const listener = this.frameworkEventListenerService?.wrap(userListener) ?? userListener;
1679
+ const listener = this.frameworkEventListenerService?.wrap(eventType, userListener) ?? userListener;
1655
1680
  this.columnEventService.addEventListener(eventType, listener);
1656
1681
  }
1657
1682
  removeEventListener(eventType, userListener) {
1658
- const listener = this.frameworkEventListenerService?.unwrap(userListener) ?? userListener;
1683
+ const listener = this.frameworkEventListenerService?.unwrap(eventType, userListener) ?? userListener;
1659
1684
  this.columnEventService.removeEventListener(eventType, listener);
1660
1685
  }
1661
1686
  createColumnFunctionCallbackParams(rowNode) {
@@ -12445,7 +12470,7 @@ var _RowNode = class _RowNode {
12445
12470
  this.localEventService.setFrameworkOverrides(this.beans.frameworkOverrides);
12446
12471
  this.frameworkEventListenerService = new FrameworkEventListenerService(this.beans.frameworkOverrides);
12447
12472
  }
12448
- const listener = this.frameworkEventListenerService?.wrap(userListener) ?? userListener;
12473
+ const listener = this.frameworkEventListenerService?.wrap(eventType, userListener) ?? userListener;
12449
12474
  this.localEventService.addEventListener(eventType, listener);
12450
12475
  }
12451
12476
  /** Remove event listener. */
@@ -12453,7 +12478,7 @@ var _RowNode = class _RowNode {
12453
12478
  if (!this.localEventService) {
12454
12479
  return;
12455
12480
  }
12456
- const listener = this.frameworkEventListenerService?.unwrap(userListener) ?? userListener;
12481
+ const listener = this.frameworkEventListenerService?.unwrap(eventType, userListener) ?? userListener;
12457
12482
  this.localEventService.removeEventListener(eventType, listener);
12458
12483
  if (this.localEventService.noRegisteredListenersExist()) {
12459
12484
  this.localEventService = null;
@@ -17515,7 +17540,7 @@ function _defineModule(definition) {
17515
17540
  }
17516
17541
 
17517
17542
  // community-modules/core/src/version.ts
17518
- var VERSION = "32.3.6";
17543
+ var VERSION = "32.3.8";
17519
17544
 
17520
17545
  // community-modules/core/src/filter/columnFilterApi.ts
17521
17546
  function isColumnFilterPresent(beans) {
@@ -41836,6 +41861,10 @@ var _GridOptionsService = class _GridOptionsService extends BeanStub {
41836
41861
  constructor() {
41837
41862
  super(...arguments);
41838
41863
  this.beanName = "gos";
41864
+ // Used to hold user events until the grid is ready
41865
+ // Required to support React 19 StrictMode. See IFrameworkOverrides.runWhenReadyAsync but also is likely a good idea that onGridReady is the first event fired.
41866
+ this.gridReadyFired = false;
41867
+ this.queueEvents = [];
41839
41868
  this.domDataKey = "__AG_" + Math.random().toString();
41840
41869
  this.propertyEventService = new LocalEventService();
41841
41870
  // responsible for calling the onXXX functions on gridOptions
@@ -41851,12 +41880,25 @@ var _GridOptionsService = class _GridOptionsService extends BeanStub {
41851
41880
  if (alwaysSync && !restrictToSyncOnly || !alwaysSync && restrictToSyncOnly) {
41852
41881
  return;
41853
41882
  }
41854
- const eventHandlerName = ComponentUtil.getCallbackForEvent(eventName);
41855
- const eventHandler = this.gridOptions[eventHandlerName];
41856
- if (typeof eventHandler === "function") {
41857
- this.frameworkOverrides.wrapOutgoing(() => {
41858
- eventHandler(event);
41859
- });
41883
+ const fireEvent = (name, e) => {
41884
+ const eventHandler = this.gridOptions[ComponentUtil.getCallbackForEvent(name)];
41885
+ if (typeof eventHandler === "function") {
41886
+ this.frameworkOverrides.wrapOutgoing(() => eventHandler(event));
41887
+ }
41888
+ };
41889
+ if (this.gridReadyFired) {
41890
+ fireEvent(eventName, event);
41891
+ } else {
41892
+ if (eventName === "gridReady") {
41893
+ fireEvent(eventName, event);
41894
+ this.gridReadyFired = true;
41895
+ for (const q of this.queueEvents) {
41896
+ fireEvent(q.eventName, q.event);
41897
+ }
41898
+ this.queueEvents = [];
41899
+ } else {
41900
+ this.queueEvents.push({ eventName, event });
41901
+ }
41860
41902
  }
41861
41903
  };
41862
41904
  };
@@ -41884,6 +41926,10 @@ var _GridOptionsService = class _GridOptionsService extends BeanStub {
41884
41926
  }
41885
41927
  });
41886
41928
  }
41929
+ destroy() {
41930
+ super.destroy();
41931
+ this.queueEvents = [];
41932
+ }
41887
41933
  /**
41888
41934
  * Get the raw value of the GridOptions property provided.
41889
41935
  * @param property
@@ -42183,7 +42229,7 @@ var ApiEventService = class extends BeanStub {
42183
42229
  this.frameworkEventWrappingService = new FrameworkEventListenerService(this.getFrameworkOverrides());
42184
42230
  }
42185
42231
  addEventListener(eventType, userListener) {
42186
- const listener = this.frameworkEventWrappingService.wrap(userListener);
42232
+ const listener = this.frameworkEventWrappingService.wrap(eventType, userListener);
42187
42233
  const async = _useAsyncEvents(this.gos) && !ALWAYS_SYNC_GLOBAL_EVENTS.has(eventType);
42188
42234
  const listeners = async ? this.asyncEventListeners : this.syncEventListeners;
42189
42235
  if (!listeners.has(eventType)) {
@@ -42193,7 +42239,7 @@ var ApiEventService = class extends BeanStub {
42193
42239
  this.eventService.addEventListener(eventType, listener, async);
42194
42240
  }
42195
42241
  removeEventListener(eventType, userListener) {
42196
- const listener = this.frameworkEventWrappingService.unwrap(userListener);
42242
+ const listener = this.frameworkEventWrappingService.unwrap(eventType, userListener);
42197
42243
  const asyncListeners = this.asyncEventListeners.get(eventType);
42198
42244
  const hasAsync = !!asyncListeners?.delete(listener);
42199
42245
  if (!hasAsync) {
@@ -46829,7 +46875,7 @@ var SortStage = class extends BeanStub {
46829
46875
  };
46830
46876
 
46831
46877
  // community-modules/client-side-row-model/src/version.ts
46832
- var VERSION2 = "32.3.6";
46878
+ var VERSION2 = "32.3.8";
46833
46879
 
46834
46880
  // community-modules/client-side-row-model/src/clientSideRowModelModule.ts
46835
46881
  var ClientSideRowModelCoreModule = _defineModule({
@@ -47522,7 +47568,7 @@ var GridSerializer = class extends BeanStub {
47522
47568
  });
47523
47569
  }
47524
47570
  };
47525
- var VERSION3 = "32.3.6";
47571
+ var VERSION3 = "32.3.8";
47526
47572
  var CsvExportCoreModule = _defineModule({
47527
47573
  version: VERSION3,
47528
47574
  moduleName: `${"@ag-grid-community/csv-export" /* CsvExportModule */}-core`,
@@ -48713,7 +48759,7 @@ function purgeInfiniteCache(beans) {
48713
48759
  function getInfiniteRowCount(beans) {
48714
48760
  return beans.rowModelHelperService?.getInfiniteRowModel()?.getRowCount();
48715
48761
  }
48716
- var VERSION4 = "32.3.6";
48762
+ var VERSION4 = "32.3.8";
48717
48763
  var InfiniteRowModelCoreModule = _defineModule({
48718
48764
  version: VERSION4,
48719
48765
  moduleName: `${"@ag-grid-community/infinite-row-model" /* InfiniteRowModelModule */}-core`,
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ag-grid-community",
3
- "version": "32.3.6",
3
+ "version": "32.3.8",
4
4
  "description": "Advanced Data Grid / Data Table supporting Javascript / Typescript / React / Angular / Vue",
5
5
  "main": "./dist/package/main.cjs.js",
6
6
  "types": "./dist/types/main.d.ts",
@@ -88,19 +88,19 @@
88
88
  ],
89
89
  "homepage": "https://www.ag-grid.com/",
90
90
  "dependencies": {
91
- "ag-charts-types": "10.3.6"
91
+ "ag-charts-types": "10.3.8"
92
92
  },
93
93
  "devDependencies": {
94
94
  "source-map-loader": "^5.0.0",
95
95
  "gulp": "^4.0.0",
96
96
  "gulp-replace": "^1.0.0",
97
97
  "gulp-rename": "^2.0.0",
98
- "@ag-grid-community/client-side-row-model": "32.3.6",
99
- "@ag-grid-community/core": "32.3.6",
100
- "@ag-grid-community/csv-export": "32.3.6",
101
- "@ag-grid-community/infinite-row-model": "32.3.6",
102
- "@ag-grid-community/styles": "32.3.6",
103
- "@ag-grid-community/theming": "32.3.6",
98
+ "@ag-grid-community/client-side-row-model": "32.3.8",
99
+ "@ag-grid-community/core": "32.3.8",
100
+ "@ag-grid-community/csv-export": "32.3.8",
101
+ "@ag-grid-community/infinite-row-model": "32.3.8",
102
+ "@ag-grid-community/styles": "32.3.8",
103
+ "@ag-grid-community/theming": "32.3.8",
104
104
  "ts-loader": "^9.5.1",
105
105
  "style-loader": "^3.3.4",
106
106
  "css-loader": "^6.10.0",
@@ -1 +1 @@
1
- export declare const VERSION = "32.3.6";
1
+ export declare const VERSION = "32.3.8";
@@ -60,11 +60,14 @@ export declare class GridOptionsService extends BeanStub implements NamedBean {
60
60
  environment: Environment;
61
61
  private api;
62
62
  private gridId;
63
+ private gridReadyFired;
64
+ private queueEvents;
63
65
  wireBeans(beans: BeanCollection): void;
64
66
  private domDataKey;
65
67
  private get gridOptionsContext();
66
68
  private propertyEventService;
67
69
  postConstruct(): void;
70
+ destroy(): void;
68
71
  /**
69
72
  * Get the raw value of the GridOptions property provided.
70
73
  * @param property
@@ -1,11 +1,16 @@
1
+ import type { AgEventType } from '../eventTypes';
2
+ import type { ColumnEventName } from '../interfaces/iColumn';
1
3
  import type { IFrameworkOverrides } from '../interfaces/iFrameworkOverrides';
4
+ import type { RowNodeEventType } from '../interfaces/iRowNode';
5
+ type EventTypeToWrap = AgEventType | RowNodeEventType | ColumnEventName;
2
6
  export declare class FrameworkEventListenerService<TEventListener extends (e: any) => void, TGlobalEventListener extends (name: string, e: any) => void> {
3
7
  private frameworkOverrides;
4
8
  private wrappedListeners;
5
9
  private wrappedGlobalListeners;
6
10
  constructor(frameworkOverrides: IFrameworkOverrides);
7
- wrap(userListener: TEventListener): TEventListener;
11
+ wrap(eventType: EventTypeToWrap, userListener: TEventListener): TEventListener;
8
12
  wrapGlobal(userListener: TGlobalEventListener): TGlobalEventListener;
9
- unwrap(userListener: TEventListener): TEventListener;
13
+ unwrap(eventType: EventTypeToWrap, userListener: TEventListener): TEventListener;
10
14
  unwrapGlobal(userListener: TGlobalEventListener): TGlobalEventListener;
11
15
  }
16
+ export {};
@@ -1 +1 @@
1
- export declare const VERSION = "32.3.6";
1
+ export declare const VERSION = "32.3.8";
@@ -1 +1 @@
1
- export declare const VERSION = "32.3.6";
1
+ export declare const VERSION = "32.3.8";
@@ -1 +1 @@
1
- export declare const VERSION = "32.3.6";
1
+ export declare const VERSION = "32.3.8";
@@ -1 +1 @@
1
- export declare const VERSION = "32.3.6";
1
+ export declare const VERSION = "32.3.8";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ag-grid-community",
3
- "version": "32.3.6",
3
+ "version": "32.3.8",
4
4
  "description": "Advanced Data Grid / Data Table supporting Javascript / Typescript / React / Angular / Vue",
5
5
  "main": "./dist/package/main.cjs.js",
6
6
  "types": "./dist/types/main.d.ts",
@@ -88,19 +88,19 @@
88
88
  ],
89
89
  "homepage": "https://www.ag-grid.com/",
90
90
  "dependencies": {
91
- "ag-charts-types": "10.3.6"
91
+ "ag-charts-types": "10.3.8"
92
92
  },
93
93
  "devDependencies": {
94
94
  "source-map-loader": "^5.0.0",
95
95
  "gulp": "^4.0.0",
96
96
  "gulp-replace": "^1.0.0",
97
97
  "gulp-rename": "^2.0.0",
98
- "@ag-grid-community/client-side-row-model": "32.3.6",
99
- "@ag-grid-community/core": "32.3.6",
100
- "@ag-grid-community/csv-export": "32.3.6",
101
- "@ag-grid-community/infinite-row-model": "32.3.6",
102
- "@ag-grid-community/styles": "32.3.6",
103
- "@ag-grid-community/theming": "32.3.6",
98
+ "@ag-grid-community/client-side-row-model": "32.3.8",
99
+ "@ag-grid-community/core": "32.3.8",
100
+ "@ag-grid-community/csv-export": "32.3.8",
101
+ "@ag-grid-community/infinite-row-model": "32.3.8",
102
+ "@ag-grid-community/styles": "32.3.8",
103
+ "@ag-grid-community/theming": "32.3.8",
104
104
  "ts-loader": "^9.5.1",
105
105
  "style-loader": "^3.3.4",
106
106
  "css-loader": "^6.10.0",