@deephaven/iris-grid 1.4.1-beta.2 → 1.4.1-react19.43

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.
Files changed (214) hide show
  1. package/dist/AdvancedFilterCreator.js +5 -7
  2. package/dist/AdvancedFilterCreator.js.map +1 -1
  3. package/dist/AdvancedFilterCreatorFilterItem.js +6 -7
  4. package/dist/AdvancedFilterCreatorFilterItem.js.map +1 -1
  5. package/dist/AdvancedFilterCreatorSelectValue.js +1 -2
  6. package/dist/AdvancedFilterCreatorSelectValue.js.map +1 -1
  7. package/dist/AdvancedFilterCreatorSelectValueList.js +2 -3
  8. package/dist/AdvancedFilterCreatorSelectValueList.js.map +1 -1
  9. package/dist/ColumnHeaderGroup.js.map +1 -1
  10. package/dist/ColumnStatistics.d.ts +2 -2
  11. package/dist/ColumnStatistics.d.ts.map +1 -1
  12. package/dist/ColumnStatistics.js +2 -5
  13. package/dist/ColumnStatistics.js.map +1 -1
  14. package/dist/CommonTypes.js.map +1 -1
  15. package/dist/CrossColumnSearch.js +2 -4
  16. package/dist/CrossColumnSearch.js.map +1 -1
  17. package/dist/EmptyIrisGridModel.js.map +1 -1
  18. package/dist/FilterInputField.js +4 -5
  19. package/dist/FilterInputField.js.map +1 -1
  20. package/dist/GotoRow.js +4 -6
  21. package/dist/GotoRow.js.map +1 -1
  22. package/dist/IrisGrid.d.ts +35 -44
  23. package/dist/IrisGrid.d.ts.map +1 -1
  24. package/dist/IrisGrid.js +157 -170
  25. package/dist/IrisGrid.js.map +1 -1
  26. package/dist/IrisGridBottomBar.d.ts.map +1 -1
  27. package/dist/IrisGridBottomBar.js +4 -1
  28. package/dist/IrisGridBottomBar.js.map +1 -1
  29. package/dist/IrisGridCacheUtils.js.map +1 -1
  30. package/dist/IrisGridCellOverflowModal.js +1 -2
  31. package/dist/IrisGridCellOverflowModal.js.map +1 -1
  32. package/dist/IrisGridCellRendererUtils.js.map +1 -1
  33. package/dist/IrisGridCopyHandler.js +4 -6
  34. package/dist/IrisGridCopyHandler.js.map +1 -1
  35. package/dist/IrisGridDataBarCellRenderer.js.map +1 -1
  36. package/dist/IrisGridIcons.js.map +1 -1
  37. package/dist/IrisGridMetricCalculator.d.ts +1 -2
  38. package/dist/IrisGridMetricCalculator.d.ts.map +1 -1
  39. package/dist/IrisGridMetricCalculator.js.map +1 -1
  40. package/dist/IrisGridModel.js.map +1 -1
  41. package/dist/IrisGridModelFactory.js.map +1 -1
  42. package/dist/IrisGridModelUpdater.js.map +1 -1
  43. package/dist/IrisGridPartitionSelector.d.ts.map +1 -1
  44. package/dist/IrisGridPartitionSelector.js +6 -8
  45. package/dist/IrisGridPartitionSelector.js.map +1 -1
  46. package/dist/IrisGridPartitionedTableModel.js.map +1 -1
  47. package/dist/IrisGridProxyModel.js +6 -7
  48. package/dist/IrisGridProxyModel.js.map +1 -1
  49. package/dist/IrisGridRenderer.js +0 -1
  50. package/dist/IrisGridRenderer.js.map +1 -1
  51. package/dist/IrisGridShortcuts.js.map +1 -1
  52. package/dist/IrisGridTableModel.js +1 -2
  53. package/dist/IrisGridTableModel.js.map +1 -1
  54. package/dist/IrisGridTableModelTemplate.d.ts +1 -1
  55. package/dist/IrisGridTableModelTemplate.d.ts.map +1 -1
  56. package/dist/IrisGridTableModelTemplate.js +57 -61
  57. package/dist/IrisGridTableModelTemplate.js.map +1 -1
  58. package/dist/IrisGridTestUtils.js.map +1 -1
  59. package/dist/IrisGridTextCellRenderer.js.map +1 -1
  60. package/dist/IrisGridTheme.js.map +1 -1
  61. package/dist/IrisGridThemeProvider.d.ts.map +1 -1
  62. package/dist/IrisGridThemeProvider.js +1 -0
  63. package/dist/IrisGridThemeProvider.js.map +1 -1
  64. package/dist/IrisGridTreeTableModel.js +12 -13
  65. package/dist/IrisGridTreeTableModel.js.map +1 -1
  66. package/dist/IrisGridUtils.js +58 -58
  67. package/dist/IrisGridUtils.js.map +1 -1
  68. package/dist/LazyIrisGrid.d.ts +55 -78
  69. package/dist/LazyIrisGrid.d.ts.map +1 -1
  70. package/dist/LazyIrisGrid.js +3 -1
  71. package/dist/LazyIrisGrid.js.map +1 -1
  72. package/dist/MissingKeyError.js.map +1 -1
  73. package/dist/MissingPartitionError.js.map +1 -1
  74. package/dist/NoPastePermissionModal.js +1 -2
  75. package/dist/NoPastePermissionModal.js.map +1 -1
  76. package/dist/PartitionedGridModel.js.map +1 -1
  77. package/dist/PendingDataBottomBar.js +1 -2
  78. package/dist/PendingDataBottomBar.js.map +1 -1
  79. package/dist/ToastBottomBar.js.map +1 -1
  80. package/dist/declaration.d.js.map +1 -1
  81. package/dist/format-context-menus/CustomFormatAction.js +1 -2
  82. package/dist/format-context-menus/CustomFormatAction.js.map +1 -1
  83. package/dist/format-context-menus/DateTimeFormatContextMenu.js.map +1 -1
  84. package/dist/format-context-menus/DecimalFormatContextMenu.js.map +1 -1
  85. package/dist/format-context-menus/FormatContextMenuUtils.js.map +1 -1
  86. package/dist/format-context-menus/IntegerFormatContextMenu.js.map +1 -1
  87. package/dist/format-context-menus/TextAlignmentFormatContextMenu.js +6 -4
  88. package/dist/format-context-menus/TextAlignmentFormatContextMenu.js.map +1 -1
  89. package/dist/format-context-menus/index.js.map +1 -1
  90. package/dist/index.js.map +1 -1
  91. package/dist/key-handlers/ClearFilterKeyHandler.js.map +1 -1
  92. package/dist/key-handlers/CopyCellKeyHandler.js.map +1 -1
  93. package/dist/key-handlers/CopyKeyHandler.js.map +1 -1
  94. package/dist/key-handlers/ReverseKeyHandler.js.map +1 -1
  95. package/dist/key-handlers/index.js.map +1 -1
  96. package/dist/mousehandlers/IrisGridCellOverflowMouseHandler.js.map +1 -1
  97. package/dist/mousehandlers/IrisGridColumnSelectMouseHandler.js.map +1 -1
  98. package/dist/mousehandlers/IrisGridColumnTooltipMouseHandler.d.ts.map +1 -1
  99. package/dist/mousehandlers/IrisGridColumnTooltipMouseHandler.js +5 -2
  100. package/dist/mousehandlers/IrisGridColumnTooltipMouseHandler.js.map +1 -1
  101. package/dist/mousehandlers/IrisGridContextMenuHandler.js +1 -2
  102. package/dist/mousehandlers/IrisGridContextMenuHandler.js.map +1 -1
  103. package/dist/mousehandlers/IrisGridCopyCellMouseHandler.js.map +1 -1
  104. package/dist/mousehandlers/IrisGridDataSelectMouseHandler.js.map +1 -1
  105. package/dist/mousehandlers/IrisGridFilterMouseHandler.js.map +1 -1
  106. package/dist/mousehandlers/IrisGridPartitionedTableMouseHandler.js.map +1 -1
  107. package/dist/mousehandlers/IrisGridRowTreeMouseHandler.js.map +1 -1
  108. package/dist/mousehandlers/IrisGridSortMouseHandler.js.map +1 -1
  109. package/dist/mousehandlers/IrisGridTokenMouseHandler.js +1 -3
  110. package/dist/mousehandlers/IrisGridTokenMouseHandler.js.map +1 -1
  111. package/dist/mousehandlers/PendingMouseHandler.js.map +1 -1
  112. package/dist/mousehandlers/index.js.map +1 -1
  113. package/dist/sidebar/AdvancedSettings.js.map +1 -1
  114. package/dist/sidebar/AdvancedSettingsMenu.d.ts +1 -1
  115. package/dist/sidebar/AdvancedSettingsMenu.d.ts.map +1 -1
  116. package/dist/sidebar/AdvancedSettingsMenu.js.map +1 -1
  117. package/dist/sidebar/AdvancedSettingsType.js +3 -3
  118. package/dist/sidebar/AdvancedSettingsType.js.map +1 -1
  119. package/dist/sidebar/ChartBuilder.d.ts +2 -2
  120. package/dist/sidebar/ChartBuilder.d.ts.map +1 -1
  121. package/dist/sidebar/ChartBuilder.js +1 -2
  122. package/dist/sidebar/ChartBuilder.js.map +1 -1
  123. package/dist/sidebar/CustomColumnBuilder.d.ts +1 -1
  124. package/dist/sidebar/CustomColumnBuilder.d.ts.map +1 -1
  125. package/dist/sidebar/CustomColumnBuilder.js +4 -6
  126. package/dist/sidebar/CustomColumnBuilder.js.map +1 -1
  127. package/dist/sidebar/CustomColumnInput.js +2 -3
  128. package/dist/sidebar/CustomColumnInput.js.map +1 -1
  129. package/dist/sidebar/DownloadServiceWorkerUtils.js +1 -1
  130. package/dist/sidebar/DownloadServiceWorkerUtils.js.map +1 -1
  131. package/dist/sidebar/InputEditor.js +8 -9
  132. package/dist/sidebar/InputEditor.js.map +1 -1
  133. package/dist/sidebar/OptionType.js +3 -3
  134. package/dist/sidebar/OptionType.js.map +1 -1
  135. package/dist/sidebar/RollupRows.d.ts +1 -1
  136. package/dist/sidebar/RollupRows.d.ts.map +1 -1
  137. package/dist/sidebar/RollupRows.js +9 -11
  138. package/dist/sidebar/RollupRows.js.map +1 -1
  139. package/dist/sidebar/SelectDistinctBuilder.js +1 -2
  140. package/dist/sidebar/SelectDistinctBuilder.js.map +1 -1
  141. package/dist/sidebar/TableCsvExporter.js +5 -7
  142. package/dist/sidebar/TableCsvExporter.js.map +1 -1
  143. package/dist/sidebar/TableSaver.js +9 -10
  144. package/dist/sidebar/TableSaver.js.map +1 -1
  145. package/dist/sidebar/aggregations/AggregationEdit.js +4 -5
  146. package/dist/sidebar/aggregations/AggregationEdit.js.map +1 -1
  147. package/dist/sidebar/aggregations/AggregationOperation.js +3 -3
  148. package/dist/sidebar/aggregations/AggregationOperation.js.map +1 -1
  149. package/dist/sidebar/aggregations/AggregationUtils.js +0 -1
  150. package/dist/sidebar/aggregations/AggregationUtils.js.map +1 -1
  151. package/dist/sidebar/aggregations/Aggregations.d.ts.map +1 -1
  152. package/dist/sidebar/aggregations/Aggregations.js +3 -5
  153. package/dist/sidebar/aggregations/Aggregations.js.map +1 -1
  154. package/dist/sidebar/aggregations/index.js.map +1 -1
  155. package/dist/sidebar/conditional-formatting/ColumnFormatEditor.d.ts.map +1 -1
  156. package/dist/sidebar/conditional-formatting/ColumnFormatEditor.js +1 -3
  157. package/dist/sidebar/conditional-formatting/ColumnFormatEditor.js.map +1 -1
  158. package/dist/sidebar/conditional-formatting/ConditionEditor.d.ts.map +1 -1
  159. package/dist/sidebar/conditional-formatting/ConditionEditor.js +2 -3
  160. package/dist/sidebar/conditional-formatting/ConditionEditor.js.map +1 -1
  161. package/dist/sidebar/conditional-formatting/ConditionalFormatEditor.js +1 -2
  162. package/dist/sidebar/conditional-formatting/ConditionalFormatEditor.js.map +1 -1
  163. package/dist/sidebar/conditional-formatting/ConditionalFormattingAPIUtils.js.map +1 -1
  164. package/dist/sidebar/conditional-formatting/ConditionalFormattingMenu.js +2 -3
  165. package/dist/sidebar/conditional-formatting/ConditionalFormattingMenu.js.map +1 -1
  166. package/dist/sidebar/conditional-formatting/ConditionalFormattingUtils.js +21 -21
  167. package/dist/sidebar/conditional-formatting/ConditionalFormattingUtils.js.map +1 -1
  168. package/dist/sidebar/conditional-formatting/RowFormatEditor.d.ts.map +1 -1
  169. package/dist/sidebar/conditional-formatting/RowFormatEditor.js +1 -3
  170. package/dist/sidebar/conditional-formatting/RowFormatEditor.js.map +1 -1
  171. package/dist/sidebar/conditional-formatting/StyleEditor.d.ts.map +1 -1
  172. package/dist/sidebar/conditional-formatting/StyleEditor.js +2 -3
  173. package/dist/sidebar/conditional-formatting/StyleEditor.js.map +1 -1
  174. package/dist/sidebar/icons/BarIcon.js +1 -2
  175. package/dist/sidebar/icons/BarIcon.js.map +1 -1
  176. package/dist/sidebar/icons/FormatColumnWhereIcon.js +1 -2
  177. package/dist/sidebar/icons/FormatColumnWhereIcon.js.map +1 -1
  178. package/dist/sidebar/icons/FormatRowWhereIcon.js +1 -2
  179. package/dist/sidebar/icons/FormatRowWhereIcon.js.map +1 -1
  180. package/dist/sidebar/icons/HistogramIcon.js +1 -2
  181. package/dist/sidebar/icons/HistogramIcon.js.map +1 -1
  182. package/dist/sidebar/icons/LineIcon.js +1 -2
  183. package/dist/sidebar/icons/LineIcon.js.map +1 -1
  184. package/dist/sidebar/icons/PieIcon.js +1 -2
  185. package/dist/sidebar/icons/PieIcon.js.map +1 -1
  186. package/dist/sidebar/icons/ScatterIcon.js +1 -2
  187. package/dist/sidebar/icons/ScatterIcon.js.map +1 -1
  188. package/dist/sidebar/icons/index.js.map +1 -1
  189. package/dist/sidebar/index.js.map +1 -1
  190. package/dist/sidebar/visibility-ordering-builder/VisibilityOrderingBuilder.d.ts +2 -2
  191. package/dist/sidebar/visibility-ordering-builder/VisibilityOrderingBuilder.d.ts.map +1 -1
  192. package/dist/sidebar/visibility-ordering-builder/VisibilityOrderingBuilder.js +34 -36
  193. package/dist/sidebar/visibility-ordering-builder/VisibilityOrderingBuilder.js.map +1 -1
  194. package/dist/sidebar/visibility-ordering-builder/VisibilityOrderingBuilderUtils.js +3 -3
  195. package/dist/sidebar/visibility-ordering-builder/VisibilityOrderingBuilderUtils.js.map +1 -1
  196. package/dist/sidebar/visibility-ordering-builder/VisibilityOrderingGroup.js +3 -5
  197. package/dist/sidebar/visibility-ordering-builder/VisibilityOrderingGroup.js.map +1 -1
  198. package/dist/sidebar/visibility-ordering-builder/VisibilityOrderingItem.d.ts.map +1 -1
  199. package/dist/sidebar/visibility-ordering-builder/VisibilityOrderingItem.js +2 -4
  200. package/dist/sidebar/visibility-ordering-builder/VisibilityOrderingItem.js.map +1 -1
  201. package/dist/sidebar/visibility-ordering-builder/sortable-tree/PointerSensorWithInteraction.js.map +1 -1
  202. package/dist/sidebar/visibility-ordering-builder/sortable-tree/SortableTree.js +4 -4
  203. package/dist/sidebar/visibility-ordering-builder/sortable-tree/SortableTree.js.map +1 -1
  204. package/dist/sidebar/visibility-ordering-builder/sortable-tree/SortableTreeInner.js +3 -6
  205. package/dist/sidebar/visibility-ordering-builder/sortable-tree/SortableTreeInner.js.map +1 -1
  206. package/dist/sidebar/visibility-ordering-builder/sortable-tree/SortableTreeItem.js.map +1 -1
  207. package/dist/sidebar/visibility-ordering-builder/sortable-tree/TreeItem.js +1 -2
  208. package/dist/sidebar/visibility-ordering-builder/sortable-tree/TreeItem.js.map +1 -1
  209. package/dist/sidebar/visibility-ordering-builder/sortable-tree/keyboardCoordinates.js.map +1 -1
  210. package/dist/sidebar/visibility-ordering-builder/sortable-tree/types.js.map +1 -1
  211. package/dist/sidebar/visibility-ordering-builder/sortable-tree/utilities.d.ts +1 -2
  212. package/dist/sidebar/visibility-ordering-builder/sortable-tree/utilities.d.ts.map +1 -1
  213. package/dist/sidebar/visibility-ordering-builder/sortable-tree/utilities.js.map +1 -1
  214. 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$layoutHints$hi, _model$columns$0$name, _model$columns$;
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 ? 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) {
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
  }
