@refinitiv-ui/efx-grid 6.0.91 → 6.0.93

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.
Files changed (160) hide show
  1. package/lib/column-dragging/es6/ColumnDragging.d.ts +1 -1
  2. package/lib/column-dragging/es6/ColumnDragging.js +144 -34
  3. package/lib/core/dist/core.js +2410 -2621
  4. package/lib/core/dist/core.min.js +1 -1
  5. package/lib/core/es6/data/ColumnStats.js +14 -14
  6. package/lib/core/es6/data/DataCache.js +118 -118
  7. package/lib/core/es6/data/DataTable.d.ts +3 -1
  8. package/lib/core/es6/data/DataTable.js +208 -190
  9. package/lib/core/es6/data/DataView.d.ts +1 -1
  10. package/lib/core/es6/data/DataView.js +291 -291
  11. package/lib/core/es6/data/Segment.js +79 -79
  12. package/lib/core/es6/data/SegmentCollection.js +81 -81
  13. package/lib/core/es6/data/WrappedView.js +41 -41
  14. package/lib/core/es6/grid/Core.js +635 -635
  15. package/lib/core/es6/grid/ILayoutGrid.js +1 -1
  16. package/lib/core/es6/grid/LayoutGrid.js +183 -183
  17. package/lib/core/es6/grid/VirtualizedLayoutGrid.js +91 -91
  18. package/lib/core/es6/grid/components/Cell.js +29 -29
  19. package/lib/core/es6/grid/components/CellFloatingPanel.js +11 -11
  20. package/lib/core/es6/grid/components/CellSpan.js +7 -7
  21. package/lib/core/es6/grid/components/CellSpans.js +36 -34
  22. package/lib/core/es6/grid/components/Column.js +40 -40
  23. package/lib/core/es6/grid/components/ElementWrapper.js +17 -17
  24. package/lib/core/es6/grid/components/HScrollbar.js +31 -31
  25. package/lib/core/es6/grid/components/Scrollbar.js +77 -77
  26. package/lib/core/es6/grid/components/StretchedCells.js +49 -49
  27. package/lib/core/es6/grid/components/VScrollbar.js +11 -11
  28. package/lib/core/es6/grid/components/VirtualItems.js +3 -3
  29. package/lib/core/es6/grid/event/EventDispatcher.js +9 -9
  30. package/lib/core/es6/grid/event/EventListeners.js +4 -4
  31. package/lib/core/es6/grid/plugins/SortableTitlePlugin.js +186 -186
  32. package/lib/core/es6/grid/util/Conflator.js +4 -4
  33. package/lib/core/es6/grid/util/Reverter.js +1 -1
  34. package/lib/core/es6/grid/util/SectionSettings.js +20 -20
  35. package/lib/core/es6/grid/util/SelectionList.js +23 -23
  36. package/lib/core/es6/grid/util/TrackLayout.js +74 -74
  37. package/lib/core/es6/grid/util/Virtualizer.js +15 -15
  38. package/lib/core/es6/grid/util/util.js +20 -20
  39. package/lib/core/es6/index.d.ts +0 -2
  40. package/lib/core/es6/index.js +0 -3
  41. package/lib/filter-dialog/lib/filter-dialog.js +1 -0
  42. package/lib/grid/index.js +1 -1
  43. package/lib/rt-grid/dist/rt-grid.js +193 -70
  44. package/lib/rt-grid/dist/rt-grid.min.js +1 -1
  45. package/lib/rt-grid/es6/Grid.js +46 -30
  46. package/lib/rt-grid/es6/RowDefinition.d.ts +2 -1
  47. package/lib/rt-grid/es6/RowDefinition.js +74 -16
  48. package/lib/tr-grid-cell-selection/es6/CellSelection.js +56 -1
  49. package/lib/tr-grid-checkbox/es6/Checkbox.js +268 -268
  50. package/lib/tr-grid-column-grouping/es6/ColumnGrouping.d.ts +3 -2
  51. package/lib/tr-grid-column-grouping/es6/ColumnGrouping.js +60 -32
  52. package/lib/tr-grid-column-stack/es6/ColumnStack.js +279 -279
  53. package/lib/tr-grid-conditional-coloring/es6/ConditionalColoring.js +227 -207
  54. package/lib/tr-grid-in-cell-editing/es6/InCellEditing.js +11 -11
  55. package/lib/tr-grid-row-dragging/es6/RowDragging.d.ts +1 -2
  56. package/lib/tr-grid-row-dragging/es6/RowDragging.js +120 -121
  57. package/lib/tr-grid-util/es6/CellPainter.js +94 -104
  58. package/lib/tr-grid-util/es6/Conflator.js +4 -4
  59. package/lib/tr-grid-util/es6/CoralItems.js +6 -6
  60. package/lib/tr-grid-util/es6/DateTime.js +41 -41
  61. package/lib/tr-grid-util/es6/Deferred.js +5 -5
  62. package/lib/tr-grid-util/es6/Delay.d.ts +3 -3
  63. package/lib/tr-grid-util/es6/Delay.js +14 -3
  64. package/lib/tr-grid-util/es6/Dom.js +26 -26
  65. package/lib/tr-grid-util/es6/DragUI.js +17 -17
  66. package/lib/tr-grid-util/es6/ElementObserver.js +12 -12
  67. package/lib/tr-grid-util/es6/ElementWrapper.js +2 -2
  68. package/lib/tr-grid-util/es6/ElfDate.js +4 -4
  69. package/lib/tr-grid-util/es6/ElfUtil.js +37 -37
  70. package/lib/tr-grid-util/es6/EventDispatcher.js +12 -12
  71. package/lib/tr-grid-util/es6/ExpanderIcon.js +6 -6
  72. package/lib/tr-grid-util/es6/ExpressionParser.js +43 -43
  73. package/lib/tr-grid-util/es6/Ext.js +6 -6
  74. package/lib/tr-grid-util/es6/FieldFormatter.js +17 -17
  75. package/lib/tr-grid-util/es6/FilterBuilder.js +57 -58
  76. package/lib/tr-grid-util/es6/FilterOperators.d.ts +12 -1
  77. package/lib/tr-grid-util/es6/FilterOperators.js +13 -2
  78. package/lib/tr-grid-util/es6/GridPlugin.js +86 -87
  79. package/lib/tr-grid-util/es6/GroupDefinitions.js +90 -90
  80. package/lib/tr-grid-util/es6/Icon.js +4 -4
  81. package/lib/tr-grid-util/es6/MouseDownTrait.js +6 -6
  82. package/lib/tr-grid-util/es6/MultiTableManager.js +71 -80
  83. package/lib/tr-grid-util/es6/NumberFormatter.js +23 -23
  84. package/lib/tr-grid-util/es6/PercentBar.js +17 -17
  85. package/lib/tr-grid-util/es6/Perf.js +5 -5
  86. package/lib/tr-grid-util/es6/Popup.js +42 -42
  87. package/lib/tr-grid-util/es6/RangeBar.js +5 -5
  88. package/lib/tr-grid-util/es6/RequestQueue.js +5 -5
  89. package/lib/tr-grid-util/es6/RowPainter.js +23 -23
  90. package/lib/tr-grid-util/es6/SubTable.js +94 -94
  91. package/lib/tr-grid-util/es6/Table.js +51 -51
  92. package/lib/tr-grid-util/es6/TextHighlighter.js +52 -52
  93. package/lib/tr-grid-util/es6/TickCodes.js +2 -2
  94. package/lib/tr-grid-util/es6/Timer.js +2 -2
  95. package/lib/tr-grid-util/es6/TouchProxy.js +7 -7
  96. package/lib/tr-grid-util/es6/Util.js +50 -50
  97. package/lib/tr-grid-util/es6/formula/ADCService.js +2 -2
  98. package/lib/tr-grid-util/es6/formula/ADCSubscription.js +19 -19
  99. package/lib/tr-grid-util/es6/formula/AdFinService.js +2 -2
  100. package/lib/tr-grid-util/es6/formula/AdFinSubscription.js +19 -19
  101. package/lib/tr-grid-util/es6/formula/Engine.js +56 -56
  102. package/lib/tr-grid-util/es6/formula/Formula.js +62 -62
  103. package/lib/tr-grid-util/es6/formula/IntervalSubscription.js +3 -3
  104. package/lib/tr-grid-util/es6/formula/Realtime.js +15 -15
  105. package/lib/tr-grid-util/es6/formula/RealtimeService.js +15 -15
  106. package/lib/tr-grid-util/es6/formula/TSIService.js +2 -2
  107. package/lib/tr-grid-util/es6/formula/TSISubscription.js +104 -104
  108. package/lib/tr-grid-util/es6/formula/VariableToken.js +20 -20
  109. package/lib/tr-grid-util/es6/formula/functions/AdFin.js +10 -10
  110. package/lib/tr-grid-util/es6/formula/functions/Excel.js +1 -1
  111. package/lib/tr-grid-util/es6/formula/functions/Info.js +2 -2
  112. package/lib/tr-grid-util/es6/formula/functions/Internal.js +5 -5
  113. package/lib/tr-grid-util/es6/formula/functions/Logic.js +5 -5
  114. package/lib/tr-grid-util/es6/formula/functions/Math.js +46 -46
  115. package/lib/tr-grid-util/es6/formula/functions/Statistics.js +27 -27
  116. package/lib/tr-grid-util/es6/formula/functions/Text.js +19 -19
  117. package/lib/tr-grid-util/es6/index.js +1 -1
  118. package/lib/tr-grid-util/es6/jet/Adc.js +36 -36
  119. package/lib/tr-grid-util/es6/jet/CollectionDict.js +11 -11
  120. package/lib/tr-grid-util/es6/jet/DataGenerator.js +95 -95
  121. package/lib/tr-grid-util/es6/jet/DataSet.js +1 -1
  122. package/lib/tr-grid-util/es6/jet/MockArchive.js +5 -5
  123. package/lib/tr-grid-util/es6/jet/MockJET.js +1 -1
  124. package/lib/tr-grid-util/es6/jet/MockQuotes.js +13 -13
  125. package/lib/tr-grid-util/es6/jet/MockQuotes2.js +100 -100
  126. package/lib/tr-grid-util/es6/jet/MockRTK.js +4 -4
  127. package/lib/tr-grid-util/es6/jet/MockUtil.js +2 -2
  128. package/lib/tr-grid-util/es6/jet/index.js +1 -1
  129. package/lib/tr-grid-util/es6/jet/mockDataAPI.js +15 -15
  130. package/lib/tr-grid-util/es6/locale/translation-de.js +1 -1
  131. package/lib/tr-grid-util/es6/locale/translation-en.js +1 -1
  132. package/lib/tr-grid-util/es6/locale/translation-ja.js +1 -1
  133. package/lib/tr-grid-util/es6/locale/translation-zh-hant.js +1 -1
  134. package/lib/tr-grid-util/es6/locale/translation-zh.js +1 -1
  135. package/lib/tr-grid-util/es6/locale/translation.js +1 -1
  136. package/lib/types/es6/ColumnDragging.d.ts +1 -1
  137. package/lib/types/es6/ColumnGrouping.d.ts +3 -1
  138. package/lib/types/es6/Core/data/DataTable.d.ts +4 -0
  139. package/lib/types/es6/Core/data/DataView.d.ts +2 -0
  140. package/lib/types/es6/Core/data/SegmentCollection.d.ts +2 -0
  141. package/lib/types/es6/Core/index.d.ts +0 -2
  142. package/lib/types/es6/RealtimeGrid/RowDefinition.d.ts +2 -1
  143. package/lib/types/es6/RowDragging.d.ts +1 -2
  144. package/lib/versions.json +12 -12
  145. package/package.json +1 -1
  146. package/lib/core/es6/grid/util/ElementFrameWork.d.ts +0 -18
  147. package/lib/core/es6/grid/util/ElementFrameWork.js +0 -227
  148. package/lib/core/es6/grid/util/HttpRequest.d.ts +0 -53
  149. package/lib/core/es6/grid/util/HttpRequest.js +0 -371
  150. package/lib/core/es6/grid/util/PercentBar.d.ts +0 -43
  151. package/lib/core/es6/grid/util/PercentBar.js +0 -390
  152. package/lib/core/es6/grid/util/PercentBarRenderer.d.ts +0 -41
  153. package/lib/core/es6/grid/util/PercentBarRenderer.js +0 -316
  154. package/lib/core/es6/grid/util/RangeBar.d.ts +0 -25
  155. package/lib/core/es6/grid/util/RangeBar.js +0 -255
  156. package/lib/types/es6/Core/grid/util/ElementFrameWork.d.ts +0 -18
  157. package/lib/types/es6/Core/grid/util/HttpRequest.d.ts +0 -53
  158. package/lib/types/es6/Core/grid/util/PercentBar.d.ts +0 -43
  159. package/lib/types/es6/Core/grid/util/PercentBarRenderer.d.ts +0 -41
  160. package/lib/types/es6/Core/grid/util/RangeBar.d.ts +0 -25
