@deephaven/iris-grid 1.22.1 → 1.22.2-alpha-pivot-builder.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (195) hide show
  1. package/README.md +284 -1
  2. package/dist/AdvancedFilterCreator.js +65 -102
  3. package/dist/AdvancedFilterCreator.js.map +1 -1
  4. package/dist/AdvancedFilterCreatorFilterItem.js +22 -37
  5. package/dist/AdvancedFilterCreatorFilterItem.js.map +1 -1
  6. package/dist/AdvancedFilterCreatorSelectValue.js +37 -63
  7. package/dist/AdvancedFilterCreatorSelectValue.js.map +1 -1
  8. package/dist/AdvancedFilterCreatorSelectValueList.js +29 -59
  9. package/dist/AdvancedFilterCreatorSelectValueList.js.map +1 -1
  10. package/dist/ColumnHeaderGroup.js +6 -8
  11. package/dist/ColumnHeaderGroup.js.map +1 -1
  12. package/dist/ColumnStatistics.js +22 -28
  13. package/dist/ColumnStatistics.js.map +1 -1
  14. package/dist/CommonTypes.d.ts +62 -2
  15. package/dist/CommonTypes.d.ts.map +1 -1
  16. package/dist/CommonTypes.js.map +1 -1
  17. package/dist/CrossColumnSearch.js +20 -29
  18. package/dist/CrossColumnSearch.js.map +1 -1
  19. package/dist/FilterInputField.js +19 -46
  20. package/dist/FilterInputField.js.map +1 -1
  21. package/dist/GotoRow.js +32 -29
  22. package/dist/GotoRow.js.map +1 -1
  23. package/dist/IrisGrid.d.ts +85 -2
  24. package/dist/IrisGrid.d.ts.map +1 -1
  25. package/dist/IrisGrid.js +709 -861
  26. package/dist/IrisGrid.js.map +1 -1
  27. package/dist/IrisGridBottomBar.js +10 -11
  28. package/dist/IrisGridBottomBar.js.map +1 -1
  29. package/dist/IrisGridCacheUtils.js +28 -8
  30. package/dist/IrisGridCacheUtils.js.map +1 -1
  31. package/dist/IrisGridCellOverflowModal.js +30 -13
  32. package/dist/IrisGridCellOverflowModal.js.map +1 -1
  33. package/dist/IrisGridCellRendererUtils.js +6 -12
  34. package/dist/IrisGridCellRendererUtils.js.map +1 -1
  35. package/dist/IrisGridCopyHandler.js +28 -47
  36. package/dist/IrisGridCopyHandler.js.map +1 -1
  37. package/dist/IrisGridMetricCalculator.js +28 -51
  38. package/dist/IrisGridMetricCalculator.js.map +1 -1
  39. package/dist/IrisGridModel.d.ts +30 -1
  40. package/dist/IrisGridModel.d.ts.map +1 -1
  41. package/dist/IrisGridModel.js +36 -1
  42. package/dist/IrisGridModel.js.map +1 -1
  43. package/dist/IrisGridModelUpdater.js +32 -30
  44. package/dist/IrisGridModelUpdater.js.map +1 -1
  45. package/dist/IrisGridModelWidgetProps.d.ts +26 -0
  46. package/dist/IrisGridModelWidgetProps.d.ts.map +1 -0
  47. package/dist/IrisGridModelWidgetProps.js +2 -0
  48. package/dist/IrisGridModelWidgetProps.js.map +1 -0
  49. package/dist/IrisGridPartitionSelector.js +28 -62
  50. package/dist/IrisGridPartitionSelector.js.map +1 -1
  51. package/dist/IrisGridProxyModel.d.ts.map +1 -1
  52. package/dist/IrisGridProxyModel.js +41 -14
  53. package/dist/IrisGridProxyModel.js.map +1 -1
  54. package/dist/IrisGridRenderer.js +162 -264
  55. package/dist/IrisGridRenderer.js.map +1 -1
  56. package/dist/IrisGridTableModel.js +23 -16
  57. package/dist/IrisGridTableModel.js.map +1 -1
  58. package/dist/IrisGridTableModelTemplate.js +49 -73
  59. package/dist/IrisGridTableModelTemplate.js.map +1 -1
  60. package/dist/IrisGridTestUtils.js +19 -19
  61. package/dist/IrisGridTestUtils.js.map +1 -1
  62. package/dist/IrisGridTextCellRenderer.d.ts.map +1 -1
  63. package/dist/IrisGridTextCellRenderer.js +36 -53
  64. package/dist/IrisGridTextCellRenderer.js.map +1 -1
  65. package/dist/IrisGridTheme.js +9 -1
  66. package/dist/IrisGridTheme.js.map +1 -1
  67. package/dist/IrisGridThemeProvider.js +5 -7
  68. package/dist/IrisGridThemeProvider.js.map +1 -1
  69. package/dist/IrisGridTreeTableModel.js +5 -9
  70. package/dist/IrisGridTreeTableModel.js.map +1 -1
  71. package/dist/IrisGridUtils.d.ts +25 -2
  72. package/dist/IrisGridUtils.d.ts.map +1 -1
  73. package/dist/IrisGridUtils.js +297 -294
  74. package/dist/IrisGridUtils.js.map +1 -1
  75. package/dist/LazyIrisGrid.d.ts +1 -1
  76. package/dist/NoPastePermissionModal.js +3 -5
  77. package/dist/NoPastePermissionModal.js.map +1 -1
  78. package/dist/PendingDataBottomBar.js +27 -16
  79. package/dist/PendingDataBottomBar.js.map +1 -1
  80. package/dist/ToastBottomBar.js +16 -8
  81. package/dist/ToastBottomBar.js.map +1 -1
  82. package/dist/format-context-menus/CustomFormatAction.js +11 -24
  83. package/dist/format-context-menus/CustomFormatAction.js.map +1 -1
  84. package/dist/index.d.ts +1 -0
  85. package/dist/index.d.ts.map +1 -1
  86. package/dist/index.js +1 -0
  87. package/dist/index.js.map +1 -1
  88. package/dist/key-handlers/CopyCellKeyHandler.js +3 -4
  89. package/dist/key-handlers/CopyCellKeyHandler.js.map +1 -1
  90. package/dist/key-handlers/CopyKeyHandler.js +1 -3
  91. package/dist/key-handlers/CopyKeyHandler.js.map +1 -1
  92. package/dist/key-handlers/ReverseKeyHandler.js +1 -3
  93. package/dist/key-handlers/ReverseKeyHandler.js.map +1 -1
  94. package/dist/mousehandlers/IrisGridCellOverflowMouseHandler.js +35 -59
  95. package/dist/mousehandlers/IrisGridCellOverflowMouseHandler.js.map +1 -1
  96. package/dist/mousehandlers/IrisGridColumnSelectMouseHandler.js +13 -29
  97. package/dist/mousehandlers/IrisGridColumnSelectMouseHandler.js.map +1 -1
  98. package/dist/mousehandlers/IrisGridColumnTooltipMouseHandler.js +8 -17
  99. package/dist/mousehandlers/IrisGridColumnTooltipMouseHandler.js.map +1 -1
  100. package/dist/mousehandlers/IrisGridContextMenuHandler.js +96 -199
  101. package/dist/mousehandlers/IrisGridContextMenuHandler.js.map +1 -1
  102. package/dist/mousehandlers/IrisGridDataSelectMouseHandler.js +2 -4
  103. package/dist/mousehandlers/IrisGridDataSelectMouseHandler.js.map +1 -1
  104. package/dist/mousehandlers/IrisGridFilterMouseHandler.js +16 -30
  105. package/dist/mousehandlers/IrisGridFilterMouseHandler.js.map +1 -1
  106. package/dist/mousehandlers/IrisGridPartitionedTableMouseHandler.js +5 -13
  107. package/dist/mousehandlers/IrisGridPartitionedTableMouseHandler.js.map +1 -1
  108. package/dist/mousehandlers/IrisGridRowTreeMouseHandler.js +20 -36
  109. package/dist/mousehandlers/IrisGridRowTreeMouseHandler.js.map +1 -1
  110. package/dist/mousehandlers/IrisGridSortMouseHandler.js +3 -5
  111. package/dist/mousehandlers/IrisGridSortMouseHandler.js.map +1 -1
  112. package/dist/mousehandlers/IrisGridTokenMouseHandler.js +9 -18
  113. package/dist/mousehandlers/IrisGridTokenMouseHandler.js.map +1 -1
  114. package/dist/mousehandlers/PendingMouseHandler.js +10 -18
  115. package/dist/mousehandlers/PendingMouseHandler.js.map +1 -1
  116. package/dist/sidebar/AdvancedSettingsMenu.js +12 -5
  117. package/dist/sidebar/AdvancedSettingsMenu.js.map +1 -1
  118. package/dist/sidebar/ChartBuilder.js +45 -102
  119. package/dist/sidebar/ChartBuilder.js.map +1 -1
  120. package/dist/sidebar/CustomColumnBuilder.js +35 -77
  121. package/dist/sidebar/CustomColumnBuilder.js.map +1 -1
  122. package/dist/sidebar/CustomColumnInput.js +9 -11
  123. package/dist/sidebar/CustomColumnInput.js.map +1 -1
  124. package/dist/sidebar/InputEditor.js +17 -24
  125. package/dist/sidebar/InputEditor.js.map +1 -1
  126. package/dist/sidebar/IrisGridTableOptionsWidgetProps.d.ts +22 -0
  127. package/dist/sidebar/IrisGridTableOptionsWidgetProps.d.ts.map +1 -0
  128. package/dist/sidebar/IrisGridTableOptionsWidgetProps.js +2 -0
  129. package/dist/sidebar/IrisGridTableOptionsWidgetProps.js.map +1 -0
  130. package/dist/sidebar/OptionType.d.ts +8 -0
  131. package/dist/sidebar/OptionType.d.ts.map +1 -1
  132. package/dist/sidebar/OptionType.js +7 -0
  133. package/dist/sidebar/OptionType.js.map +1 -1
  134. package/dist/sidebar/PluginTableOptionsErrorBoundary.d.ts +30 -0
  135. package/dist/sidebar/PluginTableOptionsErrorBoundary.d.ts.map +1 -0
  136. package/dist/sidebar/PluginTableOptionsErrorBoundary.js +55 -0
  137. package/dist/sidebar/PluginTableOptionsErrorBoundary.js.map +1 -0
  138. package/dist/sidebar/RollupRows.js +72 -113
  139. package/dist/sidebar/RollupRows.js.map +1 -1
  140. package/dist/sidebar/SelectDistinctBuilder.js +16 -33
  141. package/dist/sidebar/SelectDistinctBuilder.js.map +1 -1
  142. package/dist/sidebar/TableCsvExporter.js +50 -74
  143. package/dist/sidebar/TableCsvExporter.js.map +1 -1
  144. package/dist/sidebar/TableSaver.js +18 -42
  145. package/dist/sidebar/TableSaver.js.map +1 -1
  146. package/dist/sidebar/aggregations/AggregationEdit.js +25 -18
  147. package/dist/sidebar/aggregations/AggregationEdit.js.map +1 -1
  148. package/dist/sidebar/aggregations/AggregationUtils.js +1 -3
  149. package/dist/sidebar/aggregations/AggregationUtils.js.map +1 -1
  150. package/dist/sidebar/aggregations/Aggregations.js +45 -34
  151. package/dist/sidebar/aggregations/Aggregations.js.map +1 -1
  152. package/dist/sidebar/conditional-formatting/ColumnFormatEditor.js +35 -24
  153. package/dist/sidebar/conditional-formatting/ColumnFormatEditor.js.map +1 -1
  154. package/dist/sidebar/conditional-formatting/ConditionEditor.js +38 -21
  155. package/dist/sidebar/conditional-formatting/ConditionEditor.js.map +1 -1
  156. package/dist/sidebar/conditional-formatting/ConditionalFormatEditor.js +27 -11
  157. package/dist/sidebar/conditional-formatting/ConditionalFormatEditor.js.map +1 -1
  158. package/dist/sidebar/conditional-formatting/ConditionalFormattingMenu.js +9 -11
  159. package/dist/sidebar/conditional-formatting/ConditionalFormattingMenu.js.map +1 -1
  160. package/dist/sidebar/conditional-formatting/ConditionalFormattingUtils.js +48 -57
  161. package/dist/sidebar/conditional-formatting/ConditionalFormattingUtils.js.map +1 -1
  162. package/dist/sidebar/conditional-formatting/RowFormatEditor.js +35 -24
  163. package/dist/sidebar/conditional-formatting/RowFormatEditor.js.map +1 -1
  164. package/dist/sidebar/conditional-formatting/StyleEditor.js +26 -11
  165. package/dist/sidebar/conditional-formatting/StyleEditor.js.map +1 -1
  166. package/dist/sidebar/index.d.ts +3 -2
  167. package/dist/sidebar/index.d.ts.map +1 -1
  168. package/dist/sidebar/index.js.map +1 -1
  169. package/dist/sidebar/visibility-ordering-builder/SearchItem.js +5 -7
  170. package/dist/sidebar/visibility-ordering-builder/SearchItem.js.map +1 -1
  171. package/dist/sidebar/visibility-ordering-builder/SearchWithModal.js +24 -18
  172. package/dist/sidebar/visibility-ordering-builder/SearchWithModal.js.map +1 -1
  173. package/dist/sidebar/visibility-ordering-builder/VisibilityOrderingBuilder.js +166 -256
  174. package/dist/sidebar/visibility-ordering-builder/VisibilityOrderingBuilder.js.map +1 -1
  175. package/dist/sidebar/visibility-ordering-builder/VisibilityOrderingBuilderUtils.js +4 -11
  176. package/dist/sidebar/visibility-ordering-builder/VisibilityOrderingBuilderUtils.js.map +1 -1
  177. package/dist/sidebar/visibility-ordering-builder/VisibilityOrderingGroup.js +28 -14
  178. package/dist/sidebar/visibility-ordering-builder/VisibilityOrderingGroup.js.map +1 -1
  179. package/dist/sidebar/visibility-ordering-builder/VisibilityOrderingItem.js +16 -19
  180. package/dist/sidebar/visibility-ordering-builder/VisibilityOrderingItem.js.map +1 -1
  181. package/dist/sidebar/visibility-ordering-builder/sortable-tree/PointerSensorWithInteraction.js +1 -3
  182. package/dist/sidebar/visibility-ordering-builder/sortable-tree/PointerSensorWithInteraction.js.map +1 -1
  183. package/dist/sidebar/visibility-ordering-builder/sortable-tree/SortableTree.js +19 -29
  184. package/dist/sidebar/visibility-ordering-builder/sortable-tree/SortableTree.js.map +1 -1
  185. package/dist/sidebar/visibility-ordering-builder/sortable-tree/SortableTreeDndContext.js +39 -52
  186. package/dist/sidebar/visibility-ordering-builder/sortable-tree/SortableTreeDndContext.js.map +1 -1
  187. package/dist/sidebar/visibility-ordering-builder/sortable-tree/SortableTreeItem.js +18 -23
  188. package/dist/sidebar/visibility-ordering-builder/sortable-tree/SortableTreeItem.js.map +1 -1
  189. package/dist/sidebar/visibility-ordering-builder/sortable-tree/TreeItem.js +19 -15
  190. package/dist/sidebar/visibility-ordering-builder/sortable-tree/TreeItem.js.map +1 -1
  191. package/dist/sidebar/visibility-ordering-builder/sortable-tree/keyboardCoordinates.js +16 -30
  192. package/dist/sidebar/visibility-ordering-builder/sortable-tree/keyboardCoordinates.js.map +1 -1
  193. package/dist/sidebar/visibility-ordering-builder/sortable-tree/utilities.js +30 -39
  194. package/dist/sidebar/visibility-ordering-builder/sortable-tree/utilities.js.map +1 -1
  195. package/package.json +16 -16
