@refinitiv-ui/efx-grid 6.0.37 → 6.0.39
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/core/dist/core.js +165 -20
- package/lib/core/dist/core.min.js +1 -1
- package/lib/core/es6/grid/Core.d.ts +2 -0
- package/lib/core/es6/grid/Core.js +62 -5
- package/lib/core/es6/grid/plugins/SortableTitlePlugin.d.ts +3 -0
- package/lib/core/es6/grid/plugins/SortableTitlePlugin.js +41 -7
- package/lib/core/es6/grid/util/TrackLayout.d.ts +3 -1
- package/lib/core/es6/grid/util/TrackLayout.js +23 -5
- package/lib/grid/index.js +1 -1
- package/lib/rt-grid/dist/rt-grid.js +158 -48
- package/lib/rt-grid/dist/rt-grid.min.js +1 -1
- package/lib/rt-grid/es6/ColumnDefinition.js +4 -3
- package/lib/rt-grid/es6/Grid.d.ts +1 -1
- package/lib/rt-grid/es6/Grid.js +63 -29
- package/lib/rt-grid/es6/RowDefinition.js +6 -6
- package/lib/tr-grid-cell-selection/es6/CellSelection.js +180 -421
- package/lib/tr-grid-column-grouping/es6/ColumnGrouping.d.ts +4 -0
- package/lib/tr-grid-column-grouping/es6/ColumnGrouping.js +221 -2
- package/lib/tr-grid-column-stack/es6/ColumnStack.d.ts +7 -1
- package/lib/tr-grid-column-stack/es6/ColumnStack.js +281 -69
- package/lib/tr-grid-row-dragging/es6/RowDragging.js +83 -3
- package/lib/tr-grid-row-selection/es6/RowSelection.js +18 -40
- package/lib/tr-grid-util/es6/GridPlugin.js +91 -42
- package/lib/types/es6/ColumnGrouping.d.ts +4 -0
- package/lib/types/es6/ColumnStack.d.ts +7 -1
- package/lib/types/es6/Core/grid/Core.d.ts +2 -0
- package/lib/types/es6/Core/grid/util/TrackLayout.d.ts +3 -1
- package/lib/types/es6/RealtimeGrid/Grid.d.ts +1 -1
- package/lib/types/es6/RealtimeGrid/RowDefinition.d.ts +2 -2
- package/lib/versions.json +6 -6
- package/package.json +1 -1
@@ -805,10 +805,11 @@ ColumnDefinition.prototype.getConfigObject = function(colOptions) {
|
|
805
805
|
obj["minWidth"] = value;
|
806
806
|
}
|
807
807
|
|
808
|
-
value = core.isColumnVisible(colIndex);
|
809
808
|
// If "hidden" property already available from core/extensions, don't override this property
|
810
|
-
if(
|
811
|
-
|
809
|
+
if(obj["hidden"] == null) {
|
810
|
+
if(!core.getColumnVisibility(colIndex, 0)) {
|
811
|
+
obj["hidden"] = true;
|
812
|
+
}
|
812
813
|
}
|
813
814
|
|
814
815
|
value = core.getColumnAlignment(colIndex);
|
@@ -266,7 +266,7 @@ declare class Grid extends EventDispatcher {
|
|
266
266
|
|
267
267
|
public freezeColumn(colIndex?: number|null, pinnedRightColumns?: number|null): void;
|
268
268
|
|
269
|
-
public pinColumn(colRef: Grid.ColumnReference|(Grid.ColumnReference)[]|null): boolean;
|
269
|
+
public pinColumn(colRef: Grid.ColumnReference|(Grid.ColumnReference)[]|null, side?: string|null): boolean;
|
270
270
|
|
271
271
|
public unpinColumn(colRef: Grid.ColumnReference|(Grid.ColumnReference)[]|null, dest?: Grid.ColumnReference|null): boolean;
|
272
272
|
|
package/lib/rt-grid/es6/Grid.js
CHANGED
@@ -3101,50 +3101,72 @@ Grid.prototype.freezeColumn = function(colIndex, pinnedRightColumns) {
|
|
3101
3101
|
}
|
3102
3102
|
this._grid.freezeColumn(colIndex, pinnedRightColumns);
|
3103
3103
|
};
|
3104
|
+
|
3104
3105
|
/** Pin column to the left side by moving the specified column to the rightmost of the frozen columns. <br>
|
3105
3106
|
* The method will do nothing if the specified column is already pinned to the left side
|
3106
3107
|
* @public
|
3107
3108
|
* @param {Grid~ColumnReference|Array.<Grid~ColumnReference>} colRef
|
3109
|
+
* @param {string=} side Available values are: left|right. If no value is supplied, the column will be pinned to the left.
|
3108
3110
|
* @return {boolean}
|
3109
3111
|
*/
|
3110
|
-
Grid.prototype.pinColumn = function(colRef) {
|
3112
|
+
Grid.prototype.pinColumn = function(colRef, side) {
|
3111
3113
|
if(Array.isArray(colRef)) {
|
3112
3114
|
var ary = colRef;
|
3113
3115
|
var len = ary.length;
|
3114
3116
|
|
3115
3117
|
var dirty = 0;
|
3116
3118
|
for(var i = 0; i < len; ++i) {
|
3117
|
-
dirty |= this._pinColumn(ary[i]);
|
3119
|
+
dirty |= this._pinColumn(ary[i], side);
|
3118
3120
|
}
|
3119
3121
|
return dirty ? true : false;
|
3120
3122
|
}
|
3121
|
-
return this._pinColumn(colRef);
|
3123
|
+
return this._pinColumn(colRef, side);
|
3122
3124
|
};
|
3123
3125
|
/** @private
|
3124
3126
|
* @param {Grid~ColumnReference} colRef
|
3127
|
+
* @param {string=} side Available values are: left|right. If no value is supplied, the column will be pinned to the left.
|
3125
3128
|
* @return {boolean}
|
3126
3129
|
*/
|
3127
|
-
Grid.prototype._pinColumn = function(colRef) {
|
3130
|
+
Grid.prototype._pinColumn = function(colRef, side) {
|
3128
3131
|
var colIndex = this.getColumnIndex(colRef);
|
3129
|
-
|
3132
|
+
var colCount = this.getColumnCount();
|
3133
|
+
if(colIndex < 0 || colIndex > colCount) {
|
3130
3134
|
return false;
|
3131
3135
|
}
|
3132
|
-
|
3133
|
-
|
3134
|
-
|
3135
|
-
|
3136
|
-
|
3137
|
-
|
3138
|
-
|
3139
|
-
|
3140
|
-
|
3141
|
-
|
3136
|
+
|
3137
|
+
var leftPinnedCount = this._grid.getPinnedLeftColumnCount();
|
3138
|
+
var rightPinnedCount = this._grid.getPinnedRightColumnCount();
|
3139
|
+
var stationaryIdx = this._grid.getStationaryColumnIndex();
|
3140
|
+
|
3141
|
+
if(side && side.toLowerCase() === "right") {
|
3142
|
+
var rightPinnedIndex = this._grid.getFirstPinnedRightIndex();
|
3143
|
+
if(colIndex >= rightPinnedIndex) {
|
3144
|
+
return false; // The column is already pinned area
|
3145
|
+
}
|
3146
|
+
|
3147
|
+
if(stationaryIdx >= 0 && colIndex <= stationaryIdx) {
|
3148
|
+
return false;
|
3149
|
+
}
|
3150
|
+
|
3151
|
+
this.moveColumnById(colIndex, rightPinnedIndex);
|
3152
|
+
rightPinnedCount += 1;
|
3153
|
+
leftPinnedCount -= 1;
|
3154
|
+
} else {
|
3155
|
+
if(colIndex < leftPinnedCount) {
|
3156
|
+
return false; // The column is already pinned area
|
3157
|
+
}
|
3158
|
+
if(!leftPinnedCount) {
|
3159
|
+
if(stationaryIdx >= 0) {
|
3160
|
+
leftPinnedCount = stationaryIdx;
|
3161
|
+
if(colIndex > stationaryIdx) {
|
3162
|
+
leftPinnedCount++;
|
3163
|
+
}
|
3142
3164
|
}
|
3143
3165
|
}
|
3166
|
+
this.moveColumnById(colIndex, leftPinnedCount);
|
3144
3167
|
}
|
3145
3168
|
|
3146
|
-
this.
|
3147
|
-
this._grid.freezeColumn(pinnedCount);
|
3169
|
+
this._grid.freezeColumn(leftPinnedCount, rightPinnedCount);
|
3148
3170
|
return true;
|
3149
3171
|
};
|
3150
3172
|
/** Unpin column from the left side by moving the specified column to the end of the frozen columns. <br>
|
@@ -3177,13 +3199,16 @@ Grid.prototype._unpinColumn = function(colRef, dest) {
|
|
3177
3199
|
if(colIndex < 0) {
|
3178
3200
|
return false;
|
3179
3201
|
}
|
3180
|
-
|
3181
|
-
|
3202
|
+
|
3203
|
+
var leftPinnedCount = this._grid.getPinnedLeftColumnCount();
|
3204
|
+
var rightPinnedCount = this._grid.getPinnedRightColumnCount();
|
3205
|
+
var colCount = this.getColumnCount();
|
3206
|
+
var firstRightPinnedIndex = colCount - rightPinnedCount;
|
3207
|
+
|
3208
|
+
if(colIndex >= leftPinnedCount && colIndex < firstRightPinnedIndex) {
|
3182
3209
|
return false;
|
3183
3210
|
}
|
3184
|
-
|
3185
|
-
return false; // The column is outside of frozen area
|
3186
|
-
}
|
3211
|
+
|
3187
3212
|
var srcId = null;
|
3188
3213
|
var destId = null;
|
3189
3214
|
if(dest != null) {
|
@@ -3194,11 +3219,19 @@ Grid.prototype._unpinColumn = function(colRef, dest) {
|
|
3194
3219
|
|
3195
3220
|
var stationaryIdx = this._grid.getStationaryColumnIndex();
|
3196
3221
|
|
3197
|
-
if(colIndex
|
3198
|
-
|
3199
|
-
|
3222
|
+
if(colIndex < leftPinnedCount) {
|
3223
|
+
if(colIndex > stationaryIdx) {
|
3224
|
+
this.moveColumnById(colIndex, leftPinnedCount);
|
3225
|
+
}
|
3200
3226
|
|
3201
|
-
|
3227
|
+
this._grid.freezeColumn(leftPinnedCount - 2, rightPinnedCount); // Column index is used for freezing
|
3228
|
+
} else if(colIndex >= firstRightPinnedIndex) {
|
3229
|
+
if(colIndex > stationaryIdx) {
|
3230
|
+
this.moveColumnById(colIndex, firstRightPinnedIndex);
|
3231
|
+
}
|
3232
|
+
|
3233
|
+
this._grid.freezeColumn(leftPinnedCount - 1, rightPinnedCount - 1); // Column index is used for freezing
|
3234
|
+
}
|
3202
3235
|
|
3203
3236
|
if(colIndex > stationaryIdx) {
|
3204
3237
|
if(destId != null) {
|
@@ -3213,11 +3246,12 @@ Grid.prototype._unpinColumn = function(colRef, dest) {
|
|
3213
3246
|
* @return {boolean}
|
3214
3247
|
*/
|
3215
3248
|
Grid.prototype.unpinAllColumns = function() {
|
3216
|
-
var
|
3217
|
-
|
3249
|
+
var leftPinnedCount = this._grid.getPinnedLeftColumnCount();
|
3250
|
+
var rightPinnedCount = this._grid.getPinnedRightColumnCount();
|
3251
|
+
if(!leftPinnedCount && !rightPinnedCount) {
|
3218
3252
|
return false;
|
3219
3253
|
}
|
3220
|
-
this._grid.freezeColumn(-1); // Column index is used for freezing
|
3254
|
+
this._grid.freezeColumn(-1, 0); // Column index is used for left freezing and column count is used for right freezing
|
3221
3255
|
return true;
|
3222
3256
|
};
|
3223
3257
|
|
@@ -94,7 +94,7 @@ RowDefinition.prototype._permId = "";
|
|
94
94
|
/** @type {string|null}
|
95
95
|
* @private
|
96
96
|
*/
|
97
|
-
RowDefinition.prototype._label = null; // Label overrides _ric and
|
97
|
+
RowDefinition.prototype._label = null; // Label overrides _ric and _permId
|
98
98
|
/** @type {boolean|null}
|
99
99
|
* @private
|
100
100
|
*/
|
@@ -261,15 +261,15 @@ RowDefinition.prototype.initialize = function(rowOptions) {
|
|
261
261
|
|
262
262
|
var expanded = this._expanded;
|
263
263
|
var symbol = this._ric || this._chainRic;
|
264
|
-
var asChain =
|
264
|
+
var asChain = this._isChain || !!this._chainRic;
|
265
265
|
if(this._ric && this._ric.indexOf("0#") >= 0){
|
266
266
|
asChain = true;
|
267
267
|
expanded = true;
|
268
268
|
}
|
269
|
-
if(
|
269
|
+
if(this._isChain === false){
|
270
270
|
asChain = false;
|
271
271
|
}
|
272
|
-
if(
|
272
|
+
if(this._expanded === false){
|
273
273
|
expanded = false;
|
274
274
|
}
|
275
275
|
if(symbol || this._permId){
|
@@ -284,7 +284,7 @@ RowDefinition.prototype._initializeAsConstituent = function(rowOptions) {
|
|
284
284
|
var parentDef = /** @type{RowDefinition} */(rowOptions["parent"]);
|
285
285
|
if(this.setParent(parentDef)) {
|
286
286
|
this._dataId = /** @type{string} */(rowOptions["dataId"]); // Constituent will have the same subId as its parent but with different ric
|
287
|
-
|
287
|
+
this._ric = /** @type{string} */(rowOptions["ric"]);
|
288
288
|
this._dc = parentDef._dc; // Parent chain must have data cache
|
289
289
|
if(this._dc) {
|
290
290
|
var rowData = this.getRowData(); // Do not trigger any data update
|
@@ -339,7 +339,7 @@ RowDefinition.prototype.setContent = function(userInput, permId, asChain, expand
|
|
339
339
|
if(asChain === false){
|
340
340
|
this._ric = this._userInput;
|
341
341
|
} else {
|
342
|
-
this._ric = expanded ? this._userInput.replace("0#", "")
|
342
|
+
this._ric = expanded === false ? this._userInput : this._userInput.replace("0#", "");
|
343
343
|
this._expanded = expanded;
|
344
344
|
this._isChain = true; // Only chain can be expanded by 0#
|
345
345
|
this._chainRic = this._userInput;
|