@@ -410,6 +416,7 @@ class IrisGrid extends Component {
410
416
  leading: false,
411
417
  trailing: true
412
418
  }));
419
+ // Apply live changes
413
420
  _defineProperty(this, "handleConditionalFormatEditorUpdate", debounce(conditionalFormatPreview => {
414
421
  this.setState({
415
422
  conditionalFormatPreview
@@ -694,7 +701,7 @@ class IrisGrid extends Component {
694
701
  userColumnWidths: new Map(_userColumnWidths),
695
702
  userRowHeights: new Map(userRowHeights),
696
703
  movedColumns: _movedColumns,
697
- initialColumnWidths: new Map(_model === null || _model === void 0 ? void 0 : (_model$layoutHints = _model.layoutHints) === null || _model$layoutHints === void 0 ? void 0 : (_model$layoutHints$hi = _model$layoutHints.hiddenColumns) === null || _model$layoutHints$hi === void 0 ? void 0 : _model$layoutHints$hi.map(name => [_model.getColumnIndexByName(name), 0]))
704
+ 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]))
698
705
  });
699
706
  var searchColumns = _selectedSearchColumns !== null && _selectedSearchColumns !== void 0 ? _selectedSearchColumns : [];
700
707
  var _searchFilter = CrossColumnSearch.createSearchFilter(_dh, _searchValue, searchColumns, _model.columns, _invertSearchColumns);
@@ -891,23 +898,10 @@ class IrisGrid extends Component {
891
898
  }
892
899
  this.showViewportLoading.cancel();
893
900
  }
