@deephaven/dashboard-core-plugins 0.15.5-vite.12 → 0.15.6-vite.19

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 (203) hide show
  1. package/dist/ChartBuilderPlugin.d.ts.map +1 -1
  2. package/dist/ChartBuilderPlugin.js +2 -1
  3. package/dist/ChartBuilderPlugin.js.map +1 -1
  4. package/dist/ChartPlugin.d.ts +2 -1
  5. package/dist/ChartPlugin.d.ts.map +1 -1
  6. package/dist/ChartPlugin.js.map +1 -1
  7. package/dist/FilterPlugin.js +1 -1
  8. package/dist/FilterPlugin.js.map +1 -1
  9. package/dist/GridPlugin.d.ts +2 -1
  10. package/dist/GridPlugin.d.ts.map +1 -1
  11. package/dist/GridPlugin.js.map +1 -1
  12. package/dist/PandasPlugin.d.ts +2 -1
  13. package/dist/PandasPlugin.d.ts.map +1 -1
  14. package/dist/PandasPlugin.js.map +1 -1
  15. package/dist/controls/ControlType.d.ts +1 -1
  16. package/dist/controls/ControlType.d.ts.map +1 -1
  17. package/dist/controls/ControlType.js.map +1 -1
  18. package/dist/controls/dropdown-filter/DropdownFilter.d.ts +73 -81
  19. package/dist/controls/dropdown-filter/DropdownFilter.d.ts.map +1 -1
  20. package/dist/controls/dropdown-filter/DropdownFilter.js +41 -58
  21. package/dist/controls/dropdown-filter/DropdownFilter.js.map +1 -1
  22. package/dist/controls/input-filter/InputFilter.d.ts +46 -46
  23. package/dist/controls/input-filter/InputFilter.d.ts.map +1 -1
  24. package/dist/controls/input-filter/InputFilter.js +32 -39
  25. package/dist/controls/input-filter/InputFilter.js.map +1 -1
  26. package/dist/controls/markdown/MarkdownContainer.d.ts +11 -16
  27. package/dist/controls/markdown/MarkdownContainer.d.ts.map +1 -1
  28. package/dist/controls/markdown/MarkdownContainer.js +5 -8
  29. package/dist/controls/markdown/MarkdownContainer.js.map +1 -1
  30. package/dist/controls/markdown/MarkdownEditor.d.ts +17 -19
  31. package/dist/controls/markdown/MarkdownEditor.d.ts.map +1 -1
  32. package/dist/controls/markdown/MarkdownEditor.js +5 -8
  33. package/dist/controls/markdown/MarkdownEditor.js.map +1 -1
  34. package/dist/controls/markdown/MarkdownStartPage.d.ts +24 -28
  35. package/dist/controls/markdown/MarkdownStartPage.d.ts.map +1 -1
  36. package/dist/controls/markdown/MarkdownStartPage.js +19 -23
  37. package/dist/controls/markdown/MarkdownStartPage.js.map +1 -1
  38. package/dist/controls/markdown/MarkdownUtils.d.ts +4 -4
  39. package/dist/controls/markdown/MarkdownUtils.d.ts.map +1 -1
  40. package/dist/controls/markdown/MarkdownUtils.js +2 -2
  41. package/dist/controls/markdown/MarkdownUtils.js.map +1 -1
  42. package/dist/events/ChartEvent.d.ts +1 -1
  43. package/dist/events/ChartEvent.d.ts.map +1 -1
  44. package/dist/events/ChartEvent.js.map +1 -1
  45. package/dist/events/ConsoleEvent.d.ts +1 -1
  46. package/dist/events/ConsoleEvent.d.ts.map +1 -1
  47. package/dist/events/ConsoleEvent.js.map +1 -1
  48. package/dist/events/InputFilterEvent.d.ts +1 -1
  49. package/dist/events/InputFilterEvent.d.ts.map +1 -1
  50. package/dist/events/InputFilterEvent.js.map +1 -1
  51. package/dist/events/IrisGridEvent.d.ts +1 -1
  52. package/dist/events/IrisGridEvent.d.ts.map +1 -1
  53. package/dist/events/IrisGridEvent.js.map +1 -1
  54. package/dist/events/NotebookEvent.d.ts +1 -1
  55. package/dist/events/NotebookEvent.d.ts.map +1 -1
  56. package/dist/events/NotebookEvent.js.map +1 -1
  57. package/dist/events/PQEvent.d.ts +1 -1
  58. package/dist/events/PQEvent.d.ts.map +1 -1
  59. package/dist/events/PQEvent.js.map +1 -1
  60. package/dist/events/PandasEvent.d.ts +1 -1
  61. package/dist/events/PandasEvent.d.ts.map +1 -1
  62. package/dist/events/PandasEvent.js.map +1 -1
  63. package/dist/events/TabEvent.d.ts +1 -1
  64. package/dist/events/TabEvent.d.ts.map +1 -1
  65. package/dist/events/TabEvent.js.map +1 -1
  66. package/dist/events/index.d.ts +8 -8
  67. package/dist/events/index.d.ts.map +1 -1
  68. package/dist/events/index.js.map +1 -1
  69. package/dist/index.d.ts +1 -0
  70. package/dist/index.d.ts.map +1 -1
  71. package/dist/index.js +1 -0
  72. package/dist/index.js.map +1 -1
  73. package/dist/linker/ColumnSelectionValidator.d.ts +4 -0
  74. package/dist/linker/ColumnSelectionValidator.d.ts.map +1 -0
  75. package/dist/linker/ColumnSelectionValidator.js +2 -0
  76. package/dist/linker/ColumnSelectionValidator.js.map +1 -0
  77. package/dist/linker/Linker.d.ts +11 -11
  78. package/dist/linker/Linker.js +1 -1
  79. package/dist/linker/Linker.js.map +1 -1
  80. package/dist/linker/LinkerUtils.d.ts +3 -3
  81. package/dist/linker/LinkerUtils.d.ts.map +1 -1
  82. package/dist/linker/LinkerUtils.js.map +1 -1
  83. package/dist/linker/ToolType.d.ts +1 -1
  84. package/dist/linker/ToolType.d.ts.map +1 -1
  85. package/dist/linker/ToolType.js.map +1 -1
  86. package/dist/linker/index.d.ts +2 -0
  87. package/dist/linker/index.d.ts.map +1 -0
  88. package/dist/linker/index.js +2 -0
  89. package/dist/linker/index.js.map +1 -0
  90. package/dist/panels/ChartColumnSelectorOverlay.d.ts +22 -26
  91. package/dist/panels/ChartColumnSelectorOverlay.d.ts.map +1 -1
  92. package/dist/panels/ChartColumnSelectorOverlay.js +5 -14
  93. package/dist/panels/ChartColumnSelectorOverlay.js.map +1 -1
  94. package/dist/panels/ChartFilterOverlay.d.ts +29 -21
  95. package/dist/panels/ChartFilterOverlay.d.ts.map +1 -1
  96. package/dist/panels/ChartFilterOverlay.js.map +1 -1
  97. package/dist/panels/ChartPanel.d.ts +187 -152
  98. package/dist/panels/ChartPanel.d.ts.map +1 -1
  99. package/dist/panels/ChartPanel.js +87 -84
  100. package/dist/panels/ChartPanel.js.map +1 -1
  101. package/dist/panels/CommandHistoryPanel.d.ts +41 -56
  102. package/dist/panels/CommandHistoryPanel.d.ts.map +1 -1
  103. package/dist/panels/CommandHistoryPanel.js +13 -35
  104. package/dist/panels/CommandHistoryPanel.js.map +1 -1
  105. package/dist/panels/ConsolePanel.d.ts +63 -73
  106. package/dist/panels/ConsolePanel.d.ts.map +1 -1
  107. package/dist/panels/ConsolePanel.js +67 -83
  108. package/dist/panels/ConsolePanel.js.map +1 -1
  109. package/dist/panels/DropdownFilterPanel.d.ts +110 -106
  110. package/dist/panels/DropdownFilterPanel.d.ts.map +1 -1
  111. package/dist/panels/DropdownFilterPanel.js +60 -62
  112. package/dist/panels/DropdownFilterPanel.js.map +1 -1
  113. package/dist/panels/FileExplorerPanel.d.ts +5 -7
  114. package/dist/panels/FileExplorerPanel.d.ts.map +1 -1
  115. package/dist/panels/FileExplorerPanel.js.map +1 -1
  116. package/dist/panels/FilterSetManager.d.ts +3 -1
  117. package/dist/panels/FilterSetManager.d.ts.map +1 -1
  118. package/dist/panels/FilterSetManager.js.map +1 -1
  119. package/dist/panels/FilterSetManagerPanel.d.ts +83 -62
  120. package/dist/panels/FilterSetManagerPanel.d.ts.map +1 -1
  121. package/dist/panels/FilterSetManagerPanel.js +58 -36
  122. package/dist/panels/FilterSetManagerPanel.js.map +1 -1
  123. package/dist/panels/InputFilterPanel.d.ts +50 -51
  124. package/dist/panels/InputFilterPanel.d.ts.map +1 -1
  125. package/dist/panels/InputFilterPanel.js +35 -34
  126. package/dist/panels/InputFilterPanel.js.map +1 -1
  127. package/dist/panels/IrisGridPanel.d.ts +191 -178
  128. package/dist/panels/IrisGridPanel.d.ts.map +1 -1
  129. package/dist/panels/IrisGridPanel.js +150 -179
  130. package/dist/panels/IrisGridPanel.js.map +1 -1
  131. package/dist/panels/LogPanel.d.ts +29 -45
  132. package/dist/panels/LogPanel.d.ts.map +1 -1
  133. package/dist/panels/LogPanel.js +9 -11
  134. package/dist/panels/LogPanel.js.map +1 -1
  135. package/dist/panels/MarkdownNotebook.d.ts +34 -34
  136. package/dist/panels/MarkdownNotebook.d.ts.map +1 -1
  137. package/dist/panels/MarkdownNotebook.js +21 -18
  138. package/dist/panels/MarkdownNotebook.js.map +1 -1
  139. package/dist/panels/MarkdownPanel.d.ts +41 -47
  140. package/dist/panels/MarkdownPanel.d.ts.map +1 -1
  141. package/dist/panels/MarkdownPanel.js +17 -19
  142. package/dist/panels/MarkdownPanel.js.map +1 -1
  143. package/dist/panels/NotebookPanel.d.ts +135 -115
  144. package/dist/panels/NotebookPanel.d.ts.map +1 -1
  145. package/dist/panels/NotebookPanel.js +93 -68
  146. package/dist/panels/NotebookPanel.js.map +1 -1
  147. package/dist/panels/PandasPanel.d.ts +20 -17
  148. package/dist/panels/PandasPanel.d.ts.map +1 -1
  149. package/dist/panels/PandasPanel.js +17 -13
  150. package/dist/panels/PandasPanel.js.map +1 -1
  151. package/dist/panels/Panel.d.ts +87 -123
  152. package/dist/panels/Panel.d.ts.map +1 -1
  153. package/dist/panels/Panel.js +29 -54
  154. package/dist/panels/Panel.js.map +1 -1
  155. package/dist/panels/PanelContextMenu.d.ts +16 -31
  156. package/dist/panels/PanelContextMenu.d.ts.map +1 -1
  157. package/dist/panels/PanelContextMenu.js +12 -15
  158. package/dist/panels/PanelContextMenu.js.map +1 -1
  159. package/dist/panels/RenameDialog.d.ts +26 -28
  160. package/dist/panels/RenameDialog.d.ts.map +1 -1
  161. package/dist/panels/RenameDialog.js +15 -19
  162. package/dist/panels/RenameDialog.js.map +1 -1
  163. package/dist/panels/WidgetPanel.d.ts +72 -106
  164. package/dist/panels/WidgetPanel.d.ts.map +1 -1
  165. package/dist/panels/WidgetPanel.js +17 -47
  166. package/dist/panels/WidgetPanel.js.map +1 -1
  167. package/dist/panels/WidgetPanelTooltip.d.ts +29 -22
  168. package/dist/panels/WidgetPanelTooltip.d.ts.map +1 -1
  169. package/dist/panels/WidgetPanelTooltip.js +1 -1
  170. package/dist/panels/WidgetPanelTooltip.js.map +1 -1
  171. package/dist/panels/index.d.ts +3 -0
  172. package/dist/panels/index.d.ts.map +1 -1
  173. package/dist/panels/index.js +3 -0
  174. package/dist/panels/index.js.map +1 -1
  175. package/dist/prop-types/CommonPropTypes.d.ts +4 -4
  176. package/dist/prop-types/CommonPropTypes.d.ts.map +1 -1
  177. package/dist/prop-types/CommonPropTypes.js +1 -1
  178. package/dist/prop-types/CommonPropTypes.js.map +1 -1
  179. package/dist/prop-types/UIPropTypes.d.ts +2 -7
  180. package/dist/prop-types/UIPropTypes.d.ts.map +1 -1
  181. package/dist/prop-types/UIPropTypes.js +0 -7
  182. package/dist/prop-types/UIPropTypes.js.map +1 -1
  183. package/dist/prop-types/index.d.ts +2 -2
  184. package/dist/prop-types/index.d.ts.map +1 -1
  185. package/dist/prop-types/index.js.map +1 -1
  186. package/dist/redux/actionTypes.d.ts +1 -1
  187. package/dist/redux/actionTypes.d.ts.map +1 -1
  188. package/dist/redux/actionTypes.js.map +1 -1
  189. package/dist/redux/actions.d.ts +63 -8
  190. package/dist/redux/actions.d.ts.map +1 -1
  191. package/dist/redux/actions.js +17 -17
  192. package/dist/redux/actions.js.map +1 -1
  193. package/dist/redux/reducers/index.d.ts +3 -4
  194. package/dist/redux/reducers/index.d.ts.map +1 -1
  195. package/dist/redux/reducers/index.js.map +1 -1
  196. package/dist/redux/reducers/sessionWrapper.d.ts +1 -1
  197. package/dist/redux/reducers/sessionWrapper.d.ts.map +1 -1
  198. package/dist/redux/reducers/sessionWrapper.js.map +1 -1
  199. package/dist/redux/selectors.d.ts +63 -9
  200. package/dist/redux/selectors.d.ts.map +1 -1
  201. package/dist/redux/selectors.js +27 -27
  202. package/dist/redux/selectors.js.map +1 -1
  203. package/package.json +20 -17
