@refinitiv-ui/efx-grid 6.0.64 → 6.0.65

Sign up to get free protection for your applications and to get access to all the features.
package/lib/grid/index.js CHANGED
@@ -1,3 +1,3 @@
1
1
  import {Grid} from "./lib/efx-grid.js";
2
2
  export {Grid}
3
- window.EFX_GRID = { version: "6.0.64" };
3
+ window.EFX_GRID = { version: "6.0.65" };
@@ -129,10 +129,12 @@ var ColumnStackPlugin = function () {
129
129
  this._onStackButtonClicked = this._onStackButtonClicked.bind(this);
130
130
  this._updateUI = this._updateUI.bind(this);
131
131
  this._toColumnId = this._toColumnId.bind(this);
132
+ this._requestFilterRefresh = this._requestFilterRefresh.bind(this);
132
133
 
133
134
  this._hosts = [];
134
135
  this._groupDefs = new GroupDefinitions();
135
136
 
137
+ this._filterConflator = new Conflator(50, this._requestFilterRefresh);
136
138
  this._conflator = new Conflator(50, this._updateUI);
137
139
  };
138
140
 
@@ -275,6 +277,7 @@ ColumnStackPlugin.prototype.unload = function (host) {
275
277
 
276
278
  if(this._hosts.length <= 0) {
277
279
  this._conflator.reset();
280
+ this._filterConflator.reset();
278
281
  this._groupDefs.removeAllGroups();
279
282
  }
280
283
  this._dispose();
@@ -537,9 +540,24 @@ ColumnStackPlugin.prototype._hideStackedColumns = function(stack, colRefs, activ
537
540
  */
538
541
  ColumnStackPlugin.prototype._setColumnVisibility = function(colIndex, shown) {
539
542
  if(colIndex >= 0) {
543
+ var dirty = false;
540
544
  for(var g = this._hosts.length; --g >= 0;) {
541
- this._hosts[g].setColumnVisibility(colIndex, shown, 2);
545
+ dirty |= this._hosts[g].setColumnVisibility(colIndex, shown, 2);
542
546
  }
547
+
548
+ if(dirty){
549
+ this._requestFilterRefresh();
550
+ }
551
+ }
552
+ };
553
+ /** @private */
554
+ ColumnStackPlugin.prototype._requestFilterRefresh = function() {
555
+ if(this._filterConflator.conflate()) {
556
+ return;
557
+ }
558
+ var rfp = this._getPlugin("RowFilteringPlugin");
559
+ if(rfp && rfp["refresh"]) {
560
+ rfp["refresh"]();
543
561
  }
544
562
  };
545
563
  /** @private
@@ -1042,10 +1060,6 @@ ColumnStackPlugin.prototype.stackColumns = function(colRefs, stackId, options) {
1042
1060
 
1043
1061
  this._groupDefs.setGroup(sid, stack);
1044
1062
 
1045
- var cfp = this._getPlugin("ColumnFilterPlugin");
1046
- if(cfp) {
1047
- cfp["refresh"]();
1048
- }
1049
1063
  this._updateUI(); // asyncronuos
1050
1064
  return true;
1051
1065
  };
@@ -1205,10 +1219,6 @@ ColumnStackPlugin.prototype.unstackColumns = function(colIndices) {
1205
1219
  }
1206
1220
  }
1207
1221
  if(dirty) {
1208
- var cfp = this._getPlugin("ColumnFilterPlugin");
1209
- if(cfp) {
1210
- cfp["refresh"]();
1211
- }
1212
1222
  this._updateUI(); // asyncronuos
1213
1223
  }
1214
1224
 
@@ -1345,10 +1355,6 @@ ColumnStackPlugin.prototype._setActiveColumn = function(stack, newActiveColumn)
1345
1355
  csp.dispatchSelectionChanged();
1346
1356
  }
1347
1357
  }
1348
- var cfp = this._getPlugin("ColumnFilterPlugin");
1349
- if(cfp) {
1350
- cfp["refresh"]();
1351
- }
1352
1358
  return true;
1353
1359
  };
1354
1360
 
@@ -1301,38 +1301,23 @@ RowFilteringPlugin.prototype._setTimerForUpdatingIcons = function () {
1301
1301
 
1302
1302
  RowFilteringPlugin.prototype.refresh = function () {
1303
1303
  this._dvTimerId = 0;
1304
+ this._activeColFilters = this._columnFilters; //check cstp
1304
1305
 
1305
- var cstkp = this._getPlugin("ColumnStackingPlugin");
1306
+ var cstkp = this._getPlugin("ColumnStackPlugin");
1306
1307
 
1307
- this._activeColFilters = this._columnFilters;
1308
-
1309
- if (cstkp && this._activeColFilters.length) {
1308
+ if (cstkp) {
1310
1309
  var colIndex, cfo;
1310
+ var host = this._hosts[0];
1311
1311
 
1312
1312
  var colCount = this._getColumnCount();
1313
1313
 
1314
- var hasInactiveColumn = false;
1314
+ this._activeColFilters = [];
1315
1315
 
1316
1316
  for (colIndex = 0; colIndex < colCount; ++colIndex) {
1317
1317
  cfo = this._getColumnFilterOption(colIndex);
1318
1318
 
1319
- if (cfo) {
1320
- if (cstkp.isInactiveStackedColumn(colIndex)) {
1321
- hasInactiveColumn = true;
1322
- break;
1323
- }
1324
- }
1325
- }
1326
-
1327
- if (hasInactiveColumn) {
1328
- this._activeColFilters = [];
1329
-
1330
- for (colIndex = 0; colIndex < colCount; ++colIndex) {
1331
- cfo = this._getColumnFilterOption(colIndex);
1332
-
1333
- if (cfo && !cstkp.isInactiveStackedColumn(colIndex)) {
1334
- this._activeColFilters.push(cfo);
1335
- }
1319
+ if (cfo && host.getColumnVisibility(colIndex, 2)) {
1320
+ this._activeColFilters.push(cfo);
1336
1321
  }
1337
1322
  }
1338
1323
  }
package/lib/versions.json CHANGED
@@ -13,7 +13,7 @@
13
13
  "tr-grid-column-grouping": "1.0.55",
14
14
  "tr-grid-column-resizing": "1.0.28",
15
15
  "tr-grid-column-selection": "1.0.29",
16
- "tr-grid-column-stack": "1.0.70",
16
+ "tr-grid-column-stack": "1.0.71",
17
17
  "tr-grid-conditional-coloring": "1.0.62",
18
18
  "tr-grid-content-wrap": "1.0.20",
19
19
  "tr-grid-contextmenu": "1.0.39",
@@ -24,7 +24,7 @@
24
24
  "tr-grid-percent-bar": "1.0.22",
25
25
  "tr-grid-range-bar": "2.0.5",
26
26
  "tr-grid-row-dragging": "1.0.29",
27
- "tr-grid-row-filtering": "1.0.59",
27
+ "tr-grid-row-filtering": "1.0.60",
28
28
  "tr-grid-row-grouping": "1.0.82",
29
29
  "tr-grid-row-selection": "1.0.23",
30
30
  "tr-grid-rowcoloring": "1.0.24",
package/package.json CHANGED
@@ -66,5 +66,5 @@
66
66
  "publishConfig": {
67
67
  "access": "public"
68
68
  },
69
- "version": "6.0.64"
69
+ "version": "6.0.65"
70
70
  }