@refinitiv-ui/efx-grid 6.0.90 → 6.0.92

Sign up to get free protection for your applications and to get access to all the features.
Files changed (152) 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 +2446 -2625
  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 +4 -0
  8. package/lib/core/es6/data/DataTable.js +219 -190
  9. package/lib/core/es6/data/DataView.d.ts +2 -0
  10. package/lib/core/es6/data/DataView.js +300 -292
  11. package/lib/core/es6/data/Segment.js +85 -83
  12. package/lib/core/es6/data/SegmentCollection.d.ts +2 -0
  13. package/lib/core/es6/data/SegmentCollection.js +91 -80
  14. package/lib/core/es6/data/WrappedView.js +41 -41
  15. package/lib/core/es6/grid/Core.js +635 -635
  16. package/lib/core/es6/grid/ILayoutGrid.js +1 -1
  17. package/lib/core/es6/grid/LayoutGrid.js +183 -183
  18. package/lib/core/es6/grid/VirtualizedLayoutGrid.js +91 -91
  19. package/lib/core/es6/grid/components/Cell.js +29 -29
  20. package/lib/core/es6/grid/components/CellFloatingPanel.js +11 -11
  21. package/lib/core/es6/grid/components/CellSpan.js +7 -7
  22. package/lib/core/es6/grid/components/CellSpans.js +36 -34
  23. package/lib/core/es6/grid/components/Column.js +40 -40
  24. package/lib/core/es6/grid/components/ElementWrapper.js +17 -17
  25. package/lib/core/es6/grid/components/HScrollbar.js +31 -31
  26. package/lib/core/es6/grid/components/Scrollbar.js +77 -77
  27. package/lib/core/es6/grid/components/StretchedCells.js +49 -49
  28. package/lib/core/es6/grid/components/VScrollbar.js +11 -11
  29. package/lib/core/es6/grid/components/VirtualItems.js +3 -3
  30. package/lib/core/es6/grid/event/EventDispatcher.js +9 -9
  31. package/lib/core/es6/grid/event/EventListeners.js +4 -4
  32. package/lib/core/es6/grid/plugins/SortableTitlePlugin.js +186 -186
  33. package/lib/core/es6/grid/util/Conflator.js +4 -4
  34. package/lib/core/es6/grid/util/Reverter.js +1 -1
  35. package/lib/core/es6/grid/util/SectionSettings.js +20 -20
  36. package/lib/core/es6/grid/util/SelectionList.js +23 -23
  37. package/lib/core/es6/grid/util/TrackLayout.js +74 -74
  38. package/lib/core/es6/grid/util/Virtualizer.js +15 -15
  39. package/lib/core/es6/grid/util/util.js +20 -20
  40. package/lib/core/es6/index.d.ts +0 -2
  41. package/lib/core/es6/index.js +0 -3
  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-column-grouping/es6/ColumnGrouping.d.ts +3 -1
  50. package/lib/tr-grid-column-grouping/es6/ColumnGrouping.js +29 -1
  51. package/lib/tr-grid-util/es6/CellPainter.js +94 -93
  52. package/lib/tr-grid-util/es6/Conflator.js +4 -4
  53. package/lib/tr-grid-util/es6/CoralItems.js +6 -6
  54. package/lib/tr-grid-util/es6/DateTime.js +39 -39
  55. package/lib/tr-grid-util/es6/Deferred.js +5 -5
  56. package/lib/tr-grid-util/es6/Delay.js +1 -1
  57. package/lib/tr-grid-util/es6/Dom.js +26 -26
  58. package/lib/tr-grid-util/es6/DragUI.js +17 -17
  59. package/lib/tr-grid-util/es6/ElementObserver.js +12 -12
  60. package/lib/tr-grid-util/es6/ElementWrapper.js +2 -2
  61. package/lib/tr-grid-util/es6/ElfDate.js +4 -4
  62. package/lib/tr-grid-util/es6/ElfUtil.js +37 -37
  63. package/lib/tr-grid-util/es6/EventDispatcher.js +12 -12
  64. package/lib/tr-grid-util/es6/ExpanderIcon.js +6 -6
  65. package/lib/tr-grid-util/es6/ExpressionParser.js +43 -43
  66. package/lib/tr-grid-util/es6/Ext.js +6 -6
  67. package/lib/tr-grid-util/es6/FieldFormatter.js +17 -17
  68. package/lib/tr-grid-util/es6/FilterBuilder.js +57 -57
  69. package/lib/tr-grid-util/es6/FilterOperators.d.ts +12 -1
  70. package/lib/tr-grid-util/es6/FilterOperators.js +13 -2
  71. package/lib/tr-grid-util/es6/GridPlugin.js +86 -86
  72. package/lib/tr-grid-util/es6/GroupDefinitions.js +90 -90
  73. package/lib/tr-grid-util/es6/Icon.js +4 -4
  74. package/lib/tr-grid-util/es6/MouseDownTrait.js +6 -6
  75. package/lib/tr-grid-util/es6/MultiTableManager.js +68 -68
  76. package/lib/tr-grid-util/es6/NumberFormatter.js +22 -22
  77. package/lib/tr-grid-util/es6/PercentBar.js +17 -17
  78. package/lib/tr-grid-util/es6/Perf.js +5 -5
  79. package/lib/tr-grid-util/es6/Popup.js +42 -42
  80. package/lib/tr-grid-util/es6/RangeBar.js +5 -5
  81. package/lib/tr-grid-util/es6/RequestQueue.js +5 -5
  82. package/lib/tr-grid-util/es6/RowPainter.js +23 -23
  83. package/lib/tr-grid-util/es6/SubTable.js +94 -94
  84. package/lib/tr-grid-util/es6/Table.js +51 -51
  85. package/lib/tr-grid-util/es6/TextHighlighter.js +49 -49
  86. package/lib/tr-grid-util/es6/TickCodes.js +2 -2
  87. package/lib/tr-grid-util/es6/Timer.js +2 -2
  88. package/lib/tr-grid-util/es6/TouchProxy.js +7 -7
  89. package/lib/tr-grid-util/es6/Util.js +50 -50
  90. package/lib/tr-grid-util/es6/formula/ADCService.js +2 -2
  91. package/lib/tr-grid-util/es6/formula/ADCSubscription.js +19 -19
  92. package/lib/tr-grid-util/es6/formula/AdFinService.js +2 -2
  93. package/lib/tr-grid-util/es6/formula/AdFinSubscription.js +19 -19
  94. package/lib/tr-grid-util/es6/formula/Engine.js +56 -56
  95. package/lib/tr-grid-util/es6/formula/Formula.js +62 -62
  96. package/lib/tr-grid-util/es6/formula/IntervalSubscription.js +3 -3
  97. package/lib/tr-grid-util/es6/formula/Realtime.js +15 -15
  98. package/lib/tr-grid-util/es6/formula/RealtimeService.js +15 -15
  99. package/lib/tr-grid-util/es6/formula/TSIService.js +2 -2
  100. package/lib/tr-grid-util/es6/formula/TSISubscription.js +104 -104
  101. package/lib/tr-grid-util/es6/formula/VariableToken.js +20 -20
  102. package/lib/tr-grid-util/es6/formula/functions/AdFin.js +10 -10
  103. package/lib/tr-grid-util/es6/formula/functions/Excel.js +1 -1
  104. package/lib/tr-grid-util/es6/formula/functions/Info.js +2 -2
  105. package/lib/tr-grid-util/es6/formula/functions/Internal.js +5 -5
  106. package/lib/tr-grid-util/es6/formula/functions/Logic.js +5 -5
  107. package/lib/tr-grid-util/es6/formula/functions/Math.js +46 -46
  108. package/lib/tr-grid-util/es6/formula/functions/Statistics.js +27 -27
  109. package/lib/tr-grid-util/es6/formula/functions/Text.js +19 -19
  110. package/lib/tr-grid-util/es6/index.js +1 -1
  111. package/lib/tr-grid-util/es6/jet/Adc.js +36 -36
  112. package/lib/tr-grid-util/es6/jet/CollectionDict.js +11 -11
  113. package/lib/tr-grid-util/es6/jet/DataGenerator.js +95 -95
  114. package/lib/tr-grid-util/es6/jet/DataSet.js +1 -1
  115. package/lib/tr-grid-util/es6/jet/MockArchive.js +5 -5
  116. package/lib/tr-grid-util/es6/jet/MockJET.js +1 -1
  117. package/lib/tr-grid-util/es6/jet/MockQuotes.js +13 -13
  118. package/lib/tr-grid-util/es6/jet/MockQuotes2.js +100 -100
  119. package/lib/tr-grid-util/es6/jet/MockRTK.js +4 -4
  120. package/lib/tr-grid-util/es6/jet/MockUtil.js +2 -2
  121. package/lib/tr-grid-util/es6/jet/index.js +1 -1
  122. package/lib/tr-grid-util/es6/jet/mockDataAPI.js +15 -15
  123. package/lib/tr-grid-util/es6/locale/translation-de.js +1 -1
  124. package/lib/tr-grid-util/es6/locale/translation-en.js +1 -1
  125. package/lib/tr-grid-util/es6/locale/translation-ja.js +1 -1
  126. package/lib/tr-grid-util/es6/locale/translation-zh-hant.js +1 -1
  127. package/lib/tr-grid-util/es6/locale/translation-zh.js +1 -1
  128. package/lib/tr-grid-util/es6/locale/translation.js +1 -1
  129. package/lib/types/es6/ColumnDragging.d.ts +1 -1
  130. package/lib/types/es6/ColumnGrouping.d.ts +3 -1
  131. package/lib/types/es6/Core/data/DataTable.d.ts +4 -0
  132. package/lib/types/es6/Core/data/DataView.d.ts +2 -0
  133. package/lib/types/es6/Core/data/SegmentCollection.d.ts +2 -0
  134. package/lib/types/es6/Core/index.d.ts +0 -2
  135. package/lib/types/es6/RealtimeGrid/RowDefinition.d.ts +2 -1
  136. package/lib/versions.json +4 -4
  137. package/package.json +1 -1
  138. package/lib/core/es6/grid/util/ElementFrameWork.d.ts +0 -18
  139. package/lib/core/es6/grid/util/ElementFrameWork.js +0 -227
  140. package/lib/core/es6/grid/util/HttpRequest.d.ts +0 -53
  141. package/lib/core/es6/grid/util/HttpRequest.js +0 -371
  142. package/lib/core/es6/grid/util/PercentBar.d.ts +0 -43
  143. package/lib/core/es6/grid/util/PercentBar.js +0 -390
  144. package/lib/core/es6/grid/util/PercentBarRenderer.d.ts +0 -41
  145. package/lib/core/es6/grid/util/PercentBarRenderer.js +0 -316
  146. package/lib/core/es6/grid/util/RangeBar.d.ts +0 -25
  147. package/lib/core/es6/grid/util/RangeBar.js +0 -255
  148. package/lib/types/es6/Core/grid/util/ElementFrameWork.d.ts +0 -18
  149. package/lib/types/es6/Core/grid/util/HttpRequest.d.ts +0 -53
  150. package/lib/types/es6/Core/grid/util/PercentBar.d.ts +0 -43
  151. package/lib/types/es6/Core/grid/util/PercentBarRenderer.d.ts +0 -41
  152. 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,6 +90,8 @@ declare class DataTable extends DataCache {
88
90
 
89
91
  public getSegment(rid: string): Segment|null;
90
92
 
93
+ public getSegmentParent(rid: string): Segment|null;
94
+
91
95
  public getSegmentLevel(rid: string): number;
92
96
 
93
97
  public getSegmentParentRowId(rid: string): string;