@deephaven/iris-grid 0.22.3-beta.18 → 0.22.3-beta.21

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 (199) hide show
  1. package/dist/AdvancedFilterCreator.js +7 -65
  2. package/dist/AdvancedFilterCreator.js.map +1 -1
  3. package/dist/AdvancedFilterCreatorFilterItem.js +0 -23
  4. package/dist/AdvancedFilterCreatorFilterItem.js.map +1 -1
  5. package/dist/AdvancedFilterCreatorSelectValue.js +0 -52
  6. package/dist/AdvancedFilterCreatorSelectValue.js.map +1 -1
  7. package/dist/AdvancedFilterCreatorSelectValueList.js +2 -42
  8. package/dist/AdvancedFilterCreatorSelectValueList.js.map +1 -1
  9. package/dist/ColumnHeaderGroup.js +0 -11
  10. package/dist/ColumnHeaderGroup.js.map +1 -1
  11. package/dist/ColumnStatistics.js +1 -20
  12. package/dist/ColumnStatistics.js.map +1 -1
  13. package/dist/CrossColumnSearch.js +2 -23
  14. package/dist/CrossColumnSearch.js.map +1 -1
  15. package/dist/FilterInputField.js +2 -36
  16. package/dist/FilterInputField.js.map +1 -1
  17. package/dist/GotoRow.d.ts +1 -1
  18. package/dist/GotoRow.d.ts.map +1 -1
  19. package/dist/GotoRow.js +2 -7
  20. package/dist/GotoRow.js.map +1 -1
  21. package/dist/IrisGrid.d.ts +11 -5
  22. package/dist/IrisGrid.d.ts.map +1 -1
  23. package/dist/IrisGrid.js +77 -519
  24. package/dist/IrisGrid.js.map +1 -1
  25. package/dist/IrisGridBottomBar.d.ts +1 -1
  26. package/dist/IrisGridBottomBar.d.ts.map +1 -1
  27. package/dist/IrisGridBottomBar.js +2 -2
  28. package/dist/IrisGridBottomBar.js.map +1 -1
  29. package/dist/IrisGridCellOverflowModal.js +6 -21
  30. package/dist/IrisGridCellOverflowModal.js.map +1 -1
  31. package/dist/IrisGridCopyHandler.js +3 -50
  32. package/dist/IrisGridCopyHandler.js.map +1 -1
  33. package/dist/IrisGridMetricCalculator.js +2 -12
  34. package/dist/IrisGridMetricCalculator.js.map +1 -1
  35. package/dist/IrisGridModel.js +32 -58
  36. package/dist/IrisGridModel.js.map +1 -1
  37. package/dist/IrisGridModelFactory.js +0 -7
  38. package/dist/IrisGridModelFactory.js.map +1 -1
  39. package/dist/IrisGridModelUpdater.js +0 -4
  40. package/dist/IrisGridModelUpdater.js.map +1 -1
  41. package/dist/IrisGridPartitionSelector.js +0 -23
  42. package/dist/IrisGridPartitionSelector.js.map +1 -1
  43. package/dist/IrisGridProxyModel.js +9 -153
  44. package/dist/IrisGridProxyModel.js.map +1 -1
  45. package/dist/IrisGridRenderer.js +41 -183
  46. package/dist/IrisGridRenderer.js.map +1 -1
  47. package/dist/IrisGridShortcuts.js.map +1 -1
  48. package/dist/IrisGridTableModel.js +7 -86
  49. package/dist/IrisGridTableModel.js.map +1 -1
  50. package/dist/IrisGridTableModelTemplate.js +70 -461
  51. package/dist/IrisGridTableModelTemplate.js.map +1 -1
  52. package/dist/IrisGridTestUtils.js +0 -23
  53. package/dist/IrisGridTestUtils.js.map +1 -1
  54. package/dist/IrisGridTheme.js.map +1 -1
  55. package/dist/IrisGridTreeTableModel.js +3 -42
  56. package/dist/IrisGridTreeTableModel.js.map +1 -1
  57. package/dist/IrisGridUtils.d.ts +8 -2
  58. package/dist/IrisGridUtils.d.ts.map +1 -1
  59. package/dist/IrisGridUtils.js +97 -195
  60. package/dist/IrisGridUtils.js.map +1 -1
  61. package/dist/MissingKeyError.js +0 -7
  62. package/dist/MissingKeyError.js.map +1 -1
  63. package/dist/PartitionSelectorSearch.js +2 -48
  64. package/dist/PartitionSelectorSearch.js.map +1 -1
  65. package/dist/PendingDataBottomBar.d.ts +1 -1
  66. package/dist/PendingDataBottomBar.d.ts.map +1 -1
  67. package/dist/PendingDataBottomBar.js +2 -7
  68. package/dist/PendingDataBottomBar.js.map +1 -1
  69. package/dist/TableViewportUpdater.js +3 -29
  70. package/dist/TableViewportUpdater.js.map +1 -1
  71. package/dist/ToastBottomBar.d.ts +1 -1
  72. package/dist/ToastBottomBar.d.ts.map +1 -1
  73. package/dist/ToastBottomBar.js +2 -4
  74. package/dist/ToastBottomBar.js.map +1 -1
  75. package/dist/TreeTableViewportUpdater.js +0 -21
  76. package/dist/TreeTableViewportUpdater.js.map +1 -1
  77. package/dist/format-context-menus/CustomFormatAction.js +4 -25
  78. package/dist/format-context-menus/CustomFormatAction.js.map +1 -1
  79. package/dist/format-context-menus/DateTimeFormatContextMenu.js +0 -7
  80. package/dist/format-context-menus/DateTimeFormatContextMenu.js.map +1 -1
  81. package/dist/format-context-menus/DecimalFormatContextMenu.js +0 -9
  82. package/dist/format-context-menus/DecimalFormatContextMenu.js.map +1 -1
  83. package/dist/format-context-menus/FormatContextMenuUtils.js +3 -9
  84. package/dist/format-context-menus/FormatContextMenuUtils.js.map +1 -1
  85. package/dist/format-context-menus/IntegerFormatContextMenu.js +0 -8
  86. package/dist/format-context-menus/IntegerFormatContextMenu.js.map +1 -1
  87. package/dist/format-context-menus/index.js.map +1 -1
  88. package/dist/index.d.ts +3 -3
  89. package/dist/index.d.ts.map +1 -1
  90. package/dist/index.js +3 -3
  91. package/dist/index.js.map +1 -1
  92. package/dist/key-handlers/ClearFilterKeyHandler.js +0 -8
  93. package/dist/key-handlers/ClearFilterKeyHandler.js.map +1 -1
  94. package/dist/key-handlers/CopyKeyHandler.js +1 -10
  95. package/dist/key-handlers/CopyKeyHandler.js.map +1 -1
  96. package/dist/key-handlers/ReverseKeyHandler.js +0 -11
  97. package/dist/key-handlers/ReverseKeyHandler.js.map +1 -1
  98. package/dist/key-handlers/index.js.map +1 -1
  99. package/dist/mousehandlers/IrisGridCellOverflowMouseHandler.js +2 -32
  100. package/dist/mousehandlers/IrisGridCellOverflowMouseHandler.js.map +1 -1
  101. package/dist/mousehandlers/IrisGridColumnSelectMouseHandler.js +4 -34
  102. package/dist/mousehandlers/IrisGridColumnSelectMouseHandler.js.map +1 -1
  103. package/dist/mousehandlers/IrisGridColumnTooltipMouseHandler.js +0 -20
  104. package/dist/mousehandlers/IrisGridColumnTooltipMouseHandler.js.map +1 -1
  105. package/dist/mousehandlers/IrisGridContextMenuHandler.js +15 -105
  106. package/dist/mousehandlers/IrisGridContextMenuHandler.js.map +1 -1
  107. package/dist/mousehandlers/IrisGridDataSelectMouseHandler.js +0 -9
  108. package/dist/mousehandlers/IrisGridDataSelectMouseHandler.js.map +1 -1
  109. package/dist/mousehandlers/IrisGridFilterMouseHandler.js +0 -17
  110. package/dist/mousehandlers/IrisGridFilterMouseHandler.js.map +1 -1
  111. package/dist/mousehandlers/IrisGridSortMouseHandler.js +2 -15
  112. package/dist/mousehandlers/IrisGridSortMouseHandler.js.map +1 -1
  113. package/dist/mousehandlers/PendingMouseHandler.js +0 -6
  114. package/dist/mousehandlers/PendingMouseHandler.js.map +1 -1
  115. package/dist/mousehandlers/index.js.map +1 -1
  116. package/dist/sidebar/AdvancedSettings.js.map +1 -1
  117. package/dist/sidebar/AdvancedSettingsMenu.d.ts +4 -4
  118. package/dist/sidebar/AdvancedSettingsMenu.d.ts.map +1 -1
  119. package/dist/sidebar/AdvancedSettingsMenu.js +2 -6
  120. package/dist/sidebar/AdvancedSettingsMenu.js.map +1 -1
  121. package/dist/sidebar/AdvancedSettingsType.js +0 -2
  122. package/dist/sidebar/AdvancedSettingsType.js.map +1 -1
  123. package/dist/sidebar/ChartBuilder.js +2 -46
  124. package/dist/sidebar/ChartBuilder.js.map +1 -1
  125. package/dist/sidebar/CustomColumnBuilder.js +6 -58
  126. package/dist/sidebar/CustomColumnBuilder.js.map +1 -1
  127. package/dist/sidebar/CustomColumnInput.js +4 -15
  128. package/dist/sidebar/CustomColumnInput.js.map +1 -1
  129. package/dist/sidebar/InputEditor.js +5 -36
  130. package/dist/sidebar/InputEditor.js.map +1 -1
  131. package/dist/sidebar/OptionType.js +0 -2
  132. package/dist/sidebar/OptionType.js.map +1 -1
  133. package/dist/sidebar/RollupRows.js +9 -65
  134. package/dist/sidebar/RollupRows.js.map +1 -1
  135. package/dist/sidebar/SelectDistinctBuilder.js +0 -13
  136. package/dist/sidebar/SelectDistinctBuilder.js.map +1 -1
  137. package/dist/sidebar/TableCsvExporter.js +0 -52
  138. package/dist/sidebar/TableCsvExporter.js.map +1 -1
  139. package/dist/sidebar/TableSaver.js +10 -123
  140. package/dist/sidebar/TableSaver.js.map +1 -1
  141. package/dist/sidebar/VisibilityOrderingBuilder.js +37 -116
  142. package/dist/sidebar/VisibilityOrderingBuilder.js.map +1 -1
  143. package/dist/sidebar/aggregations/AggregationEdit.d.ts +1 -1
  144. package/dist/sidebar/aggregations/AggregationEdit.d.ts.map +1 -1
  145. package/dist/sidebar/aggregations/AggregationEdit.js +2 -14
  146. package/dist/sidebar/aggregations/AggregationEdit.js.map +1 -1
  147. package/dist/sidebar/aggregations/AggregationOperation.js +0 -2
  148. package/dist/sidebar/aggregations/AggregationOperation.js.map +1 -1
  149. package/dist/sidebar/aggregations/AggregationUtils.js +2 -5
  150. package/dist/sidebar/aggregations/AggregationUtils.js.map +1 -1
  151. package/dist/sidebar/aggregations/Aggregations.d.ts +1 -1
  152. package/dist/sidebar/aggregations/Aggregations.d.ts.map +1 -1
  153. package/dist/sidebar/aggregations/Aggregations.js +2 -12
  154. package/dist/sidebar/aggregations/Aggregations.js.map +1 -1
  155. package/dist/sidebar/conditional-formatting/ColumnFormatEditor.d.ts +1 -1
  156. package/dist/sidebar/conditional-formatting/ColumnFormatEditor.d.ts.map +1 -1
  157. package/dist/sidebar/conditional-formatting/ColumnFormatEditor.js +2 -16
  158. package/dist/sidebar/conditional-formatting/ColumnFormatEditor.js.map +1 -1
  159. package/dist/sidebar/conditional-formatting/ConditionEditor.d.ts +1 -1
  160. package/dist/sidebar/conditional-formatting/ConditionEditor.d.ts.map +1 -1
  161. package/dist/sidebar/conditional-formatting/ConditionEditor.js +2 -35
  162. package/dist/sidebar/conditional-formatting/ConditionEditor.js.map +1 -1
  163. package/dist/sidebar/conditional-formatting/ConditionalFormatEditor.d.ts +1 -1
  164. package/dist/sidebar/conditional-formatting/ConditionalFormatEditor.d.ts.map +1 -1
  165. package/dist/sidebar/conditional-formatting/ConditionalFormatEditor.js +2 -12
  166. package/dist/sidebar/conditional-formatting/ConditionalFormatEditor.js.map +1 -1
  167. package/dist/sidebar/conditional-formatting/ConditionalFormattingAPIUtils.js +0 -3
  168. package/dist/sidebar/conditional-formatting/ConditionalFormattingAPIUtils.js.map +1 -1
  169. package/dist/sidebar/conditional-formatting/ConditionalFormattingMenu.d.ts +1 -1
  170. package/dist/sidebar/conditional-formatting/ConditionalFormattingMenu.d.ts.map +1 -1
  171. package/dist/sidebar/conditional-formatting/ConditionalFormattingMenu.js +16 -26
  172. package/dist/sidebar/conditional-formatting/ConditionalFormattingMenu.js.map +1 -1
  173. package/dist/sidebar/conditional-formatting/ConditionalFormattingUtils.js +9 -172
  174. package/dist/sidebar/conditional-formatting/ConditionalFormattingUtils.js.map +1 -1
  175. package/dist/sidebar/conditional-formatting/RowFormatEditor.d.ts +1 -1
  176. package/dist/sidebar/conditional-formatting/RowFormatEditor.d.ts.map +1 -1
  177. package/dist/sidebar/conditional-formatting/RowFormatEditor.js +2 -16
  178. package/dist/sidebar/conditional-formatting/RowFormatEditor.js.map +1 -1
  179. package/dist/sidebar/conditional-formatting/StyleEditor.d.ts +1 -1
  180. package/dist/sidebar/conditional-formatting/StyleEditor.d.ts.map +1 -1
  181. package/dist/sidebar/conditional-formatting/StyleEditor.js +2 -12
  182. package/dist/sidebar/conditional-formatting/StyleEditor.js.map +1 -1
  183. package/dist/sidebar/icons/BarIcon.js +0 -3
  184. package/dist/sidebar/icons/BarIcon.js.map +1 -1
  185. package/dist/sidebar/icons/FormatColumnWhereIcon.js +2 -5
  186. package/dist/sidebar/icons/FormatColumnWhereIcon.js.map +1 -1
  187. package/dist/sidebar/icons/FormatRowWhereIcon.js +2 -5
  188. package/dist/sidebar/icons/FormatRowWhereIcon.js.map +1 -1
  189. package/dist/sidebar/icons/HistogramIcon.js +0 -3
  190. package/dist/sidebar/icons/HistogramIcon.js.map +1 -1
  191. package/dist/sidebar/icons/LineIcon.js +0 -3
  192. package/dist/sidebar/icons/LineIcon.js.map +1 -1
  193. package/dist/sidebar/icons/PieIcon.js +0 -3
  194. package/dist/sidebar/icons/PieIcon.js.map +1 -1
  195. package/dist/sidebar/icons/ScatterIcon.js +0 -3
  196. package/dist/sidebar/icons/ScatterIcon.js.map +1 -1
  197. package/dist/sidebar/icons/index.js.map +1 -1
  198. package/dist/sidebar/index.js.map +1 -1
  199. package/package.json +15 -15
