@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
@@ -9,7 +9,7 @@ import { Dom } from "./Dom.js";
9
9
  * @private
10
10
  * @const
11
11
  */
12
- var GridElements = {
12
+ let GridElements = {
13
13
  "EFX-GRID": 1,
14
14
  "ATLAS-BLOTTER": 1,
15
15
  "EF-GRID": 1
@@ -18,7 +18,7 @@ var GridElements = {
18
18
  * @private
19
19
  * @const
20
20
  */
21
- var InvalidHostElements = {
21
+ let InvalidHostElements = {
22
22
  "BODY": 1,
23
23
  "HTML": 1,
24
24
  "EFX-GRID": 1,
@@ -30,16 +30,16 @@ var InvalidHostElements = {
30
30
  * @param {Object} instance
31
31
  * @return {Object}
32
32
  */
33
- var _cloneInstance = function (instance) {
33
+ let _cloneInstance = function (instance) {
34
34
  return new instance.constructor();
35
35
  };
36
36
  /** @private
37
37
  * @param {number} num
38
38
  * @return {!Array.<Object>}
39
39
  */
40
- var _newArrayOfObject = function (num) {
41
- var ary = new Array(num);
42
- for(var i = 0; i < num; ++i) {
40
+ let _newArrayOfObject = function (num) {
41
+ let ary = new Array(num);
42
+ for(let i = 0; i < num; ++i) {
43
43
  ary[i] = {};
44
44
  }
45
45
  return ary;
@@ -48,12 +48,12 @@ var _newArrayOfObject = function (num) {
48
48
  * @param {Element} elem
49
49
  * @param {boolean=} bool
50
50
  */
51
- var _toggleInlineElement = function (elem, bool) {
51
+ let _toggleInlineElement = function (elem, bool) {
52
52
  if(!elem || elem.style.display === "none") {
53
53
  return;
54
54
  }
55
55
 
56
- var s = elem.style;
56
+ let s = elem.style;
57
57
  if(bool == null) {
58
58
  bool = s.display !== "inline-block";
59
59
  }
@@ -69,7 +69,7 @@ var _toggleInlineElement = function (elem, bool) {
69
69
  /** @constructor
70
70
  * @param {Element} gridElem
71
71
  */
72
- var MultiTableManager = function (gridElem) {
72
+ let MultiTableManager = function (gridElem) {
73
73
  this._onDelayedConfiguration = this._onDelayedConfiguration.bind(this);
74
74
  this._onConfiguration = this._onConfiguration.bind(this);
75
75
  this._onWrapCountChanged = this._onWrapCountChanged.bind(this);
@@ -130,7 +130,7 @@ MultiTableManager.synchronizeVScrollbar = function(vScrollbarHost, hScrollbarHos
130
130
  return Promise.reject("Host element cannot be body element.");
131
131
  }
132
132
 
133
- var gridLen = 0;
133
+ let gridLen = 0;
134
134
  if(gridElems) {
135
135
  if(GridElements[gridElems.tagName]) { // Accept single grid element as a parameter
136
136
  gridElems = [gridElems];
@@ -139,8 +139,8 @@ MultiTableManager.synchronizeVScrollbar = function(vScrollbarHost, hScrollbarHos
139
139
  }
140
140
 
141
141
  // Element validation
142
- var i, gridElem;
143
- var validatedElems = [];
142
+ let i, gridElem;
143
+ let validatedElems = [];
144
144
  for(i = 0; i < gridLen; ++i) {
145
145
  gridElem = gridElems[i];
146
146
  if(gridElem && GridElements[gridElem.tagName]) {
@@ -152,13 +152,13 @@ MultiTableManager.synchronizeVScrollbar = function(vScrollbarHost, hScrollbarHos
152
152
  return Promise.reject("No grid element detected for scrollbar synchronization.");
153
153
  }
154
154
 
155
- var promises = [];
155
+ let promises = [];
156
156
  for(i = 0; i < gridLen; ++i) {
157
157
  gridElem = validatedElems[i];
158
158
  if(gridElem.api) {
159
159
  promises.push(Promise.resolve(gridElem));
160
160
  } else {
161
- var deferredConfig = gridElem._deferredConfig;
161
+ let deferredConfig = gridElem._deferredConfig;
162
162
  if(!deferredConfig) {
163
163
  deferredConfig = gridElem._deferredConfig = new Deferred();
164
164
  gridElem.addEventListener("configured", MultiTableManager._onGridConfigured);
@@ -175,10 +175,10 @@ MultiTableManager.synchronizeVScrollbar = function(vScrollbarHost, hScrollbarHos
175
175
  * @param {Object} e
176
176
  */
177
177
  MultiTableManager._onGridConfigured = function(e) {
178
- var gridElem = e.currentTarget;
178
+ let gridElem = e.currentTarget;
179
179
  gridElem.removeEventListener("configured", MultiTableManager._onGridConfigured);
180
180
  if(gridElem._deferredConfig) {
181
- var d = gridElem._deferredConfig;
181
+ let d = gridElem._deferredConfig;
182
182
  gridElem._deferredConfig = null;
183
183
  d.resolve(gridElem);
184
184
  }
@@ -199,11 +199,11 @@ MultiTableManager._onVScrollbarSynchronization = function(vScrollbarHost, hScrol
199
199
  hScrollbarHost.style.whiteSpace = "nowrap";
200
200
  hScrollbarHost.style.overflow = "auto hidden";
201
201
 
202
- var gridLen = gridElems.length;
203
- var mainCore = gridElems[0].api.getCoreGrid();
204
- for(var i = 0; i < gridLen; ++i) {
205
- var gridElem = gridElems[i];
206
- var core = gridElem.api.getCoreGrid();
202
+ let gridLen = gridElems.length;
203
+ let mainCore = gridElems[0].api.getCoreGrid();
204
+ for(let i = 0; i < gridLen; ++i) {
205
+ let gridElem = gridElems[i];
206
+ let core = gridElem.api.getCoreGrid();
207
207
 
208
208
  _toggleInlineElement(gridElem, true);
209
209
  if(i > 0) {
@@ -231,7 +231,7 @@ MultiTableManager.prototype.setGridConfig = function (configObj) {
231
231
  }
232
232
  this._extensions = configObj.extensions ? configObj.extensions.slice() : [];
233
233
 
234
- var main = this._tables[0];
234
+ let main = this._tables[0];
235
235
  if(main) {
236
236
  configObj = this._cloneConfig();
237
237
  main.addEventListener("configured", this._onDelayedConfiguration);
@@ -266,8 +266,8 @@ MultiTableManager.prototype._onConfiguration = function () {
266
266
  /** @public
267
267
  */
268
268
  MultiTableManager.prototype.dispose = function () {
269
- var len = this._tables.length;
270
- for(var i = 0; i < len; ++i) {
269
+ let len = this._tables.length;
270
+ for(let i = 0; i < len; ++i) {
271
271
  this._tables[i].dispose();
272
272
  }
273
273
  this._tables = [];
@@ -280,11 +280,11 @@ MultiTableManager.prototype.dispose = function () {
280
280
  * @return {!Object}
281
281
  */
282
282
  MultiTableManager.prototype._cloneConfig = function () {
283
- var obj = null;
283
+ let obj = null;
284
284
  if(this._configObj) {
285
285
  obj = cloneObject(this._configObj);
286
286
  if(Array.isArray(obj.columns)) {
287
- var runtimeConfig = this._tables[0].api ? this._tables[0].api.getConfigObject() : this._configObj;
287
+ let runtimeConfig = this._tables[0].api ? this._tables[0].api.getConfigObject() : this._configObj;
288
288
  obj.columns = runtimeConfig.columns.slice();
289
289
  }
290
290
  }
@@ -304,7 +304,7 @@ MultiTableManager.prototype._setTableCount = function(num) {
304
304
  this._tableCount = num > 0 ? num : 1;
305
305
 
306
306
  if(this._ready) {
307
- var tableCount = this._tables.length;
307
+ let tableCount = this._tables.length;
308
308
  if(this._tableCount > tableCount) {
309
309
  this._addTables(this._tableCount - tableCount);
310
310
  } else if(this._tableCount < tableCount) {
@@ -328,15 +328,15 @@ MultiTableManager.prototype.setTableCount = function(num) {
328
328
  * @return {Element}
329
329
  */
330
330
  MultiTableManager.prototype._addTable = function(tableIndex) {
331
- var main = this._tables[0];
332
- var parentElem = main.parentNode;
333
- var core = main.api.getCoreGrid();
334
- var mainDataView = main.api.getDataView();
335
- // var mainDataTable = main.api.getDataTable();
336
- var stp = core.getPlugin("SortableTitlePlugin");
337
- var dtp = core.getPlugin("DragAndDropTitlePlugin");
338
-
339
- var configObj = this._cloneConfig();
331
+ let main = this._tables[0];
332
+ let parentElem = main.parentNode;
333
+ let core = main.api.getCoreGrid();
334
+ let mainDataView = main.api.getDataView();
335
+ // let mainDataTable = main.api.getDataTable();
336
+ let stp = core.getPlugin("SortableTitlePlugin");
337
+ let dtp = core.getPlugin("DragAndDropTitlePlugin");
338
+
339
+ let configObj = this._cloneConfig();
340
340
  configObj.extensions = this._generateExtensions();
341
341
 
342
342
  delete configObj.staticDataRows;
@@ -344,15 +344,15 @@ MultiTableManager.prototype._addTable = function(tableIndex) {
344
344
  delete configObj.dataModel;
345
345
 
346
346
  if(this._wrapSize) {
347
- var wrappedViews = mainDataView.getWrappedViews();
347
+ let wrappedViews = mainDataView.getWrappedViews();
348
348
  configObj.dataView = wrappedViews[tableIndex - 1];
349
349
  configObj.grid = main.api;
350
350
  } else {
351
351
  configObj["SortableTitle"] = stp;
352
352
  configObj["DragAndDropTitle"] = dtp;
353
- var rowCount = mainDataView.getRowCount();
353
+ let rowCount = mainDataView.getRowCount();
354
354
 
355
- var ary = _newArrayOfObject(rowCount);
355
+ let ary = _newArrayOfObject(rowCount);
356
356
  if(this._emeraldGrid) {
357
357
  configObj.dataModel = {
358
358
  data: ary
@@ -362,12 +362,12 @@ MultiTableManager.prototype._addTable = function(tableIndex) {
362
362
  }
363
363
  }
364
364
 
365
- var sub = document.createElement(main.tagName);
365
+ let sub = document.createElement(main.tagName);
366
366
  _toggleInlineElement(sub, true);
367
367
 
368
368
  sub.config = configObj;
369
369
 
370
- var lastTable = this._tables[this._tables.length - 1];
370
+ let lastTable = this._tables[this._tables.length - 1];
371
371
  parentElem.insertBefore(sub, lastTable.nextSibling);
372
372
  return sub;
373
373
  };
@@ -380,13 +380,13 @@ MultiTableManager.prototype._addTables = function(num) {
380
380
  return;
381
381
  }
382
382
 
383
- var main = this._tables[0];
383
+ let main = this._tables[0];
384
384
  _toggleInlineElement(main, true); // TODO: Check if we need to do this every time
385
385
 
386
386
  // main.api.setFitContentWidth(true);
387
387
 
388
- for(var i = 0; i < num; ++i) {
389
- var grid = this._addTable(this._tables.length);
388
+ for(let i = 0; i < num; ++i) {
389
+ let grid = this._addTable(this._tables.length);
390
390
  this._tables.push(grid);
391
391
  }
392
392
 
@@ -405,15 +405,15 @@ MultiTableManager.prototype._addTables = function(num) {
405
405
  * @param {number} num
406
406
  */
407
407
  MultiTableManager.prototype._removeTables = function(num) {
408
- var tableCount = this._tables.length;
408
+ let tableCount = this._tables.length;
409
409
  if (tableCount - num < 1) {
410
410
  num = tableCount - 1;
411
411
  }
412
412
  if(!num) {
413
413
  return;
414
414
  }
415
- for(var i = 0; i < num; ++i) {
416
- var sub = this._tables.pop();
415
+ for(let i = 0; i < num; ++i) {
416
+ let sub = this._tables.pop();
417
417
  sub.config = null;
418
418
  if(sub.parentNode) {
419
419
  sub.parentNode.removeChild(sub);
@@ -433,7 +433,7 @@ MultiTableManager.prototype._wrapTable = function(rowCount) {
433
433
  this._wrapSize = rowCount > 0 ? rowCount : 0;
434
434
 
435
435
  if(this._ready) {
436
- var main = this._tables[0];
436
+ let main = this._tables[0];
437
437
  if(this._wrapSize) {
438
438
  main.style.display = "none";
439
439
  main.api.getCoreGrid().getVScrollbar().disable();
@@ -443,7 +443,7 @@ MultiTableManager.prototype._wrapTable = function(rowCount) {
443
443
  main.api.getCoreGrid().getVScrollbar().disable(false);
444
444
  }
445
445
 
446
- var dv = main.api.getDataView();
446
+ let dv = main.api.getDataView();
447
447
  dv.listen("wrapCountChanged", this._onWrapCountChanged);
448
448
  dv.wrapView(this._wrapSize);
449
449
  }
@@ -490,10 +490,10 @@ MultiTableManager.prototype.getTable = function(at) {
490
490
  * @return {!Array}
491
491
  */
492
492
  MultiTableManager.prototype._generateExtensions = function() {
493
- var extCount = this._extensions ? this._extensions.length : 0;
494
- var ary = new Array(extCount);
495
- for(var i = 0; i < extCount; ++i) {
496
- var ext = this._extensions[i];
493
+ let extCount = this._extensions ? this._extensions.length : 0;
494
+ let ary = new Array(extCount);
495
+ for(let i = 0; i < extCount; ++i) {
496
+ let ext = this._extensions[i];
497
497
  if(ext.hasMultiTableSupport && ext.hasMultiTableSupport()) {
498
498
  ary[i] = ext;
499
499
  } else {
@@ -507,9 +507,9 @@ MultiTableManager.prototype._generateExtensions = function() {
507
507
  * @param {...*} args
508
508
  */
509
509
  MultiTableManager.prototype._execAll = function(methodName, args) {
510
- var tableCount = this._tables.length;
511
- for(var i = 0; i < tableCount; ++i) {
512
- var tbl = this._tables[i];
510
+ let tableCount = this._tables.length;
511
+ for(let i = 0; i < tableCount; ++i) {
512
+ let tbl = this._tables[i];
513
513
  if(args !== undefined) { // eslint-disable-line
514
514
  if(arguments.length > 2) {
515
515
  tbl.api[methodName].apply(
@@ -537,9 +537,9 @@ MultiTableManager.prototype.insertRow = function(rowOption, at) {
537
537
  if(this._wrapSize) {
538
538
  this.getTable().api.insertRow(rowOption, at);
539
539
  } else {
540
- var tableCount = this._tables.length;
541
- for(var i = 0; i < tableCount; ++i) {
542
- var tbl = this._tables[i];
540
+ let tableCount = this._tables.length;
541
+ for(let i = 0; i < tableCount; ++i) {
542
+ let tbl = this._tables[i];
543
543
  tbl.api.insertRow(rowOption, at);
544
544
  }
545
545
  }
@@ -558,9 +558,9 @@ MultiTableManager.prototype.removeRow = function(at) {
558
558
  if(this._wrapSize) {
559
559
  this.getTable().api.removeRow(at);
560
560
  } else {
561
- var tableCount = this._tables.length;
562
- for(var i = 0; i < tableCount; ++i) {
563
- var tbl = this._tables[i];
561
+ let tableCount = this._tables.length;
562
+ for(let i = 0; i < tableCount; ++i) {
563
+ let tbl = this._tables[i];
564
564
  tbl.api.removeRow(at);
565
565
  }
566
566
  }
@@ -582,9 +582,9 @@ MultiTableManager.prototype.insertColumn = function(columnOption, idx) {
582
582
  return; // TODO
583
583
  }
584
584
 
585
- var tableCount = this._tables.length;
586
- for(var i = 0; i < tableCount; ++i) {
587
- var tbl = this._tables[i];
585
+ let tableCount = this._tables.length;
586
+ for(let i = 0; i < tableCount; ++i) {
587
+ let tbl = this._tables[i];
588
588
  tbl.api.insertColumn(columnOption, idx);
589
589
  }
590
590
  };
@@ -595,9 +595,9 @@ MultiTableManager.prototype.removeColumn = function(colRef) {
595
595
  if(this._emeraldGrid) {
596
596
  return; // TODO
597
597
  }
598
- var tableCount = this._tables.length;
599
- for(var i = 0; i < tableCount; ++i) {
600
- var tbl = this._tables[i];
598
+ let tableCount = this._tables.length;
599
+ for(let i = 0; i < tableCount; ++i) {
600
+ let tbl = this._tables[i];
601
601
  tbl.api.removeColumn(colRef);
602
602
  }
603
603
  };
@@ -18,12 +18,12 @@
18
18
  * @param {number} num Absolute number
19
19
  * @return {number}
20
20
  */
21
- var _multiplyByHundred = function(num) {
22
- var intPart = num | 0;
21
+ let _multiplyByHundred = function(num) {
22
+ let intPart = num | 0;
23
23
  if(num > intPart) {
24
- var str = num + "";
25
- var at = str.indexOf(".");
26
- var fracStr = str.slice(at + 1) + "00";
24
+ let str = num + "";
25
+ let at = str.indexOf(".");
26
+ let fracStr = str.slice(at + 1) + "00";
27
27
  return +(str.slice(0, at) + fracStr.slice(0, 2) + "." + fracStr.slice(2));
28
28
  }
29
29
  return num * 100;
@@ -33,7 +33,7 @@ var _multiplyByHundred = function(num) {
33
33
  * @constructor
34
34
  * @param {NumberFormatter~Options=} options
35
35
  * @example
36
- * var options = {
36
+ * let options = {
37
37
  * "precisionEnabled": false, // Default is leaving precision as is
38
38
  * "decimalPlaces": 2, // Take effect only precisionEnabled === true
39
39
  * "plusSign": false, // Plus sign prefixing
@@ -42,12 +42,12 @@ var _multiplyByHundred = function(num) {
42
42
  * "scalingUnit": "", // "b"|"m"
43
43
  * "multiplyBy100": false
44
44
  *};
45
- * var nf = new NumberFormatter(options);
45
+ * let nf = new NumberFormatter(options);
46
46
  * nf.format(123); // "123"
47
47
  * nf.format(-456.789); // "-456.789"
48
48
  * nf.getOptions(); // For serialization
49
49
  */
50
- var NumberFormatter = function (options) {
50
+ let NumberFormatter = function (options) {
51
51
  this["format"] = this.format = this.format.bind(this);
52
52
 
53
53
  this.init(options);
@@ -113,10 +113,10 @@ NumberFormatter.prototype.init = function(options) { // deserialize
113
113
  return;
114
114
  }
115
115
 
116
- var formatType = /** @type{string} */(options["formatType"] || options["type"]);
116
+ let formatType = /** @type{string} */(options["formatType"] || options["type"]);
117
117
 
118
118
  // Note that precision will not be used in scaledValue mode
119
- var val = options["precisionEnabled"];
119
+ let val = options["precisionEnabled"];
120
120
  if(val != null && val !== "") {
121
121
  this._precisionEnabled = val ? true : false;
122
122
  } else {
@@ -203,9 +203,9 @@ NumberFormatter.prototype.resetToDefaults = function () {
203
203
  * NumberFormatter.padDecimalPartWithZeroes("1.000", 2); // "1.000"
204
204
  */
205
205
  NumberFormatter.padDecimalPartWithZeroes = function (str, precision) {
206
- var dp = str.lastIndexOf(".");
206
+ let dp = str.lastIndexOf(".");
207
207
  if (dp >= 0) {
208
- var decimalPlace = str.length - dp - 1;
208
+ let decimalPlace = str.length - dp - 1;
209
209
  if (decimalPlace < precision) {
210
210
  str += NumberFormatter._zeroes[precision - decimalPlace];
211
211
  }
@@ -240,7 +240,7 @@ NumberFormatter.multiplyByHundred = function (num) {
240
240
  NumberFormatter.prototype.getOptions = function(options) { // serialize
241
241
  if(!options) { options = {}; }
242
242
 
243
- var formatType = options["formatType"];
243
+ let formatType = options["formatType"];
244
244
 
245
245
  if(this._precisionEnabled !== true) {
246
246
  options["precisionEnabled"] = this._precisionEnabled; // Default in init
@@ -259,7 +259,7 @@ NumberFormatter.prototype.getOptions = function(options) { // serialize
259
259
  }
260
260
 
261
261
  if(formatType === "scaled" || formatType === "scaledvalue") {
262
- var su = "";
262
+ let su = "";
263
263
  if(this._scaler == "b") {
264
264
  su = "billion";
265
265
  options["scalingUnit"] = su;
@@ -295,7 +295,7 @@ NumberFormatter.prototype.format = function(origVal) {
295
295
  }
296
296
 
297
297
  // Simplify logic by making positive value
298
- var val, sign;
298
+ let val, sign;
299
299
  if(origVal >= 0) {
300
300
  val = origVal;
301
301
  sign = this._plusSignEnabled ? "+" : "";
@@ -303,7 +303,7 @@ NumberFormatter.prototype.format = function(origVal) {
303
303
  val = -origVal;
304
304
  sign = "-";
305
305
  }
306
- var scalingMode = this._percentFormatEnabled ? "" : this._scaler; // Percent formatting overwrite scaling mode
306
+ let scalingMode = this._percentFormatEnabled ? "" : this._scaler; // Percent formatting overwrite scaling mode
307
307
 
308
308
  if(this._multiplyBy100Enabled) {
309
309
  if(this._precisionEnabled || scalingMode) {
@@ -313,7 +313,7 @@ NumberFormatter.prototype.format = function(origVal) {
313
313
  }
314
314
  }
315
315
 
316
- var absVal = val;
316
+ let absVal = val;
317
317
  // Perform scaling
318
318
  if (scalingMode) {
319
319
  if (scalingMode === "b" && val < 1e9) {
@@ -332,7 +332,7 @@ NumberFormatter.prototype.format = function(origVal) {
332
332
  // Perform rounding
333
333
  if (this._precisionEnabled) {
334
334
  if (this._precision > 0) {
335
- var deno = NumberFormatter._denominator[this._precision];
335
+ let deno = NumberFormatter._denominator[this._precision];
336
336
  val = Math.round(val * deno) / deno;
337
337
  } else {
338
338
  val = Math.round(val);
@@ -342,12 +342,12 @@ NumberFormatter.prototype.format = function(origVal) {
342
342
  }
343
343
 
344
344
  // Convert value to string
345
- var str;
345
+ let str;
346
346
  if(val > 0) {
347
347
  if(val >= 1e-6) { // Handle high (7 or more digits) precision value
348
348
  str = sign + val;
349
349
  } else {
350
- var fraction = val * 1e7; // Be careful that there are some cases like 1e-7 * 1e6 === 0.099
350
+ let fraction = val * 1e7; // Be careful that there are some cases like 1e-7 * 1e6 === 0.099
351
351
  str = (fraction / 10) + "";
352
352
  str = sign + "0.000000" + str.substr(2);
353
353
  }
@@ -357,7 +357,7 @@ NumberFormatter.prototype.format = function(origVal) {
357
357
 
358
358
  // Add separators
359
359
  if(this._separatorEnabled && val >= 1e3) {
360
- var strs = str.split(".");
360
+ let strs = str.split(".");
361
361
  str = strs[0].replace(/\B(?=(\d{3})+(?!\d))/g, ",");
362
362
  if(strs.length > 1) {
363
363
  str += "." + strs[1];
@@ -389,7 +389,7 @@ NumberFormatter.prototype.format = function(origVal) {
389
389
 
390
390
  /** @public */
391
391
  NumberFormatter.prototype.enableDefaultFormat = function() {
392
- var t = this;
392
+ let t = this;
393
393
  t._precisionEnabled = t._separatorEnabled = t._percentSignEnabled = false;
394
394
  t._percentFormatEnabled = t._plusSignEnabled = t._multiplyBy100Enabled = false;
395
395
  t._scaler = "";
@@ -17,7 +17,7 @@ import { injectCss, prettifyCss } from "./Util.js";
17
17
  * @private
18
18
  * @const
19
19
  */
20
- var _alignments = {
20
+ let _alignments = {
21
21
  "l": "l",
22
22
  "c": "c",
23
23
  "r": "r",
@@ -31,7 +31,7 @@ var _alignments = {
31
31
  * @param {string|null} str Any string such as l, c, r, L, C, R, left, right, center
32
32
  * @return {string} Possible values are l, c, r or empty string
33
33
  */
34
- var toAlignment = function(str) {
34
+ let toAlignment = function(str) {
35
35
  if(str) {
36
36
  return _alignments[str.charAt(0)] || "";
37
37
  }
@@ -43,7 +43,7 @@ var toAlignment = function(str) {
43
43
  * @param {(Element|null)=} elem Element to be rendered as PercentBar
44
44
  * @param {PercentBar~Options=} options
45
45
  */
46
- var PercentBar = function (elem, options) {
46
+ let PercentBar = function (elem, options) {
47
47
  this._topNode = elem || Dom.div();
48
48
  this._topNode._percentBar = this; // HACK: For internal reference by PercentBarRenderer
49
49
  this._topNode.classList.add("tr-percent-bar");
@@ -54,7 +54,7 @@ var PercentBar = function (elem, options) {
54
54
 
55
55
  this._txt = Dom.create("span");
56
56
  // this._txt.style.textOverflow = "ellipsis";
57
- var alignment = "l";
57
+ let alignment = "l";
58
58
  if(options) {
59
59
  if(options.alignment) {
60
60
  alignment = options.alignment;
@@ -67,7 +67,7 @@ var PercentBar = function (elem, options) {
67
67
  }
68
68
 
69
69
  // Manage text visibility state
70
- var visibilityDirty = 0;
70
+ let visibilityDirty = 0;
71
71
  if(options.textWidth != null) {
72
72
  visibilityDirty = 1;
73
73
  this.setTextWidth(options.textWidth);
@@ -240,7 +240,7 @@ PercentBar.prototype.isInvalid = function () {
240
240
  * @return {boolean} Returns invalidity
241
241
  */
242
242
  PercentBar.prototype._checkInvalidity = function () {
243
- var invalid = (this._absValue !== this._absValue) || !this._maxValue;
243
+ let invalid = (this._absValue !== this._absValue) || !this._maxValue;
244
244
  if(invalid !== this._invalid) {
245
245
  this._invalid = invalid;
246
246
  this._topNode.style.display = invalid ? "none" : "";
@@ -253,7 +253,7 @@ PercentBar.prototype._checkInvalidity = function () {
253
253
  * @param {(string|boolean)=} displayText If a string is specified, it will be shown instead of the default one. If false value is specified, the existing text is left untouched.
254
254
  */
255
255
  PercentBar.prototype.setValue = function (value, opt_max, displayText) {
256
- var t = this;
256
+ let t = this;
257
257
  if(value && typeof value !== "number") { // Perform automatic data conversion if value is not a number
258
258
  value = +value;
259
259
  }
@@ -304,7 +304,7 @@ PercentBar.prototype.setMax = function (absVal) {
304
304
  * @return {boolean} Returns true if there is any change.
305
305
  */
306
306
  PercentBar.prototype.hideZeroValue = function (hidden) {
307
- var bool = hidden !== false;
307
+ let bool = hidden !== false;
308
308
  if(this._zeroValueHidden !== bool) {
309
309
  this._zeroValueHidden = bool;
310
310
  if(this._alignment) { // Execute only after the initialization
@@ -345,7 +345,7 @@ PercentBar.prototype.setText = function (txt) {
345
345
  * @return {boolean} Returns true if there is any change.
346
346
  */
347
347
  PercentBar.prototype.hideText = function (hidden) {
348
- var bool = hidden !== false;
348
+ let bool = hidden !== false;
349
349
  if(this._textHidden !== bool) {
350
350
  this._textHidden = bool;
351
351
  if(this._alignment) { // Execute only after the initialization
@@ -377,7 +377,7 @@ PercentBar.prototype.isTextHidden = function () {
377
377
  * @return {boolean} Return true if there is any change
378
378
  */
379
379
  PercentBar.prototype._updateTextVisibility = function () {
380
- var textVisibility = !this.isTextHidden();
380
+ let textVisibility = !this.isTextHidden();
381
381
  if (this._textInDoc !== textVisibility) {
382
382
  this._textInDoc = textVisibility;
383
383
  if(textVisibility) {
@@ -410,7 +410,7 @@ PercentBar.prototype._updateTextWidth = function () {
410
410
  * @param {number|string} width
411
411
  */
412
412
  PercentBar.prototype.setTextWidth = function (width) {
413
- var txtWidth = "56px"; // Default width
413
+ let txtWidth = "56px"; // Default width
414
414
  if(typeof width === "number") {
415
415
  txtWidth = (width > 8) ? width + "px" : "0px"; // Default padding is 4 on both sides, so minimum is 8
416
416
  } else if(typeof width === "string" && width) {
@@ -498,7 +498,7 @@ PercentBar.prototype._reorderElements = function () {
498
498
  * @param {boolean=} opt_enabled
499
499
  */
500
500
  PercentBar.prototype.useMovementColor = function (opt_enabled) {
501
- var newMovementColor = opt_enabled !== false;
501
+ let newMovementColor = opt_enabled !== false;
502
502
  if(this._movementColor !== newMovementColor) {
503
503
  this._movementColor = newMovementColor;
504
504
  this.updateBarColor();
@@ -515,7 +515,7 @@ PercentBar.prototype.setTrackColor = function (color) {
515
515
  * @param {string=} color
516
516
  */
517
517
  PercentBar.prototype.setBarColor = function (color) {
518
- var newColor = color || "";
518
+ let newColor = color || "";
519
519
  if(this._barColor !== newColor) {
520
520
  this._barColor = newColor;
521
521
  this.updateBarColor();
@@ -537,7 +537,7 @@ PercentBar.prototype.enableTooltip = function (enabled) {
537
537
  * @param {(string|boolean)=} displayText If a string is specified, it will be shown instead of the default one. If false value is specified, the existing text is left untouched.
538
538
  */
539
539
  PercentBar.prototype._updateValue = function (opt_updateVal, displayText) {
540
- var t = this;
540
+ let t = this;
541
541
  if(t._dirtySign) {
542
542
  t._dirtySign = false;
543
543
  if(t._alignment === "c") {
@@ -565,7 +565,7 @@ PercentBar.prototype._updateValue = function (opt_updateVal, displayText) {
565
565
  this._updateTextWidth();
566
566
  }
567
567
  }
568
- var percent = t._maxValue !== 100 ? t._absValue / t._maxValue * 100 : t._absValue;
568
+ let percent = t._maxValue !== 100 ? t._absValue / t._maxValue * 100 : t._absValue;
569
569
  t._bar.style.width = percent + "%";
570
570
  if(displayText != null) {
571
571
  if(displayText !== false) { // Allow keeping previous text
@@ -580,7 +580,7 @@ PercentBar.prototype._updateValue = function (opt_updateVal, displayText) {
580
580
  * @public
581
581
  */
582
582
  PercentBar.prototype.updateBarColor = function () {
583
- var barColor;
583
+ let barColor;
584
584
  if(this._barColor) {
585
585
  barColor = this._barColor;
586
586
  } else if(this._movementColor) {
@@ -589,7 +589,7 @@ PercentBar.prototype.updateBarColor = function () {
589
589
  barColor = ElfUtil.themeColors["trackColor"];
590
590
  }
591
591
  if(barColor) {
592
- var barStyle = this._bar.style;
592
+ let barStyle = this._bar.style;
593
593
  if(barStyle.backgroundColor !== barColor) {
594
594
  barStyle.backgroundColor = barColor;
595
595
  }