@deephaven/dashboard-core-plugins 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.
- package/dist/ChartBuilderPlugin.d.ts +1 -1
- package/dist/ChartBuilderPlugin.d.ts.map +1 -1
- package/dist/ChartBuilderPlugin.js +6 -8
- package/dist/ChartBuilderPlugin.js.map +1 -1
- package/dist/ChartPlugin.d.ts +1 -1
- package/dist/ChartPlugin.d.ts.map +1 -1
- package/dist/ChartPlugin.js +4 -8
- package/dist/ChartPlugin.js.map +1 -1
- package/dist/ConsolePlugin.d.ts +1 -1
- package/dist/ConsolePlugin.d.ts.map +1 -1
- package/dist/ConsolePlugin.js +16 -62
- package/dist/ConsolePlugin.js.map +1 -1
- package/dist/FilterPlugin.d.ts +1 -1
- package/dist/FilterPlugin.d.ts.map +1 -1
- package/dist/FilterPlugin.js +6 -13
- package/dist/FilterPlugin.js.map +1 -1
- package/dist/GridPlugin.d.ts +1 -1
- package/dist/GridPlugin.d.ts.map +1 -1
- package/dist/GridPlugin.js +4 -8
- package/dist/GridPlugin.js.map +1 -1
- package/dist/LinkerPlugin.d.ts +1 -1
- package/dist/LinkerPlugin.d.ts.map +1 -1
- package/dist/LinkerPlugin.js +2 -2
- package/dist/LinkerPlugin.js.map +1 -1
- package/dist/MarkdownPlugin.d.ts +1 -1
- package/dist/MarkdownPlugin.d.ts.map +1 -1
- package/dist/MarkdownPlugin.js +4 -8
- package/dist/MarkdownPlugin.js.map +1 -1
- package/dist/PandasPlugin.d.ts +1 -1
- package/dist/PandasPlugin.d.ts.map +1 -1
- package/dist/PandasPlugin.js +4 -8
- package/dist/PandasPlugin.js.map +1 -1
- package/dist/controls/ControlType.js +0 -6
- package/dist/controls/ControlType.js.map +1 -1
- package/dist/controls/dropdown-filter/DropdownFilter.js +7 -51
- package/dist/controls/dropdown-filter/DropdownFilter.js.map +1 -1
- package/dist/controls/input-filter/InputFilter.js +1 -31
- package/dist/controls/input-filter/InputFilter.js.map +1 -1
- package/dist/controls/markdown/MarkdownContainer.js +0 -3
- package/dist/controls/markdown/MarkdownContainer.js.map +1 -1
- package/dist/controls/markdown/MarkdownEditor.d.ts +0 -2
- package/dist/controls/markdown/MarkdownEditor.d.ts.map +1 -1
- package/dist/controls/markdown/MarkdownEditor.js +13 -20
- package/dist/controls/markdown/MarkdownEditor.js.map +1 -1
- package/dist/controls/markdown/MarkdownStartPage.js +0 -11
- package/dist/controls/markdown/MarkdownStartPage.js.map +1 -1
- package/dist/controls/markdown/MarkdownUtils.js +0 -7
- package/dist/controls/markdown/MarkdownUtils.js.map +1 -1
- package/dist/events/ChartEvent.js +0 -5
- package/dist/events/ChartEvent.js.map +1 -1
- package/dist/events/ConsoleEvent.js +0 -7
- package/dist/events/ConsoleEvent.js.map +1 -1
- package/dist/events/InputFilterEvent.js +0 -10
- package/dist/events/InputFilterEvent.js.map +1 -1
- package/dist/events/IrisGridEvent.js +0 -8
- package/dist/events/IrisGridEvent.js.map +1 -1
- package/dist/events/MarkdownEvent.js.map +1 -1
- package/dist/events/NotebookEvent.js +0 -10
- package/dist/events/NotebookEvent.js.map +1 -1
- package/dist/events/PQEvent.js +0 -5
- package/dist/events/PQEvent.js.map +1 -1
- package/dist/events/PandasEvent.js +0 -4
- package/dist/events/PandasEvent.js.map +1 -1
- package/dist/events/TabEvent.js +0 -8
- package/dist/events/TabEvent.js.map +1 -1
- package/dist/events/index.js.map +1 -1
- package/dist/index.js.map +1 -1
- package/dist/linker/Linker.d.ts +3 -0
- package/dist/linker/Linker.d.ts.map +1 -1
- package/dist/linker/Linker.js +70 -119
- package/dist/linker/Linker.js.map +1 -1
- package/dist/linker/LinkerLink.css +90 -25
- package/dist/linker/LinkerLink.css.map +1 -1
- package/dist/linker/LinkerLink.d.ts +20 -2
- package/dist/linker/LinkerLink.d.ts.map +1 -1
- package/dist/linker/LinkerLink.js +214 -23
- package/dist/linker/LinkerLink.js.map +1 -1
- package/dist/linker/LinkerOverlayContent.css +0 -4
- package/dist/linker/LinkerOverlayContent.css.map +1 -1
- package/dist/linker/LinkerOverlayContent.d.ts +11 -0
- package/dist/linker/LinkerOverlayContent.d.ts.map +1 -1
- package/dist/linker/LinkerOverlayContent.js +78 -33
- package/dist/linker/LinkerOverlayContent.js.map +1 -1
- package/dist/linker/LinkerUtils.d.ts +9 -2
- package/dist/linker/LinkerUtils.d.ts.map +1 -1
- package/dist/linker/LinkerUtils.js +9 -25
- package/dist/linker/LinkerUtils.js.map +1 -1
- package/dist/linker/ToolType.js.map +1 -1
- package/dist/panels/ChartColumnSelectorOverlay.d.ts +5 -5
- package/dist/panels/ChartColumnSelectorOverlay.d.ts.map +1 -1
- package/dist/panels/ChartColumnSelectorOverlay.js +4 -7
- package/dist/panels/ChartColumnSelectorOverlay.js.map +1 -1
- package/dist/panels/ChartFilterOverlay.d.ts +4 -4
- package/dist/panels/ChartFilterOverlay.d.ts.map +1 -1
- package/dist/panels/ChartFilterOverlay.js +2 -7
- package/dist/panels/ChartFilterOverlay.js.map +1 -1
- package/dist/panels/ChartPanel.d.ts.map +1 -1
- package/dist/panels/ChartPanel.js +11 -150
- package/dist/panels/ChartPanel.js.map +1 -1
- package/dist/panels/CommandHistoryPanel.d.ts.map +1 -1
- package/dist/panels/CommandHistoryPanel.js +1 -26
- package/dist/panels/CommandHistoryPanel.js.map +1 -1
- package/dist/panels/ConsolePanel.d.ts.map +1 -1
- package/dist/panels/ConsolePanel.js +12 -57
- package/dist/panels/ConsolePanel.js.map +1 -1
- package/dist/panels/DropdownFilterPanel.d.ts.map +1 -1
- package/dist/panels/DropdownFilterPanel.js +16 -122
- package/dist/panels/DropdownFilterPanel.js.map +1 -1
- package/dist/panels/FileExplorerPanel.js +4 -33
- package/dist/panels/FileExplorerPanel.js.map +1 -1
- package/dist/panels/FilterSetManager.d.ts.map +1 -1
- package/dist/panels/FilterSetManager.js +13 -86
- package/dist/panels/FilterSetManager.js.map +1 -1
- package/dist/panels/FilterSetManagerPanel.js +10 -64
- package/dist/panels/FilterSetManagerPanel.js.map +1 -1
- package/dist/panels/InputFilterPanel.d.ts.map +1 -1
- package/dist/panels/InputFilterPanel.js +8 -38
- package/dist/panels/InputFilterPanel.js.map +1 -1
- package/dist/panels/IrisGridPanel.d.ts.map +1 -1
- package/dist/panels/IrisGridPanel.js +24 -133
- package/dist/panels/IrisGridPanel.js.map +1 -1
- package/dist/panels/IrisGridPanelTooltip.d.ts +5 -5
- package/dist/panels/IrisGridPanelTooltip.d.ts.map +1 -1
- package/dist/panels/IrisGridPanelTooltip.js +2 -5
- package/dist/panels/IrisGridPanelTooltip.js.map +1 -1
- package/dist/panels/LogPanel.js +4 -22
- package/dist/panels/LogPanel.js.map +1 -1
- package/dist/panels/MarkdownNotebook.js +3 -30
- package/dist/panels/MarkdownNotebook.js.map +1 -1
- package/dist/panels/MarkdownPanel.js +2 -30
- package/dist/panels/MarkdownPanel.js.map +1 -1
- package/dist/panels/MockFileStorage.js +1 -14
- package/dist/panels/MockFileStorage.js.map +1 -1
- package/dist/panels/MockFileStorageTable.js +11 -30
- package/dist/panels/MockFileStorageTable.js.map +1 -1
- package/dist/panels/NotebookPanel.js +24 -182
- package/dist/panels/NotebookPanel.js.map +1 -1
- package/dist/panels/PandasPanel.js +1 -20
- package/dist/panels/PandasPanel.js.map +1 -1
- package/dist/panels/Panel.js +2 -38
- package/dist/panels/Panel.js.map +1 -1
- package/dist/panels/PanelContextMenu.js +7 -29
- package/dist/panels/PanelContextMenu.js.map +1 -1
- package/dist/panels/RenameDialog.js +2 -17
- package/dist/panels/RenameDialog.js.map +1 -1
- package/dist/panels/WidgetPanel.js +2 -20
- package/dist/panels/WidgetPanel.js.map +1 -1
- package/dist/panels/WidgetPanelTooltip.d.ts +5 -5
- package/dist/panels/WidgetPanelTooltip.d.ts.map +1 -1
- package/dist/panels/WidgetPanelTooltip.js +2 -4
- package/dist/panels/WidgetPanelTooltip.js.map +1 -1
- package/dist/panels/index.js.map +1 -1
- package/dist/prop-types/CommonPropTypes.js +0 -3
- package/dist/prop-types/CommonPropTypes.js.map +1 -1
- package/dist/prop-types/UIPropTypes.js.map +1 -1
- package/dist/prop-types/index.js.map +1 -1
- package/dist/redux/actionTypes.js.map +1 -1
- package/dist/redux/actions.js +8 -9
- package/dist/redux/actions.js.map +1 -1
- package/dist/redux/index.js.map +1 -1
- package/dist/redux/reducers/connection.js.map +1 -1
- package/dist/redux/reducers/index.js.map +1 -1
- package/dist/redux/reducers/sessionWrapper.js.map +1 -1
- package/dist/redux/selectors.js +10 -15
- package/dist/redux/selectors.js.map +1 -1
- package/package.json +21 -20
|
@@ -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
|
// Wrapper for the IrisGrid for use in a golden layout container
|
|
8
5
|
// Will probably need to handle window popping out from golden layout here.
|
|
9
6
|
import React, { PureComponent } from 'react';
|
|
@@ -32,20 +29,14 @@ var PLUGIN_COMPONENTS = {
|
|
|
32
29
|
export class IrisGridPanel extends PureComponent {
|
|
33
30
|
constructor(props) {
|
|
34
31
|
super(props);
|
|
35
|
-
|
|
36
32
|
_defineProperty(this, "irisGrid", void 0);
|
|
37
|
-
|
|
38
33
|
_defineProperty(this, "pluginRef", void 0);
|
|
39
|
-
|
|
40
34
|
_defineProperty(this, "modelPromise", void 0);
|
|
41
|
-
|
|
42
35
|
_defineProperty(this, "irisGridState", void 0);
|
|
43
|
-
|
|
44
36
|
_defineProperty(this, "gridState", void 0);
|
|
45
|
-
|
|
46
37
|
_defineProperty(this, "pluginState", void 0);
|
|
47
|
-
|
|
48
|
-
|
|
38
|
+
_defineProperty(this, "getGridInputFilters", memoize((columns, inputFilters) => IrisGridUtils.getInputFiltersForColumns(columns,
|
|
39
|
+
// They may have picked a column, but not actually entered a value yet. In that case, don't need to update.
|
|
49
40
|
inputFilters.filter(_ref => {
|
|
50
41
|
var {
|
|
51
42
|
value,
|
|
@@ -54,38 +45,34 @@ export class IrisGridPanel extends PureComponent {
|
|
|
54
45
|
var id = LayoutUtils.getIdFromPanel(this);
|
|
55
46
|
return value != null && (excludePanelIds == null || id != null && !excludePanelIds.includes(id));
|
|
56
47
|
}))));
|
|
57
|
-
|
|
58
48
|
_defineProperty(this, "getAlwaysFetchColumns", memoize((dashboardLinks, pluginFetchColumns) => {
|
|
59
|
-
var id = LayoutUtils.getIdFromPanel(this);
|
|
60
|
-
|
|
49
|
+
var id = LayoutUtils.getIdFromPanel(this);
|
|
50
|
+
// Always fetch columns which are the start/source of a link or columns specified by a plugin
|
|
61
51
|
var columnSet = new Set(pluginFetchColumns);
|
|
62
|
-
|
|
63
52
|
for (var i = 0; i < dashboardLinks.length; i += 1) {
|
|
64
53
|
var {
|
|
65
54
|
start
|
|
66
55
|
} = dashboardLinks[i];
|
|
67
|
-
|
|
68
56
|
if (start != null && start.panelId === id) {
|
|
69
57
|
columnSet.add(start.columnName);
|
|
70
58
|
}
|
|
71
59
|
}
|
|
72
|
-
|
|
73
60
|
return [...columnSet];
|
|
74
61
|
}));
|
|
75
|
-
|
|
76
62
|
_defineProperty(this, "getPluginContent", memoize((Plugin, model, user, workspace, pluginState) => {
|
|
77
63
|
if (!model || !isIrisGridTableModelTemplate(model) || Plugin == null || model.table == null) {
|
|
78
64
|
return null;
|
|
79
65
|
}
|
|
80
|
-
|
|
81
66
|
return /*#__PURE__*/React.createElement("div", {
|
|
82
67
|
className: "iris-grid-plugin"
|
|
83
68
|
}, /*#__PURE__*/React.createElement(Plugin, {
|
|
84
69
|
ref: this.pluginRef,
|
|
85
|
-
filter: this.handlePluginFilter
|
|
70
|
+
filter: this.handlePluginFilter
|
|
71
|
+
// onFilter is deprecated
|
|
86
72
|
,
|
|
87
73
|
onFilter: this.handlePluginFilter,
|
|
88
|
-
fetchColumns: this.handlePluginFetchColumns
|
|
74
|
+
fetchColumns: this.handlePluginFetchColumns
|
|
75
|
+
// onFetchColumns is deprecated
|
|
89
76
|
,
|
|
90
77
|
onFetchColumns: this.handlePluginFetchColumns,
|
|
91
78
|
table: model.table,
|
|
@@ -97,14 +84,12 @@ export class IrisGridPanel extends PureComponent {
|
|
|
97
84
|
pluginState: pluginState
|
|
98
85
|
}));
|
|
99
86
|
}));
|
|
100
|
-
|
|
101
87
|
_defineProperty(this, "getDehydratedIrisGridPanelState", memoize((model, isSelectingPartition, partition, partitionColumn, advancedSettings) => IrisGridUtils.dehydrateIrisGridPanelState(model, {
|
|
102
88
|
isSelectingPartition,
|
|
103
89
|
partition,
|
|
104
90
|
partitionColumn,
|
|
105
91
|
advancedSettings
|
|
106
92
|
})));
|
|
107
|
-
|
|
108
93
|
_defineProperty(this, "getDehydratedIrisGridState", memoize((model, sorts, advancedFilters, customColumnFormatMap, isFilterBarShown, quickFilters, customColumns, reverseType, rollupConfig, showSearchBar, searchValue, selectDistinctColumns, selectedSearchColumns, invertSearchColumns, userColumnWidths, userRowHeights, aggregationSettings, pendingDataMap, frozenColumns, conditionalFormats) => IrisGridUtils.dehydrateIrisGridState(model, {
|
|
109
94
|
advancedFilters,
|
|
110
95
|
aggregationSettings,
|
|
@@ -128,21 +113,18 @@ export class IrisGridPanel extends PureComponent {
|
|
|
128
113
|
frozenColumns,
|
|
129
114
|
conditionalFormats
|
|
130
115
|
})));
|
|
131
|
-
|
|
132
116
|
_defineProperty(this, "getDehydratedGridState", memoize((model, movedColumns, movedRows, isStuckToBottom, isStuckToRight) => IrisGridUtils.dehydrateGridState(model, {
|
|
133
117
|
isStuckToBottom,
|
|
134
118
|
isStuckToRight,
|
|
135
119
|
movedColumns,
|
|
136
120
|
movedRows
|
|
137
121
|
})));
|
|
138
|
-
|
|
139
122
|
_defineProperty(this, "getCachedPanelState", memoize((irisGridPanelState, irisGridState, gridState, pluginState) => ({
|
|
140
123
|
irisGridPanelState,
|
|
141
124
|
irisGridState,
|
|
142
125
|
gridState,
|
|
143
126
|
pluginState
|
|
144
127
|
})));
|
|
145
|
-
|
|
146
128
|
_defineProperty(this, "savePanelState", debounce(() => {
|
|
147
129
|
var {
|
|
148
130
|
irisGridState,
|
|
@@ -195,7 +177,6 @@ export class IrisGridPanel extends PureComponent {
|
|
|
195
177
|
movedRows
|
|
196
178
|
} = gridState;
|
|
197
179
|
var panelState = this.getCachedPanelState(this.getDehydratedIrisGridPanelState(model, isSelectingPartition, partition, partitionColumn, advancedSettings), this.getDehydratedIrisGridState(model, sorts, advancedFilters, customColumnFormatMap, isFilterBarShown, quickFilters, customColumns, reverseType, rollupConfig, showSearchBar, searchValue, selectDistinctColumns, selectedSearchColumns, invertSearchColumns, userColumnWidths, userRowHeights, aggregationSettings, pendingDataMap, frozenColumns, conditionalFormats), this.getDehydratedGridState(model, movedColumns, movedRows, isStuckToBottom, isStuckToRight), pluginState);
|
|
198
|
-
|
|
199
180
|
if (panelState !== oldPanelState) {
|
|
200
181
|
log.debug('Saving panel state', this, panelState);
|
|
201
182
|
this.setState({
|
|
@@ -204,7 +185,6 @@ export class IrisGridPanel extends PureComponent {
|
|
|
204
185
|
onPanelStateUpdate === null || onPanelStateUpdate === void 0 ? void 0 : onPanelStateUpdate(panelState);
|
|
205
186
|
}
|
|
206
187
|
}, DEBOUNCE_PANEL_STATE_UPDATE));
|
|
207
|
-
|
|
208
188
|
this.handleAdvancedSettingsChange = this.handleAdvancedSettingsChange.bind(this);
|
|
209
189
|
this.handleColumnsChanged = this.handleColumnsChanged.bind(this);
|
|
210
190
|
this.handleTableChanged = this.handleTableChanged.bind(this);
|
|
@@ -282,53 +262,43 @@ export class IrisGridPanel extends PureComponent {
|
|
|
282
262
|
selectDistinctColumns: []
|
|
283
263
|
};
|
|
284
264
|
}
|
|
285
|
-
|
|
286
265
|
componentDidMount() {
|
|
287
266
|
this.initModel();
|
|
288
267
|
}
|
|
289
|
-
|
|
290
268
|
componentDidUpdate(_, prevState) {
|
|
291
269
|
var {
|
|
292
270
|
model
|
|
293
271
|
} = this.state;
|
|
294
|
-
|
|
295
272
|
if (model !== prevState.model) {
|
|
296
273
|
if (prevState.model != null) {
|
|
297
274
|
this.stopModelListening(prevState.model);
|
|
298
275
|
prevState.model.close();
|
|
299
276
|
}
|
|
300
|
-
|
|
301
277
|
if (model != null) {
|
|
302
278
|
this.startModelListening(model);
|
|
303
279
|
}
|
|
304
280
|
}
|
|
305
281
|
}
|
|
306
|
-
|
|
307
282
|
componentWillUnmount() {
|
|
308
283
|
this.savePanelState.cancel();
|
|
309
|
-
|
|
310
284
|
if (this.modelPromise != null) {
|
|
311
285
|
this.modelPromise.cancel();
|
|
312
286
|
this.modelPromise = undefined;
|
|
313
287
|
}
|
|
314
|
-
|
|
315
288
|
var {
|
|
316
289
|
model
|
|
317
290
|
} = this.state;
|
|
318
|
-
|
|
319
291
|
if (model) {
|
|
320
292
|
this.stopModelListening(model);
|
|
321
293
|
model.close();
|
|
322
294
|
}
|
|
323
295
|
}
|
|
324
|
-
|
|
325
296
|
getTableName() {
|
|
326
297
|
var {
|
|
327
298
|
metadata
|
|
328
299
|
} = this.props;
|
|
329
300
|
return metadata.table;
|
|
330
301
|
}
|
|
331
|
-
|
|
332
302
|
initModel() {
|
|
333
303
|
this.setState({
|
|
334
304
|
isModelReady: false,
|
|
@@ -338,15 +308,12 @@ export class IrisGridPanel extends PureComponent {
|
|
|
338
308
|
var {
|
|
339
309
|
makeModel
|
|
340
310
|
} = this.props;
|
|
341
|
-
|
|
342
311
|
if (this.modelPromise != null) {
|
|
343
312
|
this.modelPromise.cancel();
|
|
344
313
|
}
|
|
345
|
-
|
|
346
314
|
this.modelPromise = PromiseUtils.makeCancelable(makeModel(), resolved => resolved.close());
|
|
347
315
|
this.modelPromise.then(this.handleLoadSuccess).catch(this.handleLoadError);
|
|
348
316
|
}
|
|
349
|
-
|
|
350
317
|
handleLoadSuccess(modelParam) {
|
|
351
318
|
var model = modelParam;
|
|
352
319
|
var {
|
|
@@ -354,26 +321,22 @@ export class IrisGridPanel extends PureComponent {
|
|
|
354
321
|
irisGridStateOverrides
|
|
355
322
|
} = this.state;
|
|
356
323
|
var modelQueue = [];
|
|
357
|
-
|
|
358
324
|
if (panelState != null) {
|
|
359
325
|
var {
|
|
360
326
|
irisGridState: _irisGridState
|
|
361
327
|
} = panelState;
|
|
362
|
-
|
|
363
328
|
var {
|
|
364
329
|
aggregationSettings,
|
|
365
330
|
customColumns,
|
|
366
331
|
selectDistinctColumns = [],
|
|
367
332
|
rollupConfig
|
|
368
333
|
} = _objectSpread(_objectSpread({}, _irisGridState), irisGridStateOverrides);
|
|
369
|
-
|
|
370
334
|
if (customColumns.length > 0) {
|
|
371
335
|
modelQueue.push(m => {
|
|
372
336
|
// eslint-disable-next-line no-param-reassign
|
|
373
337
|
m.customColumns = customColumns;
|
|
374
338
|
});
|
|
375
339
|
}
|
|
376
|
-
|
|
377
340
|
if (rollupConfig != null && rollupConfig.columns.length > 0) {
|
|
378
341
|
// originalColumns might change by the time this model queue item is applied.
|
|
379
342
|
// Instead of pushing a static object, push the function
|
|
@@ -383,7 +346,6 @@ export class IrisGridPanel extends PureComponent {
|
|
|
383
346
|
m.rollupConfig = IrisGridUtils.getModelRollupConfig(m.originalColumns, rollupConfig, aggregationSettings);
|
|
384
347
|
});
|
|
385
348
|
}
|
|
386
|
-
|
|
387
349
|
if (selectDistinctColumns.length > 0) {
|
|
388
350
|
modelQueue.push(m => {
|
|
389
351
|
// eslint-disable-next-line no-param-reassign
|
|
@@ -391,34 +353,28 @@ export class IrisGridPanel extends PureComponent {
|
|
|
391
353
|
});
|
|
392
354
|
}
|
|
393
355
|
}
|
|
394
|
-
|
|
395
356
|
this.setState({
|
|
396
357
|
model,
|
|
397
358
|
modelQueue
|
|
398
359
|
});
|
|
399
360
|
this.initModelQueue(model, modelQueue);
|
|
400
361
|
}
|
|
401
|
-
|
|
402
362
|
initModelQueue(modelParam, modelQueue) {
|
|
403
363
|
var model = modelParam;
|
|
404
|
-
|
|
405
364
|
if (modelQueue.length === 0) {
|
|
406
365
|
this.modelInitialized(model);
|
|
407
366
|
return;
|
|
408
367
|
}
|
|
409
|
-
|
|
410
368
|
var modelChange = modelQueue.shift();
|
|
411
|
-
log.debug('initModelQueue', modelChange);
|
|
412
|
-
|
|
369
|
+
log.debug('initModelQueue', modelChange);
|
|
370
|
+
// Apply next model change. Triggers columnschanged event.
|
|
413
371
|
if (modelChange) {
|
|
414
372
|
modelChange(model);
|
|
415
373
|
}
|
|
416
|
-
|
|
417
374
|
this.setState({
|
|
418
375
|
modelQueue
|
|
419
376
|
});
|
|
420
377
|
}
|
|
421
|
-
|
|
422
378
|
handleAdvancedSettingsChange(key, value) {
|
|
423
379
|
log.debug('handleAdvancedSettingsChange', key, value);
|
|
424
380
|
this.setState(_ref2 => {
|
|
@@ -430,7 +386,6 @@ export class IrisGridPanel extends PureComponent {
|
|
|
430
386
|
};
|
|
431
387
|
});
|
|
432
388
|
}
|
|
433
|
-
|
|
434
389
|
handlePluginFilter(filters) {
|
|
435
390
|
var {
|
|
436
391
|
model
|
|
@@ -445,35 +400,29 @@ export class IrisGridPanel extends PureComponent {
|
|
|
445
400
|
pluginFilters
|
|
446
401
|
});
|
|
447
402
|
}
|
|
448
|
-
|
|
449
403
|
handlePluginFetchColumns(pluginFetchColumns) {
|
|
450
404
|
this.setState({
|
|
451
405
|
pluginFetchColumns
|
|
452
406
|
});
|
|
453
407
|
}
|
|
454
|
-
|
|
455
408
|
handleContextMenu(obj) {
|
|
456
409
|
var _this$pluginRef$curre, _this$pluginRef$curre2, _this$pluginRef$curre3;
|
|
457
|
-
|
|
458
410
|
return (_this$pluginRef$curre = (_this$pluginRef$curre2 = this.pluginRef.current) === null || _this$pluginRef$curre2 === void 0 ? void 0 : (_this$pluginRef$curre3 = _this$pluginRef$curre2.getMenu) === null || _this$pluginRef$curre3 === void 0 ? void 0 : _this$pluginRef$curre3.call(_this$pluginRef$curre2, obj)) !== null && _this$pluginRef$curre !== void 0 ? _this$pluginRef$curre : [];
|
|
459
411
|
}
|
|
460
|
-
|
|
461
412
|
isColumnSelectionValid(tableColumn) {
|
|
462
413
|
var {
|
|
463
414
|
columnSelectionValidator
|
|
464
415
|
} = this.props;
|
|
465
|
-
|
|
466
416
|
if (columnSelectionValidator && tableColumn) {
|
|
467
417
|
return columnSelectionValidator(this, tableColumn);
|
|
468
418
|
}
|
|
469
|
-
|
|
470
419
|
return false;
|
|
471
420
|
}
|
|
472
|
-
|
|
473
421
|
handleGridStateChange(irisGridState, gridState) {
|
|
474
422
|
this.irisGridState = irisGridState;
|
|
475
|
-
this.gridState = gridState;
|
|
423
|
+
this.gridState = gridState;
|
|
476
424
|
|
|
425
|
+
// Grid sends it's first state change after it's finished loading
|
|
477
426
|
this.setState({
|
|
478
427
|
isLoaded: true,
|
|
479
428
|
isLoading: false
|
|
@@ -486,27 +435,24 @@ export class IrisGridPanel extends PureComponent {
|
|
|
486
435
|
glEventHub.emit(IrisGridEvent.STATE_CHANGED, this);
|
|
487
436
|
onStateChange === null || onStateChange === void 0 ? void 0 : onStateChange(irisGridState, gridState);
|
|
488
437
|
}
|
|
489
|
-
|
|
490
438
|
handlePluginStateChange(pluginState) {
|
|
491
439
|
var {
|
|
492
440
|
irisGridState,
|
|
493
441
|
gridState
|
|
494
442
|
} = this;
|
|
495
|
-
this.pluginState = pluginState;
|
|
443
|
+
this.pluginState = pluginState;
|
|
444
|
+
// Do not save if there is null state
|
|
496
445
|
// The save will happen when the grid loads
|
|
497
|
-
|
|
498
446
|
if (irisGridState !== null && gridState !== null) {
|
|
499
447
|
this.savePanelState();
|
|
500
448
|
}
|
|
501
449
|
}
|
|
502
|
-
|
|
503
450
|
handleColumnsChanged(event) {
|
|
504
451
|
var {
|
|
505
452
|
isModelReady,
|
|
506
453
|
model,
|
|
507
454
|
modelQueue
|
|
508
455
|
} = this.state;
|
|
509
|
-
|
|
510
456
|
if (isModelReady) {
|
|
511
457
|
this.sendColumnsChange(event.detail);
|
|
512
458
|
} else {
|
|
@@ -514,7 +460,6 @@ export class IrisGridPanel extends PureComponent {
|
|
|
514
460
|
this.initModelQueue(model, modelQueue);
|
|
515
461
|
}
|
|
516
462
|
}
|
|
517
|
-
|
|
518
463
|
handleTableChanged(event) {
|
|
519
464
|
log.debug('handleTableChanged', event);
|
|
520
465
|
var {
|
|
@@ -525,7 +470,6 @@ export class IrisGridPanel extends PureComponent {
|
|
|
525
470
|
} = event;
|
|
526
471
|
glEventHub.emit(InputFilterEvent.TABLE_CHANGED, this, table);
|
|
527
472
|
}
|
|
528
|
-
|
|
529
473
|
handlePartitionAppend(column, value) {
|
|
530
474
|
var {
|
|
531
475
|
glEventHub
|
|
@@ -537,6 +481,7 @@ export class IrisGridPanel extends PureComponent {
|
|
|
537
481
|
var command = "".concat(tableName, " = ").concat(tableName, ".where(\"").concat(name, "=`").concat(value, "`\")");
|
|
538
482
|
glEventHub.emit(ConsoleEvent.SEND_COMMAND, command, false, true);
|
|
539
483
|
}
|
|
484
|
+
|
|
540
485
|
/**
|
|
541
486
|
* Create a chart with the specified settings
|
|
542
487
|
* @param settings The settings from the chart builder
|
|
@@ -544,8 +489,6 @@ export class IrisGridPanel extends PureComponent {
|
|
|
544
489
|
* @param settings.series The names of the series
|
|
545
490
|
* @param model The IrisGridModel object
|
|
546
491
|
*/
|
|
547
|
-
|
|
548
|
-
|
|
549
492
|
handleCreateChart(settings, model) {
|
|
550
493
|
// Panel state is stored with the created chart, so flush it first
|
|
551
494
|
this.savePanelState.flush();
|
|
@@ -563,11 +506,9 @@ export class IrisGridPanel extends PureComponent {
|
|
|
563
506
|
} = this.state;
|
|
564
507
|
var sourcePanelId = LayoutUtils.getIdFromPanel(this);
|
|
565
508
|
var tableSettings;
|
|
566
|
-
|
|
567
509
|
if (panelState) {
|
|
568
510
|
tableSettings = IrisGridUtils.extractTableSettings(panelState, inputFilters);
|
|
569
511
|
}
|
|
570
|
-
|
|
571
512
|
glEventHub.emit(IrisGridEvent.CREATE_CHART, {
|
|
572
513
|
metadata: {
|
|
573
514
|
settings,
|
|
@@ -579,35 +520,29 @@ export class IrisGridPanel extends PureComponent {
|
|
|
579
520
|
});
|
|
580
521
|
});
|
|
581
522
|
}
|
|
582
|
-
|
|
583
523
|
handleColumnSelected(column) {
|
|
584
524
|
var {
|
|
585
525
|
glEventHub
|
|
586
526
|
} = this.props;
|
|
587
527
|
glEventHub.emit(IrisGridEvent.COLUMN_SELECTED, this, column);
|
|
588
528
|
}
|
|
589
|
-
|
|
590
529
|
handleDataSelected(row, dataMap) {
|
|
591
530
|
var {
|
|
592
531
|
glEventHub
|
|
593
532
|
} = this.props;
|
|
594
533
|
glEventHub.emit(IrisGridEvent.DATA_SELECTED, this, dataMap);
|
|
595
534
|
}
|
|
596
|
-
|
|
597
535
|
handleResize() {
|
|
598
536
|
this.updateGrid();
|
|
599
537
|
}
|
|
600
|
-
|
|
601
538
|
handleShow() {
|
|
602
539
|
this.updateGrid();
|
|
603
540
|
}
|
|
604
|
-
|
|
605
541
|
handleTabClicked() {
|
|
606
542
|
if (this.irisGrid.current) {
|
|
607
543
|
this.irisGrid.current.focus();
|
|
608
544
|
}
|
|
609
545
|
}
|
|
610
|
-
|
|
611
546
|
handleError(error) {
|
|
612
547
|
log.error(error);
|
|
613
548
|
this.setState({
|
|
@@ -615,7 +550,6 @@ export class IrisGridPanel extends PureComponent {
|
|
|
615
550
|
isLoading: false
|
|
616
551
|
});
|
|
617
552
|
}
|
|
618
|
-
|
|
619
553
|
handleDisconnect() {
|
|
620
554
|
this.setState({
|
|
621
555
|
error: new Error('Table disconnected'),
|
|
@@ -623,34 +557,30 @@ export class IrisGridPanel extends PureComponent {
|
|
|
623
557
|
isLoading: false
|
|
624
558
|
});
|
|
625
559
|
}
|
|
626
|
-
|
|
627
560
|
handleReconnect() {
|
|
628
561
|
this.setState({
|
|
629
562
|
isDisconnected: false,
|
|
630
563
|
error: null
|
|
631
564
|
});
|
|
632
565
|
}
|
|
633
|
-
|
|
634
566
|
handleLoadError(error) {
|
|
635
567
|
if (PromiseUtils.isCanceled(error)) {
|
|
636
568
|
return;
|
|
637
569
|
}
|
|
638
|
-
|
|
639
570
|
this.handleError(error);
|
|
640
571
|
}
|
|
641
|
-
|
|
642
572
|
modelInitialized(model) {
|
|
643
573
|
var {
|
|
644
574
|
glEventHub,
|
|
645
575
|
loadPlugin
|
|
646
576
|
} = this.props;
|
|
647
|
-
this.modelPromise = undefined;
|
|
577
|
+
this.modelPromise = undefined;
|
|
648
578
|
|
|
579
|
+
// Custom columns at this point already initialized, can load state
|
|
649
580
|
this.loadPanelState(model);
|
|
650
581
|
this.setState({
|
|
651
582
|
isModelReady: true
|
|
652
583
|
});
|
|
653
|
-
|
|
654
584
|
if (isIrisGridTableModelTemplate(model)) {
|
|
655
585
|
var {
|
|
656
586
|
table
|
|
@@ -658,34 +588,27 @@ export class IrisGridPanel extends PureComponent {
|
|
|
658
588
|
var {
|
|
659
589
|
pluginName: _pluginName
|
|
660
590
|
} = table;
|
|
661
|
-
|
|
662
591
|
if (_pluginName !== '') {
|
|
663
592
|
if (loadPlugin != null && _pluginName != null) {
|
|
664
593
|
var _Plugin = loadPlugin(_pluginName);
|
|
665
|
-
|
|
666
594
|
this.setState({
|
|
667
595
|
Plugin: _Plugin
|
|
668
596
|
});
|
|
669
597
|
}
|
|
670
598
|
}
|
|
671
|
-
|
|
672
599
|
glEventHub.emit(InputFilterEvent.TABLE_CHANGED, this, table);
|
|
673
600
|
}
|
|
674
|
-
|
|
675
601
|
this.sendColumnsChange(model.columns);
|
|
676
602
|
}
|
|
677
|
-
|
|
678
603
|
handleClearAllFilters() {
|
|
679
604
|
var irisGrid = this.irisGrid.current;
|
|
680
605
|
var {
|
|
681
606
|
isDisconnected
|
|
682
607
|
} = this.state;
|
|
683
|
-
|
|
684
608
|
if (irisGrid != null && !isDisconnected) {
|
|
685
609
|
irisGrid.clearAllFilters();
|
|
686
610
|
}
|
|
687
611
|
}
|
|
688
|
-
|
|
689
612
|
sendColumnsChange(columns) {
|
|
690
613
|
log.debug2('sendColumnsChange', columns);
|
|
691
614
|
var {
|
|
@@ -693,42 +616,34 @@ export class IrisGridPanel extends PureComponent {
|
|
|
693
616
|
} = this.props;
|
|
694
617
|
glEventHub.emit(InputFilterEvent.COLUMNS_CHANGED, this, columns);
|
|
695
618
|
}
|
|
696
|
-
|
|
697
619
|
startModelListening(model) {
|
|
698
620
|
model.addEventListener(IrisGridModel.EVENT.DISCONNECT, this.handleDisconnect);
|
|
699
621
|
model.addEventListener(IrisGridModel.EVENT.RECONNECT, this.handleReconnect);
|
|
700
622
|
model.addEventListener(IrisGridModel.EVENT.COLUMNS_CHANGED, this.handleColumnsChanged);
|
|
701
623
|
model.addEventListener(IrisGridModel.EVENT.TABLE_CHANGED, this.handleTableChanged);
|
|
702
624
|
}
|
|
703
|
-
|
|
704
625
|
stopModelListening(model) {
|
|
705
626
|
model.removeEventListener(IrisGridModel.EVENT.DISCONNECT, this.handleDisconnect);
|
|
706
627
|
model.removeEventListener(IrisGridModel.EVENT.RECONNECT, this.handleReconnect);
|
|
707
628
|
model.removeEventListener(IrisGridModel.EVENT.COLUMNS_CHANGED, this.handleColumnsChanged);
|
|
708
629
|
model.removeEventListener(IrisGridModel.EVENT.TABLE_CHANGED, this.handleTableChanged);
|
|
709
630
|
}
|
|
710
|
-
|
|
711
631
|
getCoordinateForColumn(columnName) {
|
|
712
632
|
var _gridWrapper$getBound, _visibleColumnXs$get, _visibleColumnWidths$;
|
|
713
|
-
|
|
714
633
|
var {
|
|
715
634
|
model
|
|
716
635
|
} = this.state;
|
|
717
|
-
|
|
718
636
|
if (!model) {
|
|
719
637
|
return null;
|
|
720
638
|
}
|
|
721
|
-
|
|
722
639
|
var irisGrid = this.irisGrid.current;
|
|
723
640
|
var {
|
|
724
641
|
gridWrapper
|
|
725
642
|
} = irisGrid || {};
|
|
726
643
|
var rect = (_gridWrapper$getBound = gridWrapper === null || gridWrapper === void 0 ? void 0 : gridWrapper.getBoundingClientRect()) !== null && _gridWrapper$getBound !== void 0 ? _gridWrapper$getBound : null;
|
|
727
|
-
|
|
728
644
|
if (rect == null || rect.width <= 0 || rect.height <= 0) {
|
|
729
645
|
return null;
|
|
730
646
|
}
|
|
731
|
-
|
|
732
647
|
assertNotNull(irisGrid);
|
|
733
648
|
var {
|
|
734
649
|
metrics
|
|
@@ -750,23 +665,18 @@ export class IrisGridPanel extends PureComponent {
|
|
|
750
665
|
var y = rect.top + columnHeaderHeight * columnHeaderMaxDepth;
|
|
751
666
|
return [x, y];
|
|
752
667
|
}
|
|
753
|
-
|
|
754
668
|
setFilterMap(filterMap) {
|
|
755
669
|
var irisGrid = this.irisGrid.current;
|
|
756
|
-
|
|
757
670
|
if (irisGrid != null) {
|
|
758
671
|
irisGrid.setFilterMap(filterMap);
|
|
759
672
|
}
|
|
760
673
|
}
|
|
761
|
-
|
|
762
674
|
setAdvancedFilterMap(filterMap) {
|
|
763
675
|
var irisGrid = this.irisGrid.current;
|
|
764
|
-
|
|
765
676
|
if (irisGrid != null) {
|
|
766
677
|
irisGrid.setAdvancedFilterMap(filterMap);
|
|
767
678
|
}
|
|
768
679
|
}
|
|
769
|
-
|
|
770
680
|
setFilters(_ref3) {
|
|
771
681
|
var {
|
|
772
682
|
quickFilters,
|
|
@@ -778,12 +688,10 @@ export class IrisGridPanel extends PureComponent {
|
|
|
778
688
|
isDisconnected
|
|
779
689
|
} = this.state;
|
|
780
690
|
var irisGrid = this.irisGrid.current;
|
|
781
|
-
|
|
782
691
|
if (irisGrid == null || isDisconnected) {
|
|
783
692
|
log.debug('Ignore setFilters, model disconnected');
|
|
784
693
|
return;
|
|
785
694
|
}
|
|
786
|
-
|
|
787
695
|
assertNotNull(model);
|
|
788
696
|
var {
|
|
789
697
|
columns,
|
|
@@ -803,7 +711,6 @@ export class IrisGridPanel extends PureComponent {
|
|
|
803
711
|
advancedFilters: IrisGridUtils.hydrateAdvancedFilters(columns, indexedAdvancedFilters, formatter.timeZone)
|
|
804
712
|
});
|
|
805
713
|
}
|
|
806
|
-
|
|
807
714
|
setStateOverrides(overrides) {
|
|
808
715
|
log.debug('setStateOverrides', overrides);
|
|
809
716
|
var {
|
|
@@ -816,45 +723,38 @@ export class IrisGridPanel extends PureComponent {
|
|
|
816
723
|
}, () => {
|
|
817
724
|
this.initModel();
|
|
818
725
|
});
|
|
819
|
-
} // eslint-disable-next-line class-methods-use-this
|
|
820
|
-
|
|
821
|
-
|
|
822
|
-
unsetFilterValue() {// IrisGridPanel retains the set value after the link is broken
|
|
823
726
|
}
|
|
824
727
|
|
|
728
|
+
// eslint-disable-next-line class-methods-use-this
|
|
729
|
+
unsetFilterValue() {
|
|
730
|
+
// IrisGridPanel retains the set value after the link is broken
|
|
731
|
+
}
|
|
825
732
|
loadPanelState(model) {
|
|
826
733
|
var {
|
|
827
734
|
panelState,
|
|
828
735
|
irisGridStateOverrides: originalIrisGridStateOverrides,
|
|
829
736
|
gridStateOverrides
|
|
830
737
|
} = this.state;
|
|
831
|
-
|
|
832
738
|
if (panelState == null) {
|
|
833
739
|
return;
|
|
834
740
|
}
|
|
835
|
-
|
|
836
741
|
try {
|
|
837
742
|
var {
|
|
838
743
|
gridState: _gridState,
|
|
839
744
|
irisGridState: _irisGridState2,
|
|
840
745
|
irisGridPanelState
|
|
841
746
|
} = panelState;
|
|
842
|
-
|
|
843
747
|
var irisGridStateOverrides = _objectSpread({}, originalIrisGridStateOverrides);
|
|
844
|
-
|
|
845
748
|
var {
|
|
846
749
|
quickFilters: savedQuickFilters,
|
|
847
750
|
advancedFilters: savedAdvancedFilters
|
|
848
751
|
} = irisGridStateOverrides;
|
|
849
|
-
|
|
850
752
|
if (savedQuickFilters) {
|
|
851
753
|
irisGridStateOverrides.quickFilters = IrisGridUtils.changeFilterColumnNamesToIndexes(model.columns, savedQuickFilters);
|
|
852
754
|
}
|
|
853
|
-
|
|
854
755
|
if (savedAdvancedFilters) {
|
|
855
756
|
irisGridStateOverrides.advancedFilters = IrisGridUtils.changeFilterColumnNamesToIndexes(model.columns, savedAdvancedFilters);
|
|
856
757
|
}
|
|
857
|
-
|
|
858
758
|
var {
|
|
859
759
|
isSelectingPartition,
|
|
860
760
|
partition,
|
|
@@ -921,19 +821,16 @@ export class IrisGridPanel extends PureComponent {
|
|
|
921
821
|
log.error('loadPanelState failed to load panelState', panelState, error);
|
|
922
822
|
}
|
|
923
823
|
}
|
|
924
|
-
|
|
925
824
|
updateGrid() {
|
|
926
825
|
var _this$irisGrid$curren, _this$irisGrid$curren2;
|
|
927
|
-
|
|
928
826
|
var grid = (_this$irisGrid$curren = (_this$irisGrid$curren2 = this.irisGrid.current) === null || _this$irisGrid$curren2 === void 0 ? void 0 : _this$irisGrid$curren2.grid) !== null && _this$irisGrid$curren !== void 0 ? _this$irisGrid$curren : null;
|
|
929
|
-
if (!grid) return;
|
|
827
|
+
if (!grid) return;
|
|
930
828
|
|
|
829
|
+
// handle resize will verify state and draw and update
|
|
931
830
|
grid.handleResize();
|
|
932
831
|
}
|
|
933
|
-
|
|
934
832
|
render() {
|
|
935
833
|
var _model$description, _panelState$pluginSta;
|
|
936
|
-
|
|
937
834
|
var {
|
|
938
835
|
children,
|
|
939
836
|
glContainer,
|
|
@@ -1075,20 +972,15 @@ export class IrisGridPanel extends PureComponent {
|
|
|
1075
972
|
getDownloadWorker: getDownloadWorker,
|
|
1076
973
|
frozenColumns: frozenColumns,
|
|
1077
974
|
theme: theme
|
|
1078
|
-
}, childrenContent)
|
|
975
|
+
}, childrenContent));
|
|
1079
976
|
}
|
|
1080
|
-
|
|
1081
977
|
}
|
|
1082
|
-
|
|
1083
978
|
_defineProperty(IrisGridPanel, "defaultProps", {
|
|
1084
979
|
onStateChange: () => undefined,
|
|
1085
980
|
onPanelStateUpdate: () => undefined
|
|
1086
981
|
});
|
|
1087
|
-
|
|
1088
982
|
_defineProperty(IrisGridPanel, "displayName", 'IrisGridPanel');
|
|
1089
|
-
|
|
1090
983
|
_defineProperty(IrisGridPanel, "COMPONENT", 'IrisGridPanel');
|
|
1091
|
-
|
|
1092
984
|
var mapStateToProps = (state, _ref6) => {
|
|
1093
985
|
var {
|
|
1094
986
|
localDashboardId = DEFAULT_DASHBOARD_ID
|
|
@@ -1102,7 +994,6 @@ var mapStateToProps = (state, _ref6) => {
|
|
|
1102
994
|
settings: getSettings(state)
|
|
1103
995
|
};
|
|
1104
996
|
};
|
|
1105
|
-
|
|
1106
997
|
export default connect(mapStateToProps, null, null, {
|
|
1107
998
|
forwardRef: true
|
|
1108
999
|
})(IrisGridPanel);
|