@@ -1,9 +1,6 @@
1
1
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
2
-
3
2
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
4
-
5
3
  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
6
-
7
4
  /* eslint class-methods-use-this: "off" */
8
5
  import React from 'react';
9
6
  import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
@@ -21,10 +18,10 @@ import SHORTCUTS from "../IrisGridShortcuts.js";
21
18
  var log = Log.module('IrisGridContextMenuHandler');
22
19
  var DEBOUNCE_UPDATE_FORMAT = 150;
23
20
  var CONTEXT_MENU_DATE_FORMAT = 'yyyy-MM-dd HH:mm:ss.SSSSSSSSS';
21
+
24
22
  /**
25
23
  * Used to eat the mouse event in the bottom right corner of the scroll bar
26
24
  */
27
-
28
25
  class IrisGridContextMenuHandler extends GridMouseHandler {
29
26
  /**
30
27
  * Get filter condition for quick filter and combines with a new filter using the operator specified,
@@ -37,77 +34,61 @@ class IrisGridContextMenuHandler extends GridMouseHandler {
37
34
  if (columnFilter && operator === '&&') {
38
35
  return columnFilter.and(newColumnFilter);
39
36
  }
40
-
41
37
  if (columnFilter && operator === '||') {
42
38
  return columnFilter.or(newColumnFilter);
43
39
  }
44
-
45
40
  return newColumnFilter;
46
41
  }
42
+
47
43
  /**
48
44
  * combines filter text with operator if declared
49
45
  * @param filterText
50
46
  * @param newFilterText
51
47
  * @param operator
52
48
  */
53
-
54
-
55
49
  static getQuickFilterText(filterText, newFilterText, operator) {
56
50
  return operator && filterText != null ? "".concat(filterText, " ").concat(operator, " ").concat(newFilterText) : newFilterText;
57
51
  }
52
+
58
53
  /**
59
54
  * Converts operator to text string,
60
55
  */
61
-
62
-
63
56
  static getOperatorAsText(operator) {
64
57
  return operator === '&&' ? 'And' : 'Or';
65
58
  }
59
+
66
60
  /**
67
61
  * Gets an equality filter for the provided numeric value
68
62
  * @param column The column to make the filter for
69
63
  * @param value The value to get the equality filter for
70
64
  */
71
-
72
-
73
65
  static getNumberValueEqualsFilter(column, value) {
74
66
  var columnFilter = column.filter();
75
-
76
67
  if (value === Number.POSITIVE_INFINITY) {
77
68
  return dh.FilterCondition.invoke('isInf', columnFilter).and(columnFilter.greaterThan(dh.FilterValue.ofNumber(0)));
78
69
  }
79
-
80
70
  if (value === Number.NEGATIVE_INFINITY) {
81
71
  return dh.FilterCondition.invoke('isInf', columnFilter).and(columnFilter.lessThan(dh.FilterValue.ofNumber(0)));
82
72
  }
83
-
84
73
  if (Number.isNaN(value)) {
85
74
  return dh.FilterCondition.invoke('isNaN', columnFilter);
86
75
  }
87
-
88
76
  var filterValue = IrisGridContextMenuHandler.getFilterValueForNumberOrChar(column.type, value);
89
77
  return columnFilter.eq(filterValue);
90
78
  }
91
-
92
79
  static getFilterValueForNumberOrChar(columnType, value) {
93
80
  return TableUtils.isCharType(columnType) ? dh.FilterValue.ofString(String.fromCharCode(value)) : dh.FilterValue.ofNumber(value);
94
81
  }
95
-
96
82
  constructor(irisGrid) {
97
83
  super();
98
-
99
84
  _defineProperty(this, "irisGrid", void 0);
100
-
101
85
  _defineProperty(this, "debouncedUpdateCustomFormat", void 0);
102
-
103
86
  this.debouncedUpdateCustomFormat = debounce(irisGrid.handleFormatSelection, DEBOUNCE_UPDATE_FORMAT);
104
87
  this.irisGrid = irisGrid;
105
88
  }
106
-
107
89
  componentWillUnmount() {
108
90
  this.debouncedUpdateCustomFormat.flush();
109
91
  }
110
-
111
92
  getHeaderActions(modelColumn, gridPoint) {
112
93
  var {
113
94
  irisGrid
@@ -216,7 +197,6 @@ class IrisGridContextMenuHandler extends GridMouseHandler {
216
197
  });
217
198
  actions.push({
218
199
  title: 'Add Additional Sort',
219
-
220
200
  /**
221
201
  * disable conditions:
222
202
  * 1. table is sorted only by this column
@@ -232,7 +212,8 @@ class IrisGridContextMenuHandler extends GridMouseHandler {
232
212
  });
233
213
  actions.push({
234
214
  title: 'Clear Table Sorting',
235
- disabled: // reverse is a type of sort, but special and needs to be exluded despite being part of model.sort
215
+ disabled:
216
+ // reverse is a type of sort, but special and needs to be exluded despite being part of model.sort
236
217
  modelSort.length === 0 || hasReverse && modelSort.length === 1,
237
218
  group: IrisGridContextMenuHandler.GROUP_SORT,
238
219
  action: () => {
@@ -262,11 +243,9 @@ class IrisGridContextMenuHandler extends GridMouseHandler {
262
243
  group: IrisGridContextMenuHandler.GROUP_COPY,
263
244
  action: () => {
264
245
  var _model$textForColumnH;
265
-
266
246
  copyToClipboard((_model$textForColumnH = model.textForColumnHeader(modelColumn)) !== null && _model$textForColumnH !== void 0 ? _model$textForColumnH : '').catch(e => log.error('Unable to copy header', e));
267
247
  }
268
248
  });
269
-
270
249
  if (TableUtils.isDateType(column.type)) {
271
250
  actions.push({
272
251
  title: 'Date/Time Format',
@@ -275,17 +254,14 @@ class IrisGridContextMenuHandler extends GridMouseHandler {
275
254
  });
276
255
  } else if (TableUtils.isNumberType(column.type)) {
277
256
  var _this$numberFormatAct;
278
-
279
257
  actions.push({
280
258
  title: 'Number Format',
281
259
  group: IrisGridContextMenuHandler.GROUP_FORMAT,
282
260
  actions: (_this$numberFormatAct = this.numberFormatActions(column)) !== null && _this$numberFormatAct !== void 0 ? _this$numberFormatAct : undefined
283
261
  });
284
262
  }
285
-
286
263
  return actions;
287
264
  }
288
-
289
265
  getCellActions(modelColumn, grid, gridPoint) {
290
266
  assertNotNull(modelColumn);
291
267
  var {
@@ -330,8 +306,9 @@ class IrisGridContextMenuHandler extends GridMouseHandler {
330
306
  showTSeparator: settings === null || settings === void 0 ? void 0 : settings.showTSeparator,
331
307
  defaultDateTimeFormatString: CONTEXT_MENU_DATE_FORMAT
332
308
  });
333
- if (column == null || rowIndex == null) return actions; // grid data area context menu options
309
+ if (column == null || rowIndex == null) return actions;
334
310
 
311
+ // grid data area context menu options
335
312
  if (model.isFilterable(modelColumn)) {
336
313
  // cell data area contextmenu options
337
314
  var filterMenu = {
@@ -342,7 +319,6 @@ class IrisGridContextMenuHandler extends GridMouseHandler {
342
319
  order: 10,
343
320
  actions: []
344
321
  };
345
-
346
322
  if (value == null) {
347
323
  if (quickFilters.get(modelColumn)) {
348
324
  filterMenu.actions.push({
@@ -352,7 +328,6 @@ class IrisGridContextMenuHandler extends GridMouseHandler {
352
328
  group: ContextActions.groups.high
353
329
  });
354
330
  }
355
-
356
331
  filterMenu.actions.push(...this.nullFilterActions(column));
357
332
  } else if (TableUtils.isBooleanType(column.type)) {
358
333
  // boolean should have OR condition, and handles it's own null menu options
@@ -364,15 +339,13 @@ class IrisGridContextMenuHandler extends GridMouseHandler {
364
339
  group: ContextActions.groups.high
365
340
  });
366
341
  }
367
-
368
342
  filterMenu.actions.push(...this.booleanFilterActions(column, valueText));
369
343
  } else if (TableUtils.isNumberType(column.type) || TableUtils.isCharType(column.type)) {
370
344
  // Chars get treated like numbers in terms of which filters are available
371
- assertNotNull(modelColumn); // We want to show the full unformatted value if it's a number, so user knows which value they are matching
345
+ assertNotNull(modelColumn);
346
+ // We want to show the full unformatted value if it's a number, so user knows which value they are matching
372
347
  // If it's a Char we just show the char
373
-
374
348
  var numberValueText = TableUtils.isCharType(column.type) ? String.fromCharCode(value) : "".concat(value);
375
-
376
349
  if (quickFilters.get(modelColumn)) {
377
350
  filterMenu.actions.push({
378
351
  title: 'And',
@@ -381,12 +354,10 @@ class IrisGridContextMenuHandler extends GridMouseHandler {
381
354
  group: ContextActions.groups.high
382
355
  });
383
356
  }
384
-
385
357
  filterMenu.actions.push(...this.numberFilterActions(column, numberValueText, value, quickFilters.get(modelColumn)));
386
358
  } else if (TableUtils.isDateType(column.type)) {
387
359
  var dateValueText = dateFilterFormatter.format(value);
388
360
  var previewValue = previewFilterFormatter.format(value);
389
-
390
361
  if (quickFilters.get(modelColumn)) {
391
362
  filterMenu.actions.push({
392
363
  title: 'And',
@@ -395,7 +366,6 @@ class IrisGridContextMenuHandler extends GridMouseHandler {
395
366
  group: ContextActions.groups.high
396
367
  });
397
368
  }
398
-
399
369
  filterMenu.actions.push(...this.dateFilterActions(column, dateValueText, previewValue, value, quickFilters.get(modelColumn)));
400
370
  } else {
401
371
  if (quickFilters.get(modelColumn)) {
@@ -406,15 +376,12 @@ class IrisGridContextMenuHandler extends GridMouseHandler {
406
376
  group: ContextActions.groups.high
407
377
  });
408
378
  }
409
-
410
379
  filterMenu.actions.push(...this.stringFilterActions(column, valueText, value));
411
380
  }
412
-
413
381
  if (filterMenu.actions != null && filterMenu.actions.length > 0) {
414
382
  actions.push(filterMenu);
415
383
  }
416
384
  }
417
-
418
385
  var gotoRow = {
419
386
  title: 'Go to',
420
387
  iconColor: filterIconColor,
@@ -424,7 +391,6 @@ class IrisGridContextMenuHandler extends GridMouseHandler {
424
391
  action: () => this.irisGrid.toggleGotoRow("".concat(rowIndex + 1))
425
392
  };
426
393
  actions.push(gotoRow);
427
-
428
394
  if (canCopy) {
429
395
  actions.push({
430
396
  title: 'Copy Cell',
@@ -443,10 +409,8 @@ class IrisGridContextMenuHandler extends GridMouseHandler {
443
409
  }
444
410
  });
445
411
  }
446
-
447
412
  return actions;
448
413
  }
449
-
450
414
  onContextMenu(gridPoint, grid, event) {
451
415
  var {
452
416
  irisGrid
@@ -480,7 +444,6 @@ class IrisGridContextMenuHandler extends GridMouseHandler {
480
444
  columnHeaderMaxDepth
481
445
  } = metrics;
482
446
  var actions = [];
483
-
484
447
  if (modelColumn != null && modelRow != null) {
485
448
  var value = model.valueForCell(modelColumn, modelRow);
486
449
  var valueText = model.textForCell(modelColumn, modelRow);
@@ -488,7 +451,6 @@ class IrisGridContextMenuHandler extends GridMouseHandler {
488
451
  var {
489
452
  onContextMenu
490
453
  } = irisGrid.props;
491
-
492
454
  if (column != null) {
493
455
  actions.push(onContextMenu({
494
456
  model,
@@ -502,7 +464,6 @@ class IrisGridContextMenuHandler extends GridMouseHandler {
502
464
  }));
503
465
  }
504
466
  }
505
-
506
467
  if (modelColumn != null && model.isFilterable(modelColumn)) {
507
468
  // Clear column filter should still be available after last row
508
469
  // And should be available in both header and body context menus
@@ -516,7 +477,6 @@ class IrisGridContextMenuHandler extends GridMouseHandler {
516
477
  disabled: !(quickFilters.has(modelColumn) || advancedFilters.has(modelColumn))
517
478
  });
518
479
  }
519
-
520
480
  if (isFilterBarShown ? y <= gridY : y <= columnHeaderHeight * columnHeaderMaxDepth && columnHeaderDepth === 0) {
521
481
  // grid header context menu options
522
482
  if (modelColumn != null) {
@@ -526,9 +486,9 @@ class IrisGridContextMenuHandler extends GridMouseHandler {
526
486
  // grid body context menu options
527
487
  if (modelColumn != null && modelRow != null) {
528
488
  actions.push(...this.getCellActions(modelColumn, grid, gridPoint));
529
- } // blank space context menu options
530
-
489
+ }
531
490
 
491
+ // blank space context menu options
532
492
  if (canCopy && selectedRanges.length > 0) {
533
493
  actions.push({
534
494
  title: 'Copy Selection',
@@ -548,7 +508,6 @@ class IrisGridContextMenuHandler extends GridMouseHandler {
548
508
  }
549
509
  });
550
510
  }
551
-
552
511
  if (isEditableGridModel(model) && model.isEditable && selectedRanges.length > 0) {
553
512
  actions.push({
554
513
  title: 'Delete Selected Rows',
@@ -560,19 +519,15 @@ class IrisGridContextMenuHandler extends GridMouseHandler {
560
519
  });
561
520
  }
562
521
  }
563
-
564
522
  if (actions.length === 0) {
565
523
  return false;
566
524
  }
567
-
568
525
  assertNotNull(irisGrid.gridWrapper);
569
526
  ContextActions.triggerMenu(irisGrid.gridWrapper, event.pageX, event.pageY, actions);
570
527
  return true;
571
528
  }
572
-
573
529
  dateFormatActions(column) {
574
530
  var _this = this;
575
-
576
531
  var {
577
532
  model
578
533
  } = this.irisGrid.props;
@@ -582,7 +537,6 @@ class IrisGridContextMenuHandler extends GridMouseHandler {
582
537
  var selectedFormat = formatter.getColumnFormat(column.type, column.name);
583
538
  var formatOptions = DateTimeFormatContextMenu.getOptions(formatter, selectedFormat);
584
539
  var actions = [];
585
-
586
540
  var _loop = function _loop(i) {
587
541
  var {
588
542
  description,
@@ -600,22 +554,17 @@ class IrisGridContextMenuHandler extends GridMouseHandler {
600
554
  action: () => {
601
555
  var modelIndex = model.getColumnIndexByName(column.name);
602
556
  assertNotNull(modelIndex);
603
-
604
557
  _this.irisGrid.handleFormatSelection(modelIndex, format);
605
558
  }
606
559
  });
607
560
  };
608
-
609
561
  for (var i = 0; i < formatOptions.length; i += 1) {
610
562
  _loop(i);
611
563
  }
612
-
613
564
  return actions;
614
565
  }
615
-
616
566
  numberFormatActions(column) {
617
567
  var _this2 = this;
618
-
619
568
  var {
620
569
  model
621
570
  } = this.irisGrid.props;
@@ -625,7 +574,6 @@ class IrisGridContextMenuHandler extends GridMouseHandler {
625
574
  var selectedFormat = formatter.getColumnFormat(column.type, column.name);
626
575
  var formatOptions;
627
576
  var columnIndex = model.getColumnIndexByName(column.name);
628
-
629
577
  if (TableUtils.isDecimalType(column.type)) {
630
578
  formatOptions = DecimalFormatContextMenu.getOptions(selectedFormat, format => {
631
579
  assertNotNull(columnIndex);
@@ -640,9 +588,7 @@ class IrisGridContextMenuHandler extends GridMouseHandler {
640
588
  log.error('Invalid column type in numberFormatActions');
641
589
  return null;
642
590
  }
643
-
644
591
  var actions = [];
645
-
646
592
  var _loop2 = function _loop2(i) {
647
593
  var {
648
594
  format,
@@ -655,32 +601,25 @@ class IrisGridContextMenuHandler extends GridMouseHandler {
655
601
  if (columnIndex === undefined && format && format.type === TableColumnFormatter.TYPE_CONTEXT_CUSTOM) {
656
602
  return;
657
603
  }
658
-
659
604
  assertNotNull(columnIndex);
660
-
661
605
  _this2.irisGrid.handleFormatSelection(columnIndex, format);
662
606
  }
663
607
  }));
664
608
  };
665
-
666
609
  for (var i = 0; i < formatOptions.length; i += 1) {
667
610
  _loop2(i);
668
611
  }
669
-
670
612
  return actions;
671
613
  }
672
-
673
614
  stringFilterActions(column, valueText, value, quickFilter, operator) {
674
615
  var filterValue = dh.FilterValue.ofString(value);
675
616
  var newQuickFilter = quickFilter;
676
-
677
617
  if (!newQuickFilter) {
678
618
  newQuickFilter = {
679
619
  filter: null,
680
620
  text: null
681
621
  };
682
622
  }
683
-
684
623
  var {
685
624
  filter,
686
625
  text: filterText
@@ -754,17 +693,14 @@ class IrisGridContextMenuHandler extends GridMouseHandler {
754
693
  });
755
694
  return actions;
756
695
  }
757
-
758
696
  numberFilterActions(column, valueText, value, quickFilter, operator) {
759
697
  var filterValue = IrisGridContextMenuHandler.getFilterValueForNumberOrChar(column.type, value);
760
698
  var filter = null;
761
699
  var filterText = null;
762
-
763
700
  if (quickFilter) {
764
701
  filter = quickFilter.filter;
765
702
  filterText = quickFilter.text;
766
703
  }
767
-
768
704
  var actions = [];
769
705
  var isFinite = value !== Number.POSITIVE_INFINITY && value !== Number.NEGATIVE_INFINITY && !Number.isNaN(value);
770
706
  var {
@@ -798,10 +734,11 @@ class IrisGridContextMenuHandler extends GridMouseHandler {
798
734
  },
799
735
  order: 20,
800
736
  group: ContextActions.groups.low
801
- }); // IDS-6092 Less/greater than filters don't make sense for Infinite/NaN
737
+ });
738
+
739
+ // IDS-6092 Less/greater than filters don't make sense for Infinite/NaN
802
740
  // TODO (DH-11799): These char filters should work in Bard, with the merge for DH-11040: https://gitlab.eng.illumon.com/illumon/iris/merge_requests/5801
803
741
  // They do not work in Powell though, so disable them.
804
-
805
742
  if (isFinite && !TableUtils.isCharType(column.type)) {
806
743
  actions.push({
807
744
  title: 'greater than',
@@ -840,10 +777,8 @@ class IrisGridContextMenuHandler extends GridMouseHandler {
840
777
  group: ContextActions.groups.low
841
778
  });
842
779
  }
843
-
844
780
  return actions;
845
781
  }
846
-
847
782
  booleanFilterActions(column, valueText, quickFilter, operator) {
848
783
  var actions = [];
849
784
  var {
@@ -900,17 +835,14 @@ class IrisGridContextMenuHandler extends GridMouseHandler {
900
835
  });
901
836
  return actions;
902
837
  }
903
-
904
838
  dateFilterActions(column, valueText, previewValue, value, quickFilter, operator) {
905
839
  var filterValue = dh.FilterValue.ofNumber(value);
906
840
  var filter = null;
907
841
  var filterText = null;
908
-
909
842
  if (quickFilter) {
910
843
  filter = quickFilter.filter;
911
844
  filterText = quickFilter.text;
912
845
  }
913
-
914
846
  var {
915
847
  model
916
848
  } = this.irisGrid.props;
@@ -980,16 +912,13 @@ class IrisGridContextMenuHandler extends GridMouseHandler {
980
912
  });
981
913
  return actions;
982
914
  }
983
-
984
915
  nullFilterActions(column, quickFilter, operator) {
985
916
  var filter = null;
986
917
  var filterText = null;
987
-
988
918
  if (quickFilter) {
989
919
  filter = quickFilter.filter;
990
920
  filterText = quickFilter.text;
991
921
  }
992
-
993
922
  var actions = [];
994
923
  var {
995
924
  model
@@ -1023,7 +952,6 @@ class IrisGridContextMenuHandler extends GridMouseHandler {
1023
952
  });
1024
953
  return actions;
1025
954
  }
1026
-
1027
955
  sortByActions(column, modelColumn, columnSort) {
1028
956
  var theme = this.irisGrid.getTheme();
1029
957
  var {
@@ -1053,7 +981,6 @@ class IrisGridContextMenuHandler extends GridMouseHandler {
1053
981
  },
1054
982
  disabled: !columnSort
1055
983
  }];
1056
-
1057
984
  if (TableUtils.isNumberType(column.type)) {
1058
985
  sortActions.push({
1059
986
  title: "ABS(".concat(column.name, ") Ascending"),
@@ -1074,10 +1001,8 @@ class IrisGridContextMenuHandler extends GridMouseHandler {
1074
1001
  iconColor: contextMenuSortIconColor
1075
1002
  });
1076
1003
  }
1077
-
1078
1004
  return sortActions;
1079
1005
  }
1080
-
1081
1006
  additionalSortActions(column, columnIndex) {
1082
1007
  var theme = this.irisGrid.getTheme();
1083
1008
  var {
@@ -1113,7 +1038,6 @@ class IrisGridContextMenuHandler extends GridMouseHandler {
1113
1038
  this.irisGrid.sortColumn(columnIndex, IrisGridContextMenuHandler.COLUMN_SORT_DIRECTION.descending, false, true);
1114
1039
  }
1115
1040
  }];
1116
-
1117
1041
  if (TableUtils.isNumberType(column.type)) {
1118
1042
  additionalSortActions.push({
1119
1043
  title: "ABS(".concat(column.name, ") Ascending"),
@@ -1130,42 +1054,28 @@ class IrisGridContextMenuHandler extends GridMouseHandler {
1130
1054
  }
1131
1055
  });
1132
1056
  }
1133
-
1134
1057
  return additionalSortActions;
1135
1058
  }
1136
-
1137
1059
  checkColumnSort(columnSort) {
1138
1060
  var direction = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
1139
1061
  var isAbs = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
1140
-
1141
1062
  if (!columnSort) {
1142
1063
  return false;
1143
1064
  }
1144
-
1145
1065
  return columnSort.direction === direction && columnSort.isAbs === isAbs;
1146
1066
  }
1147
-
1148
1067
  }
1149
-
1150
1068
  _defineProperty(IrisGridContextMenuHandler, "GROUP_EDIT", ContextActions.groups.high + 10);
1151
-
1152
1069
  _defineProperty(IrisGridContextMenuHandler, "GROUP_HIDE_COLUMNS", ContextActions.groups.high + 25);
1153
-
1154
1070
  _defineProperty(IrisGridContextMenuHandler, "GROUP_FILTER", ContextActions.groups.high + 50);
1155
-
1156
1071
  _defineProperty(IrisGridContextMenuHandler, "GROUP_GOTO", ContextActions.groups.high + 51);
1157
-
1158
1072
  _defineProperty(IrisGridContextMenuHandler, "GROUP_SORT", ContextActions.groups.high + 75);
1159
-
1160
1073
  _defineProperty(IrisGridContextMenuHandler, "GROUP_COPY", ContextActions.groups.high + 100);
1161
-
1162
1074
  _defineProperty(IrisGridContextMenuHandler, "GROUP_FORMAT", ContextActions.groups.high + 150);
1163
-
1164
1075
  _defineProperty(IrisGridContextMenuHandler, "COLUMN_SORT_DIRECTION", {
1165
1076
  ascending: 'ASC',
1166
1077
  descending: 'DESC',
1167
1078
  none: null
1168
1079
  });
1169
-
1170
1080
  export default IrisGridContextMenuHandler;
1171
1081
  //# sourceMappingURL=IrisGridContextMenuHandler.js.map