@refinitiv-ui/efx-grid 6.0.24 → 6.0.25
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 +1330 -144
- package/lib/core/dist/core.min.js +1 -1
- package/lib/core/es6/grid/Core.d.ts +11 -0
- package/lib/core/es6/grid/Core.js +81 -10
- package/lib/grid/index.js +1 -1
- package/lib/rt-grid/dist/rt-grid.js +707 -51
- package/lib/rt-grid/dist/rt-grid.min.js +1 -1
- package/lib/rt-grid/es6/ColumnDefinition.js +1 -1
- package/lib/rt-grid/es6/FieldDefinition.d.ts +2 -0
- package/lib/rt-grid/es6/FieldDefinition.js +13 -2
- package/lib/rt-grid/es6/Grid.js +75 -38
- package/lib/tr-grid-column-grouping/es6/ColumnGrouping.d.ts +3 -2
- package/lib/tr-grid-column-grouping/es6/ColumnGrouping.js +314 -566
- package/lib/tr-grid-column-stack/es6/ColumnStack.d.ts +3 -3
- package/lib/tr-grid-column-stack/es6/ColumnStack.js +45 -53
- package/lib/tr-grid-in-cell-editing/es6/InCellEditing.js +21 -9
- package/lib/tr-grid-util/es6/GridPlugin.d.ts +1 -1
- package/lib/tr-grid-util/es6/GridPlugin.js +13 -15
- package/lib/tr-grid-util/es6/GroupDefinitions.d.ts +58 -0
- package/lib/tr-grid-util/es6/GroupDefinitions.js +538 -0
- package/lib/tr-grid-util/es6/Popup.js +1 -1
- package/lib/tr-grid-util/es6/index.d.ts +2 -0
- package/lib/tr-grid-util/es6/index.js +3 -0
- package/lib/types/es6/ColumnGrouping.d.ts +3 -2
- package/lib/types/es6/Core/grid/Core.d.ts +11 -0
- package/lib/types/es6/RealtimeGrid/FieldDefinition.d.ts +2 -0
- package/lib/versions.json +4 -4
- package/package.json +1 -1
@@ -98,11 +98,11 @@ declare class ColumnStackPlugin extends GridPlugin {
|
|
98
98
|
|
99
99
|
public getStackMemberIds(stackId: string): (string)[];
|
100
100
|
|
101
|
-
public getColumnIdsByIndex(
|
101
|
+
public getColumnIdsByIndex(colIndices: number|(number)[]|null): (string)[];
|
102
102
|
|
103
|
-
public getColumnIndicesByColumnIds(
|
103
|
+
public getColumnIndicesByColumnIds(colIds: string|(string)[]|null): (string)[];
|
104
104
|
|
105
|
-
public getColumnIdsByFields(
|
105
|
+
public getColumnIdsByFields(fields: string|(string)[]|null): (string)[];
|
106
106
|
|
107
107
|
public addColumnToStack(colRef: number|string|null, stackId: string): void;
|
108
108
|
|
@@ -426,7 +426,6 @@ ColumnStackPlugin.prototype._transformStackConfig = function(stackConfig) {
|
|
426
426
|
stackConfig.colRefs = [];
|
427
427
|
var children = stackConfig.children;
|
428
428
|
var fields = stackConfig.fields;
|
429
|
-
var activeColumn = stackConfig.activeColumn;
|
430
429
|
var field;
|
431
430
|
if(children){
|
432
431
|
var childLen = stackConfig.children.length;
|
@@ -440,12 +439,13 @@ ColumnStackPlugin.prototype._transformStackConfig = function(stackConfig) {
|
|
440
439
|
} else if(fields) {
|
441
440
|
stackConfig.colRefs = fields;
|
442
441
|
}
|
442
|
+
var activeColumn = stackConfig.activeColumn;
|
443
443
|
if(activeColumn && !this._autoStacking){
|
444
444
|
var activeColIndex = this.getColumnIndex(activeColumn);
|
445
445
|
if(activeColIndex !== -1){
|
446
446
|
field = this._getField(colIndex);
|
447
447
|
if(field){
|
448
|
-
stackConfig.activeColumn;
|
448
|
+
stackConfig.activeColumn = field;
|
449
449
|
}
|
450
450
|
}
|
451
451
|
}
|
@@ -929,6 +929,7 @@ ColumnStackPlugin.prototype.stackColumns = function(colRefs, stackId, options) {
|
|
929
929
|
if(colRefs.length) {
|
930
930
|
if(typeof colRefs[0] === "string") {
|
931
931
|
fields = colRefs.slice();
|
932
|
+
colRefs = this.getColumnIndices(colRefs);
|
932
933
|
} else {
|
933
934
|
colRefs.sort(function(a, b) { return a - b; }); // Only sort in the case of column index stack
|
934
935
|
for(i = 0; i < colRefs.length; i++){
|
@@ -936,7 +937,6 @@ ColumnStackPlugin.prototype.stackColumns = function(colRefs, stackId, options) {
|
|
936
937
|
fields.push(field);
|
937
938
|
}
|
938
939
|
}
|
939
|
-
colRefs = this.getColumnIndices(colRefs);
|
940
940
|
}
|
941
941
|
|
942
942
|
// Save stack fields for
|
@@ -954,13 +954,14 @@ ColumnStackPlugin.prototype.stackColumns = function(colRefs, stackId, options) {
|
|
954
954
|
return false;
|
955
955
|
}
|
956
956
|
|
957
|
-
var activeIndex =
|
958
|
-
if
|
959
|
-
|
960
|
-
|
961
|
-
|
962
|
-
|
957
|
+
var activeIndex = colRefs[0];
|
958
|
+
if(options.activeColumn != null) {
|
959
|
+
var idx = this.getColumnIndex(options.activeColumn);
|
960
|
+
if(idx > -1 && colRefs.indexOf(idx) > -1) {
|
961
|
+
activeIndex = idx;
|
962
|
+
}
|
963
963
|
}
|
964
|
+
|
964
965
|
// Collecting data
|
965
966
|
var stack = {};
|
966
967
|
stack.stackId = sid;
|
@@ -1486,19 +1487,17 @@ ColumnStackPlugin.prototype.getStackMemberIds = function(stackId) {
|
|
1486
1487
|
|
1487
1488
|
/** @public
|
1488
1489
|
* @description Get column id by column index or indices
|
1489
|
-
* @param {number|Array<number>}
|
1490
|
+
* @param {number|Array<number>} colIndices
|
1490
1491
|
* @return {!Array.<string>} Column ids
|
1491
1492
|
*/
|
1492
|
-
ColumnStackPlugin.prototype.getColumnIdsByIndex = function(
|
1493
|
-
|
1494
|
-
|
1495
|
-
if(Array.isArray(columnIndex)){
|
1496
|
-
colIndices = columnIndex;
|
1497
|
-
} else {
|
1498
|
-
colIndices.push(colIds);
|
1493
|
+
ColumnStackPlugin.prototype.getColumnIdsByIndex = function(colIndices) {
|
1494
|
+
if(!Array.isArray(colIndices)){
|
1495
|
+
colIndices = [colIndices];
|
1499
1496
|
}
|
1497
|
+
var colIds = [];
|
1498
|
+
var colId;
|
1500
1499
|
for(var i = 0; i < colIndices.length; ++i) {
|
1501
|
-
|
1500
|
+
colId = this.getColumnId(colIndices[i]);
|
1502
1501
|
colIds.push(colId);
|
1503
1502
|
}
|
1504
1503
|
return colIds;
|
@@ -1506,39 +1505,33 @@ ColumnStackPlugin.prototype.getColumnIdsByIndex = function(columnIndex) {
|
|
1506
1505
|
|
1507
1506
|
/** @public
|
1508
1507
|
* @description Get column indices by column ids
|
1509
|
-
* @param {string|Array<string>}
|
1508
|
+
* @param {string|Array<string>} colIds
|
1510
1509
|
* @return {!Array.<string>} Column indices
|
1511
1510
|
*/
|
1512
|
-
ColumnStackPlugin.prototype.getColumnIndicesByColumnIds = function(
|
1513
|
-
|
1514
|
-
|
1515
|
-
if(Array.isArray(columnId)){
|
1516
|
-
colIds = columnId;
|
1517
|
-
} else {
|
1518
|
-
colIds.push(colIds);
|
1511
|
+
ColumnStackPlugin.prototype.getColumnIndicesByColumnIds = function(colIds) {
|
1512
|
+
if(!Array.isArray(colIds)){
|
1513
|
+
colIds = [colIds];
|
1519
1514
|
}
|
1515
|
+
var colIndices = [];
|
1516
|
+
var colIndex;
|
1520
1517
|
for(var i = 0; i < colIds.length; ++i) {
|
1521
|
-
|
1522
|
-
colIndices.push(
|
1518
|
+
colIndex = this.getColumnIndex(colIds[i]);
|
1519
|
+
colIndices.push(colIndex);
|
1523
1520
|
}
|
1524
1521
|
return colIndices;
|
1525
1522
|
};
|
1526
1523
|
|
1527
1524
|
/** @public
|
1528
1525
|
* @description Get column ids by fields
|
1529
|
-
* @param {string|Array<string>}
|
1526
|
+
* @param {string|Array<string>} fields
|
1530
1527
|
* @return {!Array.<string>} Column indices
|
1531
1528
|
*/
|
1532
|
-
ColumnStackPlugin.prototype.getColumnIdsByFields = function(
|
1533
|
-
|
1534
|
-
|
1535
|
-
if(Array.isArray(field)){
|
1536
|
-
fields = field;
|
1537
|
-
} else {
|
1538
|
-
fields.push(field);
|
1529
|
+
ColumnStackPlugin.prototype.getColumnIdsByFields = function(fields) {
|
1530
|
+
if(!Array.isArray(fields)){
|
1531
|
+
fields = [fields];
|
1539
1532
|
}
|
1540
1533
|
|
1541
|
-
colIndices = this.getColumnIndices(
|
1534
|
+
var colIndices = this.getColumnIndices(fields);
|
1542
1535
|
|
1543
1536
|
return this.getColumnIdsByIndex(colIndices);
|
1544
1537
|
};
|
@@ -1550,9 +1543,9 @@ ColumnStackPlugin.prototype.getColumnIdsByFields = function(field) {
|
|
1550
1543
|
*/
|
1551
1544
|
ColumnStackPlugin.prototype.addColumnToStack = function(colRef, stackId) {
|
1552
1545
|
if(typeof colRef === "string") {
|
1553
|
-
|
1554
|
-
if(
|
1555
|
-
|
1546
|
+
colRef = this.getColumnIndex(colRef);
|
1547
|
+
if(colRef < 0) {
|
1548
|
+
return;
|
1556
1549
|
}
|
1557
1550
|
}
|
1558
1551
|
|
@@ -1570,7 +1563,7 @@ ColumnStackPlugin.prototype.addColumnToStack = function(colRef, stackId) {
|
|
1570
1563
|
}
|
1571
1564
|
|
1572
1565
|
// Prevent from flashing in stack mode
|
1573
|
-
if(
|
1566
|
+
if(stack.collapsed !== false) {
|
1574
1567
|
this._setColumnVisibility(colRef, false);
|
1575
1568
|
}
|
1576
1569
|
|
@@ -1585,8 +1578,6 @@ ColumnStackPlugin.prototype.addColumnToStack = function(colRef, stackId) {
|
|
1585
1578
|
stack.activeColumn = stack.stackRefs[0];
|
1586
1579
|
}
|
1587
1580
|
|
1588
|
-
var activeIndex = this._getColumnIndex(stack.activeColumn);
|
1589
|
-
|
1590
1581
|
// Pack stacked columns together
|
1591
1582
|
this._moveStackedColumns(stack.stackRefs);
|
1592
1583
|
|
@@ -1599,16 +1590,16 @@ ColumnStackPlugin.prototype.addColumnToStack = function(colRef, stackId) {
|
|
1599
1590
|
*/
|
1600
1591
|
ColumnStackPlugin.prototype.removeColumnFromStack = function(colRef) {
|
1601
1592
|
if(typeof colRef === "string") {
|
1602
|
-
|
1603
|
-
if(
|
1604
|
-
|
1593
|
+
colRef = this.getColumnIndex(colRef);
|
1594
|
+
if(colRef < 0) {
|
1595
|
+
return;
|
1605
1596
|
}
|
1606
1597
|
}
|
1607
1598
|
|
1608
1599
|
var stackId = this.getStackId(colRef);
|
1609
1600
|
var stack = this._stacks[stackId];
|
1610
|
-
if(!stack
|
1611
|
-
return;
|
1601
|
+
if(!stack) {
|
1602
|
+
return;
|
1612
1603
|
}
|
1613
1604
|
|
1614
1605
|
var stackMembers = this.getStackMemberIndices(stackId);
|
@@ -1669,17 +1660,18 @@ ColumnStackPlugin.prototype.reorderStackColumns = function(colRefs, stackId) {
|
|
1669
1660
|
}
|
1670
1661
|
|
1671
1662
|
var newStackMembers = [];
|
1672
|
-
|
1673
|
-
|
1663
|
+
var i, colIndex;
|
1664
|
+
for(i = 0; i < len; i++ ){
|
1665
|
+
colIndex = colRefs[i];
|
1674
1666
|
if(stackMemberIndices.indexOf(colIndex) !== -1){
|
1675
1667
|
newStackMembers.push(colIndex);
|
1676
1668
|
}
|
1677
1669
|
}
|
1678
1670
|
if(newStackMembers.length !== stackMemberCount){
|
1679
1671
|
for(i = 0; i < stackMemberCount; i++ ){
|
1680
|
-
|
1681
|
-
if(newStackMembers.indexOf(
|
1682
|
-
newStackMembers.push(
|
1672
|
+
colIndex = stackMemberIndices[i];
|
1673
|
+
if(newStackMembers.indexOf(colIndex) === -1){
|
1674
|
+
newStackMembers.push(colIndex);
|
1683
1675
|
if(newStackMembers.length === stackMemberCount){
|
1684
1676
|
break;
|
1685
1677
|
}
|
@@ -350,7 +350,7 @@ InCellEditingPlugin._primaryColor = "";
|
|
350
350
|
/** @type {string}
|
351
351
|
* @private
|
352
352
|
*/
|
353
|
-
InCellEditingPlugin._styles = prettifyCss([":host .cell.editing input[type=text]", ["border-style: solid;"]]);
|
353
|
+
InCellEditingPlugin._styles = prettifyCss([":host .cell.editing input[type=text]", ["border-style: solid;"], ":host .cell.editing", ["z-index: 2;"]]);
|
354
354
|
|
355
355
|
/** @private
|
356
356
|
*/
|
@@ -1911,11 +1911,18 @@ InCellEditingPlugin.prototype._onUpdateEditorPopup = function () {
|
|
1911
1911
|
if (this._compositeGrid || this._realTimeGrid) {
|
1912
1912
|
parentElement = grid.getElement().parentElement;
|
1913
1913
|
}
|
1914
|
+
var rowIndex, colIndex;
|
1914
1915
|
if (this._activeInCellCache) {
|
1915
1916
|
var activePos = this._activePos;
|
1916
1917
|
if (activePos) {
|
1918
|
+
rowIndex = activePos["rowIndex"];
|
1919
|
+
colIndex = activePos["colIndex"];
|
1917
1920
|
var section = grid.getSection(activePos["sectionType"]);
|
1918
|
-
var cell = section.getCell(
|
1921
|
+
var cell = section.getCell(colIndex, rowIndex);
|
1922
|
+
var stretchedCell = section.getStretchedCell(cell, rowIndex);
|
1923
|
+
if (stretchedCell) {
|
1924
|
+
cell = stretchedCell;
|
1925
|
+
}
|
1919
1926
|
if (cell) {
|
1920
1927
|
var popup = this._activeInCellCache["balloonPopup"];
|
1921
1928
|
popup.attachTo(cell.getElement());
|
@@ -1925,7 +1932,7 @@ InCellEditingPlugin.prototype._onUpdateEditorPopup = function () {
|
|
1925
1932
|
}
|
1926
1933
|
} else if (this._activeRowId) {
|
1927
1934
|
var sectionContent = grid.getSection("content");
|
1928
|
-
|
1935
|
+
rowIndex = this._getRowIndex(this._activeRowId);
|
1929
1936
|
if (sectionContent.isRowVisible(rowIndex)) {
|
1930
1937
|
var lastIndex = (sectionContent.getColumnCount() || 0) - 1;
|
1931
1938
|
for (var columnIndex = 0; columnIndex <= lastIndex; columnIndex++) {
|
@@ -1942,7 +1949,6 @@ InCellEditingPlugin.prototype._onUpdateEditorPopup = function () {
|
|
1942
1949
|
}
|
1943
1950
|
}
|
1944
1951
|
}
|
1945
|
-
grid.focus();
|
1946
1952
|
};
|
1947
1953
|
/** Update editor popup position and styles
|
1948
1954
|
* @private
|
@@ -1953,6 +1959,7 @@ InCellEditingPlugin.prototype._onUpdateEditorPopup = function () {
|
|
1953
1959
|
InCellEditingPlugin.prototype._updateEditorPopup = function (contentEditor, cell, grid) {
|
1954
1960
|
var popup = contentEditor["balloonPopup"];
|
1955
1961
|
var editor = contentEditor["editor"];
|
1962
|
+
var inputElement = contentEditor["inputElement"];
|
1956
1963
|
var popupElem = popup.getElement();
|
1957
1964
|
var pos = grid.getRelativePosition(cell);
|
1958
1965
|
var width = cell.getWidth();
|
@@ -1992,12 +1999,16 @@ InCellEditingPlugin.prototype._updateEditorPopup = function (contentEditor, cell
|
|
1992
1999
|
} else {
|
1993
2000
|
var acquiredWidth = pos["x"] + newWidth;
|
1994
2001
|
var acquiredHeight = pos["y"] - offsetTop + newHeight;
|
1995
|
-
|
1996
|
-
//
|
1997
|
-
if (
|
1998
|
-
|
1999
|
-
|
2002
|
+
var isPinned = grid.isPinnedColumn(pos["colIndex"]);
|
2003
|
+
// if column is pinned, doesn't need to calculate left overflow
|
2004
|
+
if (!isPinned) {
|
2005
|
+
// Left overflow
|
2006
|
+
if (pos["x"] < offsetLeft) {
|
2007
|
+
newWidth = newWidth - (offsetLeft - pos["x"]);
|
2008
|
+
marginLeft = marginLeft + Math.abs(pos["x"] - offsetLeft);
|
2009
|
+
}
|
2000
2010
|
}
|
2011
|
+
|
2001
2012
|
// Right overflow
|
2002
2013
|
if (acquiredWidth > offsetWidth) {
|
2003
2014
|
newWidth = newWidth - (acquiredWidth - offsetWidth);
|
@@ -2020,6 +2031,7 @@ InCellEditingPlugin.prototype._updateEditorPopup = function (contentEditor, cell
|
|
2020
2031
|
editor.style.height = newHeight ? newHeight + "px" : "";
|
2021
2032
|
editor.style.marginLeft = marginLeft ? marginLeft + "px" : 0;
|
2022
2033
|
editor.style.marginTop = marginTop ? marginTop + "px" : 0;
|
2034
|
+
inputElement.focus();
|
2023
2035
|
};
|
2024
2036
|
export default InCellEditingPlugin;
|
2025
2037
|
export { InCellEditingPlugin, InCellEditingPlugin as InCellEditing, InCellEditingPlugin as InCellEditingExtension };
|
@@ -28,7 +28,7 @@ declare class GridPlugin extends EventDispatcher {
|
|
28
28
|
|
29
29
|
public getColumnName(colRef: number|string|null): string;
|
30
30
|
|
31
|
-
public getColumnIndex(
|
31
|
+
public getColumnIndex(colRef: number|string|null): number;
|
32
32
|
|
33
33
|
public getColumnIndices(colRefs: (number|string)[]|null): (number)[]|null;
|
34
34
|
|
@@ -234,29 +234,27 @@ GridPlugin.prototype.getColumnName = function (colRef) {
|
|
234
234
|
return "";
|
235
235
|
};
|
236
236
|
/** @public
|
237
|
-
* @param {number|string}
|
237
|
+
* @param {number|string} colRef Column id, field name or column index
|
238
238
|
* @return {number}
|
239
239
|
*/
|
240
|
-
GridPlugin.prototype.getColumnIndex = function (
|
241
|
-
if(typeof
|
242
|
-
return
|
240
|
+
GridPlugin.prototype.getColumnIndex = function (colRef) {
|
241
|
+
if(typeof colRef === "number") {
|
242
|
+
return colRef;
|
243
243
|
}
|
244
244
|
if(this._compositeGrid) {
|
245
|
-
|
246
|
-
|
247
|
-
|
248
|
-
|
249
|
-
|
250
|
-
|
251
|
-
if(colDef && colDef.getId() === colId) {
|
252
|
-
return i;
|
253
|
-
}
|
245
|
+
var allFields = this._compositeGrid.getColumnFields();
|
246
|
+
var colIndex = allFields.indexOf(colRef);
|
247
|
+
if(colIndex > -1) {
|
248
|
+
return colIndex;
|
249
|
+
} else {
|
250
|
+
return this._compositeGrid.getColumnIndex(colRef);
|
254
251
|
}
|
252
|
+
} else {
|
253
|
+
return this._realTimeGrid.getColumnIndex(colRef);
|
255
254
|
}
|
256
|
-
return -1;
|
257
255
|
};
|
258
256
|
/** @public
|
259
|
-
* @param {Array.<number|string>} colRefs column
|
257
|
+
* @param {Array.<number|string>} colRefs A collection of column ids, field names or column indices
|
260
258
|
* @return {Array.<number>} column indices
|
261
259
|
*/
|
262
260
|
GridPlugin.prototype.getColumnIndices = function (colRefs) {
|
@@ -0,0 +1,58 @@
|
|
1
|
+
import { cloneObject } from "./Util.js";
|
2
|
+
|
3
|
+
declare class GroupDefinitions {
|
4
|
+
|
5
|
+
constructor();
|
6
|
+
|
7
|
+
public static getGroupId(groupDef: any): string;
|
8
|
+
|
9
|
+
public static calcTreeDepth(groupMap: { [key: string]: any }|null, groupDef: any): number;
|
10
|
+
|
11
|
+
public static getLeafDescendants(groupMap: { [key: string]: any }|null, groupId: string): (string)[]|null;
|
12
|
+
|
13
|
+
public toString(): string;
|
14
|
+
|
15
|
+
public getGroup(groupId: string): any;
|
16
|
+
|
17
|
+
public getDefinition(groupId: string): any;
|
18
|
+
|
19
|
+
public getGroups(): (any)[];
|
20
|
+
|
21
|
+
public getGroupMap(): { [key: string]: any };
|
22
|
+
|
23
|
+
public cloneGroupMap(): { [key: string]: any };
|
24
|
+
|
25
|
+
public getGroupChildren(groupId: string): (string)[]|null;
|
26
|
+
|
27
|
+
public getLeafDescendants(groupId: string): (string)[]|null;
|
28
|
+
|
29
|
+
public getGroupLevel(groupId: string): number;
|
30
|
+
|
31
|
+
public getRootGroup(groupId: string): any;
|
32
|
+
|
33
|
+
public getParentGroup(childId: string): any;
|
34
|
+
|
35
|
+
public getParentIds(childId: string): (string)[]|null;
|
36
|
+
|
37
|
+
public getParentId(childId: string, groupLevel?: number|null): string;
|
38
|
+
|
39
|
+
public setGroups(groupDefs?: (any)[]|null): void;
|
40
|
+
|
41
|
+
public addGroup(groupDef: any): string;
|
42
|
+
|
43
|
+
public removeGroup(groupId: string): boolean;
|
44
|
+
|
45
|
+
public setGroup(groupId: string, groupDef?: (string)[]|any|null): string;
|
46
|
+
|
47
|
+
public addGroupChild(parentId: string, childId: string): boolean;
|
48
|
+
|
49
|
+
public removeGroupChild(childId: string): boolean;
|
50
|
+
|
51
|
+
public removeAllChildren(groupId: string): boolean;
|
52
|
+
|
53
|
+
public setGroupChildren(groupId: string, newChildList: (string)[]|null): boolean;
|
54
|
+
|
55
|
+
}
|
56
|
+
|
57
|
+
export default GroupDefinitions;
|
58
|
+
export { GroupDefinitions };
|