@refinitiv-ui/efx-grid 6.0.65 → 6.0.67

Sign up to get free protection for your applications and to get access to all the features.
Files changed (33) hide show
  1. package/lib/core/dist/core.js +31 -9
  2. package/lib/core/dist/core.min.js +1 -1
  3. package/lib/core/es6/data/DataView.d.ts +2 -0
  4. package/lib/core/es6/data/DataView.js +26 -4
  5. package/lib/core/es6/grid/Core.js +5 -5
  6. package/lib/grid/index.js +1 -1
  7. package/lib/rt-grid/dist/rt-grid.js +176 -72
  8. package/lib/rt-grid/dist/rt-grid.min.js +1 -1
  9. package/lib/rt-grid/es6/ColumnDefinition.d.ts +0 -2
  10. package/lib/rt-grid/es6/ColumnDefinition.js +1 -1
  11. package/lib/rt-grid/es6/Grid.d.ts +0 -2
  12. package/lib/rt-grid/es6/Grid.js +2 -2
  13. package/lib/tr-grid-column-formatting/es6/ColumnFormatting.js +4 -3
  14. package/lib/tr-grid-column-stack/es6/ColumnStack.d.ts +1 -1
  15. package/lib/tr-grid-column-stack/es6/ColumnStack.js +17 -26
  16. package/lib/tr-grid-conditional-coloring/es6/ConditionalColoring.d.ts +11 -5
  17. package/lib/tr-grid-conditional-coloring/es6/ConditionalColoring.js +153 -55
  18. package/lib/tr-grid-contextmenu/es6/ContextMenu.d.ts +2 -1
  19. package/lib/tr-grid-contextmenu/es6/ContextMenu.js +8 -8
  20. package/lib/tr-grid-row-filtering/es6/RowFiltering.d.ts +3 -0
  21. package/lib/tr-grid-row-filtering/es6/RowFiltering.js +23 -2
  22. package/lib/tr-grid-util/es6/CellPainter.d.ts +4 -2
  23. package/lib/tr-grid-util/es6/CellPainter.js +18 -8
  24. package/lib/tr-grid-util/es6/FilterOperators.js +13 -0
  25. package/lib/types/es6/ColumnStack.d.ts +1 -1
  26. package/lib/types/es6/ConditionalColoring.d.ts +11 -5
  27. package/lib/types/es6/ContextMenu.d.ts +2 -1
  28. package/lib/types/es6/Core/data/DataView.d.ts +2 -0
  29. package/lib/types/es6/RealtimeGrid/ColumnDefinition.d.ts +0 -2
  30. package/lib/types/es6/RealtimeGrid/Grid.d.ts +0 -2
  31. package/lib/types/es6/RowFiltering.d.ts +3 -0
  32. package/lib/versions.json +6 -6
  33. package/package.json +1 -1
@@ -19005,6 +19005,10 @@ DataView.prototype._excludedRids = null;
19005
19005
  * @type {boolean}
19006
19006
  */
19007
19007
  DataView.prototype._emptySegmentFiltering = false;
19008
+ /** @private
19009
+ * @type {boolean}
19010
+ */
19011
+ DataView.prototype._separatorFiltering = false;
19008
19012
 
19009
19013
  /** @private
19010
19014
  * @type {Object.<string, number>}
@@ -21440,7 +21444,7 @@ DataView.prototype.sortSeparators = function (sortLogics, sortOrders, cids) {
21440
21444
  DataView.prototype.sortSegments = function (compare) {
21441
21445
  this._dt.sortSegments(compare);
21442
21446
  };
21443
- /** Automatically hide empty segment when all of its member are filtered out. An empty segment will not be hidden, if there is no active filter. Collapsed segment does not count as filtering.
21447
+ /** Automatically hide empty segment when all of its member are filtered out. An empty segment will NOT be hidden, if there is no active filter. Collapsed segment does not count as filtering. A segment with no child is treated the same way as an empty segment.
21444
21448
  * @public
21445
21449
  * @param {boolean=} enabled
21446
21450
  */
