DashboardScene: Fixes visualization suggestions (#84439)

* DashboardScene: Fixes visualization suggestions

* Update public/app/features/dashboard-scene/panel-edit/PanelOptionsPane.tsx

Co-authored-by: Oscar Kilhed <oscar.kilhed@grafana.com>

* fix prettier issue

---------

Co-authored-by: Oscar Kilhed <oscar.kilhed@grafana.com>
This commit is contained in:
Torkel Ödegaard 2024-03-19 13:12:46 +01:00 committed by GitHub
parent 4ad6d66479
commit a095888522
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 9 additions and 5 deletions

View File

@ -1,6 +1,6 @@
import React, { useMemo } from 'react';
import { sceneGraph } from '@grafana/scenes';
import { PanelData } from '@grafana/data';
import { OptionFilter, renderSearchHits } from 'app/features/dashboard/components/PanelEditor/OptionsPaneOptions';
import { getFieldOverrideCategories } from 'app/features/dashboard/components/PanelEditor/getFieldOverrideElements';
import { getPanelFrameCategory2 } from 'app/features/dashboard/components/PanelEditor/getPanelFrameOptions';
@ -17,12 +17,12 @@ interface Props {
vizManager: VizPanelManager;
searchQuery: string;
listMode: OptionFilter;
data?: PanelData;
}
export const PanelOptions = React.memo<Props>(({ vizManager, searchQuery, listMode }) => {
export const PanelOptions = React.memo<Props>(({ vizManager, searchQuery, listMode, data }) => {
const { panel, sourcePanel, repeat } = vizManager.useState();
const parent = sourcePanel.resolve().parent;
const { data } = sceneGraph.getData(panel).useState();
const { options, fieldConfig } = panel.useState();
// eslint-disable-next-line react-hooks/exhaustive-deps
@ -39,6 +39,7 @@ export const PanelOptions = React.memo<Props>(({ vizManager, searchQuery, listMo
return getVisualizationOptions2({
panel,
data,
plugin: plugin,
eventBus: panel.getPanelContext().eventBus,
instanceState: panel.getPanelContext().instanceState!,

View File

@ -43,6 +43,7 @@ export class PanelOptionsPane extends SceneObjectBase<PanelOptionsPaneState> {
const { isVizPickerOpen, searchQuery, listMode } = model.useState();
const vizManager = sceneGraph.getAncestor(model, PanelEditor).state.vizManager;
const { pluginId } = vizManager.state.panel.useState();
const { data } = sceneGraph.getData(vizManager).useState();
const styles = useStyles2(getStyles);
return (
@ -59,11 +60,13 @@ export class PanelOptionsPane extends SceneObjectBase<PanelOptionsPaneState> {
/>
</div>
<div className={styles.listOfOptions}>
<PanelOptions vizManager={vizManager} searchQuery={searchQuery} listMode={listMode} />
<PanelOptions vizManager={vizManager} searchQuery={searchQuery} listMode={listMode} data={data} />
</div>
</>
)}
{isVizPickerOpen && <PanelVizTypePicker vizManager={vizManager} onChange={model.onToggleVizPicker} />}
{isVizPickerOpen && (
<PanelVizTypePicker vizManager={vizManager} onChange={model.onToggleVizPicker} data={data} />
)}
</>
);
};