@refinitiv-ui/efx-grid 6.0.91 → 6.0.92

Sign up to get free protection for your applications and to get access to all the features.
Files changed (151) 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/grid/index.js +1 -1
  42. package/lib/rt-grid/dist/rt-grid.js +193 -70
  43. package/lib/rt-grid/dist/rt-grid.min.js +1 -1
  44. package/lib/rt-grid/es6/Grid.js +46 -30
  45. package/lib/rt-grid/es6/RowDefinition.d.ts +2 -1
  46. package/lib/rt-grid/es6/RowDefinition.js +74 -16
  47. package/lib/tr-grid-cell-selection/es6/CellSelection.js +56 -1
  48. package/lib/tr-grid-column-grouping/es6/ColumnGrouping.d.ts +3 -1
  49. package/lib/tr-grid-column-grouping/es6/ColumnGrouping.js +29 -1
  50. package/lib/tr-grid-util/es6/CellPainter.js +94 -93
  51. package/lib/tr-grid-util/es6/Conflator.js +4 -4
  52. package/lib/tr-grid-util/es6/CoralItems.js +6 -6
  53. package/lib/tr-grid-util/es6/DateTime.js +39 -39
  54. package/lib/tr-grid-util/es6/Deferred.js +5 -5
  55. package/lib/tr-grid-util/es6/Delay.js +1 -1
  56. package/lib/tr-grid-util/es6/Dom.js +26 -26
  57. package/lib/tr-grid-util/es6/DragUI.js +17 -17
  58. package/lib/tr-grid-util/es6/ElementObserver.js +12 -12
  59. package/lib/tr-grid-util/es6/ElementWrapper.js +2 -2
  60. package/lib/tr-grid-util/es6/ElfDate.js +4 -4
  61. package/lib/tr-grid-util/es6/ElfUtil.js +37 -37
  62. package/lib/tr-grid-util/es6/EventDispatcher.js +12 -12
  63. package/lib/tr-grid-util/es6/ExpanderIcon.js +6 -6
  64. package/lib/tr-grid-util/es6/ExpressionParser.js +43 -43
  65. package/lib/tr-grid-util/es6/Ext.js +6 -6
  66. package/lib/tr-grid-util/es6/FieldFormatter.js +17 -17
  67. package/lib/tr-grid-util/es6/FilterBuilder.js +57 -57
  68. package/lib/tr-grid-util/es6/FilterOperators.d.ts +12 -1
  69. package/lib/tr-grid-util/es6/FilterOperators.js +13 -2
  70. package/lib/tr-grid-util/es6/GridPlugin.js +86 -86
  71. package/lib/tr-grid-util/es6/GroupDefinitions.js +90 -90
  72. package/lib/tr-grid-util/es6/Icon.js +4 -4
  73. package/lib/tr-grid-util/es6/MouseDownTrait.js +6 -6
  74. package/lib/tr-grid-util/es6/MultiTableManager.js +68 -68
  75. package/lib/tr-grid-util/es6/NumberFormatter.js +22 -22
  76. package/lib/tr-grid-util/es6/PercentBar.js +17 -17
  77. package/lib/tr-grid-util/es6/Perf.js +5 -5
  78. package/lib/tr-grid-util/es6/Popup.js +42 -42
  79. package/lib/tr-grid-util/es6/RangeBar.js +5 -5
  80. package/lib/tr-grid-util/es6/RequestQueue.js +5 -5
  81. package/lib/tr-grid-util/es6/RowPainter.js +23 -23
  82. package/lib/tr-grid-util/es6/SubTable.js +94 -94
  83. package/lib/tr-grid-util/es6/Table.js +51 -51
  84. package/lib/tr-grid-util/es6/TextHighlighter.js +49 -49
  85. package/lib/tr-grid-util/es6/TickCodes.js +2 -2
  86. package/lib/tr-grid-util/es6/Timer.js +2 -2
  87. package/lib/tr-grid-util/es6/TouchProxy.js +7 -7
  88. package/lib/tr-grid-util/es6/Util.js +50 -50
  89. package/lib/tr-grid-util/es6/formula/ADCService.js +2 -2
  90. package/lib/tr-grid-util/es6/formula/ADCSubscription.js +19 -19
  91. package/lib/tr-grid-util/es6/formula/AdFinService.js +2 -2
  92. package/lib/tr-grid-util/es6/formula/AdFinSubscription.js +19 -19
  93. package/lib/tr-grid-util/es6/formula/Engine.js +56 -56
  94. package/lib/tr-grid-util/es6/formula/Formula.js +62 -62
  95. package/lib/tr-grid-util/es6/formula/IntervalSubscription.js +3 -3
  96. package/lib/tr-grid-util/es6/formula/Realtime.js +15 -15
  97. package/lib/tr-grid-util/es6/formula/RealtimeService.js +15 -15
  98. package/lib/tr-grid-util/es6/formula/TSIService.js +2 -2
  99. package/lib/tr-grid-util/es6/formula/TSISubscription.js +104 -104
  100. package/lib/tr-grid-util/es6/formula/VariableToken.js +20 -20
  101. package/lib/tr-grid-util/es6/formula/functions/AdFin.js +10 -10
  102. package/lib/tr-grid-util/es6/formula/functions/Excel.js +1 -1
  103. package/lib/tr-grid-util/es6/formula/functions/Info.js +2 -2
  104. package/lib/tr-grid-util/es6/formula/functions/Internal.js +5 -5
  105. package/lib/tr-grid-util/es6/formula/functions/Logic.js +5 -5
  106. package/lib/tr-grid-util/es6/formula/functions/Math.js +46 -46
  107. package/lib/tr-grid-util/es6/formula/functions/Statistics.js +27 -27
  108. package/lib/tr-grid-util/es6/formula/functions/Text.js +19 -19
  109. package/lib/tr-grid-util/es6/index.js +1 -1
  110. package/lib/tr-grid-util/es6/jet/Adc.js +36 -36
  111. package/lib/tr-grid-util/es6/jet/CollectionDict.js +11 -11
  112. package/lib/tr-grid-util/es6/jet/DataGenerator.js +95 -95
  113. package/lib/tr-grid-util/es6/jet/DataSet.js +1 -1
  114. package/lib/tr-grid-util/es6/jet/MockArchive.js +5 -5
  115. package/lib/tr-grid-util/es6/jet/MockJET.js +1 -1
  116. package/lib/tr-grid-util/es6/jet/MockQuotes.js +13 -13
  117. package/lib/tr-grid-util/es6/jet/MockQuotes2.js +100 -100
  118. package/lib/tr-grid-util/es6/jet/MockRTK.js +4 -4
  119. package/lib/tr-grid-util/es6/jet/MockUtil.js +2 -2
  120. package/lib/tr-grid-util/es6/jet/index.js +1 -1
  121. package/lib/tr-grid-util/es6/jet/mockDataAPI.js +15 -15
  122. package/lib/tr-grid-util/es6/locale/translation-de.js +1 -1
  123. package/lib/tr-grid-util/es6/locale/translation-en.js +1 -1
  124. package/lib/tr-grid-util/es6/locale/translation-ja.js +1 -1
  125. package/lib/tr-grid-util/es6/locale/translation-zh-hant.js +1 -1
  126. package/lib/tr-grid-util/es6/locale/translation-zh.js +1 -1
  127. package/lib/tr-grid-util/es6/locale/translation.js +1 -1
  128. package/lib/types/es6/ColumnDragging.d.ts +1 -1
  129. package/lib/types/es6/ColumnGrouping.d.ts +3 -1
  130. package/lib/types/es6/Core/data/DataTable.d.ts +4 -0
  131. package/lib/types/es6/Core/data/DataView.d.ts +2 -0
  132. package/lib/types/es6/Core/data/SegmentCollection.d.ts +2 -0
  133. package/lib/types/es6/Core/index.d.ts +0 -2
  134. package/lib/types/es6/RealtimeGrid/RowDefinition.d.ts +2 -1
  135. package/lib/versions.json +4 -4
  136. package/package.json +1 -1
  137. package/lib/core/es6/grid/util/ElementFrameWork.d.ts +0 -18
  138. package/lib/core/es6/grid/util/ElementFrameWork.js +0 -227
  139. package/lib/core/es6/grid/util/HttpRequest.d.ts +0 -53
  140. package/lib/core/es6/grid/util/HttpRequest.js +0 -371
  141. package/lib/core/es6/grid/util/PercentBar.d.ts +0 -43
  142. package/lib/core/es6/grid/util/PercentBar.js +0 -390
  143. package/lib/core/es6/grid/util/PercentBarRenderer.d.ts +0 -41
  144. package/lib/core/es6/grid/util/PercentBarRenderer.js +0 -316
  145. package/lib/core/es6/grid/util/RangeBar.d.ts +0 -25
  146. package/lib/core/es6/grid/util/RangeBar.js +0 -255
  147. package/lib/types/es6/Core/grid/util/ElementFrameWork.d.ts +0 -18
  148. package/lib/types/es6/Core/grid/util/HttpRequest.d.ts +0 -53
  149. package/lib/types/es6/Core/grid/util/PercentBar.d.ts +0 -43
  150. package/lib/types/es6/Core/grid/util/PercentBarRenderer.d.ts +0 -41
  151. package/lib/types/es6/Core/grid/util/RangeBar.d.ts +0 -25