@@ -1,10 +1,8 @@
1
1
  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; }
2
2
 
3
3
  import React, { Component } from 'react';
4
- import PropTypes from 'prop-types';
5
4
  import { connect } from 'react-redux';
6
5
  import debounce from 'lodash.debounce';
7
- import { GLPropTypes } from '@deephaven/dashboard';
8
6
  import Panel from "./Panel.js";
9
7
  import InputFilter from "../controls/input-filter/InputFilter.js";
10
8
  import { InputFilterEvent } from "../events/index.js";
@@ -12,8 +10,13 @@ import { getColumnsForDashboard } from "../redux/index.js";
12
10
  var INPUT_FILTER_DEBOUNCE = 250;
13
11
 
14
12
  class InputFilterPanel extends Component {
13
+ // Have to explicitly specify displayName
14
+ // otherwise it gets minified and breaks LayoutUtils.getComponentName
15
15
  constructor(props) {
16
16
  super(props);
17
+
18
+ _defineProperty(this, "inputFilterRef", void 0);
19
+
17
20
  this.handleChange = debounce(this.handleChange.bind(this), INPUT_FILTER_DEBOUNCE);
18
21
  this.handleClearAllFilters = this.handleClearAllFilters.bind(this);
19
22
  this.inputFilterRef = /*#__PURE__*/React.createRef();
@@ -22,18 +25,18 @@ class InputFilterPanel extends Component {
22
25
  } = props; // if panelstate is null, use destructured defaults
23
26
 
24
27
  var {
25
- value = null,
28
+ value,
26
29
  isValueShown = false,
27
30
  name,
28
31
  type,
29
- timestamp = null
32
+ timestamp
30
33
  } = panelState !== null && panelState !== void 0 ? panelState : {};
31
34
  this.state = {
32
35
  columns: [],
33
36
  column: name && type ? {
34
37
  name,
35
38
  type
36
- } : null,
39
+ } : undefined,
37
40
  value,
38
41
  timestamp,
39
42
  isValueShown,
@@ -78,13 +81,21 @@ class InputFilterPanel extends Component {
78
81
  isValueShown,
79
82
  value
80
83
  } = _ref;
81
- var {
82
- name,
83
- type
84
- } = column;
84
+ var name;
85
+ var type;
86
+
87
+ if (column != null) {
88
+ ({
89
+ name,
90
+ type
91
+ } = column);
92
+ }
93
+
85
94
  var sendUpdate = true;
86
95
  var timestamp = Date.now();
87
96
  this.setState(_ref2 => {
97
+ var _ref3;
98
+
88
99
  var {
89
100
  panelState,
90
101
  timestamp: prevTimestamp,
@@ -93,7 +104,7 @@ class InputFilterPanel extends Component {
93
104
  } = _ref2;
94
105
  // If the user had a value set, and they flip the card over and flip it back without changing any settings, ignore it
95
106
  var isFlip = panelState != null && isValueShown !== panelState.isValueShown && name === panelState.name && type === panelState.type && value === panelState.value;
96
- sendUpdate = !skipUpdate && isValueShown && (!isFlip || !wasFlipped);
107
+ sendUpdate = (_ref3 = !skipUpdate && isValueShown && (!isFlip || !wasFlipped)) !== null && _ref3 !== void 0 ? _ref3 : false;
97
108
 
98
109
  if (!sendUpdate) {
99
110
  timestamp = prevTimestamp;
@@ -119,7 +130,9 @@ class InputFilterPanel extends Component {
119
130
  }
120
131
 
121
132
  handleClearAllFilters() {
122
- this.inputFilterRef.current.clearFilter();
133
+ var _this$inputFilterRef$;
134
+
135
+ (_this$inputFilterRef$ = this.inputFilterRef.current) === null || _this$inputFilterRef$ === void 0 ? void 0 : _this$inputFilterRef$.clearFilter();
123
136
  }
124
137
 
125
138
  sendUpdate(name, type, value, timestamp) {
@@ -135,13 +148,13 @@ class InputFilterPanel extends Component {
135
148
  }
136
149
  /**
137
150
  * Set the filter value, card side, selected column
138
- * @param {Object} state Filter state to set
139
- * @param {boolean} sendUpdate Emit filters changed event if true
151
+ * @param state Filter state to set
152
+ * @param sendUpdate Emit filters changed event if true
140
153
  */
141
154
 
142
155
 
143
156
  setPanelState(state) {
144
- var _this$inputFilterRef$;
157
+ var _this$inputFilterRef$2;
145
158
 
146
159
  var sendUpdate = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
147
160
  // Set the skipUpdate flag so the next onChange handler call doesn't emit the FILTERS_CHANGED event
@@ -150,7 +163,7 @@ class InputFilterPanel extends Component {
150
163
  }); // Changing the inputFilter state via props doesn't quite work because of the delays on manual input changes
151
164
  // Setting the ref state directly triggers the onChange handler and updates the panelState
152
165
 
153
- (_this$inputFilterRef$ = this.inputFilterRef.current) === null || _this$inputFilterRef$ === void 0 ? void 0 : _this$inputFilterRef$.setFilterState(state);
166
+ (_this$inputFilterRef$2 = this.inputFilterRef.current) === null || _this$inputFilterRef$2 === void 0 ? void 0 : _this$inputFilterRef$2.setFilterState(state);
154
167
  }
155
168
 
156
169
  updateColumns() {
@@ -174,11 +187,11 @@ class InputFilterPanel extends Component {
174
187
  };
175
188
  }
176
189
 
177
- if (column != null && !columns.find(_ref3 => {
190
+ if (column != null && !columns.find(_ref4 => {
178
191
  var {
179
192
  name,
180
193
  type
181
- } = _ref3;
194
+ } = _ref4;
182
195
  return column.name === name && column.type === type;
183
196
  })) {
184
197
  return {
@@ -223,25 +236,13 @@ class InputFilterPanel extends Component {
223
236
 
224
237
  }
225
238
 
226
- _defineProperty(InputFilterPanel, "COMPONENT", 'InputFilterPanel');
227
-
228
- InputFilterPanel.propTypes = {
229
- glContainer: GLPropTypes.Container.isRequired,
230
- glEventHub: GLPropTypes.EventHub.isRequired,
231
- panelState: PropTypes.shape({
232
- name: PropTypes.string,
233
- type: PropTypes.string,
234
- value: PropTypes.string,
235
- isValueShown: PropTypes.bool
236
- }),
237
- columns: PropTypes.arrayOf(PropTypes.shape({})).isRequired
238
- };
239
- InputFilterPanel.defaultProps = {
239
+ _defineProperty(InputFilterPanel, "defaultProps", {
240
240
  panelState: null
241
- }; // Have to explicitly specify displayName
242
- // otherwise it gets minified and breaks LayoutUtils.getComponentName
241
+ });
242
+
243
+ _defineProperty(InputFilterPanel, "COMPONENT", 'InputFilterPanel');
243
244
 
244
- InputFilterPanel.displayName = 'InputFilterPanel';
245
+ _defineProperty(InputFilterPanel, "displayName", 'InputFilterPanel');
245
246
 
246
247
  var mapStateToProps = (state, ownProps) => {
247
248
  var {
@@ -1 +1 @@
1
- {"version":3,"file":"InputFilterPanel.js","names":["React","Component","PropTypes","connect","debounce","GLPropTypes","Panel","InputFilter","InputFilterEvent","getColumnsForDashboard","INPUT_FILTER_DEBOUNCE","InputFilterPanel","constructor","props","handleChange","bind","handleClearAllFilters","inputFilterRef","createRef","panelState","value","isValueShown","name","type","timestamp","state","columns","column","wasFlipped","skipUpdate","componentDidMount","updateColumns","sendUpdate","componentDidUpdate","prevProps","Date","now","setState","prevTimestamp","isFlip","current","clearFilter","glEventHub","emit","FILTERS_CHANGED","setPanelState","setFilterState","length","find","render","glContainer","propTypes","Container","isRequired","EventHub","shape","string","bool","arrayOf","defaultProps","displayName","mapStateToProps","ownProps","localDashboardId","forwardRef"],"sources":["../../src/panels/InputFilterPanel.jsx"],"sourcesContent":["import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport { connect } from 'react-redux';\nimport debounce from 'lodash.debounce';\nimport { GLPropTypes } from '@deephaven/dashboard';\nimport Panel from './Panel';\nimport InputFilter from '../controls/input-filter/InputFilter';\nimport { InputFilterEvent } from '../events';\nimport { getColumnsForDashboard } from '../redux';\n\nconst INPUT_FILTER_DEBOUNCE = 250;\n\nclass InputFilterPanel extends Component {\n static COMPONENT = 'InputFilterPanel';\n\n constructor(props) {\n super(props);\n\n this.handleChange = debounce(\n this.handleChange.bind(this),\n INPUT_FILTER_DEBOUNCE\n );\n this.handleClearAllFilters = this.handleClearAllFilters.bind(this);\n\n this.inputFilterRef = React.createRef();\n\n const { panelState } = props;\n // if panelstate is null, use destructured defaults\n const { value = null, isValueShown = false, name, type, timestamp = null } =\n panelState ?? {};\n\n this.state = {\n columns: [],\n column: name && type ? { name, type } : null,\n value,\n timestamp,\n isValueShown,\n wasFlipped: false,\n skipUpdate: false,\n // eslint-disable-next-line react/no-unused-state\n panelState, // Dehydrated panel state that can load this panel\n };\n }\n\n componentDidMount() {\n this.updateColumns();\n\n const { column, value, timestamp } = this.state;\n if (column != null) {\n const { name, type } = column;\n this.sendUpdate(name, type, value, timestamp);\n }\n }\n\n componentDidUpdate(prevProps) {\n const { columns } = this.props;\n if (columns !== prevProps.columns) {\n this.updateColumns();\n }\n }\n\n handleChange({ column, isValueShown, value }) {\n const { name, type } = column;\n let sendUpdate = true;\n let timestamp = Date.now();\n this.setState(\n ({ panelState, timestamp: prevTimestamp, wasFlipped, skipUpdate }) => {\n // If the user had a value set, and they flip the card over and flip it back without changing any settings, ignore it\n const isFlip =\n panelState != null &&\n isValueShown !== panelState.isValueShown &&\n name === panelState.name &&\n type === panelState.type &&\n value === panelState.value;\n sendUpdate = !skipUpdate && isValueShown && (!isFlip || !wasFlipped);\n\n if (!sendUpdate) {\n timestamp = prevTimestamp;\n }\n\n return {\n panelState: {\n isValueShown,\n name,\n type,\n value,\n timestamp,\n },\n timestamp,\n wasFlipped: isFlip,\n skipUpdate: false,\n };\n },\n () => {\n if (sendUpdate) {\n this.sendUpdate(name, type, value, timestamp);\n }\n }\n );\n }\n\n handleClearAllFilters() {\n this.inputFilterRef.current.clearFilter();\n }\n\n sendUpdate(name, type, value, timestamp) {\n const { glEventHub } = this.props;\n glEventHub.emit(InputFilterEvent.FILTERS_CHANGED, this, {\n name,\n type,\n value,\n timestamp,\n });\n }\n\n /**\n * Set the filter value, card side, selected column\n * @param {Object} state Filter state to set\n * @param {boolean} sendUpdate Emit filters changed event if true\n */\n setPanelState(state, sendUpdate = false) {\n // Set the skipUpdate flag so the next onChange handler call doesn't emit the FILTERS_CHANGED event\n this.setState({ skipUpdate: !sendUpdate });\n\n // Changing the inputFilter state via props doesn't quite work because of the delays on manual input changes\n // Setting the ref state directly triggers the onChange handler and updates the panelState\n this.inputFilterRef.current?.setFilterState(state);\n }\n\n updateColumns() {\n const { columns } = this.props;\n if (columns == null) {\n return;\n }\n\n this.setState(state => {\n const { column } = state;\n\n if (column == null && columns.length > 0) {\n return {\n columns: [...columns],\n column: columns[0],\n };\n }\n\n if (\n column != null &&\n !columns.find(\n ({ name, type }) => column.name === name && column.type === type\n )\n ) {\n return { columns: [...columns, column] };\n }\n\n return { columns: [...columns] };\n });\n }\n\n render() {\n const { glContainer, glEventHub } = this.props;\n const { column, columns, isValueShown, value } = this.state;\n return (\n <Panel\n className=\"iris-input-filter-panel\"\n componentPanel={this}\n glContainer={glContainer}\n glEventHub={glEventHub}\n onClearAllFilters={this.handleClearAllFilters}\n isClonable\n isRenamable\n >\n <InputFilter\n ref={this.inputFilterRef}\n column={column}\n columns={columns}\n onChange={this.handleChange}\n isValueShown={isValueShown}\n value={value}\n />\n </Panel>\n );\n }\n}\n\nInputFilterPanel.propTypes = {\n glContainer: GLPropTypes.Container.isRequired,\n glEventHub: GLPropTypes.EventHub.isRequired,\n panelState: PropTypes.shape({\n name: PropTypes.string,\n type: PropTypes.string,\n value: PropTypes.string,\n isValueShown: PropTypes.bool,\n }),\n columns: PropTypes.arrayOf(PropTypes.shape({})).isRequired,\n};\n\nInputFilterPanel.defaultProps = {\n panelState: null,\n};\n\n// Have to explicitly specify displayName\n// otherwise it gets minified and breaks LayoutUtils.getComponentName\nInputFilterPanel.displayName = 'InputFilterPanel';\n\nconst mapStateToProps = (state, ownProps) => {\n const { localDashboardId } = ownProps;\n\n return {\n columns: getColumnsForDashboard(state, localDashboardId),\n };\n};\n\nexport default connect(mapStateToProps, null, null, { forwardRef: true })(\n InputFilterPanel\n);\n"],"mappings":"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"}
1
+ {"version":3,"file":"InputFilterPanel.js","names":["React","Component","connect","debounce","Panel","InputFilter","InputFilterEvent","getColumnsForDashboard","INPUT_FILTER_DEBOUNCE","InputFilterPanel","constructor","props","handleChange","bind","handleClearAllFilters","inputFilterRef","createRef","panelState","value","isValueShown","name","type","timestamp","state","columns","column","undefined","wasFlipped","skipUpdate","componentDidMount","updateColumns","sendUpdate","componentDidUpdate","prevProps","Date","now","setState","prevTimestamp","isFlip","current","clearFilter","glEventHub","emit","FILTERS_CHANGED","setPanelState","setFilterState","length","find","render","glContainer","mapStateToProps","ownProps","localDashboardId","forwardRef"],"sources":["../../src/panels/InputFilterPanel.tsx"],"sourcesContent":["import React, { Component, RefObject } from 'react';\nimport { connect } from 'react-redux';\nimport debounce from 'lodash.debounce';\nimport { Container, EventEmitter } from '@deephaven/golden-layout';\nimport { RootState } from '@deephaven/redux';\nimport Panel from './Panel';\nimport InputFilter, {\n InputFilterColumn,\n} from '../controls/input-filter/InputFilter';\nimport { InputFilterEvent } from '../events';\nimport { getColumnsForDashboard } from '../redux';\n\nconst INPUT_FILTER_DEBOUNCE = 250;\n\nexport interface PanelState {\n name?: string;\n type?: string;\n value?: string;\n isValueShown?: boolean;\n timestamp?: number;\n}\n\ninterface InputFilterPanelProps {\n glContainer: Container;\n glEventHub: EventEmitter;\n panelState: PanelState;\n columns: InputFilterColumn[];\n}\n\ninterface InputFilterPanelState {\n columns: InputFilterColumn[];\n column?: InputFilterColumn;\n value?: string;\n timestamp?: number;\n isValueShown: boolean;\n wasFlipped: boolean;\n skipUpdate: boolean;\n // eslint-disable-next-line react/no-unused-state\n panelState: PanelState; // Dehydrated panel state that can load this panel}\n}\nclass InputFilterPanel extends Component<\n InputFilterPanelProps,\n InputFilterPanelState\n> {\n static defaultProps = {\n panelState: null,\n };\n\n static COMPONENT = 'InputFilterPanel';\n\n // Have to explicitly specify displayName\n // otherwise it gets minified and breaks LayoutUtils.getComponentName\n static displayName = 'InputFilterPanel';\n\n constructor(props: InputFilterPanelProps) {\n super(props);\n\n this.handleChange = debounce(\n this.handleChange.bind(this),\n INPUT_FILTER_DEBOUNCE\n );\n this.handleClearAllFilters = this.handleClearAllFilters.bind(this);\n\n this.inputFilterRef = React.createRef();\n\n const { panelState } = props;\n // if panelstate is null, use destructured defaults\n const { value, isValueShown = false, name, type, timestamp } =\n panelState ?? {};\n\n this.state = {\n columns: [],\n column: name && type ? { name, type } : undefined,\n value,\n timestamp,\n isValueShown,\n wasFlipped: false,\n skipUpdate: false,\n // eslint-disable-next-line react/no-unused-state\n panelState, // Dehydrated panel state that can load this panel\n };\n }\n\n componentDidMount() {\n this.updateColumns();\n\n const { column, value, timestamp } = this.state;\n if (column != null) {\n const { name, type } = column;\n this.sendUpdate(name, type, value, timestamp);\n }\n }\n\n componentDidUpdate(prevProps: InputFilterPanelProps) {\n const { columns } = this.props;\n if (columns !== prevProps.columns) {\n this.updateColumns();\n }\n }\n\n inputFilterRef: RefObject<InputFilter>;\n\n handleChange({\n column,\n isValueShown,\n value,\n }: {\n column?: InputFilterColumn;\n isValueShown?: boolean;\n value?: string;\n }) {\n let name: string | undefined;\n let type: string | undefined;\n if (column != null) {\n ({ name, type } = column);\n }\n let sendUpdate = true;\n let timestamp: number | undefined = Date.now();\n this.setState(\n ({ panelState, timestamp: prevTimestamp, wasFlipped, skipUpdate }) => {\n // If the user had a value set, and they flip the card over and flip it back without changing any settings, ignore it\n const isFlip =\n panelState != null &&\n isValueShown !== panelState.isValueShown &&\n name === panelState.name &&\n type === panelState.type &&\n value === panelState.value;\n sendUpdate =\n (!skipUpdate && isValueShown && (!isFlip || !wasFlipped)) ?? false;\n\n if (!sendUpdate) {\n timestamp = prevTimestamp;\n }\n\n return {\n panelState: {\n isValueShown,\n name,\n type,\n value,\n timestamp,\n },\n timestamp,\n wasFlipped: isFlip,\n skipUpdate: false,\n };\n },\n () => {\n if (sendUpdate) {\n this.sendUpdate(name, type, value, timestamp);\n }\n }\n );\n }\n\n handleClearAllFilters(): void {\n this.inputFilterRef.current?.clearFilter();\n }\n\n sendUpdate(name?: string, type?: string, value?: string, timestamp?: number) {\n const { glEventHub } = this.props;\n glEventHub.emit(InputFilterEvent.FILTERS_CHANGED, this, {\n name,\n type,\n value,\n timestamp,\n });\n }\n\n /**\n * Set the filter value, card side, selected column\n * @param state Filter state to set\n * @param sendUpdate Emit filters changed event if true\n */\n setPanelState(state: PanelState, sendUpdate = false) {\n // Set the skipUpdate flag so the next onChange handler call doesn't emit the FILTERS_CHANGED event\n this.setState({ skipUpdate: !sendUpdate });\n\n // Changing the inputFilter state via props doesn't quite work because of the delays on manual input changes\n // Setting the ref state directly triggers the onChange handler and updates the panelState\n this.inputFilterRef.current?.setFilterState(state);\n }\n\n updateColumns() {\n const { columns } = this.props;\n if (columns == null) {\n return;\n }\n\n this.setState(state => {\n const { column } = state;\n\n if (column == null && columns.length > 0) {\n return {\n columns: [...columns],\n column: columns[0],\n };\n }\n\n if (\n column != null &&\n !columns.find(\n ({ name, type }) => column.name === name && column.type === type\n )\n ) {\n return { columns: [...columns, column] };\n }\n\n return { columns: [...columns] };\n });\n }\n\n render() {\n const { glContainer, glEventHub } = this.props;\n const { column, columns, isValueShown, value } = this.state;\n return (\n <Panel\n className=\"iris-input-filter-panel\"\n componentPanel={this}\n glContainer={glContainer}\n glEventHub={glEventHub}\n onClearAllFilters={this.handleClearAllFilters}\n isClonable\n isRenamable\n >\n <InputFilter\n ref={this.inputFilterRef}\n column={column}\n columns={columns}\n onChange={this.handleChange}\n isValueShown={isValueShown}\n value={value}\n />\n </Panel>\n );\n }\n}\n\nconst mapStateToProps = (\n state: RootState,\n ownProps: { localDashboardId: string }\n) => {\n const { localDashboardId } = ownProps;\n\n return {\n columns: getColumnsForDashboard(state, localDashboardId),\n };\n};\n\nexport default connect(mapStateToProps, null, null, { forwardRef: true })(\n InputFilterPanel\n);\n"],"mappings":"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"}
@@ -1,54 +1,130 @@
1
- export class IrisGridPanel extends React.PureComponent<any, any, any> {
1
+ import React, { PureComponent, ReactElement, ReactNode, RefObject } from 'react';
2
+ import { PanelComponent } from '@deephaven/dashboard';
3
+ import { IrisGrid, IrisGridModel, ColumnName, PendingDataMap, InputFilter, IrisGridThemeType, AdvancedFilterMap, AggregationSettings, AdvancedSettingsType, UIRollupConfig, UIRow, QuickFilterMap, FilterMap, QuickFilter, AdvancedFilter, SidebarFormattingRule, IrisGridState, ChartBuilderSettings, DehydratedIrisGridState } from '@deephaven/iris-grid';
4
+ import { FormattingRule, ReverseType } from '@deephaven/jsapi-utils';
5
+ import { User, Workspace } from '@deephaven/redux';
6
+ import { CancelablePromise } from '@deephaven/utils';
7
+ import { ContextAction } from '@deephaven/components';
8
+ import { Column, FilterCondition, Sort } from '@deephaven/jsapi-shim';
9
+ import { GridRangeIndex, GridState, ModelIndex, ModelSizeMap, MoveOperation } from '@deephaven/grid';
10
+ import { Container, EventEmitter } from '@deephaven/golden-layout';
11
+ import './IrisGridPanel.scss';
12
+ import { Link, LinkColumn } from '../linker/LinkerUtils';
13
+ declare type ModelQueueFunction = (model: IrisGridModel) => void;
14
+ declare type ModelQueue = ModelQueueFunction[];
15
+ interface Metadata {
16
+ table: string;
17
+ query?: string;
18
+ querySerial?: string;
19
+ }
20
+ export interface PanelState {
21
+ gridState: {
22
+ isStuckToBottom: boolean;
23
+ isStuckToRight: boolean;
24
+ movedColumns: {
25
+ from: string | ModelIndex;
26
+ to: string | ModelIndex;
27
+ }[];
28
+ movedRows: MoveOperation[];
29
+ };
30
+ irisGridState: DehydratedIrisGridState;
31
+ irisGridPanelState: {
32
+ partitionColumn: ColumnName;
33
+ partition: string;
34
+ isSelectingPartition: boolean;
35
+ };
36
+ pluginState: unknown;
37
+ }
38
+ export interface IrisGridPanelProps {
39
+ children?: ReactNode;
40
+ glContainer: Container;
41
+ glEventHub: EventEmitter;
42
+ metadata: Metadata;
43
+ panelState: PanelState | null;
44
+ makeModel: () => IrisGridModel | Promise<IrisGridModel>;
45
+ inputFilters: InputFilter[];
46
+ links: Link[];
47
+ columnSelectionValidator?: (panel: PanelComponent, tableColumn?: LinkColumn) => boolean;
48
+ onStateChange?: (irisGridState: IrisGridState, gridState: GridState) => void;
49
+ onPanelStateUpdate?: (panelState: PanelState) => void;
50
+ user: User;
51
+ workspace: Workspace;
52
+ settings: {
53
+ timeZone: string;
54
+ };
55
+ getDownloadWorker: () => Promise<ServiceWorker>;
56
+ loadPlugin: (pluginName: string) => Plugin;
57
+ theme: IrisGridThemeType;
58
+ }
59
+ interface IrisGridPanelState {
60
+ error: unknown;
61
+ isDisconnected: boolean;
62
+ isLoaded: boolean;
63
+ isLoading: boolean;
64
+ isModelReady: boolean;
65
+ model?: IrisGridModel;
66
+ isStuckToBottom: boolean;
67
+ isStuckToRight: boolean;
68
+ conditionalFormats: SidebarFormattingRule[];
69
+ selectDistinctColumns: ColumnName[];
70
+ advancedFilters: AdvancedFilterMap;
71
+ aggregationSettings: AggregationSettings;
72
+ advancedSettings: Map<AdvancedSettingsType, boolean>;
73
+ customColumns: ColumnName[];
74
+ customColumnFormatMap: Map<string, FormattingRule>;
75
+ isFilterBarShown: boolean;
76
+ quickFilters: QuickFilterMap;
77
+ sorts: Sort[];
78
+ userColumnWidths: ModelSizeMap;
79
+ userRowHeights: ModelSizeMap;
80
+ reverseType: ReverseType;
81
+ movedColumns: MoveOperation[];
82
+ movedRows: MoveOperation[];
83
+ isSelectingPartition: boolean;
84
+ partition?: string;
85
+ partitionColumn?: Column;
86
+ rollupConfig?: UIRollupConfig;
87
+ showSearchBar: boolean;
88
+ searchValue: string;
89
+ selectedSearchColumns?: string[];
90
+ invertSearchColumns: boolean;
91
+ Plugin?: Plugin;
92
+ pluginFilters: FilterCondition[];
93
+ pluginFetchColumns: unknown[];
94
+ modelQueue: ModelQueue;
95
+ pendingDataMap?: PendingDataMap<UIRow>;
96
+ frozenColumns?: ColumnName[];
97
+ panelState: PanelState | null;
98
+ irisGridStateOverrides: Partial<DehydratedIrisGridState>;
99
+ gridStateOverrides: Partial<GridState>;
100
+ }
101
+ export declare class IrisGridPanel extends PureComponent<IrisGridPanelProps, IrisGridPanelState> {
102
+ static defaultProps: {
103
+ onStateChange: () => void;
104
+ onPanelStateUpdate: () => void;
105
+ };
106
+ static displayName: string;
2
107
  static COMPONENT: string;
3
- constructor(props: any);
4
- savePanelState(): void;
5
- handleAdvancedSettingsChange(key: any, value: any): void;
6
- handleColumnsChanged(event: any): void;
7
- handleTableChanged(event: any): void;
8
- handleColumnSelected(column: any): void;
9
- handleDataSelected(row: any, dataMap: any): void;
10
- handleError(error: any): void;
11
- handleGridStateChange(irisGridState: any, gridState: any): void;
12
- handlePluginStateChange(pluginState: any): void;
13
- handlePartitionAppend(column: any, value: any): void;
14
- /**
15
- * Create a chart with the specified settings
16
- * @param {ChartBuilderSettings} settings The settings from the chart builder
17
- * @param {string} settings.type The settings from the chart builder
18
- * @param {string[]} settings.series The names of the series
19
- * @param {string} xAxis The xAxis for this chart
20
- * @param {boolean} isLinked Whether this chart should be linked or not
21
- * @param {IrisGridModel} model The IrisGridModel object
22
- */
23
- handleCreateChart(settings: ChartBuilderSettings, model: IrisGridModel): void;
24
- handleResize(): void;
25
- handleShow(): void;
26
- handleTabClicked(): void;
27
- handleDisconnect(): void;
28
- handleReconnect(): void;
29
- handleLoadSuccess(modelParam: any): void;
30
- handleLoadError(error: any): void;
31
- isColumnSelectionValid(tableColumn: any): any;
32
- handleContextMenu(data: any): any;
33
- handlePluginFilter(filters: any): void;
34
- handlePluginFetchColumns(pluginFetchColumns: any): void;
35
- handleClearAllFilters(): void;
36
- irisGrid: React.RefObject<any>;
37
- pluginRef: React.RefObject<any>;
38
- modelPromise: import("@deephaven/utils").CancelablePromise<any> | null;
39
- irisGridState: any;
40
- gridState: any;
41
- pluginState: any;
42
- getTableName(): any;
43
- getGridInputFilters: (this: any, columns: any, inputFilters: any) => import("@deephaven/iris-grid").InputFilter[];
44
- getAlwaysFetchColumns: (this: any, dashboardLinks: any, pluginFetchColumns: any) => any[];
45
- getPluginContent: (this: any, Plugin: any, table: any, user: any, workspace: any, pluginState: any) => JSX.Element | null;
108
+ constructor(props: IrisGridPanelProps);
109
+ componentDidMount(): void;
110
+ componentDidUpdate(_: never, prevState: IrisGridPanelState): void;
111
+ componentWillUnmount(): void;
112
+ irisGrid: RefObject<IrisGrid>;
113
+ pluginRef: RefObject<any>;
114
+ modelPromise?: CancelablePromise<IrisGridModel>;
115
+ irisGridState?: IrisGridState;
116
+ gridState?: GridState;
117
+ pluginState: unknown;
118
+ getTableName(): string;
119
+ getGridInputFilters: (columns: Column[], inputFilters: InputFilter[]) => InputFilter[];
120
+ getAlwaysFetchColumns: (this: any, dashboardLinks: any, pluginFetchColumns: any) => string[];
121
+ getPluginContent: (this: any, Plugin: any, model: IrisGridModel | undefined, user: any, workspace: any, pluginState: any) => JSX.Element | null;
46
122
  getDehydratedIrisGridPanelState: (this: any, model: any, isSelectingPartition: any, partition: any, partitionColumn: any) => {
47
123
  isSelectingPartition: boolean;
48
124
  partition: string;
49
125
  partitionColumn: string | null;
50
126
  };
51
- getDehydratedIrisGridState: (this: any, model: any, sorts: any, advancedFilters: any, customColumnFormatMap: any, isFilterBarShown: any, quickFilters: any, customColumns: any, reverseType: any, rollupConfig: any, showSearchBar: any, searchValue: any, selectDistinctColumns: any, selectedSearchColumns: any, invertSearchColumns: any, userColumnWidths: any, userRowHeights: any, aggregationSettings: any, advancedSettings: any, pendingDataMap: any, frozenColumns: any, conditionalFormats: any) => import("packages/iris-grid/src/IrisGridUtils").DehydratedIrisGridState;
127
+ getDehydratedIrisGridState: (this: any, model: any, sorts: any, advancedFilters: any, customColumnFormatMap: any, isFilterBarShown: any, quickFilters: any, customColumns: any, reverseType: any, rollupConfig: any, showSearchBar: any, searchValue: any, selectDistinctColumns: any, selectedSearchColumns: any, invertSearchColumns: any, userColumnWidths: any, userRowHeights: any, aggregationSettings: any, pendingDataMap: any, frozenColumns: any, conditionalFormats: any) => DehydratedIrisGridState;
52
128
  getDehydratedGridState: (this: any, model: any, movedColumns: any, movedRows: any, isStuckToBottom: any, isStuckToRight: any) => {
53
129
  isStuckToBottom: boolean;
54
130
  isStuckToRight: boolean;
@@ -56,144 +132,81 @@ export class IrisGridPanel extends React.PureComponent<any, any, any> {
56
132
  from: string | [string, string];
57
133
  to: string;
58
134
  }[];
59
- movedRows: import("@deephaven/grid").MoveOperation[];
60
- };
61
- getCachedPanelState: (this: any, irisGridPanelState: any, irisGridState: any, gridState: any, pluginState: any) => {
62
- irisGridPanelState: any;
63
- irisGridState: any;
64
- gridState: any;
65
- pluginState: any;
135
+ movedRows: MoveOperation[];
66
136
  };
137
+ getCachedPanelState: (this: any, irisGridPanelState: any, irisGridState: any, gridState: any, pluginState: any) => PanelState;
67
138
  initModel(): void;
68
- initModelQueue(modelParam: any, modelQueue: any): void;
69
- modelInitialized(model: any): void;
70
- sendColumnsChange(columns: any): void;
71
- startModelListening(model: any): void;
72
- stopModelListening(model: any): void;
73
- getCoordinateForColumn(columnName: any): any[] | null;
74
- setFilterMap(filterMap: any): void;
75
- setAdvancedFilterMap(filterMap: any): void;
76
- setFilters({ quickFilters, advancedFilters }: {
77
- quickFilters: any;
78
- advancedFilters: any;
139
+ handleLoadSuccess(modelParam: IrisGridModel): void;
140
+ initModelQueue(modelParam: IrisGridModel, modelQueue: ModelQueue): void;
141
+ handleAdvancedSettingsChange(key: AdvancedSettingsType, value: boolean): void;
142
+ handlePluginFilter(filters: InputFilter[]): void;
143
+ handlePluginFetchColumns(pluginFetchColumns: unknown[]): void;
144
+ handleContextMenu(obj: {
145
+ model: IrisGridModel;
146
+ value: unknown;
147
+ valueText: string | null;
148
+ column: Column;
149
+ rowIndex: GridRangeIndex;
150
+ columnIndex: GridRangeIndex;
151
+ modelRow: GridRangeIndex;
152
+ modelColumn: GridRangeIndex;
153
+ }): ContextAction;
154
+ isColumnSelectionValid(tableColumn: Column | null): boolean;
155
+ handleGridStateChange(irisGridState: IrisGridState, gridState: GridState): void;
156
+ handlePluginStateChange(pluginState: unknown): void;
157
+ handleColumnsChanged(event: Event): void;
158
+ handleTableChanged(event: Event): void;
159
+ handlePartitionAppend(column: Column, value: unknown): void;
160
+ /**
161
+ * Create a chart with the specified settings
162
+ * @param settings The settings from the chart builder
163
+ * @param settings.type The settings from the chart builder
164
+ * @param settings.series The names of the series
165
+ * @param model The IrisGridModel object
166
+ */
167
+ handleCreateChart(settings: ChartBuilderSettings, model: IrisGridModel): void;
168
+ handleColumnSelected(column: Column): void;
169
+ handleDataSelected(row: ModelIndex, dataMap: Record<string, unknown>): void;
170
+ handleResize(): void;
171
+ handleShow(): void;
172
+ handleTabClicked(): void;
173
+ handleError(error: unknown): void;
174
+ handleDisconnect(): void;
175
+ handleReconnect(): void;
176
+ handleLoadError(error: unknown): void;
177
+ modelInitialized(model: IrisGridModel): void;
178
+ handleClearAllFilters(): void;
179
+ sendColumnsChange(columns: Column[]): void;
180
+ startModelListening(model: IrisGridModel): void;
181
+ stopModelListening(model: IrisGridModel): void;
182
+ getCoordinateForColumn(columnName: ColumnName): [number, number] | null;
183
+ setFilterMap(filterMap: FilterMap): void;
184
+ setAdvancedFilterMap(filterMap: AdvancedFilterMap): void;
185
+ setFilters({ quickFilters, advancedFilters, }: {
186
+ quickFilters: {
187
+ name: ColumnName;
188
+ filter: QuickFilter;
189
+ }[];
190
+ advancedFilters: {
191
+ name: ColumnName;
192
+ filter: AdvancedFilter;
193
+ }[];
194
+ }): void;
195
+ setStateOverrides(overrides: {
196
+ irisGridState: Partial<DehydratedIrisGridState>;
197
+ gridState: Partial<GridState>;
79
198
  }): void;
80
- setStateOverrides(overrides: any): void;
81
199
  unsetFilterValue(): void;
82
- loadPanelState(model: any): void;
200
+ loadPanelState(model: IrisGridModel): void;
201
+ savePanelState: import("lodash").DebouncedFunc<() => void>;
83
202
  updateGrid(): void;
203
+ render(): ReactElement;
84
204
  }
85
- export namespace IrisGridPanel {
86
- namespace propTypes {
87
- const children: PropTypes.Requireable<PropTypes.ReactNodeLike>;
88
- const glContainer: PropTypes.Validator<PropTypes.InferProps<{
89
- on: PropTypes.Requireable<(...args: any[]) => any>;
90
- off: PropTypes.Requireable<(...args: any[]) => any>;
91
- isHidden: PropTypes.Requireable<boolean>;
92
- tab: PropTypes.Requireable<PropTypes.InferProps<{
93
- header: PropTypes.Requireable<PropTypes.InferProps<{
94
- tabs: PropTypes.Requireable<(PropTypes.InferProps<{
95
- contentItem: PropTypes.Requireable<PropTypes.InferProps<{}>>;
96
- }> | null | undefined)[]>;
97
- }>>;
98
- }>>;
99
- title: PropTypes.Requireable<string>;
100
- setTitle: PropTypes.Requireable<(...args: any[]) => any>;
101
- close: PropTypes.Requireable<(...args: any[]) => any>;
102
- }>>;
103
- const glEventHub: PropTypes.Validator<PropTypes.InferProps<{
104
- on: PropTypes.Requireable<(...args: any[]) => any>;
105
- off: PropTypes.Requireable<(...args: any[]) => any>;
106
- emit: PropTypes.Requireable<(...args: any[]) => any>;
107
- }>>;
108
- const metadata: PropTypes.Validator<PropTypes.InferProps<{
109
- table: PropTypes.Validator<string>;
110
- query: PropTypes.Requireable<string>;
111
- querySerial: PropTypes.Requireable<string>;
112
- }>>;
113
- const panelState: PropTypes.Requireable<PropTypes.InferProps<{
114
- gridState: PropTypes.Requireable<PropTypes.InferProps<{}>>;
115
- irisGridState: PropTypes.Requireable<PropTypes.InferProps<{
116
- aggregationSettings: PropTypes.Requireable<PropTypes.InferProps<{}>>;
117
- customColumns: PropTypes.Requireable<(string | null | undefined)[]>;
118
- conditionalFormats: PropTypes.Requireable<(PropTypes.InferProps<{}> | null | undefined)[]>;
119
- selectDistinctColumns: PropTypes.Requireable<(string | null | undefined)[]>;
120
- rollupConfig: PropTypes.Requireable<PropTypes.InferProps<{
121
- columns: PropTypes.Validator<(string | null | undefined)[]>;
122
- }>>;
123
- pendingDataMap: PropTypes.Requireable<(any[] | null | undefined)[]>;
124
- frozenColumns: PropTypes.Requireable<(string | null | undefined)[]>;
125
- }>>;
126
- irisGridPanelState: PropTypes.Requireable<PropTypes.InferProps<{}>>;
127
- pluginState: PropTypes.Requireable<PropTypes.InferProps<{}>>;
128
- }>>;
129
- const makeModel: PropTypes.Validator<(...args: any[]) => any>;
130
- const inputFilters: PropTypes.Validator<(PropTypes.InferProps<{
131
- name: PropTypes.Validator<string>;
132
- type: PropTypes.Validator<string>;
133
- value: any;
134
- }> | null | undefined)[]>;
135
- const links: PropTypes.Validator<(PropTypes.InferProps<{
136
- start: PropTypes.Requireable<PropTypes.InferProps<{
137
- panelId: PropTypes.Validator<string>;
138
- columnName: PropTypes.Validator<string>;
139
- }>>;
140
- end: PropTypes.Requireable<PropTypes.InferProps<{
141
- panelId: PropTypes.Validator<string>;
142
- columnName: PropTypes.Validator<string>;
143
- }>>;
144
- id: PropTypes.Requireable<string>;
145
- isReversed: PropTypes.Requireable<boolean>;
146
- }> | null | undefined)[]>;
147
- const columnSelectionValidator: PropTypes.Requireable<(...args: any[]) => any>;
148
- const onStateChange: PropTypes.Requireable<(...args: any[]) => any>;
149
- const onPanelStateUpdate: PropTypes.Requireable<(...args: any[]) => any>;
150
- const user: PropTypes.Validator<PropTypes.InferProps<{
151
- name: PropTypes.Validator<string>;
152
- operateAs: PropTypes.Validator<string>;
153
- groups: PropTypes.Validator<(string | null | undefined)[]>;
154
- permissions: PropTypes.Validator<PropTypes.InferProps<{
155
- isSuperUser: PropTypes.Validator<boolean>;
156
- isQueryViewOnly: PropTypes.Validator<boolean>;
157
- isNonInteractive: PropTypes.Validator<boolean>;
158
- canUsePanels: PropTypes.Validator<boolean>;
159
- canCreateDashboard: PropTypes.Validator<boolean>;
160
- canCreateCodeStudio: PropTypes.Validator<boolean>;
161
- canCreateQueryMonitor: PropTypes.Validator<boolean>;
162
- canCopy: PropTypes.Validator<boolean>;
163
- canDownloadCsv: PropTypes.Validator<boolean>;
164
- }>>;
165
- }>>;
166
- const workspace: PropTypes.Validator<PropTypes.InferProps<{}>>;
167
- const settings: PropTypes.Validator<PropTypes.InferProps<{
168
- timeZone: PropTypes.Validator<string>;
169
- }>>;
170
- const getDownloadWorker: PropTypes.Requireable<(...args: any[]) => any>;
171
- const loadPlugin: PropTypes.Requireable<(...args: any[]) => any>;
172
- const theme: PropTypes.Requireable<PropTypes.InferProps<{}>>;
173
- }
174
- namespace defaultProps {
175
- const children_1: null;
176
- export { children_1 as children };
177
- const panelState_1: null;
178
- export { panelState_1 as panelState };
179
- const columnSelectionValidator_1: null;
180
- export { columnSelectionValidator_1 as columnSelectionValidator };
181
- export function onStateChange_1(): void;
182
- export { onStateChange_1 as onStateChange };
183
- export function onPanelStateUpdate_1(): void;
184
- export { onPanelStateUpdate_1 as onPanelStateUpdate };
185
- const getDownloadWorker_1: undefined;
186
- export { getDownloadWorker_1 as getDownloadWorker };
187
- const loadPlugin_1: undefined;
188
- export { loadPlugin_1 as loadPlugin };
189
- const theme_1: undefined;
190
- export { theme_1 as theme };
191
- }
192
- const displayName: string;
193
- }
194
- declare var _default: import("react-redux").ConnectedComponent<typeof IrisGridPanel, any>;
205
+ declare const _default: import("react-redux").ConnectedComponent<typeof IrisGridPanel, import("react-redux").Omit<Pick<React.ClassAttributes<IrisGridPanel> & IrisGridPanelProps, "glContainer" | "children" | "metadata" | "glEventHub" | "user" | "panelState" | "columnSelectionValidator" | "settings" | "inputFilters" | "links" | "workspace" | "makeModel" | "getDownloadWorker" | "loadPlugin" | "theme" | keyof React.ClassAttributes<IrisGridPanel>> & Partial<Pick<React.ClassAttributes<IrisGridPanel> & IrisGridPanelProps, "onStateChange" | "onPanelStateUpdate">> & Partial<Pick<{
206
+ onStateChange: () => void;
207
+ onPanelStateUpdate: () => void;
208
+ }, never>>, "user" | "columnSelectionValidator" | "settings" | "inputFilters" | "links" | "workspace"> & {
209
+ localDashboardId: string;
210
+ }>;
195
211
  export default _default;
196
- import React from "react";
197
- import { IrisGridModel } from "@deephaven/iris-grid";
198
- import PropTypes from "prop-types";
199
212
  //# sourceMappingURL=IrisGridPanel.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"IrisGridPanel.d.ts","sourceRoot":"","sources":["../../src/panels/IrisGridPanel.jsx"],"names":[],"mappings":"AAsCA;IACE,yBAAmC;IAEnC,wBAuFC;IAurBD,uBAqFC;IAzhBD,yDAOC;IAqDD,uCAOC;IAED,qCAKC;IA+CD,wCAGC;IAED,iDAGC;IAgBD,8BAGC;IAhHD,gEAYC;IAED,gDAQC;IAkBD,qDAMC;IAED;;;;;;;;OAQG;IACH,yDAFW,aAAa,QA4BvB;IAYD,qBAEC;IAED,mBAEC;IAED,yBAIC;IAOD,yBAMC;IAED,wBAEC;IA5ND,yCA6CC;IAiLD,kCAMC;IA5ID,8CAMC;IAVD,kCAEC;IAjBD,uCASC;IAED,wDAEC;IA8KD,8BAMC;IAnfC,+BAAiC;IACjC,gCAAkC;IAClC,uEAAwB;IAKxB,mBAAyB;IACzB,eAAqB;IACrB,iBAAuB;IA+EzB,oBAGC;IAED,kHAWE;IAEF,0FAWG;IAEH,0HAyBG;IAEH;;;;MAOE;IAEF,sjBAgDE;IAEF;;;;;;;;MAQE;IAEF;;;;;MAOE;IAEF,kBAWC;IAiDD,uDAWC;IA4KD,mCAwBC;IAUD,sCAIC;IAED,sCAcC;IAED,qCAiBC;IAED,sDAuCC;IAED,mCAKC;IAED,2CAKC;IAED;;;aA+BC;IAED,wCASC;IAGD,yBAEC;IAED,iCAqGC;IAyFD,mBAMC;CA4KF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAmDgB,wCAAQ;;QACH,6CAAQ"}
1
+ {"version":3,"file":"IrisGridPanel.d.ts","sourceRoot":"","sources":["../../src/panels/IrisGridPanel.tsx"],"names":[],"mappings":"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"}