@@ -21453,6 +21457,19 @@ DataView.prototype.enableEmptySegmentFiltering = function (enabled) {
21453
21457
  }
21454
21458
  }
21455
21459
  };
21460
+ /** Allow filtering of segment separators as if they were normal rows. Note that even if a separator row is filtered out, its child row may remain in the view and not be filtered out.
21461
+ * @public
21462
+ * @param {boolean=} enabled
21463
+ */
21464
+ DataView.prototype.enableSeparatorFiltering = function (enabled) {
21465
+ enabled = enabled !== false;
21466
+ if(this._separatorFiltering !== enabled) {
21467
+ this._separatorFiltering = enabled;
21468
+ if(this._userFilter) {
21469
+ this._refreshAndNotify();
21470
+ }
21471
+ }
21472
+ };
21456
21473
  /**
21457
21474
  * @public
21458
21475
  * @param {string|number} segmentRef Row id or row index
@@ -21620,14 +21637,19 @@ DataView.prototype._updateRowIds = function(opt_rowIds) {
21620
21637
 
21621
21638
  // Segment separators should not be filtered out (hidden)
21622
21639
  var segments = this._dt._getSegmentSeparators();
21623
- var filterExceptions = segments ? segments.getSegments() : null;
21624
- var userRemoval = this._getRemovalMap(this._excludedRids, this._userFilter, this._filteringOut, filterExceptions);
21640
+ var segmentIds = segments ? segments.getSegments() : null;
21641
+ var userRemoval = this._getRemovalMap(
21642
+ this._excludedRids,
21643
+ this._userFilter,
21644
+ this._filteringOut,
21645
+ this._separatorFiltering ? null : segmentIds
21646
+ );
21625
21647
  exclusionCount += userRemoval;
21626
21648
 
21627
21649
  this._collapsedRids = null;
21628
21650
  if(segments) {
21629
21651
  if(userRemoval && this._emptySegmentFiltering) {
21630
- exclusionCount += this._getEmptySegments(this._excludedRids, filterExceptions);
21652
+ exclusionCount += this._getEmptySegments(this._excludedRids, segmentIds);
21631
21653
  }
21632
21654
  this._collapsedRids = segments.getCollapsedRows();
21633
21655
  // Children of collapsed segments must be filtered out (hidden)
@@ -26072,7 +26094,7 @@ Core_Core.prototype._batches = null;
26072
26094
  * @return {string}
26073
26095
  */
26074
26096
  Core_Core.getVersion = function () {
26075
- return "5.1.75";
26097
+ return "5.1.77";
26076
26098
  };
26077
26099
  /** {@link ElementWrapper#dispose}
26078
26100
  * @override
@@ -29992,6 +30014,10 @@ Core_Core.prototype.startBatch = function (batchType) {
29992
30014
  this._batches = {};
29993
30015
  }
29994
30016
  this._batches[batchType] = batchType;
30017
+ // The "columnVisibilityChanged" event is blocked while the "reset" batch operation is in progress, so this event will not be fired until the batch operation succeeds.
30018
+ if(batchType === "reset") {
30019
+ this._disableEvent("columnVisibilityChanged", true);
30020
+ }
29995
30021
  this._dispatch("beforeBatchOperation", { batches: this._batches, batchType: batchType });
29996
30022
  return true;
29997
30023
  };
@@ -30004,10 +30030,6 @@ Core_Core.prototype.stopBatch = function (batchType) {
30004
30030
  if(!batchType){
30005
30031
  return false;
30006
30032
  }
30007
- // The "columnVisibilityChanged" event is blocked while the "reset" batch operation is in progress, so this event will not be fired until the batch operation succeeds.
30008
- if(batchType === "reset") {
30009
- this._disableEvent("columnVisibilityChanged", true);
30010
- }
30011
30033
  this._dispatch("afterBatchOperation", { batches: this._batches, batchType: batchType });
30012
30034
  if(batchType === "reset") {
30013
30035
  this._disableEvent("columnVisibilityChanged", false);