@@ -5,7 +5,7 @@ import Util from "../util/util.js";
5
5
  * @constructor
6
6
  * @ignore
7
7
  */
8
- var TrackLayout = function () {
8
+ let TrackLayout = function () {
9
9
  this._ends = [];
10
10
  this._cols = [];
11
11
  };
@@ -56,13 +56,13 @@ TrackLayout.prototype.hitTest = function (val) {
56
56
  if (val < 0) { return -1; }
57
57
 
58
58
  // getTrackSize has updated the cache for usage. Do not call this._updateEndPoints()
59
- var totalSize = this.getTrackSize();
59
+ let totalSize = this.getTrackSize();
60
60
  if (val >= totalSize) { return ~this._laneCount; } // totalSize does not count as a hit
61
61
 
62
- var hitIndex = -1;
63
- var validRange = 0;
62
+ let hitIndex = -1;
63
+ let validRange = 0;
64
64
  if (this._homogeneous) { // Each row has the same size
65
- var laneSize = this._defaultSize;
65
+ let laneSize = this._defaultSize;
66
66
  hitIndex = Math.floor(val / laneSize);
67
67
  validRange = ((hitIndex + 1) * laneSize);
68
68
  } else {
@@ -98,7 +98,7 @@ TrackLayout.prototype.isAtDefaultSize = function (opt_index) {
98
98
  return false;
99
99
  }
100
100
  } else {
101
- for (var i = this._cols.length; --i >= 0; ) {
101
+ for (let i = this._cols.length; --i >= 0; ) {
102
102
  if (!this._isAtDefaultSize(i)) {
103
103
  return false;
104
104
  }
@@ -112,7 +112,7 @@ TrackLayout.prototype.isAtDefaultSize = function (opt_index) {
112
112
  * @return {boolean}
113
113
  */
114
114
  TrackLayout.prototype._isAtDefaultSize = function (index) {
115
- var col = this._cols[index];
115
+ let col = this._cols[index];
116
116
  if (col) {
117
117
  if (col.actualSize !== this._defaultSize) {
118
118
  return false;
@@ -139,8 +139,8 @@ TrackLayout.prototype.isHomogeneous = function () {
139
139
  * @return {boolean}
140
140
  */
141
141
  TrackLayout.prototype.isAtMinimumSize = function (opt_index) {
142
- var minSize = this._getMinimumScalingSize(opt_index);
143
- var trackSize = (opt_index != null) ? this.getLaneSize(opt_index) : this.getTrackSize();
142
+ let minSize = this._getMinimumScalingSize(opt_index);
143
+ let trackSize = (opt_index != null) ? this.getLaneSize(opt_index) : this.getTrackSize();
144
144
  return trackSize <= minSize;
145
145
  };
146
146
 
@@ -149,7 +149,7 @@ TrackLayout.prototype.isAtMinimumSize = function (opt_index) {
149
149
  * @return {boolean}
150
150
  */
151
151
  TrackLayout.prototype.isFixedSize = function () {
152
- for (var i = 0; i < this._laneCount; ++i) {
152
+ for (let i = 0; i < this._laneCount; ++i) {
153
153
  if (this.getLaneScalability(i)) {
154
154
  return false;
155
155
  }
@@ -210,7 +210,7 @@ TrackLayout.prototype.setDefaultLaneSize = function (val) {
210
210
  */
211
211
  TrackLayout.prototype.getLaneDefaultSize = function (index) {
212
212
  if (index < 0 || index >= this._laneCount) { return -1; }
213
- var col = this._newColumn(index);
213
+ let col = this._newColumn(index);
214
214
  if(col.defaultSize) {
215
215
  return col.defaultSize;
216
216
  } else {
@@ -224,7 +224,7 @@ TrackLayout.prototype.getLaneDefaultSize = function (index) {
224
224
  TrackLayout.prototype.setLaneDefaultSize = function (index, val) {
225
225
  if (index < 0 || index >= this._laneCount) { return; }
226
226
  if (val >= 0) {
227
- var col = this._newColumn(index);
227
+ let col = this._newColumn(index);
228
228
  col.defaultSize = val;
229
229
  }
230
230
  };
@@ -232,9 +232,9 @@ TrackLayout.prototype.setLaneDefaultSize = function (index, val) {
232
232
  * @return {boolean}
233
233
  */
234
234
  TrackLayout.prototype.resetLaneToDefaultSize = function () {
235
- var dirty = false;
236
- for (var i = 0; i < this._laneCount; ++i) {
237
- var col = this._cols[i];
235
+ let dirty = false;
236
+ for (let i = 0; i < this._laneCount; ++i) {
237
+ let col = this._cols[i];
238
238
  if (col) {
239
239
  if (!col.invisibility) {
240
240
  if (col.defaultSize != null) {
@@ -290,11 +290,11 @@ TrackLayout.prototype.getTrackSize = function () {
290
290
  * @return {Array.<number>|null} Array of size adjustment. Return null if there is no change
291
291
  */
292
292
  TrackLayout.prototype.setTrackSize = function (targetSize) {
293
- var i = 0, fixedSize = 0;
294
- var indices = [];
293
+ let i = 0, fixedSize = 0;
294
+ let indices = [];
295
295
  // Collecting current data for calculation
296
296
  for (i = 0; i < this._laneCount; ++i) {
297
- var col = this._cols[i];
297
+ let col = this._cols[i];
298
298
  if (col) {
299
299
  if (!col.invisibility) { // If column is visible
300
300
  if (this._getLaneScalability(col) !== false) {
@@ -309,16 +309,16 @@ TrackLayout.prototype.setTrackSize = function (targetSize) {
309
309
  }
310
310
  if (indices.length <= 0) { return null; }
311
311
 
312
- var distributions = this._distributeLaneSize(targetSize - fixedSize, indices);
312
+ let distributions = this._distributeLaneSize(targetSize - fixedSize, indices);
313
313
 
314
314
  // Find any change to flexible lane size
315
- var dirty = false;
316
- var changes = [];
315
+ let dirty = false;
316
+ let changes = [];
317
317
  for (i = distributions.length; --i >= 0; ) {
318
318
  changes[i] = 0;
319
- var val = distributions[i];
319
+ let val = distributions[i];
320
320
  if (val != null) {
321
- var cal = this.getLaneSize(i);
321
+ let cal = this.getLaneSize(i);
322
322
  this._newColumn(i);
323
323
  if (this._setCalculatedLaneSize(i, val)) {
324
324
  changes[i] = val - cal;
@@ -343,8 +343,8 @@ TrackLayout.prototype.getLaneStart = function (index) {
343
343
  }
344
344
 
345
345
  this._updateEndPoints();
346
- var exceedings = index - this._laneCount;
347
- var exceededPortion = 0;
346
+ let exceedings = index - this._laneCount;
347
+ let exceededPortion = 0;
348
348
  if (exceedings > 0) {
349
349
  index -= exceedings;
350
350
  exceededPortion = exceedings * this._defaultSize;
@@ -377,7 +377,7 @@ TrackLayout.prototype.getLaneEnd = function (index) {
377
377
  */
378
378
  TrackLayout.prototype.getLaneSize = function (index) {
379
379
  if (this._visibility) {
380
- var col = this._cols[index];
380
+ let col = this._cols[index];
381
381
  return (col) ? col.actualSize : this._defaultSize;
382
382
  }
383
383
  return 0;
@@ -387,7 +387,7 @@ TrackLayout.prototype.getLaneSize = function (index) {
387
387
  * @return {number}
388
388
  */
389
389
  TrackLayout.prototype.getCustomLaneSize = function (index) {
390
- var col = this._cols[index];
390
+ let col = this._cols[index];
391
391
  return (col && col.customSize != null) ? col.customSize : this._defaultSize;
392
392
  };
393
393
  /** @public
@@ -399,7 +399,7 @@ TrackLayout.prototype.setLaneSize = function (index, val) {
399
399
  if (index < 0 || index >= this._laneCount) { return false; }
400
400
  if (val < 0 || val !== val) { return false; }
401
401
 
402
- var col = this._cols[index];
402
+ let col = this._cols[index];
403
403
  if (col == null || col.customSize !== val) {
404
404
  col = this._newColumn(index);
405
405
  col.customSize = val;
@@ -418,7 +418,7 @@ TrackLayout.prototype.setLaneSize = function (index, val) {
418
418
  TrackLayout.prototype.setLaneProperty = function (index, propName, val) {
419
419
  if (index < 0 || index >= this._laneCount) { return false; }
420
420
 
421
- var col = this._cols[index];
421
+ let col = this._cols[index];
422
422
  if (col == null || col[propName] !== val) {
423
423
  col = this._newColumn(index);
424
424
  col[propName] = val;
@@ -433,7 +433,7 @@ TrackLayout.prototype.setLaneProperty = function (index, propName, val) {
433
433
  * @return {*}
434
434
  */
435
435
  TrackLayout.prototype.getLaneProperty = function (index, propName) {
436
- var col = this._cols[index];
436
+ let col = this._cols[index];
437
437
  return (col && col[propName] != null) ? col[propName] : null;
438
438
  };
439
439
  /** @public
@@ -441,7 +441,7 @@ TrackLayout.prototype.getLaneProperty = function (index, propName) {
441
441
  * @return {number}
442
442
  */
443
443
  TrackLayout.prototype.getMinimumLaneSize = function (index) {
444
- var col = this._cols[index];
444
+ let col = this._cols[index];
445
445
  return (col && col.minSize != null) ? col.minSize : 0;
446
446
  };
447
447
  /** Minimum lane size governs custom lane size in calculation
@@ -455,7 +455,7 @@ TrackLayout.prototype.setMinimumLaneSize = function (index, val, proportion) {
455
455
  if (index < 0 || index >= this._laneCount) { return false; }
456
456
  if (val < 0) { val = 0; }
457
457
  if (this.getMinimumLaneSize(index) !== val) {
458
- var col = this._newColumn(index);
458
+ let col = this._newColumn(index);
459
459
  col.minSize = val;
460
460
 
461
461
  if(proportion) {
@@ -472,7 +472,7 @@ TrackLayout.prototype.setMinimumLaneSize = function (index, val, proportion) {
472
472
  * @return {boolean}
473
473
  */
474
474
  TrackLayout.prototype.isLaneVisible = function (index) {
475
- var col = this._cols[index];
475
+ let col = this._cols[index];
476
476
  return col ? !col.invisibility : true;
477
477
  };
478
478
  /** @public
@@ -492,10 +492,10 @@ TrackLayout.prototype.showLane = function (index, opt_val) {
492
492
  TrackLayout.prototype.hideLane = function (index, hidden, bitIndex) {
493
493
  if (index < 0 || index >= this._laneCount) { return false; }
494
494
 
495
- var col = this._newColumn(index);
496
- var prevVis = !col.invisibility;
495
+ let col = this._newColumn(index);
496
+ let prevVis = !col.invisibility;
497
497
 
498
- var bit = (bitIndex != null) ? this._bits[bitIndex] : 1;
498
+ let bit = (bitIndex != null) ? this._bits[bitIndex] : 1;
499
499
  if(hidden !== false) {
500
500
  col.invisibility |= bit; // Add invisibility bit
501
501
  } else {
@@ -515,9 +515,9 @@ TrackLayout.prototype.hideLane = function (index, hidden, bitIndex) {
515
515
  */
516
516
  TrackLayout.prototype.getLaneVisibilityBit = function (index, bitIndex) {
517
517
  if (index >= 0 && index < this._laneCount) {
518
- var col = this._cols[index];
518
+ let col = this._cols[index];
519
519
  if(col) {
520
- var bit = (bitIndex != null) ? this._bits[bitIndex] : 1;
520
+ let bit = (bitIndex != null) ? this._bits[bitIndex] : 1;
521
521
  if(col.invisibility & bit) {
522
522
  return false;
523
523
  }
@@ -533,7 +533,7 @@ TrackLayout.prototype.show = function (opt_shown) {
533
533
  if (this._visibility !== opt_shown) {
534
534
  this._visibility = opt_shown;
535
535
  if (opt_shown) {
536
- for (var i = 0; i < this._laneCount; ++i) {
536
+ for (let i = 0; i < this._laneCount; ++i) {
537
537
  this._newColumn(i);
538
538
  this._setCalculatedLaneSize(i);
539
539
  }
@@ -548,7 +548,7 @@ TrackLayout.prototype.show = function (opt_shown) {
548
548
  * @return {boolean}
549
549
  */
550
550
  TrackLayout.prototype.getLaneScalability = function (index) {
551
- var col = this._cols[index];
551
+ let col = this._cols[index];
552
552
  return (col && col.scalability != null) ? col.scalability : this._defaultScalability;
553
553
  };
554
554
  /** @public
@@ -559,7 +559,7 @@ TrackLayout.prototype.getLaneScalability = function (index) {
559
559
  TrackLayout.prototype.setLaneScalability = function (index, val) {
560
560
  if (index < 0 || index >= this._laneCount) { return false; }
561
561
 
562
- var col = this._cols[index];
562
+ let col = this._cols[index];
563
563
  if (!col || col.scalability !== val) {
564
564
  col = this._newColumn(index);
565
565
  col.scalability = val;
@@ -584,7 +584,7 @@ TrackLayout.prototype.removeLaneAt = function (index, opt_count) {
584
584
  }
585
585
 
586
586
  this._markDirtyIndex(index);
587
- var userSettings = this.serializeLane(index); // TODO: This is unnecessary
587
+ let userSettings = this.serializeLane(index); // TODO: This is unnecessary
588
588
  this._cols.splice(index, opt_count);
589
589
 
590
590
  this._laneCount -= opt_count;
@@ -596,7 +596,7 @@ TrackLayout.prototype.removeLaneAt = function (index, opt_count) {
596
596
  */
597
597
  TrackLayout.prototype.insertLane = function (index, opt_json) {
598
598
  if (index < 0) { index = 0; }
599
- var chunkSize = 1;
599
+ let chunkSize = 1;
600
600
  if (Util.isNumber(opt_json)) {
601
601
  if (/** @type{number} */(opt_json) <= 0) { return; }
602
602
  chunkSize = /** @type{number} */(opt_json);
@@ -616,8 +616,8 @@ TrackLayout.prototype.insertLane = function (index, opt_json) {
616
616
 
617
617
  Util.insertEmptyItems(this._cols, index, chunkSize);
618
618
  if (opt_json) {
619
- var toIndex = index + chunkSize;
620
- for (var i = index; i < toIndex; ++i) {
619
+ let toIndex = index + chunkSize;
620
+ for (let i = index; i < toIndex; ++i) {
621
621
  this.deserializeLane(i, /** @type{Object} */(opt_json));
622
622
  }
623
623
  }
@@ -633,7 +633,7 @@ TrackLayout.prototype.moveLane = function (from, to) {
633
633
  else if (to > this._laneCount) { to = this._laneCount; }
634
634
  if (from === to) { return; }
635
635
 
636
- var minIndex = (from < to) ? from : to;
636
+ let minIndex = (from < to) ? from : to;
637
637
  this._markDirtyIndex(minIndex);
638
638
 
639
639
  Util.moveArrayItem(this._cols, from, to);
@@ -646,10 +646,10 @@ TrackLayout.prototype.moveLane = function (from, to) {
646
646
  TrackLayout.prototype.serializeLane = function (index) {
647
647
  if (index < 0 || index >= this._laneCount) { return null; }
648
648
 
649
- var userSettings = {};
649
+ let userSettings = {};
650
650
  userSettings["index"] = index;
651
651
 
652
- var col = this._cols[index];
652
+ let col = this._cols[index];
653
653
  if (!col) { return userSettings; }
654
654
 
655
655
  userSettings["size"] = col.customSize;
@@ -667,7 +667,7 @@ TrackLayout.prototype.deserializeLane = function (index, opt_json) {
667
667
  if (!opt_json) { return; }
668
668
  if (index < 0 || index >= this._laneCount) { return; }
669
669
 
670
- var val = opt_json["size"];
670
+ let val = opt_json["size"];
671
671
  if (val != null) {
672
672
  this.setLaneSize(index, /** @type{number} */(val));
673
673
  }
@@ -688,13 +688,13 @@ TrackLayout.prototype.deserializeLane = function (index, opt_json) {
688
688
  /** @private
689
689
  */
690
690
  TrackLayout.prototype._updateEndPoints = function () {
691
- var dirtyIndex = this._ends.length;
691
+ let dirtyIndex = this._ends.length;
692
692
  if (dirtyIndex >= this._laneCount) return;
693
693
 
694
694
  this._ends.length = this._laneCount;
695
695
 
696
- var i = 0;
697
- var sum = (dirtyIndex > 0) ? this._ends[dirtyIndex - 1] : 0;
696
+ let i = 0;
697
+ let sum = (dirtyIndex > 0) ? this._ends[dirtyIndex - 1] : 0;
698
698
 
699
699
  for (i = dirtyIndex; i < this._laneCount; ++i) {
700
700
  sum += this.getLaneSize(i);
@@ -709,13 +709,13 @@ TrackLayout.prototype._updateEndPoints = function () {
709
709
  * @return {boolean}
710
710
  */
711
711
  TrackLayout.prototype._setCalculatedLaneSize = function (index, opt_val) {
712
- var col = this._cols[index];
712
+ let col = this._cols[index];
713
713
  if (this._visibility && !col.invisibility) { // If column is visible
714
714
  if (opt_val == null) {
715
715
  opt_val = (col.customSize != null) ? col.customSize : this._defaultSize;
716
716
  }
717
717
  if(!col.scalability) { // minSize doesn't applied when lane scalability
718
- var minSize = (col.minSize != null) ? col.minSize : 0;
718
+ let minSize = (col.minSize != null) ? col.minSize : 0;
719
719
  if (opt_val < minSize) {
720
720
  opt_val = minSize;
721
721
  }
@@ -739,9 +739,9 @@ TrackLayout.prototype._setCalculatedLaneSize = function (index, opt_val) {
739
739
  * @return {number}
740
740
  */
741
741
  TrackLayout.prototype._getMinimumScalingSize = function (opt_index) {
742
- var sum = 0;
742
+ let sum = 0;
743
743
  if (opt_index != null) {
744
- var col = this._cols[opt_index];
744
+ let col = this._cols[opt_index];
745
745
  if (!col.invisibility) {
746
746
  if (col.minSize != null) {
747
747
  if (this._getLaneScalability(col) === false && col.customSize != null) {
@@ -753,7 +753,7 @@ TrackLayout.prototype._getMinimumScalingSize = function (opt_index) {
753
753
  }
754
754
  }
755
755
  } else {
756
- for (var i = this._laneCount; --i >= 0; ) {
756
+ for (let i = this._laneCount; --i >= 0; ) {
757
757
  sum += this._getMinimumScalingSize(i);
758
758
  }
759
759
  }
@@ -793,8 +793,8 @@ TrackLayout.prototype._distributeLaneSize = function (availSpace, indices) {
793
793
  if (indices.length <= 0) { return []; }
794
794
  if (availSpace < 0) { availSpace = 0; }
795
795
 
796
- var i = 0, totalWeight = 0, index = 0, expectedSize = 0;
797
- var minSizes = [], laneSizes = [], distributions = [];
796
+ let i = 0, totalWeight = 0, index = 0, expectedSize = 0;
797
+ let minSizes = [], laneSizes = [], distributions = [];
798
798
 
799
799
  for (i = indices.length; --i >= 0; ) {
800
800
  index = indices[i];
@@ -803,13 +803,13 @@ TrackLayout.prototype._distributeLaneSize = function (availSpace, indices) {
803
803
  totalWeight += laneSizes[index];
804
804
  }
805
805
 
806
- var undistributable = true;
806
+ let undistributable = true;
807
807
  while(undistributable) { // All lane sizes must at least equal to its minimum width
808
808
  undistributable = false;
809
809
  for (i = indices.length; --i >= 0; ) {
810
810
  index = indices[i];
811
- var minSize = minSizes[index];
812
- var laneSize = laneSizes[index];
811
+ let minSize = minSizes[index];
812
+ let laneSize = laneSizes[index];
813
813
  expectedSize = availSpace * laneSize / totalWeight;
814
814
  if (expectedSize <= minSize) {
815
815
  undistributable = true;
@@ -821,13 +821,13 @@ TrackLayout.prototype._distributeLaneSize = function (availSpace, indices) {
821
821
  }
822
822
  }
823
823
 
824
- var lastIndex = indices.length - 1;
825
- var occupiedSpace = 0;
826
- var fraction = 0;
824
+ let lastIndex = indices.length - 1;
825
+ let occupiedSpace = 0;
826
+ let fraction = 0;
827
827
  for (i = lastIndex; --i >= 0; ) {
828
828
  index = indices[i];
829
829
  expectedSize = availSpace * laneSizes[index] / totalWeight;
830
- var integerSize = Math.floor(expectedSize);
830
+ let integerSize = Math.floor(expectedSize);
831
831
  fraction += (expectedSize - integerSize);
832
832
  if(fraction >= 1) {
833
833
  ++integerSize;
@@ -853,7 +853,7 @@ TrackLayout.prototype._markDirtyIndex = function (index) {
853
853
  * @return {!Object}
854
854
  */
855
855
  TrackLayout.prototype._newColumn = function (index) {
856
- var col = this._cols[index];
856
+ let col = this._cols[index];
857
857
  if (!col) {
858
858
  this._cols[index] = col = {};
859
859
  // Each bit represents visibility state as the followings:
@@ -877,16 +877,16 @@ TrackLayout.prototype.copyFrom = function (src, offset) {
877
877
  }
878
878
  if(!offset) { offset = 0; }
879
879
 
880
- var srcCount = src.getLaneCount();
881
- var curCount = this.getLaneCount();
882
- var limit = offset + srcCount;
880
+ let srcCount = src.getLaneCount();
881
+ let curCount = this.getLaneCount();
882
+ let limit = offset + srcCount;
883
883
  if(limit > curCount) {
884
884
  limit = curCount;
885
885
  }
886
- var srcIndex = 0;
887
- for(var i = offset; i < limit; ++i) {
888
- var val = src.getLaneSize(srcIndex++);
889
- var col = this._newColumn(i);
886
+ let srcIndex = 0;
887
+ for(let i = offset; i < limit; ++i) {
888
+ let val = src.getLaneSize(srcIndex++);
889
+ let col = this._newColumn(i);
890
890
  if (col.customSize !== val) {
891
891
  col.customSize = val;
892
892
  if(col.actualSize !== val) { // WARNING: This does not obey visibility and minSize
@@ -6,7 +6,7 @@ import TrackLayout from "./TrackLayout.js"; // eslint-disable-line
6
6
  * @param {!TrackLayout} trackLayout
7
7
  * @extends {EventDispatcher}
8
8
  */
9
- var Virtualizer = function (trackLayout) {
9
+ let Virtualizer = function (trackLayout) {
10
10
  this._layout = trackLayout;
11
11
  this._arg = {};
12
12
  this._addEvent("indexChanged");
@@ -66,7 +66,7 @@ Virtualizer.prototype._getMinIndex = function () {
66
66
  * @return {number}
67
67
  */
68
68
  Virtualizer.prototype._getMaxIndex = function () {
69
- var index = this._layout.getLaneCount() - this._endOffsetCount;
69
+ let index = this._layout.getLaneCount() - this._endOffsetCount;
70
70
  return index > this._startOffsetCount ? index : this._startOffsetCount;
71
71
  };
72
72
 
@@ -81,8 +81,8 @@ Virtualizer.prototype.getContentStart = function (index) {
81
81
  * @return {number}
82
82
  */
83
83
  Virtualizer.prototype.getContentInViewCount = function () {
84
- var first = this.getFirstIndexInView();
85
- var last = this.getLastIndexInView();
84
+ let first = this.getFirstIndexInView();
85
+ let last = this.getLastIndexInView();
86
86
  if (first >= 0 && first < last) {
87
87
  return last - first + 1;
88
88
  }
@@ -93,8 +93,8 @@ Virtualizer.prototype.getContentInViewCount = function () {
93
93
  * @returns {number}
94
94
  */
95
95
  Virtualizer.prototype._getContentSizeInBounds = function () {
96
- var minIndex = this._getMinIndex();
97
- var maxIndex = this._getMaxIndex();
96
+ let minIndex = this._getMinIndex();
97
+ let maxIndex = this._getMaxIndex();
98
98
  return this._layout.getLaneStart(maxIndex) - this._layout.getLaneStart(minIndex);
99
99
  };
100
100
 
@@ -110,7 +110,7 @@ Virtualizer.prototype.getViewSize = function () {
110
110
  * @return {number}
111
111
  */
112
112
  Virtualizer.prototype.getViewOffset = function () {
113
- var minIndex = this._getMinIndex();
113
+ let minIndex = this._getMinIndex();
114
114
  return this._viewOffset + this._layout.getLaneStart(minIndex);
115
115
  };
116
116
  /** @public
@@ -134,8 +134,8 @@ Virtualizer.prototype.getFirstIndexInView = function () {
134
134
  if (!this._virtualizable) {
135
135
  return 0;
136
136
  }
137
- var vo = this.getViewOffset();
138
- var trackSize = this._layout.getTrackSize();
137
+ let vo = this.getViewOffset();
138
+ let trackSize = this._layout.getTrackSize();
139
139
  if(vo >= trackSize) {
140
140
  vo = trackSize - this._viewSize; // WARNING: View offset already includes minIndex and this will override that
141
141
  }
@@ -152,11 +152,11 @@ Virtualizer.prototype.getLastIndexInView = function () {
152
152
  if (!this._virtualizable) {
153
153
  return this._layout.getLaneCount() - 1;
154
154
  } else {
155
- var viewEnd = this.getViewOffset() + this._viewSize;
155
+ let viewEnd = this.getViewOffset() + this._viewSize;
156
156
 
157
157
  // prevent from invalid-index because of verical buffering
158
- var maxIndex = this._getMaxIndex();
159
- var endBound = this._layout.getLaneStart(maxIndex);
158
+ let maxIndex = this._getMaxIndex();
159
+ let endBound = this._layout.getLaneStart(maxIndex);
160
160
  if (viewEnd >= endBound) {
161
161
  return maxIndex - 1; // maxIndex is exclusive
162
162
  }
@@ -191,9 +191,9 @@ Virtualizer.prototype.update = function (opt_force) {
191
191
 
192
192
  if (this._isEventDispatching("indexChanged")) { return false; }
193
193
 
194
- var fi = this.getFirstIndexInView();
195
- var li = this.getLastIndexInView(); // INCLUSIVE
196
- var changed = (this._arg["prevFirstIndex"] !== fi) || (this._arg["prevLastIndex"] !== li);
194
+ let fi = this.getFirstIndexInView();
195
+ let li = this.getLastIndexInView(); // INCLUSIVE
196
+ let changed = (this._arg["prevFirstIndex"] !== fi) || (this._arg["prevLastIndex"] !== li);
197
197
 
198
198
  if (opt_force || changed) {
199
199
  this._arg["firstIndex"] = fi;
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @namespace
3
3
  */
4
- var Util = {};
4
+ let Util = {};
5
5
 
6
6
  // TODO: move to tr-grid-util
7
7
 
@@ -9,7 +9,7 @@ var Util = {};
9
9
  * @type {boolean}
10
10
  */
11
11
  Util.isIE = (function () {
12
- var ua = window.navigator.userAgent;
12
+ let ua = window.navigator.userAgent;
13
13
  return (ua.indexOf('MSIE ') > 0) || (ua.indexOf('Trident/') > 0) || (ua.indexOf('Edge/') > 0);
14
14
  }());
15
15
  /** @const
@@ -26,9 +26,9 @@ Util.isTouchDevice = (function () {
26
26
  * @type {boolean}
27
27
  */
28
28
  Util.isSafari = (function () {
29
- var rejectedExpression = /Chrome|Android|CriOS|FxiOS|EdgiOS/i;
30
- var safariExpression = /Safari/i;
31
- var agent = navigator.userAgent;
29
+ let rejectedExpression = /Chrome|Android|CriOS|FxiOS|EdgiOS/i;
30
+ let safariExpression = /Safari/i;
31
+ let agent = navigator.userAgent;
32
32
  if (rejectedExpression.test(agent)) {
33
33
  return false;
34
34
  }
@@ -129,9 +129,9 @@ Util.isFunction = function (val) {
129
129
  * @return {!Object}
130
130
  */
131
131
  Util.getClientPosition = function (target, opt_retObj) {
132
- var pos = opt_retObj || {};
132
+ let pos = opt_retObj || {};
133
133
  if (target["getBoundingClientRect"]) {
134
- var box = target["getBoundingClientRect"]();
134
+ let box = target["getBoundingClientRect"]();
135
135
  pos["x"] = box.left;
136
136
  pos["y"] = box.top;
137
137
  } else { // Event
@@ -151,7 +151,7 @@ Util.getClientPosition = function (target, opt_retObj) {
151
151
  */
152
152
  Util.getRelativePosition = function (A, B, opt_retObj) {
153
153
  opt_retObj = Util.getClientPosition(A, opt_retObj);
154
- var bp = Util.getClientPosition(B);
154
+ let bp = Util.getClientPosition(B);
155
155
 
156
156
  opt_retObj["x"] -= bp["x"];
157
157
  opt_retObj["y"] -= bp["y"];
@@ -169,12 +169,12 @@ Util.getRelativePosition = function (A, B, opt_retObj) {
169
169
  Util.moveArrayItem = function (ary, from, to) {
170
170
  if (!ary) { return null; }
171
171
 
172
- var len = ary.length;
172
+ let len = ary.length;
173
173
  if (from >= len && to >= len) {
174
174
  return /** @type{Array} */(ary); // No item needs to be moved
175
175
  }
176
176
 
177
- var item = ary.splice(from, 1)[0];
177
+ let item = ary.splice(from, 1)[0];
178
178
  if (to < len) {
179
179
  ary.splice(to, 0, item);
180
180
  } else {
@@ -189,7 +189,7 @@ Util.moveArrayItem = function (ary, from, to) {
189
189
  * @return {Array}
190
190
  */
191
191
  Util.pushArrayItems = function(ary, items) {
192
- var len = items ? items.length : 0;
192
+ let len = items ? items.length : 0;
193
193
  if(len > 0) {
194
194
  if(len < 1e5) { // Maximum number of arguments that the spread operator can take is exactly 125052
195
195
  if(len > 1) {
@@ -198,8 +198,8 @@ Util.pushArrayItems = function(ary, items) {
198
198
  ary.push(items[0]);
199
199
  }
200
200
  } else {
201
- var start = 0;
202
- var end = 0;
201
+ let start = 0;
202
+ let end = 0;
203
203
  while(start < len) {
204
204
  end += 1e5;
205
205
  Array.prototype.push.apply(ary, items.slice(start, end));
@@ -221,7 +221,7 @@ Util.pushArrayItems = function(ary, items) {
221
221
  Util.insertEmptyItems = function (ary, at, chunkSize) {
222
222
  if(chunkSize > 0) {
223
223
  if(chunkSize > 1) {
224
- var tailEnd = ary.slice(at);
224
+ let tailEnd = ary.slice(at);
225
225
  ary.length = at; // Remove the tail end part
226
226
  ary.length += chunkSize;
227
227
  Util.pushArrayItems(ary, tailEnd);
@@ -242,7 +242,7 @@ Util.insertEmptyItems = function (ary, at, chunkSize) {
242
242
  Util.cycleArray = function (ary, numItems) {
243
243
  if(numItems > 0 && ary) {
244
244
  if(numItems < ary.length) {
245
- var front = ary.splice(0, numItems);
245
+ let front = ary.splice(0, numItems);
246
246
  return ary.concat(front);
247
247
  }
248
248
  }
@@ -273,7 +273,7 @@ Util.lowerBound = function (ary, value, left, right, opt_lessFunc) {
273
273
  opt_lessFunc = Util._defaultLessComparator;
274
274
  }
275
275
 
276
- var mid = 0;
276
+ let mid = 0;
277
277
  while (right > left) {
278
278
  mid = (left + right) >> 1;
279
279
  if (opt_lessFunc(ary[mid], value)) {
@@ -296,7 +296,7 @@ Util.lowerBound = function (ary, value, left, right, opt_lessFunc) {
296
296
  * @return {number} Return the highest index that gives equal or greater than the searched value
297
297
  */
298
298
  Util.upperBound = function (ary, value, left, right, opt_lessFunc) {
299
- var at = Util.lowerBound(ary, value, left, right, opt_lessFunc);
299
+ let at = Util.lowerBound(ary, value, left, right, opt_lessFunc);
300
300
  while (ary[at] === value) { ++at; }
301
301
  return at;
302
302
  };
@@ -307,7 +307,7 @@ Util.upperBound = function (ary, value, left, right, opt_lessFunc) {
307
307
  * @return {string}
308
308
  */
309
309
  Util.stringFormat = function (format) {
310
- var args = Array.prototype.slice.call(arguments, 1);
310
+ let args = Array.prototype.slice.call(arguments, 1);
311
311
  return format.replace(/{(\d+)}/g, function (match, number) {
312
312
  return (args[number] != null) ? args[number] : match;
313
313
  });
@@ -348,7 +348,7 @@ Util.calculatePercent = function (lowVal, lastVal, highVal) {
348
348
  if (highVal === lowVal) {
349
349
  return 50;
350
350
  }
351
- var percent = (lastVal - lowVal) / (highVal - lowVal);
351
+ let percent = (lastVal - lowVal) / (highVal - lowVal);
352
352
  if (percent < 0) {
353
353
  return 0;
354
354
  }
@@ -366,7 +366,7 @@ Util.calculatePercent = function (lowVal, lastVal, highVal) {
366
366
  * @return {Element}
367
367
  */
368
368
  Util.closestElement = function (elem, classStr) {
369
- var n = elem;
369
+ let n = elem;
370
370
  while (n) {
371
371
  if(n.classList) { // DocumentFragment does not have classList property
372
372
  if (n.classList.contains(classStr)) {