@refinitiv-ui/efx-grid 6.0.97 → 6.0.98

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.
@@ -236,7 +236,9 @@ declare class DataView extends EventDispatcher {
236
236
 
237
237
  public searchNext(rowRef: number|string|null, searchLogic: ((...params: any[]) => any)|null): number;
238
238
 
239
- public stall(opt_bool?: boolean|null): boolean;
239
+ public stall(bool?: boolean|null): boolean;
240
+
241
+ public stallSorting(bool?: boolean|null): boolean;
240
242
 
241
243
  public enableAutoGroupRemoval(opt_bool?: boolean|null): boolean;
242
244
 
@@ -302,6 +302,10 @@ DataView.prototype._wrapSize = 0;
302
302
  * @type {number}
303
303
  */
304
304
  DataView.prototype._wrapTimerId = 0;
305
+ /** @private
306
+ * @type {boolean}
307
+ */
308
+ DataView.prototype._stalledSorting = false;
305
309
 
306
310
  /** @public
307
311
  * @fires DataView#preDisposed
@@ -2344,11 +2348,11 @@ DataView.prototype._searchRow = function(rids, searchLogic, start, end, inc) {
2344
2348
 
2345
2349
  /** Blocks all row insertion and removal, but keep updating the data
2346
2350
  * @public
2347
- * @param {boolean=} opt_bool
2348
- * @return {boolean} True if there is any change
2351
+ * @param {boolean=} bool
2352
+ * @return {boolean} Returns true, if there is any change
2349
2353
  */
2350
- DataView.prototype.stall = function(opt_bool) {
2351
- let newBool = opt_bool !== false;
2354
+ DataView.prototype.stall = function(bool) {
2355
+ let newBool = bool !== false;
2352
2356
  let curBool = this._shared.stalledRids ? true : false;
2353
2357
  if(curBool === newBool) { return false; }
2354
2358
  if(newBool) {
@@ -2365,6 +2369,25 @@ DataView.prototype.stall = function(opt_bool) {
2365
2369
  }
2366
2370
  return true;
2367
2371
  };
2372
+ /** Blocks existing sorting from performing on every data change
2373
+ * @public
2374
+ * @param {boolean=} bool
2375
+ * @return {boolean} Returns true, if there is any change
2376
+ */
2377
+ DataView.prototype.stallSorting = function(bool) {
2378
+ let newBool = bool !== false;
2379
+ if(this._stalledSorting !== newBool) {
2380
+ this._stalledSorting = newBool;
2381
+
2382
+ if(!newBool && this.isSorting()) {
2383
+ if(this._sort()) {
2384
+ this._dispatchDataChange(DataTable._positionChangeArg);
2385
+ }
2386
+ }
2387
+ }
2388
+ return true;
2389
+ };
2390
+
2368
2391
  /** Automatically and asyncronuosly remove group that has no member or no content. Predefined groups will not be removed in this way.
2369
2392
  * @public
2370
2393
  * @param {boolean=} opt_bool
@@ -2400,7 +2423,7 @@ DataView.prototype.enableAutoGroupHiding = function(opt_bool) {
2400
2423
  * @public
2401
2424
  */
2402
2425
  DataView.prototype.synchronizeRowOrder = function() {
2403
- if(this.isSorting()) {
2426
+ if(!this._stalledSorting && this.isSorting()) {
2404
2427
  this._dt._sort(this._sortingDefs);
2405
2428
  }
2406
2429
  };
@@ -3453,6 +3476,9 @@ DataView.prototype._sort = function() {
3453
3476
  if(this._groupMembers) {
3454
3477
  return false; // DataView with children should not be sorted as sort operation will be done on each child
3455
3478
  }
3479
+ if(this._stalledSorting) {
3480
+ return false;
3481
+ }
3456
3482
 
3457
3483
  if(this._dt._getSegmentSeparators() || this.isSorting()) {
3458
3484
  let rids = this._rids;
@@ -574,7 +574,7 @@ Core.prototype._hasPendingRowChange = false;
574
574
  * @return {string}
575
575
  */
576
576
  Core.getVersion = function () {
577
- return "5.1.97";
577
+ return "5.1.98";
578
578
  };
579
579
  /** {@link ElementWrapper#dispose}
580
580
  * @override
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.97" };
3
+ window.EFX_GRID = { version: "6.0.98" };
package/package.json CHANGED
@@ -66,5 +66,5 @@
66
66
  "publishConfig": {
67
67
  "access": "public"
68
68
  },
69
- "version": "6.0.97"
69
+ "version": "6.0.98"
70
70
  }