@refinitiv-ui/efx-grid 6.0.130 → 6.0.132
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/grid/index.js +1 -1
- package/lib/tr-grid-auto-tooltip/es6/AutoTooltip.js +69 -66
- package/lib/tr-grid-column-grouping/es6/ColumnGrouping.d.ts +5 -2
- package/lib/tr-grid-column-grouping/es6/ColumnGrouping.js +37 -5
- package/lib/tr-grid-range-bar/es6/LEDGuage.d.ts +39 -0
- package/lib/tr-grid-range-bar/es6/LEDGuage.js +261 -0
- package/lib/tr-grid-range-bar/es6/RangeBar.d.ts +4 -3
- package/lib/tr-grid-range-bar/es6/RangeBar.js +309 -419
- package/lib/tr-grid-row-dragging/es6/RowDragging.d.ts +2 -0
- package/lib/tr-grid-row-dragging/es6/RowDragging.js +161 -113
- package/lib/tr-grid-row-filtering/es6/RowFiltering.js +24 -2
- package/lib/tr-grid-row-selection/es6/RowSelection.js +37 -32
- package/lib/tr-grid-util/es6/jet/DataGenerator.js +6 -6
- package/lib/types/es6/RowDragging.d.ts +2 -0
- package/lib/versions.json +7 -7
- package/package.json +1 -1
package/lib/grid/index.js
CHANGED
@@ -2,7 +2,10 @@ import { Ext } from "../../tr-grid-util/es6/Ext.js";
|
|
2
2
|
import { GridPlugin } from "../../tr-grid-util/es6/GridPlugin.js";
|
3
3
|
import { Conflator } from "../../tr-grid-util/es6/Conflator.js";
|
4
4
|
|
5
|
-
|
5
|
+
/** @private
|
6
|
+
* @type {boolean}
|
7
|
+
*/
|
8
|
+
let isSafari = navigator.vendor &&
|
6
9
|
navigator.vendor.indexOf('Apple') > -1 &&
|
7
10
|
navigator.userAgent &&
|
8
11
|
navigator.userAgent.indexOf('CriOS') == -1 &&
|
@@ -26,7 +29,7 @@ var isSafari = navigator.vendor &&
|
|
26
29
|
* @param {AutoTooltipPlugin~Options=} options
|
27
30
|
* @extends {GridPlugin}
|
28
31
|
*/
|
29
|
-
|
32
|
+
let AutoTooltipPlugin = function (options) {
|
30
33
|
this.applyTooltipToAllColumns = this.applyTooltipToAllColumns.bind(this);
|
31
34
|
this._onPreSectionDataBinding = this._onPreSectionDataBinding.bind(this);
|
32
35
|
this._onPostSectionDataBinding = this._onPostSectionDataBinding.bind(this);
|
@@ -62,7 +65,7 @@ AutoTooltipPlugin._isColumnVisible = function(column) {
|
|
62
65
|
return false;
|
63
66
|
}
|
64
67
|
|
65
|
-
|
68
|
+
let colElem = column.getElement();
|
66
69
|
if(!colElem) {
|
67
70
|
return false;
|
68
71
|
}
|
@@ -75,7 +78,7 @@ AutoTooltipPlugin._isColumnVisible = function(column) {
|
|
75
78
|
* @return {boolean}
|
76
79
|
*/
|
77
80
|
AutoTooltipPlugin._isUpdateRequired = function(hosts) {
|
78
|
-
|
81
|
+
let len = hosts.length;
|
79
82
|
if(len <= 0 || isSafari) {
|
80
83
|
return false;
|
81
84
|
}
|
@@ -147,7 +150,7 @@ AutoTooltipPlugin.prototype.initialize = function (host, options) {
|
|
147
150
|
* @param {Object} host core grid
|
148
151
|
*/
|
149
152
|
AutoTooltipPlugin.prototype.unload = function (host) {
|
150
|
-
|
153
|
+
let at = this._hosts.indexOf(host);
|
151
154
|
if (at < 0) { return; }
|
152
155
|
this._hosts.splice(at, 1);
|
153
156
|
|
@@ -170,10 +173,10 @@ AutoTooltipPlugin.prototype.unload = function (host) {
|
|
170
173
|
AutoTooltipPlugin.prototype.config = function (options) {
|
171
174
|
if (!options) { return; }
|
172
175
|
|
173
|
-
|
176
|
+
let extOptions = options.autoTooltip;
|
174
177
|
if(extOptions) {
|
175
178
|
// header is alias of title
|
176
|
-
|
179
|
+
let val = extOptions["title"] || extOptions["header"];
|
177
180
|
if (val != null) {
|
178
181
|
this._title = val ? true : false;
|
179
182
|
}
|
@@ -189,10 +192,10 @@ AutoTooltipPlugin.prototype.config = function (options) {
|
|
189
192
|
}
|
190
193
|
|
191
194
|
// Retrive auto tooltip data from columns
|
192
|
-
|
195
|
+
let columns = options["columns"];
|
193
196
|
if (columns) {
|
194
|
-
|
195
|
-
for (
|
197
|
+
let len = columns.length;
|
198
|
+
for (let c = 0; c < len; ++c) {
|
196
199
|
this._configColumn(c, columns[c]);
|
197
200
|
}
|
198
201
|
}
|
@@ -203,27 +206,27 @@ AutoTooltipPlugin.prototype.config = function (options) {
|
|
203
206
|
* @return {!Object}
|
204
207
|
*/
|
205
208
|
AutoTooltipPlugin.prototype.getConfigObject = function (gridOptions) {
|
206
|
-
|
209
|
+
let obj = gridOptions || {};
|
207
210
|
|
208
|
-
|
211
|
+
let columns = obj.columns;
|
209
212
|
if(!columns) {
|
210
213
|
columns = obj.columns = [];
|
211
214
|
}
|
212
215
|
|
213
|
-
|
214
|
-
for(
|
215
|
-
|
216
|
+
let len = this.getColumnCount();
|
217
|
+
for(let i = 0; i < len; ++i) {
|
218
|
+
let column = columns[i];
|
216
219
|
if(!column) {
|
217
220
|
column = columns[i] = {};
|
218
221
|
}
|
219
222
|
|
220
|
-
|
223
|
+
let colOptions = this._getColumnOption(i, "autoTooltip");
|
221
224
|
if(colOptions === true) {
|
222
225
|
column.autoTooltip = true;
|
223
226
|
}
|
224
227
|
}
|
225
228
|
|
226
|
-
|
229
|
+
let extOptions = obj.autoTooltip;
|
227
230
|
if(!extOptions) {
|
228
231
|
extOptions = obj.autoTooltip = {};
|
229
232
|
}
|
@@ -249,7 +252,7 @@ AutoTooltipPlugin.prototype.getConfigObject = function (gridOptions) {
|
|
249
252
|
*/
|
250
253
|
AutoTooltipPlugin.prototype._configColumn = function(colIndex, columnConfig) {
|
251
254
|
if(columnConfig) {
|
252
|
-
|
255
|
+
let val = columnConfig["autoTooltip"];
|
253
256
|
if (val != null) {
|
254
257
|
this._newColumnData(colIndex)["autoTooltip"] = val ? true : false;
|
255
258
|
}
|
@@ -263,22 +266,22 @@ AutoTooltipPlugin.prototype._configColumn = function(colIndex, columnConfig) {
|
|
263
266
|
* @param {number=} toR End row index
|
264
267
|
*/
|
265
268
|
AutoTooltipPlugin.prototype.applyTooltip = function (colIndex, fromR, toR) {
|
266
|
-
|
269
|
+
let hosts = this._hosts;
|
267
270
|
if(!AutoTooltipPlugin._isUpdateRequired(hosts)) {
|
268
271
|
return;
|
269
272
|
}
|
270
273
|
|
271
|
-
for (
|
272
|
-
|
274
|
+
for (let i = 0; i < hosts.length; ++i) {
|
275
|
+
let host = this._hosts[i];
|
273
276
|
if (this._title) {
|
274
|
-
|
275
|
-
for (
|
277
|
+
let titles = host.getAllSections("title");
|
278
|
+
for (let t = titles.length; --t >= 0;) {
|
276
279
|
this._updateNonContentSection(titles[t], colIndex);
|
277
280
|
}
|
278
281
|
}
|
279
282
|
if (this._footer) {
|
280
|
-
|
281
|
-
for (
|
283
|
+
let footers = host.getAllSections("footer");
|
284
|
+
for (let j = footers.length; --j >= 0;) {
|
282
285
|
this._updateNonContentSection(footers[j], colIndex);
|
283
286
|
}
|
284
287
|
}
|
@@ -294,10 +297,10 @@ AutoTooltipPlugin.prototype.applyTooltip = function (colIndex, fromR, toR) {
|
|
294
297
|
* @param {Array.<number>=} colIndices Column indices
|
295
298
|
*/
|
296
299
|
AutoTooltipPlugin.prototype.applyTooltipToColumns = function (colIndices) {
|
297
|
-
|
300
|
+
let host = this._hosts ? this._hosts[0] : null;
|
298
301
|
if (host && host.getElement()) {
|
299
|
-
|
300
|
-
for (
|
302
|
+
let len = colIndices ? colIndices.length : 0;
|
303
|
+
for (let i = 0; i < len; ++i) {
|
301
304
|
this.applyTooltip(colIndices[i]);
|
302
305
|
}
|
303
306
|
}
|
@@ -308,8 +311,8 @@ AutoTooltipPlugin.prototype.applyTooltipToColumns = function (colIndices) {
|
|
308
311
|
*/
|
309
312
|
AutoTooltipPlugin.prototype.applyTooltipToAllColumns = function () {
|
310
313
|
this._applyTimer = 0;
|
311
|
-
|
312
|
-
for (
|
314
|
+
let colCount = this.getColumnCount();
|
315
|
+
for (let c = 0; c < colCount; ++c) {
|
313
316
|
this.applyTooltip(c);
|
314
317
|
}
|
315
318
|
};
|
@@ -343,17 +346,17 @@ AutoTooltipPlugin.prototype._requestNonContentSectionUpdate = function () {
|
|
343
346
|
return;
|
344
347
|
}
|
345
348
|
|
346
|
-
|
349
|
+
let hosts = this._hosts;
|
347
350
|
if(!AutoTooltipPlugin._isUpdateRequired(hosts)) {
|
348
351
|
return;
|
349
352
|
}
|
350
353
|
|
351
354
|
this._nonContentSectionUpdated = true;
|
352
355
|
|
353
|
-
|
354
|
-
|
355
|
-
for(
|
356
|
-
|
356
|
+
let colCount = this.getColumnCount();
|
357
|
+
let sections, s, c;
|
358
|
+
for(let i = 0; i < hosts.length; ++i) {
|
359
|
+
let host = hosts[i];
|
357
360
|
|
358
361
|
sections = host.getAllSections("title");
|
359
362
|
for(s = 0; s < sections.length; s++) {
|
@@ -379,15 +382,15 @@ AutoTooltipPlugin.prototype._requestContentSectionUpdate = function () {
|
|
379
382
|
return;
|
380
383
|
}
|
381
384
|
|
382
|
-
|
385
|
+
let hosts = this._hosts;
|
383
386
|
if(!AutoTooltipPlugin._isUpdateRequired(hosts)) {
|
384
387
|
return;
|
385
388
|
}
|
386
389
|
|
387
|
-
|
388
|
-
for(
|
389
|
-
|
390
|
-
for(
|
390
|
+
let colCount = this.getColumnCount();
|
391
|
+
for(let i = 0; i < hosts.length; ++i) {
|
392
|
+
let section = hosts[i].getSection("content");
|
393
|
+
for(let c = 0; c < colCount; c++) {
|
391
394
|
if(this._isTooltipCandidate(c)) {
|
392
395
|
this._updateContentSection(section, c);
|
393
396
|
}
|
@@ -404,20 +407,20 @@ AutoTooltipPlugin.prototype._requestContentSectionUpdate = function () {
|
|
404
407
|
AutoTooltipPlugin.prototype._updateNonContentSection = function (section, colIndex) {
|
405
408
|
if(!section) { return false; }
|
406
409
|
|
407
|
-
|
410
|
+
let column = section.getColumn(colIndex);
|
408
411
|
if(!AutoTooltipPlugin._isColumnVisible(column)) {
|
409
412
|
return false;
|
410
413
|
}
|
411
414
|
|
412
|
-
|
413
|
-
for(
|
414
|
-
|
415
|
+
let rowCount = section.getRowCount();
|
416
|
+
for(let r = 0; r < rowCount; ++r) {
|
417
|
+
let cell = section.getCell(colIndex, r, false); // Ignore cell span
|
415
418
|
if(!cell || !cell.isVisible()) { return false; }
|
416
419
|
|
417
|
-
|
420
|
+
let elem = cell.getContent();
|
418
421
|
if(!elem) { return false; }
|
419
422
|
|
420
|
-
|
423
|
+
let tooltipInfo = cell.getTooltipInfo();
|
421
424
|
if(tooltipInfo) {
|
422
425
|
if(tooltipInfo["userTooltip"] != null ||
|
423
426
|
tooltipInfo["groupHeaderDefault"] != null ||
|
@@ -430,11 +433,11 @@ AutoTooltipPlugin.prototype._updateNonContentSection = function (section, colInd
|
|
430
433
|
}
|
431
434
|
|
432
435
|
// Set tooltip only if text's length is longer than column width.
|
433
|
-
|
436
|
+
let sw = elem.scrollWidth;
|
434
437
|
if(sw && sw > elem.offsetWidth) {
|
435
438
|
cell.setTooltipInfo("clippedText", true);
|
436
439
|
|
437
|
-
|
440
|
+
let tooltip = cell.getTextContent();
|
438
441
|
cell.setTooltipInfo("clippedTextTooltip", tooltip);
|
439
442
|
cell.setAttribute("ef-title", tooltip);
|
440
443
|
} else {
|
@@ -471,7 +474,7 @@ AutoTooltipPlugin.prototype._updateContentSection = function (section, colIndex,
|
|
471
474
|
return false;
|
472
475
|
}
|
473
476
|
|
474
|
-
|
477
|
+
let columnObj = section.getColumn(colIndex);
|
475
478
|
if (!columnObj) {
|
476
479
|
return false;
|
477
480
|
}
|
@@ -480,24 +483,24 @@ AutoTooltipPlugin.prototype._updateContentSection = function (section, colIndex,
|
|
480
483
|
return false;
|
481
484
|
}
|
482
485
|
|
483
|
-
|
486
|
+
let colElem = columnObj.getElement();
|
484
487
|
if (!colElem) {
|
485
488
|
return false;
|
486
489
|
}
|
487
490
|
|
488
|
-
for (
|
489
|
-
|
491
|
+
for (let r = fromR; r < toR; ++r) {
|
492
|
+
let cell = section.getCell(colIndex, r, false); // Ignore cell span
|
490
493
|
if (cell && cell.isVisible()) {
|
491
494
|
|
492
495
|
if (cell._userDefinedTooltip == null) {
|
493
|
-
|
496
|
+
let tooltipProp = cell.getTooltip() || cell.getAttribute('ef-title');
|
494
497
|
cell._userDefinedTooltip = tooltipProp || '';
|
495
498
|
}
|
496
499
|
|
497
|
-
|
498
|
-
|
500
|
+
let elem = cell.getContent();
|
501
|
+
let tooltip = "";
|
499
502
|
if (elem) {
|
500
|
-
|
503
|
+
let sw = elem.scrollWidth;
|
501
504
|
|
502
505
|
// Set tooltip only if text's length is longer than column width.
|
503
506
|
if (sw && sw > elem.offsetWidth) {
|
@@ -533,8 +536,8 @@ AutoTooltipPlugin.prototype._clearTooltipCache = function (section, colIndex, fr
|
|
533
536
|
return;
|
534
537
|
}
|
535
538
|
|
536
|
-
for (
|
537
|
-
|
539
|
+
for (let rowIndex = fromRowIndex; rowIndex < toRowIndex; rowIndex++) {
|
540
|
+
let cell = section.getCell(colIndex, rowIndex);
|
538
541
|
// if isDataChange = true
|
539
542
|
if (isDataChange || (cell && cell._userDefinedTooltip != null)) {
|
540
543
|
cell._userDefinedTooltip = null;
|
@@ -549,7 +552,7 @@ AutoTooltipPlugin.prototype._clearTooltipCache = function (section, colIndex, fr
|
|
549
552
|
if (cell._previousPos === rowIndex + '-' + colIndex
|
550
553
|
&& !isDataChange // in case isDataChange be true then we need to clear all tooltip cache in else block
|
551
554
|
) {
|
552
|
-
|
555
|
+
let tooltip = cell.getTooltip() || cell.getAttribute('ef-title');
|
553
556
|
if (tooltip) {
|
554
557
|
cell.removeAttribute('ef-title');
|
555
558
|
cell.setTooltip(tooltip);
|
@@ -565,27 +568,27 @@ AutoTooltipPlugin.prototype._clearTooltipCache = function (section, colIndex, fr
|
|
565
568
|
};
|
566
569
|
|
567
570
|
/** @private
|
568
|
-
* @param {
|
571
|
+
* @param {Object} e event from preSectionDataBinding
|
569
572
|
*/
|
570
573
|
AutoTooltipPlugin.prototype._onPreSectionDataBinding = function (e) {
|
571
574
|
if (e && e.sectionType === "content") {
|
572
|
-
|
573
|
-
|
574
|
-
for (
|
575
|
+
let colCount = this.getColumnCount();
|
576
|
+
let isDataChange = e.actualUpdate === true;
|
577
|
+
for (let c = 0; c < colCount; ++c) {
|
575
578
|
this._clearTooltipCache(e.section, c, e.fromRowIndex, e.toRowIndex, isDataChange);
|
576
579
|
}
|
577
580
|
}
|
578
581
|
};
|
579
582
|
|
580
583
|
/** @private
|
581
|
-
* @param {
|
584
|
+
* @param {Object} e event from preSectionDataBinding
|
582
585
|
*/
|
583
586
|
AutoTooltipPlugin.prototype._onPostSectionDataBinding = function (e) {
|
584
587
|
this._requestAllSectionsUpdate();
|
585
588
|
};
|
586
589
|
|
587
590
|
/** @private
|
588
|
-
* @param {
|
591
|
+
* @param {Object} e
|
589
592
|
*/
|
590
593
|
AutoTooltipPlugin.prototype._onColumnAdded = function(e) {
|
591
594
|
if(e.context && e.colIndex != null) {
|
@@ -601,7 +604,7 @@ AutoTooltipPlugin.prototype._onColumnAdded = function(e) {
|
|
601
604
|
* @return {boolean}
|
602
605
|
*/
|
603
606
|
AutoTooltipPlugin.prototype._isTooltipCandidate = function (colIndex) {
|
604
|
-
|
607
|
+
let bool = this._getColumnOption(colIndex, "autoTooltip");
|
605
608
|
if(bool != null) {
|
606
609
|
return bool ? true : false;
|
607
610
|
}
|
@@ -1,11 +1,14 @@
|
|
1
1
|
import { Ext } from "../../tr-grid-util/es6/Ext.js";
|
2
2
|
import { GridPlugin } from "../../tr-grid-util/es6/GridPlugin.js";
|
3
3
|
import { GroupDefinitions } from "../../tr-grid-util/es6/GroupDefinitions.js";
|
4
|
-
import { cloneObject, injectCss, prettifyCss, deepEqual } from "../../tr-grid-util/es6/Util.js";
|
4
|
+
import { cloneObject, injectCss, prettifyCss, deepEqual, isEmptyObject } from "../../tr-grid-util/es6/Util.js";
|
5
5
|
|
6
6
|
declare namespace ColumnGroupingPlugin {
|
7
7
|
|
8
|
-
type Options =
|
8
|
+
type Options = {
|
9
|
+
groupDefinitions: ColumnGroupingPlugin.GroupDefinitions|null,
|
10
|
+
minChildCount?: number|null
|
11
|
+
};
|
9
12
|
|
10
13
|
type GroupDefinitions = (ColumnGroupingPlugin.GroupDefinition)[]|null;
|
11
14
|
|
@@ -1,10 +1,12 @@
|
|
1
1
|
import { Ext } from "../../tr-grid-util/es6/Ext.js";
|
2
2
|
import { GridPlugin } from "../../tr-grid-util/es6/GridPlugin.js";
|
3
3
|
import { GroupDefinitions } from "../../tr-grid-util/es6/GroupDefinitions.js";
|
4
|
-
import { cloneObject, injectCss, prettifyCss, deepEqual } from "../../tr-grid-util/es6/Util.js";
|
4
|
+
import { cloneObject, injectCss, prettifyCss, deepEqual, isEmptyObject } from "../../tr-grid-util/es6/Util.js";
|
5
5
|
|
6
|
-
/** @typedef {
|
6
|
+
/** @typedef {Object} ColumnGroupingPlugin~Options
|
7
7
|
* @description This options can be specified by `columnGrouping` property of the main grid's options or extension options.
|
8
|
+
* @property {ColumnGroupingPlugin~GroupDefinitions} groupDefinitions A collection of group definition objects
|
9
|
+
* @property {number=} minChildCount=2 The minimum number of child columns required for group to be visible
|
8
10
|
*/
|
9
11
|
|
10
12
|
/** @typedef {Array<ColumnGroupingPlugin~GroupDefinition>} ColumnGroupingPlugin~GroupDefinitions
|
@@ -89,6 +91,10 @@ ColumnGroupingPlugin.prototype._legacyColumnGroups = null;
|
|
89
91
|
* @private
|
90
92
|
*/
|
91
93
|
ColumnGroupingPlugin.prototype._selectedColMap;
|
94
|
+
/** @type {number}
|
95
|
+
* @private
|
96
|
+
*/
|
97
|
+
ColumnGroupingPlugin.prototype._minChildCount = 2;
|
92
98
|
|
93
99
|
/** @private
|
94
100
|
* @param {number} a
|
@@ -334,7 +340,17 @@ ColumnGroupingPlugin.prototype.config = function (options) {
|
|
334
340
|
let extOptions = options["columnGrouping"];
|
335
341
|
let groupDefs = null;
|
336
342
|
if(Array.isArray(extOptions)) {
|
337
|
-
groupDefs = extOptions
|
343
|
+
groupDefs = extOptions;
|
344
|
+
} else if(typeof extOptions === "object") {
|
345
|
+
groupDefs = extOptions["groupDefinitions"];
|
346
|
+
let minChildCount = extOptions["minChildCount"];
|
347
|
+
if(typeof minChildCount === "number" && minChildCount > 0) {
|
348
|
+
this._minChildCount = minChildCount;
|
349
|
+
}
|
350
|
+
}
|
351
|
+
|
352
|
+
if(groupDefs) {
|
353
|
+
groupDefs = groupDefs.filter(ColumnGroupingPlugin._hasGroupId);
|
338
354
|
groupDefs = groupDefs.map(ColumnGroupingPlugin._cloneObject);
|
339
355
|
}
|
340
356
|
|
@@ -355,11 +371,26 @@ ColumnGroupingPlugin.prototype.config = function (options) {
|
|
355
371
|
ColumnGroupingPlugin.prototype.getConfigObject = function (gridOptions) {
|
356
372
|
let obj = gridOptions || {};
|
357
373
|
|
374
|
+
let extOptions = {};
|
375
|
+
|
358
376
|
// TODO: Handle legacyRender method that has been migrated
|
359
377
|
let groupDefs = this.getGroupDefinitions();
|
360
378
|
groupDefs = groupDefs.filter(ColumnGroupingPlugin._isNotTimeSeriesGroup);
|
361
379
|
if(groupDefs.length) {
|
362
|
-
|
380
|
+
extOptions.groupDefinitions = groupDefs;
|
381
|
+
}
|
382
|
+
|
383
|
+
if(this._minChildCount !== 2) {
|
384
|
+
extOptions.minChildCount = this._minChildCount;
|
385
|
+
}
|
386
|
+
|
387
|
+
if(!isEmptyObject(extOptions)) {
|
388
|
+
let extUserOptions = obj.columnGrouping;
|
389
|
+
if(extUserOptions != null && typeof extUserOptions === "object") {
|
390
|
+
Object.assign(extUserOptions, extOptions);
|
391
|
+
} else {
|
392
|
+
obj.columnGrouping = extOptions;
|
393
|
+
}
|
363
394
|
}
|
364
395
|
|
365
396
|
return obj;
|
@@ -669,6 +700,7 @@ ColumnGroupingPlugin.prototype._verifySingleChild = function(groupMap) {
|
|
669
700
|
validIds[groupIds[i]] = 1;
|
670
701
|
}
|
671
702
|
|
703
|
+
let minChildCount = this._minChildCount;
|
672
704
|
let removable = true;
|
673
705
|
while(removable){
|
674
706
|
removable = false;
|
@@ -689,7 +721,7 @@ ColumnGroupingPlugin.prototype._verifySingleChild = function(groupMap) {
|
|
689
721
|
}
|
690
722
|
}
|
691
723
|
|
692
|
-
if(validChildren.length <
|
724
|
+
if(validChildren.length < minChildCount) {
|
693
725
|
delete groupMap[groupId];
|
694
726
|
validIds[groupId] = 0;
|
695
727
|
removable = true;
|
@@ -0,0 +1,39 @@
|
|
1
|
+
|
2
|
+
|
3
|
+
declare namespace LEDGuage {
|
4
|
+
|
5
|
+
type RangeValues = {
|
6
|
+
low?: number|null,
|
7
|
+
last?: number|null,
|
8
|
+
high?: number|null,
|
9
|
+
close?: number|null,
|
10
|
+
vwap?: number|null,
|
11
|
+
tick?: number|null
|
12
|
+
};
|
13
|
+
|
14
|
+
}
|
15
|
+
|
16
|
+
declare class LEDGuage {
|
17
|
+
|
18
|
+
constructor();
|
19
|
+
|
20
|
+
public static createElementWithText(text?: string|null): Element|null;
|
21
|
+
|
22
|
+
public setPriceGraph(priceGraph?: boolean|null): void;
|
23
|
+
|
24
|
+
public setRangeValue(rangeBarData: LEDGuage.RangeValues|null): void;
|
25
|
+
|
26
|
+
public isNoRangeValue(): boolean;
|
27
|
+
|
28
|
+
public isHighLowEqual(): boolean;
|
29
|
+
|
30
|
+
public isInvalidRangeValue(): boolean;
|
31
|
+
|
32
|
+
public getEqualRangeElement(): Element|null;
|
33
|
+
|
34
|
+
public getLEDGuageElement(): Element|null;
|
35
|
+
|
36
|
+
}
|
37
|
+
|
38
|
+
export default LEDGuage;
|
39
|
+
export { LEDGuage };
|