@deephaven/iris-grid 0.13.3-treemap.2 → 0.14.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/AdvancedFilterCreator.d.ts +69 -63
- package/dist/AdvancedFilterCreator.d.ts.map +1 -1
- package/dist/AdvancedFilterCreator.js +79 -73
- package/dist/AdvancedFilterCreator.js.map +1 -1
- package/dist/AdvancedFilterCreatorSelectValue.d.ts +45 -45
- package/dist/AdvancedFilterCreatorSelectValue.d.ts.map +1 -1
- package/dist/AdvancedFilterCreatorSelectValue.js +32 -36
- package/dist/AdvancedFilterCreatorSelectValue.js.map +1 -1
- package/dist/AdvancedFilterCreatorSelectValueList.d.ts +47 -52
- package/dist/AdvancedFilterCreatorSelectValueList.d.ts.map +1 -1
- package/dist/AdvancedFilterCreatorSelectValueList.js +24 -39
- package/dist/AdvancedFilterCreatorSelectValueList.js.map +1 -1
- package/dist/ColumnStatistics.d.ts +34 -22
- package/dist/ColumnStatistics.d.ts.map +1 -1
- package/dist/ColumnStatistics.js +8 -12
- package/dist/ColumnStatistics.js.map +1 -1
- package/dist/CommonTypes.d.ts +58 -0
- package/dist/CommonTypes.d.ts.map +1 -0
- package/dist/CommonTypes.js +2 -0
- package/dist/CommonTypes.js.map +1 -0
- package/dist/CrossColumnSearch.d.ts +26 -24
- package/dist/CrossColumnSearch.d.ts.map +1 -1
- package/dist/CrossColumnSearch.js +9 -13
- package/dist/CrossColumnSearch.js.map +1 -1
- package/dist/FilterInputField.d.ts +48 -51
- package/dist/FilterInputField.d.ts.map +1 -1
- package/dist/FilterInputField.js +30 -27
- package/dist/FilterInputField.js.map +1 -1
- package/dist/IrisGrid.d.ts +409 -453
- package/dist/IrisGrid.d.ts.map +1 -1
- package/dist/IrisGrid.js +514 -449
- package/dist/IrisGrid.js.map +1 -1
- package/dist/IrisGridCellOverflowModal.d.ts +1 -1
- package/dist/IrisGridCellOverflowModal.d.ts.map +1 -1
- package/dist/IrisGridCellOverflowModal.js.map +1 -1
- package/dist/IrisGridCopyHandler.d.ts +52 -46
- package/dist/IrisGridCopyHandler.d.ts.map +1 -1
- package/dist/IrisGridCopyHandler.js +22 -38
- package/dist/IrisGridCopyHandler.js.map +1 -1
- package/dist/IrisGridMetricCalculator.d.ts +5 -4
- package/dist/IrisGridMetricCalculator.d.ts.map +1 -1
- package/dist/IrisGridMetricCalculator.js +5 -1
- package/dist/IrisGridMetricCalculator.js.map +1 -1
- package/dist/IrisGridModel.d.ts +37 -35
- package/dist/IrisGridModel.d.ts.map +1 -1
- package/dist/IrisGridModel.js +19 -3
- package/dist/IrisGridModel.js.map +1 -1
- package/dist/IrisGridModelFactory.d.ts +7 -5
- package/dist/IrisGridModelFactory.d.ts.map +1 -1
- package/dist/IrisGridModelFactory.js +5 -5
- package/dist/IrisGridModelFactory.js.map +1 -1
- package/dist/IrisGridModelUpdater.d.ts +13 -11
- package/dist/IrisGridModelUpdater.d.ts.map +1 -1
- package/dist/IrisGridModelUpdater.js.map +1 -1
- package/dist/IrisGridPartitionSelector.d.ts +38 -39
- package/dist/IrisGridPartitionSelector.d.ts.map +1 -1
- package/dist/IrisGridPartitionSelector.js +18 -24
- package/dist/IrisGridPartitionSelector.js.map +1 -1
- package/dist/IrisGridProxyModel.d.ts +111 -32
- package/dist/IrisGridProxyModel.d.ts.map +1 -1
- package/dist/IrisGridProxyModel.js +212 -170
- package/dist/IrisGridProxyModel.js.map +1 -1
- package/dist/IrisGridRenderer.d.ts +59 -31
- package/dist/IrisGridRenderer.d.ts.map +1 -1
- package/dist/IrisGridRenderer.js +92 -46
- package/dist/IrisGridRenderer.js.map +1 -1
- package/dist/IrisGridTableModel.d.ts +48 -147
- package/dist/IrisGridTableModel.d.ts.map +1 -1
- package/dist/IrisGridTableModel.js +58 -1381
- package/dist/IrisGridTableModel.js.map +1 -1
- package/dist/IrisGridTableModelTemplate.d.ts +219 -0
- package/dist/IrisGridTableModelTemplate.d.ts.map +1 -0
- package/dist/IrisGridTableModelTemplate.js +1623 -0
- package/dist/IrisGridTableModelTemplate.js.map +1 -0
- package/dist/IrisGridTestUtils.d.ts +18 -14
- package/dist/IrisGridTestUtils.d.ts.map +1 -1
- package/dist/IrisGridTestUtils.js +29 -1
- package/dist/IrisGridTestUtils.js.map +1 -1
- package/dist/IrisGridTheme.d.ts +35 -3
- package/dist/IrisGridTheme.d.ts.map +1 -1
- package/dist/IrisGridTheme.js.map +1 -1
- package/dist/IrisGridTreeTableModel.d.ts +26 -7
- package/dist/IrisGridTreeTableModel.d.ts.map +1 -1
- package/dist/IrisGridTreeTableModel.js +24 -14
- package/dist/IrisGridTreeTableModel.js.map +1 -1
- package/dist/IrisGridUtils.d.ts +257 -162
- package/dist/IrisGridUtils.d.ts.map +1 -1
- package/dist/IrisGridUtils.js +132 -95
- package/dist/IrisGridUtils.js.map +1 -1
- package/dist/MissingKeyError.d.ts +5 -3
- package/dist/MissingKeyError.d.ts.map +1 -1
- package/dist/MissingKeyError.js.map +1 -1
- package/dist/PartitionSelectorSearch.d.ts +61 -40
- package/dist/PartitionSelectorSearch.d.ts.map +1 -1
- package/dist/PartitionSelectorSearch.js +25 -15
- package/dist/PartitionSelectorSearch.js.map +1 -1
- package/dist/PendingDataBottomBar.d.ts +3 -6
- package/dist/PendingDataBottomBar.d.ts.map +1 -1
- package/dist/PendingDataBottomBar.js.map +1 -1
- package/dist/TableViewportUpdater.d.ts +39 -55
- package/dist/TableViewportUpdater.d.ts.map +1 -1
- package/dist/TableViewportUpdater.js +42 -64
- package/dist/TableViewportUpdater.js.map +1 -1
- package/dist/TreeTableViewportUpdater.d.ts +29 -37
- package/dist/TreeTableViewportUpdater.d.ts.map +1 -1
- package/dist/TreeTableViewportUpdater.js +39 -50
- package/dist/TreeTableViewportUpdater.js.map +1 -1
- package/dist/index.d.ts +9 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +9 -0
- package/dist/index.js.map +1 -1
- package/dist/mousehandlers/IrisGridCellOverflowMouseHandler.d.ts.map +1 -1
- package/dist/mousehandlers/IrisGridCellOverflowMouseHandler.js.map +1 -1
- package/dist/mousehandlers/IrisGridColumnSelectMouseHandler.d.ts +1 -1
- package/dist/mousehandlers/IrisGridColumnSelectMouseHandler.d.ts.map +1 -1
- package/dist/mousehandlers/IrisGridColumnSelectMouseHandler.js +2 -0
- package/dist/mousehandlers/IrisGridColumnSelectMouseHandler.js.map +1 -1
- package/dist/mousehandlers/IrisGridColumnTooltipMouseHandler.js +1 -1
- package/dist/mousehandlers/IrisGridColumnTooltipMouseHandler.js.map +1 -1
- package/dist/mousehandlers/IrisGridContextMenuHandler.d.ts +41 -130
- package/dist/mousehandlers/IrisGridContextMenuHandler.d.ts.map +1 -1
- package/dist/mousehandlers/IrisGridContextMenuHandler.js +426 -317
- package/dist/mousehandlers/IrisGridContextMenuHandler.js.map +1 -1
- package/dist/mousehandlers/IrisGridFilterMouseHandler.d.ts.map +1 -1
- package/dist/mousehandlers/IrisGridFilterMouseHandler.js +2 -2
- package/dist/mousehandlers/IrisGridFilterMouseHandler.js.map +1 -1
- package/dist/mousehandlers/IrisGridSortMouseHandler.js +1 -1
- package/dist/mousehandlers/IrisGridSortMouseHandler.js.map +1 -1
- package/dist/mousehandlers/PendingMouseHandler.d.ts +8 -4
- package/dist/mousehandlers/PendingMouseHandler.d.ts.map +1 -1
- package/dist/mousehandlers/PendingMouseHandler.js +4 -5
- package/dist/mousehandlers/PendingMouseHandler.js.map +1 -1
- package/dist/sidebar/ChartBuilder.d.ts +48 -33
- package/dist/sidebar/ChartBuilder.d.ts.map +1 -1
- package/dist/sidebar/ChartBuilder.js +28 -27
- package/dist/sidebar/ChartBuilder.js.map +1 -1
- package/dist/sidebar/CustomColumnBuilder.d.ts +51 -41
- package/dist/sidebar/CustomColumnBuilder.d.ts.map +1 -1
- package/dist/sidebar/CustomColumnBuilder.js +22 -18
- package/dist/sidebar/CustomColumnBuilder.js.map +1 -1
- package/dist/sidebar/CustomColumnInput.d.ts +26 -36
- package/dist/sidebar/CustomColumnInput.d.ts.map +1 -1
- package/dist/sidebar/CustomColumnInput.js +11 -20
- package/dist/sidebar/CustomColumnInput.js.map +1 -1
- package/dist/sidebar/InputEditor.d.ts +34 -35
- package/dist/sidebar/InputEditor.d.ts.map +1 -1
- package/dist/sidebar/InputEditor.js +43 -24
- package/dist/sidebar/InputEditor.js.map +1 -1
- package/dist/sidebar/RollupRows.d.ts +67 -52
- package/dist/sidebar/RollupRows.d.ts.map +1 -1
- package/dist/sidebar/RollupRows.js +51 -53
- package/dist/sidebar/RollupRows.js.map +1 -1
- package/dist/sidebar/SelectDistinctBuilder.d.ts +27 -21
- package/dist/sidebar/SelectDistinctBuilder.d.ts.map +1 -1
- package/dist/sidebar/SelectDistinctBuilder.js +6 -10
- package/dist/sidebar/SelectDistinctBuilder.js.map +1 -1
- package/dist/sidebar/TableCsvExporter.d.ts +42 -39
- package/dist/sidebar/TableCsvExporter.d.ts.map +1 -1
- package/dist/sidebar/TableCsvExporter.js +12 -20
- package/dist/sidebar/TableCsvExporter.js.map +1 -1
- package/dist/sidebar/TableSaver.d.ts +59 -60
- package/dist/sidebar/TableSaver.d.ts.map +1 -1
- package/dist/sidebar/TableSaver.js +154 -68
- package/dist/sidebar/TableSaver.js.map +1 -1
- package/dist/sidebar/VisibilityOrderingBuilder.d.ts +56 -45
- package/dist/sidebar/VisibilityOrderingBuilder.d.ts.map +1 -1
- package/dist/sidebar/VisibilityOrderingBuilder.js +34 -29
- package/dist/sidebar/VisibilityOrderingBuilder.js.map +1 -1
- package/dist/sidebar/aggregations/Aggregations.d.ts.map +1 -1
- package/dist/sidebar/aggregations/Aggregations.js.map +1 -1
- package/dist/sidebar/conditional-formatting/ConditionalFormattingMenu.d.ts +2 -1
- package/dist/sidebar/conditional-formatting/ConditionalFormattingMenu.d.ts.map +1 -1
- package/dist/sidebar/conditional-formatting/ConditionalFormattingMenu.js.map +1 -1
- package/dist/sidebar/conditional-formatting/ConditionalFormattingUtils.d.ts +6 -5
- package/dist/sidebar/conditional-formatting/ConditionalFormattingUtils.d.ts.map +1 -1
- package/dist/sidebar/conditional-formatting/ConditionalFormattingUtils.js +5 -0
- package/dist/sidebar/conditional-formatting/ConditionalFormattingUtils.js.map +1 -1
- package/dist/sidebar/icons/index.d.ts +7 -7
- package/dist/sidebar/icons/index.d.ts.map +1 -1
- package/dist/sidebar/icons/index.js.map +1 -1
- package/dist/sidebar/index.d.ts +12 -12
- package/dist/sidebar/index.d.ts.map +1 -1
- package/dist/sidebar/index.js.map +1 -1
- package/package.json +17 -16
package/dist/IrisGridUtils.js
CHANGED
|
@@ -15,7 +15,7 @@ import { GridUtils } from '@deephaven/grid';
|
|
|
15
15
|
import dh from '@deephaven/jsapi-shim';
|
|
16
16
|
import { DateUtils, TableUtils } from '@deephaven/jsapi-utils';
|
|
17
17
|
import Log from '@deephaven/log';
|
|
18
|
-
import
|
|
18
|
+
import { assertNotNull } from '@deephaven/utils';
|
|
19
19
|
import AggregationUtils from "./sidebar/aggregations/AggregationUtils.js";
|
|
20
20
|
import AggregationOperation from "./sidebar/aggregations/AggregationOperation.js";
|
|
21
21
|
var log = Log.module('IrisGridUtils');
|
|
@@ -23,9 +23,9 @@ var log = Log.module('IrisGridUtils');
|
|
|
23
23
|
class IrisGridUtils {
|
|
24
24
|
/**
|
|
25
25
|
* Exports the state from Grid component to a JSON stringifiable object
|
|
26
|
-
* @param
|
|
27
|
-
* @param
|
|
28
|
-
* @returns
|
|
26
|
+
* @param model The table model to export the Grid state for
|
|
27
|
+
* @param gridState The state of the Grid to export
|
|
28
|
+
* @returns An object that can be stringified and imported with {{@link hydrateGridState}}
|
|
29
29
|
*/
|
|
30
30
|
static dehydrateGridState(model, gridState) {
|
|
31
31
|
var {
|
|
@@ -61,9 +61,9 @@ class IrisGridUtils {
|
|
|
61
61
|
}
|
|
62
62
|
/**
|
|
63
63
|
* Import a state for Grid that was exported with {{@link dehydrateGridState}}
|
|
64
|
-
* @param
|
|
65
|
-
* @param
|
|
66
|
-
* @returns
|
|
64
|
+
* @param model The table model to import the state for
|
|
65
|
+
* @param gridState The state of the panel that was saved
|
|
66
|
+
* @returns The gridState props to set on the Grid
|
|
67
67
|
*/
|
|
68
68
|
|
|
69
69
|
|
|
@@ -101,6 +101,8 @@ class IrisGridUtils {
|
|
|
101
101
|
};
|
|
102
102
|
}
|
|
103
103
|
|
|
104
|
+
if (typeof to === 'string') throw Error('string');
|
|
105
|
+
if (typeof from === 'string') throw Error('string');
|
|
104
106
|
return {
|
|
105
107
|
to,
|
|
106
108
|
from
|
|
@@ -117,8 +119,8 @@ class IrisGridUtils {
|
|
|
117
119
|
}
|
|
118
120
|
/**
|
|
119
121
|
* Exports the state from IrisGrid to a JSON stringifiable object
|
|
120
|
-
* @param
|
|
121
|
-
* @param
|
|
122
|
+
* @param model The table model to export the state for
|
|
123
|
+
* @param irisGridState The current state of the IrisGrid
|
|
122
124
|
*/
|
|
123
125
|
|
|
124
126
|
|
|
@@ -128,7 +130,6 @@ class IrisGridUtils {
|
|
|
128
130
|
aggregations: [],
|
|
129
131
|
showOnTop: false
|
|
130
132
|
},
|
|
131
|
-
advancedSettings = [],
|
|
132
133
|
advancedFilters,
|
|
133
134
|
customColumnFormatMap,
|
|
134
135
|
isFilterBarShown,
|
|
@@ -137,16 +138,17 @@ class IrisGridUtils {
|
|
|
137
138
|
customColumns,
|
|
138
139
|
conditionalFormats = [],
|
|
139
140
|
reverseType,
|
|
140
|
-
rollupConfig =
|
|
141
|
+
rollupConfig = undefined,
|
|
141
142
|
showSearchBar,
|
|
142
143
|
searchValue,
|
|
143
|
-
selectDistinctColumns,
|
|
144
|
+
selectDistinctColumns = [],
|
|
144
145
|
selectedSearchColumns,
|
|
145
146
|
sorts,
|
|
146
147
|
invertSearchColumns,
|
|
147
148
|
pendingDataMap = new Map(),
|
|
148
149
|
frozenColumns
|
|
149
150
|
} = irisGridState;
|
|
151
|
+
assertNotNull(metrics);
|
|
150
152
|
var {
|
|
151
153
|
userColumnWidths,
|
|
152
154
|
userRowHeights
|
|
@@ -156,12 +158,11 @@ class IrisGridUtils {
|
|
|
156
158
|
} = model;
|
|
157
159
|
return {
|
|
158
160
|
advancedFilters: IrisGridUtils.dehydrateAdvancedFilters(columns, advancedFilters),
|
|
159
|
-
advancedSettings: [...advancedSettings],
|
|
160
161
|
aggregationSettings,
|
|
161
162
|
customColumnFormatMap: [...customColumnFormatMap],
|
|
162
163
|
isFilterBarShown,
|
|
163
164
|
quickFilters: IrisGridUtils.dehydrateQuickFilters(quickFilters),
|
|
164
|
-
sorts: IrisGridUtils.dehydrateSort(sorts
|
|
165
|
+
sorts: IrisGridUtils.dehydrateSort(sorts),
|
|
165
166
|
userColumnWidths: [...userColumnWidths].filter(_ref6 => {
|
|
166
167
|
var [columnIndex] = _ref6;
|
|
167
168
|
return columnIndex != null && columnIndex >= 0 && columnIndex < columns.length;
|
|
@@ -185,15 +186,14 @@ class IrisGridUtils {
|
|
|
185
186
|
}
|
|
186
187
|
/**
|
|
187
188
|
* Import a state for IrisGrid that was exported with {{@link dehydrateIrisGridState}}
|
|
188
|
-
* @param
|
|
189
|
-
* @param
|
|
189
|
+
* @param model The table model to import the state with
|
|
190
|
+
* @param irisGridState The saved IrisGrid state
|
|
190
191
|
*/
|
|
191
192
|
|
|
192
193
|
|
|
193
194
|
static hydrateIrisGridState(model, irisGridState) {
|
|
194
195
|
var {
|
|
195
196
|
advancedFilters,
|
|
196
|
-
advancedSettings = [],
|
|
197
197
|
aggregationSettings = {
|
|
198
198
|
aggregations: [],
|
|
199
199
|
showOnTop: false
|
|
@@ -207,7 +207,7 @@ class IrisGridUtils {
|
|
|
207
207
|
userColumnWidths,
|
|
208
208
|
userRowHeights,
|
|
209
209
|
reverseType,
|
|
210
|
-
rollupConfig =
|
|
210
|
+
rollupConfig = undefined,
|
|
211
211
|
showSearchBar,
|
|
212
212
|
searchValue,
|
|
213
213
|
selectDistinctColumns,
|
|
@@ -222,7 +222,6 @@ class IrisGridUtils {
|
|
|
222
222
|
} = model;
|
|
223
223
|
return {
|
|
224
224
|
advancedFilters: IrisGridUtils.hydrateAdvancedFilters(columns, advancedFilters, formatter.timeZone),
|
|
225
|
-
advancedSettings: new Map([...AdvancedSettings.DEFAULTS, ...advancedSettings]),
|
|
226
225
|
aggregationSettings,
|
|
227
226
|
customColumnFormatMap: new Map(customColumnFormatMap),
|
|
228
227
|
isFilterBarShown,
|
|
@@ -261,9 +260,9 @@ class IrisGridUtils {
|
|
|
261
260
|
}
|
|
262
261
|
/**
|
|
263
262
|
* Export the IrisGridPanel state.
|
|
264
|
-
* @param
|
|
265
|
-
* @param
|
|
266
|
-
* @returns
|
|
263
|
+
* @param model The table model the state is being dehydrated with
|
|
264
|
+
* @param irisGridPanelState The current IrisGridPanel state
|
|
265
|
+
* @returns The dehydrated IrisGridPanel state
|
|
267
266
|
*/
|
|
268
267
|
|
|
269
268
|
|
|
@@ -281,9 +280,9 @@ class IrisGridUtils {
|
|
|
281
280
|
}
|
|
282
281
|
/**
|
|
283
282
|
* Import the saved IrisGridPanel state.
|
|
284
|
-
* @param
|
|
285
|
-
* @param
|
|
286
|
-
* @returns
|
|
283
|
+
* @param model The model the state is being hydrated with
|
|
284
|
+
* @param irisGridPanelState Exported IrisGridPanel state
|
|
285
|
+
* @returns The state to apply to the IrisGridPanel
|
|
287
286
|
*/
|
|
288
287
|
|
|
289
288
|
|
|
@@ -304,8 +303,8 @@ class IrisGridUtils {
|
|
|
304
303
|
}
|
|
305
304
|
/**
|
|
306
305
|
* Export the quick filters to JSON striginfiable object
|
|
307
|
-
* @param
|
|
308
|
-
* @returns
|
|
306
|
+
* @param quickFilters The quick filters to dehydrate
|
|
307
|
+
* @returns The dehydrated quick filters
|
|
309
308
|
*/
|
|
310
309
|
|
|
311
310
|
|
|
@@ -322,10 +321,10 @@ class IrisGridUtils {
|
|
|
322
321
|
}
|
|
323
322
|
/**
|
|
324
323
|
* Import the saved quick filters to apply to the columns. Does not actually apply the filters.
|
|
325
|
-
* @param
|
|
326
|
-
* @param
|
|
327
|
-
* @param
|
|
328
|
-
* @returns
|
|
324
|
+
* @param columns The columns the filters will be applied to
|
|
325
|
+
* @param savedQuickFilters Exported quick filters definitions
|
|
326
|
+
* @param timeZone The time zone to make this value in if it is a date type. E.g. America/New_York
|
|
327
|
+
* @returns The quick filters to apply to the columns
|
|
329
328
|
*/
|
|
330
329
|
|
|
331
330
|
|
|
@@ -356,16 +355,18 @@ class IrisGridUtils {
|
|
|
356
355
|
}
|
|
357
356
|
/**
|
|
358
357
|
* Export the advanced filters from the provided columns to JSON striginfiable object
|
|
359
|
-
* @param
|
|
360
|
-
* @param
|
|
361
|
-
* @returns
|
|
358
|
+
* @param columns The columns for the filters
|
|
359
|
+
* @param advancedFilters The advanced filters to dehydrate
|
|
360
|
+
* @returns The dehydrated advanced filters
|
|
362
361
|
*/
|
|
363
362
|
|
|
364
363
|
|
|
365
364
|
static dehydrateAdvancedFilters(columns, advancedFilters) {
|
|
366
365
|
return [...advancedFilters].map(_ref13 => {
|
|
367
366
|
var [columnIndex, advancedFilter] = _ref13;
|
|
368
|
-
var
|
|
367
|
+
var column = IrisGridUtils.getColumn(columns, columnIndex);
|
|
368
|
+
assertNotNull(column);
|
|
369
|
+
var options = IrisGridUtils.dehydrateAdvancedFilterOptions(column, advancedFilter.options);
|
|
369
370
|
return [columnIndex, {
|
|
370
371
|
options
|
|
371
372
|
}];
|
|
@@ -373,23 +374,25 @@ class IrisGridUtils {
|
|
|
373
374
|
}
|
|
374
375
|
/**
|
|
375
376
|
* Import the saved advanced filters to apply to the columns. Does not actually apply the filters.
|
|
376
|
-
* @param
|
|
377
|
-
* @param
|
|
378
|
-
* @param
|
|
379
|
-
* @returns
|
|
377
|
+
* @param columns The columns the filters will be applied to
|
|
378
|
+
* @param savedAdvancedFilters Exported advanced filters definitions
|
|
379
|
+
* @param timeZone The time zone to make this filter in if it is a date type. E.g. America/New_York
|
|
380
|
+
* @returns The advanced filters to apply to the columns
|
|
380
381
|
*/
|
|
381
382
|
|
|
382
383
|
|
|
383
384
|
static hydrateAdvancedFilters(columns, savedAdvancedFilters, timeZone) {
|
|
384
385
|
var importedFilters = savedAdvancedFilters.map(_ref14 => {
|
|
385
386
|
var [columnIndex, advancedFilter] = _ref14;
|
|
386
|
-
var
|
|
387
|
+
var column = IrisGridUtils.getColumn(columns, columnIndex);
|
|
388
|
+
assertNotNull(column);
|
|
389
|
+
var options = IrisGridUtils.hydrateAdvancedFilterOptions(column, advancedFilter.options);
|
|
387
390
|
var filter = null;
|
|
388
391
|
|
|
389
392
|
try {
|
|
390
|
-
var
|
|
393
|
+
var columnRetrieved = IrisGridUtils.getColumn(columns, columnIndex);
|
|
391
394
|
|
|
392
|
-
if (
|
|
395
|
+
if (columnRetrieved != null) {
|
|
393
396
|
filter = TableUtils.makeAdvancedFilter(column, options, timeZone);
|
|
394
397
|
}
|
|
395
398
|
} catch (error) {
|
|
@@ -411,7 +414,7 @@ class IrisGridUtils {
|
|
|
411
414
|
otherOptions = _objectWithoutProperties(options, _excluded);
|
|
412
415
|
|
|
413
416
|
return _objectSpread({
|
|
414
|
-
selectedValues: selectedValues.map(value => IrisGridUtils.dehydrateValue(value, column === null || column === void 0 ? void 0 : column.type))
|
|
417
|
+
selectedValues: selectedValues === null || selectedValues === void 0 ? void 0 : selectedValues.map(value => IrisGridUtils.dehydrateValue(value, column === null || column === void 0 ? void 0 : column.type))
|
|
415
418
|
}, otherOptions);
|
|
416
419
|
}
|
|
417
420
|
|
|
@@ -422,7 +425,7 @@ class IrisGridUtils {
|
|
|
422
425
|
otherOptions = _objectWithoutProperties(options, _excluded2);
|
|
423
426
|
|
|
424
427
|
return _objectSpread({
|
|
425
|
-
selectedValues: selectedValues.map(value => IrisGridUtils.hydrateValue(value, column === null || column === void 0 ? void 0 : column.type))
|
|
428
|
+
selectedValues: selectedValues === null || selectedValues === void 0 ? void 0 : selectedValues.map(value => IrisGridUtils.hydrateValue(value, column === null || column === void 0 ? void 0 : column.type))
|
|
426
429
|
}, otherOptions);
|
|
427
430
|
}
|
|
428
431
|
|
|
@@ -462,16 +465,20 @@ class IrisGridUtils {
|
|
|
462
465
|
}] = _ref18;
|
|
463
466
|
return [rowIndex, {
|
|
464
467
|
data: new Map(data.map(_ref19 => {
|
|
468
|
+
var _getColumnIndex;
|
|
469
|
+
|
|
465
470
|
var [columnName, value] = _ref19;
|
|
466
|
-
|
|
471
|
+
var index = getColumnIndex(columnName);
|
|
472
|
+
assertNotNull(index);
|
|
473
|
+
return [(_getColumnIndex = getColumnIndex(columnName)) !== null && _getColumnIndex !== void 0 ? _getColumnIndex : null, IrisGridUtils.hydrateValue(value, columns[index].type)];
|
|
467
474
|
}))
|
|
468
475
|
}];
|
|
469
476
|
}));
|
|
470
477
|
}
|
|
471
478
|
/**
|
|
472
479
|
* Dehydrates/serializes a value for storage.
|
|
473
|
-
* @param
|
|
474
|
-
* @param
|
|
480
|
+
* @param value The value to dehydrate
|
|
481
|
+
* @param columnType The column type
|
|
475
482
|
*/
|
|
476
483
|
|
|
477
484
|
|
|
@@ -488,8 +495,8 @@ class IrisGridUtils {
|
|
|
488
495
|
}
|
|
489
496
|
/**
|
|
490
497
|
* Hydrate a value from it's serialized state
|
|
491
|
-
* @param
|
|
492
|
-
* @param
|
|
498
|
+
* @param value The dehydrated value that needs to be hydrated
|
|
499
|
+
* @param columnType The type of column
|
|
493
500
|
*/
|
|
494
501
|
|
|
495
502
|
|
|
@@ -522,8 +529,8 @@ class IrisGridUtils {
|
|
|
522
529
|
}
|
|
523
530
|
/**
|
|
524
531
|
* Export the sorts from the provided table sorts to JSON stringifiable object
|
|
525
|
-
* @param
|
|
526
|
-
* @returns
|
|
532
|
+
* @param sorts The table sorts
|
|
533
|
+
* @returns The dehydrated sorts
|
|
527
534
|
*/
|
|
528
535
|
|
|
529
536
|
|
|
@@ -543,9 +550,9 @@ class IrisGridUtils {
|
|
|
543
550
|
}
|
|
544
551
|
/**
|
|
545
552
|
* Import the saved sorts to apply to the table. Does not actually apply the sort.
|
|
546
|
-
* @param
|
|
547
|
-
* @param
|
|
548
|
-
* @returns
|
|
553
|
+
* @param columns The columns the sorts will be applied to
|
|
554
|
+
* @param sorts Exported sort definitions
|
|
555
|
+
* @returns The sorts to apply to the table
|
|
549
556
|
*/
|
|
550
557
|
|
|
551
558
|
|
|
@@ -587,8 +594,8 @@ class IrisGridUtils {
|
|
|
587
594
|
}
|
|
588
595
|
/**
|
|
589
596
|
* Pulls just the table settings from the panel state, eg. filters/sorts
|
|
590
|
-
* @param
|
|
591
|
-
* @returns
|
|
597
|
+
* @param panelState The dehydrated panel state
|
|
598
|
+
* @returns A dehydrated table settings object, { partition, partitionColumn, advancedFilters, quickFilters, sorts }
|
|
592
599
|
*/
|
|
593
600
|
|
|
594
601
|
|
|
@@ -618,9 +625,9 @@ class IrisGridUtils {
|
|
|
618
625
|
}
|
|
619
626
|
/**
|
|
620
627
|
* Applies the passed in table settings directly to the provided table
|
|
621
|
-
* @param
|
|
622
|
-
* @param
|
|
623
|
-
* @param
|
|
628
|
+
* @param table The table to apply the settings to
|
|
629
|
+
* @param tableSettings Dehydrated table settings extracted with `extractTableSettings`
|
|
630
|
+
* @param timeZone The time zone to make this value in if it is a date type. E.g. America/New_York
|
|
624
631
|
*/
|
|
625
632
|
|
|
626
633
|
|
|
@@ -628,10 +635,25 @@ class IrisGridUtils {
|
|
|
628
635
|
var {
|
|
629
636
|
columns
|
|
630
637
|
} = table;
|
|
631
|
-
var quickFilters =
|
|
632
|
-
|
|
638
|
+
var quickFilters = [];
|
|
639
|
+
|
|
640
|
+
if (tableSettings.quickFilters) {
|
|
641
|
+
quickFilters = IrisGridUtils.getFiltersFromFilterMap(IrisGridUtils.hydrateQuickFilters(columns, tableSettings.quickFilters, timeZone));
|
|
642
|
+
}
|
|
643
|
+
|
|
644
|
+
var advancedFilters = [];
|
|
645
|
+
|
|
646
|
+
if (tableSettings.advancedFilters) {
|
|
647
|
+
advancedFilters = IrisGridUtils.getFiltersFromFilterMap(IrisGridUtils.hydrateAdvancedFilters(columns, tableSettings.advancedFilters, timeZone));
|
|
648
|
+
}
|
|
649
|
+
|
|
633
650
|
var inputFilters = IrisGridUtils.getFiltersFromInputFilters(columns, tableSettings.inputFilters, timeZone);
|
|
634
|
-
var sorts =
|
|
651
|
+
var sorts = [];
|
|
652
|
+
|
|
653
|
+
if (tableSettings.sorts) {
|
|
654
|
+
sorts = IrisGridUtils.hydrateSort(columns, tableSettings.sorts);
|
|
655
|
+
}
|
|
656
|
+
|
|
635
657
|
var filters = [...quickFilters, ...advancedFilters];
|
|
636
658
|
var {
|
|
637
659
|
partition,
|
|
@@ -696,7 +718,7 @@ class IrisGridUtils {
|
|
|
696
718
|
}
|
|
697
719
|
|
|
698
720
|
return null;
|
|
699
|
-
}).filter(filter => filter);
|
|
721
|
+
}).filter(filter => filter != null);
|
|
700
722
|
}
|
|
701
723
|
|
|
702
724
|
static getFiltersFromFilterMap(filterMap) {
|
|
@@ -707,7 +729,7 @@ class IrisGridUtils {
|
|
|
707
729
|
var key = keys[i];
|
|
708
730
|
var item = filterMap.get(key);
|
|
709
731
|
|
|
710
|
-
if (item.filter != null) {
|
|
732
|
+
if (item && item.filter != null) {
|
|
711
733
|
filters.push(item.filter);
|
|
712
734
|
}
|
|
713
735
|
}
|
|
@@ -716,8 +738,8 @@ class IrisGridUtils {
|
|
|
716
738
|
}
|
|
717
739
|
/**
|
|
718
740
|
* Get array of hidden column indexes
|
|
719
|
-
* @param
|
|
720
|
-
* @returns
|
|
741
|
+
* @param userColumnWidths Map of user column widths
|
|
742
|
+
* @returns Array of hidden column indexes
|
|
721
743
|
*/
|
|
722
744
|
|
|
723
745
|
|
|
@@ -882,8 +904,7 @@ class IrisGridUtils {
|
|
|
882
904
|
return columnsToFetch;
|
|
883
905
|
}
|
|
884
906
|
|
|
885
|
-
static getModelViewportColumns(columns, left, right) {
|
|
886
|
-
var movedColumns = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : [];
|
|
907
|
+
static getModelViewportColumns(columns, left, right, movedColumns) {
|
|
887
908
|
var hiddenColumns = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : [];
|
|
888
909
|
var alwaysFetchColumnNames = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : [];
|
|
889
910
|
var bufferPages = arguments.length > 6 && arguments[6] !== undefined ? arguments[6] : 0;
|
|
@@ -903,17 +924,23 @@ class IrisGridUtils {
|
|
|
903
924
|
* Get the dh.RangeSet representation of the provided ranges.
|
|
904
925
|
* Ranges are sorted prior to creating the RangeSet. Only the rows are taken into account,
|
|
905
926
|
* RangeSet does not have an option for columns.
|
|
906
|
-
* @param
|
|
907
|
-
* @returns
|
|
927
|
+
* @param ranges The ranges to get the range set for
|
|
928
|
+
* @returns The rangeset for the provided ranges
|
|
908
929
|
*/
|
|
909
930
|
|
|
910
931
|
|
|
911
932
|
static rangeSetFromRanges(ranges) {
|
|
912
|
-
var rangeSets = ranges.slice().sort((a, b) =>
|
|
933
|
+
var rangeSets = ranges.slice().sort((a, b) => {
|
|
934
|
+
assertNotNull(a.startRow);
|
|
935
|
+
assertNotNull(b.startRow);
|
|
936
|
+
return a.startRow - b.startRow;
|
|
937
|
+
}).map(range => {
|
|
913
938
|
var {
|
|
914
939
|
startRow,
|
|
915
940
|
endRow
|
|
916
941
|
} = range;
|
|
942
|
+
assertNotNull(startRow);
|
|
943
|
+
assertNotNull(endRow);
|
|
917
944
|
return dh.RangeSet.ofRange(startRow, endRow);
|
|
918
945
|
});
|
|
919
946
|
return dh.RangeSet.ofRanges(rangeSets);
|
|
@@ -922,8 +949,8 @@ class IrisGridUtils {
|
|
|
922
949
|
* Validate whether the ranges passed in are valid to take a snapshot from.
|
|
923
950
|
* Multiple selections are valid if all of the selected rows have the same columns selected.
|
|
924
951
|
*
|
|
925
|
-
* @param
|
|
926
|
-
* @returns
|
|
952
|
+
* @param ranges The ranges to validate
|
|
953
|
+
* @returns True if the ranges are valid, false otherwise
|
|
927
954
|
*/
|
|
928
955
|
|
|
929
956
|
|
|
@@ -961,18 +988,26 @@ class IrisGridUtils {
|
|
|
961
988
|
}
|
|
962
989
|
/**
|
|
963
990
|
* Check if the provided value is a valid table index
|
|
964
|
-
* @param
|
|
991
|
+
* @param value A value to check if it's a valid table index
|
|
965
992
|
*/
|
|
966
993
|
|
|
967
994
|
|
|
968
995
|
static isValidIndex(value) {
|
|
969
|
-
|
|
996
|
+
if (!Number.isInteger(value)) {
|
|
997
|
+
return false;
|
|
998
|
+
}
|
|
999
|
+
|
|
1000
|
+
if (!(typeof value === 'number')) {
|
|
1001
|
+
return false;
|
|
1002
|
+
}
|
|
1003
|
+
|
|
1004
|
+
return value >= 0;
|
|
970
1005
|
}
|
|
971
1006
|
/**
|
|
972
1007
|
* Returns all columns used in any of the ranges provided
|
|
973
|
-
* @param
|
|
974
|
-
* @param
|
|
975
|
-
* @returns
|
|
1008
|
+
* @param ranges The model ranges to get columns for
|
|
1009
|
+
* @param allColumns All the columns to pull from
|
|
1010
|
+
* @returns The columns selected in the range
|
|
976
1011
|
*/
|
|
977
1012
|
|
|
978
1013
|
|
|
@@ -990,6 +1025,8 @@ class IrisGridUtils {
|
|
|
990
1025
|
|
|
991
1026
|
for (var i = 0; i < ranges.length; i += 1) {
|
|
992
1027
|
var range = ranges[i];
|
|
1028
|
+
assertNotNull(range.startColumn);
|
|
1029
|
+
assertNotNull(range.endColumn);
|
|
993
1030
|
|
|
994
1031
|
for (var c = (_range$startColumn = range.startColumn) !== null && _range$startColumn !== void 0 ? _range$startColumn : 0; c <= ((_range$endColumn = range.endColumn) !== null && _range$endColumn !== void 0 ? _range$endColumn : allColumns.length - 1); c += 1) {
|
|
995
1032
|
var _range$startColumn, _range$endColumn;
|
|
@@ -1002,8 +1039,8 @@ class IrisGridUtils {
|
|
|
1002
1039
|
}
|
|
1003
1040
|
/**
|
|
1004
1041
|
* Transforms an iris data snapshot into a simple data matrix
|
|
1005
|
-
* @param
|
|
1006
|
-
* @returns
|
|
1042
|
+
* @param data The Iris formatted table data
|
|
1043
|
+
* @returns A matrix of the values of the data
|
|
1007
1044
|
*/
|
|
1008
1045
|
|
|
1009
1046
|
|
|
@@ -1031,10 +1068,10 @@ class IrisGridUtils {
|
|
|
1031
1068
|
}
|
|
1032
1069
|
/**
|
|
1033
1070
|
* Hydrate model rollup config
|
|
1034
|
-
* @param
|
|
1035
|
-
* @param
|
|
1036
|
-
* @param
|
|
1037
|
-
* @returns
|
|
1071
|
+
* @param originalColumns Original model columns
|
|
1072
|
+
* @param config Dehydrated rollup config
|
|
1073
|
+
* @param aggregationSettings Aggregation settings
|
|
1074
|
+
* @returns Rollup config for the model
|
|
1038
1075
|
*/
|
|
1039
1076
|
|
|
1040
1077
|
|
|
@@ -1091,15 +1128,15 @@ class IrisGridUtils {
|
|
|
1091
1128
|
};
|
|
1092
1129
|
}
|
|
1093
1130
|
/**
|
|
1094
|
-
* @param
|
|
1095
|
-
* @returns
|
|
1131
|
+
* @param pendingDataMap Map of pending data
|
|
1132
|
+
* @returns A map with the errors in the pending data
|
|
1096
1133
|
*/
|
|
1097
1134
|
|
|
1098
1135
|
|
|
1099
1136
|
static getPendingErrors(pendingDataMap) {
|
|
1100
1137
|
pendingDataMap.forEach((row, rowIndex) => {
|
|
1101
1138
|
if (!IrisGridUtils.isValidIndex(rowIndex)) {
|
|
1102
|
-
throw new Error(
|
|
1139
|
+
throw new Error("Invalid rowIndex ".concat(rowIndex));
|
|
1103
1140
|
}
|
|
1104
1141
|
|
|
1105
1142
|
var {
|
|
@@ -1107,7 +1144,7 @@ class IrisGridUtils {
|
|
|
1107
1144
|
} = row;
|
|
1108
1145
|
data.forEach((value, columnIndex) => {
|
|
1109
1146
|
if (!IrisGridUtils.isValidIndex(columnIndex)) {
|
|
1110
|
-
throw new Error(
|
|
1147
|
+
throw new Error("Invalid columnIndex ".concat(columnIndex));
|
|
1111
1148
|
}
|
|
1112
1149
|
});
|
|
1113
1150
|
});
|
|
@@ -1115,8 +1152,8 @@ class IrisGridUtils {
|
|
|
1115
1152
|
/**
|
|
1116
1153
|
* Retrieves a column from the provided array at the index, or `null` and logs an error if it's invalid
|
|
1117
1154
|
*
|
|
1118
|
-
* @param
|
|
1119
|
-
* @param
|
|
1155
|
+
* @param columns The columns to get the column from
|
|
1156
|
+
* @param columnIndex The column index to get
|
|
1120
1157
|
*/
|
|
1121
1158
|
|
|
1122
1159
|
|
|
@@ -1130,8 +1167,8 @@ class IrisGridUtils {
|
|
|
1130
1167
|
}
|
|
1131
1168
|
/**
|
|
1132
1169
|
* Retrieves a column from the provided array matching the name, or `null` and logs an error if not found
|
|
1133
|
-
* @param
|
|
1134
|
-
* @param
|
|
1170
|
+
* @param columns The columns to get the column from
|
|
1171
|
+
* @param columnName The column name to retrieve
|
|
1135
1172
|
*/
|
|
1136
1173
|
|
|
1137
1174
|
|
|
@@ -1156,9 +1193,9 @@ class IrisGridUtils {
|
|
|
1156
1193
|
}
|
|
1157
1194
|
/**
|
|
1158
1195
|
* Get filter configs with column names changed to indexes, exclude missing columns
|
|
1159
|
-
* @param
|
|
1160
|
-
* @param
|
|
1161
|
-
* @returns
|
|
1196
|
+
* @param columns The columns to get column indexes from
|
|
1197
|
+
* @param filters Filter configs
|
|
1198
|
+
* @returns Updated filter configs with column names changed to indexes
|
|
1162
1199
|
*/
|
|
1163
1200
|
|
|
1164
1201
|
|