@deephaven/dashboard-core-plugins 0.54.1-ui.1 → 0.55.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/{ChartPlugin.d.ts → ChartPanelPlugin.d.ts} +3 -3
- package/dist/ChartPanelPlugin.d.ts.map +1 -0
- package/dist/{ChartPlugin.js → ChartPanelPlugin.js} +4 -34
- package/dist/ChartPanelPlugin.js.map +1 -0
- package/dist/ChartPluginConfig.d.ts.map +1 -1
- package/dist/ChartPluginConfig.js +3 -2
- package/dist/ChartPluginConfig.js.map +1 -1
- package/dist/ChartWidgetPlugin.d.ts +5 -0
- package/dist/ChartWidgetPlugin.d.ts.map +1 -0
- package/dist/ChartWidgetPlugin.js +39 -0
- package/dist/ChartWidgetPlugin.js.map +1 -0
- package/dist/{GridPlugin.d.ts → GridPanelPlugin.d.ts} +3 -3
- package/dist/GridPanelPlugin.d.ts.map +1 -0
- package/dist/{GridPlugin.js → GridPanelPlugin.js} +3 -38
- package/dist/GridPanelPlugin.js.map +1 -0
- package/dist/GridPluginConfig.d.ts.map +1 -1
- package/dist/GridPluginConfig.js +3 -2
- package/dist/GridPluginConfig.js.map +1 -1
- package/dist/GridWidgetPlugin.d.ts +5 -0
- package/dist/GridWidgetPlugin.d.ts.map +1 -0
- package/dist/GridWidgetPlugin.js +38 -0
- package/dist/GridWidgetPlugin.js.map +1 -0
- package/dist/{PandasPlugin.d.ts → PandasPanelPlugin.d.ts} +3 -3
- package/dist/PandasPanelPlugin.d.ts.map +1 -0
- package/dist/PandasPanelPlugin.js +26 -0
- package/dist/PandasPanelPlugin.js.map +1 -0
- package/dist/PandasPluginConfig.d.ts.map +1 -1
- package/dist/PandasPluginConfig.js +3 -2
- package/dist/PandasPluginConfig.js.map +1 -1
- package/dist/PandasWidgetPlugin.d.ts +5 -0
- package/dist/PandasWidgetPlugin.d.ts.map +1 -0
- package/dist/{PandasPlugin.js → PandasWidgetPlugin.js} +5 -25
- package/dist/PandasWidgetPlugin.js.map +1 -0
- package/dist/controls/dropdown-filter/DropdownFilter.d.ts +3 -3
- package/dist/controls/dropdown-filter/DropdownFilter.d.ts.map +1 -1
- package/dist/controls/dropdown-filter/DropdownFilter.js +10 -14
- package/dist/controls/dropdown-filter/DropdownFilter.js.map +1 -1
- package/dist/controls/input-filter/InputFilter.d.ts +1 -1
- package/dist/controls/input-filter/InputFilter.d.ts.map +1 -1
- package/dist/controls/input-filter/InputFilter.js +5 -8
- package/dist/controls/input-filter/InputFilter.js.map +1 -1
- package/dist/index.d.ts +6 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +6 -3
- package/dist/index.js.map +1 -1
- package/dist/panels/FilterSetManager.d.ts +2 -2
- package/dist/panels/FilterSetManager.d.ts.map +1 -1
- package/dist/panels/FilterSetManager.js +8 -13
- package/dist/panels/FilterSetManager.js.map +1 -1
- package/dist/panels/PandasPanel.d.ts +1 -4
- package/dist/panels/PandasPanel.d.ts.map +1 -1
- package/dist/panels/PandasPanel.js +2 -30
- package/dist/panels/PandasPanel.js.map +1 -1
- package/dist/panels/PandasReloadButton.d.ts +6 -0
- package/dist/panels/PandasReloadButton.d.ts.map +1 -0
- package/dist/panels/PandasReloadButton.js +33 -0
- package/dist/panels/PandasReloadButton.js.map +1 -0
- package/package.json +24 -24
- package/dist/ChartPlugin.d.ts.map +0 -1
- package/dist/ChartPlugin.js.map +0 -1
- package/dist/GridPlugin.d.ts.map +0 -1
- package/dist/GridPlugin.js.map +0 -1
- package/dist/PandasPlugin.d.ts.map +0 -1
- package/dist/PandasPlugin.js.map +0 -1
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
|
-
import { WidgetPanelProps
|
|
2
|
+
import { WidgetPanelProps } from '@deephaven/plugin';
|
|
3
3
|
import { type ChartPanel } from './panels/ChartPanel';
|
|
4
|
-
export declare function ChartPlugin(props: WidgetComponentProps): JSX.Element | null;
|
|
5
4
|
export declare const ChartPanelPlugin: import("react").ForwardRefExoticComponent<WidgetPanelProps & import("react").RefAttributes<ChartPanel>>;
|
|
6
|
-
|
|
5
|
+
export default ChartPanelPlugin;
|
|
6
|
+
//# sourceMappingURL=ChartPanelPlugin.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ChartPanelPlugin.d.ts","sourceRoot":"","sources":["../src/ChartPanelPlugin.tsx"],"names":[],"mappings":";AAgBA,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAQrD,OAA4B,EAC1B,KAAK,UAAU,EAEhB,MAAM,qBAAqB,CAAC;AAwF7B,eAAO,MAAM,gBAAgB,yGA6C5B,CAAC;AAIF,eAAe,gBAAgB,CAAC"}
|
|
@@ -5,10 +5,10 @@ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typ
|
|
|
5
5
|
function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
|
|
6
6
|
function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
|
|
7
7
|
function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
|
|
8
|
-
import { forwardRef,
|
|
8
|
+
import { forwardRef, useMemo } from 'react';
|
|
9
9
|
import { useApi } from '@deephaven/jsapi-bootstrap';
|
|
10
10
|
import { useConnection } from '@deephaven/jsapi-components';
|
|
11
|
-
import {
|
|
11
|
+
import { ChartModelFactory, useChartTheme } from '@deephaven/chart';
|
|
12
12
|
import { IrisGridUtils } from '@deephaven/iris-grid';
|
|
13
13
|
import { getTimeZone, store } from '@deephaven/redux';
|
|
14
14
|
import { isChartPanelDehydratedProps, isChartPanelFigureMetadata, isChartPanelTableMetadata } from "./panels/index.js";
|
|
@@ -77,37 +77,6 @@ function _createChartModel() {
|
|
|
77
77
|
});
|
|
78
78
|
return _createChartModel.apply(this, arguments);
|
|
79
79
|
}
|
|
80
|
-
export function ChartPlugin(props) {
|
|
81
|
-
var dh = useApi();
|
|
82
|
-
var chartTheme = useChartTheme();
|
|
83
|
-
var [model, setModel] = useState();
|
|
84
|
-
var {
|
|
85
|
-
fetch
|
|
86
|
-
} = props;
|
|
87
|
-
useEffect(() => {
|
|
88
|
-
var cancelled = false;
|
|
89
|
-
function init() {
|
|
90
|
-
return _init.apply(this, arguments);
|
|
91
|
-
}
|
|
92
|
-
function _init() {
|
|
93
|
-
_init = _asyncToGenerator(function* () {
|
|
94
|
-
var figure = yield fetch();
|
|
95
|
-
var newModel = yield ChartModelFactory.makeModel(dh, undefined, figure, chartTheme);
|
|
96
|
-
if (!cancelled) {
|
|
97
|
-
setModel(newModel);
|
|
98
|
-
}
|
|
99
|
-
});
|
|
100
|
-
return _init.apply(this, arguments);
|
|
101
|
-
}
|
|
102
|
-
init();
|
|
103
|
-
return () => {
|
|
104
|
-
cancelled = true;
|
|
105
|
-
};
|
|
106
|
-
}, [dh, fetch, chartTheme]);
|
|
107
|
-
return model ? /*#__PURE__*/_jsx(Chart, {
|
|
108
|
-
model: model
|
|
109
|
-
}) : null;
|
|
110
|
-
}
|
|
111
80
|
export var ChartPanelPlugin = /*#__PURE__*/forwardRef((props, ref) => {
|
|
112
81
|
var dh = useApi();
|
|
113
82
|
var chartTheme = useChartTheme();
|
|
@@ -135,4 +104,5 @@ export var ChartPanelPlugin = /*#__PURE__*/forwardRef((props, ref) => {
|
|
|
135
104
|
}, props), hydratedProps));
|
|
136
105
|
});
|
|
137
106
|
ChartPanelPlugin.displayName = 'ChartPanelPlugin';
|
|
138
|
-
|
|
107
|
+
export default ChartPanelPlugin;
|
|
108
|
+
//# sourceMappingURL=ChartPanelPlugin.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ChartPanelPlugin.js","names":["forwardRef","useMemo","useApi","useConnection","ChartModelFactory","useChartTheme","IrisGridUtils","getTimeZone","store","isChartPanelDehydratedProps","isChartPanelFigureMetadata","isChartPanelTableMetadata","ConnectedChartPanel","jsx","_jsx","createChartModel","_x","_x2","_x3","_x4","_x5","_x6","_createChartModel","apply","arguments","_asyncToGenerator","dh","chartTheme","connection","metadata","fetch","panelState","settings","tableName","figureName","tableSettings","table","undefined","figure","name","_objectSpread","makeModel","type","VariableType","FIGURE","definition","getObject","TABLE","applyTableSettings","getState","makeModelFromSettings","ChartPanelPlugin","props","ref","localDashboardId","hydratedProps","Error","displayName"],"sources":["../src/ChartPanelPlugin.tsx"],"sourcesContent":["import { forwardRef, useMemo } from 'react';\nimport { useApi } from '@deephaven/jsapi-bootstrap';\nimport { useConnection } from '@deephaven/jsapi-components';\nimport {\n ChartModel,\n ChartModelFactory,\n ChartTheme,\n useChartTheme,\n} from '@deephaven/chart';\nimport type {\n dh as DhType,\n Figure,\n IdeConnection,\n} from '@deephaven/jsapi-types';\nimport { IrisGridUtils } from '@deephaven/iris-grid';\nimport { getTimeZone, store } from '@deephaven/redux';\nimport { WidgetPanelProps } from '@deephaven/plugin';\nimport {\n ChartPanelMetadata,\n GLChartPanelState,\n isChartPanelDehydratedProps,\n isChartPanelFigureMetadata,\n isChartPanelTableMetadata,\n} from './panels';\nimport ConnectedChartPanel, {\n type ChartPanel,\n type ChartPanelProps,\n} from './panels/ChartPanel';\n\nasync function createChartModel(\n dh: DhType,\n chartTheme: ChartTheme,\n connection: IdeConnection,\n metadata: ChartPanelMetadata,\n fetch: () => Promise<Figure>,\n panelState?: GLChartPanelState\n): Promise<ChartModel> {\n let settings;\n let tableName;\n let figureName;\n let tableSettings;\n\n if (isChartPanelTableMetadata(metadata)) {\n settings = metadata.settings;\n tableName = metadata.table;\n figureName = undefined;\n tableSettings = metadata.tableSettings;\n } else {\n settings = {};\n tableName = '';\n figureName = isChartPanelFigureMetadata(metadata)\n ? metadata.figure\n : metadata.name;\n tableSettings = {};\n }\n if (panelState != null) {\n if (panelState.tableSettings != null) {\n tableSettings = panelState.tableSettings;\n }\n if (panelState.table != null) {\n tableName = panelState.table;\n }\n if (panelState.figure != null) {\n figureName = panelState.figure;\n }\n if (panelState.settings != null) {\n settings = {\n ...settings,\n ...panelState.settings,\n };\n }\n }\n\n if (figureName == null && tableName == null) {\n const figure = await fetch();\n\n return ChartModelFactory.makeModel(dh, settings, figure, chartTheme);\n }\n\n if (figureName != null) {\n let figure: Figure;\n\n if (metadata.type === dh.VariableType.FIGURE) {\n const definition = {\n name: figureName,\n type: dh.VariableType.FIGURE,\n };\n figure = await connection.getObject(definition);\n } else {\n figure = await fetch();\n }\n\n return ChartModelFactory.makeModel(dh, settings, figure, chartTheme);\n }\n\n const definition = {\n name: tableName,\n type: dh.VariableType.TABLE,\n };\n const table = await connection.getObject(definition);\n new IrisGridUtils(dh).applyTableSettings(\n table,\n tableSettings,\n getTimeZone(store.getState())\n );\n\n return ChartModelFactory.makeModelFromSettings(\n dh,\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n settings as any,\n table,\n chartTheme\n );\n}\n\nexport const ChartPanelPlugin = forwardRef(\n (props: WidgetPanelProps, ref: React.Ref<ChartPanel>) => {\n const dh = useApi();\n const chartTheme = useChartTheme();\n const connection = useConnection();\n\n const panelState = isChartPanelDehydratedProps(props)\n ? (props as unknown as ChartPanelProps).panelState\n : undefined;\n\n const { fetch, metadata, localDashboardId } = props;\n\n const hydratedProps = useMemo(\n () => ({\n metadata: metadata as ChartPanelMetadata,\n localDashboardId,\n makeModel: () => {\n if (metadata == null) {\n throw new Error('Metadata is required for chart panel');\n }\n\n return createChartModel(\n dh,\n chartTheme,\n connection,\n metadata as ChartPanelMetadata,\n fetch as unknown as () => Promise<Figure>,\n panelState\n );\n },\n }),\n [\n dh,\n connection,\n fetch,\n panelState,\n metadata,\n localDashboardId,\n chartTheme,\n ]\n );\n\n // eslint-disable-next-line react/jsx-props-no-spreading\n return <ConnectedChartPanel ref={ref} {...props} {...hydratedProps} />;\n }\n);\n\nChartPanelPlugin.displayName = 'ChartPanelPlugin';\n\nexport default ChartPanelPlugin;\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChartPluginConfig.d.ts","sourceRoot":"","sources":["../src/ChartPluginConfig.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,KAAK,YAAY,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"ChartPluginConfig.d.ts","sourceRoot":"","sources":["../src/ChartPluginConfig.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,KAAK,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAKlE,QAAA,MAAM,iBAAiB,EAAE,YAQxB,CAAC;AAEF,eAAe,iBAAiB,CAAC"}
|
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
import { PluginType } from '@deephaven/plugin';
|
|
2
2
|
import { vsGraph } from '@deephaven/icons';
|
|
3
|
-
import {
|
|
3
|
+
import { ChartWidgetPlugin } from "./ChartWidgetPlugin.js";
|
|
4
|
+
import { ChartPanelPlugin } from "./ChartPanelPlugin.js";
|
|
4
5
|
var ChartPluginConfig = {
|
|
5
6
|
name: 'ChartPanel',
|
|
6
7
|
title: 'Chart',
|
|
7
8
|
type: PluginType.WIDGET_PLUGIN,
|
|
8
|
-
component:
|
|
9
|
+
component: ChartWidgetPlugin,
|
|
9
10
|
panelComponent: ChartPanelPlugin,
|
|
10
11
|
supportedTypes: 'Figure',
|
|
11
12
|
icon: vsGraph
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChartPluginConfig.js","names":["PluginType","vsGraph","
|
|
1
|
+
{"version":3,"file":"ChartPluginConfig.js","names":["PluginType","vsGraph","ChartWidgetPlugin","ChartPanelPlugin","ChartPluginConfig","name","title","type","WIDGET_PLUGIN","component","panelComponent","supportedTypes","icon"],"sources":["../src/ChartPluginConfig.ts"],"sourcesContent":["import { PluginType, type WidgetPlugin } from '@deephaven/plugin';\nimport { vsGraph } from '@deephaven/icons';\nimport { ChartWidgetPlugin } from './ChartWidgetPlugin';\nimport { ChartPanelPlugin } from './ChartPanelPlugin';\n\nconst ChartPluginConfig: WidgetPlugin = {\n name: 'ChartPanel',\n title: 'Chart',\n type: PluginType.WIDGET_PLUGIN,\n component: ChartWidgetPlugin,\n panelComponent: ChartPanelPlugin,\n supportedTypes: 'Figure',\n icon: vsGraph,\n};\n\nexport default ChartPluginConfig;\n"],"mappings":"AAAA,SAASA,UAAU,QAA2B,mBAAmB;AACjE,SAASC,OAAO,QAAQ,kBAAkB;AAAC,SAClCC,iBAAiB;AAAA,SACjBC,gBAAgB;AAEzB,IAAMC,iBAA+B,GAAG;EACtCC,IAAI,EAAE,YAAY;EAClBC,KAAK,EAAE,OAAO;EACdC,IAAI,EAAEP,UAAU,CAACQ,aAAa;EAC9BC,SAAS,EAAEP,iBAAiB;EAC5BQ,cAAc,EAAEP,gBAAgB;EAChCQ,cAAc,EAAE,QAAQ;EACxBC,IAAI,EAAEX;AACR,CAAC;AAED,eAAeG,iBAAiB"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
import { type WidgetComponentProps } from '@deephaven/plugin';
|
|
3
|
+
export declare function ChartWidgetPlugin(props: WidgetComponentProps): JSX.Element | null;
|
|
4
|
+
export default ChartWidgetPlugin;
|
|
5
|
+
//# sourceMappingURL=ChartWidgetPlugin.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ChartWidgetPlugin.d.ts","sourceRoot":"","sources":["../src/ChartWidgetPlugin.tsx"],"names":[],"mappings":";AASA,OAAO,EAAE,KAAK,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAE9D,wBAAgB,iBAAiB,CAC/B,KAAK,EAAE,oBAAoB,GAC1B,GAAG,CAAC,OAAO,GAAG,IAAI,CA+BpB;AAED,eAAe,iBAAiB,CAAC"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
|
|
2
|
+
function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
|
|
3
|
+
import { useEffect, useState } from 'react';
|
|
4
|
+
import { useApi } from '@deephaven/jsapi-bootstrap';
|
|
5
|
+
import { Chart, ChartModelFactory, useChartTheme } from '@deephaven/chart';
|
|
6
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
7
|
+
export function ChartWidgetPlugin(props) {
|
|
8
|
+
var dh = useApi();
|
|
9
|
+
var chartTheme = useChartTheme();
|
|
10
|
+
var [model, setModel] = useState();
|
|
11
|
+
var {
|
|
12
|
+
fetch
|
|
13
|
+
} = props;
|
|
14
|
+
useEffect(() => {
|
|
15
|
+
var cancelled = false;
|
|
16
|
+
function init() {
|
|
17
|
+
return _init.apply(this, arguments);
|
|
18
|
+
}
|
|
19
|
+
function _init() {
|
|
20
|
+
_init = _asyncToGenerator(function* () {
|
|
21
|
+
var figure = yield fetch();
|
|
22
|
+
var newModel = yield ChartModelFactory.makeModel(dh, undefined, figure, chartTheme);
|
|
23
|
+
if (!cancelled) {
|
|
24
|
+
setModel(newModel);
|
|
25
|
+
}
|
|
26
|
+
});
|
|
27
|
+
return _init.apply(this, arguments);
|
|
28
|
+
}
|
|
29
|
+
init();
|
|
30
|
+
return () => {
|
|
31
|
+
cancelled = true;
|
|
32
|
+
};
|
|
33
|
+
}, [dh, fetch, chartTheme]);
|
|
34
|
+
return model ? /*#__PURE__*/_jsx(Chart, {
|
|
35
|
+
model: model
|
|
36
|
+
}) : null;
|
|
37
|
+
}
|
|
38
|
+
export default ChartWidgetPlugin;
|
|
39
|
+
//# sourceMappingURL=ChartWidgetPlugin.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ChartWidgetPlugin.js","names":["useEffect","useState","useApi","Chart","ChartModelFactory","useChartTheme","jsx","_jsx","ChartWidgetPlugin","props","dh","chartTheme","model","setModel","fetch","cancelled","init","_init","apply","arguments","_asyncToGenerator","figure","newModel","makeModel","undefined"],"sources":["../src/ChartWidgetPlugin.tsx"],"sourcesContent":["import { useEffect, useState } from 'react';\nimport { useApi } from '@deephaven/jsapi-bootstrap';\nimport {\n Chart,\n ChartModel,\n ChartModelFactory,\n useChartTheme,\n} from '@deephaven/chart';\nimport type { Figure } from '@deephaven/jsapi-types';\nimport { type WidgetComponentProps } from '@deephaven/plugin';\n\nexport function ChartWidgetPlugin(\n props: WidgetComponentProps\n): JSX.Element | null {\n const dh = useApi();\n const chartTheme = useChartTheme();\n const [model, setModel] = useState<ChartModel>();\n\n const { fetch } = props;\n\n useEffect(() => {\n let cancelled = false;\n async function init() {\n const figure = (await fetch()) as unknown as Figure;\n const newModel = await ChartModelFactory.makeModel(\n dh,\n undefined,\n figure,\n chartTheme\n );\n\n if (!cancelled) {\n setModel(newModel);\n }\n }\n\n init();\n\n return () => {\n cancelled = true;\n };\n }, [dh, fetch, chartTheme]);\n\n return model ? <Chart model={model} /> : null;\n}\n\nexport default ChartWidgetPlugin;\n"],"mappings":";;AAAA,SAASA,SAAS,EAAEC,QAAQ,QAAQ,OAAO;AAC3C,SAASC,MAAM,QAAQ,4BAA4B;AACnD,SACEC,KAAK,EAELC,iBAAiB,EACjBC,aAAa,QACR,kBAAkB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAI1B,OAAO,SAASC,iBAAiBA,CAC/BC,KAA2B,EACP;EACpB,IAAMC,EAAE,GAAGR,MAAM,CAAC,CAAC;EACnB,IAAMS,UAAU,GAAGN,aAAa,CAAC,CAAC;EAClC,IAAM,CAACO,KAAK,EAAEC,QAAQ,CAAC,GAAGZ,QAAQ,CAAa,CAAC;EAEhD,IAAM;IAAEa;EAAM,CAAC,GAAGL,KAAK;EAEvBT,SAAS,CAAC,MAAM;IACd,IAAIe,SAAS,GAAG,KAAK;IAAC,SACPC,IAAIA,CAAA;MAAA,OAAAC,KAAA,CAAAC,KAAA,OAAAC,SAAA;IAAA;IAAA,SAAAF,MAAA;MAAAA,KAAA,GAAAG,iBAAA,CAAnB,aAAsB;QACpB,IAAMC,MAAM,SAAUP,KAAK,CAAC,CAAuB;QACnD,IAAMQ,QAAQ,SAASlB,iBAAiB,CAACmB,SAAS,CAChDb,EAAE,EACFc,SAAS,EACTH,MAAM,EACNV,UACF,CAAC;QAED,IAAI,CAACI,SAAS,EAAE;UACdF,QAAQ,CAACS,QAAQ,CAAC;QACpB;MACF,CAAC;MAAA,OAAAL,KAAA,CAAAC,KAAA,OAAAC,SAAA;IAAA;IAEDH,IAAI,CAAC,CAAC;IAEN,OAAO,MAAM;MACXD,SAAS,GAAG,IAAI;IAClB,CAAC;EACH,CAAC,EAAE,CAACL,EAAE,EAAEI,KAAK,EAAEH,UAAU,CAAC,CAAC;EAE3B,OAAOC,KAAK,gBAAGL,IAAA,CAACJ,KAAK;IAACS,KAAK,EAAEA;EAAM,CAAE,CAAC,GAAG,IAAI;AAC/C;AAEA,eAAeJ,iBAAiB"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
|
-
import { WidgetPanelProps
|
|
2
|
+
import { WidgetPanelProps } from '@deephaven/plugin';
|
|
3
3
|
import { type IrisGridPanel } from './panels/IrisGridPanel';
|
|
4
|
-
export declare function GridPlugin(props: WidgetComponentProps): JSX.Element | null;
|
|
5
4
|
export declare const GridPanelPlugin: import("react").ForwardRefExoticComponent<WidgetPanelProps & import("react").RefAttributes<IrisGridPanel>>;
|
|
6
|
-
|
|
5
|
+
export default GridPanelPlugin;
|
|
6
|
+
//# sourceMappingURL=GridPanelPlugin.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GridPanelPlugin.d.ts","sourceRoot":"","sources":["../src/GridPanelPlugin.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAGrD,OAA+B,EAC7B,KAAK,aAAa,EACnB,MAAM,wBAAwB,CAAC;AAEhC,eAAO,MAAM,eAAe,4GAW3B,CAAC;AAIF,eAAe,eAAe,CAAC"}
|
|
@@ -3,46 +3,10 @@ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { va
|
|
|
3
3
|
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
4
4
|
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
|
|
5
5
|
function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
|
|
6
|
-
|
|
7
|
-
function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
|
|
8
|
-
import { useEffect, useState, forwardRef } from 'react';
|
|
9
|
-
import { useApi } from '@deephaven/jsapi-bootstrap';
|
|
10
|
-
import { IrisGrid, IrisGridModelFactory } from '@deephaven/iris-grid';
|
|
6
|
+
import { forwardRef } from 'react';
|
|
11
7
|
import useHydrateGrid from "./useHydrateGrid.js";
|
|
12
8
|
import ConnectedIrisGridPanel from "./panels/IrisGridPanel.js";
|
|
13
9
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
14
|
-
export function GridPlugin(props) {
|
|
15
|
-
var dh = useApi();
|
|
16
|
-
var [model, setModel] = useState();
|
|
17
|
-
var {
|
|
18
|
-
fetch
|
|
19
|
-
} = props;
|
|
20
|
-
useEffect(() => {
|
|
21
|
-
var cancelled = false;
|
|
22
|
-
function init() {
|
|
23
|
-
return _init.apply(this, arguments);
|
|
24
|
-
}
|
|
25
|
-
function _init() {
|
|
26
|
-
_init = _asyncToGenerator(function* () {
|
|
27
|
-
var table = yield fetch();
|
|
28
|
-
var newModel = yield IrisGridModelFactory.makeModel(dh, table);
|
|
29
|
-
if (!cancelled) {
|
|
30
|
-
setModel(newModel);
|
|
31
|
-
}
|
|
32
|
-
});
|
|
33
|
-
return _init.apply(this, arguments);
|
|
34
|
-
}
|
|
35
|
-
init();
|
|
36
|
-
return () => {
|
|
37
|
-
cancelled = true;
|
|
38
|
-
};
|
|
39
|
-
}, [dh, fetch]);
|
|
40
|
-
|
|
41
|
-
// eslint-disable-next-line react/jsx-props-no-spreading
|
|
42
|
-
return model ? /*#__PURE__*/_jsx(IrisGrid, {
|
|
43
|
-
model: model
|
|
44
|
-
}) : null;
|
|
45
|
-
}
|
|
46
10
|
export var GridPanelPlugin = /*#__PURE__*/forwardRef((props, ref) => {
|
|
47
11
|
var {
|
|
48
12
|
localDashboardId,
|
|
@@ -56,4 +20,5 @@ export var GridPanelPlugin = /*#__PURE__*/forwardRef((props, ref) => {
|
|
|
56
20
|
}, props), hydratedProps));
|
|
57
21
|
});
|
|
58
22
|
GridPanelPlugin.displayName = 'GridPanelPlugin';
|
|
59
|
-
|
|
23
|
+
export default GridPanelPlugin;
|
|
24
|
+
//# sourceMappingURL=GridPanelPlugin.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GridPanelPlugin.js","names":["forwardRef","useHydrateGrid","ConnectedIrisGridPanel","jsx","_jsx","GridPanelPlugin","props","ref","localDashboardId","fetch","hydratedProps","_objectSpread","displayName"],"sources":["../src/GridPanelPlugin.tsx"],"sourcesContent":["import { forwardRef } from 'react';\nimport { WidgetPanelProps } from '@deephaven/plugin';\nimport { type Table } from '@deephaven/jsapi-types';\nimport useHydrateGrid from './useHydrateGrid';\nimport ConnectedIrisGridPanel, {\n type IrisGridPanel,\n} from './panels/IrisGridPanel';\n\nexport const GridPanelPlugin = forwardRef(\n (props: WidgetPanelProps, ref: React.Ref<IrisGridPanel>) => {\n const { localDashboardId, fetch } = props;\n const hydratedProps = useHydrateGrid(\n fetch as unknown as () => Promise<Table>,\n localDashboardId\n );\n\n // eslint-disable-next-line react/jsx-props-no-spreading\n return <ConnectedIrisGridPanel ref={ref} {...props} {...hydratedProps} />;\n }\n);\n\nGridPanelPlugin.displayName = 'GridPanelPlugin';\n\nexport default GridPanelPlugin;\n"],"mappings":";;;;;AAAA,SAASA,UAAU,QAAQ,OAAO;AAAC,OAG5BC,cAAc;AAAA,OACdC,sBAAsB;AAAA,SAAAC,GAAA,IAAAC,IAAA;AAI7B,OAAO,IAAMC,eAAe,gBAAGL,UAAU,CACvC,CAACM,KAAuB,EAAEC,GAA6B,KAAK;EAC1D,IAAM;IAAEC,gBAAgB;IAAEC;EAAM,CAAC,GAAGH,KAAK;EACzC,IAAMI,aAAa,GAAGT,cAAc,CAClCQ,KAAK,EACLD,gBACF,CAAC;;EAED;EACA,oBAAOJ,IAAA,CAACF,sBAAsB,EAAAS,aAAA,CAAAA,aAAA;IAACJ,GAAG,EAAEA;EAAI,GAAKD,KAAK,GAAMI,aAAa,CAAG,CAAC;AAC3E,CACF,CAAC;AAEDL,eAAe,CAACO,WAAW,GAAG,iBAAiB;AAE/C,eAAeP,eAAe"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GridPluginConfig.d.ts","sourceRoot":"","sources":["../src/GridPluginConfig.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,KAAK,YAAY,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"GridPluginConfig.d.ts","sourceRoot":"","sources":["../src/GridPluginConfig.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,KAAK,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAKlE,QAAA,MAAM,gBAAgB,EAAE,YAQvB,CAAC;AAEF,eAAe,gBAAgB,CAAC"}
|
package/dist/GridPluginConfig.js
CHANGED
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
import { PluginType } from '@deephaven/plugin';
|
|
2
2
|
import { dhTable } from '@deephaven/icons';
|
|
3
|
-
import {
|
|
3
|
+
import { GridWidgetPlugin } from "./GridWidgetPlugin.js";
|
|
4
|
+
import { GridPanelPlugin } from "./GridPanelPlugin.js";
|
|
4
5
|
var GridPluginConfig = {
|
|
5
6
|
name: 'IrisGridPanel',
|
|
6
7
|
title: 'Table',
|
|
7
8
|
type: PluginType.WIDGET_PLUGIN,
|
|
8
|
-
component:
|
|
9
|
+
component: GridWidgetPlugin,
|
|
9
10
|
panelComponent: GridPanelPlugin,
|
|
10
11
|
supportedTypes: ['Table', 'TreeTable', 'HierarchicalTable'],
|
|
11
12
|
icon: dhTable
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GridPluginConfig.js","names":["PluginType","dhTable","
|
|
1
|
+
{"version":3,"file":"GridPluginConfig.js","names":["PluginType","dhTable","GridWidgetPlugin","GridPanelPlugin","GridPluginConfig","name","title","type","WIDGET_PLUGIN","component","panelComponent","supportedTypes","icon"],"sources":["../src/GridPluginConfig.ts"],"sourcesContent":["import { PluginType, type WidgetPlugin } from '@deephaven/plugin';\nimport { dhTable } from '@deephaven/icons';\nimport { GridWidgetPlugin } from './GridWidgetPlugin';\nimport { GridPanelPlugin } from './GridPanelPlugin';\n\nconst GridPluginConfig: WidgetPlugin = {\n name: 'IrisGridPanel',\n title: 'Table',\n type: PluginType.WIDGET_PLUGIN,\n component: GridWidgetPlugin,\n panelComponent: GridPanelPlugin,\n supportedTypes: ['Table', 'TreeTable', 'HierarchicalTable'],\n icon: dhTable,\n};\n\nexport default GridPluginConfig;\n"],"mappings":"AAAA,SAASA,UAAU,QAA2B,mBAAmB;AACjE,SAASC,OAAO,QAAQ,kBAAkB;AAAC,SAClCC,gBAAgB;AAAA,SAChBC,eAAe;AAExB,IAAMC,gBAA8B,GAAG;EACrCC,IAAI,EAAE,eAAe;EACrBC,KAAK,EAAE,OAAO;EACdC,IAAI,EAAEP,UAAU,CAACQ,aAAa;EAC9BC,SAAS,EAAEP,gBAAgB;EAC3BQ,cAAc,EAAEP,eAAe;EAC/BQ,cAAc,EAAE,CAAC,OAAO,EAAE,WAAW,EAAE,mBAAmB,CAAC;EAC3DC,IAAI,EAAEX;AACR,CAAC;AAED,eAAeG,gBAAgB"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
import { type WidgetComponentProps } from '@deephaven/plugin';
|
|
3
|
+
export declare function GridWidgetPlugin(props: WidgetComponentProps): JSX.Element | null;
|
|
4
|
+
export default GridWidgetPlugin;
|
|
5
|
+
//# sourceMappingURL=GridWidgetPlugin.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GridWidgetPlugin.d.ts","sourceRoot":"","sources":["../src/GridWidgetPlugin.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,KAAK,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAS9D,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,oBAAoB,GAC1B,GAAG,CAAC,OAAO,GAAG,IAAI,CAwBpB;AAED,eAAe,gBAAgB,CAAC"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
|
|
2
|
+
function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
|
|
3
|
+
import { useEffect, useState } from 'react';
|
|
4
|
+
import { useApi } from '@deephaven/jsapi-bootstrap';
|
|
5
|
+
import { IrisGrid, IrisGridModelFactory } from '@deephaven/iris-grid';
|
|
6
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
7
|
+
export function GridWidgetPlugin(props) {
|
|
8
|
+
var dh = useApi();
|
|
9
|
+
var [model, setModel] = useState();
|
|
10
|
+
var {
|
|
11
|
+
fetch
|
|
12
|
+
} = props;
|
|
13
|
+
useEffect(() => {
|
|
14
|
+
var cancelled = false;
|
|
15
|
+
function init() {
|
|
16
|
+
return _init.apply(this, arguments);
|
|
17
|
+
}
|
|
18
|
+
function _init() {
|
|
19
|
+
_init = _asyncToGenerator(function* () {
|
|
20
|
+
var table = yield fetch();
|
|
21
|
+
var newModel = yield IrisGridModelFactory.makeModel(dh, table);
|
|
22
|
+
if (!cancelled) {
|
|
23
|
+
setModel(newModel);
|
|
24
|
+
}
|
|
25
|
+
});
|
|
26
|
+
return _init.apply(this, arguments);
|
|
27
|
+
}
|
|
28
|
+
init();
|
|
29
|
+
return () => {
|
|
30
|
+
cancelled = true;
|
|
31
|
+
};
|
|
32
|
+
}, [dh, fetch]);
|
|
33
|
+
return model ? /*#__PURE__*/_jsx(IrisGrid, {
|
|
34
|
+
model: model
|
|
35
|
+
}) : null;
|
|
36
|
+
}
|
|
37
|
+
export default GridWidgetPlugin;
|
|
38
|
+
//# sourceMappingURL=GridWidgetPlugin.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GridWidgetPlugin.js","names":["useEffect","useState","useApi","IrisGrid","IrisGridModelFactory","jsx","_jsx","GridWidgetPlugin","props","dh","model","setModel","fetch","cancelled","init","_init","apply","arguments","_asyncToGenerator","table","newModel","makeModel"],"sources":["../src/GridWidgetPlugin.tsx"],"sourcesContent":["import { useEffect, useState } from 'react';\nimport { type WidgetComponentProps } from '@deephaven/plugin';\nimport { type Table } from '@deephaven/jsapi-types';\nimport { useApi } from '@deephaven/jsapi-bootstrap';\nimport {\n IrisGrid,\n IrisGridModelFactory,\n type IrisGridModel,\n} from '@deephaven/iris-grid';\n\nexport function GridWidgetPlugin(\n props: WidgetComponentProps\n): JSX.Element | null {\n const dh = useApi();\n const [model, setModel] = useState<IrisGridModel>();\n\n const { fetch } = props;\n\n useEffect(() => {\n let cancelled = false;\n async function init() {\n const table = (await fetch()) as unknown as Table;\n const newModel = await IrisGridModelFactory.makeModel(dh, table);\n if (!cancelled) {\n setModel(newModel);\n }\n }\n\n init();\n\n return () => {\n cancelled = true;\n };\n }, [dh, fetch]);\n\n return model ? <IrisGrid model={model} /> : null;\n}\n\nexport default GridWidgetPlugin;\n"],"mappings":";;AAAA,SAASA,SAAS,EAAEC,QAAQ,QAAQ,OAAO;AAG3C,SAASC,MAAM,QAAQ,4BAA4B;AACnD,SACEC,QAAQ,EACRC,oBAAoB,QAEf,sBAAsB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAE9B,OAAO,SAASC,gBAAgBA,CAC9BC,KAA2B,EACP;EACpB,IAAMC,EAAE,GAAGP,MAAM,CAAC,CAAC;EACnB,IAAM,CAACQ,KAAK,EAAEC,QAAQ,CAAC,GAAGV,QAAQ,CAAgB,CAAC;EAEnD,IAAM;IAAEW;EAAM,CAAC,GAAGJ,KAAK;EAEvBR,SAAS,CAAC,MAAM;IACd,IAAIa,SAAS,GAAG,KAAK;IAAC,SACPC,IAAIA,CAAA;MAAA,OAAAC,KAAA,CAAAC,KAAA,OAAAC,SAAA;IAAA;IAAA,SAAAF,MAAA;MAAAA,KAAA,GAAAG,iBAAA,CAAnB,aAAsB;QACpB,IAAMC,KAAK,SAAUP,KAAK,CAAC,CAAsB;QACjD,IAAMQ,QAAQ,SAAShB,oBAAoB,CAACiB,SAAS,CAACZ,EAAE,EAAEU,KAAK,CAAC;QAChE,IAAI,CAACN,SAAS,EAAE;UACdF,QAAQ,CAACS,QAAQ,CAAC;QACpB;MACF,CAAC;MAAA,OAAAL,KAAA,CAAAC,KAAA,OAAAC,SAAA;IAAA;IAEDH,IAAI,CAAC,CAAC;IAEN,OAAO,MAAM;MACXD,SAAS,GAAG,IAAI;IAClB,CAAC;EACH,CAAC,EAAE,CAACJ,EAAE,EAAEG,KAAK,CAAC,CAAC;EAEf,OAAOF,KAAK,gBAAGJ,IAAA,CAACH,QAAQ;IAACO,KAAK,EAAEA;EAAM,CAAE,CAAC,GAAG,IAAI;AAClD;AAEA,eAAeH,gBAAgB"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
|
-
import {
|
|
2
|
+
import { WidgetPanelProps } from '@deephaven/plugin';
|
|
3
3
|
import { PandasPanel } from './panels';
|
|
4
|
-
export declare function PandasPlugin(props: WidgetComponentProps): JSX.Element | null;
|
|
5
4
|
export declare const PandasPanelPlugin: import("react").ForwardRefExoticComponent<WidgetPanelProps & import("react").RefAttributes<PandasPanel>>;
|
|
6
|
-
|
|
5
|
+
export default PandasPanelPlugin;
|
|
6
|
+
//# sourceMappingURL=PandasPanelPlugin.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PandasPanelPlugin.d.ts","sourceRoot":"","sources":["../src/PandasPanelPlugin.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAErD,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAGvC,eAAO,MAAM,iBAAiB,0GAa7B,CAAC;AAIF,eAAe,iBAAiB,CAAC"}
|
|
@@ -0,0 +1,26 @@
|
|
|
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
|
+
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; }
|
|
3
|
+
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
4
|
+
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
|
|
5
|
+
function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
|
|
6
|
+
import { forwardRef } from 'react';
|
|
7
|
+
import { PandasPanel } from "./panels/index.js";
|
|
8
|
+
import useHydrateGrid from "./useHydrateGrid.js";
|
|
9
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
10
|
+
export var PandasPanelPlugin = /*#__PURE__*/forwardRef((props, ref) => {
|
|
11
|
+
var {
|
|
12
|
+
localDashboardId,
|
|
13
|
+
fetch
|
|
14
|
+
} = props;
|
|
15
|
+
var hydratedProps = useHydrateGrid(fetch, localDashboardId);
|
|
16
|
+
return (
|
|
17
|
+
/*#__PURE__*/
|
|
18
|
+
// eslint-disable-next-line react/jsx-props-no-spreading
|
|
19
|
+
_jsx(PandasPanel, _objectSpread(_objectSpread({
|
|
20
|
+
ref: ref
|
|
21
|
+
}, props), hydratedProps))
|
|
22
|
+
);
|
|
23
|
+
});
|
|
24
|
+
PandasPanelPlugin.displayName = 'PandasPanelPlugin';
|
|
25
|
+
export default PandasPanelPlugin;
|
|
26
|
+
//# sourceMappingURL=PandasPanelPlugin.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PandasPanelPlugin.js","names":["forwardRef","PandasPanel","useHydrateGrid","jsx","_jsx","PandasPanelPlugin","props","ref","localDashboardId","fetch","hydratedProps","_objectSpread","displayName"],"sources":["../src/PandasPanelPlugin.tsx"],"sourcesContent":["import { forwardRef } from 'react';\nimport { WidgetPanelProps } from '@deephaven/plugin';\nimport { type Table } from '@deephaven/jsapi-types';\nimport { PandasPanel } from './panels';\nimport useHydrateGrid from './useHydrateGrid';\n\nexport const PandasPanelPlugin = forwardRef(\n (props: WidgetPanelProps, ref: React.Ref<PandasPanel>) => {\n const { localDashboardId, fetch } = props;\n const hydratedProps = useHydrateGrid(\n fetch as unknown as () => Promise<Table>,\n localDashboardId\n );\n\n return (\n // eslint-disable-next-line react/jsx-props-no-spreading\n <PandasPanel ref={ref} {...props} {...hydratedProps} />\n );\n }\n);\n\nPandasPanelPlugin.displayName = 'PandasPanelPlugin';\n\nexport default PandasPanelPlugin;\n"],"mappings":";;;;;AAAA,SAASA,UAAU,QAAQ,OAAO;AAAC,SAG1BC,WAAW;AAAA,OACbC,cAAc;AAAA,SAAAC,GAAA,IAAAC,IAAA;AAErB,OAAO,IAAMC,iBAAiB,gBAAGL,UAAU,CACzC,CAACM,KAAuB,EAAEC,GAA2B,KAAK;EACxD,IAAM;IAAEC,gBAAgB;IAAEC;EAAM,CAAC,GAAGH,KAAK;EACzC,IAAMI,aAAa,GAAGR,cAAc,CAClCO,KAAK,EACLD,gBACF,CAAC;EAED;IAAA;IACE;IACAJ,IAAA,CAACH,WAAW,EAAAU,aAAA,CAAAA,aAAA;MAACJ,GAAG,EAAEA;IAAI,GAAKD,KAAK,GAAMI,aAAa,CAAG;EAAC;AAE3D,CACF,CAAC;AAEDL,iBAAiB,CAACO,WAAW,GAAG,mBAAmB;AAEnD,eAAeP,iBAAiB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PandasPluginConfig.d.ts","sourceRoot":"","sources":["../src/PandasPluginConfig.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,YAAY,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"PandasPluginConfig.d.ts","sourceRoot":"","sources":["../src/PandasPluginConfig.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAK7D,QAAA,MAAM,kBAAkB,EAAE,YAQzB,CAAC;AAEF,eAAe,kBAAkB,CAAC"}
|
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
import { PluginType } from '@deephaven/plugin';
|
|
2
2
|
import { dhPandas } from '@deephaven/icons';
|
|
3
|
-
import {
|
|
3
|
+
import { PandasWidgetPlugin } from "./PandasWidgetPlugin.js";
|
|
4
|
+
import { PandasPanelPlugin } from "./PandasPanelPlugin.js";
|
|
4
5
|
var PandasPluginConfig = {
|
|
5
6
|
name: 'PandasPanel',
|
|
6
7
|
title: 'Pandas',
|
|
7
8
|
type: PluginType.WIDGET_PLUGIN,
|
|
8
|
-
component:
|
|
9
|
+
component: PandasWidgetPlugin,
|
|
9
10
|
panelComponent: PandasPanelPlugin,
|
|
10
11
|
supportedTypes: 'pandas.DataFrame',
|
|
11
12
|
icon: dhPandas
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PandasPluginConfig.js","names":["PluginType","dhPandas","
|
|
1
|
+
{"version":3,"file":"PandasPluginConfig.js","names":["PluginType","dhPandas","PandasWidgetPlugin","PandasPanelPlugin","PandasPluginConfig","name","title","type","WIDGET_PLUGIN","component","panelComponent","supportedTypes","icon"],"sources":["../src/PandasPluginConfig.ts"],"sourcesContent":["import { PluginType, WidgetPlugin } from '@deephaven/plugin';\nimport { dhPandas } from '@deephaven/icons';\nimport { PandasWidgetPlugin } from './PandasWidgetPlugin';\nimport { PandasPanelPlugin } from './PandasPanelPlugin';\n\nconst PandasPluginConfig: WidgetPlugin = {\n name: 'PandasPanel',\n title: 'Pandas',\n type: PluginType.WIDGET_PLUGIN,\n component: PandasWidgetPlugin,\n panelComponent: PandasPanelPlugin,\n supportedTypes: 'pandas.DataFrame',\n icon: dhPandas,\n};\n\nexport default PandasPluginConfig;\n"],"mappings":"AAAA,SAASA,UAAU,QAAsB,mBAAmB;AAC5D,SAASC,QAAQ,QAAQ,kBAAkB;AAAC,SACnCC,kBAAkB;AAAA,SAClBC,iBAAiB;AAE1B,IAAMC,kBAAgC,GAAG;EACvCC,IAAI,EAAE,aAAa;EACnBC,KAAK,EAAE,QAAQ;EACfC,IAAI,EAAEP,UAAU,CAACQ,aAAa;EAC9BC,SAAS,EAAEP,kBAAkB;EAC7BQ,cAAc,EAAEP,iBAAiB;EACjCQ,cAAc,EAAE,kBAAkB;EAClCC,IAAI,EAAEX;AACR,CAAC;AAED,eAAeG,kBAAkB"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
import { WidgetComponentProps } from '@deephaven/plugin';
|
|
3
|
+
export declare function PandasWidgetPlugin(props: WidgetComponentProps): JSX.Element | null;
|
|
4
|
+
export default PandasWidgetPlugin;
|
|
5
|
+
//# sourceMappingURL=PandasWidgetPlugin.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PandasWidgetPlugin.d.ts","sourceRoot":"","sources":["../src/PandasWidgetPlugin.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAUzD,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,oBAAoB,GAC1B,GAAG,CAAC,OAAO,GAAG,IAAI,CAiDpB;AAED,eAAe,kBAAkB,CAAC"}
|
|
@@ -1,20 +1,14 @@
|
|
|
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
|
-
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; }
|
|
3
|
-
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
4
|
-
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
|
|
5
|
-
function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
|
|
6
1
|
function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
|
|
7
2
|
function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
|
|
8
|
-
import {
|
|
3
|
+
import { useCallback, useEffect, useState } from 'react';
|
|
9
4
|
import IrisGrid, { IrisGridModelFactory } from '@deephaven/iris-grid';
|
|
10
5
|
import { useApi } from '@deephaven/jsapi-bootstrap';
|
|
11
6
|
import { LoadingOverlay } from '@deephaven/components';
|
|
12
|
-
import {
|
|
13
|
-
import useHydrateGrid from "./useHydrateGrid.js";
|
|
7
|
+
import { PandasReloadButton } from "./panels/PandasReloadButton.js";
|
|
14
8
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
15
9
|
import { Fragment as _Fragment } from "react/jsx-runtime";
|
|
16
10
|
import { jsxs as _jsxs } from "react/jsx-runtime";
|
|
17
|
-
export function
|
|
11
|
+
export function PandasWidgetPlugin(props) {
|
|
18
12
|
var dh = useApi();
|
|
19
13
|
var [model, setModel] = useState();
|
|
20
14
|
var [isLoading, setIsLoading] = useState(true);
|
|
@@ -66,19 +60,5 @@ export function PandasPlugin(props) {
|
|
|
66
60
|
})]
|
|
67
61
|
});
|
|
68
62
|
}
|
|
69
|
-
export
|
|
70
|
-
|
|
71
|
-
localDashboardId,
|
|
72
|
-
fetch
|
|
73
|
-
} = props;
|
|
74
|
-
var hydratedProps = useHydrateGrid(fetch, localDashboardId);
|
|
75
|
-
return (
|
|
76
|
-
/*#__PURE__*/
|
|
77
|
-
// eslint-disable-next-line react/jsx-props-no-spreading
|
|
78
|
-
_jsx(PandasPanel, _objectSpread(_objectSpread({
|
|
79
|
-
ref: ref
|
|
80
|
-
}, props), hydratedProps))
|
|
81
|
-
);
|
|
82
|
-
});
|
|
83
|
-
PandasPanelPlugin.displayName = 'PandasPanelPlugin';
|
|
84
|
-
//# sourceMappingURL=PandasPlugin.js.map
|
|
63
|
+
export default PandasWidgetPlugin;
|
|
64
|
+
//# sourceMappingURL=PandasWidgetPlugin.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PandasWidgetPlugin.js","names":["useCallback","useEffect","useState","IrisGrid","IrisGridModelFactory","useApi","LoadingOverlay","PandasReloadButton","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","PandasWidgetPlugin","props","dh","model","setModel","isLoading","setIsLoading","isLoaded","setIsLoaded","fetch","makeModel","_asyncToGenerator","table","handleReload","newModel","cancelled","init","_init","apply","arguments","children","onClick"],"sources":["../src/PandasWidgetPlugin.tsx"],"sourcesContent":["import { useCallback, useEffect, useState } from 'react';\nimport { WidgetComponentProps } from '@deephaven/plugin';\nimport { type Table } from '@deephaven/jsapi-types';\nimport IrisGrid, {\n IrisGridModelFactory,\n type IrisGridModel,\n} from '@deephaven/iris-grid';\nimport { useApi } from '@deephaven/jsapi-bootstrap';\nimport { LoadingOverlay } from '@deephaven/components';\nimport { PandasReloadButton } from './panels/PandasReloadButton';\n\nexport function PandasWidgetPlugin(\n props: WidgetComponentProps\n): JSX.Element | null {\n const dh = useApi();\n const [model, setModel] = useState<IrisGridModel>();\n const [isLoading, setIsLoading] = useState(true);\n const [isLoaded, setIsLoaded] = useState(false);\n\n const { fetch } = props;\n\n const makeModel = useCallback(async () => {\n const table = (await fetch()) as unknown as Table;\n return IrisGridModelFactory.makeModel(dh, table);\n }, [dh, fetch]);\n\n const handleReload = useCallback(async () => {\n setIsLoading(true);\n const newModel = await makeModel();\n setModel(newModel);\n setIsLoading(false);\n }, [makeModel]);\n\n useEffect(() => {\n let cancelled = false;\n async function init() {\n const newModel = await makeModel();\n if (!cancelled) {\n setModel(newModel);\n setIsLoaded(true);\n setIsLoading(false);\n }\n }\n\n init();\n setIsLoading(true);\n\n return () => {\n cancelled = true;\n };\n }, [makeModel]);\n\n return (\n <>\n <LoadingOverlay isLoaded={isLoaded} isLoading={isLoading} />\n {model && (\n <IrisGrid model={model}>\n <PandasReloadButton onClick={handleReload} />\n </IrisGrid>\n )}\n </>\n );\n}\n\nexport default PandasWidgetPlugin;\n"],"mappings":";;AAAA,SAASA,WAAW,EAAEC,SAAS,EAAEC,QAAQ,QAAQ,OAAO;AAGxD,OAAOC,QAAQ,IACbC,oBAAoB,QAEf,sBAAsB;AAC7B,SAASC,MAAM,QAAQ,4BAA4B;AACnD,SAASC,cAAc,QAAQ,uBAAuB;AAAC,SAC9CC,kBAAkB;AAAA,SAAAC,GAAA,IAAAC,IAAA;AAAA,SAAAC,QAAA,IAAAC,SAAA;AAAA,SAAAC,IAAA,IAAAC,KAAA;AAE3B,OAAO,SAASC,kBAAkBA,CAChCC,KAA2B,EACP;EACpB,IAAMC,EAAE,GAAGX,MAAM,CAAC,CAAC;EACnB,IAAM,CAACY,KAAK,EAAEC,QAAQ,CAAC,GAAGhB,QAAQ,CAAgB,CAAC;EACnD,IAAM,CAACiB,SAAS,EAAEC,YAAY,CAAC,GAAGlB,QAAQ,CAAC,IAAI,CAAC;EAChD,IAAM,CAACmB,QAAQ,EAAEC,WAAW,CAAC,GAAGpB,QAAQ,CAAC,KAAK,CAAC;EAE/C,IAAM;IAAEqB;EAAM,CAAC,GAAGR,KAAK;EAEvB,IAAMS,SAAS,GAAGxB,WAAW,eAAAyB,iBAAA,CAAC,aAAY;IACxC,IAAMC,KAAK,SAAUH,KAAK,CAAC,CAAsB;IACjD,OAAOnB,oBAAoB,CAACoB,SAAS,CAACR,EAAE,EAAEU,KAAK,CAAC;EAClD,CAAC,GAAE,CAACV,EAAE,EAAEO,KAAK,CAAC,CAAC;EAEf,IAAMI,YAAY,GAAG3B,WAAW,eAAAyB,iBAAA,CAAC,aAAY;IAC3CL,YAAY,CAAC,IAAI,CAAC;IAClB,IAAMQ,QAAQ,SAASJ,SAAS,CAAC,CAAC;IAClCN,QAAQ,CAACU,QAAQ,CAAC;IAClBR,YAAY,CAAC,KAAK,CAAC;EACrB,CAAC,GAAE,CAACI,SAAS,CAAC,CAAC;EAEfvB,SAAS,CAAC,MAAM;IACd,IAAI4B,SAAS,GAAG,KAAK;IAAC,SACPC,IAAIA,CAAA;MAAA,OAAAC,KAAA,CAAAC,KAAA,OAAAC,SAAA;IAAA;IAAA,SAAAF,MAAA;MAAAA,KAAA,GAAAN,iBAAA,CAAnB,aAAsB;QACpB,IAAMG,QAAQ,SAASJ,SAAS,CAAC,CAAC;QAClC,IAAI,CAACK,SAAS,EAAE;UACdX,QAAQ,CAACU,QAAQ,CAAC;UAClBN,WAAW,CAAC,IAAI,CAAC;UACjBF,YAAY,CAAC,KAAK,CAAC;QACrB;MACF,CAAC;MAAA,OAAAW,KAAA,CAAAC,KAAA,OAAAC,SAAA;IAAA;IAEDH,IAAI,CAAC,CAAC;IACNV,YAAY,CAAC,IAAI,CAAC;IAElB,OAAO,MAAM;MACXS,SAAS,GAAG,IAAI;IAClB,CAAC;EACH,CAAC,EAAE,CAACL,SAAS,CAAC,CAAC;EAEf,oBACEX,KAAA,CAAAF,SAAA;IAAAuB,QAAA,gBACEzB,IAAA,CAACH,cAAc;MAACe,QAAQ,EAAEA,QAAS;MAACF,SAAS,EAAEA;IAAU,CAAE,CAAC,EAC3DF,KAAK,iBACJR,IAAA,CAACN,QAAQ;MAACc,KAAK,EAAEA,KAAM;MAAAiB,QAAA,eACrBzB,IAAA,CAACF,kBAAkB;QAAC4B,OAAO,EAAER;MAAa,CAAE;IAAC,CACrC,CACX;EAAA,CACD,CAAC;AAEP;AAEA,eAAeb,kBAAkB"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/// <reference types="lodash" />
|
|
2
|
-
import {
|
|
2
|
+
import { Component, KeyboardEvent, MouseEvent, ReactElement, RefObject } from 'react';
|
|
3
3
|
import type { Column } from '@deephaven/jsapi-types';
|
|
4
4
|
import memoizee from 'memoizee';
|
|
5
5
|
import './DropdownFilter.scss';
|
|
@@ -63,9 +63,9 @@ export declare class DropdownFilter extends Component<DropdownFilterProps, Dropd
|
|
|
63
63
|
getSelectedOptionIndex: (values: (string | null)[], value: string | null) => number;
|
|
64
64
|
getValueOptions: (values: (string | null)[]) => JSX.Element[];
|
|
65
65
|
getItemLabel: ((columns: DropdownFilterColumn[], index: number) => string) & memoizee.Memoized<(columns: DropdownFilterColumn[], index: number) => string>;
|
|
66
|
-
handleColumnChange(
|
|
66
|
+
handleColumnChange(eventTargetValue: string): void;
|
|
67
67
|
handleDropdownKeyPress(event: KeyboardEvent<HTMLSelectElement>): void;
|
|
68
|
-
handleValueChange(
|
|
68
|
+
handleValueChange(eventTargetValue: string): void;
|
|
69
69
|
handleSettingsCancel(): void;
|
|
70
70
|
handleSettingsSave(): void;
|
|
71
71
|
handleSettingsClick(event: MouseEvent<HTMLButtonElement>): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DropdownFilter.d.ts","sourceRoot":"","sources":["../../../src/controls/dropdown-filter/DropdownFilter.tsx"],"names":[],"mappings":";AAIA,OAAc,EACZ,
|
|
1
|
+
{"version":3,"file":"DropdownFilter.d.ts","sourceRoot":"","sources":["../../../src/controls/dropdown-filter/DropdownFilter.tsx"],"names":[],"mappings":"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"}
|
|
@@ -7,7 +7,7 @@ function _toPrimitive(input, hint) { if (typeof input !== "object" || input ===
|
|
|
7
7
|
|
|
8
8
|
import React, { Component } from 'react';
|
|
9
9
|
import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
|
|
10
|
-
import { Button, CardFlip, SocketedButton } from '@deephaven/components';
|
|
10
|
+
import { Button, CardFlip, Select, SocketedButton } from '@deephaven/components';
|
|
11
11
|
import { vsGear } from '@deephaven/icons';
|
|
12
12
|
import { TableUtils } from '@deephaven/jsapi-utils';
|
|
13
13
|
import memoizee from 'memoizee';
|
|
@@ -139,10 +139,8 @@ export class DropdownFilter extends Component {
|
|
|
139
139
|
componentWillUnmount() {
|
|
140
140
|
this.sendUpdate.flush();
|
|
141
141
|
}
|
|
142
|
-
handleColumnChange(
|
|
143
|
-
var
|
|
144
|
-
value
|
|
145
|
-
} = event.target;
|
|
142
|
+
handleColumnChange(eventTargetValue) {
|
|
143
|
+
var value = eventTargetValue;
|
|
146
144
|
log.debug2('handleColumnChange', value);
|
|
147
145
|
if (value != null && parseInt(value, 10) < 0) {
|
|
148
146
|
this.setState({
|
|
@@ -168,10 +166,8 @@ export class DropdownFilter extends Component {
|
|
|
168
166
|
this.sendUpdate.flush();
|
|
169
167
|
}
|
|
170
168
|
}
|
|
171
|
-
handleValueChange(
|
|
172
|
-
var
|
|
173
|
-
value: valueIndex
|
|
174
|
-
} = event.target;
|
|
169
|
+
handleValueChange(eventTargetValue) {
|
|
170
|
+
var valueIndex = eventTargetValue;
|
|
175
171
|
var index = parseInt(valueIndex, 10);
|
|
176
172
|
// Default empty string value for 'clear filter'
|
|
177
173
|
var value = '';
|
|
@@ -343,9 +339,9 @@ export class DropdownFilter extends Component {
|
|
|
343
339
|
}), /*#__PURE__*/_jsx("label", {
|
|
344
340
|
htmlFor: filterColumnId,
|
|
345
341
|
children: "Filter Column"
|
|
346
|
-
}), /*#__PURE__*/_jsx(
|
|
342
|
+
}), /*#__PURE__*/_jsx(Select, {
|
|
347
343
|
id: filterColumnId,
|
|
348
|
-
value: selectedIndex,
|
|
344
|
+
value: String(selectedIndex),
|
|
349
345
|
className: "custom-select",
|
|
350
346
|
onChange: this.handleColumnChange,
|
|
351
347
|
disabled: columnSelectionDisabled,
|
|
@@ -392,12 +388,12 @@ export class DropdownFilter extends Component {
|
|
|
392
388
|
className: "dropdown-filter-card-content",
|
|
393
389
|
children: [/*#__PURE__*/_jsx("div", {
|
|
394
390
|
className: "dropdown-filter-value-input d-flex flex-column justify-content-center",
|
|
395
|
-
children: /*#__PURE__*/_jsx(
|
|
391
|
+
children: /*#__PURE__*/_jsx(Select, {
|
|
396
392
|
className: "custom-select",
|
|
397
|
-
value: selectedOption,
|
|
393
|
+
value: String(selectedOption),
|
|
398
394
|
ref: this.dropdownRef,
|
|
399
395
|
onChange: this.handleValueChange,
|
|
400
|
-
|
|
396
|
+
onKeyDown: this.handleDropdownKeyPress,
|
|
401
397
|
title: "Select Value",
|
|
402
398
|
children: valueOptions
|
|
403
399
|
})
|