@refinitiv-ui/efx-grid 6.0.28 → 6.0.29
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 +3 -2
- package/lib/core/dist/core.min.js +1 -1
- package/lib/core/es6/grid/Core.js +2 -2
- package/lib/core/es6/grid/LayoutGrid.js +1 -0
- package/lib/grid/index.js +1 -1
- package/lib/tr-grid-column-stack/es6/ColumnStack.d.ts +6 -0
- package/lib/tr-grid-column-stack/es6/ColumnStack.js +66 -1
- package/lib/tr-grid-conditional-coloring/es6/ConditionalColoring.d.ts +30 -23
- package/lib/tr-grid-conditional-coloring/es6/ConditionalColoring.js +78 -3
- package/lib/tr-grid-in-cell-editing/es6/InCellEditing.js +24 -10
- package/lib/tr-grid-util/es6/CellPainter.d.ts +2 -1
- package/lib/tr-grid-util/es6/CellPainter.js +53 -15
- package/lib/types/es6/ColumnStack.d.ts +6 -0
- package/lib/utils/index.d.ts +3 -0
- package/lib/utils/index.js +3 -0
- package/lib/versions.json +4 -4
- package/package.json +6 -2
@@ -536,7 +536,7 @@ Core.prototype._groupDefs = null;
|
|
536
536
|
* @return {string}
|
537
537
|
*/
|
538
538
|
Core.getVersion = function () {
|
539
|
-
return "5.1.
|
539
|
+
return "5.1.39";
|
540
540
|
};
|
541
541
|
/** {@link ElementWrapper#dispose}
|
542
542
|
* @override
|
@@ -4979,7 +4979,7 @@ Core.prototype.getColumnField = function (colIndex) {
|
|
4979
4979
|
return "";
|
4980
4980
|
};
|
4981
4981
|
/** @public
|
4982
|
-
* @return {!Array.<string>} Return all column
|
4982
|
+
* @return {!Array.<string>} Return all column fields from existing columns
|
4983
4983
|
*/
|
4984
4984
|
Core.prototype.getColumnFields = function () {
|
4985
4985
|
var colCount = this.getColumnCount();
|
@@ -1867,6 +1867,7 @@ LayoutGrid.prototype.setRowOffset = function (index) {
|
|
1867
1867
|
LayoutGrid.prototype.updateLayout = function () {
|
1868
1868
|
this._calculateViewSize(true); // Column bounds will be updated by trigger from Core
|
1869
1869
|
|
1870
|
+
this._stretchedCells.updateCells();
|
1870
1871
|
this._updateRightSpaceStyle();
|
1871
1872
|
};
|
1872
1873
|
|
package/lib/grid/index.js
CHANGED
@@ -129,6 +129,12 @@ declare class ColumnStackPlugin extends GridPlugin {
|
|
129
129
|
|
130
130
|
public moveColumnById(srcCol: number|string|null, destCol?: (number|string)|null): boolean;
|
131
131
|
|
132
|
+
public hideStack(stackId: string): void;
|
133
|
+
|
134
|
+
public showStack(stackId: string): void;
|
135
|
+
|
136
|
+
public isStackHidden(stackId: string): boolean|null|null;
|
137
|
+
|
132
138
|
}
|
133
139
|
|
134
140
|
export default ColumnStackPlugin;
|
@@ -336,6 +336,7 @@ ColumnStackPlugin.prototype.config = function (options) {
|
|
336
336
|
*/
|
337
337
|
ColumnStackPlugin.prototype.getConfigObject = function (gridOptions) {
|
338
338
|
var obj = gridOptions || {};
|
339
|
+
var host = this._host || this._hosts[0];
|
339
340
|
|
340
341
|
var columnOptions = obj["columns"];
|
341
342
|
|
@@ -351,7 +352,7 @@ ColumnStackPlugin.prototype.getConfigObject = function (gridOptions) {
|
|
351
352
|
for(var i = 0; i < memberIndices.length; i++){
|
352
353
|
var colIndex = memberIndices[i];
|
353
354
|
var colOption = columnOptions[colIndex];
|
354
|
-
if(colOption){
|
355
|
+
if(colOption && host.isColumnVisible(colIndex)){
|
355
356
|
colOption.hidden = colIndex !== activeColIndex;
|
356
357
|
}
|
357
358
|
}
|
@@ -1871,6 +1872,70 @@ ColumnStackPlugin.prototype.moveColumnById = function(srcCol, destCol) {
|
|
1871
1872
|
return dirty;
|
1872
1873
|
};
|
1873
1874
|
|
1875
|
+
/** @private
|
1876
|
+
* @description Set stack visibility to the specific stack
|
1877
|
+
* @param {string} stackId
|
1878
|
+
* @param {boolean} visible
|
1879
|
+
*/
|
1880
|
+
ColumnStackPlugin.prototype._setStackVisibility = function(stackId, visible) {
|
1881
|
+
var stackOption = this._stacks[stackId];
|
1882
|
+
if(!stackOption){
|
1883
|
+
return;
|
1884
|
+
}
|
1885
|
+
|
1886
|
+
if(stackOption["spreading"] && !stackOption["collapsed"]){
|
1887
|
+
var stackRefs = stackOption["stackRefs"];
|
1888
|
+
for(var i = 0; i < stackRefs.length; i++){
|
1889
|
+
var colIndex = this._getColumnIndex(stackRefs[i]);
|
1890
|
+
this._setColumnVisibility(colIndex, visible);
|
1891
|
+
}
|
1892
|
+
} else {
|
1893
|
+
var activeColIndex = this._getColumnIndex(stackOption.activeColumn);
|
1894
|
+
this._setColumnVisibility(activeColIndex, visible);
|
1895
|
+
}
|
1896
|
+
};
|
1897
|
+
|
1898
|
+
/** @public
|
1899
|
+
* @description Hide specific stack from grid
|
1900
|
+
* @param {string} stackId
|
1901
|
+
*/
|
1902
|
+
ColumnStackPlugin.prototype.hideStack = function(stackId) {
|
1903
|
+
if(!stackId){
|
1904
|
+
return;
|
1905
|
+
}
|
1906
|
+
this._setStackVisibility(stackId, false);
|
1907
|
+
};
|
1908
|
+
|
1909
|
+
/** @public
|
1910
|
+
* @description Show specific stack from grid
|
1911
|
+
* @param {string} stackId
|
1912
|
+
*/
|
1913
|
+
ColumnStackPlugin.prototype.showStack = function(stackId) {
|
1914
|
+
if(!stackId){
|
1915
|
+
return;
|
1916
|
+
}
|
1917
|
+
this._setStackVisibility(stackId, true);
|
1918
|
+
};
|
1919
|
+
|
1920
|
+
/** @public
|
1921
|
+
* @description Get hidden status of specific stack
|
1922
|
+
* @param {string} stackId
|
1923
|
+
* @return {boolean|null}
|
1924
|
+
*/
|
1925
|
+
ColumnStackPlugin.prototype.isStackHidden = function(stackId) {
|
1926
|
+
var stackOption = this._stacks[stackId];
|
1927
|
+
var host = this._host || this._hosts[0];
|
1928
|
+
|
1929
|
+
if(!stackOption || !host){
|
1930
|
+
return null;
|
1931
|
+
}
|
1932
|
+
|
1933
|
+
var activeColIndex = this._getColumnIndex(stackOption.activeColumn);
|
1934
|
+
var isVisible = host.isColumnVisible(activeColIndex);
|
1935
|
+
|
1936
|
+
return !isVisible;
|
1937
|
+
};
|
1938
|
+
|
1874
1939
|
|
1875
1940
|
|
1876
1941
|
export default ColumnStackPlugin;
|
@@ -1,39 +1,44 @@
|
|
1
1
|
import {Ext} from '../../tr-grid-util/es6/Ext.js';
|
2
|
-
import {
|
3
|
-
import {
|
2
|
+
import {GridPlugin} from '../../tr-grid-util/es6/GridPlugin.js';
|
3
|
+
import {extendObject, injectCss, prettifyCss} from '../../tr-grid-util/es6/Util.js';
|
4
4
|
import {CellPainter} from '../../tr-grid-util/es6/CellPainter.js';
|
5
5
|
import {FilterBuilder} from '../../tr-grid-util/es6/FilterBuilder.js';
|
6
6
|
import {ElfUtil} from '../../tr-grid-util/es6/ElfUtil.js';
|
7
7
|
|
8
8
|
declare namespace ConditionalColoringPlugin {
|
9
9
|
|
10
|
+
type Options = {
|
11
|
+
predefinedColors?: any
|
12
|
+
};
|
13
|
+
|
10
14
|
type ColumnOptions = {
|
11
|
-
conditions?: (ConditionalColoringPlugin.Condition)[],
|
12
|
-
colorText?: (string|boolean),
|
13
|
-
tickColor?: (string|boolean),
|
14
|
-
blinking?: (ConditionalColoringPlugin.Blinking|boolean),
|
15
|
-
field?: string
|
15
|
+
conditions?: (ConditionalColoringPlugin.Condition)[]|null,
|
16
|
+
colorText?: (string|boolean)|null,
|
17
|
+
tickColor?: (string|boolean)|null,
|
18
|
+
blinking?: (ConditionalColoringPlugin.Blinking|boolean)|null,
|
19
|
+
field?: string|null
|
16
20
|
};
|
17
21
|
|
18
22
|
type ConditionalColoringOptions = {
|
19
|
-
conditions?: (ConditionalColoringPlugin.Condition)[],
|
20
|
-
colorText?: (string|boolean),
|
21
|
-
tickColor?: (string|boolean),
|
22
|
-
field?: string
|
23
|
+
conditions?: (ConditionalColoringPlugin.Condition)[]|null,
|
24
|
+
colorText?: (string|boolean)|null,
|
25
|
+
tickColor?: (string|boolean)|null,
|
26
|
+
field?: string|null
|
23
27
|
};
|
24
28
|
|
25
29
|
type Condition = {
|
26
|
-
expression?: (string|((...params: any[]) => any)),
|
27
|
-
backgroundColor?: string,
|
28
|
-
color?: string
|
30
|
+
expression?: (string|((...params: any[]) => any))|null,
|
31
|
+
backgroundColor?: string|null,
|
32
|
+
color?: string|null,
|
33
|
+
cssClass?: string|null
|
29
34
|
};
|
30
35
|
|
31
36
|
type Blinking = {
|
32
|
-
border?: boolean,
|
33
|
-
field?: string,
|
34
|
-
up?: string,
|
35
|
-
down?: string,
|
36
|
-
level?: (string|boolean)
|
37
|
+
border?: boolean|null,
|
38
|
+
field?: string|null,
|
39
|
+
up?: string|null,
|
40
|
+
down?: string|null,
|
41
|
+
level?: (string|boolean)|null
|
37
42
|
};
|
38
43
|
|
39
44
|
}
|
@@ -56,21 +61,23 @@ declare class ConditionalColoringPlugin extends GridPlugin {
|
|
56
61
|
|
57
62
|
public getColumnColoring(colIndex: number, options?: any): ConditionalColoringPlugin.ColumnOptions;
|
58
63
|
|
59
|
-
public setColumnColoring(colIndex: number, columnOptions?: (ConditionalColoringPlugin.ColumnOptions|null)): void;
|
64
|
+
public setColumnColoring(colIndex: number, columnOptions?: (ConditionalColoringPlugin.ColumnOptions|null)|null): void;
|
60
65
|
|
61
|
-
public setConditionalColoring(colIndex: number, coloringOptions?: (ConditionalColoringPlugin.ConditionalColoringOptions|null)): void;
|
66
|
+
public setConditionalColoring(colIndex: number, coloringOptions?: (ConditionalColoringPlugin.ConditionalColoringOptions|null)|null): void;
|
62
67
|
|
63
|
-
public setColumnBlinking(colIndex: number, blinkingOptions?: (boolean|ConditionalColoringPlugin.Blinking), field?: string): void;
|
68
|
+
public setColumnBlinking(colIndex: number, blinkingOptions?: (boolean|ConditionalColoringPlugin.Blinking)|null, field?: string|null): void;
|
64
69
|
|
65
70
|
public blinkRow(rowIndex: number, blinkSignal: number, host?: any): void;
|
66
71
|
|
72
|
+
public setPredefinedColors(predefinedColors: any): void;
|
73
|
+
|
67
74
|
public getColumnPainter(colIndex: number): CellPainter|null;
|
68
75
|
|
69
76
|
public applyColor(colIndex: number, cell: any, rowData?: any): void;
|
70
77
|
|
71
78
|
public static cleanUpPrevRows(): void;
|
72
79
|
|
73
|
-
public static setThemeColors(colors: { [key: string]: string }): void;
|
80
|
+
public static setThemeColors(colors: { [key: string]: string }|null): void;
|
74
81
|
|
75
82
|
public reloadThemeColors(): Promise<any>|null;
|
76
83
|
|
@@ -1,10 +1,15 @@
|
|
1
1
|
import {Ext} from '../../tr-grid-util/es6/Ext.js';
|
2
|
-
import {
|
3
|
-
import {
|
2
|
+
import {GridPlugin} from '../../tr-grid-util/es6/GridPlugin.js';
|
3
|
+
import {extendObject, injectCss, prettifyCss} from '../../tr-grid-util/es6/Util.js';
|
4
4
|
import {CellPainter} from '../../tr-grid-util/es6/CellPainter.js';
|
5
5
|
import {FilterBuilder} from '../../tr-grid-util/es6/FilterBuilder.js';
|
6
6
|
import {ElfUtil} from '../../tr-grid-util/es6/ElfUtil.js';
|
7
7
|
|
8
|
+
/** @typedef {Object} ConditionalColoringPlugin~Options
|
9
|
+
* @description The options can be specified by `conditionalColoring` property of the main grid's options
|
10
|
+
* @property {Object=} predefinedColors Predefined color object map for conditional coloring
|
11
|
+
*/
|
12
|
+
|
8
13
|
/** @typedef {Object} ConditionalColoringPlugin~ColumnOptions
|
9
14
|
* @description Extension column options that can be specified on each individual grid's column option:
|
10
15
|
* @property {Array.<ConditionalColoringPlugin~Condition>=} conditions=null List of condition options
|
@@ -27,6 +32,7 @@ import {ElfUtil} from '../../tr-grid-util/es6/ElfUtil.js';
|
|
27
32
|
* @property {(string|Function)=} expression Expression could be `[FIELD_1] > 0`
|
28
33
|
* @property {string=} backgroundColor="" CSS color (e.g. #ffffff, black)
|
29
34
|
* @property {string=} color CSS="" color (e.g. #000000, white)
|
35
|
+
* @property {string=} cssClass cssClass="" Predefined color class name
|
30
36
|
*/
|
31
37
|
|
32
38
|
/** @typedef {(string|boolean|Object)} ConditionalColoringPlugin~Blinking
|
@@ -79,6 +85,10 @@ Ext.inherits(ConditionalColoringPlugin, GridPlugin);
|
|
79
85
|
* @private
|
80
86
|
*/
|
81
87
|
ConditionalColoringPlugin._cleanUpTimer = 0;
|
88
|
+
/** @type {string}
|
89
|
+
* @private
|
90
|
+
*/
|
91
|
+
ConditionalColoringPlugin._controlClass = "predefined-conditional-color";
|
82
92
|
|
83
93
|
/** @type {boolean}
|
84
94
|
* @private
|
@@ -89,6 +99,10 @@ ConditionalColoringPlugin.prototype._blinkingEnabled = false; // WORKAROUND: To
|
|
89
99
|
* @private
|
90
100
|
*/
|
91
101
|
ConditionalColoringPlugin.prototype._pendingFields;
|
102
|
+
/** @type {Object}
|
103
|
+
* @private
|
104
|
+
*/
|
105
|
+
ConditionalColoringPlugin.prototype._predefinedColors = null;
|
92
106
|
|
93
107
|
/** @override
|
94
108
|
* @return {string}
|
@@ -118,6 +132,15 @@ ConditionalColoringPlugin.prototype.initialize = function (host, options) {
|
|
118
132
|
|
119
133
|
hosts.push(host);
|
120
134
|
|
135
|
+
var extOptions = options["conditionalColoring"];
|
136
|
+
if (extOptions) {
|
137
|
+
var predefinedColors = extOptions["predefinedColors"];
|
138
|
+
if (predefinedColors != null && typeof predefinedColors === "object") {
|
139
|
+
this._injectStyles(predefinedColors);
|
140
|
+
host.enableClass(ConditionalColoringPlugin._controlClass);
|
141
|
+
}
|
142
|
+
}
|
143
|
+
|
121
144
|
if(hosts.length === 1) {
|
122
145
|
this.config(options);
|
123
146
|
} else {
|
@@ -206,6 +229,14 @@ ConditionalColoringPlugin.prototype.config = function (options) {
|
|
206
229
|
ConditionalColoringPlugin.prototype.getConfigObject = function (gridOptions) {
|
207
230
|
var obj = gridOptions || {};
|
208
231
|
|
232
|
+
if(this._predefinedColors != null) {
|
233
|
+
var extOptions = obj["conditionalColoring"];
|
234
|
+
if(!extOptions) {
|
235
|
+
extOptions = obj["conditionalColoring"] = {};
|
236
|
+
}
|
237
|
+
extOptions["predefinedColors"] = this._predefinedColors;
|
238
|
+
}
|
239
|
+
|
209
240
|
var columns = obj.columns;
|
210
241
|
if (!columns) {
|
211
242
|
columns = obj.columns = [];
|
@@ -244,7 +275,8 @@ ConditionalColoringPlugin.prototype.getColumnColoring = function(colIndex, optio
|
|
244
275
|
extendObject(exCondition, conditions[n], [
|
245
276
|
"expression",
|
246
277
|
"backgroundColor",
|
247
|
-
"color"
|
278
|
+
"color",
|
279
|
+
"cssClass"
|
248
280
|
]);
|
249
281
|
|
250
282
|
options.conditions.push(exCondition);
|
@@ -824,6 +856,49 @@ ConditionalColoringPlugin._mergeUpdates = function(e) {
|
|
824
856
|
return changedRows;
|
825
857
|
};
|
826
858
|
/** @private
|
859
|
+
* @param {Object} predefinedColors Predefined color object map
|
860
|
+
*/
|
861
|
+
ConditionalColoringPlugin.prototype._injectStyles = function(predefinedColors) {
|
862
|
+
var prefix = ".tr-grid." + ConditionalColoringPlugin._controlClass + " .tr-lg .cell";
|
863
|
+
var css = [];
|
864
|
+
var ss, styles, value;
|
865
|
+
for (var className in predefinedColors) {
|
866
|
+
css.push(prefix + "." + className);
|
867
|
+
ss = [];
|
868
|
+
styles = predefinedColors[className];
|
869
|
+
|
870
|
+
value = styles["backgroundColor"];
|
871
|
+
if(value) {
|
872
|
+
ss.push("background-color: " + value + ";");
|
873
|
+
}
|
874
|
+
|
875
|
+
value = styles["color"];
|
876
|
+
if(value) {
|
877
|
+
ss.push("color: " + value + ";");
|
878
|
+
}
|
879
|
+
|
880
|
+
css.push(ss);
|
881
|
+
}
|
882
|
+
|
883
|
+
// TODO: support multitable
|
884
|
+
var host = this._hosts[0];
|
885
|
+
|
886
|
+
if(this._styleTag) {
|
887
|
+
this._styleTag.parentNode.removeChild(this._styleTag);
|
888
|
+
this._styleTag = null;
|
889
|
+
}
|
890
|
+
this._styleTag = injectCss(prettifyCss(css), host.getElement());
|
891
|
+
this._predefinedColors = predefinedColors;
|
892
|
+
};
|
893
|
+
/** @public
|
894
|
+
* @param {Object} predefinedColors Predefined color object map
|
895
|
+
*/
|
896
|
+
ConditionalColoringPlugin.prototype.setPredefinedColors = function(predefinedColors) {
|
897
|
+
if(predefinedColors != null && typeof predefinedColors === "object") {
|
898
|
+
this._injectStyles(predefinedColors);
|
899
|
+
}
|
900
|
+
};
|
901
|
+
/** @private
|
827
902
|
* @function
|
828
903
|
* @return {!FilterBuilder}
|
829
904
|
*/
|
@@ -83,6 +83,8 @@ import { CoralItems } from "../../tr-grid-util/es6/CoralItems.js";
|
|
83
83
|
* @description Fired after the text editor has been closed and all operations are done. This is useful to clean up left over resource and get result text entered.
|
84
84
|
* @type {Object}
|
85
85
|
* @property {string=} text Text that user has entered
|
86
|
+
* @property {boolean=} groupHeader if the row is header of row, it will be groupHeader
|
87
|
+
* @property {Object} suggestionDetail Suggestion detail for auto suggest "item-select" event
|
86
88
|
* @property {boolean} cancelled Readonly flag. Indicates whether the commit operation has been cancelled
|
87
89
|
* @property {boolean} committed Readonly flag. The opposite of `cancelled` flag
|
88
90
|
*/
|
@@ -92,6 +94,8 @@ import { CoralItems } from "../../tr-grid-util/es6/CoralItems.js";
|
|
92
94
|
* @type {Object}
|
93
95
|
* @property {string=} text Text that user has entered
|
94
96
|
* @property {boolean=} cancel Set to true to cancel the commit operation.
|
97
|
+
* @property {boolean=} groupHeader if the row is header of row, it will be groupHeader
|
98
|
+
* @property {Object} suggestionDetail Suggestion detail for auto suggest "item-select" event
|
95
99
|
* @example
|
96
100
|
* var cep = new InCellEditingPlugin();
|
97
101
|
* cep.listen("beforeCommit", function(e) {
|
@@ -1450,15 +1454,20 @@ InCellEditingPlugin.prototype._onPopupHide = function (e) {
|
|
1450
1454
|
* @param {Object} event
|
1451
1455
|
*/
|
1452
1456
|
InCellEditingPlugin.prototype._onAutoSuggestItemSelected = function (event) {
|
1453
|
-
|
1454
|
-
|
1455
|
-
|
1456
|
-
|
1457
|
-
|
1458
|
-
|
1459
|
-
|
1460
|
-
|
1461
|
-
|
1457
|
+
var eventDetail = event.detail;
|
1458
|
+
if (!eventDetail) {
|
1459
|
+
return;
|
1460
|
+
}
|
1461
|
+
var targetSelected = eventDetail.target;
|
1462
|
+
if (!targetSelected) {
|
1463
|
+
return;
|
1464
|
+
}
|
1465
|
+
var suggestionMethod = eventDetail.method;
|
1466
|
+
// Need to check the details of the methods, another method like a navigation, reset, clear shouldn't commit text
|
1467
|
+
// TODO: We need to handled tab to move. Currently, the property suggestionDetail in 'beforeCommit' event doesn't handlded when we use autosuggest with tab to move.
|
1468
|
+
if (suggestionMethod === "click" || suggestionMethod === "enter") {
|
1469
|
+
this.setText(targetSelected.value);
|
1470
|
+
this._commitText(true, eventDetail.suggestion);
|
1462
1471
|
}
|
1463
1472
|
};
|
1464
1473
|
|
@@ -1554,8 +1563,9 @@ InCellEditingPlugin.prototype._onTextKeyUp = function (e) {
|
|
1554
1563
|
/** Commit text from editor to cell.
|
1555
1564
|
* @private
|
1556
1565
|
* @param {boolean} committed
|
1566
|
+
* @param {Object} suggestionDetail suggestion detail for auto suggest element
|
1557
1567
|
*/
|
1558
|
-
InCellEditingPlugin.prototype._commitText = function (committed) {
|
1568
|
+
InCellEditingPlugin.prototype._commitText = function (committed, suggestionDetail) {
|
1559
1569
|
var t = this;
|
1560
1570
|
var arg = t._activePos;
|
1561
1571
|
if (!t.isEditing() || !arg) {
|
@@ -1566,6 +1576,10 @@ InCellEditingPlugin.prototype._commitText = function (committed) {
|
|
1566
1576
|
var enteredValue = arg["text"] = this.getValue();
|
1567
1577
|
var groupHeader = arg["groupHeader"] || false;
|
1568
1578
|
if (committed) {
|
1579
|
+
if (suggestionDetail) {
|
1580
|
+
// This property is only available when the user commits text from the 'item-select' event of the auto suggest.
|
1581
|
+
arg["suggestionDetail"] = suggestionDetail;
|
1582
|
+
}
|
1569
1583
|
if (t.hasListener("beforeCommit")) {
|
1570
1584
|
t._dispatch("beforeCommit", arg);
|
1571
1585
|
committed = !arg["cancel"];
|
@@ -18,6 +18,7 @@ import { ElfUtil } from "./ElfUtil.js";
|
|
18
18
|
* @property {string=} fontStyle
|
19
19
|
* @property {string=} textAlign
|
20
20
|
* @property {string=} textDecoration
|
21
|
+
* @property {string=} cssClass Predefined color class name
|
21
22
|
*/
|
22
23
|
|
23
24
|
/** @typedef {Object.<string, string>} CellPainter~ThemeColors
|
@@ -517,14 +518,21 @@ CellPainter.prototype.renderForPrinting = function(cell, rowData, min, max) {
|
|
517
518
|
return;
|
518
519
|
}
|
519
520
|
var styles = this._getStyles(rowData, min, max);
|
520
|
-
var
|
521
|
-
if(
|
522
|
-
cell.
|
523
|
-
|
524
|
-
|
525
|
-
|
526
|
-
|
527
|
-
cell.
|
521
|
+
var cssClass = styles["cssClass"];
|
522
|
+
if (cssClass) {
|
523
|
+
if (cell._coloringCssClass !== cssClass) {
|
524
|
+
cell.classList.remove(cell._coloringCssClass);
|
525
|
+
cell._coloringCssClass = null;
|
526
|
+
}
|
527
|
+
cell.classList.add(cssClass);
|
528
|
+
cell._coloringCssClass = cssClass;
|
529
|
+
} else {
|
530
|
+
if (cell._coloringCssClass) {
|
531
|
+
cell.classList.remove(cell._coloringCssClass);
|
532
|
+
cell._coloringCssClass = null;
|
533
|
+
}
|
534
|
+
cell.style.backgroundColor = styles["backgroundColor"] || "";
|
535
|
+
cell.style.color = styles["color"] || "";
|
528
536
|
}
|
529
537
|
};
|
530
538
|
|
@@ -650,8 +658,24 @@ CellPainter._cellRestorer = function(scope) {
|
|
650
658
|
}
|
651
659
|
|
652
660
|
var styles = this._getStyles(rowData, min, max);
|
653
|
-
|
654
|
-
|
661
|
+
var cssClass = styles["cssClass"];
|
662
|
+
if (cssClass) {
|
663
|
+
if (elem._coloringCssClass && elem._coloringCssClass !== cssClass) {
|
664
|
+
elem.classList.remove(elem._coloringCssClass);
|
665
|
+
elem._coloringCssClass = null;
|
666
|
+
}
|
667
|
+
elem.classList.add(cssClass);
|
668
|
+
elem._coloringCssClass = cssClass;
|
669
|
+
elem.style.backgroundColor = "";
|
670
|
+
elem.style.color = "";
|
671
|
+
} else {
|
672
|
+
if (elem._coloringCssClass) {
|
673
|
+
elem.classList.remove(elem._coloringCssClass);
|
674
|
+
elem._coloringCssClass = null;
|
675
|
+
}
|
676
|
+
elem.style.backgroundColor = styles["backgroundColor"] || "";
|
677
|
+
elem.style.color = styles["color"] || "";
|
678
|
+
}
|
655
679
|
}
|
656
680
|
};
|
657
681
|
|
@@ -1000,11 +1024,25 @@ CellPainter.prototype._paintCell = function(cell, rowData, min, max) {
|
|
1000
1024
|
}
|
1001
1025
|
|
1002
1026
|
var styles = this._getStyles(rowData, min, max);
|
1003
|
-
var
|
1004
|
-
|
1005
|
-
|
1006
|
-
|
1007
|
-
|
1027
|
+
var cssClass = styles["cssClass"];
|
1028
|
+
if (cssClass) {
|
1029
|
+
if (elem._coloringCssClass !== cssClass) {
|
1030
|
+
elem.classList.remove(elem._coloringCssClass);
|
1031
|
+
elem._coloringCssClass = null;
|
1032
|
+
}
|
1033
|
+
elem.classList.add(cssClass);
|
1034
|
+
elem._coloringCssClass = cssClass;
|
1035
|
+
} else {
|
1036
|
+
if (elem._coloringCssClass) {
|
1037
|
+
elem.classList.remove(elem._coloringCssClass);
|
1038
|
+
elem._coloringCssClass = null;
|
1039
|
+
}
|
1040
|
+
var ss = CellPainter.bgStyles;
|
1041
|
+
var elStyle = elem.style;
|
1042
|
+
for (var n = ss.length; --n >= 0;) {
|
1043
|
+
var styleName = ss[n];
|
1044
|
+
elStyle[styleName] = styles[styleName] || "";
|
1045
|
+
}
|
1008
1046
|
}
|
1009
1047
|
};
|
1010
1048
|
|
@@ -129,6 +129,12 @@ declare class ColumnStackPlugin extends GridPlugin {
|
|
129
129
|
|
130
130
|
public moveColumnById(srcCol: number|string|null, destCol?: (number|string)|null): boolean;
|
131
131
|
|
132
|
+
public hideStack(stackId: string): void;
|
133
|
+
|
134
|
+
public showStack(stackId: string): void;
|
135
|
+
|
136
|
+
public isStackHidden(stackId: string): boolean|null|null;
|
137
|
+
|
132
138
|
}
|
133
139
|
|
134
140
|
export default ColumnStackPlugin;
|
package/lib/versions.json
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
{
|
2
|
-
"tr-grid-util": "1.3.
|
2
|
+
"tr-grid-util": "1.3.88",
|
3
3
|
"@grid/column-dragging": "1.0.11",
|
4
4
|
"@grid/row-segmenting": "1.0.23",
|
5
5
|
"@grid/statistics-row": "1.0.13",
|
@@ -12,13 +12,13 @@
|
|
12
12
|
"tr-grid-column-grouping": "1.0.46",
|
13
13
|
"tr-grid-column-resizing": "1.0.28",
|
14
14
|
"tr-grid-column-selection": "1.0.26",
|
15
|
-
"tr-grid-column-stack": "1.0.
|
16
|
-
"tr-grid-conditional-coloring": "1.0.
|
15
|
+
"tr-grid-column-stack": "1.0.53",
|
16
|
+
"tr-grid-conditional-coloring": "1.0.58",
|
17
17
|
"tr-grid-content-wrap": "1.0.19",
|
18
18
|
"tr-grid-contextmenu": "1.0.38",
|
19
19
|
"tr-grid-filter-input": "0.9.31",
|
20
20
|
"tr-grid-heat-map": "1.0.28",
|
21
|
-
"tr-grid-in-cell-editing": "1.0.
|
21
|
+
"tr-grid-in-cell-editing": "1.0.77",
|
22
22
|
"tr-grid-pagination": "1.0.24",
|
23
23
|
"tr-grid-percent-bar": "1.0.22",
|
24
24
|
"tr-grid-printer": "1.0.16",
|
package/package.json
CHANGED
@@ -24,6 +24,9 @@
|
|
24
24
|
"grid": [
|
25
25
|
"lib/grid/lib/efx-grid.d.ts"
|
26
26
|
],
|
27
|
+
"utils": [
|
28
|
+
"lib/utils/index.d.ts"
|
29
|
+
],
|
27
30
|
"*": [
|
28
31
|
"lib/types/index.d.ts"
|
29
32
|
]
|
@@ -53,7 +56,8 @@
|
|
53
56
|
"./extensions": "./lib/index.js",
|
54
57
|
"./window-exporter": "./lib/window-exporter.js",
|
55
58
|
"./grid": "./lib/grid/lib/efx-grid.js",
|
56
|
-
"./formatters/": "./lib/formatters/es6/"
|
59
|
+
"./formatters/": "./lib/formatters/es6/",
|
60
|
+
"./utils": "./lib/utils/index.js"
|
57
61
|
},
|
58
62
|
"peerDependencies": {
|
59
63
|
"@refinitiv-ui/core": "^6.2.0",
|
@@ -62,5 +66,5 @@
|
|
62
66
|
"publishConfig": {
|
63
67
|
"access": "public"
|
64
68
|
},
|
65
|
-
"version": "6.0.
|
69
|
+
"version": "6.0.29"
|
66
70
|
}
|