@@ -19,8 +19,8 @@ import EventDispatcher from "../grid/event/EventDispatcher.js";
19
19
  * @constructor
20
20
  * @extends {EventDispatcher}
21
21
  */
22
- var DataCache = function () {
23
- var _t = this;
22
+ let DataCache = function () {
23
+ let _t = this;
24
24
 
25
25
  _t._rows = {};
26
26
  _t._subs = {};
@@ -94,7 +94,7 @@ DataCache.prototype.addSubscription = function (sub, opt_primaryRic, opt_values)
94
94
  return;
95
95
  }
96
96
 
97
- var internalSub = {"s": sub, "rics": {}};
97
+ let internalSub = {"s": sub, "rics": {}};
98
98
 
99
99
  this._subs[sub["id"]] = internalSub;
100
100
 
@@ -121,7 +121,7 @@ DataCache.prototype.addSubscription = function (sub, opt_primaryRic, opt_values)
121
121
  * @param {Object} sub Subscription object from JET.Quote
122
122
  */
123
123
  DataCache.prototype.removeSubscription = function (sub) { // All RICs associated to the subscription are removed
124
- var subId = sub["id"];
124
+ let subId = sub["id"];
125
125
 
126
126
  if (!sub || !this._subs[subId]) {
127
127
  return;
@@ -131,9 +131,9 @@ DataCache.prototype.removeSubscription = function (sub) { // All RICs associated
131
131
  sub["stop"]();
132
132
  }
133
133
 
134
- var rics = this._subs[subId]["rics"];
134
+ let rics = this._subs[subId]["rics"];
135
135
 
136
- for (var ric in rics) {
136
+ for (let ric in rics) {
137
137
  this.setRowData(subId + ric, null); // No subscription attached
138
138
  }
139
139
 
@@ -148,7 +148,7 @@ DataCache.prototype.startAllSubscriptions = function () {
148
148
  if (this._quotes2) {
149
149
  this._quotes2["start"]();
150
150
  } else {
151
- for (var key in this._subs) {
151
+ for (let key in this._subs) {
152
152
  this._subs[key]["s"]["start"]();
153
153
  }
154
154
  }
@@ -162,7 +162,7 @@ DataCache.prototype.stopAllSubscriptions = function () {
162
162
  if (this._quotes2) {
163
163
  this._quotes2["stop"]();
164
164
  } else {
165
- for (var key in this._subs) {
165
+ for (let key in this._subs) {
166
166
  this._subs[key]["s"]["stop"]();
167
167
  }
168
168
  }
@@ -183,7 +183,7 @@ DataCache.prototype.getSubscription = function (sub_id) {
183
183
  * @return {string} ric that has been input when calling addSubscription
184
184
  */
185
185
  DataCache.prototype.getPrimaryRic = function (sub_id) {
186
- var subDef = this._subs[sub_id];
186
+ let subDef = this._subs[sub_id];
187
187
  if (subDef) {
188
188
  return subDef["primary"];
189
189
  }
@@ -224,13 +224,13 @@ DataCache.prototype.clearAllData = function (opt_suppressEvent) { // All subscri
224
224
  * @fires DataCache#dataChanged
225
225
  */
226
226
  DataCache.prototype.clearColumnData = function (colId, opt_suppressEvent) {
227
- var cids = (typeof colId === "string") ? [/** @type {string} */(colId)] : /** @type {Array.<string>} */(colId);
227
+ let cids = (typeof colId === "string") ? [/** @type {string} */(colId)] : /** @type {Array.<string>} */(colId);
228
228
 
229
- for (var i = cids.length; --i >= 0;) {
230
- var cid = cids[i];
229
+ for (let i = cids.length; --i >= 0;) {
230
+ let cid = cids[i];
231
231
 
232
232
  if (cid) {
233
- for (var rid in this._rows) {
233
+ for (let rid in this._rows) {
234
234
  delete this._rows[rid][cid];
235
235
  }
236
236
  }
@@ -248,7 +248,7 @@ DataCache.prototype.clearColumnData = function (colId, opt_suppressEvent) {
248
248
  * @return {*}
249
249
  */
250
250
  DataCache.prototype.getData = function (rid, cid) {
251
- var row = this.getRowData(rid);
251
+ let row = this.getRowData(rid);
252
252
 
253
253
  return (row) ? row[cid] : null;
254
254
  };
@@ -259,12 +259,12 @@ DataCache.prototype.getData = function (rid, cid) {
259
259
  * @return {Object.<string, Array.<string>>} Map of Array of subscription object
260
260
  */
261
261
  DataCache.prototype.getAllRics = function () { // Slow
262
- var ricMap = {};
262
+ let ricMap = {};
263
263
 
264
- for (var subId in this._subs) {
265
- var rics = this._subs[subId]["rics"];
264
+ for (let subId in this._subs) {
265
+ let rics = this._subs[subId]["rics"];
266
266
 
267
- for (var ric in rics) {
267
+ for (let ric in rics) {
268
268
  if (!ricMap[ric]) {
269
269
  ricMap[ric] = [];
270
270
  }
@@ -281,9 +281,9 @@ DataCache.prototype.getAllRics = function () { // Slow
281
281
  * @return {Array.<string>}
282
282
  */
283
283
  DataCache.prototype.getAllRowIds = function () {
284
- var rids = [];
284
+ let rids = [];
285
285
 
286
- for (var rid in this._rows) {
286
+ for (let rid in this._rows) {
287
287
  rids.push(rid);
288
288
  }
289
289
 
@@ -305,9 +305,9 @@ DataCache.prototype.hasRowId = function (rid) {
305
305
  * @return {!Array.<*>}
306
306
  */
307
307
  DataCache.prototype.getColumnData = function (cid) {
308
- var fieldRows = [];
308
+ let fieldRows = [];
309
309
 
310
- for (var rid in this._rows) {
310
+ for (let rid in this._rows) {
311
311
  fieldRows.push(this._rows[rid][cid]);
312
312
  }
313
313
 
@@ -331,7 +331,7 @@ DataCache.prototype.getRowData = function (rid) {
331
331
  * @return {!Array.<Object>}
332
332
  */
333
333
  DataCache.prototype.getMultipleRowData = function (rids, opt_from, opt_to) {
334
- var len = rids.length;
334
+ let len = rids.length;
335
335
 
336
336
  if (opt_to == null) {
337
337
  opt_to = len;
@@ -345,10 +345,10 @@ DataCache.prototype.getMultipleRowData = function (rids, opt_from, opt_to) {
345
345
  opt_from = 0;
346
346
  }
347
347
 
348
- var out_ary = new Array(len);
349
- var rowMap = this._rows;
348
+ let out_ary = new Array(len);
349
+ let rowMap = this._rows;
350
350
 
351
- for (var i = opt_from; i < opt_to; ++i) {
351
+ for (let i = opt_from; i < opt_to; ++i) {
352
352
  out_ary[i] = rowMap[rids[i]] || null;
353
353
  }
354
354
 
@@ -360,10 +360,10 @@ DataCache.prototype.getMultipleRowData = function (rids, opt_from, opt_to) {
360
360
  * @return {!Array.<Object.<string, *>>}
361
361
  */
362
362
  DataCache.prototype.getAllRowData = function () {
363
- var rows = [];
364
- var rowMap = this._rows;
363
+ let rows = [];
364
+ let rowMap = this._rows;
365
365
 
366
- for (var rid in rowMap) {
366
+ for (let rid in rowMap) {
367
367
  rows.push(rowMap[rid]);
368
368
  }
369
369
 
@@ -379,7 +379,7 @@ DataCache.prototype.getAllRowData = function () {
379
379
  * @fires DataCache#dataChanged
380
380
  */
381
381
  DataCache.prototype.setData = function (rid, cid, value) { // Data changed event is always dispatched
382
- var values = {};
382
+ let values = {};
383
383
 
384
384
  values[cid] = value;
385
385
 
@@ -396,14 +396,14 @@ DataCache.prototype.hasDataCloudData = function (rid) {
396
396
  return false;
397
397
  }
398
398
 
399
- var row = this.getRowData(rid);
399
+ let row = this.getRowData(rid);
400
400
 
401
401
  if (!row) {
402
402
  return false;
403
403
  }
404
404
 
405
- for (var i = this._adcFields.length; --i >= 0;) {
406
- var data = row[this._adcFields[i]];
405
+ for (let i = this._adcFields.length; --i >= 0;) {
406
+ let data = row[this._adcFields[i]];
407
407
 
408
408
  if (data != null) {
409
409
  return true;
@@ -422,9 +422,9 @@ DataCache.prototype.hasDataCloudData = function (rid) {
422
422
  * @fires DataCache#dataChanged
423
423
  */
424
424
  DataCache.prototype.setRowData = function (rid, values, opt_eventArg) { // Data changed event is always dispatched
425
- var row = this.getRowData(rid);
426
- var dirty = false;
427
- var changes = null;
425
+ let row = this.getRowData(rid);
426
+ let dirty = false;
427
+ let changes = null;
428
428
 
429
429
  if (values) {
430
430
  if (!row) {
@@ -434,7 +434,7 @@ DataCache.prototype.setRowData = function (rid, values, opt_eventArg) { // Data
434
434
  dirty = true;
435
435
 
436
436
  } else {
437
- for (var cid in values) {
437
+ for (let cid in values) {
438
438
  row[cid] = values[cid];
439
439
  dirty = true;
440
440
  }
@@ -449,7 +449,7 @@ DataCache.prototype.setRowData = function (rid, values, opt_eventArg) { // Data
449
449
  }
450
450
 
451
451
  if (dirty && !this._composing) {
452
- var e = opt_eventArg || {};
452
+ let e = opt_eventArg || {};
453
453
 
454
454
  e["rid"] = rid;
455
455
 
@@ -471,15 +471,15 @@ DataCache.prototype.setRowData = function (rid, values, opt_eventArg) { // Data
471
471
  * @return {Object}
472
472
  */
473
473
  DataCache.prototype.cloneRowData = function (rid) {
474
- var fields = this._rows[rid];
474
+ let fields = this._rows[rid];
475
475
 
476
476
  if (!fields) {
477
477
  return null;
478
478
  }
479
479
 
480
- var values = {};
480
+ let values = {};
481
481
 
482
- for (var key in fields) {
482
+ for (let key in fields) {
483
483
  if (key.indexOf("FREE_TEXT") === 0) { // TODO: This is not generic and will cause unintentional error. Also, it posts some performance penalty
484
484
  continue; // Skip free text column
485
485
  }
@@ -501,7 +501,7 @@ DataCache.prototype.addStaticFields = function (fields) {
501
501
  return;
502
502
  }
503
503
 
504
- for (var i in fields) {
504
+ for (let i in fields) {
505
505
  if (!this._staticFields[fields[i]]) {
506
506
  this._staticFields[fields[i]] = 1;
507
507
  } else {
@@ -521,7 +521,7 @@ DataCache.prototype.removeStaticFields = function (fields) {
521
521
  return;
522
522
  }
523
523
 
524
- for (var i in fields) {
524
+ for (let i in fields) {
525
525
  if (this._staticFields[fields[i]]) {
526
526
  this._staticFields[fields[i]]--;
527
527
 
@@ -555,7 +555,7 @@ DataCache.prototype.getStaticFields = function () {
555
555
  * @param {Object=} options
556
556
  * @return {!Array.<Object>} Return a JSON object that is compatible with console.table()
557
557
  * @example
558
- * var options = {
558
+ * let options = {
559
559
  * "colNames": Array.<string>,
560
560
  * "rowCount": number,
561
561
  * "startIndex": number,
@@ -572,7 +572,7 @@ DataCache.prototype.dump = function (options) {
572
572
  * @public
573
573
  * @param {Object=} opt_options
574
574
  * @example
575
- * var options = {
575
+ * let options = {
576
576
  * "colNames": Array.<string>,
577
577
  * "rowCount": number,
578
578
  * "startIndex": number,
@@ -631,10 +631,10 @@ DataCache.prototype.addDataCloudFields = function (fields) {
631
631
  this._adcRefMap = {};
632
632
  }
633
633
 
634
- var newFields = [];
634
+ let newFields = [];
635
635
 
636
636
  if (fields instanceof Array) {
637
- for (var i = fields.length; --i >= 0;) {
637
+ for (let i = fields.length; --i >= 0;) {
638
638
  this._addDataCloudField(fields[i], newFields);
639
639
  }
640
640
  } else {
@@ -645,7 +645,7 @@ DataCache.prototype.addDataCloudFields = function (fields) {
645
645
  return false;
646
646
  }
647
647
 
648
- var ricMap = this.getAllRics();
648
+ let ricMap = this.getAllRics();
649
649
 
650
650
  this._batchRequestDataCloud(ricMap, newFields);
651
651
 
@@ -670,7 +670,7 @@ DataCache.prototype.removeDataCloudField = function (field) {
670
670
  --this._adcRefMap[field];
671
671
 
672
672
  if (!this._adcRefMap[field]) {
673
- var foundAt = this._adcFields.indexOf(field);
673
+ let foundAt = this._adcFields.indexOf(field);
674
674
 
675
675
  this._adcFields.splice(foundAt, 1);
676
676
  this.clearColumnData(field);
@@ -707,7 +707,7 @@ DataCache.prototype._dispatchDataChange = function (e) {
707
707
  * @return {*}
708
708
  */
709
709
  DataCache._defaultPropertyGetter = function (propertyName, rowData, colName) {
710
- var d = rowData[colName];
710
+ let d = rowData[colName];
711
711
 
712
712
  return d ? d[propertyName] : null;
713
713
  };
@@ -732,13 +732,13 @@ DataCache._defaultGetter = function (rowData, colName) {
732
732
  * @return {!Array.<Object>} Return a JSON object that is compatible with console.table()
733
733
  */
734
734
  DataCache.constructTable = function (dataset, opt_options, opt_rowIds) {
735
- var startIndex = 0;
736
- var rLen = dataset.length;
737
- var rowLim = rLen;
738
- var colMap = null;
739
- var rids = opt_rowIds || null;
740
- var getter = DataCache._defaultGetter;
741
- var transformation = false;
735
+ let startIndex = 0;
736
+ let rLen = dataset.length;
737
+ let rowLim = rLen;
738
+ let colMap = null;
739
+ let rids = opt_rowIds || null;
740
+ let getter = DataCache._defaultGetter;
741
+ let transformation = false;
742
742
 
743
743
  if (opt_options) {
744
744
  if (opt_options["rowCount"]) {
@@ -749,9 +749,9 @@ DataCache.constructTable = function (dataset, opt_options, opt_rowIds) {
749
749
  if (opt_options["colNames"]) {
750
750
  colMap = {};
751
751
 
752
- var len = opt_options["colNames"].length;
752
+ let len = opt_options["colNames"].length;
753
753
 
754
- for (var i = 0; i < len; ++i) {
754
+ for (let i = 0; i < len; ++i) {
755
755
  colMap[opt_options["colNames"][i]] = true;
756
756
  }
757
757
 
@@ -782,18 +782,18 @@ DataCache.constructTable = function (dataset, opt_options, opt_rowIds) {
782
782
  return dataset; // The dataset is already compatible with console.table
783
783
  }
784
784
 
785
- var rows = [];
785
+ let rows = [];
786
786
 
787
- for (var r = startIndex; r < rLen; ++r) {
787
+ for (let r = startIndex; r < rLen; ++r) {
788
788
  if (rows.length >= rowLim) {
789
789
  break;
790
790
  }
791
791
 
792
- var rowData = dataset[r];
793
- var columns = (rids) ? {"rid": rids[r]} : {};
792
+ let rowData = dataset[r];
793
+ let columns = (rids) ? {"rid": rids[r]} : {};
794
794
 
795
795
  if (rowData) { // Header and footer don't have any row data
796
- var colName;
796
+ let colName;
797
797
 
798
798
  if (colMap) {
799
799
  for (colName in colMap) {
@@ -827,25 +827,25 @@ DataCache.prototype._insertRic = function (subId, ric, values) {
827
827
  // HACK: Some chain may have 0# symbol in there chain index (e.g. 0#CL:)
828
828
  ric = ric.replace("0#", "");
829
829
 
830
- var rid = subId + ric;
830
+ let rid = subId + ric;
831
831
 
832
832
  // We cannot cache event arguments because user may want to collect all the updates
833
833
  this._onADCForNewRic(subId, ric);
834
834
 
835
- var rowData = this.getRowData(rid);
835
+ let rowData = this.getRowData(rid);
836
836
  if (!rowData) { // Ensure that we have subscription id and ric from Quotes2
837
- var tmp = values;
837
+ let tmp = values;
838
838
 
839
839
  values = {}; // Clone a new object for duplicated ric
840
840
 
841
- for (var key in tmp) { // Slow
841
+ for (let key in tmp) { // Slow
842
842
  values[key] = tmp[key];
843
843
  }
844
844
 
845
845
  values["SUB_ID"] = subId;
846
846
  values["RIC"] = ric;
847
847
  } else {
848
- var rowDef = rowData["ROW_DEF"];
848
+ let rowDef = rowData["ROW_DEF"];
849
849
  if(rowDef && rowDef.isChain()){
850
850
  values["SUB_ID"] = subId;
851
851
  }
@@ -859,9 +859,9 @@ DataCache.prototype._insertRic = function (subId, ric, values) {
859
859
  * @param {Object} e
860
860
  */
861
861
  DataCache.prototype._onQ2DataChanged = function (e) {
862
- var subId = e["subId"];
863
- var ric = e["ric"];
864
- var values = /** @type{Object.<string, *>} */(e["values"]);
862
+ let subId = e["subId"];
863
+ let ric = e["ric"];
864
+ let values = /** @type{Object.<string, *>} */(e["values"]);
865
865
 
866
866
  if (values) {
867
867
  this._insertRic(subId, ric, values);
@@ -877,13 +877,13 @@ DataCache.prototype._onQ2DataChanged = function (e) {
877
877
  * @param {Object} e
878
878
  */
879
879
  DataCache.prototype._onQ2SubAdded = function (e) {
880
- var subs = e["subs"];
881
- var duplicateSubIds = e["duplicateSubIds"];
882
- var len = subs.length;
880
+ let subs = e["subs"];
881
+ let duplicateSubIds = e["duplicateSubIds"];
882
+ let len = subs.length;
883
883
 
884
- for (var i = 0; i < len; ++i) {
885
- var sub = subs[i];
886
- var ric = sub["ric"];
884
+ for (let i = 0; i < len; ++i) {
885
+ let sub = subs[i];
886
+ let ric = sub["ric"];
887
887
 
888
888
  // chain subId fires twice, one with "_ci_" and one without "_ci_"
889
889
  // the subId with "_ci_" should be ignore
@@ -894,7 +894,7 @@ DataCache.prototype._onQ2SubAdded = function (e) {
894
894
  this.addSubscription(sub, ric);
895
895
 
896
896
  if (duplicateSubIds) { // There will be no network request for duplicate subs, and hence we need to update the data from our cache
897
- var dupSubId = duplicateSubIds[i];
897
+ let dupSubId = duplicateSubIds[i];
898
898
 
899
899
  if (dupSubId) {
900
900
  window.setTimeout(
@@ -910,11 +910,11 @@ DataCache.prototype._onQ2SubAdded = function (e) {
910
910
  * @param {Object} e
911
911
  */
912
912
  DataCache.prototype._onQ2SubRemoved = function (e) {
913
- var subs = e["subs"];
914
- var len = subs.length;
913
+ let subs = e["subs"];
914
+ let len = subs.length;
915
915
 
916
- for (var i = 0; i < len; ++i) {
917
- var sub = subs[i];
916
+ for (let i = 0; i < len; ++i) {
917
+ let sub = subs[i];
918
918
 
919
919
  // chain subId fires twice, one with "_ci_" and one without "_ci_"
920
920
  // the subId with "_ci_" should be ignore
@@ -932,7 +932,7 @@ DataCache.prototype._onQ2SubRemoved = function (e) {
932
932
  * @param {string} ric
933
933
  */
934
934
  DataCache.prototype._onADCForNewRic = function (subId, ric) {
935
- var sub = this._subs[subId];
935
+ let sub = this._subs[subId];
936
936
 
937
937
  if (!sub) {
938
938
  return;
@@ -962,7 +962,7 @@ DataCache.prototype._onADCForNewRic = function (subId, ric) {
962
962
  * @param {Object.<string, *>} dupData
963
963
  */
964
964
  DataCache.prototype._onDuplicateRic = function (subId, dupData) {
965
- var sub = this._subs[subId];
965
+ let sub = this._subs[subId];
966
966
 
967
967
  if (!sub) {
968
968
  return;
@@ -970,9 +970,9 @@ DataCache.prototype._onDuplicateRic = function (subId, dupData) {
970
970
 
971
971
  sub = sub["s"]; // Quotes2' subscription
972
972
 
973
- var ric = sub["ric"];
974
- var dupSubId = /** @type{string} */(dupData["SUB_ID"]);
975
- var values = this._cloneRowData(dupData, ric, subId);
973
+ let ric = sub["ric"];
974
+ let dupSubId = /** @type{string} */(dupData["SUB_ID"]);
975
+ let values = this._cloneRowData(dupData, ric, subId);
976
976
 
977
977
  if (!values) {
978
978
  return;
@@ -980,12 +980,12 @@ DataCache.prototype._onDuplicateRic = function (subId, dupData) {
980
980
 
981
981
  this._onInsert(sub, ric, values);
982
982
 
983
- var children = sub["children"];
983
+ let children = sub["children"];
984
984
 
985
985
  if (children) {
986
- var childCount = children.length;
986
+ let childCount = children.length;
987
987
 
988
- for (var i = 0; i < childCount; ++i) {
988
+ for (let i = 0; i < childCount; ++i) {
989
989
  ric = children[i];
990
990
  values = this._cloneRowData(dupSubId, ric, subId);
991
991
 
@@ -1001,7 +1001,7 @@ DataCache.prototype._onDuplicateRic = function (subId, dupData) {
1001
1001
  * @param {Object.<string, *>} values
1002
1002
  */
1003
1003
  DataCache.prototype._onInsert = function (sub, ric, values/*, rowN*/) {
1004
- var subId = sub["id"];
1004
+ let subId = sub["id"];
1005
1005
 
1006
1006
  if (this._quotes2) {
1007
1007
  this._insertRic(subId, ric, values);
@@ -1054,8 +1054,8 @@ DataCache.prototype._addDataCloudField = function (field, ary_out) {
1054
1054
  * @suppress {missingProperties}
1055
1055
  */
1056
1056
  DataCache.prototype._onADCUpdate = function (e) {
1057
- var xhr = e["currentTarget"]; // XMLHttpRequest
1058
- var resp = null;
1057
+ let xhr = e["currentTarget"]; // XMLHttpRequest
1058
+ let resp = null;
1059
1059
 
1060
1060
  try {
1061
1061
  resp = JSON.parse(xhr.responseText);
@@ -1068,14 +1068,14 @@ DataCache.prototype._onADCUpdate = function (e) {
1068
1068
  return;
1069
1069
  }
1070
1070
 
1071
- var colCount = resp["cols"];
1072
- var rows = resp["rows"];
1073
- var colDefs = rows[0]; // The first row is always the column definition
1074
- var ricIndex = -1;
1075
- var fieldIndices = {};
1071
+ let colCount = resp["cols"];
1072
+ let rows = resp["rows"];
1073
+ let colDefs = rows[0]; // The first row is always the column definition
1074
+ let ricIndex = -1;
1075
+ let fieldIndices = {};
1076
1076
 
1077
- for (var i = 0; i < colCount; ++i) {
1078
- var colDef = colDefs[i];
1077
+ for (let i = 0; i < colCount; ++i) {
1078
+ let colDef = colDefs[i];
1079
1079
 
1080
1080
  if (colDef["i"] === "instrument") {
1081
1081
  ricIndex = i;
@@ -1084,15 +1084,15 @@ DataCache.prototype._onADCUpdate = function (e) {
1084
1084
  }
1085
1085
  }
1086
1086
 
1087
- var rowCount = rows.length;
1087
+ let rowCount = rows.length;
1088
1088
 
1089
- for (var j = 1; j < rowCount; ++j) { // Start from 1
1090
- var row = rows[j];
1091
- var ric = row[ricIndex];
1092
- var values = {};
1089
+ for (let j = 1; j < rowCount; ++j) { // Start from 1
1090
+ let row = rows[j];
1091
+ let ric = row[ricIndex];
1092
+ let values = {};
1093
1093
 
1094
- for (var field in fieldIndices) {
1095
- var value = row[fieldIndices[field]];
1094
+ for (let field in fieldIndices) {
1095
+ let value = row[fieldIndices[field]];
1096
1096
 
1097
1097
  if (value != null) {
1098
1098
  // Data should be merged from the backend.
@@ -1109,11 +1109,11 @@ DataCache.prototype._onADCUpdate = function (e) {
1109
1109
  }
1110
1110
  }
1111
1111
 
1112
- var subIds = xhr.ricMap[ric];
1112
+ let subIds = xhr.ricMap[ric];
1113
1113
 
1114
1114
  if (subIds) { // Only ric within the subscription can be updated
1115
1115
  for (i = subIds.length; --i >= 0;) {
1116
- var subId = subIds[i];
1116
+ let subId = subIds[i];
1117
1117
 
1118
1118
  if (this._subs[subId]) { // Only update the existing subscription
1119
1119
  // window.console.log("ADC update " + subId + ric + " with " + JSON.stringify(values));
@@ -1157,9 +1157,9 @@ DataCache.prototype._batchRequestDataCloud = function (ricMap, fields) {
1157
1157
  return null;
1158
1158
  }
1159
1159
 
1160
- var rics = [];
1160
+ let rics = [];
1161
1161
 
1162
- for (var ric in ricMap) {
1162
+ for (let ric in ricMap) {
1163
1163
  rics.push(ric);
1164
1164
  }
1165
1165
 
@@ -1187,7 +1187,7 @@ DataCache.prototype._requestDataCloud = function (ricMap, fields, rics) { // Sma
1187
1187
  return null;
1188
1188
  }
1189
1189
 
1190
- var xhr = new XMLHttpRequest();
1190
+ let xhr = new XMLHttpRequest();
1191
1191
 
1192
1192
  xhr.onload = this._onADCUpdate;
1193
1193
  xhr.onerror = this._onADCError;
@@ -1196,7 +1196,7 @@ DataCache.prototype._requestDataCloud = function (ricMap, fields, rics) { // Sma
1196
1196
  xhr.open("POST", this._adcUrl, true);
1197
1197
  xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
1198
1198
 
1199
- var body = 'formula=' + fields + '&identifiers=' + rics;
1199
+ let body = 'formula=' + fields + '&identifiers=' + rics;
1200
1200
 
1201
1201
  // window.console.log("ADC is requested with " + body);
1202
1202
  if (this._productId) {
@@ -1224,8 +1224,8 @@ DataCache.prototype._requestDataCloud = function (ricMap, fields, rics) { // Sma
1224
1224
  * @return {Object}
1225
1225
  */
1226
1226
  DataCache.prototype._cloneRowData = function (obj, ric, newSubId) {
1227
- var subId = (typeof obj === "string") ? obj : obj["SUB_ID"];
1228
- var fields = this._rows[subId + ric];
1227
+ let subId = (typeof obj === "string") ? obj : obj["SUB_ID"];
1228
+ let fields = this._rows[subId + ric];
1229
1229
 
1230
1230
  if (!fields) { // The specified row has been removed
1231
1231
  if (typeof obj === "object") {
@@ -1235,9 +1235,9 @@ DataCache.prototype._cloneRowData = function (obj, ric, newSubId) {
1235
1235
  }
1236
1236
  }
1237
1237
 
1238
- var values = {};
1238
+ let values = {};
1239
1239
 
1240
- for (var key in fields) {
1240
+ for (let key in fields) {
1241
1241
  if (this._staticFields[key] == null) { // Static field must not be cloned
1242
1242
  values[key] = fields[key];
1243
1243
  }
@@ -26,6 +26,8 @@ declare class DataTable extends DataCache {
26
26
 
27
27
  public getPreviousData(rid: string, cid: string): { [key: string]: any };
28
28
 
29
+ public setRowData(rid: string, values?: { [key: string]: any }|null, eventArg?: any): boolean;
30
+
29
31
  public setColumnData(cid: string, valueList: (any)[], opt_ridList?: (string)[]|null): void;
30
32
 
31
33
  public setDataFromObjectMap(obj: { [key: string]: any }): void;
@@ -88,7 +90,7 @@ declare class DataTable extends DataCache {
88
90
 
89
91
  public getSegment(rid: string): Segment|null;
90
92
 
91
- public getSegmentParent(rid: string): string;
93
+ public getSegmentParent(rid: string): Segment|null;
92
94
 
93
95
  public getSegmentLevel(rid: string): number;
94
96