@@ -4,6 +4,12 @@ function _objectWithoutProperties(e, t) { if (null == e) return {}; var o, r, i
4
4
  function _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (-1 !== e.indexOf(n)) continue; t[n] = r[n]; } return t; }
5
5
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
6
6
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
7
+ function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
8
+ function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
9
+ function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
10
+ function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
11
+ function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
12
+ function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
7
13
  function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
8
14
  function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
9
15
  function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
@@ -48,29 +54,21 @@ class IrisGridUtils {
48
54
  * @returns An object that can be stringified and imported with {{@link hydrateGridState}}
49
55
  */
50
56
  static dehydrateGridState(model, gridState) {
51
- var {
52
- isStuckToBottom,
53
- isStuckToRight,
54
- movedColumns,
55
- movedRows
56
- } = gridState;
57
- var {
58
- columns
59
- } = model;
57
+ var isStuckToBottom = gridState.isStuckToBottom,
58
+ isStuckToRight = gridState.isStuckToRight,
59
+ movedColumns = gridState.movedColumns,
60
+ movedRows = gridState.movedRows;
61
+ var columns = model.columns;
60
62
  return {
61
63
  isStuckToBottom,
62
64
  isStuckToRight,
63
65
  movedColumns: [...movedColumns].filter(_ref => {
64
- var {
65
- to,
66
- from
67
- } = _ref;
66
+ var to = _ref.to,
67
+ from = _ref.from;
68
68
  return isValidIndex(to, columns) && (typeof from === 'number' && isValidIndex(from, columns) || Array.isArray(from) && isValidIndex(from[0], columns) && isValidIndex(from[1], columns));
69
69
  }).map(_ref2 => {
70
- var {
71
- to,
72
- from
73
- } = _ref2;
70
+ var to = _ref2.to,
71
+ from = _ref2.from;
74
72
  return {
75
73
  to: columns[to].name,
76
74
  from: Array.isArray(from) ? [columns[from[0]].name, columns[from[1]].name] : columns[from].name
@@ -88,40 +86,30 @@ class IrisGridUtils {
88
86
  */
89
87
  static hydrateGridState(model, gridState) {
90
88
  var customColumns = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : [];
91
- var {
92
- isStuckToBottom,
93
- isStuckToRight,
94
- movedColumns,
95
- movedRows
96
- } = gridState;
97
- var {
98
- columns
99
- } = model;
89
+ var isStuckToBottom = gridState.isStuckToBottom,
90
+ isStuckToRight = gridState.isStuckToRight,
91
+ movedColumns = gridState.movedColumns,
92
+ movedRows = gridState.movedRows;
93
+ var columns = model.columns;
100
94
  var customColumnNames = IrisGridUtils.parseCustomColumnNames(customColumns);
101
95
  var columnNames = columns.map(_ref3 => {
102
- var {
103
- name
104
- } = _ref3;
96
+ var name = _ref3.name;
105
97
  return name;
106
98
  }).concat(customColumnNames);
107
99
  return {
108
100
  isStuckToBottom,
109
101
  isStuckToRight,
110
102
  movedColumns: [...movedColumns].map(_ref4 => {
111
- var {
112
- to,
113
- from
114
- } = _ref4;
103
+ var to = _ref4.to,
104
+ from = _ref4.from;
115
105
  var getIndex = x => typeof x === 'string' ? columnNames.findIndex(name => name === x) : x;
116
106
  return {
117
107
  to: getIndex(to),
118
108
  from: Array.isArray(from) ? [getIndex(from[0]), getIndex(from[1])] : getIndex(from)
119
109
  };
120
110
  }).filter(_ref5 => {
121
- var {
122
- to,
123
- from
124
- } = _ref5;
111
+ var to = _ref5.to,
112
+ from = _ref5.from;
125
113
  return isValidIndex(to, columnNames) && (typeof from === 'number' && isValidIndex(from, columnNames) || Array.isArray(from) && isValidIndex(from[0], columnNames) && isValidIndex(from[1], columnNames));
126
114
  }),
127
115
  movedRows: [...movedRows]
@@ -135,11 +123,9 @@ class IrisGridUtils {
135
123
  * @returns The dehydrated IrisGridPanel state
136
124
  */
137
125
  static dehydrateIrisGridPanelState(model, irisGridPanelState) {
138
- var {
139
- isSelectingPartition,
140
- partitions,
141
- advancedSettings
142
- } = irisGridPanelState;
126
+ var isSelectingPartition = irisGridPanelState.isSelectingPartition,
127
+ partitions = irisGridPanelState.partitions,
128
+ advancedSettings = irisGridPanelState.advancedSettings;
143
129
 
144
130
  // Return value will be serialized, should not contain undefined
145
131
  return {
@@ -156,10 +142,8 @@ class IrisGridUtils {
156
142
  * @returns The state to apply to the IrisGridPanel
157
143
  */
158
144
  static hydrateIrisGridPanelState(model, irisGridPanelState) {
159
- var {
160
- isSelectingPartition,
161
- advancedSettings
162
- } = irisGridPanelState;
145
+ var isSelectingPartition = irisGridPanelState.isSelectingPartition,
146
+ advancedSettings = irisGridPanelState.advancedSettings;
163
147
  var partitions = [];
164
148
  if (isPanelStateV2(irisGridPanelState)) {
165
149
  partitions = irisGridPanelState.partitions;
@@ -180,10 +164,10 @@ class IrisGridUtils {
180
164
  */
181
165
  static dehydrateQuickFilters(quickFilters) {
182
166
  return [...quickFilters].map(_ref6 => {
183
- var [columnIndex, quickFilter] = _ref6;
184
- var {
185
- text
186
- } = quickFilter;
167
+ var _ref7 = _slicedToArray(_ref6, 2),
168
+ columnIndex = _ref7[0],
169
+ quickFilter = _ref7[1];
170
+ var text = quickFilter.text;
187
171
  return [columnIndex, {
188
172
  text
189
173
  }];
@@ -200,11 +184,9 @@ class IrisGridUtils {
200
184
  */
201
185
  static dehydrateSort(sorts) {
202
186
  return sorts.map(sort => {
203
- var {
204
- column,
205
- isAbs,
206
- direction
207
- } = sort;
187
+ var column = sort.column,
188
+ isAbs = sort.isAbs,
189
+ direction = sort.direction;
208
190
  return {
209
191
  column: column.name,
210
192
  isAbs,
@@ -220,16 +202,12 @@ class IrisGridUtils {
220
202
  */
221
203
  static extractTableSettings(panelState) {
222
204
  var inputFilters = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
223
- var {
224
- irisGridPanelState,
225
- irisGridState
226
- } = panelState;
205
+ var irisGridPanelState = panelState.irisGridPanelState,
206
+ irisGridState = panelState.irisGridState;
227
207
  var partitions = isPanelStateV2(irisGridPanelState) ? irisGridPanelState.partitions : [irisGridPanelState.partition];
228
- var {
229
- advancedFilters,
230
- quickFilters,
231
- sorts
232
- } = irisGridState;
208
+ var advancedFilters = irisGridState.advancedFilters,
209
+ quickFilters = irisGridState.quickFilters,
210
+ sorts = irisGridState.sorts;
233
211
  return {
234
212
  advancedFilters,
235
213
  inputFilters,
@@ -240,16 +218,12 @@ class IrisGridUtils {
240
218
  }
241
219
  static getInputFiltersForColumns(columns) {
242
220
  var inputFilters = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
243
- return inputFilters.filter(_ref7 => {
244
- var {
245
- name,
246
- type
247
- } = _ref7;
248
- return columns.find(_ref8 => {
249
- var {
250
- name: columnName,
251
- type: columnType
252
- } = _ref8;
221
+ return inputFilters.filter(_ref8 => {
222
+ var name = _ref8.name,
223
+ type = _ref8.type;
224
+ return columns.find(_ref9 => {
225
+ var columnName = _ref9.name,
226
+ columnType = _ref9.type;
253
227
  return columnName === name && columnType === type;
254
228
  });
255
229
  });
@@ -273,11 +247,13 @@ class IrisGridUtils {
273
247
  * @returns Array of hidden column indexes
274
248
  */
275
249
  static getHiddenColumns(userColumnWidths) {
276
- return [...userColumnWidths.entries()].filter(_ref9 => {
277
- var [, value] = _ref9;
250
+ return [...userColumnWidths.entries()].filter(_ref0 => {
251
+ var _ref1 = _slicedToArray(_ref0, 2),
252
+ value = _ref1[1];
278
253
  return value === 0;
279
- }).map(_ref0 => {
280
- var [key] = _ref0;
254
+ }).map(_ref10 => {
255
+ var _ref11 = _slicedToArray(_ref10, 1),
256
+ key = _ref11[0];
281
257
  return key;
282
258
  });
283
259
  }
@@ -293,10 +269,8 @@ class IrisGridUtils {
293
269
  return sorts.filter(sort => !columnNames.includes(sort.column.name));
294
270
  }
295
271
  static removeFiltersInColumns(columns, filters, removedColumnNames) {
296
- var columnNames = columns.map(_ref1 => {
297
- var {
298
- name
299
- } = _ref1;
272
+ var columnNames = columns.map(_ref12 => {
273
+ var name = _ref12.name;
300
274
  return name;
301
275
  });
302
276
  var newFilter = new Map(filters);
@@ -304,10 +278,8 @@ class IrisGridUtils {
304
278
  return newFilter;
305
279
  }
306
280
  static removeColumnFromMovedColumns(columns, movedColumns, removedColumnNames) {
307
- var columnNames = columns.map(_ref10 => {
308
- var {
309
- name
310
- } = _ref10;
281
+ var columnNames = columns.map(_ref13 => {
282
+ var name = _ref13.name;
311
283
  return name;
312
284
  });
313
285
  var newMoves = [...movedColumns];
@@ -318,7 +290,10 @@ class IrisGridUtils {
318
290
  for (var j = 0; j < newMoves.length; j += 1) {
319
291
  var move = newMoves[j];
320
292
  var newMove = _objectSpread({}, move);
321
- var [fromStart, fromEnd] = Array.isArray(move.from) ? move.from : [move.from, move.from];
293
+ var _ref14 = Array.isArray(move.from) ? move.from : [move.from, move.from],
294
+ _ref15 = _slicedToArray(_ref14, 2),
295
+ fromStart = _ref15[0],
296
+ fromEnd = _ref15[1];
322
297
  if (removedColumnIndex <= move.to) {
323
298
  newMove.to -= 1;
324
299
  }
@@ -395,10 +370,8 @@ class IrisGridUtils {
395
370
  static getColumnsToFetch(tableColumns, viewportColumns, alwaysFetchColumnNames) {
396
371
  var columnsToFetch = [...viewportColumns];
397
372
  alwaysFetchColumnNames.forEach(columnName => {
398
- var column = tableColumns.find(_ref11 => {
399
- var {
400
- name
401
- } = _ref11;
373
+ var column = tableColumns.find(_ref16 => {
374
+ var name = _ref16.name;
402
375
  return name === columnName;
403
376
  });
404
377
  if (column != null && !viewportColumns.includes(column)) {
@@ -503,10 +476,8 @@ class IrisGridUtils {
503
476
  * @returns A matrix of the values of the data
504
477
  */
505
478
  static snapshotDataToMatrix(data) {
506
- var {
507
- columns,
508
- rows
509
- } = data;
479
+ var columns = data.columns,
480
+ rows = data.rows;
510
481
  var result = [];
511
482
  for (var r = 0; r < rows.length; r += 1) {
512
483
  var row = rows[r];
@@ -533,27 +504,26 @@ class IrisGridUtils {
533
504
  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) {
534
505
  return null;
535
506
  }
536
- var {
537
- columns: groupingColumns = [],
538
- showConstituents: includeConstituents = true,
539
- showNonAggregatedColumns = true,
540
- includeDescriptions = true
541
- } = config !== null && config !== void 0 ? config : {};
542
- var {
543
- aggregations = []
544
- } = aggregationSettings !== null && aggregationSettings !== void 0 ? aggregationSettings : {};
545
- var filteredAggregations = aggregations.filter(_ref12 => {
546
- var {
547
- operation
548
- } = _ref12;
507
+ var _ref17 = config !== null && config !== void 0 ? config : {},
508
+ _ref17$columns = _ref17.columns,
509
+ groupingColumns = _ref17$columns === void 0 ? [] : _ref17$columns,
510
+ _ref17$showConstituen = _ref17.showConstituents,
511
+ includeConstituents = _ref17$showConstituen === void 0 ? true : _ref17$showConstituen,
512
+ _ref17$showNonAggrega = _ref17.showNonAggregatedColumns,
513
+ showNonAggregatedColumns = _ref17$showNonAggrega === void 0 ? true : _ref17$showNonAggrega,
514
+ _ref17$includeDescrip = _ref17.includeDescriptions,
515
+ includeDescriptions = _ref17$includeDescrip === void 0 ? true : _ref17$includeDescrip;
516
+ var _ref18 = aggregationSettings !== null && aggregationSettings !== void 0 ? aggregationSettings : {},
517
+ _ref18$aggregations = _ref18.aggregations,
518
+ aggregations = _ref18$aggregations === void 0 ? [] : _ref18$aggregations;
519
+ var filteredAggregations = aggregations.filter(_ref19 => {
520
+ var operation = _ref19.operation;
549
521
  return !AggregationUtils.isRollupProhibited(operation);
550
522
  });
551
- var aggregationColumns = filteredAggregations.map(_ref13 => {
552
- var {
553
- operation,
554
- selected,
555
- invert
556
- } = _ref13;
523
+ var aggregationColumns = filteredAggregations.map(_ref20 => {
524
+ var operation = _ref20.operation,
525
+ selected = _ref20.selected,
526
+ invert = _ref20.invert;
557
527
  return AggregationUtils.isRollupOperation(operation) ? [] : AggregationUtils.getOperationColumnNames(originalColumns, operation, selected, invert);
558
528
  });
559
529
  var aggregationMap = {};
@@ -581,6 +551,61 @@ class IrisGridUtils {
581
551
  };
582
552
  }
583
553
 
554
+ /**
555
+ * Build a per-column aggregation operation map for use in a
556
+ * `UITotalsTableConfig`. Rollup-only operations are skipped.
557
+ */
558
+ static getOperationMap(columns, aggregations) {
559
+ var operationMap = {};
560
+ aggregations.filter(a => !AggregationUtils.isRollupOperation(a.operation)).forEach(_ref21 => {
561
+ var operation = _ref21.operation,
562
+ selected = _ref21.selected,
563
+ invert = _ref21.invert;
564
+ AggregationUtils.getOperationColumnNames(columns, operation, selected, invert).forEach(name => {
565
+ var _operationMap$name;
566
+ var newOperations = [...((_operationMap$name = operationMap[name]) !== null && _operationMap$name !== void 0 ? _operationMap$name : []), operation];
567
+ operationMap[name] = Object.freeze(newOperations);
568
+ });
569
+ });
570
+ return operationMap;
571
+ }
572
+
573
+ /**
574
+ * Ordered list of (non-rollup) operations used by a totals table.
575
+ */
576
+ static getOperationOrder(aggregations) {
577
+ return aggregations.map(a => a.operation).filter(o => !AggregationUtils.isRollupOperation(o));
578
+ }
579
+
580
+ /**
581
+ * Hydrate model totals config for a standalone aggregations view
582
+ * (no rollup). Returns `null` when there are no active aggregations
583
+ * or when a rollup is active (in which case aggregations are folded
584
+ * into the rollup config instead — see `getModelRollupConfig`).
585
+ *
586
+ * @param columns Model columns
587
+ * @param rollupConfig Current rollup config (or undefined). When set
588
+ * with at least one grouping column, this returns
589
+ * `null` so totals don't double-up with the rollup.
590
+ * @param aggregationSettings Aggregation settings
591
+ */
592
+ static getModelTotalsConfig(columns, rollupConfig, aggregationSettings) {
593
+ var _rollupConfig$columns, _rollupConfig$columns2;
594
+ if (((_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) {
595
+ return null;
596
+ }
597
+ var aggregations = aggregationSettings.aggregations.filter(agg => agg.selected.length > 0 || agg.invert);
598
+ if (aggregations.length === 0) {
599
+ return null;
600
+ }
601
+ return {
602
+ operationMap: IrisGridUtils.getOperationMap(columns, aggregations),
603
+ operationOrder: IrisGridUtils.getOperationOrder(aggregations),
604
+ showOnTop: aggregationSettings.showOnTop,
605
+ defaultOperation: AggregationOperation.SKIP
606
+ };
607
+ }
608
+
584
609
  /**
585
610
  * @param pendingDataMap Map of pending data
586
611
  * @returns A map with the errors in the pending data
@@ -590,9 +615,7 @@ class IrisGridUtils {
590
615
  if (!IrisGridUtils.isValidIndex(rowIndex)) {
591
616
  throw new Error("Invalid rowIndex ".concat(rowIndex));
592
617
  }
593
- var {
594
- data
595
- } = row;
618
+ var data = row.data;
596
619
  data.forEach((value, columnIndex) => {
597
620
  if (!IrisGridUtils.isValidIndex(columnIndex)) {
598
621
  throw new Error("Invalid columnIndex ".concat(columnIndex));
@@ -622,17 +645,13 @@ class IrisGridUtils {
622
645
  */
623
646
  static getColumnByName(columns, columnName) {
624
647
  // Columns can contain ColumnBy sources with negative indexes
625
- var column = Object.values(columns).find(_ref14 => {
626
- var {
627
- name
628
- } = _ref14;
648
+ var column = Object.values(columns).find(_ref22 => {
649
+ var name = _ref22.name;
629
650
  return name === columnName;
630
651
  });
631
652
  if (column == null) {
632
- log.error('Unable to retrieve column by name', columnName, columns.map(_ref15 => {
633
- var {
634
- name
635
- } = _ref15;
653
+ log.error('Unable to retrieve column by name', columnName, columns.map(_ref23 => {
654
+ var name = _ref23.name;
636
655
  return name;
637
656
  }));
638
657
  }
@@ -646,11 +665,9 @@ class IrisGridUtils {
646
665
  * @returns Updated filter configs with column names changed to indexes
647
666
  */
648
667
  static changeFilterColumnNamesToIndexes(columns, filters) {
649
- return filters.map(_ref16 => {
650
- var {
651
- name,
652
- filter
653
- } = _ref16;
668
+ return filters.map(_ref24 => {
669
+ var name = _ref24.name,
670
+ filter = _ref24.filter;
654
671
  var index = columns.findIndex(column => column.name === name);
655
672
  return index < 0 ? null : [index, filter];
656
673
  }).filter(filterConfig => filterConfig != null);
@@ -674,11 +691,10 @@ class IrisGridUtils {
674
691
  });
675
692
  var combinedText = '';
676
693
  for (var i = 0; i < filterList.length; i += 1) {
677
- var {
678
- text,
679
- value,
680
- operator
681
- } = filterList[i];
694
+ var _filterList$i = filterList[i],
695
+ text = _filterList$i.text,
696
+ value = _filterList$i.value,
697
+ operator = _filterList$i.operator;
682
698
  if (value !== undefined) {
683
699
  var symbol = '';
684
700
  if (operator !== undefined) {
@@ -721,10 +737,8 @@ class IrisGridUtils {
721
737
  var groupMap = new Map();
722
738
 
723
739
  // Remove any empty groups before parsing
724
- var groups = groupsParam === null || groupsParam === void 0 ? void 0 : groupsParam.filter(_ref17 => {
725
- var {
726
- children
727
- } = _ref17;
740
+ var groups = groupsParam === null || groupsParam === void 0 ? void 0 : groupsParam.filter(_ref25 => {
741
+ var children = _ref25.children;
728
742
  return children != null && children.length > 0;
729
743
  });
730
744
  if (groups.length === 0) {
@@ -739,9 +753,7 @@ class IrisGridUtils {
739
753
  var seenChildren = new Set();
740
754
  var addGroup = group => {
741
755
  var _group$children;
742
- var {
743
- name
744
- } = group;
756
+ var name = group.name;
745
757
  assertNotNull(name, 'Column header group has no name');
746
758
  var columnIndex = model.getColumnIndexByName(name);
747
759
  // Groups cannot have names matching columns to avoid parent-child collision
@@ -792,9 +804,7 @@ class IrisGridUtils {
792
804
  };
793
805
  var groupNames = new Set();
794
806
  groups.forEach(group => {
795
- var {
796
- name
797
- } = group;
807
+ var name = group.name;
798
808
  if (groupNames.has(name)) {
799
809
  throw new Error("Duplicate column group name: ".concat(name));
800
810
  }
@@ -850,39 +860,42 @@ class IrisGridUtils {
850
860
  * @param irisGridState The current state of the IrisGrid
851
861
  */
852
862
  dehydrateIrisGridState(model, irisGridState) {
853
- var {
854
- aggregationSettings = {
863
+ var _irisGridState$aggreg = irisGridState.aggregationSettings,
864
+ aggregationSettings = _irisGridState$aggreg === void 0 ? {
855
865
  aggregations: EMPTY_ARRAY,
856
866
  showOnTop: false
857
- },
858
- advancedFilters,
859
- customColumnFormatMap,
860
- columnAlignmentMap = EMPTY_MAP,
861
- isFilterBarShown,
862
- metricCalculator,
863
- metrics: {
864
- userColumnWidths = new Map(),
865
- userRowHeights = new Map()
866
- } = {},
867
- quickFilters,
868
- customColumns,
869
- conditionalFormats = EMPTY_ARRAY,
870
- reverse,
871
- rollupConfig,
872
- showSearchBar,
873
- searchValue,
874
- selectDistinctColumns = EMPTY_ARRAY,
875
- selectedSearchColumns,
876
- sorts,
877
- invertSearchColumns,
878
- pendingDataMap = EMPTY_MAP,
879
- frozenColumns,
880
- columnHeaderGroups,
881
- partitionConfig
882
- } = irisGridState;
883
- var {
884
- columns
885
- } = model;
867
+ } : _irisGridState$aggreg,
868
+ advancedFilters = irisGridState.advancedFilters,
869
+ customColumnFormatMap = irisGridState.customColumnFormatMap,
870
+ _irisGridState$column = irisGridState.columnAlignmentMap,
871
+ columnAlignmentMap = _irisGridState$column === void 0 ? EMPTY_MAP : _irisGridState$column,
872
+ isFilterBarShown = irisGridState.isFilterBarShown,
873
+ metricCalculator = irisGridState.metricCalculator,
874
+ _irisGridState$metric = irisGridState.metrics,
875
+ _irisGridState$metric2 = _irisGridState$metric === void 0 ? {} : _irisGridState$metric,
876
+ _irisGridState$metric3 = _irisGridState$metric2.userColumnWidths,
877
+ userColumnWidths = _irisGridState$metric3 === void 0 ? new Map() : _irisGridState$metric3,
878
+ _irisGridState$metric4 = _irisGridState$metric2.userRowHeights,
879
+ userRowHeights = _irisGridState$metric4 === void 0 ? new Map() : _irisGridState$metric4,
880
+ quickFilters = irisGridState.quickFilters,
881
+ customColumns = irisGridState.customColumns,
882
+ _irisGridState$condit = irisGridState.conditionalFormats,
883
+ conditionalFormats = _irisGridState$condit === void 0 ? EMPTY_ARRAY : _irisGridState$condit,
884
+ reverse = irisGridState.reverse,
885
+ rollupConfig = irisGridState.rollupConfig,
886
+ showSearchBar = irisGridState.showSearchBar,
887
+ searchValue = irisGridState.searchValue,
888
+ _irisGridState$select = irisGridState.selectDistinctColumns,
889
+ selectDistinctColumns = _irisGridState$select === void 0 ? EMPTY_ARRAY : _irisGridState$select,
890
+ selectedSearchColumns = irisGridState.selectedSearchColumns,
891
+ sorts = irisGridState.sorts,
892
+ invertSearchColumns = irisGridState.invertSearchColumns,
893
+ _irisGridState$pendin = irisGridState.pendingDataMap,
894
+ pendingDataMap = _irisGridState$pendin === void 0 ? EMPTY_MAP : _irisGridState$pendin,
895
+ frozenColumns = irisGridState.frozenColumns,
896
+ columnHeaderGroups = irisGridState.columnHeaderGroups,
897
+ partitionConfig = irisGridState.partitionConfig;
898
+ var columns = model.columns;
886
899
  var partitionColumns = isPartitionedGridModelProvider(model) ? model.partitionColumns : [];
887
900
 
888
901
  // Prefer the by-name map from the metric calculator: it preserves entries
@@ -890,11 +903,14 @@ class IrisGridUtils {
890
903
  // active), so reload-then-save round-trips don't drop them.
891
904
  // Fall back to projecting the by-index map from `metrics` against the
892
905
  // current model for callers that didn't pass a metric calculator.
893
- var dehydratedUserColumnWidths = metricCalculator != null ? [...metricCalculator.getUserColumnWidthsByName()] : [...userColumnWidths].filter(_ref18 => {
894
- var [columnIndex] = _ref18;
906
+ var dehydratedUserColumnWidths = metricCalculator != null ? [...metricCalculator.getUserColumnWidthsByName()] : [...userColumnWidths].filter(_ref26 => {
907
+ var _ref27 = _slicedToArray(_ref26, 1),
908
+ columnIndex = _ref27[0];
895
909
  return columnIndex != null && columnIndex >= 0 && columnIndex < columns.length;
896
- }).map(_ref19 => {
897
- var [columnIndex, width] = _ref19;
910
+ }).map(_ref28 => {
911
+ var _ref29 = _slicedToArray(_ref28, 2),
912
+ columnIndex = _ref29[0],
913
+ width = _ref29[1];
898
914
  return [columns[columnIndex].name, width];
899
915
  });
900
916
 
@@ -938,39 +954,40 @@ class IrisGridUtils {
938
954
  * @param irisGridState The saved IrisGrid state
939
955
  */
940
956
  hydrateIrisGridState(model, irisGridState) {
941
- var _ref23, _model$layoutHints;
942
- var {
943
- advancedFilters,
944
- aggregationSettings = {
957
+ var _ref36, _model$layoutHints;
958
+ var advancedFilters = irisGridState.advancedFilters,
959
+ _irisGridState$aggreg2 = irisGridState.aggregationSettings,
960
+ aggregationSettings = _irisGridState$aggreg2 === void 0 ? {
945
961
  aggregations: [],
946
962
  showOnTop: false
947
- },
948
- customColumnFormatMap,
949
- columnAlignmentMap = [],
950
- isFilterBarShown,
951
- quickFilters,
952
- sorts,
953
- customColumns,
954
- conditionalFormats,
955
- userColumnWidths,
956
- userRowHeights,
957
- reverseType,
958
- reverse,
959
- rollupConfig = undefined,
960
- showSearchBar,
961
- searchValue,
962
- selectDistinctColumns,
963
- selectedSearchColumns,
964
- invertSearchColumns = true,
965
- pendingDataMap = [],
966
- frozenColumns,
967
- columnHeaderGroups,
968
- partitionConfig
969
- } = irisGridState;
970
- var {
971
- columns,
972
- formatter
973
- } = model;
963
+ } : _irisGridState$aggreg2,
964
+ customColumnFormatMap = irisGridState.customColumnFormatMap,
965
+ _irisGridState$column2 = irisGridState.columnAlignmentMap,
966
+ columnAlignmentMap = _irisGridState$column2 === void 0 ? [] : _irisGridState$column2,
967
+ isFilterBarShown = irisGridState.isFilterBarShown,
968
+ quickFilters = irisGridState.quickFilters,
969
+ sorts = irisGridState.sorts,
970
+ customColumns = irisGridState.customColumns,
971
+ conditionalFormats = irisGridState.conditionalFormats,
972
+ userColumnWidths = irisGridState.userColumnWidths,
973
+ userRowHeights = irisGridState.userRowHeights,
974
+ reverseType = irisGridState.reverseType,
975
+ reverse = irisGridState.reverse,
976
+ _irisGridState$rollup = irisGridState.rollupConfig,
977
+ rollupConfig = _irisGridState$rollup === void 0 ? undefined : _irisGridState$rollup,
978
+ showSearchBar = irisGridState.showSearchBar,
979
+ searchValue = irisGridState.searchValue,
980
+ selectDistinctColumns = irisGridState.selectDistinctColumns,
981
+ selectedSearchColumns = irisGridState.selectedSearchColumns,
982
+ _irisGridState$invert = irisGridState.invertSearchColumns,
983
+ invertSearchColumns = _irisGridState$invert === void 0 ? true : _irisGridState$invert,
984
+ _irisGridState$pendin2 = irisGridState.pendingDataMap,
985
+ pendingDataMap = _irisGridState$pendin2 === void 0 ? [] : _irisGridState$pendin2,
986
+ frozenColumns = irisGridState.frozenColumns,
987
+ columnHeaderGroups = irisGridState.columnHeaderGroups,
988
+ partitionConfig = irisGridState.partitionConfig;
989
+ var columns = model.columns,
990
+ formatter = model.formatter;
974
991
  var partitionColumns = isPartitionedGridModelProvider(model) ? model.partitionColumns : [];
975
992
 
976
993
  // Build a name-keyed map preserving every persisted entry, including
@@ -978,9 +995,11 @@ class IrisGridUtils {
978
995
  // by-index map from that for back-compat with consumers that read
979
996
  // widths immediately after hydrate.
980
997
  var userColumnWidthsByName = new Map();
981
- userColumnWidths.forEach(_ref20 => {
998
+ userColumnWidths.forEach(_ref30 => {
982
999
  var _columns;
983
- var [column, width] = _ref20;
1000
+ var _ref31 = _slicedToArray(_ref30, 2),
1001
+ column = _ref31[0],
1002
+ width = _ref31[1];
984
1003
  var name = typeof column === 'string' || column instanceof String ? column : (_columns = columns[column]) === null || _columns === void 0 ? void 0 : _columns.name;
985
1004
  if (name != null) {
986
1005
  userColumnWidthsByName.set(name, width);
@@ -995,11 +1014,14 @@ class IrisGridUtils {
995
1014
  quickFilters: this.hydrateQuickFilters(columns, quickFilters, formatter.timeZone),
996
1015
  sorts: this.hydrateSort(columns, sorts, true),
997
1016
  userColumnWidthsByName,
998
- userColumnWidths: new Map([...userColumnWidthsByName].map(_ref21 => {
999
- var [name, width] = _ref21;
1017
+ userColumnWidths: new Map([...userColumnWidthsByName].map(_ref32 => {
1018
+ var _ref33 = _slicedToArray(_ref32, 2),
1019
+ name = _ref33[0],
1020
+ width = _ref33[1];
1000
1021
  return [columns.findIndex(c => c.name === name), width];
1001
- }).filter(_ref22 => {
1002
- var [column] = _ref22;
1022
+ }).filter(_ref34 => {
1023
+ var _ref35 = _slicedToArray(_ref34, 1),
1024
+ column = _ref35[0];
1003
1025
  return column != null && column >= 0 && column < columns.length;
1004
1026
  })),
1005
1027
  customColumns,
@@ -1014,7 +1036,7 @@ class IrisGridUtils {
1014
1036
  invertSearchColumns,
1015
1037
  pendingDataMap: this.hydratePendingDataMap(columns, pendingDataMap),
1016
1038
  frozenColumns,
1017
- columnHeaderGroups: IrisGridUtils.parseColumnHeaderGroups(model, (_ref23 = columnHeaderGroups !== null && columnHeaderGroups !== void 0 ? columnHeaderGroups : (_model$layoutHints = model.layoutHints) === null || _model$layoutHints === void 0 ? void 0 : _model$layoutHints.columnGroups) !== null && _ref23 !== void 0 ? _ref23 : []).groups,
1039
+ columnHeaderGroups: IrisGridUtils.parseColumnHeaderGroups(model, (_ref36 = columnHeaderGroups !== null && columnHeaderGroups !== void 0 ? columnHeaderGroups : (_model$layoutHints = model.layoutHints) === null || _model$layoutHints === void 0 ? void 0 : _model$layoutHints.columnGroups) !== null && _ref36 !== void 0 ? _ref36 : []).groups,
1018
1040
  partitionConfig: this.hydratePartitionConfig(partitionColumns, partitionConfig)
1019
1041
  };
1020
1042
  }
@@ -1027,11 +1049,11 @@ class IrisGridUtils {
1027
1049
  * @returns The quick filters to apply to the columns
1028
1050
  */
1029
1051
  hydrateQuickFilters(columns, savedQuickFilters, timeZone) {
1030
- var importedFilters = savedQuickFilters.map(_ref24 => {
1031
- var [columnIndex, quickFilter] = _ref24;
1032
- var {
1033
- text
1034
- } = quickFilter;
1052
+ var importedFilters = savedQuickFilters.map(_ref37 => {
1053
+ var _ref38 = _slicedToArray(_ref37, 2),
1054
+ columnIndex = _ref38[0],
1055
+ quickFilter = _ref38[1];
1056
+ var text = quickFilter.text;
1035
1057
  var filter = null;
1036
1058
  try {
1037
1059
  var column = IrisGridUtils.getColumn(columns, columnIndex);
@@ -1056,8 +1078,10 @@ class IrisGridUtils {
1056
1078
  * @returns The dehydrated advanced filters
1057
1079
  */
1058
1080
  dehydrateAdvancedFilters(columns, advancedFilters) {
1059
- return [...advancedFilters].map(_ref25 => {
1060
- var [columnIndex, advancedFilter] = _ref25;
1081
+ return [...advancedFilters].map(_ref39 => {
1082
+ var _ref40 = _slicedToArray(_ref39, 2),
1083
+ columnIndex = _ref40[0],
1084
+ advancedFilter = _ref40[1];
1061
1085
  var column = IrisGridUtils.getColumn(columns, columnIndex);
1062
1086
  assertNotNull(column);
1063
1087
  var options = this.dehydrateAdvancedFilterOptions(column, advancedFilter.options);
@@ -1075,8 +1099,10 @@ class IrisGridUtils {
1075
1099
  * @returns The advanced filters to apply to the columns
1076
1100
  */
1077
1101
  hydrateAdvancedFilters(columns, savedAdvancedFilters, timeZone) {
1078
- var importedFilters = savedAdvancedFilters.map(_ref26 => {
1079
- var [columnIndex, advancedFilter] = _ref26;
1102
+ var importedFilters = savedAdvancedFilters.map(_ref41 => {
1103
+ var _ref42 = _slicedToArray(_ref41, 2),
1104
+ columnIndex = _ref42[0],
1105
+ advancedFilter = _ref42[1];
1080
1106
  var column = IrisGridUtils.getColumn(columns, columnIndex);
1081
1107
  assertNotNull(column);
1082
1108
  var options = this.hydrateAdvancedFilterOptions(column, advancedFilter.options);
@@ -1097,34 +1123,33 @@ class IrisGridUtils {
1097
1123
  return new Map(importedFilters);
1098
1124
  }
1099
1125
  dehydrateAdvancedFilterOptions(column, options) {
1100
- var {
1101
- selectedValues
1102
- } = options,
1126
+ var selectedValues = options.selectedValues,
1103
1127
  otherOptions = _objectWithoutProperties(options, _excluded);
1104
1128
  return _objectSpread({
1105
1129
  selectedValues: selectedValues === null || selectedValues === void 0 ? void 0 : selectedValues.map(value => this.dehydrateValue(value, column === null || column === void 0 ? void 0 : column.type))
1106
1130
  }, otherOptions);
1107
1131
  }
1108
1132
  hydrateAdvancedFilterOptions(column, options) {
1109
- var {
1110
- selectedValues
1111
- } = options,
1133
+ var selectedValues = options.selectedValues,
1112
1134
  otherOptions = _objectWithoutProperties(options, _excluded2);
1113
1135
  return _objectSpread({
1114
1136
  selectedValues: selectedValues === null || selectedValues === void 0 ? void 0 : selectedValues.map(value => this.hydrateValue(value, column === null || column === void 0 ? void 0 : column.type))
1115
1137
  }, otherOptions);
1116
1138
  }
1117
1139
  dehydratePendingDataMap(columns, pendingDataMap) {
1118
- return [...pendingDataMap].map(_ref27 => {
1119
- var [rowIndex, {
1120
- data
1121
- }] = _ref27;
1140
+ return [...pendingDataMap].map(_ref43 => {
1141
+ var _ref44 = _slicedToArray(_ref43, 2),
1142
+ rowIndex = _ref44[0],
1143
+ data = _ref44[1].data;
1122
1144
  return [rowIndex, {
1123
- data: [...data].filter(_ref28 => {
1124
- var [c] = _ref28;
1145
+ data: [...data].filter(_ref45 => {
1146
+ var _ref46 = _slicedToArray(_ref45, 1),
1147
+ c = _ref46[0];
1125
1148
  return typeof c === 'number';
1126
- }).map(_ref29 => {
1127
- var [c, cellData] = _ref29;
1149
+ }).map(_ref47 => {
1150
+ var _ref48 = _slicedToArray(_ref47, 2),
1151
+ c = _ref48[0],
1152
+ cellData = _ref48[1];
1128
1153
  return [columns[c].name, this.dehydrateValue(cellData.value, columns[c].type)];
1129
1154
  })
1130
1155
  }];
@@ -1134,23 +1159,23 @@ class IrisGridUtils {
1134
1159
  var columnMap = new Map();
1135
1160
  var getColumnIndex = columnName => {
1136
1161
  if (!columnMap.has(columnName)) {
1137
- columnMap.set(columnName, columns.findIndex(_ref30 => {
1138
- var {
1139
- name
1140
- } = _ref30;
1162
+ columnMap.set(columnName, columns.findIndex(_ref49 => {
1163
+ var name = _ref49.name;
1141
1164
  return name === columnName;
1142
1165
  }));
1143
1166
  }
1144
1167
  return columnMap.get(columnName);
1145
1168
  };
1146
- return new Map(pendingDataMap.map(_ref31 => {
1147
- var [rowIndex, {
1148
- data
1149
- }] = _ref31;
1169
+ return new Map(pendingDataMap.map(_ref50 => {
1170
+ var _ref51 = _slicedToArray(_ref50, 2),
1171
+ rowIndex = _ref51[0],
1172
+ data = _ref51[1].data;
1150
1173
  return [rowIndex, {
1151
- data: new Map(data.map(_ref32 => {
1174
+ data: new Map(data.map(_ref52 => {
1152
1175
  var _getColumnIndex;
1153
- var [columnName, value] = _ref32;
1176
+ var _ref53 = _slicedToArray(_ref52, 2),
1177
+ columnName = _ref53[0],
1178
+ value = _ref53[1];
1154
1179
  var index = getColumnIndex(columnName);
1155
1180
  assertNotNull(index);
1156
1181
  return [(_getColumnIndex = getColumnIndex(columnName)) !== null && _getColumnIndex !== void 0 ? _getColumnIndex : null, {
@@ -1225,15 +1250,11 @@ class IrisGridUtils {
1225
1250
  */
1226
1251
  hydrateSort(columns, sorts) {
1227
1252
  var dropReverse = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
1228
- var {
1229
- dh
1230
- } = this;
1253
+ var dh = this.dh;
1231
1254
  return sorts.map(sort => {
1232
- var {
1233
- column: columnIndexOrName,
1234
- isAbs,
1235
- direction
1236
- } = sort;
1255
+ var columnIndexOrName = sort.column,
1256
+ isAbs = sort.isAbs,
1257
+ direction = sort.direction;
1237
1258
  if (direction === TableUtils.sortDirection.reverse) {
1238
1259
  return dh.Table.reverse();
1239
1260
  }
@@ -1257,17 +1278,11 @@ class IrisGridUtils {
1257
1278
  .filter(item => item != null && (item.direction !== TableUtils.sortDirection.reverse || !dropReverse));
1258
1279
  }
1259
1280
  hydrateDhSort(columns, sorts) {
1260
- var {
1261
- dh
1262
- } = this;
1281
+ var dh = this.dh;
1263
1282
  return sorts.map(sortDescriptor => {
1264
- var {
1265
- column: {
1266
- name
1267
- },
1268
- isAbs,
1269
- direction
1270
- } = sortDescriptor;
1283
+ var name = sortDescriptor.column.name,
1284
+ isAbs = sortDescriptor.isAbs,
1285
+ direction = sortDescriptor.direction;
1271
1286
  if (direction === TableUtils.sortDirection.reverse) {
1272
1287
  return dh.Table.reverse();
1273
1288
  }
@@ -1297,9 +1312,7 @@ class IrisGridUtils {
1297
1312
  * @param timeZone The time zone to make this value in if it is a date type. E.g. America/New_York
1298
1313
  */
1299
1314
  applyTableSettings(table, tableSettings, timeZone) {
1300
- var {
1301
- columns
1302
- } = table;
1315
+ var columns = table.columns;
1303
1316
  var quickFilters = [];
1304
1317
  if (tableSettings.quickFilters) {
1305
1318
  quickFilters = IrisGridUtils.getFiltersFromFilterMap(this.hydrateQuickFilters(columns, tableSettings.quickFilters, timeZone));
@@ -1314,10 +1327,8 @@ class IrisGridUtils {
1314
1327
  sorts = this.hydrateDhSort(columns, this.hydrateSort(columns, tableSettings.sorts));
1315
1328
  }
1316
1329
  var filters = [...quickFilters, ...advancedFilters];
1317
- var {
1318
- partitions,
1319
- partitionColumns: partitionColumnNames
1320
- } = tableSettings;
1330
+ var partitions = tableSettings.partitions,
1331
+ partitionColumnNames = tableSettings.partitionColumns;
1321
1332
  if (partitions && partitions.length && partitionColumnNames && partitionColumnNames !== null && partitionColumnNames !== void 0 && partitionColumnNames.length) {
1322
1333
  var partitionColumns = partitionColumnNames.map(partitionColumnName => IrisGridUtils.getColumnByName(columns, partitionColumnName));
1323
1334
  for (var i = 0; i < partitionColumns.length; i += 1) {
@@ -1335,17 +1346,13 @@ class IrisGridUtils {
1335
1346
  getFiltersFromInputFilters(columns) {
1336
1347
  var inputFilters = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
1337
1348
  var timeZone = arguments.length > 2 ? arguments[2] : undefined;
1338
- return inputFilters.map(_ref33 => {
1339
- var {
1340
- name,
1341
- type,
1342
- value
1343
- } = _ref33;
1344
- var column = columns.find(_ref34 => {
1345
- var {
1346
- name: columnName,
1347
- type: columnType
1348
- } = _ref34;
1349
+ return inputFilters.map(_ref54 => {
1350
+ var name = _ref54.name,
1351
+ type = _ref54.type,
1352
+ value = _ref54.value;
1353
+ var column = columns.find(_ref55 => {
1354
+ var columnName = _ref55.name,
1355
+ columnType = _ref55.type;
1349
1356
  return columnName === name && columnType === type;
1350
1357
  });
1351
1358
  if (column) {
@@ -1368,18 +1375,14 @@ class IrisGridUtils {
1368
1375
  * @returns The rangeset for the provided ranges
1369
1376
  */
1370
1377
  rangeSetFromRanges(ranges) {
1371
- var {
1372
- dh
1373
- } = this;
1378
+ var dh = this.dh;
1374
1379
  var rangeSets = ranges.slice().sort((a, b) => {
1375
1380
  assertNotNull(a.startRow);
1376
1381
  assertNotNull(b.startRow);
1377
1382
  return a.startRow - b.startRow;
1378
1383
  }).map(range => {
1379
- var {
1380
- startRow,
1381
- endRow
1382
- } = range;
1384
+ var startRow = range.startRow,
1385
+ endRow = range.endRow;
1383
1386
  assertNotNull(startRow);
1384
1387
  assertNotNull(endRow);
1385
1388
  return dh.RangeSet.ofRange(startRow, endRow);