@deephaven/iris-grid 1.6.1-beta.0 → 1.7.0
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/dist/ColumnHeaderGroup.d.ts +9 -8
- package/dist/ColumnHeaderGroup.d.ts.map +1 -1
- package/dist/ColumnHeaderGroup.js.map +1 -1
- package/dist/CommonTypes.d.ts +18 -2
- package/dist/CommonTypes.d.ts.map +1 -1
- package/dist/CommonTypes.js.map +1 -1
- package/dist/IrisGrid.d.ts +14 -5
- package/dist/IrisGrid.d.ts.map +1 -1
- package/dist/IrisGrid.js +110 -45
- package/dist/IrisGrid.js.map +1 -1
- package/dist/IrisGridMetricCalculator.d.ts +42 -23
- package/dist/IrisGridMetricCalculator.d.ts.map +1 -1
- package/dist/IrisGridMetricCalculator.js +120 -5
- package/dist/IrisGridMetricCalculator.js.map +1 -1
- package/dist/IrisGridRenderer.d.ts +3 -15
- package/dist/IrisGridRenderer.d.ts.map +1 -1
- package/dist/IrisGridRenderer.js +3 -3
- package/dist/IrisGridRenderer.js.map +1 -1
- package/dist/IrisGridTableModel.d.ts +1 -0
- package/dist/IrisGridTableModel.d.ts.map +1 -1
- package/dist/IrisGridTableModel.js +3 -0
- package/dist/IrisGridTableModel.js.map +1 -1
- package/dist/IrisGridTreeTableModel.d.ts +2 -2
- package/dist/IrisGridTreeTableModel.d.ts.map +1 -1
- package/dist/IrisGridTreeTableModel.js +0 -1
- package/dist/IrisGridTreeTableModel.js.map +1 -1
- package/dist/IrisGridUtils.d.ts +5 -5
- package/dist/IrisGridUtils.d.ts.map +1 -1
- package/dist/IrisGridUtils.js +4 -2
- package/dist/IrisGridUtils.js.map +1 -1
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/dist/mousehandlers/IrisGridContextMenuHandler.d.ts.map +1 -1
- package/dist/mousehandlers/IrisGridContextMenuHandler.js +23 -2
- package/dist/mousehandlers/IrisGridContextMenuHandler.js.map +1 -1
- package/package.json +16 -16
package/dist/IrisGrid.js
CHANGED
|
@@ -14,7 +14,7 @@ import deepEqual from 'fast-deep-equal';
|
|
|
14
14
|
import Log from '@deephaven/log';
|
|
15
15
|
import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
|
|
16
16
|
import { ContextActions, Stack, Menu, Page, Popper, ThemeExport, Tooltip, Button, ContextActionUtils, SlideTransition } from '@deephaven/components';
|
|
17
|
-
import { Grid, GridRange, GridUtils, isEditableGridModel, isExpandableGridModel, isDeletableGridModel } from '@deephaven/grid';
|
|
17
|
+
import { Grid, GridRange, GridUtils, isEditableGridModel, isExpandableGridModel, isDeletableGridModel, isExpandableColumnGridModel } from '@deephaven/grid';
|
|
18
18
|
import { dhEye, dhFilterFilled, dhGraphLineUp, dhTriangleDownSquare, vsClose, vsCloudDownload, vsEdit, vsFilter, vsMenu, vsReply, vsRuby, vsSearch, vsSplitHorizontal, vsSymbolOperator, vsTools } from '@deephaven/icons';
|
|
19
19
|
import { DateUtils, Formatter, FormatterUtils, TableUtils, isSortDirection } from '@deephaven/jsapi-utils';
|
|
20
20
|
import { assertNotNull, copyToClipboard, EMPTY_ARRAY, EMPTY_MAP, Pending, PromiseUtils, ValidationError, getOrThrow } from '@deephaven/utils';
|
|
@@ -310,7 +310,9 @@ class IrisGrid extends Component {
|
|
|
310
310
|
}, {
|
|
311
311
|
max: 1
|
|
312
312
|
}));
|
|
313
|
-
_defineProperty(this, "getCachedStateOverride", memoize((hoverSelectColumn, isFilterBarShown, isSelectingColumn, loadingScrimProgress, quickFilters, advancedFilters, sorts, reverse, rollupConfig, isMenuShown) => ({
|
|
313
|
+
_defineProperty(this, "getCachedStateOverride", memoize((model, theme, hoverSelectColumn, isFilterBarShown, isSelectingColumn, loadingScrimProgress, quickFilters, advancedFilters, sorts, reverse, rollupConfig, isMenuShown) => ({
|
|
314
|
+
model,
|
|
315
|
+
theme,
|
|
314
316
|
hoverSelectColumn,
|
|
315
317
|
isFilterBarShown,
|
|
316
318
|
isSelectingColumn,
|
|
@@ -914,6 +916,29 @@ class IrisGrid extends Component {
|
|
|
914
916
|
} = this.props;
|
|
915
917
|
return this.getCachedKeyHandlers(keyHandlers);
|
|
916
918
|
}
|
|
919
|
+
getMetricState() {
|
|
920
|
+
var _this$grid2;
|
|
921
|
+
var gridMetricState = (_this$grid2 = this.grid) === null || _this$grid2 === void 0 ? void 0 : _this$grid2.getMetricState();
|
|
922
|
+
if (gridMetricState == null) {
|
|
923
|
+
return undefined;
|
|
924
|
+
}
|
|
925
|
+
var {
|
|
926
|
+
advancedFilters,
|
|
927
|
+
hoverSelectColumn,
|
|
928
|
+
isFilterBarShown,
|
|
929
|
+
isMenuShown,
|
|
930
|
+
loadingScrimProgress,
|
|
931
|
+
quickFilters,
|
|
932
|
+
sorts,
|
|
933
|
+
reverse,
|
|
934
|
+
rollupConfig
|
|
935
|
+
} = this.state;
|
|
936
|
+
var {
|
|
937
|
+
model,
|
|
938
|
+
isSelectingColumn
|
|
939
|
+
} = this.props;
|
|
940
|
+
return _objectSpread(_objectSpread({}, gridMetricState), this.getCachedStateOverride(model, this.getTheme(), hoverSelectColumn, isFilterBarShown, isSelectingColumn, loadingScrimProgress, quickFilters, advancedFilters, sorts, reverse, rollupConfig, isMenuShown));
|
|
941
|
+
}
|
|
917
942
|
get renderer() {
|
|
918
943
|
var {
|
|
919
944
|
renderer
|
|
@@ -1279,6 +1304,10 @@ class IrisGrid extends Component {
|
|
|
1279
1304
|
advancedFilters,
|
|
1280
1305
|
quickFilters
|
|
1281
1306
|
} = this.state;
|
|
1307
|
+
if (advancedFilters.size === 0 && quickFilters.size === 0) {
|
|
1308
|
+
log.debug('No filters to rebuild');
|
|
1309
|
+
return;
|
|
1310
|
+
}
|
|
1282
1311
|
var {
|
|
1283
1312
|
columns,
|
|
1284
1313
|
formatter
|
|
@@ -1730,8 +1759,8 @@ class IrisGrid extends Component {
|
|
|
1730
1759
|
model.removeEventListener(IrisGridModel.EVENT.TABLE_CHANGED, this.handleTableChanged);
|
|
1731
1760
|
}
|
|
1732
1761
|
focus() {
|
|
1733
|
-
var _this$
|
|
1734
|
-
(_this$
|
|
1762
|
+
var _this$grid3;
|
|
1763
|
+
(_this$grid3 = this.grid) === null || _this$grid3 === void 0 ? void 0 : _this$grid3.focus();
|
|
1735
1764
|
}
|
|
1736
1765
|
focusFilterBar(column) {
|
|
1737
1766
|
var {
|
|
@@ -1761,13 +1790,13 @@ class IrisGrid extends Component {
|
|
|
1761
1790
|
lastLeft
|
|
1762
1791
|
} = metrics;
|
|
1763
1792
|
if (column < left) {
|
|
1764
|
-
var _this$
|
|
1765
|
-
(_this$
|
|
1793
|
+
var _this$grid4;
|
|
1794
|
+
(_this$grid4 = this.grid) === null || _this$grid4 === void 0 ? void 0 : _this$grid4.setViewState({
|
|
1766
1795
|
left: column
|
|
1767
1796
|
}, true);
|
|
1768
1797
|
} else if (rightVisible < column) {
|
|
1769
|
-
var _this$
|
|
1770
|
-
var metricState =
|
|
1798
|
+
var _this$grid5;
|
|
1799
|
+
var metricState = this.getMetricState();
|
|
1771
1800
|
assertNotNull(metricState);
|
|
1772
1801
|
var newLeft = metricCalculator.getLastLeft(metricState, column, metricCalculator.getVisibleWidth(metricState));
|
|
1773
1802
|
(_this$grid5 = this.grid) === null || _this$grid5 === void 0 ? void 0 : _this$grid5.setViewState({
|
|
@@ -1832,6 +1861,33 @@ class IrisGrid extends Component {
|
|
|
1832
1861
|
movedColumns: newMovedColumns
|
|
1833
1862
|
});
|
|
1834
1863
|
}
|
|
1864
|
+
toggleExpandColumn(modelIndex) {
|
|
1865
|
+
log.debug2('Toggle expand column', modelIndex);
|
|
1866
|
+
var {
|
|
1867
|
+
model
|
|
1868
|
+
} = this.props;
|
|
1869
|
+
if (isExpandableColumnGridModel(model) && model.hasExpandableColumns) {
|
|
1870
|
+
model.setColumnExpanded(modelIndex, !model.isColumnExpanded(modelIndex));
|
|
1871
|
+
}
|
|
1872
|
+
}
|
|
1873
|
+
expandAllColumns() {
|
|
1874
|
+
log.debug2('Expand all columns');
|
|
1875
|
+
var {
|
|
1876
|
+
model
|
|
1877
|
+
} = this.props;
|
|
1878
|
+
if (isExpandableColumnGridModel(model) && model.isExpandAllColumnsAvailable) {
|
|
1879
|
+
model.expandAllColumns();
|
|
1880
|
+
}
|
|
1881
|
+
}
|
|
1882
|
+
collapseAllColumns() {
|
|
1883
|
+
log.debug2('Collapse all columns');
|
|
1884
|
+
var {
|
|
1885
|
+
model
|
|
1886
|
+
} = this.props;
|
|
1887
|
+
if (isExpandableColumnGridModel(model) && model.isExpandAllColumnsAvailable) {
|
|
1888
|
+
model.collapseAllColumns();
|
|
1889
|
+
}
|
|
1890
|
+
}
|
|
1835
1891
|
handleColumnVisibilityChanged(modelIndexes, isVisible) {
|
|
1836
1892
|
var _this$grid7;
|
|
1837
1893
|
var {
|
|
@@ -1859,16 +1915,12 @@ class IrisGrid extends Component {
|
|
|
1859
1915
|
handleColumnVisibilityReset() {
|
|
1860
1916
|
var _model$layoutHints$fr, _model$layoutHints2;
|
|
1861
1917
|
var {
|
|
1862
|
-
metricCalculator
|
|
1863
|
-
metrics
|
|
1918
|
+
metricCalculator
|
|
1864
1919
|
} = this.state;
|
|
1865
1920
|
var {
|
|
1866
1921
|
model
|
|
1867
1922
|
} = this.props;
|
|
1868
|
-
|
|
1869
|
-
for (var i = 0; i < metrics.columnCount; i += 1) {
|
|
1870
|
-
metricCalculator.resetColumnWidth(i);
|
|
1871
|
-
}
|
|
1923
|
+
metricCalculator.resetAllColumnWidths();
|
|
1872
1924
|
this.handleMovedColumnsChanged(model.initialMovedColumns);
|
|
1873
1925
|
this.handleHeaderGroupsChanged(model.initialColumnHeaderGroups);
|
|
1874
1926
|
this.setState({
|
|
@@ -1957,6 +2009,17 @@ class IrisGrid extends Component {
|
|
|
1957
2009
|
}
|
|
1958
2010
|
(_this$grid9 = this.grid) === null || _this$grid9 === void 0 ? void 0 : _this$grid9.forceUpdate();
|
|
1959
2011
|
}
|
|
2012
|
+
|
|
2013
|
+
/**
|
|
2014
|
+
* Updates grid metrics after model columns have changed
|
|
2015
|
+
* to keep Grid and IrisGrid metrics in sync since metrics are stored in both places.
|
|
2016
|
+
*/
|
|
2017
|
+
updateMetrics() {
|
|
2018
|
+
var _this$grid10;
|
|
2019
|
+
this.setState({
|
|
2020
|
+
metrics: (_this$grid10 = this.grid) === null || _this$grid10 === void 0 ? void 0 : _this$grid10.updateMetrics()
|
|
2021
|
+
});
|
|
2022
|
+
}
|
|
1960
2023
|
toggleSort(columnIndex, addToExisting) {
|
|
1961
2024
|
log.info('Toggling sort for column', columnIndex);
|
|
1962
2025
|
var {
|
|
@@ -1975,15 +2038,15 @@ class IrisGrid extends Component {
|
|
|
1975
2038
|
}
|
|
1976
2039
|
}
|
|
1977
2040
|
updateSorts(sorts) {
|
|
1978
|
-
var _this$
|
|
2041
|
+
var _this$grid11;
|
|
1979
2042
|
this.startLoading('Sorting...');
|
|
1980
2043
|
this.setState({
|
|
1981
2044
|
sorts
|
|
1982
2045
|
});
|
|
1983
|
-
(_this$
|
|
2046
|
+
(_this$grid11 = this.grid) === null || _this$grid11 === void 0 ? void 0 : _this$grid11.forceUpdate();
|
|
1984
2047
|
}
|
|
1985
2048
|
sortColumn(modelColumn) {
|
|
1986
|
-
var _this$
|
|
2049
|
+
var _this$grid12;
|
|
1987
2050
|
var direction = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : TableUtils.sortDirection.none;
|
|
1988
2051
|
var isAbs = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
|
|
1989
2052
|
var addToExisting = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : false;
|
|
@@ -1996,15 +2059,15 @@ class IrisGrid extends Component {
|
|
|
1996
2059
|
this.setState({
|
|
1997
2060
|
sorts
|
|
1998
2061
|
});
|
|
1999
|
-
(_this$
|
|
2062
|
+
(_this$grid12 = this.grid) === null || _this$grid12 === void 0 ? void 0 : _this$grid12.forceUpdate();
|
|
2000
2063
|
}
|
|
2001
2064
|
reverse(reverse) {
|
|
2002
|
-
var _this$
|
|
2065
|
+
var _this$grid13;
|
|
2003
2066
|
this.startLoading('Reversing...');
|
|
2004
2067
|
this.setState({
|
|
2005
2068
|
reverse
|
|
2006
2069
|
});
|
|
2007
|
-
(_this$
|
|
2070
|
+
(_this$grid13 = this.grid) === null || _this$grid13 === void 0 ? void 0 : _this$grid13.forceUpdate();
|
|
2008
2071
|
}
|
|
2009
2072
|
isReversible() {
|
|
2010
2073
|
var {
|
|
@@ -2045,8 +2108,8 @@ class IrisGrid extends Component {
|
|
|
2045
2108
|
this.focusFilterBar(columnIndex);
|
|
2046
2109
|
}
|
|
2047
2110
|
} else {
|
|
2048
|
-
var _this$
|
|
2049
|
-
(_this$
|
|
2111
|
+
var _this$grid14;
|
|
2112
|
+
(_this$grid14 = this.grid) === null || _this$grid14 === void 0 ? void 0 : _this$grid14.focus();
|
|
2050
2113
|
}
|
|
2051
2114
|
}
|
|
2052
2115
|
isTableSearchAvailable() {
|
|
@@ -2083,13 +2146,13 @@ class IrisGrid extends Component {
|
|
|
2083
2146
|
var _this$crossColumnRef2;
|
|
2084
2147
|
(_this$crossColumnRef2 = this.crossColumnRef) === null || _this$crossColumnRef2 === void 0 ? void 0 : _this$crossColumnRef2.current.focus();
|
|
2085
2148
|
} else {
|
|
2086
|
-
var _this$
|
|
2087
|
-
(_this$
|
|
2149
|
+
var _this$grid15;
|
|
2150
|
+
(_this$grid15 = this.grid) === null || _this$grid15 === void 0 ? void 0 : _this$grid15.focus();
|
|
2088
2151
|
}
|
|
2089
2152
|
});
|
|
2090
2153
|
}
|
|
2091
2154
|
toggleGotoRow() {
|
|
2092
|
-
var _this$
|
|
2155
|
+
var _this$grid16, _this$grid17;
|
|
2093
2156
|
var row = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
|
|
2094
2157
|
var value = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';
|
|
2095
2158
|
var columnName = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : '';
|
|
@@ -2111,8 +2174,8 @@ class IrisGrid extends Component {
|
|
|
2111
2174
|
(_this$gotoRowRef$curr = this.gotoRowRef.current) === null || _this$gotoRowRef$curr === void 0 ? void 0 : _this$gotoRowRef$curr.focus();
|
|
2112
2175
|
return;
|
|
2113
2176
|
}
|
|
2114
|
-
var cursorRow = (_this$
|
|
2115
|
-
var cursorColumn = (_this$
|
|
2177
|
+
var cursorRow = (_this$grid16 = this.grid) === null || _this$grid16 === void 0 ? void 0 : _this$grid16.state.cursorRow;
|
|
2178
|
+
var cursorColumn = (_this$grid17 = this.grid) === null || _this$grid17 === void 0 ? void 0 : _this$grid17.state.cursorColumn;
|
|
2116
2179
|
if (cursorRow == null || cursorColumn == null) {
|
|
2117
2180
|
// if a cell is not selected / grid is not rendered
|
|
2118
2181
|
this.setState({
|
|
@@ -2279,7 +2342,7 @@ class IrisGrid extends Component {
|
|
|
2279
2342
|
this.setAdvancedFilter(index, filter, options);
|
|
2280
2343
|
}
|
|
2281
2344
|
handleAdvancedFilterSortChange(column, direction) {
|
|
2282
|
-
var _this$
|
|
2345
|
+
var _this$grid18;
|
|
2283
2346
|
var addToExisting = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
|
|
2284
2347
|
var {
|
|
2285
2348
|
model
|
|
@@ -2302,11 +2365,11 @@ class IrisGrid extends Component {
|
|
|
2302
2365
|
this.setState({
|
|
2303
2366
|
sorts
|
|
2304
2367
|
});
|
|
2305
|
-
(_this$
|
|
2368
|
+
(_this$grid18 = this.grid) === null || _this$grid18 === void 0 ? void 0 : _this$grid18.forceUpdate();
|
|
2306
2369
|
}
|
|
2307
2370
|
handleAdvancedFilterDone() {
|
|
2308
|
-
var _this$
|
|
2309
|
-
(_this$
|
|
2371
|
+
var _this$grid19;
|
|
2372
|
+
(_this$grid19 = this.grid) === null || _this$grid19 === void 0 ? void 0 : _this$grid19.focus();
|
|
2310
2373
|
}
|
|
2311
2374
|
handleAdvancedMenuOpened(column) {
|
|
2312
2375
|
this.setState({
|
|
@@ -2392,8 +2455,8 @@ class IrisGrid extends Component {
|
|
|
2392
2455
|
var setGridFocus = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;
|
|
2393
2456
|
var defocusInput = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
|
|
2394
2457
|
if (setGridFocus) {
|
|
2395
|
-
var _this$
|
|
2396
|
-
(_this$
|
|
2458
|
+
var _this$grid20;
|
|
2459
|
+
(_this$grid20 = this.grid) === null || _this$grid20 === void 0 ? void 0 : _this$grid20.focus();
|
|
2397
2460
|
}
|
|
2398
2461
|
if (defocusInput) {
|
|
2399
2462
|
this.setState({
|
|
@@ -2520,7 +2583,7 @@ class IrisGrid extends Component {
|
|
|
2520
2583
|
}
|
|
2521
2584
|
}
|
|
2522
2585
|
handleUpdate() {
|
|
2523
|
-
var _this$
|
|
2586
|
+
var _this$grid21;
|
|
2524
2587
|
log.debug2('Received model update');
|
|
2525
2588
|
var {
|
|
2526
2589
|
advancedFilters,
|
|
@@ -2549,7 +2612,7 @@ class IrisGrid extends Component {
|
|
|
2549
2612
|
} else {
|
|
2550
2613
|
this.lastLoadedConfig = null;
|
|
2551
2614
|
}
|
|
2552
|
-
(_this$
|
|
2615
|
+
(_this$grid21 = this.grid) === null || _this$grid21 === void 0 ? void 0 : _this$grid21.forceUpdate();
|
|
2553
2616
|
this.stopLoading();
|
|
2554
2617
|
}
|
|
2555
2618
|
handleTableChanged() {
|
|
@@ -2562,13 +2625,13 @@ class IrisGrid extends Component {
|
|
|
2562
2625
|
});
|
|
2563
2626
|
}
|
|
2564
2627
|
handleViewChanged(metrics) {
|
|
2565
|
-
var _this$grid$state, _this$
|
|
2628
|
+
var _this$grid$state, _this$grid22;
|
|
2566
2629
|
var {
|
|
2567
2630
|
model
|
|
2568
2631
|
} = this.props;
|
|
2569
2632
|
var {
|
|
2570
2633
|
selectionEndRow = 0
|
|
2571
|
-
} = (_this$grid$state = (_this$
|
|
2634
|
+
} = (_this$grid$state = (_this$grid22 = this.grid) === null || _this$grid22 === void 0 ? void 0 : _this$grid22.state) !== null && _this$grid$state !== void 0 ? _this$grid$state : {};
|
|
2572
2635
|
var pendingRowCount = 0;
|
|
2573
2636
|
if (isEditableGridModel(model) && model.isEditable) {
|
|
2574
2637
|
assertNotNull(metrics);
|
|
@@ -2596,7 +2659,7 @@ class IrisGrid extends Component {
|
|
|
2596
2659
|
});
|
|
2597
2660
|
}
|
|
2598
2661
|
handleSelectionChanged(selectedRanges) {
|
|
2599
|
-
var _this$
|
|
2662
|
+
var _this$grid23;
|
|
2600
2663
|
assertNotNull(selectedRanges);
|
|
2601
2664
|
var {
|
|
2602
2665
|
onSelectionChanged
|
|
@@ -2612,7 +2675,7 @@ class IrisGrid extends Component {
|
|
|
2612
2675
|
copyOperation: null
|
|
2613
2676
|
});
|
|
2614
2677
|
}
|
|
2615
|
-
if (((_this$
|
|
2678
|
+
if (((_this$grid23 = this.grid) === null || _this$grid23 === void 0 ? void 0 : _this$grid23.state.cursorRow) != null) {
|
|
2616
2679
|
this.setState({
|
|
2617
2680
|
gotoRow: "".concat(this.grid.state.cursorRow + 1)
|
|
2618
2681
|
});
|
|
@@ -2631,8 +2694,8 @@ class IrisGrid extends Component {
|
|
|
2631
2694
|
this.setState({
|
|
2632
2695
|
columnHeaderGroups: IrisGridUtils.parseColumnHeaderGroups(model, columnHeaderGroups).groups
|
|
2633
2696
|
}, () => {
|
|
2634
|
-
var _this$
|
|
2635
|
-
return (_this$
|
|
2697
|
+
var _this$grid24;
|
|
2698
|
+
return (_this$grid24 = this.grid) === null || _this$grid24 === void 0 ? void 0 : _this$grid24.forceUpdate();
|
|
2636
2699
|
});
|
|
2637
2700
|
}
|
|
2638
2701
|
handleTooltipRef(tooltip) {
|
|
@@ -2766,14 +2829,16 @@ class IrisGrid extends Component {
|
|
|
2766
2829
|
}
|
|
2767
2830
|
}
|
|
2768
2831
|
handleCustomColumnsChanged() {
|
|
2769
|
-
log.debug('
|
|
2832
|
+
log.debug('Model columns changed');
|
|
2770
2833
|
var {
|
|
2771
2834
|
isReady
|
|
2772
2835
|
} = this.state;
|
|
2773
2836
|
if (isReady) {
|
|
2774
|
-
|
|
2837
|
+
this.updateMetrics();
|
|
2838
|
+
|
|
2839
|
+
// Make sure stopLoading() is called after the updateMetrics call,
|
|
2840
|
+
// otherwise IrisGridModelUpdater queues an extra setViewport based on old metrics.
|
|
2775
2841
|
this.stopLoading();
|
|
2776
|
-
(_this$grid24 = this.grid) === null || _this$grid24 === void 0 ? void 0 : _this$grid24.forceUpdate();
|
|
2777
2842
|
} else {
|
|
2778
2843
|
this.loadTableState();
|
|
2779
2844
|
}
|
|
@@ -3546,7 +3611,7 @@ class IrisGrid extends Component {
|
|
|
3546
3611
|
} = theme;
|
|
3547
3612
|
var filter = this.getCachedFilter(customFilters, quickFilters, advancedFilters, searchFilter);
|
|
3548
3613
|
var userColumnWidths = metricCalculator.getUserColumnWidths();
|
|
3549
|
-
var stateOverride = this.getCachedStateOverride(hoverSelectColumn, isFilterBarShown, isSelectingColumn, loadingScrimProgress, quickFilters, advancedFilters, sorts, reverse, rollupConfig, isMenuShown);
|
|
3614
|
+
var stateOverride = this.getCachedStateOverride(model, theme, hoverSelectColumn, isFilterBarShown, isSelectingColumn, loadingScrimProgress, quickFilters, advancedFilters, sorts, reverse, rollupConfig, isMenuShown);
|
|
3550
3615
|
var top = metrics ? metrics.top : 0;
|
|
3551
3616
|
var bottom = metrics ? metrics.bottomViewport : 0;
|
|
3552
3617
|
var left = null;
|