@refinitiv-ui/efx-grid 6.0.20 → 6.0.22
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.
- package/lib/column-dragging/es6/ColumnDragging.js +46 -24
- package/lib/core/dist/core.js +61 -14
- package/lib/core/dist/core.min.js +1 -1
- package/lib/core/es6/grid/Core.js +11 -1
- package/lib/core/es6/grid/LayoutGrid.js +1 -0
- package/lib/core/es6/grid/components/CellSpans.d.ts +2 -0
- package/lib/core/es6/grid/components/CellSpans.js +35 -10
- package/lib/core/es6/grid/plugins/SortableTitlePlugin.d.ts +2 -0
- package/lib/core/es6/grid/plugins/SortableTitlePlugin.js +14 -3
- package/lib/grid/index.js +1 -1
- package/lib/rt-grid/dist/rt-grid.js +362 -41
- package/lib/rt-grid/dist/rt-grid.min.js +1 -1
- package/lib/rt-grid/es6/Grid.d.ts +10 -1
- package/lib/rt-grid/es6/Grid.js +196 -17
- package/lib/rt-grid/es6/ReferenceCounter.js +13 -2
- package/lib/rt-grid/es6/RowDefinition.d.ts +2 -0
- package/lib/rt-grid/es6/RowDefinition.js +74 -8
- package/lib/tr-grid-column-grouping/es6/ColumnGrouping.d.ts +9 -5
- package/lib/tr-grid-column-grouping/es6/ColumnGrouping.js +365 -133
- package/lib/tr-grid-column-resizing/es6/ColumnResizing.js +11 -37
- package/lib/tr-grid-row-selection/es6/RowSelection.d.ts +15 -15
- package/lib/tr-grid-row-selection/es6/RowSelection.js +9 -1
- package/lib/types/es6/ColumnGrouping.d.ts +9 -5
- package/lib/types/es6/Core/grid/components/CellSpans.d.ts +2 -0
- package/lib/types/es6/Core/grid/plugins/SortableTitlePlugin.d.ts +2 -0
- package/lib/types/es6/RealtimeGrid/Grid.d.ts +10 -1
- package/lib/types/es6/RealtimeGrid/RowDefinition.d.ts +2 -0
- package/lib/types/es6/RowSelection.d.ts +15 -15
- package/lib/versions.json +4 -4
- package/package.json +6 -2
@@ -128,6 +128,10 @@ ColumnDraggingPlugin.prototype._dragPulseId = 0;
|
|
128
128
|
*/
|
129
129
|
ColumnDraggingPlugin.prototype._pos = null; // Cache of current mouse position
|
130
130
|
/** @private
|
131
|
+
* @type {Object}
|
132
|
+
*/
|
133
|
+
ColumnDraggingPlugin.prototype._startPos = null; // Cache of start column position
|
134
|
+
/** @private
|
131
135
|
* @type {number}
|
132
136
|
*/
|
133
137
|
ColumnDraggingPlugin.prototype._cacheLeft = 0;
|
@@ -413,6 +417,7 @@ ColumnDraggingPlugin.prototype._onMouseDown = function (e) {
|
|
413
417
|
this._clickedSection = section;
|
414
418
|
this._clickedRow = rowIndex;
|
415
419
|
|
420
|
+
this._startPos = this._pos;
|
416
421
|
this._startColumn = movingColumns["left"];
|
417
422
|
this._endColumn = movingColumns["right"];
|
418
423
|
this._leftMovableBorder = movableBorder["left"];
|
@@ -601,31 +606,47 @@ ColumnDraggingPlugin.prototype._onDragEnd = function (e) {
|
|
601
606
|
|
602
607
|
if (!operationCancelled) {
|
603
608
|
if (!this._noColumnMoving) {
|
604
|
-
var
|
605
|
-
|
606
|
-
|
607
|
-
|
608
|
-
|
609
|
-
|
610
|
-
|
611
|
-
|
612
|
-
|
613
|
-
|
614
|
-
|
615
|
-
|
616
|
-
|
609
|
+
var cgp = this._getPlugin("ColumnGroupingPlugin");
|
610
|
+
if(cgp){
|
611
|
+
var cellInfo = cgp.getCellInfo(this._startPos);
|
612
|
+
var srcId = cellInfo["groupId"] || cellInfo["columnId"];
|
613
|
+
var destIndex = this._destColumn;
|
614
|
+
|
615
|
+
// Move group always move to the left of destination
|
616
|
+
// When moving forward, destnation need to added by 1 to move correctly
|
617
|
+
if (this._startColumn < this._destColumn) {
|
618
|
+
destIndex = this._destColumn + 1;
|
619
|
+
}
|
620
|
+
if(srcId){
|
621
|
+
cgp.moveGroup(srcId, destIndex);
|
622
|
+
}
|
623
|
+
} else {
|
624
|
+
var shiftStart = -1;
|
625
|
+
var shiftEnd = -1;
|
626
|
+
var moveSize = -1;
|
627
|
+
if (this._startColumn > this._destColumn) { //Move backward
|
628
|
+
shiftStart = this._destColumn;
|
629
|
+
shiftEnd = this._startColumn - 1;
|
630
|
+
moveSize = -1 * (this._startColumn - this._destColumn); //Move to the left
|
631
|
+
} else
|
632
|
+
if (this._startColumn < this._destColumn) { //Move foward
|
633
|
+
shiftStart = this._endColumn + 1;
|
634
|
+
shiftEnd = this._destColumn;
|
635
|
+
moveSize = ((shiftEnd - shiftStart) + 1); //Move to the right
|
636
|
+
}
|
617
637
|
|
618
|
-
|
619
|
-
|
620
|
-
|
621
|
-
|
622
|
-
|
623
|
-
|
624
|
-
|
625
|
-
|
626
|
-
|
627
|
-
|
628
|
-
|
638
|
+
//Perform moving all columns in the range
|
639
|
+
for(var j = this._hosts.length; --j >= 0;) {
|
640
|
+
var host = this._hosts[j];
|
641
|
+
var i;
|
642
|
+
if (moveSize > 0) { //Move forward
|
643
|
+
for (i = this._startColumn; i <= this._endColumn; i++) {
|
644
|
+
host.moveColumn(this._startColumn, this._destColumn);
|
645
|
+
}
|
646
|
+
} else { //Move backward
|
647
|
+
for (i = this._startColumn; i <= this._endColumn; i++) {
|
648
|
+
host.moveColumn(this._startColumn + (i - this._startColumn), this._destColumn + (i - this._startColumn));
|
649
|
+
}
|
629
650
|
}
|
630
651
|
}
|
631
652
|
}
|
@@ -673,6 +694,7 @@ ColumnDraggingPlugin.prototype._onDragPulse = function() {
|
|
673
694
|
*/
|
674
695
|
ColumnDraggingPlugin.prototype._clearCache = function() {
|
675
696
|
this._startColumn = this._endColumn = this._destColumn = -1;
|
697
|
+
this._startPos = null;
|
676
698
|
|
677
699
|
this._leftMovableBorder = this._rightMovableBorder = -1;
|
678
700
|
|
package/lib/core/dist/core.js
CHANGED
@@ -5272,6 +5272,33 @@ CellSpans.prototype.removeColumn = function (at) { // Use when a column is remov
|
|
5272
5272
|
}
|
5273
5273
|
return dirty;
|
5274
5274
|
};
|
5275
|
+
/** @public
|
5276
|
+
* @param {boolean=} bool
|
5277
|
+
*/
|
5278
|
+
CellSpans.prototype.freezeMapping = function (bool) {
|
5279
|
+
this._frozenMapping = bool !== false;
|
5280
|
+
if(!this._frozenMapping) {
|
5281
|
+
this._mapCellSpans();
|
5282
|
+
}
|
5283
|
+
};
|
5284
|
+
|
5285
|
+
|
5286
|
+
/** @private
|
5287
|
+
*/
|
5288
|
+
CellSpans.prototype._mapCellSpans = function () {
|
5289
|
+
var cellSpans = this._spans;
|
5290
|
+
this._spans = [];
|
5291
|
+
this._occupiedMap = {};
|
5292
|
+
var i, cellSpan;
|
5293
|
+
for(i = cellSpans.length; --i >= 0;) {
|
5294
|
+
cellSpan = cellSpans[i];
|
5295
|
+
if(cellSpan.indexX >= 0) {
|
5296
|
+
cellSpan.register(this._spans, this._occupiedMap);
|
5297
|
+
}
|
5298
|
+
}
|
5299
|
+
};
|
5300
|
+
|
5301
|
+
|
5275
5302
|
/** @public
|
5276
5303
|
* @param {number} from
|
5277
5304
|
* @param {number} amount This can be negative number
|
@@ -5288,18 +5315,10 @@ CellSpans.prototype.shiftColumn = function (from, amount) { // Use when a column
|
|
5288
5315
|
cellSpan.indexX += amount;
|
5289
5316
|
}
|
5290
5317
|
}
|
5291
|
-
if(!dirty) { return false; }
|
5318
|
+
if(!dirty || this._frozenMapping) { return false; }
|
5292
5319
|
|
5293
5320
|
// Re-registers all cellspans. Some of the cellspans may be lost due to shifting
|
5294
|
-
|
5295
|
-
this._spans = [];
|
5296
|
-
this._occupiedMap = {};
|
5297
|
-
for(i = cellSpans.length; --i >= 0;) {
|
5298
|
-
cellSpan = cellSpans[i];
|
5299
|
-
if(cellSpan.indexX >= 0) {
|
5300
|
-
cellSpan.register(this._spans, this._occupiedMap);
|
5301
|
-
}
|
5302
|
-
}
|
5321
|
+
this._mapCellSpans();
|
5303
5322
|
return true;
|
5304
5323
|
};
|
5305
5324
|
/** @public
|
@@ -5588,6 +5607,12 @@ CellSpans.prototype._spans;
|
|
5588
5607
|
*/
|
5589
5608
|
CellSpans.prototype._occupiedMap;
|
5590
5609
|
|
5610
|
+
/**
|
5611
|
+
* @private
|
5612
|
+
* @type {boolean}
|
5613
|
+
*/
|
5614
|
+
CellSpans.prototype._frozenMapping = false;
|
5615
|
+
|
5591
5616
|
/* harmony default export */ const components_CellSpans = (CellSpans);
|
5592
5617
|
|
5593
5618
|
|
@@ -9341,6 +9366,7 @@ LayoutGrid.prototype.setFrozenLayout = function (bool) {
|
|
9341
9366
|
if (this._frozenLayout !== bool) {
|
9342
9367
|
this._frozenLayout = bool;
|
9343
9368
|
|
9369
|
+
this._cellSpans.freezeMapping(this._frozenLayout);
|
9344
9370
|
if (!this._frozenLayout) {
|
9345
9371
|
this._syncLayoutToColumns(0);
|
9346
9372
|
this._syncLayoutToRows(0, this._rowCount);
|
@@ -24225,7 +24251,7 @@ Core_Core.prototype._rowHeightTimerId = 0;
|
|
24225
24251
|
* @return {string}
|
24226
24252
|
*/
|
24227
24253
|
Core_Core.getVersion = function () {
|
24228
|
-
return "5.1.
|
24254
|
+
return "5.1.32";
|
24229
24255
|
};
|
24230
24256
|
/** {@link ElementWrapper#dispose}
|
24231
24257
|
* @override
|
@@ -26577,6 +26603,13 @@ Core_Core.prototype.freezeLayout = function (opt_bool) {
|
|
26577
26603
|
if (prevState !== opt_bool) {
|
26578
26604
|
this._frozenLayout = opt_bool;
|
26579
26605
|
|
26606
|
+
var stp = this.getPlugin("SortableTitlePlugin");
|
26607
|
+
if(this._frozenLayout) {
|
26608
|
+
if(stp) {
|
26609
|
+
stp.freezeIndicator(true);
|
26610
|
+
}
|
26611
|
+
}
|
26612
|
+
|
26580
26613
|
if (!this._frozenLayout) {
|
26581
26614
|
// Width has not yet changed so we need to disable it first
|
26582
26615
|
this._disableEvent("widthChanged");
|
@@ -26605,6 +26638,9 @@ Core_Core.prototype.freezeLayout = function (opt_bool) {
|
|
26605
26638
|
if(!viewChanged) { // Always update virtualizer
|
26606
26639
|
this._rowVirtualizer.update(true); // Force section activation
|
26607
26640
|
}
|
26641
|
+
if(stp) {
|
26642
|
+
stp.freezeIndicator(false);
|
26643
|
+
}
|
26608
26644
|
}
|
26609
26645
|
this._rowHeightSync = true;
|
26610
26646
|
}
|
@@ -29252,6 +29288,10 @@ SortableTitlePlugin.prototype._userManagedLogic = false;
|
|
29252
29288
|
* @type {boolean}
|
29253
29289
|
*/
|
29254
29290
|
SortableTitlePlugin.prototype._disabled = false;
|
29291
|
+
/** @private
|
29292
|
+
* @type {boolean}
|
29293
|
+
*/
|
29294
|
+
SortableTitlePlugin.prototype._frozenIndicator = false;
|
29255
29295
|
/** Since DataView in real-time grid has only one ROW_DEF column, we need to re-map sorting field to sort correctly.
|
29256
29296
|
* @private
|
29257
29297
|
* @type {boolean}
|
@@ -29810,8 +29850,9 @@ SortableTitlePlugin.prototype.sortColumns = function (sortOptions, opt_arg) {
|
|
29810
29850
|
* @param {Object=} opt_arg Event argument to be sent with preDataSorting event
|
29811
29851
|
*/
|
29812
29852
|
SortableTitlePlugin.prototype.clearSortState = function (opt_arg) {
|
29813
|
-
this._popSortState(0, opt_arg)
|
29814
|
-
|
29853
|
+
if(this._popSortState(0, opt_arg)) {
|
29854
|
+
this.updateSortSymbols();
|
29855
|
+
}
|
29815
29856
|
};
|
29816
29857
|
/** @description Perform sorting with the same parameter.
|
29817
29858
|
* @public
|
@@ -30016,6 +30057,12 @@ SortableTitlePlugin.prototype.disableTwoStateSorting = function (disabled) {
|
|
30016
30057
|
|
30017
30058
|
};
|
30018
30059
|
/** @public
|
30060
|
+
* @param {boolean=} bool=true, if set to false it will be unfreeze indicator
|
30061
|
+
*/
|
30062
|
+
SortableTitlePlugin.prototype.freezeIndicator = function (bool) {
|
30063
|
+
this._frozenIndicator = bool !== false;
|
30064
|
+
};
|
30065
|
+
/** @public
|
30019
30066
|
* @param {boolean=} disabled
|
30020
30067
|
*/
|
30021
30068
|
SortableTitlePlugin.prototype.disableSortSymbols = function (disabled) {
|
@@ -30628,7 +30675,7 @@ SortableTitlePlugin.prototype._clearSortSymbols = function (state) {
|
|
30628
30675
|
SortableTitlePlugin.prototype._updateSortableIndicator = function (hostIndex) {
|
30629
30676
|
var t = this;
|
30630
30677
|
var host = t._hosts[hostIndex];
|
30631
|
-
if (!host) { return; }
|
30678
|
+
if (!host || this._frozenIndicator) { return; }
|
30632
30679
|
|
30633
30680
|
var section = host.getSection("title");
|
30634
30681
|
if (section == null) { return; }
|