@refinitiv-ui/efx-grid 6.0.24 → 6.0.25
Sign up to get free protection for your applications and to get access to all the features.
- 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 };
|