@refinitiv-ui/efx-grid 6.0.29 → 6.0.30
Sign up to get free protection for your applications and to get access to all the features.
- package/lib/grid/index.js +1 -1
- package/lib/rt-grid/dist/rt-grid.js +142 -26
- package/lib/rt-grid/dist/rt-grid.min.js +1 -1
- package/lib/rt-grid/es6/ColumnDefinition.d.ts +2 -0
- package/lib/rt-grid/es6/ColumnDefinition.js +6 -0
- package/lib/rt-grid/es6/FieldDefinition.d.ts +4 -0
- package/lib/rt-grid/es6/FieldDefinition.js +27 -1
- package/lib/rt-grid/es6/Grid.d.ts +1 -0
- package/lib/rt-grid/es6/Grid.js +14 -0
- package/lib/rt-grid/es6/RowDefinition.d.ts +1 -1
- package/lib/rt-grid/es6/RowDefinition.js +7 -7
- package/lib/rt-grid/es6/SnapshotFiller.js +3 -0
- package/lib/tr-grid-column-stack/es6/ColumnStack.js +4 -0
- package/lib/tr-grid-util/es6/jet/mockDataAPI.js +29 -1
- package/lib/types/es6/ConditionalColoring.d.ts +30 -23
- package/lib/types/es6/ExtensionOptions.d.ts +2 -0
- package/lib/types/es6/RealtimeGrid/RowDefinition.d.ts +1 -1
- package/lib/versions.json +2 -2
- package/package.json +1 -1
package/lib/grid/index.js
CHANGED
@@ -13072,12 +13072,12 @@ DataTable._proto = DataTable.prototype;
|
|
13072
13072
|
*/
|
13073
13073
|
|
13074
13074
|
/** @typedef {Object} RowDefinition~RowTypes
|
13075
|
-
* @property {string} CONTENT="CONTENT"
|
13076
|
-
* @property {string} CHAIN="CHAIN"
|
13077
|
-
* @property {string} CONSTITUENT="CONSTITUENT"
|
13078
|
-
* @property {string} GROUP_HEADER="GROUP_HEADER"
|
13079
|
-
* @property {string} SUBGROUP_HEADER="SUBGROUP_HEADER"
|
13080
|
-
* @property {string} GROUP_MEMBER="GROUP_MEMBER"
|
13075
|
+
* @property {string} CONTENT="CONTENT" Regular row
|
13076
|
+
* @property {string} CHAIN="CHAIN" Chain RIC row
|
13077
|
+
* @property {string} CONSTITUENT="CONSTITUENT" Constituent row
|
13078
|
+
* @property {string} GROUP_HEADER="GROUP_HEADER" Row of segment separator at the very top
|
13079
|
+
* @property {string} SUBGROUP_HEADER="SUBGROUP_HEADER" Row of nested segment separator
|
13080
|
+
* @property {string} GROUP_MEMBER="GROUP_MEMBER" Child row displayed under segment separator
|
13081
13081
|
*/
|
13082
13082
|
|
13083
13083
|
/** @type {string}
|
@@ -13086,7 +13086,7 @@ DataTable._proto = DataTable.prototype;
|
|
13086
13086
|
*/
|
13087
13087
|
var ROW_DEF = "ROW_DEF";
|
13088
13088
|
|
13089
|
-
/** @type {RowDefinition~RowTypes}
|
13089
|
+
/** @type {!RowDefinition~RowTypes}
|
13090
13090
|
* @public
|
13091
13091
|
* @const
|
13092
13092
|
*/
|
@@ -14374,6 +14374,11 @@ FieldDefinition._lang = 'en';
|
|
14374
14374
|
* @private
|
14375
14375
|
*/
|
14376
14376
|
FieldDefinition._caching = false;
|
14377
|
+
/**
|
14378
|
+
* @type {boolean}
|
14379
|
+
* @private
|
14380
|
+
*/
|
14381
|
+
FieldDefinition._timeSeriesExpansion = true;
|
14377
14382
|
|
14378
14383
|
/**
|
14379
14384
|
* @type {Object.<string, boolean>}
|
@@ -14461,6 +14466,14 @@ FieldDefinition.setFieldCaching = function (caching) {
|
|
14461
14466
|
FieldDefinition._caching = caching;
|
14462
14467
|
};
|
14463
14468
|
|
14469
|
+
/** @public
|
14470
|
+
* @function
|
14471
|
+
* @param {boolean} disabled=true if disable it, time series will not be expand
|
14472
|
+
*/
|
14473
|
+
FieldDefinition.disableTimeSeriesExpansion = function(disabled) {
|
14474
|
+
FieldDefinition._timeSeriesExpansion = disabled != false ? false : true;
|
14475
|
+
};
|
14476
|
+
|
14464
14477
|
/** @public
|
14465
14478
|
* @param {string} field
|
14466
14479
|
* @return {boolean}
|
@@ -14493,7 +14506,7 @@ FieldDefinition.isRealTimeField = function(field) {
|
|
14493
14506
|
return false;
|
14494
14507
|
}
|
14495
14508
|
|
14496
|
-
if(FieldDefinition.
|
14509
|
+
if(FieldDefinition.isTimeSeriesChild(field)) {
|
14497
14510
|
return false;
|
14498
14511
|
}
|
14499
14512
|
|
@@ -14504,6 +14517,14 @@ FieldDefinition.isRealTimeField = function(field) {
|
|
14504
14517
|
return FieldDefinition.getFieldProperty(field, "IsRealtimeField") !== false;
|
14505
14518
|
};
|
14506
14519
|
|
14520
|
+
/** @public
|
14521
|
+
* @param {string} field
|
14522
|
+
* @return {boolean}
|
14523
|
+
*/
|
14524
|
+
FieldDefinition.isTimeSeriesChild = function(field) {
|
14525
|
+
return FieldDefinition.getFieldProperty(field, "timeSeriesChild") ? true : false;
|
14526
|
+
};
|
14527
|
+
|
14507
14528
|
/** @public
|
14508
14529
|
* @param {string} field
|
14509
14530
|
* @return {boolean}=true if field is time series field
|
@@ -14513,6 +14534,11 @@ FieldDefinition.isTimeSeries = function (field) {
|
|
14513
14534
|
return false;
|
14514
14535
|
}
|
14515
14536
|
|
14537
|
+
// If we disable time series expansion, the grid won't have a time series field.
|
14538
|
+
if(!FieldDefinition._timeSeriesExpansion) {
|
14539
|
+
return false;
|
14540
|
+
}
|
14541
|
+
|
14516
14542
|
// We can check time series using a cache to avoid duplicating checks in regular expressions.
|
14517
14543
|
var timeSeriesField = FieldDefinition.getFieldProperty(field, "timeSeries");
|
14518
14544
|
if (timeSeriesField != null) {
|
@@ -15387,6 +15413,12 @@ ColumnDefinition.prototype.isTimeSeries = function() {
|
|
15387
15413
|
/** @public
|
15388
15414
|
* @return {boolean}
|
15389
15415
|
*/
|
15416
|
+
ColumnDefinition.prototype.isTimeSeriesChild = function() {
|
15417
|
+
return js_FieldDefinition.isTimeSeriesChild(this.getField());
|
15418
|
+
};
|
15419
|
+
/** @public
|
15420
|
+
* @return {boolean}
|
15421
|
+
*/
|
15390
15422
|
ColumnDefinition.prototype.isFormulaField = function() {
|
15391
15423
|
return this._formula ? true : false;
|
15392
15424
|
};
|
@@ -16321,6 +16353,9 @@ SnapshotFiller.prototype._onRTKSuccess = function (fields, serverResult) {
|
|
16321
16353
|
var dataRow = data2D[i];
|
16322
16354
|
ric = dataRow[0];
|
16323
16355
|
|
16356
|
+
if (ricMap[ric]) {
|
16357
|
+
continue; // we interested only first row of ric
|
16358
|
+
}
|
16324
16359
|
var snapData = ricMap[ric] = {};
|
16325
16360
|
|
16326
16361
|
// loop for create rowData for update
|
@@ -25655,6 +25690,7 @@ LayoutGrid.prototype.setRowOffset = function (index) {
|
|
25655
25690
|
LayoutGrid.prototype.updateLayout = function () {
|
25656
25691
|
this._calculateViewSize(true); // Column bounds will be updated by trigger from Core
|
25657
25692
|
|
25693
|
+
this._stretchedCells.updateCells();
|
25658
25694
|
this._updateRightSpaceStyle();
|
25659
25695
|
};
|
25660
25696
|
|
@@ -35372,7 +35408,7 @@ Core.prototype._groupDefs = null;
|
|
35372
35408
|
* @return {string}
|
35373
35409
|
*/
|
35374
35410
|
Core.getVersion = function () {
|
35375
|
-
return "5.1.
|
35411
|
+
return "5.1.39";
|
35376
35412
|
};
|
35377
35413
|
/** {@link ElementWrapper#dispose}
|
35378
35414
|
* @override
|
@@ -39815,7 +39851,7 @@ Core.prototype.getColumnField = function (colIndex) {
|
|
39815
39851
|
return "";
|
39816
39852
|
};
|
39817
39853
|
/** @public
|
39818
|
-
* @return {!Array.<string>} Return all column
|
39854
|
+
* @return {!Array.<string>} Return all column fields from existing columns
|
39819
39855
|
*/
|
39820
39856
|
Core.prototype.getColumnFields = function () {
|
39821
39857
|
var colCount = this.getColumnCount();
|
@@ -43060,6 +43096,7 @@ SortableTitlePlugin._proto = SortableTitlePlugin.prototype;
|
|
43060
43096
|
* @property {boolean=} formulaEngine=false If enabled, field with leading equal sign will be treated as a formula and rows will be filled with the calculated values.
|
43061
43097
|
* @property {number=} adcPollingInterval=0 Length of polling interval for refreshing ADC data in milliseconds. The default value (0) means no polling.
|
43062
43098
|
* @property {boolean=} fieldCaching=false If enabled, field definition will be caching internal mechanism
|
43099
|
+
* @property {boolean=} timeSeriesExpansion=true If disabled, the time series field will be treated as a normal field and not expanded.
|
43063
43100
|
* @property {string=} childDataField=CHILD_VALUES The given field will be used to store children's static data, such as row color assignment.
|
43064
43101
|
* @property {boolean=} topSection=true If disabled, title section will not be rendered
|
43065
43102
|
*/
|
@@ -43506,6 +43543,11 @@ Grid.prototype._pollingEnabled = true;
|
|
43506
43543
|
* @private
|
43507
43544
|
*/
|
43508
43545
|
Grid.prototype._fieldCaching = false;
|
43546
|
+
/** @type {boolean}
|
43547
|
+
* @private
|
43548
|
+
*/
|
43549
|
+
Grid.prototype._timeSeriesExpansion = true;
|
43550
|
+
|
43509
43551
|
/** @type {string}
|
43510
43552
|
* @private
|
43511
43553
|
*/
|
@@ -43766,6 +43808,11 @@ Grid.prototype.initialize = function(gridOption) {
|
|
43766
43808
|
js_FieldDefinition.setFieldCaching(t._fieldCaching);
|
43767
43809
|
}
|
43768
43810
|
|
43811
|
+
if(gridOption["timeSeriesExpansion"] != null) {
|
43812
|
+
t._timeSeriesExpansion = gridOption["timeSeriesExpansion"];
|
43813
|
+
js_FieldDefinition.disableTimeSeriesExpansion(!t._timeSeriesExpansion);
|
43814
|
+
}
|
43815
|
+
|
43769
43816
|
if (gridOption["icons"] && gridOption["icons"]["rowGrouping"] && gridOption["icons"]["rowGrouping"]["expander"]) {
|
43770
43817
|
js_StyleLoader.chainIcon = gridOption["icons"]["rowGrouping"]["expander"];
|
43771
43818
|
}
|
@@ -44088,6 +44135,9 @@ Grid.prototype.getConfigObject = function (gridOptions) {
|
|
44088
44135
|
if(this._fieldCaching) {
|
44089
44136
|
obj["fieldCaching"] = this._fieldCaching;
|
44090
44137
|
}
|
44138
|
+
if(this._timeSeriesExpansion != true) {
|
44139
|
+
obj["timeSeriesExpansion"] = this._timeSeriesExpansion;
|
44140
|
+
}
|
44091
44141
|
|
44092
44142
|
if(this._childDataField) {
|
44093
44143
|
obj["childDataField"] = this._childDataField;
|
@@ -49208,7 +49258,7 @@ Adc.request = function (payload, mockResponse) {
|
|
49208
49258
|
} else {
|
49209
49259
|
|
49210
49260
|
identifiers = payload.identifiers;
|
49211
|
-
formula = payload.formula
|
49261
|
+
formula = Adc.splitFields(payload.formula);
|
49212
49262
|
fields = [];
|
49213
49263
|
|
49214
49264
|
// _invalidFieldDict is a dictionary of non exist field
|
@@ -49286,6 +49336,34 @@ Adc.request = function (payload, mockResponse) {
|
|
49286
49336
|
}));
|
49287
49337
|
};
|
49288
49338
|
|
49339
|
+
/**
|
49340
|
+
* Splits a string of comma-separated fields into an array of individual field names with optional parentheses and contents.
|
49341
|
+
*
|
49342
|
+
* @param {string} strFields - The string of comma-separated fields to split.
|
49343
|
+
* @returns {Array<string>} - An array of individual field names with optional parentheses and contents.
|
49344
|
+
*/
|
49345
|
+
Adc.splitFields = function(strFields) {
|
49346
|
+
if(!strFields) {
|
49347
|
+
return [];
|
49348
|
+
}
|
49349
|
+
|
49350
|
+
// Split the input string using the regular expression
|
49351
|
+
// regex is match commas that are not inside parentheses
|
49352
|
+
/*
|
49353
|
+
, - matches a comma
|
49354
|
+
(?![^()]*\) - negative lookahead assertion that matches if the comma is not followed by:
|
49355
|
+
[^()]* - any characters that are not opening or closing parentheses
|
49356
|
+
\) - a closing parenthesis
|
49357
|
+
) - ending delimiter of the regular expression
|
49358
|
+
*/
|
49359
|
+
var fields = strFields.split(/,(?![^()]*\))/);
|
49360
|
+
fields = fields.map(function(field) {
|
49361
|
+
return field.trim();
|
49362
|
+
});
|
49363
|
+
|
49364
|
+
return fields;
|
49365
|
+
};
|
49366
|
+
|
49289
49367
|
/** @public
|
49290
49368
|
* @function
|
49291
49369
|
* @param {string} dataType
|
@@ -49438,6 +49516,7 @@ var TickFields = {
|
|
49438
49516
|
* @property {string=} fontStyle
|
49439
49517
|
* @property {string=} textAlign
|
49440
49518
|
* @property {string=} textDecoration
|
49519
|
+
* @property {string=} cssClass Predefined color class name
|
49441
49520
|
*/
|
49442
49521
|
|
49443
49522
|
/** @typedef {Object.<string, string>} CellPainter~ThemeColors
|
@@ -49937,14 +50016,21 @@ CellPainter.prototype.renderForPrinting = function(cell, rowData, min, max) {
|
|
49937
50016
|
return;
|
49938
50017
|
}
|
49939
50018
|
var styles = this._getStyles(rowData, min, max);
|
49940
|
-
var
|
49941
|
-
if(
|
49942
|
-
cell.
|
49943
|
-
|
49944
|
-
|
49945
|
-
|
49946
|
-
|
49947
|
-
cell.
|
50019
|
+
var cssClass = styles["cssClass"];
|
50020
|
+
if (cssClass) {
|
50021
|
+
if (cell._coloringCssClass !== cssClass) {
|
50022
|
+
cell.classList.remove(cell._coloringCssClass);
|
50023
|
+
cell._coloringCssClass = null;
|
50024
|
+
}
|
50025
|
+
cell.classList.add(cssClass);
|
50026
|
+
cell._coloringCssClass = cssClass;
|
50027
|
+
} else {
|
50028
|
+
if (cell._coloringCssClass) {
|
50029
|
+
cell.classList.remove(cell._coloringCssClass);
|
50030
|
+
cell._coloringCssClass = null;
|
50031
|
+
}
|
50032
|
+
cell.style.backgroundColor = styles["backgroundColor"] || "";
|
50033
|
+
cell.style.color = styles["color"] || "";
|
49948
50034
|
}
|
49949
50035
|
};
|
49950
50036
|
|
@@ -50070,8 +50156,24 @@ CellPainter._cellRestorer = function(scope) {
|
|
50070
50156
|
}
|
50071
50157
|
|
50072
50158
|
var styles = this._getStyles(rowData, min, max);
|
50073
|
-
|
50074
|
-
|
50159
|
+
var cssClass = styles["cssClass"];
|
50160
|
+
if (cssClass) {
|
50161
|
+
if (elem._coloringCssClass && elem._coloringCssClass !== cssClass) {
|
50162
|
+
elem.classList.remove(elem._coloringCssClass);
|
50163
|
+
elem._coloringCssClass = null;
|
50164
|
+
}
|
50165
|
+
elem.classList.add(cssClass);
|
50166
|
+
elem._coloringCssClass = cssClass;
|
50167
|
+
elem.style.backgroundColor = "";
|
50168
|
+
elem.style.color = "";
|
50169
|
+
} else {
|
50170
|
+
if (elem._coloringCssClass) {
|
50171
|
+
elem.classList.remove(elem._coloringCssClass);
|
50172
|
+
elem._coloringCssClass = null;
|
50173
|
+
}
|
50174
|
+
elem.style.backgroundColor = styles["backgroundColor"] || "";
|
50175
|
+
elem.style.color = styles["color"] || "";
|
50176
|
+
}
|
50075
50177
|
}
|
50076
50178
|
};
|
50077
50179
|
|
@@ -50420,11 +50522,25 @@ CellPainter.prototype._paintCell = function(cell, rowData, min, max) {
|
|
50420
50522
|
}
|
50421
50523
|
|
50422
50524
|
var styles = this._getStyles(rowData, min, max);
|
50423
|
-
var
|
50424
|
-
|
50425
|
-
|
50426
|
-
|
50427
|
-
|
50525
|
+
var cssClass = styles["cssClass"];
|
50526
|
+
if (cssClass) {
|
50527
|
+
if (elem._coloringCssClass !== cssClass) {
|
50528
|
+
elem.classList.remove(elem._coloringCssClass);
|
50529
|
+
elem._coloringCssClass = null;
|
50530
|
+
}
|
50531
|
+
elem.classList.add(cssClass);
|
50532
|
+
elem._coloringCssClass = cssClass;
|
50533
|
+
} else {
|
50534
|
+
if (elem._coloringCssClass) {
|
50535
|
+
elem.classList.remove(elem._coloringCssClass);
|
50536
|
+
elem._coloringCssClass = null;
|
50537
|
+
}
|
50538
|
+
var ss = CellPainter.bgStyles;
|
50539
|
+
var elStyle = elem.style;
|
50540
|
+
for (var n = ss.length; --n >= 0;) {
|
50541
|
+
var styleName = ss[n];
|
50542
|
+
elStyle[styleName] = styles[styleName] || "";
|
50543
|
+
}
|
50428
50544
|
}
|
50429
50545
|
};
|
50430
50546
|
|