@deephaven/dashboard-core-plugins 0.60.1-object-fetcher.7 → 0.61.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (66) hide show
  1. package/dist/ChartPanelPlugin.d.ts +2 -7
  2. package/dist/ChartPanelPlugin.d.ts.map +1 -1
  3. package/dist/ChartPanelPlugin.js +13 -12
  4. package/dist/ChartPanelPlugin.js.map +1 -1
  5. package/dist/ChartPluginConfig.d.ts +1 -2
  6. package/dist/ChartPluginConfig.d.ts.map +1 -1
  7. package/dist/ChartPluginConfig.js.map +1 -1
  8. package/dist/GridPanelPlugin.d.ts +2 -7
  9. package/dist/GridPanelPlugin.d.ts.map +1 -1
  10. package/dist/GridPanelPlugin.js +2 -5
  11. package/dist/GridPanelPlugin.js.map +1 -1
  12. package/dist/GridWidgetPlugin.d.ts +2 -1
  13. package/dist/GridWidgetPlugin.d.ts.map +1 -1
  14. package/dist/GridWidgetPlugin.js.map +1 -1
  15. package/dist/PandasPanelPlugin.d.ts +2 -7
  16. package/dist/PandasPanelPlugin.d.ts.map +1 -1
  17. package/dist/PandasPanelPlugin.js +2 -3
  18. package/dist/PandasPanelPlugin.js.map +1 -1
  19. package/dist/PandasPluginConfig.d.ts +1 -2
  20. package/dist/PandasPluginConfig.d.ts.map +1 -1
  21. package/dist/PandasPluginConfig.js.map +1 -1
  22. package/dist/WidgetLoaderPlugin.d.ts.map +1 -1
  23. package/dist/WidgetLoaderPlugin.js +13 -8
  24. package/dist/WidgetLoaderPlugin.js.map +1 -1
  25. package/dist/controls/dropdown-filter/DropdownFilter.css +1 -1
  26. package/dist/controls/dropdown-filter/DropdownFilter.css.map +1 -1
  27. package/dist/controls/input-filter/InputFilter.css +1 -1
  28. package/dist/controls/input-filter/InputFilter.css.map +1 -1
  29. package/dist/linker/LinkerLink.css.map +1 -1
  30. package/dist/linker/LinkerOverlayContent.css.map +1 -1
  31. package/dist/panels/ChartColumnSelectorOverlay.css.map +1 -1
  32. package/dist/panels/ChartFilterOverlay.css.map +1 -1
  33. package/dist/panels/ChartPanel.css +1 -1
  34. package/dist/panels/ChartPanel.css.map +1 -1
  35. package/dist/panels/CommandHistoryPanel.css.map +1 -1
  36. package/dist/panels/ConsolePanel.css.map +1 -1
  37. package/dist/panels/ConsolePanel.d.ts +3 -2
  38. package/dist/panels/ConsolePanel.d.ts.map +1 -1
  39. package/dist/panels/ConsolePanel.js +14 -13
  40. package/dist/panels/ConsolePanel.js.map +1 -1
  41. package/dist/panels/DropdownFilterPanel.css.map +1 -1
  42. package/dist/panels/DropdownFilterPanel.d.ts +8 -4
  43. package/dist/panels/DropdownFilterPanel.d.ts.map +1 -1
  44. package/dist/panels/FileExplorerPanel.d.ts +8 -4
  45. package/dist/panels/FileExplorerPanel.d.ts.map +1 -1
  46. package/dist/panels/FilterSetManager.css +1 -1
  47. package/dist/panels/FilterSetManager.css.map +1 -1
  48. package/dist/panels/FilterSetManagerPanel.css.map +1 -1
  49. package/dist/panels/IrisGridPanel.css.map +1 -1
  50. package/dist/panels/IrisGridPanel.d.ts.map +1 -1
  51. package/dist/panels/IrisGridPanel.js +1 -1
  52. package/dist/panels/IrisGridPanel.js.map +1 -1
  53. package/dist/panels/LogPanel.css.map +1 -1
  54. package/dist/panels/MarkdownNotebook.css +1 -1
  55. package/dist/panels/MarkdownNotebook.css.map +1 -1
  56. package/dist/panels/MarkdownPanel.css.map +1 -1
  57. package/dist/panels/NotebookPanel.css.map +1 -1
  58. package/dist/panels/PandasPanel.css.map +1 -1
  59. package/dist/panels/WidgetPanel.css +1 -1
  60. package/dist/panels/WidgetPanel.css.map +1 -1
  61. package/dist/panels/WidgetPanelTooltip.css.map +1 -1
  62. package/dist/useHydrateGrid.d.ts +2 -2
  63. package/dist/useHydrateGrid.d.ts.map +1 -1
  64. package/dist/useHydrateGrid.js +4 -5
  65. package/dist/useHydrateGrid.js.map +1 -1
  66. package/package.json +24 -24
@@ -1,11 +1,6 @@
1
1
  /// <reference types="react" />
2
- import type { Figure } from '@deephaven/jsapi-types';
2
+ import { WidgetPanelProps } from '@deephaven/plugin';
3
3
  import { type ChartPanel } from './panels/ChartPanel';