894
-
895
- // When the loading scrim started/when it should extend to the end of the screen.
896
-
897
901
  get gridWrapper() {
898
902
  var _this$grid$canvasWrap, _this$grid;
899
903
  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;
900
904
  }
901
-
902
- /**
903
- * Builds formatColumns array based on the provided formatting rules with optional preview
904
- * @param columns Array of columns
905
- * @param rulesParam Array of formatting rules
906
- * @param preview Optional temporary formatting rule for previewing live changes
907
- * @param editIndex Index in the rulesParam array to replace with the preview, null if preview not applicable
908
- * @returns Format columns array
909
- */
910
-
911
905
  getKeyHandlers() {
912
906
  var {
913
907
  keyHandlers
@@ -937,15 +931,15 @@ class IrisGrid extends Component {
937
931
  var modelColumn = this.getModelColumn(columnIndex);
938
932
  var modelRow = this.getModelRow(rowIndex);
939
933
  if (rawValue && modelColumn != null && modelRow != null) {
940
- var _value = model.valueForCell(modelColumn, modelRow);
934
+ var value = model.valueForCell(modelColumn, modelRow);
941
935
  if (TableUtils.isDateType(model.columns[modelColumn].type)) {
942
936
  // The returned value is just a long value, we should return the value formatted as a full date string
943
937
  var {
944
938
  formatter
945
939
  } = model;
946
- return dh.i18n.DateTimeFormat.format(UNFORMATTED_DATE_PATTERN, _value, dh.i18n.TimeZone.getTimeZone(formatter.timeZone));
940
+ return dh.i18n.DateTimeFormat.format(UNFORMATTED_DATE_PATTERN, value, dh.i18n.TimeZone.getTimeZone(formatter.timeZone));
947
941
  }
948
- return _value;
942
+ return value;
949
943
  }
950
944
  if (rawValue) {
951
945
  return null;
@@ -1188,11 +1182,11 @@ class IrisGrid extends Component {
1188
1182
  resetRanges: true
1189
1183
  });
1190
1184
  var clearRange = Array.isArray(modelRange) ? modelRange : [modelRange, modelRange];
1191
- this.setState(_ref10 => {
1185
+ this.setState(_ref0 => {
1192
1186
  var {
1193
1187
  advancedFilters,
1194
1188
  quickFilters
1195
- } = _ref10;
1189
+ } = _ref0;
1196
1190
  var newAdvancedFilters = advancedFilters ? new Map(advancedFilters) : new Map();
1197
1191
  var newQuickFilters = quickFilters ? new Map(quickFilters) : new Map();
1198
1192
  newAdvancedFilters.forEach((_, column) => {
@@ -1215,10 +1209,10 @@ class IrisGrid extends Component {
1215
1209
  this.startLoading('Clearing Filter...', {
1216
1210
  resetRanges: true
1217
1211
  });
1218
- this.setState(_ref11 => {
1212
+ this.setState(_ref1 => {
1219
1213
  var {
1220
1214
  quickFilters
1221
- } = _ref11;
1215
+ } = _ref1;
1222
1216
  var newQuickFilters = new Map(quickFilters);
1223
1217
  newQuickFilters.delete(modelColumn);
1224
1218
  return {
@@ -1315,11 +1309,11 @@ class IrisGrid extends Component {
1315
1309
  advancedFilters: newAdvancedFilters
1316
1310
  });
1317
1311
  }
1318
- setFilters(_ref12) {
1312
+ setFilters(_ref10) {
1319
1313
  var {
1320
1314
  quickFilters,
1321
1315
  advancedFilters
1322
- } = _ref12;
1316
+ } = _ref10;
1323
1317
  this.setState({
1324
1318
  quickFilters,
1325
1319
  advancedFilters
@@ -1476,14 +1470,14 @@ class IrisGrid extends Component {
1476
1470
  keyTable.addEventListener(dh.Table.EVENT_UPDATED, event => {
1477
1471
  try {
1478
1472
  var {
1479
- detail: _data
1473
+ detail: data
1480
1474
  } = event;
1481
- if (_data.rows.length === 0) {
1475
+ if (data.rows.length === 0) {
1482
1476
  // We received an update and the table is still empty. Stop showing the loading spinner so we know
1483
1477
  _this2.stopLoading();
1484
1478
  return;
1485
1479
  }
1486
- var row = _data.rows[0];
1480
+ var row = data.rows[0];
1487
1481
  var values = keyTable.columns.map(column => row.get(column));
1488
1482
  var newPartition = {
1489
1483
  partitions: values,
@@ -1514,13 +1508,13 @@ class IrisGrid extends Component {
1514
1508
  } = this.props;
1515
1509
  assertNotNull(rowIndex);
1516
1510
  if (isPartitionedGridModel(model)) {
1517
- var _data2 = this.getRowDataMap(rowIndex);
1511
+ var data = this.getRowDataMap(rowIndex);
1518
1512
  var partitionColumnSet = new Set(model.partitionColumns.map(column => column.name));
1519
- var values = Object.entries(_data2).filter(_ref13 => {
1520
- var [key, _] = _ref13;
1513
+ var values = Object.entries(data).filter(_ref11 => {
1514
+ var [key, _] = _ref11;
1521
1515
  return partitionColumnSet.has(key);
1522
- }).map(_ref14 => {
1523
- var [key, columnData] = _ref14;
1516
+ }).map(_ref12 => {
1517
+ var [key, columnData] = _ref12;
1524
1518
  return columnData.value;
1525
1519
  });
1526
1520
  var newPartition = {
@@ -1539,8 +1533,8 @@ class IrisGrid extends Component {
1539
1533
  canCopy
1540
1534
  } = this.props;
1541
1535
  if (canCopy) {
1542
- var _value2 = String(this.getValueForCell(columnIndex, rowIndex, rawValue));
1543
- copyToClipboard(_value2).catch(e => log.error('Unable to copy cell', e));
1536
+ var value = String(this.getValueForCell(columnIndex, rowIndex, rawValue));
1537
+ copyToClipboard(value).catch(e => log.error('Unable to copy cell', e));
1544
1538
  } else {
1545
1539
  log.error('Attempted to copyCell for user without copy permission.');
1546
1540
  }
@@ -1731,7 +1725,7 @@ class IrisGrid extends Component {
1731
1725
  }
1732
1726
  focus() {
1733
1727
  var _this$grid2;
1734
- (_this$grid2 = this.grid) === null || _this$grid2 === void 0 ? void 0 : _this$grid2.focus();
1728
+ (_this$grid2 = this.grid) === null || _this$grid2 === void 0 || _this$grid2.focus();
1735
1729
  }
1736
1730
  focusFilterBar(column) {
1737
1731
  var {
@@ -1762,7 +1756,7 @@ class IrisGrid extends Component {
1762
1756
  } = metrics;
1763
1757
  if (column < left) {
1764
1758
  var _this$grid3;
1765
- (_this$grid3 = this.grid) === null || _this$grid3 === void 0 ? void 0 : _this$grid3.setViewState({
1759
+ (_this$grid3 = this.grid) === null || _this$grid3 === void 0 || _this$grid3.setViewState({
1766
1760
  left: column
1767
1761
  }, true);
1768
1762
  } else if (rightVisible < column) {
@@ -1770,7 +1764,7 @@ class IrisGrid extends Component {
1770
1764
  var metricState = (_this$grid4 = this.grid) === null || _this$grid4 === void 0 ? void 0 : _this$grid4.getMetricState();
1771
1765
  assertNotNull(metricState);
1772
1766
  var newLeft = metricCalculator.getLastLeft(metricState, column, metricCalculator.getVisibleWidth(metricState));
1773
- (_this$grid5 = this.grid) === null || _this$grid5 === void 0 ? void 0 : _this$grid5.setViewState({
1767
+ (_this$grid5 = this.grid) === null || _this$grid5 === void 0 || _this$grid5.setViewState({
1774
1768
  left: Math.min(newLeft, lastLeft),
1775
1769
  leftOffset: 0
1776
1770
  }, true);
@@ -1788,7 +1782,7 @@ class IrisGrid extends Component {
1788
1782
  movedColumns
1789
1783
  } = this.state;
1790
1784
  metricCalculator.setColumnWidth(GridUtils.getModelIndex(columnVisibleIndex, movedColumns), 0);
1791
- (_this$grid6 = this.grid) === null || _this$grid6 === void 0 ? void 0 : _this$grid6.forceUpdate();
1785
+ (_this$grid6 = this.grid) === null || _this$grid6 === void 0 || _this$grid6.forceUpdate();
1792
1786
  }
1793
1787
  freezeColumnByColumnName(columnName) {
1794
1788
  var {
@@ -1854,7 +1848,7 @@ class IrisGrid extends Component {
1854
1848
  metricCalculator.setColumnWidth(modelIndex, 0);
1855
1849
  });
1856
1850
  }
1857
- (_this$grid7 = this.grid) === null || _this$grid7 === void 0 ? void 0 : _this$grid7.forceUpdate();
1851
+ (_this$grid7 = this.grid) === null || _this$grid7 === void 0 || _this$grid7.forceUpdate();
1858
1852
  }
1859
1853
  handleColumnVisibilityReset() {
1860
1854
  var _model$layoutHints$fr, _model$layoutHints2;
@@ -1872,7 +1866,7 @@ class IrisGrid extends Component {
1872
1866
  this.handleMovedColumnsChanged(model.initialMovedColumns);
1873
1867
  this.handleHeaderGroupsChanged(model.initialColumnHeaderGroups);
1874
1868
  this.setState({
1875
- 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 : []
1869
+ 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
1876
1870
  });
1877
1871
  }
1878
1872
  handleCrossColumnSearch(searchValue, selectedSearchColumns, invertSearchColumns) {
@@ -1889,7 +1883,7 @@ class IrisGrid extends Component {
1889
1883
  }
1890
1884
  handleAnimationLoop() {
1891
1885
  var _this$grid8;
1892
- (_this$grid8 = this.grid) === null || _this$grid8 === void 0 ? void 0 : _this$grid8.updateCanvas();
1886
+ (_this$grid8 = this.grid) === null || _this$grid8 === void 0 || _this$grid8.updateCanvas();
1893
1887
  if (this.isAnimating) {
1894
1888
  this.animationFrame = requestAnimationFrame(this.handleAnimationLoop);
1895
1889
  }
@@ -1955,7 +1949,7 @@ class IrisGrid extends Component {
1955
1949
  metricCalculator.resetColumnWidth(modelIndex);
1956
1950
  }
1957
1951
  }
1958
- (_this$grid9 = this.grid) === null || _this$grid9 === void 0 ? void 0 : _this$grid9.forceUpdate();
1952
+ (_this$grid9 = this.grid) === null || _this$grid9 === void 0 || _this$grid9.forceUpdate();
1959
1953
  }
1960
1954
  toggleSort(columnIndex, addToExisting) {
1961
1955
  log.info('Toggling sort for column', columnIndex);
@@ -1975,15 +1969,15 @@ class IrisGrid extends Component {
1975
1969
  }
1976
1970
  }
1977
1971
  updateSorts(sorts) {
1978
- var _this$grid10;
1972
+ var _this$grid0;
1979
1973
  this.startLoading('Sorting...');
1980
1974
  this.setState({
1981
1975
  sorts
1982
1976
  });
1983
- (_this$grid10 = this.grid) === null || _this$grid10 === void 0 ? void 0 : _this$grid10.forceUpdate();
1977
+ (_this$grid0 = this.grid) === null || _this$grid0 === void 0 || _this$grid0.forceUpdate();
1984
1978
  }
1985
1979
  sortColumn(modelColumn) {
1986
- var _this$grid11;
1980
+ var _this$grid1;
1987
1981
  var direction = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : TableUtils.sortDirection.none;
1988
1982
  var isAbs = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
1989
1983
  var addToExisting = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : false;
@@ -1996,15 +1990,15 @@ class IrisGrid extends Component {
1996
1990
  this.setState({
1997
1991
  sorts
1998
1992
  });
1999
- (_this$grid11 = this.grid) === null || _this$grid11 === void 0 ? void 0 : _this$grid11.forceUpdate();
1993
+ (_this$grid1 = this.grid) === null || _this$grid1 === void 0 || _this$grid1.forceUpdate();
2000
1994
  }
2001
1995
  reverse(reverse) {
2002
- var _this$grid12;
1996
+ var _this$grid10;
2003
1997
  this.startLoading('Reversing...');
2004
1998
  this.setState({
2005
1999
  reverse
2006
2000
  });
2007
- (_this$grid12 = this.grid) === null || _this$grid12 === void 0 ? void 0 : _this$grid12.forceUpdate();
2001
+ (_this$grid10 = this.grid) === null || _this$grid10 === void 0 || _this$grid10.forceUpdate();
2008
2002
  }
2009
2003
  isReversible() {
2010
2004
  var {
@@ -2027,16 +2021,16 @@ class IrisGrid extends Component {
2027
2021
  } else {
2028
2022
  var columnIndex = 0;
2029
2023
  var {
2030
- model: _model2
2024
+ model
2031
2025
  } = this.props;
2032
2026
  var {
2033
2027
  columnCount
2034
- } = _model2;
2028
+ } = model;
2035
2029
  for (var i = 0; i < columnCount; i += 1) {
2036
2030
  var modelColumn = this.getModelColumn(i);
2037
2031
  if (modelColumn != null) {
2038
- var _column = _model2.columns[modelColumn];
2039
- if (_column != null && TableUtils.isTextType(_column.type)) {
2032
+ var column = model.columns[modelColumn];
2033
+ if (column != null && TableUtils.isTextType(column.type)) {
2040
2034
  columnIndex = i;
2041
2035
  break;
2042
2036
  }
@@ -2045,8 +2039,8 @@ class IrisGrid extends Component {
2045
2039
  this.focusFilterBar(columnIndex);
2046
2040
  }
2047
2041
  } else {
2048
- var _this$grid13;
2049
- (_this$grid13 = this.grid) === null || _this$grid13 === void 0 ? void 0 : _this$grid13.focus();
2042
+ var _this$grid11;
2043
+ (_this$grid11 = this.grid) === null || _this$grid11 === void 0 || _this$grid11.focus();
2050
2044
  }
2051
2045
  }
2052
2046
  isTableSearchAvailable() {
@@ -2058,7 +2052,7 @@ class IrisGrid extends Component {
2058
2052
  var {
2059
2053
  dh
2060
2054
  } = model;
2061
- var searchDisplayMode = model === null || model === void 0 ? void 0 : (_model$layoutHints3 = model.layoutHints) === null || _model$layoutHints3 === void 0 ? void 0 : _model$layoutHints3.searchDisplayMode;
2055
+ var searchDisplayMode = model === null || model === void 0 || (_model$layoutHints3 = model.layoutHints) === null || _model$layoutHints3 === void 0 ? void 0 : _model$layoutHints3.searchDisplayMode;
2062
2056
  if (searchDisplayMode === ((_dh$SearchDisplayMode = dh.SearchDisplayMode) === null || _dh$SearchDisplayMode === void 0 ? void 0 : _dh$SearchDisplayMode.SEARCH_DISPLAY_HIDE)) {
2063
2057
  return false;
2064
2058
  }
@@ -2081,15 +2075,15 @@ class IrisGrid extends Component {
2081
2075
  var _this$crossColumnRef;
2082
2076
  if (update && (_this$crossColumnRef = this.crossColumnRef) !== null && _this$crossColumnRef !== void 0 && _this$crossColumnRef.current) {
2083
2077
  var _this$crossColumnRef2;
2084
- (_this$crossColumnRef2 = this.crossColumnRef) === null || _this$crossColumnRef2 === void 0 ? void 0 : _this$crossColumnRef2.current.focus();
2078
+ (_this$crossColumnRef2 = this.crossColumnRef) === null || _this$crossColumnRef2 === void 0 || _this$crossColumnRef2.current.focus();
2085
2079
  } else {
2086
- var _this$grid14;
2087
- (_this$grid14 = this.grid) === null || _this$grid14 === void 0 ? void 0 : _this$grid14.focus();
2080
+ var _this$grid12;
2081
+ (_this$grid12 = this.grid) === null || _this$grid12 === void 0 || _this$grid12.focus();
2088
2082
  }
2089
2083
  });
2090
2084
  }
2091
2085
  toggleGotoRow() {
2092
- var _this$grid15, _this$grid16;
2086
+ var _this$grid13, _this$grid14;
2093
2087
  var row = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
2094
2088
  var value = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';
2095
2089
  var columnName = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : '';
@@ -2108,11 +2102,11 @@ class IrisGrid extends Component {
2108
2102
  gotoValueManuallyChanged: false
2109
2103
  });
2110
2104
  this.focusRowInGrid(row);
2111
- (_this$gotoRowRef$curr = this.gotoRowRef.current) === null || _this$gotoRowRef$curr === void 0 ? void 0 : _this$gotoRowRef$curr.focus();
2105
+ (_this$gotoRowRef$curr = this.gotoRowRef.current) === null || _this$gotoRowRef$curr === void 0 || _this$gotoRowRef$curr.focus();
2112
2106
  return;
2113
2107
  }
2114
- var cursorRow = (_this$grid15 = this.grid) === null || _this$grid15 === void 0 ? void 0 : _this$grid15.state.cursorRow;
2115
- var cursorColumn = (_this$grid16 = this.grid) === null || _this$grid16 === void 0 ? void 0 : _this$grid16.state.cursorColumn;
2108
+ var cursorRow = (_this$grid13 = this.grid) === null || _this$grid13 === void 0 ? void 0 : _this$grid13.state.cursorRow;
2109
+ var cursorColumn = (_this$grid14 = this.grid) === null || _this$grid14 === void 0 ? void 0 : _this$grid14.state.cursorColumn;
2116
2110
  if (cursorRow == null || cursorColumn == null) {
2117
2111
  // if a cell is not selected / grid is not rendered
2118
2112
  this.setState({
@@ -2148,7 +2142,7 @@ class IrisGrid extends Component {
2148
2142
  commitPending() {
2149
2143
  var _this3 = this;
2150
2144
  return _asyncToGenerator(function* () {
2151
- var _document, _document$activeEleme;
2145
+ var _document;
2152
2146
  var {
2153
2147
  model
2154
2148
  } = _this3.props;
@@ -2161,7 +2155,7 @@ class IrisGrid extends Component {
2161
2155
  if (pendingSavePromise != null) {
2162
2156
  throw new Error('Save already in progress');
2163
2157
  }
2164
- var containsGridCellInputField = (_document = document) === null || _document === void 0 ? void 0 : (_document$activeEleme = _document.activeElement) === null || _document$activeEleme === void 0 ? void 0 : _document$activeEleme.classList.contains('grid-cell-input-field');
2158
+ var containsGridCellInputField = (_document = document) === null || _document === void 0 || (_document = _document.activeElement) === null || _document === void 0 ? void 0 : _document.classList.contains('grid-cell-input-field');
2165
2159
  if (containsGridCellInputField != null && containsGridCellInputField) {
2166
2160
  var _this3$grid;
2167
2161
  if (document.activeElement != null && document.activeElement.classList.contains('error')) {
@@ -2169,7 +2163,7 @@ class IrisGrid extends Component {
2169
2163
  }
2170
2164
 
2171
2165
  // Focus the grid again to commit any pending input changes
2172
- (_this3$grid = _this3.grid) === null || _this3$grid === void 0 ? void 0 : _this3$grid.focus();
2166
+ (_this3$grid = _this3.grid) === null || _this3$grid === void 0 || _this3$grid.focus();
2173
2167
  }
2174
2168
  var newPendingSavePromise = _this3.pending.add(model.commitPending()).then(() => {
2175
2169
  _this3.setState({
@@ -2279,7 +2273,7 @@ class IrisGrid extends Component {
2279
2273
  this.setAdvancedFilter(index, filter, options);
2280
2274
  }
2281
2275
  handleAdvancedFilterSortChange(column, direction) {
2282
- var _this$grid17;
2276
+ var _this$grid15;
2283
2277
  var addToExisting = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
2284
2278
  var {
2285
2279
  model
@@ -2302,11 +2296,11 @@ class IrisGrid extends Component {
2302
2296
  this.setState({
2303
2297
  sorts
2304
2298
  });
2305
- (_this$grid17 = this.grid) === null || _this$grid17 === void 0 ? void 0 : _this$grid17.forceUpdate();
2299
+ (_this$grid15 = this.grid) === null || _this$grid15 === void 0 || _this$grid15.forceUpdate();
2306
2300
  }
2307
2301
  handleAdvancedFilterDone() {
2308
- var _this$grid18;
2309
- (_this$grid18 = this.grid) === null || _this$grid18 === void 0 ? void 0 : _this$grid18.focus();
2302
+ var _this$grid16;
2303
+ (_this$grid16 = this.grid) === null || _this$grid16 === void 0 || _this$grid16.focus();
2310
2304
  }
2311
2305
  handleAdvancedMenuOpened(column) {
2312
2306
  this.setState({
@@ -2333,7 +2327,7 @@ class IrisGrid extends Component {
2333
2327
  } = this.state;
2334
2328
  if (isFilterBarShown && focusedFilterBarColumn === columnIndex && ((_this$filterInputRef = this.filterInputRef) === null || _this$filterInputRef === void 0 ? void 0 : _this$filterInputRef.current) !== null) {
2335
2329
  var _this$filterInputRef2;
2336
- (_this$filterInputRef2 = this.filterInputRef) === null || _this$filterInputRef2 === void 0 ? void 0 : _this$filterInputRef2.current.focus();
2330
+ (_this$filterInputRef2 = this.filterInputRef) === null || _this$filterInputRef2 === void 0 || _this$filterInputRef2.current.focus();
2337
2331
  this.setState({
2338
2332
  shownAdvancedFilter: null
2339
2333
  });
@@ -2372,11 +2366,11 @@ class IrisGrid extends Component {
2372
2366
  this.startLoading('Filtering...', {
2373
2367
  resetRanges: true
2374
2368
  });
2375
- this.setState(_ref15 => {
2369
+ this.setState(_ref13 => {
2376
2370
  var {
2377
2371
  focusedFilterBarColumn,
2378
2372
  quickFilters
2379
- } = _ref15;
2373
+ } = _ref13;
2380
2374
  var newQuickFilters = new Map(quickFilters);
2381
2375
  if (focusedFilterBarColumn != null) {
2382
2376
  var modelIndex = this.getModelColumn(focusedFilterBarColumn);
@@ -2392,8 +2386,8 @@ class IrisGrid extends Component {
2392
2386
  var setGridFocus = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;
2393
2387
  var defocusInput = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
2394
2388
  if (setGridFocus) {
2395
- var _this$grid19;
2396
- (_this$grid19 = this.grid) === null || _this$grid19 === void 0 ? void 0 : _this$grid19.focus();
2389
+ var _this$grid17;
2390
+ (_this$grid17 = this.grid) === null || _this$grid17 === void 0 || _this$grid17.focus();
2397
2391
  }
2398
2392
  if (defocusInput) {
2399
2393
  this.setState({
@@ -2438,10 +2432,10 @@ class IrisGrid extends Component {
2438
2432
  model
2439
2433
  } = this.props;
2440
2434
  var column = model.columns[modelIndex];
2441
- this.setState(_ref16 => {
2435
+ this.setState(_ref14 => {
2442
2436
  var {
2443
2437
  columnAlignmentMap = EMPTY_MAP
2444
- } = _ref16;
2438
+ } = _ref14;
2445
2439
  var newColumnAlignmentMap = new Map(columnAlignmentMap);
2446
2440
  if (alignment != null) {
2447
2441
  newColumnAlignmentMap.set(column.name, alignment);
@@ -2466,10 +2460,10 @@ class IrisGrid extends Component {
2466
2460
  });
2467
2461
  }
2468
2462
  handleMenuBack() {
2469
- this.setState(_ref17 => {
2463
+ this.setState(_ref15 => {
2470
2464
  var {
2471
2465
  openOptions
2472
- } = _ref17;
2466
+ } = _ref15;
2473
2467
  var newOptions = [...openOptions];
2474
2468
  newOptions.pop();
2475
2469
  return {
@@ -2478,10 +2472,10 @@ class IrisGrid extends Component {
2478
2472
  });
2479
2473
  }
2480
2474
  handleMenuSelect(option) {
2481
- this.setState(_ref18 => {
2475
+ this.setState(_ref16 => {
2482
2476
  var {
2483
2477
  openOptions
2484
- } = _ref18;
2478
+ } = _ref16;
2485
2479
  return {
2486
2480
  openOptions: [...openOptions, option]
2487
2481
  };
@@ -2520,7 +2514,7 @@ class IrisGrid extends Component {
2520
2514
  }
2521
2515
  }
2522
2516
  handleUpdate() {
2523
- var _this$grid20;
2517
+ var _this$grid18;
2524
2518
  log.debug2('Received model update');
2525
2519
  var {
2526
2520
  advancedFilters,
@@ -2549,7 +2543,7 @@ class IrisGrid extends Component {
2549
2543
  } else {
2550
2544
  this.lastLoadedConfig = null;
2551
2545
  }
2552
- (_this$grid20 = this.grid) === null || _this$grid20 === void 0 ? void 0 : _this$grid20.forceUpdate();
2546
+ (_this$grid18 = this.grid) === null || _this$grid18 === void 0 || _this$grid18.forceUpdate();
2553
2547
  this.stopLoading();
2554
2548
  }
2555
2549
  handleTableChanged() {
@@ -2562,13 +2556,13 @@ class IrisGrid extends Component {
2562
2556
  });
2563
2557
  }
2564
2558
  handleViewChanged(metrics) {
2565
- var _this$grid$state, _this$grid21;
2559
+ var _this$grid$state, _this$grid19;
2566
2560
  var {
2567
2561
  model
2568
2562
  } = this.props;
2569
2563
  var {
2570
2564
  selectionEndRow = 0
2571
- } = (_this$grid$state = (_this$grid21 = this.grid) === null || _this$grid21 === void 0 ? void 0 : _this$grid21.state) !== null && _this$grid$state !== void 0 ? _this$grid$state : {};
2565
+ } = (_this$grid$state = (_this$grid19 = this.grid) === null || _this$grid19 === void 0 ? void 0 : _this$grid19.state) !== null && _this$grid$state !== void 0 ? _this$grid$state : {};
2572
2566
  var pendingRowCount = 0;
2573
2567
  if (isEditableGridModel(model) && model.isEditable) {
2574
2568
  assertNotNull(metrics);
@@ -2596,7 +2590,6 @@ class IrisGrid extends Component {
2596
2590
  });
2597
2591
  }
2598
2592
  handleSelectionChanged(selectedRanges) {
2599
- var _this$grid22;
2600
2593
  assertNotNull(selectedRanges);
2601
2594
  var {
2602
2595
  onSelectionChanged
@@ -2612,9 +2605,14 @@ class IrisGrid extends Component {
2612
2605
  copyOperation: null
2613
2606
  });
2614
2607
  }
2615
- if (((_this$grid22 = this.grid) === null || _this$grid22 === void 0 ? void 0 : _this$grid22.state.cursorRow) != null) {
2608
+
2609
+ // We get 2 identical ranges here,
2610
+ // but consolidating in `Grid#moveSelection` causes
2611
+ // deselection to break, so just consolidate here.
2612
+ // This will only update the goto row input for row index
2613
+ if (GridRange.rowCount(GridRange.consolidate(selectedRanges)) === 1 && selectedRanges[0].startRow != null) {
2616
2614
  this.setState({
2617
- gotoRow: "".concat(this.grid.state.cursorRow + 1)
2615
+ gotoRow: "".concat(selectedRanges[0].startRow + 1)
2618
2616
  });
2619
2617
  }
2620
2618
  onSelectionChanged(selectedRanges);
@@ -2631,8 +2629,8 @@ class IrisGrid extends Component {
2631
2629
  this.setState({
2632
2630
  columnHeaderGroups: IrisGridUtils.parseColumnHeaderGroups(model, columnHeaderGroups).groups
2633
2631
  }, () => {
2634
- var _this$grid23;
2635
- return (_this$grid23 = this.grid) === null || _this$grid23 === void 0 ? void 0 : _this$grid23.forceUpdate();
2632
+ var _this$grid20;
2633
+ return (_this$grid20 = this.grid) === null || _this$grid20 === void 0 ? void 0 : _this$grid20.forceUpdate();
2636
2634
  });
2637
2635
  }
2638
2636
  handleTooltipRef(tooltip) {
@@ -2680,9 +2678,6 @@ class IrisGrid extends Component {
2680
2678
  conditionalFormatPreview: _objectSpread({}, conditionalFormats[index])
2681
2679
  });
2682
2680
  }
2683
-
2684
- // Apply live changes
2685
-
2686
2681
  handleConditionalFormatEditorSave(config) {
2687
2682
  log.debug('Save conditional format changes', config);
2688
2683
  this.setState(state => {
@@ -2771,9 +2766,9 @@ class IrisGrid extends Component {
2771
2766
  isReady
2772
2767
  } = this.state;
2773
2768
  if (isReady) {
2774
- var _this$grid24;
2769
+ var _this$grid21;
2775
2770
  this.stopLoading();
2776
- (_this$grid24 = this.grid) === null || _this$grid24 === void 0 ? void 0 : _this$grid24.forceUpdate();
2771
+ (_this$grid21 = this.grid) === null || _this$grid21 === void 0 || _this$grid21.forceUpdate();
2777
2772
  } else {
2778
2773
  this.loadTableState();
2779
2774
  }
@@ -2785,7 +2780,7 @@ class IrisGrid extends Component {
2785
2780
  return this.discardPending();
2786
2781
  }
2787
2782
  handlePendingDataUpdated() {
2788
- var _this$grid25;
2783
+ var _this$grid22;
2789
2784
  log.debug('pending data updated');
2790
2785
  var {
2791
2786
  model
@@ -2799,10 +2794,10 @@ class IrisGrid extends Component {
2799
2794
  pendingDataErrors,
2800
2795
  pendingSaveError: null
2801
2796
  });
2802
- (_this$grid25 = this.grid) === null || _this$grid25 === void 0 ? void 0 : _this$grid25.forceUpdate();
2797
+ (_this$grid22 = this.grid) === null || _this$grid22 === void 0 || _this$grid22.forceUpdate();
2803
2798
  }
2804
2799
  handleResizeColumn(modelIndex) {
2805
- var _this$grid26;
2800
+ var _this$grid23;
2806
2801
  var {
2807
2802
  metrics,
2808
2803
  metricCalculator
@@ -2816,21 +2811,21 @@ class IrisGrid extends Component {
2816
2811
  } else {
2817
2812
  metricCalculator.setColumnWidth(modelIndex, contentWidth);
2818
2813
  }
2819
- (_this$grid26 = this.grid) === null || _this$grid26 === void 0 ? void 0 : _this$grid26.forceUpdate();
2814
+ (_this$grid23 = this.grid) === null || _this$grid23 === void 0 || _this$grid23.forceUpdate();
2820
2815
  }
2821
2816
  handleResizeAllColumns() {
2822
- var _this$grid27;
2817
+ var _this$grid24;
2823
2818
  var {
2824
2819
  metrics,
2825
2820
  metricCalculator
2826
2821
  } = this.state;
2827
2822
  if (!metrics) throw new Error('Metrics not set');
2828
2823
  var allColumns = [...metrics.allColumnWidths.entries()];
2829
- var visibleColumns = allColumns.filter(_ref19 => {
2830
- var [_, width] = _ref19;
2824
+ var visibleColumns = allColumns.filter(_ref17 => {
2825
+ var [_, width] = _ref17;
2831
2826
  return width !== 0;
2832
- }).map(_ref20 => {
2833
- var [modelIndex] = _ref20;
2827
+ }).map(_ref18 => {
2828
+ var [modelIndex] = _ref18;
2834
2829
  return modelIndex;
2835
2830
  });
2836
2831
  var contentWidths = metrics.contentColumnWidths;
@@ -2852,7 +2847,7 @@ class IrisGrid extends Component {
2852
2847
  metricCalculator.setColumnWidth(_modelIndex, _contentWidth);
2853
2848
  }
2854
2849
  }
2855
- (_this$grid27 = this.grid) === null || _this$grid27 === void 0 ? void 0 : _this$grid27.forceUpdate();
2850
+ (_this$grid24 = this.grid) === null || _this$grid24 === void 0 || _this$grid24.forceUpdate();
2856
2851
  }
2857
2852
 
2858
2853
  /**
@@ -2869,7 +2864,7 @@ class IrisGrid extends Component {
2869
2864
  var {
2870
2865
  rollupConfig
2871
2866
  } = this.state;
2872
- var isRollup = ((_rollupConfig$columns = rollupConfig === null || rollupConfig === void 0 ? 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;
2867
+ 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;
2873
2868
  // Do not start loading if this is rollup and added / removed aggregations are prohibited for rollups
2874
2869
  var changes = [...added, ...removed];
2875
2870
  var shouldStartLoading = !(isRollup && changes.length > 0 && changes.every(op => AggregationUtils.isRollupProhibited(op)));
@@ -2891,16 +2886,16 @@ class IrisGrid extends Component {
2891
2886
  var {
2892
2887
  rollupConfig
2893
2888
  } = this.state;
2894
- var isRollup = ((_rollupConfig$columns3 = rollupConfig === null || rollupConfig === void 0 ? 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;
2889
+ 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;
2895
2890
  // Do not start loading if this is rollup and the aggregation is prohibited for rollups
2896
2891
  var shouldStartLoading = !(isRollup && AggregationUtils.isRollupProhibited(aggregation.operation));
2897
2892
  if (shouldStartLoading) {
2898
2893
  this.startLoading("Aggregating ".concat(aggregation.operation, "..."));
2899
2894
  }
2900
- this.setState(_ref21 => {
2895
+ this.setState(_ref19 => {
2901
2896
  var {
2902
2897
  aggregationSettings
2903
- } = _ref21;
2898
+ } = _ref19;
2904
2899
  return {
2905
2900
  selectedAggregation: aggregation,
2906
2901
  aggregationSettings: _objectSpread(_objectSpread({}, aggregationSettings), {}, {
@@ -2933,18 +2928,18 @@ class IrisGrid extends Component {
2933
2928
  this.resetGridViewState();
2934
2929
  this.showAllColumns();
2935
2930
  this.clearAllFilters();
2936
- this.startLoading("Grouping by columns ".concat((_rollupConfig$columns5 = rollupConfig === null || rollupConfig === void 0 ? void 0 : (_rollupConfig$columns6 = rollupConfig.columns) === null || _rollupConfig$columns6 === void 0 ? void 0 : _rollupConfig$columns6.join(', ')) !== null && _rollupConfig$columns5 !== void 0 ? _rollupConfig$columns5 : '', "..."));
2931
+ 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 : '', "..."));
2937
2932
 
2938
2933
  // Have to clear select distinct since rollup uses the original columns, not the current ones.
2939
2934
  // IrisGridProxyModel has a check to prevent model update
2940
2935
  // when selectDistinctModel is cleared and the rollupConfig is set on the model.
2941
2936
  this.setState({
2942
2937
  rollupConfig,
2943
- movedColumns: [],
2944
- frozenColumns: [],
2945
- sorts: [],
2938
+ movedColumns: EMPTY_ARRAY,
2939
+ frozenColumns: EMPTY_ARRAY,
2940
+ sorts: EMPTY_ARRAY,
2946
2941
  reverse: false,
2947
- selectDistinctColumns: []
2942
+ selectDistinctColumns: EMPTY_ARRAY
2948
2943
  });
2949
2944
  }
2950
2945
  handleSelectDistinctChanged(columnNames) {
@@ -3000,10 +2995,10 @@ class IrisGrid extends Component {
3000
2995
  */
3001
2996
  removeEmptyAggregations() {
3002
2997
  log.debug('removeEmptyAggregations');
3003
- this.setState(_ref22 => {
2998
+ this.setState(_ref20 => {
3004
2999
  var {
3005
3000
  aggregationSettings
3006
- } = _ref22;
3001
+ } = _ref20;
3007
3002
  var {
3008
3003
  aggregations
3009
3004
  } = aggregationSettings;
@@ -3095,7 +3090,7 @@ class IrisGrid extends Component {
3095
3090
  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);
3096
3091
  }
3097
3092
  }
3098
- (_this6$grid2 = _this6.grid) === null || _this6$grid2 === void 0 ? void 0 : _this6$grid2.setFocusRow(rowIndex);
3093
+ (_this6$grid2 = _this6.grid) === null || _this6$grid2 === void 0 || _this6$grid2.setFocusRow(rowIndex);
3099
3094
  _this6.setState({
3100
3095
  gotoValueError: ''
3101
3096
  });
@@ -3108,7 +3103,7 @@ class IrisGrid extends Component {
3108
3103
  }
3109
3104
  handleCancelDownloadTable() {
3110
3105
  var _this$tableSaver;
3111
- (_this$tableSaver = this.tableSaver) === null || _this$tableSaver === void 0 ? void 0 : _this$tableSaver.cancelDownload();
3106
+ (_this$tableSaver = this.tableSaver) === null || _this$tableSaver === void 0 || _this$tableSaver.cancelDownload();
3112
3107
  this.setState({
3113
3108
  isTableDownloading: false
3114
3109
  });
@@ -3278,22 +3273,22 @@ class IrisGrid extends Component {
3278
3273
  gotoRowError: 'Invalid row index'
3279
3274
  });
3280
3275
  } else if (rowInt === 0) {
3281
- var _this$grid28;
3276
+ var _this$grid25;
3282
3277
  this.setState({
3283
3278
  gotoRowError: '',
3284
3279
  gotoValueError: ''
3285
3280
  });
3286
- (_this$grid28 = this.grid) === null || _this$grid28 === void 0 ? void 0 : _this$grid28.setFocusRow(0);
3281
+ (_this$grid25 = this.grid) === null || _this$grid25 === void 0 || _this$grid25.setFocusRow(0);
3287
3282
  } else if (rowInt < 0) {
3288
- var _this$grid29;
3283
+ var _this$grid26;
3289
3284
  this.setState({
3290
3285
  gotoRowError: '',
3291
3286
  gotoValueError: ''
3292
3287
  });
3293
- (_this$grid29 = this.grid) === null || _this$grid29 === void 0 ? void 0 : _this$grid29.setFocusRow(rowInt + rowCount);
3288
+ (_this$grid26 = this.grid) === null || _this$grid26 === void 0 || _this$grid26.setFocusRow(rowInt + rowCount);
3294
3289
  } else {
3295
- var _this$grid30;
3296
- (_this$grid30 = this.grid) === null || _this$grid30 === void 0 ? void 0 : _this$grid30.setFocusRow(rowInt - 1);
3290
+ var _this$grid27;
3291
+ (_this$grid27 = this.grid) === null || _this$grid27 === void 0 || _this$grid27.setFocusRow(rowInt - 1);
3297
3292
  this.setState({
3298
3293
  gotoRowError: '',
3299
3294
  gotoValueError: ''
@@ -3386,34 +3381,34 @@ class IrisGrid extends Component {
3386
3381
  column: column,
3387
3382
  onStatistics: () => {
3388
3383
  var _this$tooltip;
3389
- (_this$tooltip = this.tooltip) === null || _this$tooltip === void 0 ? void 0 : _this$tooltip.update();
3384
+ (_this$tooltip = this.tooltip) === null || _this$tooltip === void 0 || _this$tooltip.update();
3390
3385
  }
3391
3386
  })
3392
3387
  }, column.name)
3393
3388
  });
3394
3389
  }
3395
3390
  handleGotoValueSelectedColumnNameChanged(columnName) {
3396
- var _this$grid31;
3391
+ var _this$grid28;
3397
3392
  var {
3398
3393
  model
3399
3394
  } = this.props;
3400
- var cursorRow = (_this$grid31 = this.grid) === null || _this$grid31 === void 0 ? void 0 : _this$grid31.state.cursorRow;
3395
+ var cursorRow = (_this$grid28 = this.grid) === null || _this$grid28 === void 0 ? void 0 : _this$grid28.state.cursorRow;
3401
3396
  var {
3402
3397
  gotoValueSelectedColumnName: prevColumnName,
3403
3398
  gotoValueManuallyChanged
3404
3399
  } = this.state;
3405
3400
  if (cursorRow != null) {
3406
- var _index = model.getColumnIndexByName(columnName);
3407
- var _column2 = IrisGridUtils.getColumnByName(model.columns, columnName);
3401
+ var index = model.getColumnIndexByName(columnName);
3402
+ var column = IrisGridUtils.getColumnByName(model.columns, columnName);
3408
3403
  var prevColumn = IrisGridUtils.getColumnByName(model.columns, prevColumnName);
3409
- if (_index == null || _column2 == null) {
3404
+ if (index == null || column == null) {
3410
3405
  return;
3411
3406
  }
3412
- var _value3 = model.valueForCell(_index, cursorRow);
3413
- var text = IrisGridUtils.convertValueToText(_value3, _column2.type);
3407
+ var value = model.valueForCell(index, cursorRow);
3408
+ var text = IrisGridUtils.convertValueToText(value, column.type);
3414
3409
 
3415
3410
  // do NOT update value if user manually changed value AND column type remains the same
3416
- if (gotoValueManuallyChanged && _column2.type === (prevColumn === null || prevColumn === void 0 ? void 0 : prevColumn.type)) {
3411
+ if (gotoValueManuallyChanged && column.type === (prevColumn === null || prevColumn === void 0 ? void 0 : prevColumn.type)) {
3417
3412
  this.setState({
3418
3413
  gotoValueSelectedColumnName: columnName,
3419
3414
  gotoValueError: ''
@@ -3449,8 +3444,7 @@ class IrisGrid extends Component {
3449
3444
  var _rollupConfig$columns7,
3450
3445
  _rollupConfig$columns8,
3451
3446
  _this7 = this,
3452
- _this$grid33,
3453
- _this$grid33$state$dr,
3447
+ _this$grid30,
3454
3448
  _openOptions;
3455
3449
  var {
3456
3450
  children,
@@ -3556,7 +3550,7 @@ class IrisGrid extends Component {
3556
3550
  right = metrics ? metrics.right : 0;
3557
3551
  }
3558
3552
  var isVisible = metrics != null && metrics.width > 0 && metrics.height > 0;
3559
- var isRollup = ((_rollupConfig$columns7 = rollupConfig === null || rollupConfig === void 0 ? 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;
3553
+ 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;
3560
3554
  var focusField = null;
3561
3555
  var debounceMs = metrics ? Math.min(Math.max(IrisGrid.minDebounce, Math.round(metrics.rowCount / 200)), IrisGrid.maxDebounce) : IrisGrid.maxDebounce;
3562
3556
  if (isFilterBarShown && focusedFilterBarColumn != null && metrics != null) {
@@ -3570,7 +3564,7 @@ class IrisGrid extends Component {
3570
3564
  var columnX = allColumnXs.get(focusedFilterBarColumn);
3571
3565
  var columnWidth = allColumnWidths.get(focusedFilterBarColumn);
3572
3566
  if (columnX != null && columnWidth != null) {
3573
- var _theme$filterBarHeigh, _theme$filterBarHeigh2, _this$grid32;
3567
+ var _theme$filterBarHeigh, _theme$filterBarHeigh2, _this$grid29;
3574
3568
  var x = gridX + columnX;
3575
3569
  var y = gridY - ((_theme$filterBarHeigh = theme.filterBarHeight) !== null && _theme$filterBarHeigh !== void 0 ? _theme$filterBarHeigh : 0);
3576
3570
  var fieldWidth = columnWidth + 1; // cover right border
@@ -3582,14 +3576,14 @@ class IrisGrid extends Component {
3582
3576
  // Don't cause overflow
3583
3577
  height: fieldHeight
3584
3578
  };
3585
- var _value4 = '';
3579
+ var value = '';
3586
3580
  var isValid = true;
3587
3581
  var modelColumn = this.getModelColumn(focusedFilterBarColumn);
3588
3582
  assertNotNull(modelColumn);
3589
3583
  var quickFilter = quickFilters.get(modelColumn);
3590
3584
  var advancedFilter = advancedFilters.get(modelColumn);
3591
3585
  if (quickFilter != null) {
3592
- _value4 = quickFilter.text;
3586
+ value = quickFilter.text;
3593
3587
  isValid = quickFilter.filter != null;
3594
3588
  }
3595
3589
  var isBarFiltered = quickFilters.size !== 0 || advancedFilters.size !== 0;
@@ -3598,7 +3592,7 @@ class IrisGrid extends Component {
3598
3592
  style: style,
3599
3593
  className: classNames({
3600
3594
  error: !isValid,
3601
- active: _value4 !== '' || advancedFilter != null,
3595
+ active: value !== '' || advancedFilter != null,
3602
3596
  'iris-grid-has-filter': isBarFiltered
3603
3597
  }),
3604
3598
  isAdvancedFilterSet: advancedFilter != null,
@@ -3610,9 +3604,9 @@ class IrisGrid extends Component {
3610
3604
  onChange: this.handleFilterBarChange,
3611
3605
  onDone: this.handleFilterBarDone,
3612
3606
  onTab: this.handleFilterBarTab,
3613
- onContextMenu: (_this$grid32 = this.grid) === null || _this$grid32 === void 0 ? void 0 : _this$grid32.handleContextMenu,
3607
+ onContextMenu: (_this$grid29 = this.grid) === null || _this$grid29 === void 0 ? void 0 : _this$grid29.handleContextMenu,
3614
3608
  debounceMs: debounceMs,
3615
- value: _value4
3609
+ value: value
3616
3610
  }, focusedFilterBarColumn);
3617
3611
  }
3618
3612
  }
@@ -3651,7 +3645,7 @@ class IrisGrid extends Component {
3651
3645
  var _this$tooltip2;
3652
3646
  columnTooltip = this.getColumnTooltip(shownColumnTooltip, metrics, model);
3653
3647
  // #510 We may need to update the position of the tooltip if it's already opened and columns are resized
3654
- (_this$tooltip2 = this.tooltip) === null || _this$tooltip2 === void 0 ? void 0 : _this$tooltip2.update();
3648
+ (_this$tooltip2 = this.tooltip) === null || _this$tooltip2 === void 0 || _this$tooltip2.update();
3655
3649
  }
3656
3650
  var filterBar = [];
3657
3651
  if (metrics && isFilterBarShown) {
@@ -3700,7 +3694,7 @@ class IrisGrid extends Component {
3700
3694
  },
3701
3695
  onContextMenu: event => {
3702
3696
  var _this7$grid;
3703
- (_this7$grid = _this7.grid) === null || _this7$grid === void 0 ? void 0 : _this7$grid.handleContextMenu(event);
3697
+ (_this7$grid = _this7.grid) === null || _this7$grid === void 0 || _this7$grid.handleContextMenu(event);
3704
3698
  },
3705
3699
  onMouseEnter: () => {
3706
3700
  _this7.setState({
@@ -3763,18 +3757,18 @@ class IrisGrid extends Component {
3763
3757
  };
3764
3758
  var _modelColumn = _this7.getModelColumn(columnIndex);
3765
3759
  if (_modelColumn != null) {
3766
- var _column3 = model.columns[_modelColumn];
3767
- if (_column3 == null) {
3760
+ var column = model.columns[_modelColumn];
3761
+ if (column == null) {
3768
3762
  // Grid metrics is likely out of sync with model
3769
3763
  log.warn("Column does not exist at index ".concat(_modelColumn, " for column array of length ").concat(model.columns.length));
3770
3764
  // eslint-disable-next-line no-continue
3771
- return "continue";
3765
+ return 1; // continue
3772
3766
  }
3773
3767
  var _advancedFilter2 = advancedFilters.get(_modelColumn);
3774
3768
  var {
3775
3769
  options: advancedFilterOptions
3776
3770
  } = _advancedFilter2 || {};
3777
- var sort = TableUtils.getSortForColumn(model.sort, _column3.name);
3771
+ var sort = TableUtils.getSortForColumn(model.sort, column.name);
3778
3772
  var sortDirection = sort ? sort.direction : null;
3779
3773
  if (!isSortDirection(sortDirection)) {
3780
3774
  throw new Error("Invalid sort direction: ".concat(sortDirection));
@@ -3794,7 +3788,7 @@ class IrisGrid extends Component {
3794
3788
  options: {
3795
3789
  positionFixed: true
3796
3790
  },
3797
- children: _this7.getCachedAdvancedFilterMenuActions(model, _column3, advancedFilterOptions, sortDirection, formatter)
3791
+ children: _this7.getCachedAdvancedFilterMenuActions(model, column, advancedFilterOptions, sortDirection, formatter)
3798
3792
  })
3799
3793
  }, columnIndex);
3800
3794
  advancedFilterMenus.push(element);
@@ -3802,8 +3796,7 @@ class IrisGrid extends Component {
3802
3796
  }
3803
3797
  };
3804
3798
  for (var _i4 = 0; _i4 < _visibleColumns.length; _i4 += 1) {
3805
- var _ret = _loop3();
3806
- if (_ret === "continue") continue;
3799
+ if (_loop3()) continue;
3807
3800
  }
3808
3801
  }
3809
3802
  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);
@@ -3921,7 +3914,9 @@ class IrisGrid extends Component {
3921
3914
  onExited: this.handleAnimationEnd,
3922
3915
  mountOnEnter: true,
3923
3916
  unmountOnExit: true,
3917
+ nodeRef: this.slideTransitionRef,
3924
3918
  children: /*#__PURE__*/_jsx("div", {
3919
+ ref: this.slideTransitionRef,
3925
3920
  className: "iris-grid-partition-selector-wrapper iris-grid-bar iris-grid-bar-primary",
3926
3921
  children: isPartitionedGridModel(model) && model.isPartitionRequired && /*#__PURE__*/_jsx(IrisGridPartitionSelector, {
3927
3922
  model: model,
@@ -3939,7 +3934,9 @@ class IrisGrid extends Component {
3939
3934
  onExited: this.handleAnimationEnd,
3940
3935
  mountOnEnter: true,
3941
3936
  unmountOnExit: true,
3937
+ nodeRef: this.bottomTransitionRef,
3942
3938
  children: /*#__PURE__*/_jsx("div", {
3939
+ ref: this.bottomTransitionRef,
3943
3940
  className: "iris-grid-bar",
3944
3941
  children: /*#__PURE__*/_jsx(CrossColumnSearch, {
3945
3942
  value: searchValue,
@@ -3988,7 +3985,7 @@ class IrisGrid extends Component {
3988
3985
  movedColumns: movedColumns,
3989
3986
  customColumns: customColumns,
3990
3987
  hiddenColumns: hiddenColumns,
3991
- alwaysFetchColumns: this.getAlwaysFetchColumns(alwaysFetchColumns, model.columns, movedColumns, model.floatingLeftColumnCount, model.floatingRightColumnCount, (_this$grid33 = this.grid) === null || _this$grid33 === void 0 ? void 0 : (_this$grid33$state$dr = _this$grid33.state.draggingColumn) === null || _this$grid33$state$dr === void 0 ? void 0 : _this$grid33$state$dr.range),
3988
+ 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),
3992
3989
  formatColumns: this.getCachedPreviewFormatColumns(model.dh, model.columns, conditionalFormats, conditionalFormatPreview,
3993
3990
  // Disable the preview format when we press Back on the format edit page
3994
3991
  ((_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),
@@ -4117,7 +4114,6 @@ _defineProperty(IrisGrid, "minDebounce", 150);
4117
4114
  _defineProperty(IrisGrid, "maxDebounce", 500);
4118
4115
  _defineProperty(IrisGrid, "loadingSpinnerDelay", 800);
4119
4116
  _defineProperty(IrisGrid, "defaultProps", {
4120
- children: null,
4121
4117
  advancedFilters: EMPTY_MAP,
4122
4118
  advancedSettings: EMPTY_MAP,
4123
4119
  alwaysFetchColumns: EMPTY_ARRAY,
@@ -4152,7 +4148,6 @@ _defineProperty(IrisGrid, "defaultProps", {
4152
4148
  isSelectingPartition: false,
4153
4149
  isStuckToBottom: false,
4154
4150
  isStuckToRight: false,
4155
- columnSelectionValidator: null,
4156
4151
  columnAllowedCursor: 'linker',
4157
4152
  columnNotAllowedCursor: 'linker-not-allowed',
4158
4153
  copyCursor: 'copy',
@@ -4160,7 +4155,6 @@ _defineProperty(IrisGrid, "defaultProps", {
4160
4155
  onlyFetchVisibleColumns: true,
4161
4156
  showSearchBar: false,
4162
4157
  searchValue: '',
4163
- selectedSearchColumns: null,
4164
4158
  invertSearchColumns: true,
4165
4159
  onContextMenu: () => EMPTY_ARRAY,
4166
4160
  pendingDataMap: EMPTY_MAP,
@@ -4174,18 +4168,11 @@ _defineProperty(IrisGrid, "defaultProps", {
4174
4168
  showEmptyStrings: true,
4175
4169
  showNullStrings: true,
4176
4170
  showExtraGroupColumn: true,
4177
- formatter: EMPTY_ARRAY,
4178
- decimalFormatOptions: PropTypes.shape({
4179
- defaultFormatString: PropTypes.string
4180
- }),
4181
- integerFormatOptions: PropTypes.shape({
4182
- defaultFormatString: PropTypes.string
4183
- })
4171
+ formatter: EMPTY_ARRAY
4184
4172
  },
4185
4173
  canCopy: true,
4186
4174
  canDownloadCsv: true,
4187
- frozenColumns: null,
4188
- theme: null,
4175
+ frozenColumns: EMPTY_ARRAY,
4189
4176
  // Do not set a default density prop since we need to know if it overrides the global density setting
4190
4177
  density: undefined,
4191
4178
  canToggleSearch: true,