@deephaven/iris-grid 1.7.2-beta.1 → 1.7.2-beta.4
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/AdvancedFilterCreator.js +5 -7
- package/dist/AdvancedFilterCreator.js.map +1 -1
- package/dist/AdvancedFilterCreatorFilterItem.js +6 -7
- package/dist/AdvancedFilterCreatorFilterItem.js.map +1 -1
- package/dist/AdvancedFilterCreatorSelectValue.js +1 -2
- package/dist/AdvancedFilterCreatorSelectValue.js.map +1 -1
- package/dist/AdvancedFilterCreatorSelectValueList.js +2 -3
- package/dist/AdvancedFilterCreatorSelectValueList.js.map +1 -1
- package/dist/ColumnHeaderGroup.js.map +1 -1
- package/dist/ColumnStatistics.d.ts +2 -2
- package/dist/ColumnStatistics.d.ts.map +1 -1
- package/dist/ColumnStatistics.js +2 -5
- package/dist/ColumnStatistics.js.map +1 -1
- package/dist/CommonTypes.js.map +1 -1
- package/dist/CrossColumnSearch.js +2 -4
- package/dist/CrossColumnSearch.js.map +1 -1
- package/dist/EmptyIrisGridModel.js.map +1 -1
- package/dist/FilterInputField.js +4 -5
- package/dist/FilterInputField.js.map +1 -1
- package/dist/GotoRow.js +4 -6
- package/dist/GotoRow.js.map +1 -1
- package/dist/IrisGrid.d.ts +35 -44
- package/dist/IrisGrid.d.ts.map +1 -1
- package/dist/IrisGrid.js +157 -170
- package/dist/IrisGrid.js.map +1 -1
- package/dist/IrisGridBottomBar.d.ts.map +1 -1
- package/dist/IrisGridBottomBar.js +4 -1
- package/dist/IrisGridBottomBar.js.map +1 -1
- package/dist/IrisGridCacheUtils.js.map +1 -1
- package/dist/IrisGridCellOverflowModal.js +1 -2
- package/dist/IrisGridCellOverflowModal.js.map +1 -1
- package/dist/IrisGridCellRendererUtils.js.map +1 -1
- package/dist/IrisGridCopyHandler.js +4 -6
- package/dist/IrisGridCopyHandler.js.map +1 -1
- package/dist/IrisGridDataBarCellRenderer.js.map +1 -1
- package/dist/IrisGridIcons.js.map +1 -1
- package/dist/IrisGridMetricCalculator.d.ts +1 -2
- package/dist/IrisGridMetricCalculator.d.ts.map +1 -1
- package/dist/IrisGridMetricCalculator.js +3 -2
- package/dist/IrisGridMetricCalculator.js.map +1 -1
- package/dist/IrisGridModel.js.map +1 -1
- package/dist/IrisGridModelFactory.js.map +1 -1
- package/dist/IrisGridModelUpdater.js.map +1 -1
- package/dist/IrisGridPartitionSelector.d.ts.map +1 -1
- package/dist/IrisGridPartitionSelector.js +6 -8
- package/dist/IrisGridPartitionSelector.js.map +1 -1
- package/dist/IrisGridPartitionedTableModel.js.map +1 -1
- package/dist/IrisGridProxyModel.js +6 -7
- package/dist/IrisGridProxyModel.js.map +1 -1
- package/dist/IrisGridRenderer.js +0 -1
- package/dist/IrisGridRenderer.js.map +1 -1
- package/dist/IrisGridShortcuts.js.map +1 -1
- package/dist/IrisGridTableModel.js +1 -2
- package/dist/IrisGridTableModel.js.map +1 -1
- package/dist/IrisGridTableModelTemplate.d.ts +1 -1
- package/dist/IrisGridTableModelTemplate.d.ts.map +1 -1
- package/dist/IrisGridTableModelTemplate.js +57 -61
- package/dist/IrisGridTableModelTemplate.js.map +1 -1
- package/dist/IrisGridTestUtils.js.map +1 -1
- package/dist/IrisGridTextCellRenderer.js.map +1 -1
- package/dist/IrisGridTheme.js.map +1 -1
- package/dist/IrisGridThemeProvider.js.map +1 -1
- package/dist/IrisGridTreeTableModel.js +12 -13
- package/dist/IrisGridTreeTableModel.js.map +1 -1
- package/dist/IrisGridUtils.js +56 -56
- package/dist/IrisGridUtils.js.map +1 -1
- package/dist/LazyIrisGrid.d.ts +55 -78
- package/dist/LazyIrisGrid.d.ts.map +1 -1
- package/dist/LazyIrisGrid.js.map +1 -1
- package/dist/MissingKeyError.js.map +1 -1
- package/dist/MissingPartitionError.js.map +1 -1
- package/dist/NoPastePermissionModal.js +1 -2
- package/dist/NoPastePermissionModal.js.map +1 -1
- package/dist/PartitionedGridModel.js.map +1 -1
- package/dist/PendingDataBottomBar.js +1 -2
- package/dist/PendingDataBottomBar.js.map +1 -1
- package/dist/ToastBottomBar.js.map +1 -1
- package/dist/declaration.d.js.map +1 -1
- package/dist/format-context-menus/CustomFormatAction.js +1 -2
- package/dist/format-context-menus/CustomFormatAction.js.map +1 -1
- package/dist/format-context-menus/DateTimeFormatContextMenu.js.map +1 -1
- package/dist/format-context-menus/DecimalFormatContextMenu.js.map +1 -1
- package/dist/format-context-menus/FormatContextMenuUtils.js.map +1 -1
- package/dist/format-context-menus/IntegerFormatContextMenu.js.map +1 -1
- package/dist/format-context-menus/TextAlignmentFormatContextMenu.js +6 -4
- package/dist/format-context-menus/TextAlignmentFormatContextMenu.js.map +1 -1
- package/dist/format-context-menus/index.js.map +1 -1
- package/dist/index.js.map +1 -1
- package/dist/key-handlers/ClearFilterKeyHandler.js.map +1 -1
- package/dist/key-handlers/CopyCellKeyHandler.js.map +1 -1
- package/dist/key-handlers/CopyKeyHandler.js.map +1 -1
- package/dist/key-handlers/ReverseKeyHandler.js.map +1 -1
- package/dist/key-handlers/index.js.map +1 -1
- package/dist/mousehandlers/IrisGridCellOverflowMouseHandler.js.map +1 -1
- package/dist/mousehandlers/IrisGridColumnSelectMouseHandler.js.map +1 -1
- package/dist/mousehandlers/IrisGridColumnTooltipMouseHandler.d.ts.map +1 -1
- package/dist/mousehandlers/IrisGridColumnTooltipMouseHandler.js +5 -2
- package/dist/mousehandlers/IrisGridColumnTooltipMouseHandler.js.map +1 -1
- package/dist/mousehandlers/IrisGridContextMenuHandler.js +1 -2
- package/dist/mousehandlers/IrisGridContextMenuHandler.js.map +1 -1
- package/dist/mousehandlers/IrisGridCopyCellMouseHandler.js.map +1 -1
- package/dist/mousehandlers/IrisGridDataSelectMouseHandler.js.map +1 -1
- package/dist/mousehandlers/IrisGridFilterMouseHandler.js.map +1 -1
- package/dist/mousehandlers/IrisGridPartitionedTableMouseHandler.js.map +1 -1
- package/dist/mousehandlers/IrisGridRowTreeMouseHandler.js.map +1 -1
- package/dist/mousehandlers/IrisGridSortMouseHandler.js.map +1 -1
- package/dist/mousehandlers/IrisGridTokenMouseHandler.js +1 -3
- package/dist/mousehandlers/IrisGridTokenMouseHandler.js.map +1 -1
- package/dist/mousehandlers/PendingMouseHandler.js.map +1 -1
- package/dist/mousehandlers/index.js.map +1 -1
- package/dist/sidebar/AdvancedSettings.js.map +1 -1
- package/dist/sidebar/AdvancedSettingsMenu.d.ts +1 -1
- package/dist/sidebar/AdvancedSettingsMenu.d.ts.map +1 -1
- package/dist/sidebar/AdvancedSettingsMenu.js.map +1 -1
- package/dist/sidebar/AdvancedSettingsType.js +3 -3
- package/dist/sidebar/AdvancedSettingsType.js.map +1 -1
- package/dist/sidebar/ChartBuilder.d.ts +2 -2
- package/dist/sidebar/ChartBuilder.d.ts.map +1 -1
- package/dist/sidebar/ChartBuilder.js +1 -2
- package/dist/sidebar/ChartBuilder.js.map +1 -1
- package/dist/sidebar/CustomColumnBuilder.js +3 -5
- package/dist/sidebar/CustomColumnBuilder.js.map +1 -1
- package/dist/sidebar/CustomColumnInput.js +1 -2
- package/dist/sidebar/CustomColumnInput.js.map +1 -1
- package/dist/sidebar/DownloadServiceWorkerUtils.js +1 -1
- package/dist/sidebar/DownloadServiceWorkerUtils.js.map +1 -1
- package/dist/sidebar/InputEditor.js +8 -9
- package/dist/sidebar/InputEditor.js.map +1 -1
- package/dist/sidebar/OptionType.js +3 -3
- package/dist/sidebar/OptionType.js.map +1 -1
- package/dist/sidebar/RollupRows.js +7 -9
- package/dist/sidebar/RollupRows.js.map +1 -1
- package/dist/sidebar/SelectDistinctBuilder.js +1 -2
- package/dist/sidebar/SelectDistinctBuilder.js.map +1 -1
- package/dist/sidebar/TableCsvExporter.js +5 -7
- package/dist/sidebar/TableCsvExporter.js.map +1 -1
- package/dist/sidebar/TableSaver.js +9 -10
- package/dist/sidebar/TableSaver.js.map +1 -1
- package/dist/sidebar/aggregations/AggregationEdit.js +4 -5
- package/dist/sidebar/aggregations/AggregationEdit.js.map +1 -1
- package/dist/sidebar/aggregations/AggregationOperation.js +3 -3
- package/dist/sidebar/aggregations/AggregationOperation.js.map +1 -1
- package/dist/sidebar/aggregations/AggregationUtils.js +0 -1
- package/dist/sidebar/aggregations/AggregationUtils.js.map +1 -1
- package/dist/sidebar/aggregations/Aggregations.d.ts.map +1 -1
- package/dist/sidebar/aggregations/Aggregations.js +2 -4
- package/dist/sidebar/aggregations/Aggregations.js.map +1 -1
- package/dist/sidebar/aggregations/index.js.map +1 -1
- package/dist/sidebar/conditional-formatting/ColumnFormatEditor.d.ts.map +1 -1
- package/dist/sidebar/conditional-formatting/ColumnFormatEditor.js +1 -3
- package/dist/sidebar/conditional-formatting/ColumnFormatEditor.js.map +1 -1
- package/dist/sidebar/conditional-formatting/ConditionEditor.d.ts.map +1 -1
- package/dist/sidebar/conditional-formatting/ConditionEditor.js +2 -3
- package/dist/sidebar/conditional-formatting/ConditionEditor.js.map +1 -1
- package/dist/sidebar/conditional-formatting/ConditionalFormatEditor.js +1 -2
- package/dist/sidebar/conditional-formatting/ConditionalFormatEditor.js.map +1 -1
- package/dist/sidebar/conditional-formatting/ConditionalFormattingAPIUtils.js.map +1 -1
- package/dist/sidebar/conditional-formatting/ConditionalFormattingMenu.js +1 -2
- package/dist/sidebar/conditional-formatting/ConditionalFormattingMenu.js.map +1 -1
- package/dist/sidebar/conditional-formatting/ConditionalFormattingUtils.js +21 -21
- package/dist/sidebar/conditional-formatting/ConditionalFormattingUtils.js.map +1 -1
- package/dist/sidebar/conditional-formatting/RowFormatEditor.d.ts.map +1 -1
- package/dist/sidebar/conditional-formatting/RowFormatEditor.js +1 -3
- package/dist/sidebar/conditional-formatting/RowFormatEditor.js.map +1 -1
- package/dist/sidebar/conditional-formatting/StyleEditor.d.ts.map +1 -1
- package/dist/sidebar/conditional-formatting/StyleEditor.js +2 -3
- package/dist/sidebar/conditional-formatting/StyleEditor.js.map +1 -1
- package/dist/sidebar/icons/BarIcon.js +1 -2
- package/dist/sidebar/icons/BarIcon.js.map +1 -1
- package/dist/sidebar/icons/FormatColumnWhereIcon.js +1 -2
- package/dist/sidebar/icons/FormatColumnWhereIcon.js.map +1 -1
- package/dist/sidebar/icons/FormatRowWhereIcon.js +1 -2
- package/dist/sidebar/icons/FormatRowWhereIcon.js.map +1 -1
- package/dist/sidebar/icons/HistogramIcon.js +1 -2
- package/dist/sidebar/icons/HistogramIcon.js.map +1 -1
- package/dist/sidebar/icons/LineIcon.js +1 -2
- package/dist/sidebar/icons/LineIcon.js.map +1 -1
- package/dist/sidebar/icons/PieIcon.js +1 -2
- package/dist/sidebar/icons/PieIcon.js.map +1 -1
- package/dist/sidebar/icons/ScatterIcon.js +1 -2
- package/dist/sidebar/icons/ScatterIcon.js.map +1 -1
- package/dist/sidebar/icons/index.js.map +1 -1
- package/dist/sidebar/index.js.map +1 -1
- package/dist/sidebar/visibility-ordering-builder/VisibilityOrderingBuilder.d.ts +2 -2
- package/dist/sidebar/visibility-ordering-builder/VisibilityOrderingBuilder.d.ts.map +1 -1
- package/dist/sidebar/visibility-ordering-builder/VisibilityOrderingBuilder.js +34 -36
- package/dist/sidebar/visibility-ordering-builder/VisibilityOrderingBuilder.js.map +1 -1
- package/dist/sidebar/visibility-ordering-builder/VisibilityOrderingBuilderUtils.js +3 -3
- package/dist/sidebar/visibility-ordering-builder/VisibilityOrderingBuilderUtils.js.map +1 -1
- package/dist/sidebar/visibility-ordering-builder/VisibilityOrderingGroup.js +3 -5
- package/dist/sidebar/visibility-ordering-builder/VisibilityOrderingGroup.js.map +1 -1
- package/dist/sidebar/visibility-ordering-builder/VisibilityOrderingItem.d.ts.map +1 -1
- package/dist/sidebar/visibility-ordering-builder/VisibilityOrderingItem.js +2 -4
- package/dist/sidebar/visibility-ordering-builder/VisibilityOrderingItem.js.map +1 -1
- package/dist/sidebar/visibility-ordering-builder/sortable-tree/PointerSensorWithInteraction.js.map +1 -1
- package/dist/sidebar/visibility-ordering-builder/sortable-tree/SortableTree.js +4 -4
- package/dist/sidebar/visibility-ordering-builder/sortable-tree/SortableTree.js.map +1 -1
- package/dist/sidebar/visibility-ordering-builder/sortable-tree/SortableTreeInner.js +3 -6
- package/dist/sidebar/visibility-ordering-builder/sortable-tree/SortableTreeInner.js.map +1 -1
- package/dist/sidebar/visibility-ordering-builder/sortable-tree/SortableTreeItem.js.map +1 -1
- package/dist/sidebar/visibility-ordering-builder/sortable-tree/TreeItem.js +1 -2
- package/dist/sidebar/visibility-ordering-builder/sortable-tree/TreeItem.js.map +1 -1
- package/dist/sidebar/visibility-ordering-builder/sortable-tree/keyboardCoordinates.js.map +1 -1
- package/dist/sidebar/visibility-ordering-builder/sortable-tree/types.js.map +1 -1
- package/dist/sidebar/visibility-ordering-builder/sortable-tree/utilities.d.ts +1 -2
- package/dist/sidebar/visibility-ordering-builder/sortable-tree/utilities.d.ts.map +1 -1
- package/dist/sidebar/visibility-ordering-builder/sortable-tree/utilities.js.map +1 -1
- package/package.json +17 -18
package/dist/IrisGrid.js
CHANGED
|
@@ -9,7 +9,6 @@ import React, { Component } from 'react';
|
|
|
9
9
|
import memoize from 'memoizee';
|
|
10
10
|
import classNames from 'classnames';
|
|
11
11
|
import { CSSTransition } from 'react-transition-group';
|
|
12
|
-
import PropTypes from 'prop-types';
|
|
13
12
|
import deepEqual from 'fast-deep-equal';
|
|
14
13
|
import Log from '@deephaven/log';
|
|
15
14
|
import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
|
|
@@ -54,9 +53,7 @@ import AggregationOperation from "./sidebar/aggregations/AggregationOperation.js
|
|
|
54
53
|
import { IrisGridThemeContext } from "./IrisGridThemeProvider.js";
|
|
55
54
|
import { isMissingPartitionError } from "./MissingPartitionError.js";
|
|
56
55
|
import { NoPastePermissionModal } from "./NoPastePermissionModal.js";
|
|
57
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
58
|
-
import { Fragment as _Fragment } from "react/jsx-runtime";
|
|
59
|
-
import { jsxs as _jsxs } from "react/jsx-runtime";
|
|
56
|
+
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
60
57
|
var log = Log.module('IrisGrid');
|
|
61
58
|
var VIEWPORT_LOADING_DELAY = 500;
|
|
62
59
|
var UPDATE_DOWNLOAD_THROTTLE = 500;
|
|
@@ -83,10 +80,8 @@ function isEmptyConfig(_ref) {
|
|
|
83
80
|
return advancedFilters.size === 0 && aggregationSettings.aggregations.length === 0 && customColumns.length === 0 && quickFilters.size === 0 && !reverse && rollupConfig == null && searchFilter == null && selectDistinctColumns.length === 0 && sorts.length === 0;
|
|
84
81
|
}
|
|
85
82
|
class IrisGrid extends Component {
|
|
86
|
-
// eslint-disable-next-line react/static-property-placement, react/sort-comp
|
|
87
|
-
|
|
88
83
|
constructor(props) {
|
|
89
|
-
var _model$layoutHints, _model$
|
|
84
|
+
var _model$layoutHints, _model$columns$0$name, _model$columns$;
|
|
90
85
|
super(props);
|
|
91
86
|
_defineProperty(this, "grid", void 0);
|
|
92
87
|
_defineProperty(this, "lastFocusedFilterBarColumn", void 0);
|
|
@@ -101,6 +96,7 @@ class IrisGrid extends Component {
|
|
|
101
96
|
_defineProperty(this, "showEmptyStrings", void 0);
|
|
102
97
|
_defineProperty(this, "showNullStrings", void 0);
|
|
103
98
|
_defineProperty(this, "showExtraGroupColumn", void 0);
|
|
99
|
+
// When the loading scrim started/when it should extend to the end of the screen.
|
|
104
100
|
_defineProperty(this, "loadingScrimStartTime", void 0);
|
|
105
101
|
_defineProperty(this, "loadingScrimFinishTime", void 0);
|
|
106
102
|
_defineProperty(this, "animationFrame", void 0);
|
|
@@ -120,6 +116,8 @@ class IrisGrid extends Component {
|
|
|
120
116
|
_defineProperty(this, "tableUtils", void 0);
|
|
121
117
|
_defineProperty(this, "keyHandlers", void 0);
|
|
122
118
|
_defineProperty(this, "mouseHandlers", void 0);
|
|
119
|
+
_defineProperty(this, "slideTransitionRef", /*#__PURE__*/React.createRef());
|
|
120
|
+
_defineProperty(this, "bottomTransitionRef", /*#__PURE__*/React.createRef());
|
|
123
121
|
_defineProperty(this, "getAdvancedMenuOpenedHandler", memoize(column => this.handleAdvancedMenuOpened.bind(this, column), {
|
|
124
122
|
max: 100
|
|
125
123
|
}));
|
|
@@ -272,6 +270,14 @@ class IrisGrid extends Component {
|
|
|
272
270
|
_defineProperty(this, "getCachedFormatColumns", memoize((dh, columns, rules) => getFormatColumns(dh, columns, rules), {
|
|
273
271
|
max: 1000
|
|
274
272
|
}));
|
|
273
|
+
/**
|
|
274
|
+
* Builds formatColumns array based on the provided formatting rules with optional preview
|
|
275
|
+
* @param columns Array of columns
|
|
276
|
+
* @param rulesParam Array of formatting rules
|
|
277
|
+
* @param preview Optional temporary formatting rule for previewing live changes
|
|
278
|
+
* @param editIndex Index in the rulesParam array to replace with the preview, null if preview not applicable
|
|
279
|
+
* @returns Format columns array
|
|
280
|
+
*/
|
|
275
281
|
_defineProperty(this, "getCachedPreviewFormatColumns", memoize((dh, columns, rulesParam, preview, editIndex) => {
|
|
276
282
|
log.debug('getCachedPreviewFormatColumns', rulesParam, preview, editIndex);
|
|
277
283
|
if (preview !== undefined && editIndex !== undefined) {
|
|
@@ -288,7 +294,7 @@ class IrisGrid extends Component {
|
|
|
288
294
|
}));
|
|
289
295
|
_defineProperty(this, "getModelTotalsConfig", memoize((columns, config, aggregationSettings) => {
|
|
290
296
|
var _config$columns$lengt, _config$columns;
|
|
291
|
-
if (((_config$columns$lengt = config === null || config === void 0
|
|
297
|
+
if (((_config$columns$lengt = config === null || config === void 0 || (_config$columns = config.columns) === null || _config$columns === void 0 ? void 0 : _config$columns.length) !== null && _config$columns$lengt !== void 0 ? _config$columns$lengt : 0) > 0) {
|
|
292
298
|
// If we've got rollups, then aggregations are applied as part of that...
|
|
293
299
|
return null;
|
|
294
300
|
}
|
|
@@ -412,6 +418,7 @@ class IrisGrid extends Component {
|
|
|
412
418
|
leading: false,
|
|
413
419
|
trailing: true
|
|
414
420
|
}));
|
|
421
|
+
// Apply live changes
|
|
415
422
|
_defineProperty(this, "handleConditionalFormatEditorUpdate", debounce(conditionalFormatPreview => {
|
|
416
423
|
this.setState({
|
|
417
424
|
conditionalFormatPreview
|
|
@@ -698,7 +705,7 @@ class IrisGrid extends Component {
|
|
|
698
705
|
userColumnWidths: new Map(_userColumnWidths),
|
|
699
706
|
userRowHeights: new Map(userRowHeights),
|
|
700
707
|
movedColumns: _movedColumns,
|
|
701
|
-
initialColumnWidths: new Map(_model === null || _model === void 0
|
|
708
|
+
initialColumnWidths: new Map(_model === null || _model === void 0 || (_model$layoutHints = _model.layoutHints) === null || _model$layoutHints === void 0 || (_model$layoutHints = _model$layoutHints.hiddenColumns) === null || _model$layoutHints === void 0 ? void 0 : _model$layoutHints.map(name => [_model.getColumnIndexByName(name), 0]))
|
|
702
709
|
});
|
|
703
710
|
var searchColumns = _selectedSearchColumns !== null && _selectedSearchColumns !== void 0 ? _selectedSearchColumns : [];
|
|
704
711
|
var _searchFilter = CrossColumnSearch.createSearchFilter(_dh, _searchValue, searchColumns, _model.columns, _invertSearchColumns);
|
|
@@ -895,23 +902,10 @@ class IrisGrid extends Component {
|
|
|
895
902
|
}
|
|
896
903
|
this.showViewportLoading.cancel();
|
|
897
904
|
}
|
|
898
|
-
|
|
899
|
-
// When the loading scrim started/when it should extend to the end of the screen.
|
|
900
|
-
|
|
901
905
|
get gridWrapper() {
|
|
902
906
|
var _this$grid$canvasWrap, _this$grid;
|
|
903
907
|
return (_this$grid$canvasWrap = (_this$grid = this.grid) === null || _this$grid === void 0 ? void 0 : _this$grid.canvasWrapper.current) !== null && _this$grid$canvasWrap !== void 0 ? _this$grid$canvasWrap : null;
|
|
904
908
|
}
|
|
905
|
-
|
|
906
|
-
/**
|
|
907
|
-
* Builds formatColumns array based on the provided formatting rules with optional preview
|
|
908
|
-
* @param columns Array of columns
|
|
909
|
-
* @param rulesParam Array of formatting rules
|
|
910
|
-
* @param preview Optional temporary formatting rule for previewing live changes
|
|
911
|
-
* @param editIndex Index in the rulesParam array to replace with the preview, null if preview not applicable
|
|
912
|
-
* @returns Format columns array
|
|
913
|
-
*/
|
|
914
|
-
|
|
915
909
|
getKeyHandlers() {
|
|
916
910
|
var {
|
|
917
911
|
keyHandlers
|
|
@@ -964,15 +958,15 @@ class IrisGrid extends Component {
|
|
|
964
958
|
var modelColumn = this.getModelColumn(columnIndex);
|
|
965
959
|
var modelRow = this.getModelRow(rowIndex);
|
|
966
960
|
if (rawValue && modelColumn != null && modelRow != null) {
|
|
967
|
-
var
|
|
961
|
+
var value = model.valueForCell(modelColumn, modelRow);
|
|
968
962
|
if (TableUtils.isDateType(model.columns[modelColumn].type)) {
|
|
969
963
|
// The returned value is just a long value, we should return the value formatted as a full date string
|
|
970
964
|
var {
|
|
971
965
|
formatter
|
|
972
966
|
} = model;
|
|
973
|
-
return dh.i18n.DateTimeFormat.format(UNFORMATTED_DATE_PATTERN,
|
|
967
|
+
return dh.i18n.DateTimeFormat.format(UNFORMATTED_DATE_PATTERN, value, dh.i18n.TimeZone.getTimeZone(formatter.timeZone));
|
|
974
968
|
}
|
|
975
|
-
return
|
|
969
|
+
return value;
|
|
976
970
|
}
|
|
977
971
|
if (rawValue) {
|
|
978
972
|
return null;
|
|
@@ -1215,11 +1209,11 @@ class IrisGrid extends Component {
|
|
|
1215
1209
|
resetRanges: true
|
|
1216
1210
|
});
|
|
1217
1211
|
var clearRange = Array.isArray(modelRange) ? modelRange : [modelRange, modelRange];
|
|
1218
|
-
this.setState(
|
|
1212
|
+
this.setState(_ref0 => {
|
|
1219
1213
|
var {
|
|
1220
1214
|
advancedFilters,
|
|
1221
1215
|
quickFilters
|
|
1222
|
-
} =
|
|
1216
|
+
} = _ref0;
|
|
1223
1217
|
var newAdvancedFilters = advancedFilters ? new Map(advancedFilters) : new Map();
|
|
1224
1218
|
var newQuickFilters = quickFilters ? new Map(quickFilters) : new Map();
|
|
1225
1219
|
newAdvancedFilters.forEach((_, column) => {
|
|
@@ -1242,10 +1236,10 @@ class IrisGrid extends Component {
|
|
|
1242
1236
|
this.startLoading('Clearing Filter...', {
|
|
1243
1237
|
resetRanges: true
|
|
1244
1238
|
});
|
|
1245
|
-
this.setState(
|
|
1239
|
+
this.setState(_ref1 => {
|
|
1246
1240
|
var {
|
|
1247
1241
|
quickFilters
|
|
1248
|
-
} =
|
|
1242
|
+
} = _ref1;
|
|
1249
1243
|
var newQuickFilters = new Map(quickFilters);
|
|
1250
1244
|
newQuickFilters.delete(modelColumn);
|
|
1251
1245
|
return {
|
|
@@ -1346,11 +1340,11 @@ class IrisGrid extends Component {
|
|
|
1346
1340
|
advancedFilters: newAdvancedFilters
|
|
1347
1341
|
});
|
|
1348
1342
|
}
|
|
1349
|
-
setFilters(
|
|
1343
|
+
setFilters(_ref10) {
|
|
1350
1344
|
var {
|
|
1351
1345
|
quickFilters,
|
|
1352
1346
|
advancedFilters
|
|
1353
|
-
} =
|
|
1347
|
+
} = _ref10;
|
|
1354
1348
|
this.setState({
|
|
1355
1349
|
quickFilters,
|
|
1356
1350
|
advancedFilters
|
|
@@ -1507,14 +1501,14 @@ class IrisGrid extends Component {
|
|
|
1507
1501
|
keyTable.addEventListener(dh.Table.EVENT_UPDATED, event => {
|
|
1508
1502
|
try {
|
|
1509
1503
|
var {
|
|
1510
|
-
detail:
|
|
1504
|
+
detail: data
|
|
1511
1505
|
} = event;
|
|
1512
|
-
if (
|
|
1506
|
+
if (data.rows.length === 0) {
|
|
1513
1507
|
// We received an update and the table is still empty. Stop showing the loading spinner so we know
|
|
1514
1508
|
_this2.stopLoading();
|
|
1515
1509
|
return;
|
|
1516
1510
|
}
|
|
1517
|
-
var row =
|
|
1511
|
+
var row = data.rows[0];
|
|
1518
1512
|
var values = keyTable.columns.map(column => row.get(column));
|
|
1519
1513
|
var newPartition = {
|
|
1520
1514
|
partitions: values,
|
|
@@ -1545,13 +1539,13 @@ class IrisGrid extends Component {
|
|
|
1545
1539
|
} = this.props;
|
|
1546
1540
|
assertNotNull(rowIndex);
|
|
1547
1541
|
if (isPartitionedGridModel(model)) {
|
|
1548
|
-
var
|
|
1542
|
+
var data = this.getRowDataMap(rowIndex);
|
|
1549
1543
|
var partitionColumnSet = new Set(model.partitionColumns.map(column => column.name));
|
|
1550
|
-
var values = Object.entries(
|
|
1551
|
-
var [key, _] =
|
|
1544
|
+
var values = Object.entries(data).filter(_ref11 => {
|
|
1545
|
+
var [key, _] = _ref11;
|
|
1552
1546
|
return partitionColumnSet.has(key);
|
|
1553
|
-
}).map(
|
|
1554
|
-
var [key, columnData] =
|
|
1547
|
+
}).map(_ref12 => {
|
|
1548
|
+
var [key, columnData] = _ref12;
|
|
1555
1549
|
return columnData.value;
|
|
1556
1550
|
});
|
|
1557
1551
|
var newPartition = {
|
|
@@ -1570,8 +1564,8 @@ class IrisGrid extends Component {
|
|
|
1570
1564
|
canCopy
|
|
1571
1565
|
} = this.props;
|
|
1572
1566
|
if (canCopy) {
|
|
1573
|
-
var
|
|
1574
|
-
copyToClipboard(
|
|
1567
|
+
var value = String(this.getValueForCell(columnIndex, rowIndex, rawValue));
|
|
1568
|
+
copyToClipboard(value).catch(e => log.error('Unable to copy cell', e));
|
|
1575
1569
|
} else {
|
|
1576
1570
|
log.error('Attempted to copyCell for user without copy permission.');
|
|
1577
1571
|
}
|
|
@@ -1762,7 +1756,7 @@ class IrisGrid extends Component {
|
|
|
1762
1756
|
}
|
|
1763
1757
|
focus() {
|
|
1764
1758
|
var _this$grid3;
|
|
1765
|
-
(_this$grid3 = this.grid) === null || _this$grid3 === void 0
|
|
1759
|
+
(_this$grid3 = this.grid) === null || _this$grid3 === void 0 || _this$grid3.focus();
|
|
1766
1760
|
}
|
|
1767
1761
|
focusFilterBar(column) {
|
|
1768
1762
|
var {
|
|
@@ -1793,7 +1787,7 @@ class IrisGrid extends Component {
|
|
|
1793
1787
|
} = metrics;
|
|
1794
1788
|
if (column < left) {
|
|
1795
1789
|
var _this$grid4;
|
|
1796
|
-
(_this$grid4 = this.grid) === null || _this$grid4 === void 0
|
|
1790
|
+
(_this$grid4 = this.grid) === null || _this$grid4 === void 0 || _this$grid4.setViewState({
|
|
1797
1791
|
left: column
|
|
1798
1792
|
}, true);
|
|
1799
1793
|
} else if (rightVisible < column) {
|
|
@@ -1801,7 +1795,7 @@ class IrisGrid extends Component {
|
|
|
1801
1795
|
var metricState = this.getMetricState();
|
|
1802
1796
|
assertNotNull(metricState);
|
|
1803
1797
|
var newLeft = metricCalculator.getLastLeft(metricState, column, metricCalculator.getVisibleWidth(metricState));
|
|
1804
|
-
(_this$grid5 = this.grid) === null || _this$grid5 === void 0
|
|
1798
|
+
(_this$grid5 = this.grid) === null || _this$grid5 === void 0 || _this$grid5.setViewState({
|
|
1805
1799
|
left: Math.min(newLeft, lastLeft),
|
|
1806
1800
|
leftOffset: 0
|
|
1807
1801
|
}, true);
|
|
@@ -1819,7 +1813,7 @@ class IrisGrid extends Component {
|
|
|
1819
1813
|
movedColumns
|
|
1820
1814
|
} = this.state;
|
|
1821
1815
|
metricCalculator.setColumnWidth(GridUtils.getModelIndex(columnVisibleIndex, movedColumns), 0);
|
|
1822
|
-
(_this$grid6 = this.grid) === null || _this$grid6 === void 0
|
|
1816
|
+
(_this$grid6 = this.grid) === null || _this$grid6 === void 0 || _this$grid6.forceUpdate();
|
|
1823
1817
|
}
|
|
1824
1818
|
freezeColumnByColumnName(columnName) {
|
|
1825
1819
|
var {
|
|
@@ -1912,7 +1906,7 @@ class IrisGrid extends Component {
|
|
|
1912
1906
|
metricCalculator.setColumnWidth(modelIndex, 0);
|
|
1913
1907
|
});
|
|
1914
1908
|
}
|
|
1915
|
-
(_this$grid7 = this.grid) === null || _this$grid7 === void 0
|
|
1909
|
+
(_this$grid7 = this.grid) === null || _this$grid7 === void 0 || _this$grid7.forceUpdate();
|
|
1916
1910
|
}
|
|
1917
1911
|
handleColumnVisibilityReset() {
|
|
1918
1912
|
var _model$layoutHints$fr, _model$layoutHints2;
|
|
@@ -1926,7 +1920,7 @@ class IrisGrid extends Component {
|
|
|
1926
1920
|
this.handleMovedColumnsChanged(model.initialMovedColumns);
|
|
1927
1921
|
this.handleHeaderGroupsChanged(model.initialColumnHeaderGroups);
|
|
1928
1922
|
this.setState({
|
|
1929
|
-
frozenColumns: (_model$layoutHints$fr = (_model$layoutHints2 = model.layoutHints) === null || _model$layoutHints2 === void 0 ? void 0 : _model$layoutHints2.frozenColumns) !== null && _model$layoutHints$fr !== void 0 ? _model$layoutHints$fr :
|
|
1923
|
+
frozenColumns: (_model$layoutHints$fr = (_model$layoutHints2 = model.layoutHints) === null || _model$layoutHints2 === void 0 ? void 0 : _model$layoutHints2.frozenColumns) !== null && _model$layoutHints$fr !== void 0 ? _model$layoutHints$fr : EMPTY_ARRAY
|
|
1930
1924
|
});
|
|
1931
1925
|
}
|
|
1932
1926
|
handleCrossColumnSearch(searchValue, selectedSearchColumns, invertSearchColumns) {
|
|
@@ -1943,7 +1937,7 @@ class IrisGrid extends Component {
|
|
|
1943
1937
|
}
|
|
1944
1938
|
handleAnimationLoop() {
|
|
1945
1939
|
var _this$grid8;
|
|
1946
|
-
(_this$grid8 = this.grid) === null || _this$grid8 === void 0
|
|
1940
|
+
(_this$grid8 = this.grid) === null || _this$grid8 === void 0 || _this$grid8.updateCanvas();
|
|
1947
1941
|
if (this.isAnimating) {
|
|
1948
1942
|
this.animationFrame = requestAnimationFrame(this.handleAnimationLoop);
|
|
1949
1943
|
}
|
|
@@ -2009,7 +2003,7 @@ class IrisGrid extends Component {
|
|
|
2009
2003
|
metricCalculator.resetColumnWidth(modelIndex);
|
|
2010
2004
|
}
|
|
2011
2005
|
}
|
|
2012
|
-
(_this$grid9 = this.grid) === null || _this$grid9 === void 0
|
|
2006
|
+
(_this$grid9 = this.grid) === null || _this$grid9 === void 0 || _this$grid9.forceUpdate();
|
|
2013
2007
|
}
|
|
2014
2008
|
|
|
2015
2009
|
/**
|
|
@@ -2017,9 +2011,9 @@ class IrisGrid extends Component {
|
|
|
2017
2011
|
* to keep Grid and IrisGrid metrics in sync since metrics are stored in both places.
|
|
2018
2012
|
*/
|
|
2019
2013
|
updateMetrics() {
|
|
2020
|
-
var _this$
|
|
2014
|
+
var _this$grid0;
|
|
2021
2015
|
this.setState({
|
|
2022
|
-
metrics: (_this$
|
|
2016
|
+
metrics: (_this$grid0 = this.grid) === null || _this$grid0 === void 0 ? void 0 : _this$grid0.updateMetrics()
|
|
2023
2017
|
});
|
|
2024
2018
|
}
|
|
2025
2019
|
toggleSort(columnIndex, addToExisting) {
|
|
@@ -2040,15 +2034,15 @@ class IrisGrid extends Component {
|
|
|
2040
2034
|
}
|
|
2041
2035
|
}
|
|
2042
2036
|
updateSorts(sorts) {
|
|
2043
|
-
var _this$
|
|
2037
|
+
var _this$grid1;
|
|
2044
2038
|
this.startLoading('Sorting...');
|
|
2045
2039
|
this.setState({
|
|
2046
2040
|
sorts
|
|
2047
2041
|
});
|
|
2048
|
-
(_this$
|
|
2042
|
+
(_this$grid1 = this.grid) === null || _this$grid1 === void 0 || _this$grid1.forceUpdate();
|
|
2049
2043
|
}
|
|
2050
2044
|
sortColumn(modelColumn) {
|
|
2051
|
-
var _this$
|
|
2045
|
+
var _this$grid10;
|
|
2052
2046
|
var direction = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : TableUtils.sortDirection.none;
|
|
2053
2047
|
var isAbs = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
|
|
2054
2048
|
var addToExisting = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : false;
|
|
@@ -2061,15 +2055,15 @@ class IrisGrid extends Component {
|
|
|
2061
2055
|
this.setState({
|
|
2062
2056
|
sorts
|
|
2063
2057
|
});
|
|
2064
|
-
(_this$
|
|
2058
|
+
(_this$grid10 = this.grid) === null || _this$grid10 === void 0 || _this$grid10.forceUpdate();
|
|
2065
2059
|
}
|
|
2066
2060
|
reverse(reverse) {
|
|
2067
|
-
var _this$
|
|
2061
|
+
var _this$grid11;
|
|
2068
2062
|
this.startLoading('Reversing...');
|
|
2069
2063
|
this.setState({
|
|
2070
2064
|
reverse
|
|
2071
2065
|
});
|
|
2072
|
-
(_this$
|
|
2066
|
+
(_this$grid11 = this.grid) === null || _this$grid11 === void 0 || _this$grid11.forceUpdate();
|
|
2073
2067
|
}
|
|
2074
2068
|
isReversible() {
|
|
2075
2069
|
var {
|
|
@@ -2092,16 +2086,16 @@ class IrisGrid extends Component {
|
|
|
2092
2086
|
} else {
|
|
2093
2087
|
var columnIndex = 0;
|
|
2094
2088
|
var {
|
|
2095
|
-
model
|
|
2089
|
+
model
|
|
2096
2090
|
} = this.props;
|
|
2097
2091
|
var {
|
|
2098
2092
|
columnCount
|
|
2099
|
-
} =
|
|
2093
|
+
} = model;
|
|
2100
2094
|
for (var i = 0; i < columnCount; i += 1) {
|
|
2101
2095
|
var modelColumn = this.getModelColumn(i);
|
|
2102
2096
|
if (modelColumn != null) {
|
|
2103
|
-
var
|
|
2104
|
-
if (
|
|
2097
|
+
var column = model.columns[modelColumn];
|
|
2098
|
+
if (column != null && TableUtils.isTextType(column.type)) {
|
|
2105
2099
|
columnIndex = i;
|
|
2106
2100
|
break;
|
|
2107
2101
|
}
|
|
@@ -2110,8 +2104,8 @@ class IrisGrid extends Component {
|
|
|
2110
2104
|
this.focusFilterBar(columnIndex);
|
|
2111
2105
|
}
|
|
2112
2106
|
} else {
|
|
2113
|
-
var _this$
|
|
2114
|
-
(_this$
|
|
2107
|
+
var _this$grid12;
|
|
2108
|
+
(_this$grid12 = this.grid) === null || _this$grid12 === void 0 || _this$grid12.focus();
|
|
2115
2109
|
}
|
|
2116
2110
|
}
|
|
2117
2111
|
isTableSearchAvailable() {
|
|
@@ -2123,7 +2117,7 @@ class IrisGrid extends Component {
|
|
|
2123
2117
|
var {
|
|
2124
2118
|
dh
|
|
2125
2119
|
} = model;
|
|
2126
|
-
var searchDisplayMode = model === null || model === void 0
|
|
2120
|
+
var searchDisplayMode = model === null || model === void 0 || (_model$layoutHints3 = model.layoutHints) === null || _model$layoutHints3 === void 0 ? void 0 : _model$layoutHints3.searchDisplayMode;
|
|
2127
2121
|
if (searchDisplayMode === ((_dh$SearchDisplayMode = dh.SearchDisplayMode) === null || _dh$SearchDisplayMode === void 0 ? void 0 : _dh$SearchDisplayMode.SEARCH_DISPLAY_HIDE)) {
|
|
2128
2122
|
return false;
|
|
2129
2123
|
}
|
|
@@ -2146,15 +2140,15 @@ class IrisGrid extends Component {
|
|
|
2146
2140
|
var _this$crossColumnRef;
|
|
2147
2141
|
if (update && (_this$crossColumnRef = this.crossColumnRef) !== null && _this$crossColumnRef !== void 0 && _this$crossColumnRef.current) {
|
|
2148
2142
|
var _this$crossColumnRef2;
|
|
2149
|
-
(_this$crossColumnRef2 = this.crossColumnRef) === null || _this$crossColumnRef2 === void 0
|
|
2143
|
+
(_this$crossColumnRef2 = this.crossColumnRef) === null || _this$crossColumnRef2 === void 0 || _this$crossColumnRef2.current.focus();
|
|
2150
2144
|
} else {
|
|
2151
|
-
var _this$
|
|
2152
|
-
(_this$
|
|
2145
|
+
var _this$grid13;
|
|
2146
|
+
(_this$grid13 = this.grid) === null || _this$grid13 === void 0 || _this$grid13.focus();
|
|
2153
2147
|
}
|
|
2154
2148
|
});
|
|
2155
2149
|
}
|
|
2156
2150
|
toggleGotoRow() {
|
|
2157
|
-
var _this$
|
|
2151
|
+
var _this$grid14, _this$grid15;
|
|
2158
2152
|
var row = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
|
|
2159
2153
|
var value = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';
|
|
2160
2154
|
var columnName = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : '';
|
|
@@ -2173,11 +2167,11 @@ class IrisGrid extends Component {
|
|
|
2173
2167
|
gotoValueManuallyChanged: false
|
|
2174
2168
|
});
|
|
2175
2169
|
this.focusRowInGrid(row);
|
|
2176
|
-
(_this$gotoRowRef$curr = this.gotoRowRef.current) === null || _this$gotoRowRef$curr === void 0
|
|
2170
|
+
(_this$gotoRowRef$curr = this.gotoRowRef.current) === null || _this$gotoRowRef$curr === void 0 || _this$gotoRowRef$curr.focus();
|
|
2177
2171
|
return;
|
|
2178
2172
|
}
|
|
2179
|
-
var cursorRow = (_this$
|
|
2180
|
-
var cursorColumn = (_this$
|
|
2173
|
+
var cursorRow = (_this$grid14 = this.grid) === null || _this$grid14 === void 0 ? void 0 : _this$grid14.state.cursorRow;
|
|
2174
|
+
var cursorColumn = (_this$grid15 = this.grid) === null || _this$grid15 === void 0 ? void 0 : _this$grid15.state.cursorColumn;
|
|
2181
2175
|
if (cursorRow == null || cursorColumn == null) {
|
|
2182
2176
|
// if a cell is not selected / grid is not rendered
|
|
2183
2177
|
this.setState({
|
|
@@ -2213,7 +2207,7 @@ class IrisGrid extends Component {
|
|
|
2213
2207
|
commitPending() {
|
|
2214
2208
|
var _this3 = this;
|
|
2215
2209
|
return _asyncToGenerator(function* () {
|
|
2216
|
-
var _document
|
|
2210
|
+
var _document;
|
|
2217
2211
|
var {
|
|
2218
2212
|
model
|
|
2219
2213
|
} = _this3.props;
|
|
@@ -2226,7 +2220,7 @@ class IrisGrid extends Component {
|
|
|
2226
2220
|
if (pendingSavePromise != null) {
|
|
2227
2221
|
throw new Error('Save already in progress');
|
|
2228
2222
|
}
|
|
2229
|
-
var containsGridCellInputField = (_document = document) === null || _document === void 0
|
|
2223
|
+
var containsGridCellInputField = (_document = document) === null || _document === void 0 || (_document = _document.activeElement) === null || _document === void 0 ? void 0 : _document.classList.contains('grid-cell-input-field');
|
|
2230
2224
|
if (containsGridCellInputField != null && containsGridCellInputField) {
|
|
2231
2225
|
var _this3$grid;
|
|
2232
2226
|
if (document.activeElement != null && document.activeElement.classList.contains('error')) {
|
|
@@ -2234,7 +2228,7 @@ class IrisGrid extends Component {
|
|
|
2234
2228
|
}
|
|
2235
2229
|
|
|
2236
2230
|
// Focus the grid again to commit any pending input changes
|
|
2237
|
-
(_this3$grid = _this3.grid) === null || _this3$grid === void 0
|
|
2231
|
+
(_this3$grid = _this3.grid) === null || _this3$grid === void 0 || _this3$grid.focus();
|
|
2238
2232
|
}
|
|
2239
2233
|
var newPendingSavePromise = _this3.pending.add(model.commitPending()).then(() => {
|
|
2240
2234
|
_this3.setState({
|
|
@@ -2344,7 +2338,7 @@ class IrisGrid extends Component {
|
|
|
2344
2338
|
this.setAdvancedFilter(index, filter, options);
|
|
2345
2339
|
}
|
|
2346
2340
|
handleAdvancedFilterSortChange(column, direction) {
|
|
2347
|
-
var _this$
|
|
2341
|
+
var _this$grid16;
|
|
2348
2342
|
var addToExisting = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
|
|
2349
2343
|
var {
|
|
2350
2344
|
model
|
|
@@ -2367,11 +2361,11 @@ class IrisGrid extends Component {
|
|
|
2367
2361
|
this.setState({
|
|
2368
2362
|
sorts
|
|
2369
2363
|
});
|
|
2370
|
-
(_this$
|
|
2364
|
+
(_this$grid16 = this.grid) === null || _this$grid16 === void 0 || _this$grid16.forceUpdate();
|
|
2371
2365
|
}
|
|
2372
2366
|
handleAdvancedFilterDone() {
|
|
2373
|
-
var _this$
|
|
2374
|
-
(_this$
|
|
2367
|
+
var _this$grid17;
|
|
2368
|
+
(_this$grid17 = this.grid) === null || _this$grid17 === void 0 || _this$grid17.focus();
|
|
2375
2369
|
}
|
|
2376
2370
|
handleAdvancedMenuOpened(column) {
|
|
2377
2371
|
this.setState({
|
|
@@ -2398,7 +2392,7 @@ class IrisGrid extends Component {
|
|
|
2398
2392
|
} = this.state;
|
|
2399
2393
|
if (isFilterBarShown && focusedFilterBarColumn === columnIndex && ((_this$filterInputRef = this.filterInputRef) === null || _this$filterInputRef === void 0 ? void 0 : _this$filterInputRef.current) !== null) {
|
|
2400
2394
|
var _this$filterInputRef2;
|
|
2401
|
-
(_this$filterInputRef2 = this.filterInputRef) === null || _this$filterInputRef2 === void 0
|
|
2395
|
+
(_this$filterInputRef2 = this.filterInputRef) === null || _this$filterInputRef2 === void 0 || _this$filterInputRef2.current.focus();
|
|
2402
2396
|
this.setState({
|
|
2403
2397
|
shownAdvancedFilter: null
|
|
2404
2398
|
});
|
|
@@ -2437,11 +2431,11 @@ class IrisGrid extends Component {
|
|
|
2437
2431
|
this.startLoading('Filtering...', {
|
|
2438
2432
|
resetRanges: true
|
|
2439
2433
|
});
|
|
2440
|
-
this.setState(
|
|
2434
|
+
this.setState(_ref13 => {
|
|
2441
2435
|
var {
|
|
2442
2436
|
focusedFilterBarColumn,
|
|
2443
2437
|
quickFilters
|
|
2444
|
-
} =
|
|
2438
|
+
} = _ref13;
|
|
2445
2439
|
var newQuickFilters = new Map(quickFilters);
|
|
2446
2440
|
if (focusedFilterBarColumn != null) {
|
|
2447
2441
|
var modelIndex = this.getModelColumn(focusedFilterBarColumn);
|
|
@@ -2457,8 +2451,8 @@ class IrisGrid extends Component {
|
|
|
2457
2451
|
var setGridFocus = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;
|
|
2458
2452
|
var defocusInput = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
|
|
2459
2453
|
if (setGridFocus) {
|
|
2460
|
-
var _this$
|
|
2461
|
-
(_this$
|
|
2454
|
+
var _this$grid18;
|
|
2455
|
+
(_this$grid18 = this.grid) === null || _this$grid18 === void 0 || _this$grid18.focus();
|
|
2462
2456
|
}
|
|
2463
2457
|
if (defocusInput) {
|
|
2464
2458
|
this.setState({
|
|
@@ -2503,10 +2497,10 @@ class IrisGrid extends Component {
|
|
|
2503
2497
|
model
|
|
2504
2498
|
} = this.props;
|
|
2505
2499
|
var column = model.columns[modelIndex];
|
|
2506
|
-
this.setState(
|
|
2500
|
+
this.setState(_ref14 => {
|
|
2507
2501
|
var {
|
|
2508
2502
|
columnAlignmentMap = EMPTY_MAP
|
|
2509
|
-
} =
|
|
2503
|
+
} = _ref14;
|
|
2510
2504
|
var newColumnAlignmentMap = new Map(columnAlignmentMap);
|
|
2511
2505
|
if (alignment != null) {
|
|
2512
2506
|
newColumnAlignmentMap.set(column.name, alignment);
|
|
@@ -2531,10 +2525,10 @@ class IrisGrid extends Component {
|
|
|
2531
2525
|
});
|
|
2532
2526
|
}
|
|
2533
2527
|
handleMenuBack() {
|
|
2534
|
-
this.setState(
|
|
2528
|
+
this.setState(_ref15 => {
|
|
2535
2529
|
var {
|
|
2536
2530
|
openOptions
|
|
2537
|
-
} =
|
|
2531
|
+
} = _ref15;
|
|
2538
2532
|
var newOptions = [...openOptions];
|
|
2539
2533
|
newOptions.pop();
|
|
2540
2534
|
return {
|
|
@@ -2543,10 +2537,10 @@ class IrisGrid extends Component {
|
|
|
2543
2537
|
});
|
|
2544
2538
|
}
|
|
2545
2539
|
handleMenuSelect(option) {
|
|
2546
|
-
this.setState(
|
|
2540
|
+
this.setState(_ref16 => {
|
|
2547
2541
|
var {
|
|
2548
2542
|
openOptions
|
|
2549
|
-
} =
|
|
2543
|
+
} = _ref16;
|
|
2550
2544
|
return {
|
|
2551
2545
|
openOptions: [...openOptions, option]
|
|
2552
2546
|
};
|
|
@@ -2585,7 +2579,7 @@ class IrisGrid extends Component {
|
|
|
2585
2579
|
}
|
|
2586
2580
|
}
|
|
2587
2581
|
handleUpdate() {
|
|
2588
|
-
var _this$
|
|
2582
|
+
var _this$grid19;
|
|
2589
2583
|
log.debug2('Received model update');
|
|
2590
2584
|
var {
|
|
2591
2585
|
advancedFilters,
|
|
@@ -2614,7 +2608,7 @@ class IrisGrid extends Component {
|
|
|
2614
2608
|
} else {
|
|
2615
2609
|
this.lastLoadedConfig = null;
|
|
2616
2610
|
}
|
|
2617
|
-
(_this$
|
|
2611
|
+
(_this$grid19 = this.grid) === null || _this$grid19 === void 0 || _this$grid19.forceUpdate();
|
|
2618
2612
|
this.stopLoading();
|
|
2619
2613
|
}
|
|
2620
2614
|
handleTableChanged() {
|
|
@@ -2627,13 +2621,13 @@ class IrisGrid extends Component {
|
|
|
2627
2621
|
});
|
|
2628
2622
|
}
|
|
2629
2623
|
handleViewChanged(metrics) {
|
|
2630
|
-
var _this$grid$state, _this$
|
|
2624
|
+
var _this$grid$state, _this$grid20;
|
|
2631
2625
|
var {
|
|
2632
2626
|
model
|
|
2633
2627
|
} = this.props;
|
|
2634
2628
|
var {
|
|
2635
2629
|
selectionEndRow = 0
|
|
2636
|
-
} = (_this$grid$state = (_this$
|
|
2630
|
+
} = (_this$grid$state = (_this$grid20 = this.grid) === null || _this$grid20 === void 0 ? void 0 : _this$grid20.state) !== null && _this$grid$state !== void 0 ? _this$grid$state : {};
|
|
2637
2631
|
var pendingRowCount = 0;
|
|
2638
2632
|
if (isEditableGridModel(model) && model.isEditable) {
|
|
2639
2633
|
assertNotNull(metrics);
|
|
@@ -2661,7 +2655,6 @@ class IrisGrid extends Component {
|
|
|
2661
2655
|
});
|
|
2662
2656
|
}
|
|
2663
2657
|
handleSelectionChanged(selectedRanges) {
|
|
2664
|
-
var _this$grid23;
|
|
2665
2658
|
assertNotNull(selectedRanges);
|
|
2666
2659
|
var {
|
|
2667
2660
|
onSelectionChanged
|
|
@@ -2677,9 +2670,14 @@ class IrisGrid extends Component {
|
|
|
2677
2670
|
copyOperation: null
|
|
2678
2671
|
});
|
|
2679
2672
|
}
|
|
2680
|
-
|
|
2673
|
+
|
|
2674
|
+
// We get 2 identical ranges here,
|
|
2675
|
+
// but consolidating in `Grid#moveSelection` causes
|
|
2676
|
+
// deselection to break, so just consolidate here.
|
|
2677
|
+
// This will only update the goto row input for row index
|
|
2678
|
+
if (GridRange.rowCount(GridRange.consolidate(selectedRanges)) === 1 && selectedRanges[0].startRow != null) {
|
|
2681
2679
|
this.setState({
|
|
2682
|
-
gotoRow: "".concat(
|
|
2680
|
+
gotoRow: "".concat(selectedRanges[0].startRow + 1)
|
|
2683
2681
|
});
|
|
2684
2682
|
}
|
|
2685
2683
|
onSelectionChanged(selectedRanges);
|
|
@@ -2696,8 +2694,8 @@ class IrisGrid extends Component {
|
|
|
2696
2694
|
this.setState({
|
|
2697
2695
|
columnHeaderGroups: IrisGridUtils.parseColumnHeaderGroups(model, columnHeaderGroups).groups
|
|
2698
2696
|
}, () => {
|
|
2699
|
-
var _this$
|
|
2700
|
-
return (_this$
|
|
2697
|
+
var _this$grid21;
|
|
2698
|
+
return (_this$grid21 = this.grid) === null || _this$grid21 === void 0 ? void 0 : _this$grid21.forceUpdate();
|
|
2701
2699
|
});
|
|
2702
2700
|
}
|
|
2703
2701
|
handleTooltipRef(tooltip) {
|
|
@@ -2745,9 +2743,6 @@ class IrisGrid extends Component {
|
|
|
2745
2743
|
conditionalFormatPreview: _objectSpread({}, conditionalFormats[index])
|
|
2746
2744
|
});
|
|
2747
2745
|
}
|
|
2748
|
-
|
|
2749
|
-
// Apply live changes
|
|
2750
|
-
|
|
2751
2746
|
handleConditionalFormatEditorSave(config) {
|
|
2752
2747
|
log.debug('Save conditional format changes', config);
|
|
2753
2748
|
this.setState(state => {
|
|
@@ -2852,7 +2847,7 @@ class IrisGrid extends Component {
|
|
|
2852
2847
|
return this.discardPending();
|
|
2853
2848
|
}
|
|
2854
2849
|
handlePendingDataUpdated() {
|
|
2855
|
-
var _this$
|
|
2850
|
+
var _this$grid22;
|
|
2856
2851
|
log.debug('pending data updated');
|
|
2857
2852
|
var {
|
|
2858
2853
|
model
|
|
@@ -2866,10 +2861,10 @@ class IrisGrid extends Component {
|
|
|
2866
2861
|
pendingDataErrors,
|
|
2867
2862
|
pendingSaveError: null
|
|
2868
2863
|
});
|
|
2869
|
-
(_this$
|
|
2864
|
+
(_this$grid22 = this.grid) === null || _this$grid22 === void 0 || _this$grid22.forceUpdate();
|
|
2870
2865
|
}
|
|
2871
2866
|
handleResizeColumn(modelIndex) {
|
|
2872
|
-
var _this$
|
|
2867
|
+
var _this$grid23;
|
|
2873
2868
|
var {
|
|
2874
2869
|
metrics,
|
|
2875
2870
|
metricCalculator
|
|
@@ -2883,21 +2878,21 @@ class IrisGrid extends Component {
|
|
|
2883
2878
|
} else {
|
|
2884
2879
|
metricCalculator.setColumnWidth(modelIndex, contentWidth);
|
|
2885
2880
|
}
|
|
2886
|
-
(_this$
|
|
2881
|
+
(_this$grid23 = this.grid) === null || _this$grid23 === void 0 || _this$grid23.forceUpdate();
|
|
2887
2882
|
}
|
|
2888
2883
|
handleResizeAllColumns() {
|
|
2889
|
-
var _this$
|
|
2884
|
+
var _this$grid24;
|
|
2890
2885
|
var {
|
|
2891
2886
|
metrics,
|
|
2892
2887
|
metricCalculator
|
|
2893
2888
|
} = this.state;
|
|
2894
2889
|
if (!metrics) throw new Error('Metrics not set');
|
|
2895
2890
|
var allColumns = [...metrics.allColumnWidths.entries()];
|
|
2896
|
-
var visibleColumns = allColumns.filter(
|
|
2897
|
-
var [_, width] =
|
|
2891
|
+
var visibleColumns = allColumns.filter(_ref17 => {
|
|
2892
|
+
var [_, width] = _ref17;
|
|
2898
2893
|
return width !== 0;
|
|
2899
|
-
}).map(
|
|
2900
|
-
var [modelIndex] =
|
|
2894
|
+
}).map(_ref18 => {
|
|
2895
|
+
var [modelIndex] = _ref18;
|
|
2901
2896
|
return modelIndex;
|
|
2902
2897
|
});
|
|
2903
2898
|
var contentWidths = metrics.contentColumnWidths;
|
|
@@ -2919,7 +2914,7 @@ class IrisGrid extends Component {
|
|
|
2919
2914
|
metricCalculator.setColumnWidth(_modelIndex, _contentWidth);
|
|
2920
2915
|
}
|
|
2921
2916
|
}
|
|
2922
|
-
(_this$
|
|
2917
|
+
(_this$grid24 = this.grid) === null || _this$grid24 === void 0 || _this$grid24.forceUpdate();
|
|
2923
2918
|
}
|
|
2924
2919
|
|
|
2925
2920
|
/**
|
|
@@ -2936,7 +2931,7 @@ class IrisGrid extends Component {
|
|
|
2936
2931
|
var {
|
|
2937
2932
|
rollupConfig
|
|
2938
2933
|
} = this.state;
|
|
2939
|
-
var isRollup = ((_rollupConfig$columns = rollupConfig === null || rollupConfig === void 0
|
|
2934
|
+
var isRollup = ((_rollupConfig$columns = rollupConfig === null || rollupConfig === void 0 || (_rollupConfig$columns2 = rollupConfig.columns) === null || _rollupConfig$columns2 === void 0 ? void 0 : _rollupConfig$columns2.length) !== null && _rollupConfig$columns !== void 0 ? _rollupConfig$columns : 0) > 0;
|
|
2940
2935
|
// Do not start loading if this is rollup and added / removed aggregations are prohibited for rollups
|
|
2941
2936
|
var changes = [...added, ...removed];
|
|
2942
2937
|
var shouldStartLoading = !(isRollup && changes.length > 0 && changes.every(op => AggregationUtils.isRollupProhibited(op)));
|
|
@@ -2958,16 +2953,16 @@ class IrisGrid extends Component {
|
|
|
2958
2953
|
var {
|
|
2959
2954
|
rollupConfig
|
|
2960
2955
|
} = this.state;
|
|
2961
|
-
var isRollup = ((_rollupConfig$columns3 = rollupConfig === null || rollupConfig === void 0
|
|
2956
|
+
var isRollup = ((_rollupConfig$columns3 = rollupConfig === null || rollupConfig === void 0 || (_rollupConfig$columns4 = rollupConfig.columns) === null || _rollupConfig$columns4 === void 0 ? void 0 : _rollupConfig$columns4.length) !== null && _rollupConfig$columns3 !== void 0 ? _rollupConfig$columns3 : 0) > 0;
|
|
2962
2957
|
// Do not start loading if this is rollup and the aggregation is prohibited for rollups
|
|
2963
2958
|
var shouldStartLoading = !(isRollup && AggregationUtils.isRollupProhibited(aggregation.operation));
|
|
2964
2959
|
if (shouldStartLoading) {
|
|
2965
2960
|
this.startLoading("Aggregating ".concat(aggregation.operation, "..."));
|
|
2966
2961
|
}
|
|
2967
|
-
this.setState(
|
|
2962
|
+
this.setState(_ref19 => {
|
|
2968
2963
|
var {
|
|
2969
2964
|
aggregationSettings
|
|
2970
|
-
} =
|
|
2965
|
+
} = _ref19;
|
|
2971
2966
|
return {
|
|
2972
2967
|
selectedAggregation: aggregation,
|
|
2973
2968
|
aggregationSettings: _objectSpread(_objectSpread({}, aggregationSettings), {}, {
|
|
@@ -3000,18 +2995,18 @@ class IrisGrid extends Component {
|
|
|
3000
2995
|
this.resetGridViewState();
|
|
3001
2996
|
this.showAllColumns();
|
|
3002
2997
|
this.clearAllFilters();
|
|
3003
|
-
this.startLoading("Grouping by columns ".concat((_rollupConfig$columns5 = rollupConfig === null || rollupConfig === void 0
|
|
2998
|
+
this.startLoading("Grouping by columns ".concat((_rollupConfig$columns5 = rollupConfig === null || rollupConfig === void 0 || (_rollupConfig$columns6 = rollupConfig.columns) === null || _rollupConfig$columns6 === void 0 ? void 0 : _rollupConfig$columns6.join(', ')) !== null && _rollupConfig$columns5 !== void 0 ? _rollupConfig$columns5 : '', "..."));
|
|
3004
2999
|
|
|
3005
3000
|
// Have to clear select distinct since rollup uses the original columns, not the current ones.
|
|
3006
3001
|
// IrisGridProxyModel has a check to prevent model update
|
|
3007
3002
|
// when selectDistinctModel is cleared and the rollupConfig is set on the model.
|
|
3008
3003
|
this.setState({
|
|
3009
3004
|
rollupConfig,
|
|
3010
|
-
movedColumns:
|
|
3011
|
-
frozenColumns:
|
|
3012
|
-
sorts:
|
|
3005
|
+
movedColumns: EMPTY_ARRAY,
|
|
3006
|
+
frozenColumns: EMPTY_ARRAY,
|
|
3007
|
+
sorts: EMPTY_ARRAY,
|
|
3013
3008
|
reverse: false,
|
|
3014
|
-
selectDistinctColumns:
|
|
3009
|
+
selectDistinctColumns: EMPTY_ARRAY
|
|
3015
3010
|
});
|
|
3016
3011
|
}
|
|
3017
3012
|
handleSelectDistinctChanged(columnNames) {
|
|
@@ -3067,10 +3062,10 @@ class IrisGrid extends Component {
|
|
|
3067
3062
|
*/
|
|
3068
3063
|
removeEmptyAggregations() {
|
|
3069
3064
|
log.debug('removeEmptyAggregations');
|
|
3070
|
-
this.setState(
|
|
3065
|
+
this.setState(_ref20 => {
|
|
3071
3066
|
var {
|
|
3072
3067
|
aggregationSettings
|
|
3073
|
-
} =
|
|
3068
|
+
} = _ref20;
|
|
3074
3069
|
var {
|
|
3075
3070
|
aggregations
|
|
3076
3071
|
} = aggregationSettings;
|
|
@@ -3162,7 +3157,7 @@ class IrisGrid extends Component {
|
|
|
3162
3157
|
rowIndex = yield model.seekRow(searchFromRow, selectedColumn, dh.ValueType.STRING, _this6.tableUtils.makeValue(selectedColumn.type, inputString, formatter.timeZone), undefined, undefined, isBackwards !== null && isBackwards !== void 0 ? isBackwards : false);
|
|
3163
3158
|
}
|
|
3164
3159
|
}
|
|
3165
|
-
(_this6$grid2 = _this6.grid) === null || _this6$grid2 === void 0
|
|
3160
|
+
(_this6$grid2 = _this6.grid) === null || _this6$grid2 === void 0 || _this6$grid2.setFocusRow(rowIndex);
|
|
3166
3161
|
_this6.setState({
|
|
3167
3162
|
gotoValueError: ''
|
|
3168
3163
|
});
|
|
@@ -3175,7 +3170,7 @@ class IrisGrid extends Component {
|
|
|
3175
3170
|
}
|
|
3176
3171
|
handleCancelDownloadTable() {
|
|
3177
3172
|
var _this$tableSaver;
|
|
3178
|
-
(_this$tableSaver = this.tableSaver) === null || _this$tableSaver === void 0
|
|
3173
|
+
(_this$tableSaver = this.tableSaver) === null || _this$tableSaver === void 0 || _this$tableSaver.cancelDownload();
|
|
3179
3174
|
this.setState({
|
|
3180
3175
|
isTableDownloading: false
|
|
3181
3176
|
});
|
|
@@ -3345,22 +3340,22 @@ class IrisGrid extends Component {
|
|
|
3345
3340
|
gotoRowError: 'Invalid row index'
|
|
3346
3341
|
});
|
|
3347
3342
|
} else if (rowInt === 0) {
|
|
3348
|
-
var _this$
|
|
3343
|
+
var _this$grid25;
|
|
3349
3344
|
this.setState({
|
|
3350
3345
|
gotoRowError: '',
|
|
3351
3346
|
gotoValueError: ''
|
|
3352
3347
|
});
|
|
3353
|
-
(_this$
|
|
3348
|
+
(_this$grid25 = this.grid) === null || _this$grid25 === void 0 || _this$grid25.setFocusRow(0);
|
|
3354
3349
|
} else if (rowInt < 0) {
|
|
3355
|
-
var _this$
|
|
3350
|
+
var _this$grid26;
|
|
3356
3351
|
this.setState({
|
|
3357
3352
|
gotoRowError: '',
|
|
3358
3353
|
gotoValueError: ''
|
|
3359
3354
|
});
|
|
3360
|
-
(_this$
|
|
3355
|
+
(_this$grid26 = this.grid) === null || _this$grid26 === void 0 || _this$grid26.setFocusRow(rowInt + rowCount);
|
|
3361
3356
|
} else {
|
|
3362
|
-
var _this$
|
|
3363
|
-
(_this$
|
|
3357
|
+
var _this$grid27;
|
|
3358
|
+
(_this$grid27 = this.grid) === null || _this$grid27 === void 0 || _this$grid27.setFocusRow(rowInt - 1);
|
|
3364
3359
|
this.setState({
|
|
3365
3360
|
gotoRowError: '',
|
|
3366
3361
|
gotoValueError: ''
|
|
@@ -3453,34 +3448,34 @@ class IrisGrid extends Component {
|
|
|
3453
3448
|
column: column,
|
|
3454
3449
|
onStatistics: () => {
|
|
3455
3450
|
var _this$tooltip;
|
|
3456
|
-
(_this$tooltip = this.tooltip) === null || _this$tooltip === void 0
|
|
3451
|
+
(_this$tooltip = this.tooltip) === null || _this$tooltip === void 0 || _this$tooltip.update();
|
|
3457
3452
|
}
|
|
3458
3453
|
})
|
|
3459
3454
|
}, column.name)
|
|
3460
3455
|
});
|
|
3461
3456
|
}
|
|
3462
3457
|
handleGotoValueSelectedColumnNameChanged(columnName) {
|
|
3463
|
-
var _this$
|
|
3458
|
+
var _this$grid28;
|
|
3464
3459
|
var {
|
|
3465
3460
|
model
|
|
3466
3461
|
} = this.props;
|
|
3467
|
-
var cursorRow = (_this$
|
|
3462
|
+
var cursorRow = (_this$grid28 = this.grid) === null || _this$grid28 === void 0 ? void 0 : _this$grid28.state.cursorRow;
|
|
3468
3463
|
var {
|
|
3469
3464
|
gotoValueSelectedColumnName: prevColumnName,
|
|
3470
3465
|
gotoValueManuallyChanged
|
|
3471
3466
|
} = this.state;
|
|
3472
3467
|
if (cursorRow != null) {
|
|
3473
|
-
var
|
|
3474
|
-
var
|
|
3468
|
+
var index = model.getColumnIndexByName(columnName);
|
|
3469
|
+
var column = IrisGridUtils.getColumnByName(model.columns, columnName);
|
|
3475
3470
|
var prevColumn = IrisGridUtils.getColumnByName(model.columns, prevColumnName);
|
|
3476
|
-
if (
|
|
3471
|
+
if (index == null || column == null) {
|
|
3477
3472
|
return;
|
|
3478
3473
|
}
|
|
3479
|
-
var
|
|
3480
|
-
var text = IrisGridUtils.convertValueToText(
|
|
3474
|
+
var value = model.valueForCell(index, cursorRow);
|
|
3475
|
+
var text = IrisGridUtils.convertValueToText(value, column.type);
|
|
3481
3476
|
|
|
3482
3477
|
// do NOT update value if user manually changed value AND column type remains the same
|
|
3483
|
-
if (gotoValueManuallyChanged &&
|
|
3478
|
+
if (gotoValueManuallyChanged && column.type === (prevColumn === null || prevColumn === void 0 ? void 0 : prevColumn.type)) {
|
|
3484
3479
|
this.setState({
|
|
3485
3480
|
gotoValueSelectedColumnName: columnName,
|
|
3486
3481
|
gotoValueError: ''
|
|
@@ -3516,8 +3511,7 @@ class IrisGrid extends Component {
|
|
|
3516
3511
|
var _rollupConfig$columns7,
|
|
3517
3512
|
_rollupConfig$columns8,
|
|
3518
3513
|
_this7 = this,
|
|
3519
|
-
_this$
|
|
3520
|
-
_this$grid33$state$dr,
|
|
3514
|
+
_this$grid30,
|
|
3521
3515
|
_openOptions;
|
|
3522
3516
|
var {
|
|
3523
3517
|
children,
|
|
@@ -3623,7 +3617,7 @@ class IrisGrid extends Component {
|
|
|
3623
3617
|
right = metrics ? metrics.right : 0;
|
|
3624
3618
|
}
|
|
3625
3619
|
var isVisible = metrics != null && metrics.width > 0 && metrics.height > 0;
|
|
3626
|
-
var isRollup = ((_rollupConfig$columns7 = rollupConfig === null || rollupConfig === void 0
|
|
3620
|
+
var isRollup = ((_rollupConfig$columns7 = rollupConfig === null || rollupConfig === void 0 || (_rollupConfig$columns8 = rollupConfig.columns) === null || _rollupConfig$columns8 === void 0 ? void 0 : _rollupConfig$columns8.length) !== null && _rollupConfig$columns7 !== void 0 ? _rollupConfig$columns7 : 0) > 0;
|
|
3627
3621
|
var focusField = null;
|
|
3628
3622
|
var debounceMs = metrics ? Math.min(Math.max(IrisGrid.minDebounce, Math.round(metrics.rowCount / 200)), IrisGrid.maxDebounce) : IrisGrid.maxDebounce;
|
|
3629
3623
|
if (isFilterBarShown && focusedFilterBarColumn != null && metrics != null) {
|
|
@@ -3637,7 +3631,7 @@ class IrisGrid extends Component {
|
|
|
3637
3631
|
var columnX = allColumnXs.get(focusedFilterBarColumn);
|
|
3638
3632
|
var columnWidth = allColumnWidths.get(focusedFilterBarColumn);
|
|
3639
3633
|
if (columnX != null && columnWidth != null) {
|
|
3640
|
-
var _theme$filterBarHeigh, _theme$filterBarHeigh2, _this$
|
|
3634
|
+
var _theme$filterBarHeigh, _theme$filterBarHeigh2, _this$grid29;
|
|
3641
3635
|
var x = gridX + columnX;
|
|
3642
3636
|
var y = gridY - ((_theme$filterBarHeigh = theme.filterBarHeight) !== null && _theme$filterBarHeigh !== void 0 ? _theme$filterBarHeigh : 0);
|
|
3643
3637
|
var fieldWidth = columnWidth + 1; // cover right border
|
|
@@ -3649,14 +3643,14 @@ class IrisGrid extends Component {
|
|
|
3649
3643
|
// Don't cause overflow
|
|
3650
3644
|
height: fieldHeight
|
|
3651
3645
|
};
|
|
3652
|
-
var
|
|
3646
|
+
var value = '';
|
|
3653
3647
|
var isValid = true;
|
|
3654
3648
|
var modelColumn = this.getModelColumn(focusedFilterBarColumn);
|
|
3655
3649
|
assertNotNull(modelColumn);
|
|
3656
3650
|
var quickFilter = quickFilters.get(modelColumn);
|
|
3657
3651
|
var advancedFilter = advancedFilters.get(modelColumn);
|
|
3658
3652
|
if (quickFilter != null) {
|
|
3659
|
-
|
|
3653
|
+
value = quickFilter.text;
|
|
3660
3654
|
isValid = quickFilter.filter != null;
|
|
3661
3655
|
}
|
|
3662
3656
|
var isBarFiltered = quickFilters.size !== 0 || advancedFilters.size !== 0;
|
|
@@ -3665,7 +3659,7 @@ class IrisGrid extends Component {
|
|
|
3665
3659
|
style: style,
|
|
3666
3660
|
className: classNames({
|
|
3667
3661
|
error: !isValid,
|
|
3668
|
-
active:
|
|
3662
|
+
active: value !== '' || advancedFilter != null,
|
|
3669
3663
|
'iris-grid-has-filter': isBarFiltered
|
|
3670
3664
|
}),
|
|
3671
3665
|
isAdvancedFilterSet: advancedFilter != null,
|
|
@@ -3677,9 +3671,9 @@ class IrisGrid extends Component {
|
|
|
3677
3671
|
onChange: this.handleFilterBarChange,
|
|
3678
3672
|
onDone: this.handleFilterBarDone,
|
|
3679
3673
|
onTab: this.handleFilterBarTab,
|
|
3680
|
-
onContextMenu: (_this$
|
|
3674
|
+
onContextMenu: (_this$grid29 = this.grid) === null || _this$grid29 === void 0 ? void 0 : _this$grid29.handleContextMenu,
|
|
3681
3675
|
debounceMs: debounceMs,
|
|
3682
|
-
value:
|
|
3676
|
+
value: value
|
|
3683
3677
|
}, focusedFilterBarColumn);
|
|
3684
3678
|
}
|
|
3685
3679
|
}
|
|
@@ -3718,7 +3712,7 @@ class IrisGrid extends Component {
|
|
|
3718
3712
|
var _this$tooltip2;
|
|
3719
3713
|
columnTooltip = this.getColumnTooltip(shownColumnTooltip, metrics, model);
|
|
3720
3714
|
// #510 We may need to update the position of the tooltip if it's already opened and columns are resized
|
|
3721
|
-
(_this$tooltip2 = this.tooltip) === null || _this$tooltip2 === void 0
|
|
3715
|
+
(_this$tooltip2 = this.tooltip) === null || _this$tooltip2 === void 0 || _this$tooltip2.update();
|
|
3722
3716
|
}
|
|
3723
3717
|
var filterBar = [];
|
|
3724
3718
|
if (metrics && isFilterBarShown) {
|
|
@@ -3767,7 +3761,7 @@ class IrisGrid extends Component {
|
|
|
3767
3761
|
},
|
|
3768
3762
|
onContextMenu: event => {
|
|
3769
3763
|
var _this7$grid;
|
|
3770
|
-
(_this7$grid = _this7.grid) === null || _this7$grid === void 0
|
|
3764
|
+
(_this7$grid = _this7.grid) === null || _this7$grid === void 0 || _this7$grid.handleContextMenu(event);
|
|
3771
3765
|
},
|
|
3772
3766
|
onMouseEnter: () => {
|
|
3773
3767
|
_this7.setState({
|
|
@@ -3830,18 +3824,18 @@ class IrisGrid extends Component {
|
|
|
3830
3824
|
};
|
|
3831
3825
|
var _modelColumn = _this7.getModelColumn(columnIndex);
|
|
3832
3826
|
if (_modelColumn != null) {
|
|
3833
|
-
var
|
|
3834
|
-
if (
|
|
3827
|
+
var column = model.columns[_modelColumn];
|
|
3828
|
+
if (column == null) {
|
|
3835
3829
|
// Grid metrics is likely out of sync with model
|
|
3836
3830
|
log.warn("Column does not exist at index ".concat(_modelColumn, " for column array of length ").concat(model.columns.length));
|
|
3837
3831
|
// eslint-disable-next-line no-continue
|
|
3838
|
-
return
|
|
3832
|
+
return 1; // continue
|
|
3839
3833
|
}
|
|
3840
3834
|
var _advancedFilter2 = advancedFilters.get(_modelColumn);
|
|
3841
3835
|
var {
|
|
3842
3836
|
options: advancedFilterOptions
|
|
3843
3837
|
} = _advancedFilter2 || {};
|
|
3844
|
-
var sort = TableUtils.getSortForColumn(model.sort,
|
|
3838
|
+
var sort = TableUtils.getSortForColumn(model.sort, column.name);
|
|
3845
3839
|
var sortDirection = sort ? sort.direction : null;
|
|
3846
3840
|
if (!isSortDirection(sortDirection)) {
|
|
3847
3841
|
throw new Error("Invalid sort direction: ".concat(sortDirection));
|
|
@@ -3861,7 +3855,7 @@ class IrisGrid extends Component {
|
|
|
3861
3855
|
options: {
|
|
3862
3856
|
positionFixed: true
|
|
3863
3857
|
},
|
|
3864
|
-
children: _this7.getCachedAdvancedFilterMenuActions(model,
|
|
3858
|
+
children: _this7.getCachedAdvancedFilterMenuActions(model, column, advancedFilterOptions, sortDirection, formatter)
|
|
3865
3859
|
})
|
|
3866
3860
|
}, columnIndex);
|
|
3867
3861
|
advancedFilterMenus.push(element);
|
|
@@ -3869,8 +3863,7 @@ class IrisGrid extends Component {
|
|
|
3869
3863
|
}
|
|
3870
3864
|
};
|
|
3871
3865
|
for (var _i4 = 0; _i4 < _visibleColumns.length; _i4 += 1) {
|
|
3872
|
-
|
|
3873
|
-
if (_ret === "continue") continue;
|
|
3866
|
+
if (_loop3()) continue;
|
|
3874
3867
|
}
|
|
3875
3868
|
}
|
|
3876
3869
|
var optionItems = this.getCachedOptionItems(onCreateChart !== undefined && model.isChartBuilderAvailable, model.isCustomColumnsAvailable, model.isFormatColumnsAvailable, model.isOrganizeColumnsAvailable, model.isRollupAvailable, model.isTotalsAvailable || isRollup, model.isSelectDistinctAvailable, model.isExportAvailable, this.toggleFilterBarAction, this.toggleSearchBarAction, this.toggleGotoRowAction, isFilterBarShown, showSearchBar, canDownloadCsv, this.isTableSearchAvailable(), isGotoShown, advancedSettings.size > 0);
|
|
@@ -3988,7 +3981,9 @@ class IrisGrid extends Component {
|
|
|
3988
3981
|
onExited: this.handleAnimationEnd,
|
|
3989
3982
|
mountOnEnter: true,
|
|
3990
3983
|
unmountOnExit: true,
|
|
3984
|
+
nodeRef: this.slideTransitionRef,
|
|
3991
3985
|
children: /*#__PURE__*/_jsx("div", {
|
|
3986
|
+
ref: this.slideTransitionRef,
|
|
3992
3987
|
className: "iris-grid-partition-selector-wrapper iris-grid-bar iris-grid-bar-primary",
|
|
3993
3988
|
children: isPartitionedGridModel(model) && model.isPartitionRequired && /*#__PURE__*/_jsx(IrisGridPartitionSelector, {
|
|
3994
3989
|
model: model,
|
|
@@ -4006,7 +4001,9 @@ class IrisGrid extends Component {
|
|
|
4006
4001
|
onExited: this.handleAnimationEnd,
|
|
4007
4002
|
mountOnEnter: true,
|
|
4008
4003
|
unmountOnExit: true,
|
|
4004
|
+
nodeRef: this.bottomTransitionRef,
|
|
4009
4005
|
children: /*#__PURE__*/_jsx("div", {
|
|
4006
|
+
ref: this.bottomTransitionRef,
|
|
4010
4007
|
className: "iris-grid-bar",
|
|
4011
4008
|
children: /*#__PURE__*/_jsx(CrossColumnSearch, {
|
|
4012
4009
|
value: searchValue,
|
|
@@ -4055,7 +4052,7 @@ class IrisGrid extends Component {
|
|
|
4055
4052
|
movedColumns: movedColumns,
|
|
4056
4053
|
customColumns: customColumns,
|
|
4057
4054
|
hiddenColumns: hiddenColumns,
|
|
4058
|
-
alwaysFetchColumns: this.getAlwaysFetchColumns(alwaysFetchColumns, model.columns, movedColumns, model.floatingLeftColumnCount, model.floatingRightColumnCount, (_this$
|
|
4055
|
+
alwaysFetchColumns: this.getAlwaysFetchColumns(alwaysFetchColumns, model.columns, movedColumns, model.floatingLeftColumnCount, model.floatingRightColumnCount, (_this$grid30 = this.grid) === null || _this$grid30 === void 0 || (_this$grid30 = _this$grid30.state.draggingColumn) === null || _this$grid30 === void 0 ? void 0 : _this$grid30.range),
|
|
4059
4056
|
formatColumns: this.getCachedPreviewFormatColumns(model.dh, model.columns, conditionalFormats, conditionalFormatPreview,
|
|
4060
4057
|
// Disable the preview format when we press Back on the format edit page
|
|
4061
4058
|
((_openOptions = openOptions[openOptions.length - 1]) === null || _openOptions === void 0 ? void 0 : _openOptions.type) === OptionType.CONDITIONAL_FORMATTING_EDIT ? conditionalFormatEditIndex !== null && conditionalFormatEditIndex !== void 0 ? conditionalFormatEditIndex : undefined : undefined),
|
|
@@ -4184,7 +4181,6 @@ _defineProperty(IrisGrid, "minDebounce", 150);
|
|
|
4184
4181
|
_defineProperty(IrisGrid, "maxDebounce", 500);
|
|
4185
4182
|
_defineProperty(IrisGrid, "loadingSpinnerDelay", 800);
|
|
4186
4183
|
_defineProperty(IrisGrid, "defaultProps", {
|
|
4187
|
-
children: null,
|
|
4188
4184
|
advancedFilters: EMPTY_MAP,
|
|
4189
4185
|
advancedSettings: EMPTY_MAP,
|
|
4190
4186
|
alwaysFetchColumns: EMPTY_ARRAY,
|
|
@@ -4219,7 +4215,6 @@ _defineProperty(IrisGrid, "defaultProps", {
|
|
|
4219
4215
|
isSelectingPartition: false,
|
|
4220
4216
|
isStuckToBottom: false,
|
|
4221
4217
|
isStuckToRight: false,
|
|
4222
|
-
columnSelectionValidator: null,
|
|
4223
4218
|
columnAllowedCursor: 'linker',
|
|
4224
4219
|
columnNotAllowedCursor: 'linker-not-allowed',
|
|
4225
4220
|
copyCursor: 'copy',
|
|
@@ -4227,7 +4222,6 @@ _defineProperty(IrisGrid, "defaultProps", {
|
|
|
4227
4222
|
onlyFetchVisibleColumns: true,
|
|
4228
4223
|
showSearchBar: false,
|
|
4229
4224
|
searchValue: '',
|
|
4230
|
-
selectedSearchColumns: null,
|
|
4231
4225
|
invertSearchColumns: true,
|
|
4232
4226
|
onContextMenu: () => EMPTY_ARRAY,
|
|
4233
4227
|
pendingDataMap: EMPTY_MAP,
|
|
@@ -4241,18 +4235,11 @@ _defineProperty(IrisGrid, "defaultProps", {
|
|
|
4241
4235
|
showEmptyStrings: true,
|
|
4242
4236
|
showNullStrings: true,
|
|
4243
4237
|
showExtraGroupColumn: true,
|
|
4244
|
-
formatter: EMPTY_ARRAY
|
|
4245
|
-
decimalFormatOptions: PropTypes.shape({
|
|
4246
|
-
defaultFormatString: PropTypes.string
|
|
4247
|
-
}),
|
|
4248
|
-
integerFormatOptions: PropTypes.shape({
|
|
4249
|
-
defaultFormatString: PropTypes.string
|
|
4250
|
-
})
|
|
4238
|
+
formatter: EMPTY_ARRAY
|
|
4251
4239
|
},
|
|
4252
4240
|
canCopy: true,
|
|
4253
4241
|
canDownloadCsv: true,
|
|
4254
|
-
frozenColumns:
|
|
4255
|
-
theme: null,
|
|
4242
|
+
frozenColumns: EMPTY_ARRAY,
|
|
4256
4243
|
// Do not set a default density prop since we need to know if it overrides the global density setting
|
|
4257
4244
|
density: undefined,
|
|
4258
4245
|
canToggleSearch: true,
|