4
- export declare const ChartPanelPlugin: import("react").ForwardRefExoticComponent<import("@deephaven/plugin").WidgetComponentProps<Figure> & {
5
- metadata?: import("@deephaven/jsapi-types").VariableDescriptor<string> | undefined;
6
- localDashboardId: string;
7
- glContainer: import("@deephaven/golden-layout").ItemContainer<import("@deephaven/golden-layout").ComponentConfig>;
8
- glEventHub: import("packages/golden-layout/src/utils/EventEmitter").default;
9
- } & import("react").RefAttributes<ChartPanel>>;
4
+ export declare const ChartPanelPlugin: import("react").ForwardRefExoticComponent<WidgetPanelProps & import("react").RefAttributes<ChartPanel>>;
10
5
  export default ChartPanelPlugin;
11
6
  //# sourceMappingURL=ChartPanelPlugin.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ChartPanelPlugin.d.ts","sourceRoot":"","sources":["../src/ChartPanelPlugin.tsx"],"names":[],"mappings":";AAYA,OAAO,KAAK,EAAgB,MAAM,EAAS,MAAM,wBAAwB,CAAC;AAW1E,OAA4B,EAC1B,KAAK,UAAU,EAEhB,MAAM,qBAAqB,CAAC;AAwF7B,eAAO,MAAM,gBAAgB;;;;;8CA6C5B,CAAC;AAIF,eAAe,gBAAgB,CAAC"}
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"}
@@ -6,7 +6,8 @@ function _toPrimitive(input, hint) { if (typeof input !== "object" || 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
8
  import { forwardRef, useMemo } from 'react';
9
- import { useApi, useObjectFetcher } from '@deephaven/jsapi-bootstrap';
9
+ import { useApi } from '@deephaven/jsapi-bootstrap';
10
+ import { useConnection } from '@deephaven/jsapi-components';
10
11
  import { ChartModelFactory, useChartTheme } from '@deephaven/chart';
11
12
  import { IrisGridUtils } from '@deephaven/iris-grid';
12
13
  import { getTimeZone, store } from '@deephaven/redux';
@@ -17,7 +18,7 @@ function createChartModel(_x, _x2, _x3, _x4, _x5, _x6) {
17
18
  return _createChartModel.apply(this, arguments);
18
19
  }
19
20
  function _createChartModel() {
20
- _createChartModel = _asyncToGenerator(function* (dh, chartTheme, fetchObject, metadata, fetchFigure, panelState) {
21
+ _createChartModel = _asyncToGenerator(function* (dh, chartTheme, connection, metadata, fetch, panelState) {
21
22
  var settings;
22
23
  var tableName;
23
24
  var figureName;
@@ -48,27 +49,27 @@ function _createChartModel() {
48
49
  }
49
50
  }
50
51
  if (figureName == null && tableName == null) {
51
- var figure = yield fetchFigure();
52
+ var figure = yield fetch();
52
53
  return ChartModelFactory.makeModel(dh, settings, figure, chartTheme);
53
54
  }
54
55
  if (figureName != null) {
55
56
  var _figure;
56
57
  if (metadata.type === dh.VariableType.FIGURE) {
57
- var _descriptor = {
58
+ var _definition = {
58
59
  name: figureName,
59
60
  type: dh.VariableType.FIGURE
60
61
  };
61
- _figure = yield fetchObject(_descriptor);
62
+ _figure = yield connection.getObject(_definition);
62
63
  } else {
63
- _figure = yield fetchFigure();
64
+ _figure = yield fetch();
64
65
  }
65
66
  return ChartModelFactory.makeModel(dh, settings, _figure, chartTheme);
66
67
  }
67
- var descriptor = {
68
+ var definition = {
68
69
  name: tableName,
69
70
  type: dh.VariableType.TABLE
70
71
  };
71
- var table = yield fetchObject(descriptor);
72
+ var table = yield connection.getObject(definition);
72
73
  new IrisGridUtils(dh).applyTableSettings(table, tableSettings, getTimeZone(store.getState()));
73
74
  return ChartModelFactory.makeModelFromSettings(dh,
74
75
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
@@ -79,10 +80,10 @@ function _createChartModel() {
79
80
  export var ChartPanelPlugin = /*#__PURE__*/forwardRef((props, ref) => {
80
81
  var dh = useApi();
81
82
  var chartTheme = useChartTheme();
82
- var objectFetcher = useObjectFetcher();
83
+ var connection = useConnection();
83
84
  var panelState = isChartPanelDehydratedProps(props) ? props.panelState : undefined;
84
85
  var {
85
- fetch: panelFetch,
86
+ fetch,
86
87
  metadata,
87
88
  localDashboardId
88
89
  } = props;
@@ -93,9 +94,9 @@ export var ChartPanelPlugin = /*#__PURE__*/forwardRef((props, ref) => {
93
94
  if (metadata == null) {
94
95
  throw new Error('Metadata is required for chart panel');
95
96
  }
96
- return createChartModel(dh, chartTheme, objectFetcher, metadata, panelFetch, panelState);
97
+ return createChartModel(dh, chartTheme, connection, metadata, fetch, panelState);
97
98
  }
98
- }), [metadata, localDashboardId, dh, chartTheme, objectFetcher, panelFetch, panelState]);
99
+ }), [dh, connection, fetch, panelState, metadata, localDashboardId, chartTheme]);
99
100
 
100
101
  // eslint-disable-next-line react/jsx-props-no-spreading
101
102
  return /*#__PURE__*/_jsx(ConnectedChartPanel, _objectSpread(_objectSpread({
@@ -1 +1 @@
1
- {"version":3,"file":"ChartPanelPlugin.js","names":["forwardRef","useMemo","useApi","useObjectFetcher","ChartModelFactory","useChartTheme","IrisGridUtils","getTimeZone","store","isChartPanelDehydratedProps","isChartPanelFigureMetadata","isChartPanelTableMetadata","ConnectedChartPanel","jsx","_jsx","createChartModel","_x","_x2","_x3","_x4","_x5","_x6","_createChartModel","apply","arguments","_asyncToGenerator","dh","chartTheme","fetchObject","metadata","fetchFigure","panelState","settings","tableName","figureName","tableSettings","table","undefined","figure","name","_objectSpread","makeModel","type","VariableType","FIGURE","descriptor","TABLE","applyTableSettings","getState","makeModelFromSettings","ChartPanelPlugin","props","ref","objectFetcher","fetch","panelFetch","localDashboardId","hydratedProps","Error","displayName"],"sources":["../src/ChartPanelPlugin.tsx"],"sourcesContent":["import { forwardRef, useMemo } from 'react';\nimport {\n ObjectFetcher,\n useApi,\n useObjectFetcher,\n} from '@deephaven/jsapi-bootstrap';\nimport {\n ChartModel,\n ChartModelFactory,\n ChartTheme,\n useChartTheme,\n} from '@deephaven/chart';\nimport type { dh as DhType, Figure, Table } 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 fetchObject: ObjectFetcher,\n metadata: ChartPanelMetadata,\n fetchFigure: () => 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 fetchFigure();\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 descriptor = {\n name: figureName,\n type: dh.VariableType.FIGURE,\n };\n figure = (await fetchObject(descriptor)) as Figure;\n } else {\n figure = await fetchFigure();\n }\n\n return ChartModelFactory.makeModel(dh, settings, figure, chartTheme);\n }\n\n const descriptor = {\n name: tableName,\n type: dh.VariableType.TABLE,\n };\n const table = (await fetchObject(descriptor)) as Table;\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<Figure>, ref: React.Ref<ChartPanel>) => {\n const dh = useApi();\n const chartTheme = useChartTheme();\n const objectFetcher = useObjectFetcher();\n\n const panelState = isChartPanelDehydratedProps(props)\n ? (props as unknown as ChartPanelProps).panelState\n : undefined;\n\n const { fetch: panelFetch, 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 objectFetcher,\n metadata as ChartPanelMetadata,\n panelFetch,\n panelState\n );\n },\n }),\n [\n metadata,\n localDashboardId,\n dh,\n chartTheme,\n objectFetcher,\n panelFetch,\n panelState,\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
+ {"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 () => 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,5 +1,4 @@
1
1
  import { type WidgetPlugin } from '@deephaven/plugin';
2
- import { Figure } from '@deephaven/jsapi-types';
3
- declare const ChartPluginConfig: WidgetPlugin<Figure>;
2
+ declare const ChartPluginConfig: WidgetPlugin;
4
3
  export default ChartPluginConfig;
5
4
  //# sourceMappingURL=ChartPluginConfig.d.ts.map
@@ -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;AAElE,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAIhD,QAAA,MAAM,iBAAiB,EAAE,YAAY,CAAC,MAAM,CAQ3C,CAAC;AAEF,eAAe,iBAAiB,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 +1 @@
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 { Figure } from '@deephaven/jsapi-types';\nimport { ChartWidgetPlugin } from './ChartWidgetPlugin';\nimport { ChartPanelPlugin } from './ChartPanelPlugin';\n\nconst ChartPluginConfig: WidgetPlugin<Figure> = {\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,SAElCC,iBAAiB;AAAA,SACjBC,gBAAgB;AAEzB,IAAMC,iBAAuC,GAAG;EAC9CC,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"}
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"}
@@ -1,11 +1,6 @@
1
1
  /// <reference types="react" />
2
- import { type Table } from '@deephaven/jsapi-types';
2
+ import { WidgetPanelProps } from '@deephaven/plugin';
3
3
  import { type IrisGridPanel } from './panels/IrisGridPanel';
4
- export declare const GridPanelPlugin: import("react").ForwardRefExoticComponent<import("@deephaven/plugin").WidgetComponentProps<Table> & {
5
- metadata?: import("@deephaven/jsapi-types").VariableDescriptor<string> | undefined;
6
- localDashboardId: string;
7
- glContainer: import("@deephaven/golden-layout").ItemContainer<import("@deephaven/golden-layout").ComponentConfig>;
8
- glEventHub: import("packages/golden-layout/src/utils/EventEmitter").default;
9
- } & import("react").RefAttributes<IrisGridPanel>>;
4
+ export declare const GridPanelPlugin: import("react").ForwardRefExoticComponent<WidgetPanelProps & import("react").RefAttributes<IrisGridPanel>>;
10
5
  export default GridPanelPlugin;
11
6
  //# sourceMappingURL=GridPanelPlugin.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"GridPanelPlugin.d.ts","sourceRoot":"","sources":["../src/GridPanelPlugin.tsx"],"names":[],"mappings":";AAEA,OAAO,EAAE,KAAK,KAAK,EAAE,MAAM,wBAAwB,CAAC;AAGpD,OAA+B,EAC7B,KAAK,aAAa,EACnB,MAAM,wBAAwB,CAAC;AAEhC,eAAO,MAAM,eAAe;;;;;iDAS3B,CAAC;AAIF,eAAe,eAAe,CAAC"}
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"}
@@ -4,18 +4,15 @@ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key i
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
6
  import { forwardRef } from 'react';
7
- import { assertNotNull } from '@deephaven/utils';
8
7
  import useHydrateGrid from "./useHydrateGrid.js";
9
8
  import ConnectedIrisGridPanel from "./panels/IrisGridPanel.js";
10
9
  import { jsx as _jsx } from "react/jsx-runtime";
11
10
  export var GridPanelPlugin = /*#__PURE__*/forwardRef((props, ref) => {
12
11
  var {
13
12
  localDashboardId,
14
- fetch,
15
- metadata
13
+ fetch
16
14
  } = props;
17
- assertNotNull(metadata, 'metadata is required for grid panel');
18
- var hydratedProps = useHydrateGrid(fetch, localDashboardId, metadata);
15
+ var hydratedProps = useHydrateGrid(fetch, localDashboardId);
19
16
 
20
17
  // eslint-disable-next-line react/jsx-props-no-spreading
21
18
  return /*#__PURE__*/_jsx(ConnectedIrisGridPanel, _objectSpread(_objectSpread({
@@ -1 +1 @@
1
- {"version":3,"file":"GridPanelPlugin.js","names":["forwardRef","assertNotNull","useHydrateGrid","ConnectedIrisGridPanel","jsx","_jsx","GridPanelPlugin","props","ref","localDashboardId","fetch","metadata","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 { assertNotNull } from '@deephaven/utils';\nimport useHydrateGrid from './useHydrateGrid';\nimport ConnectedIrisGridPanel, {\n type IrisGridPanel,\n} from './panels/IrisGridPanel';\n\nexport const GridPanelPlugin = forwardRef(\n (props: WidgetPanelProps<Table>, ref: React.Ref<IrisGridPanel>) => {\n const { localDashboardId, fetch, metadata } = props;\n assertNotNull(metadata, 'metadata is required for grid panel');\n const hydratedProps = useHydrateGrid(fetch, localDashboardId, metadata);\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;AAGlC,SAASC,aAAa,QAAQ,kBAAkB;AAAC,OAC1CC,cAAc;AAAA,OACdC,sBAAsB;AAAA,SAAAC,GAAA,IAAAC,IAAA;AAI7B,OAAO,IAAMC,eAAe,gBAAGN,UAAU,CACvC,CAACO,KAA8B,EAAEC,GAA6B,KAAK;EACjE,IAAM;IAAEC,gBAAgB;IAAEC,KAAK;IAAEC;EAAS,CAAC,GAAGJ,KAAK;EACnDN,aAAa,CAACU,QAAQ,EAAE,qCAAqC,CAAC;EAC9D,IAAMC,aAAa,GAAGV,cAAc,CAACQ,KAAK,EAAED,gBAAgB,EAAEE,QAAQ,CAAC;;EAEvE;EACA,oBAAON,IAAA,CAACF,sBAAsB,EAAAU,aAAA,CAAAA,aAAA;IAACL,GAAG,EAAEA;EAAI,GAAKD,KAAK,GAAMK,aAAa,CAAG,CAAC;AAC3E,CACF,CAAC;AAEDN,eAAe,CAACQ,WAAW,GAAG,iBAAiB;AAE/C,eAAeR,eAAe"}
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 () => 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,5 +1,6 @@
1
1
  /// <reference types="react" />
2
2
  import { type WidgetComponentProps } from '@deephaven/plugin';
3
- export declare function GridWidgetPlugin(props: WidgetComponentProps): JSX.Element | null;
3
+ import { type Table } from '@deephaven/jsapi-types';
4
+ export declare function GridWidgetPlugin(props: WidgetComponentProps<Table>): JSX.Element | null;
4
5
  export default GridWidgetPlugin;
5
6
  //# sourceMappingURL=GridWidgetPlugin.d.ts.map
@@ -1 +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"}
1
+ {"version":3,"file":"GridWidgetPlugin.d.ts","sourceRoot":"","sources":["../src/GridWidgetPlugin.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,KAAK,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAC9D,OAAO,EAAE,KAAK,KAAK,EAAE,MAAM,wBAAwB,CAAC;AAQpD,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,oBAAoB,CAAC,KAAK,CAAC,GACjC,GAAG,CAAC,OAAO,GAAG,IAAI,CAwBpB;AAED,eAAe,gBAAgB,CAAC"}
@@ -1 +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
+ {"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<Table>\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();\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,KAAkC,EACd;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,SAASP,KAAK,CAAC,CAAC;QAC3B,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,11 +1,6 @@
1
1
  /// <reference types="react" />
2
- import { type Table } from '@deephaven/jsapi-types';
2
+ import { WidgetPanelProps } from '@deephaven/plugin';
3
3
  import { PandasPanel } from './panels';
4
- export declare const PandasPanelPlugin: import("react").ForwardRefExoticComponent<import("@deephaven/plugin").WidgetComponentProps<Table> & {
5
- metadata?: import("@deephaven/jsapi-types").VariableDescriptor<string> | undefined;
6
- localDashboardId: string;
7
- glContainer: import("@deephaven/golden-layout").ItemContainer<import("@deephaven/golden-layout").ComponentConfig>;
8
- glEventHub: import("packages/golden-layout/src/utils/EventEmitter").default;
9
- } & import("react").RefAttributes<PandasPanel>>;
4
+ export declare const PandasPanelPlugin: import("react").ForwardRefExoticComponent<WidgetPanelProps & import("react").RefAttributes<PandasPanel>>;
10
5
  export default PandasPanelPlugin;
11
6
  //# sourceMappingURL=PandasPanelPlugin.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"PandasPanelPlugin.d.ts","sourceRoot":"","sources":["../src/PandasPanelPlugin.tsx"],"names":[],"mappings":";AAEA,OAAO,EAAE,KAAK,KAAK,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAGvC,eAAO,MAAM,iBAAiB;;;;;+CAU7B,CAAC;AAIF,eAAe,iBAAiB,CAAC"}
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"}
@@ -10,10 +10,9 @@ import { jsx as _jsx } from "react/jsx-runtime";
10
10
  export var PandasPanelPlugin = /*#__PURE__*/forwardRef((props, ref) => {
11
11
  var {
12
12
  localDashboardId,
13
- fetch,
14
- metadata
13
+ fetch
15
14
  } = props;
16
- var hydratedProps = useHydrateGrid(fetch, localDashboardId, metadata);
15
+ var hydratedProps = useHydrateGrid(fetch, localDashboardId);
17
16
  return (
18
17
  /*#__PURE__*/
19
18
  // eslint-disable-next-line react/jsx-props-no-spreading
@@ -1 +1 @@
1
- {"version":3,"file":"PandasPanelPlugin.js","names":["forwardRef","PandasPanel","useHydrateGrid","jsx","_jsx","PandasPanelPlugin","props","ref","localDashboardId","fetch","metadata","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<Table>, ref: React.Ref<PandasPanel>) => {\n const { localDashboardId, fetch, metadata } = props;\n const hydratedProps = useHydrateGrid(fetch, localDashboardId, metadata);\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,KAA8B,EAAEC,GAA2B,KAAK;EAC/D,IAAM;IAAEC,gBAAgB;IAAEC,KAAK;IAAEC;EAAS,CAAC,GAAGJ,KAAK;EACnD,IAAMK,aAAa,GAAGT,cAAc,CAACO,KAAK,EAAED,gBAAgB,EAAEE,QAAQ,CAAC;EAEvE;IAAA;IACE;IACAN,IAAA,CAACH,WAAW,EAAAW,aAAA,CAAAA,aAAA;MAACL,GAAG,EAAEA;IAAI,GAAKD,KAAK,GAAMK,aAAa,CAAG;EAAC;AAE3D,CACF,CAAC;AAEDN,iBAAiB,CAACQ,WAAW,GAAG,mBAAmB;AAEnD,eAAeR,iBAAiB"}
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 () => 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,5 +1,4 @@
1
1
  import { WidgetPlugin } from '@deephaven/plugin';
2
- import { Table } from '@deephaven/jsapi-types';
3
- declare const PandasPluginConfig: WidgetPlugin<Table>;
2
+ declare const PandasPluginConfig: WidgetPlugin;
4
3
  export default PandasPluginConfig;
5
4
  //# sourceMappingURL=PandasPluginConfig.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"PandasPluginConfig.d.ts","sourceRoot":"","sources":["../src/PandasPluginConfig.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAE7D,OAAO,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAC;AAI/C,QAAA,MAAM,kBAAkB,EAAE,YAAY,CAAC,KAAK,CAQ3C,CAAC;AAEF,eAAe,kBAAkB,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 +1 @@
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 { Table } from '@deephaven/jsapi-types';\nimport { PandasWidgetPlugin } from './PandasWidgetPlugin';\nimport { PandasPanelPlugin } from './PandasPanelPlugin';\n\nconst PandasPluginConfig: WidgetPlugin<Table> = {\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,SAEnCC,kBAAkB;AAAA,SAClBC,iBAAiB;AAE1B,IAAMC,kBAAuC,GAAG;EAC9CC,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"}
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"}
@@ -1 +1 @@
1
- {"version":3,"file":"WidgetLoaderPlugin.d.ts","sourceRoot":"","sources":["../src/WidgetLoaderPlugin.tsx"],"names":[],"mappings":";AAGA,OAAO,EAEL,6BAA6B,EAM7B,UAAU,EAEX,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EAGL,KAAK,YAAY,EAClB,MAAM,mBAAmB,CAAC;AAK3B,wBAAgB,gBAAgB,CAC9B,MAAM,EAAE,YAAY,GACnB,KAAK,CAAC,yBAAyB,CAAC,UAAU,GAAG,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAoC5E;AAED;;;;;;;;;GASG;AACH,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,OAAO,CAAC,6BAA6B,CAAC,GAC5C,GAAG,CAAC,OAAO,GAAG,IAAI,CAqFpB;AAED,eAAe,kBAAkB,CAAC"}
1
+ {"version":3,"file":"WidgetLoaderPlugin.d.ts","sourceRoot":"","sources":["../src/WidgetLoaderPlugin.tsx"],"names":[],"mappings":";AAGA,OAAO,EAEL,6BAA6B,EAM7B,UAAU,EAEX,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAGL,KAAK,YAAY,EAClB,MAAM,mBAAmB,CAAC;AAM3B,wBAAgB,gBAAgB,CAC9B,MAAM,EAAE,YAAY,GACnB,KAAK,CAAC,yBAAyB,CAAC,UAAU,GAAG,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAoC5E;AAED;;;;;;;;;GASG;AACH,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,OAAO,CAAC,6BAA6B,CAAC,GAC5C,GAAG,CAAC,OAAO,GAAG,IAAI,CAqFpB;AAED,eAAe,kBAAkB,CAAC"}
@@ -6,15 +6,14 @@ function _toPrimitive(input, hint) { if (typeof input !== "object" || input ===
6
6
  import { useMemo, useCallback, useEffect, forwardRef } from 'react';
7
7
  import shortid from 'shortid';
8
8
  import { assertIsDashboardPluginProps, PanelEvent, LayoutUtils, useListener, canHaveRef } from '@deephaven/dashboard';
9
- import Log from '@deephaven/log';
10
9
  import { isWidgetPlugin, usePlugins } from '@deephaven/plugin';
10
+ import Log from '@deephaven/log';
11
11
  import { WidgetPanel } from "./panels/index.js";
12
12
  import { jsx as _jsx } from "react/jsx-runtime";
13
13
  var log = Log.module('WidgetLoaderPlugin');
14
14
  export function WrapWidgetPlugin(plugin) {
15
15
  var _plugin$component$dis;
16
16
  function Wrapper(props, ref) {
17
- var _metadata$name;
18
17
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
19
18
  var C = plugin.component;
20
19
  var {
@@ -22,7 +21,7 @@ export function WrapWidgetPlugin(plugin) {
22
21
  } = props;
23
22
  var hasRef = canHaveRef(C);
24
23
  return /*#__PURE__*/_jsx(WidgetPanel, _objectSpread(_objectSpread({
25
- widgetName: (_metadata$name = metadata === null || metadata === void 0 ? void 0 : metadata.name) !== null && _metadata$name !== void 0 ? _metadata$name : undefined,
24
+ widgetName: metadata === null || metadata === void 0 ? void 0 : metadata.name,
26
25
  widgetType: plugin.title
27
26
  // eslint-disable-next-line react/jsx-props-no-spreading
28
27
  }, props), {}, {
@@ -76,24 +75,30 @@ export function WidgetLoaderPlugin(props) {
76
75
  registerComponent
77
76
  } = props;
78
77
  var handlePanelOpen = useCallback(_ref => {
79
- var _widget$name;
78
+ var _widget$title;
80
79
  var {
81
80
  dragEvent,
82
- panelId = shortid.generate(),
83
81
  fetch,
82
+ panelId = shortid.generate(),
84
83
  widget
85
84
  } = _ref;
86
85
  var {
86
+ id: widgetId,
87
87
  type
88
88
  } = widget;
89
- var plugin = type != null ? supportedTypes.get(type) : null;
89
+ var name = (_widget$title = widget.title) !== null && _widget$title !== void 0 ? _widget$title : widget.name;
90
+ var plugin = supportedTypes.get(type);
90
91
  if (plugin == null) {
91
92
  return;
92
93
  }
93
- var name = (_widget$name = widget.name) !== null && _widget$name !== void 0 ? _widget$name : type;
94
+ var metadata = {
95
+ id: widgetId,
96
+ name,
97
+ type
98
+ };
94
99
  var panelProps = {
95
100
  localDashboardId: id,
96
- metadata: widget,
101
+ metadata,
97
102
  fetch
98
103
  };
99
104
  var config = {
@@ -1 +1 @@
1
- {"version":3,"file":"WidgetLoaderPlugin.js","names":["useMemo","useCallback","useEffect","forwardRef","shortid","assertIsDashboardPluginProps","PanelEvent","LayoutUtils","useListener","canHaveRef","Log","isWidgetPlugin","usePlugins","WidgetPanel","jsx","_jsx","log","module","WrapWidgetPlugin","plugin","_plugin$component$dis","Wrapper","props","ref","_metadata$name","C","component","metadata","hasRef","_objectSpread","widgetName","name","undefined","widgetType","title","children","displayName","concat","WidgetLoaderPlugin","plugins","supportedTypes","typeMap","Map","forEach","flat","supportedType","has","_typeMap$get","warn","get","set","id","layout","registerComponent","handlePanelOpen","_ref","_widget$name","dragEvent","panelId","generate","fetch","widget","type","panelProps","localDashboardId","config","root","openComponent","deregisterFns","Set","values","map","panelComponent","deregister","eventHub","OPEN"],"sources":["../src/WidgetLoaderPlugin.tsx"],"sourcesContent":["import { useMemo, useCallback, useEffect, forwardRef } from 'react';\nimport type { ReactComponentConfig } from '@deephaven/golden-layout';\nimport shortid from 'shortid';\nimport {\n assertIsDashboardPluginProps,\n DashboardPluginComponentProps,\n DehydratedDashboardPanelProps,\n PanelEvent,\n PanelOpenEventDetail,\n LayoutUtils,\n useListener,\n PanelProps,\n canHaveRef,\n} from '@deephaven/dashboard';\nimport Log from '@deephaven/log';\nimport {\n isWidgetPlugin,\n usePlugins,\n type WidgetPlugin,\n} from '@deephaven/plugin';\nimport { WidgetPanel } from './panels';\n\nconst log = Log.module('WidgetLoaderPlugin');\n\nexport function WrapWidgetPlugin(\n plugin: WidgetPlugin\n): React.ForwardRefExoticComponent<PanelProps & React.RefAttributes<unknown>> {\n function Wrapper(props: PanelProps, ref: React.ForwardedRef<unknown>) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const C = plugin.component as any;\n const { metadata } = props;\n\n const hasRef = canHaveRef(C);\n\n return (\n <WidgetPanel\n widgetName={metadata?.name ?? undefined}\n widgetType={plugin.title}\n // eslint-disable-next-line react/jsx-props-no-spreading\n {...props}\n >\n {hasRef ? (\n <C\n // eslint-disable-next-line react/jsx-props-no-spreading\n {...props}\n ref={ref}\n />\n ) : (\n <C\n // eslint-disable-next-line react/jsx-props-no-spreading\n {...props}\n />\n )}\n </WidgetPanel>\n );\n }\n\n Wrapper.displayName = `WidgetLoaderPlugin(${\n plugin.component.displayName ?? plugin.name\n })`;\n\n return forwardRef(Wrapper);\n}\n\n/**\n * Widget to automatically open any supported WidgetPlugin types as panels\n * if the widget is emitted from the server as the result of executed code.\n *\n * Does not open panels for widgets that are not supported by any plugins.\n * Does not open panels for widgets that are a component of a larger widget or UI element.\n *\n * @param props Dashboard plugin props\n * @returns React element\n */\nexport function WidgetLoaderPlugin(\n props: Partial<DashboardPluginComponentProps>\n): JSX.Element | null {\n const plugins = usePlugins();\n const supportedTypes = useMemo(() => {\n const typeMap = new Map<string, WidgetPlugin>();\n plugins.forEach(plugin => {\n if (!isWidgetPlugin(plugin)) {\n return;\n }\n\n [plugin.supportedTypes].flat().forEach(supportedType => {\n if (supportedType != null && supportedType !== '') {\n if (typeMap.has(supportedType)) {\n log.warn(\n `Multiple WidgetPlugins handling type ${supportedType}. Replacing ${typeMap.get(\n supportedType\n )?.name} with ${plugin.name} to handle ${supportedType}`\n );\n }\n typeMap.set(supportedType, plugin);\n }\n });\n });\n\n return typeMap;\n }, [plugins]);\n\n assertIsDashboardPluginProps(props);\n const { id, layout, registerComponent } = props;\n\n const handlePanelOpen = useCallback(\n ({\n dragEvent,\n panelId = shortid.generate(),\n fetch,\n widget,\n }: PanelOpenEventDetail) => {\n const { type } = widget;\n const plugin = type != null ? supportedTypes.get(type) : null;\n if (plugin == null) {\n return;\n }\n const name = widget.name ?? type;\n\n const panelProps: DehydratedDashboardPanelProps & {\n fetch?: () => Promise<unknown>;\n } = {\n localDashboardId: id,\n metadata: widget,\n fetch,\n };\n\n const config: ReactComponentConfig = {\n type: 'react-component',\n component: plugin.name,\n props: panelProps,\n title: name,\n id: panelId,\n };\n\n const { root } = layout;\n LayoutUtils.openComponent({ root, config, dragEvent });\n },\n [id, layout, supportedTypes]\n );\n\n useEffect(() => {\n const deregisterFns = [...new Set(supportedTypes.values())].map(plugin => {\n const { panelComponent } = plugin;\n if (panelComponent == null) {\n return registerComponent(plugin.name, WrapWidgetPlugin(plugin));\n }\n return registerComponent(plugin.name, panelComponent);\n });\n\n return () => {\n deregisterFns.forEach(deregister => deregister());\n };\n }, [registerComponent, supportedTypes]);\n\n /**\n * Listen for panel open events so we know when to open a panel\n */\n useListener(layout.eventHub, PanelEvent.OPEN, handlePanelOpen);\n\n return null;\n}\n\nexport default WidgetLoaderPlugin;\n"],"mappings":"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"}
1
+ {"version":3,"file":"WidgetLoaderPlugin.js","names":["useMemo","useCallback","useEffect","forwardRef","shortid","assertIsDashboardPluginProps","PanelEvent","LayoutUtils","useListener","canHaveRef","isWidgetPlugin","usePlugins","Log","WidgetPanel","jsx","_jsx","log","module","WrapWidgetPlugin","plugin","_plugin$component$dis","Wrapper","props","ref","C","component","metadata","hasRef","_objectSpread","widgetName","name","widgetType","title","children","displayName","concat","WidgetLoaderPlugin","plugins","supportedTypes","typeMap","Map","forEach","flat","supportedType","has","_typeMap$get","warn","get","set","id","layout","registerComponent","handlePanelOpen","_ref","_widget$title","dragEvent","fetch","panelId","generate","widget","widgetId","type","panelProps","localDashboardId","config","root","openComponent","deregisterFns","Set","values","map","panelComponent","deregister","eventHub","OPEN"],"sources":["../src/WidgetLoaderPlugin.tsx"],"sourcesContent":["import { useMemo, useCallback, useEffect, forwardRef } from 'react';\nimport type { ReactComponentConfig } from '@deephaven/golden-layout';\nimport shortid from 'shortid';\nimport {\n assertIsDashboardPluginProps,\n DashboardPluginComponentProps,\n DehydratedDashboardPanelProps,\n PanelEvent,\n PanelOpenEventDetail,\n LayoutUtils,\n useListener,\n PanelProps,\n canHaveRef,\n} from '@deephaven/dashboard';\nimport {\n isWidgetPlugin,\n usePlugins,\n type WidgetPlugin,\n} from '@deephaven/plugin';\nimport Log from '@deephaven/log';\nimport { WidgetPanel } from './panels';\n\nconst log = Log.module('WidgetLoaderPlugin');\n\nexport function WrapWidgetPlugin(\n plugin: WidgetPlugin\n): React.ForwardRefExoticComponent<PanelProps & React.RefAttributes<unknown>> {\n function Wrapper(props: PanelProps, ref: React.ForwardedRef<unknown>) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const C = plugin.component as any;\n const { metadata } = props;\n\n const hasRef = canHaveRef(C);\n\n return (\n <WidgetPanel\n widgetName={metadata?.name}\n widgetType={plugin.title}\n // eslint-disable-next-line react/jsx-props-no-spreading\n {...props}\n >\n {hasRef ? (\n <C\n // eslint-disable-next-line react/jsx-props-no-spreading\n {...props}\n ref={ref}\n />\n ) : (\n <C\n // eslint-disable-next-line react/jsx-props-no-spreading\n {...props}\n />\n )}\n </WidgetPanel>\n );\n }\n\n Wrapper.displayName = `WidgetLoaderPlugin(${\n plugin.component.displayName ?? plugin.name\n })`;\n\n return forwardRef(Wrapper);\n}\n\n/**\n * Widget to automatically open any supported WidgetPlugin types as panels\n * if the widget is emitted from the server as the result of executed code.\n *\n * Does not open panels for widgets that are not supported by any plugins.\n * Does not open panels for widgets that are a component of a larger widget or UI element.\n *\n * @param props Dashboard plugin props\n * @returns React element\n */\nexport function WidgetLoaderPlugin(\n props: Partial<DashboardPluginComponentProps>\n): JSX.Element | null {\n const plugins = usePlugins();\n const supportedTypes = useMemo(() => {\n const typeMap = new Map<string, WidgetPlugin>();\n plugins.forEach(plugin => {\n if (!isWidgetPlugin(plugin)) {\n return;\n }\n\n [plugin.supportedTypes].flat().forEach(supportedType => {\n if (supportedType != null && supportedType !== '') {\n if (typeMap.has(supportedType)) {\n log.warn(\n `Multiple WidgetPlugins handling type ${supportedType}. Replacing ${typeMap.get(\n supportedType\n )?.name} with ${plugin.name} to handle ${supportedType}`\n );\n }\n typeMap.set(supportedType, plugin);\n }\n });\n });\n\n return typeMap;\n }, [plugins]);\n\n assertIsDashboardPluginProps(props);\n const { id, layout, registerComponent } = props;\n\n const handlePanelOpen = useCallback(\n ({\n dragEvent,\n fetch,\n panelId = shortid.generate(),\n widget,\n }: PanelOpenEventDetail) => {\n const { id: widgetId, type } = widget;\n const name = widget.title ?? widget.name;\n const plugin = supportedTypes.get(type);\n if (plugin == null) {\n return;\n }\n const metadata = { id: widgetId, name, type };\n const panelProps: DehydratedDashboardPanelProps & {\n fetch?: typeof fetch;\n } = {\n localDashboardId: id,\n metadata,\n fetch,\n };\n\n const config: ReactComponentConfig = {\n type: 'react-component',\n component: plugin.name,\n props: panelProps,\n title: name,\n id: panelId,\n };\n\n const { root } = layout;\n LayoutUtils.openComponent({ root, config, dragEvent });\n },\n [id, layout, supportedTypes]\n );\n\n useEffect(() => {\n const deregisterFns = [...new Set(supportedTypes.values())].map(plugin => {\n const { panelComponent } = plugin;\n if (panelComponent == null) {\n return registerComponent(plugin.name, WrapWidgetPlugin(plugin));\n }\n return registerComponent(plugin.name, panelComponent);\n });\n\n return () => {\n deregisterFns.forEach(deregister => deregister());\n };\n }, [registerComponent, supportedTypes]);\n\n /**\n * Listen for panel open events so we know when to open a panel\n */\n useListener(layout.eventHub, PanelEvent.OPEN, handlePanelOpen);\n\n return null;\n}\n\nexport default WidgetLoaderPlugin;\n"],"mappings":"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"}
@@ -81,7 +81,7 @@
81
81
  .dropdown-filter .dropdown-filter-value-input input:focus {
82
82
  outline: none;
83
83
  border-bottom: 1px solid var(--dh-color-input-focus-border);
84
- box-shadow: 0 0.2rem 0 hsla(var(--dh-color-accent-hsl), 0.35);
84
+ box-shadow: 0 0.2rem 0 color-mix(in srgb, var(--dh-color-accent) 35%, transparent);
85
85
  }
86
86
 
87
87
  /*# sourceMappingURL=DropdownFilter.css.map */