mirror of
https://github.com/grafana/grafana.git
synced 2025-02-25 18:55:37 -06:00
* DashboardScene: Inspect meta tab * DashboardScene: Inspect meta tab * fix casing * Added meta data inspector to testdata data source
41 lines
1.1 KiB
TypeScript
41 lines
1.1 KiB
TypeScript
import React from 'react';
|
|
|
|
import { DataSourceApi } from '@grafana/data';
|
|
import {
|
|
SceneComponentProps,
|
|
sceneGraph,
|
|
SceneObjectBase,
|
|
SceneObjectState,
|
|
SceneObjectRef,
|
|
VizPanel,
|
|
} from '@grafana/scenes';
|
|
import { t } from 'app/core/internationalization';
|
|
import { InspectTab } from 'app/features/inspector/types';
|
|
|
|
export interface InspectMetaDataTabState extends SceneObjectState {
|
|
panelRef: SceneObjectRef<VizPanel>;
|
|
dataSource: DataSourceApi;
|
|
}
|
|
|
|
export class InspectMetaDataTab extends SceneObjectBase<InspectMetaDataTabState> {
|
|
public getTabLabel() {
|
|
return t('dashboard.inspect.meta-tab', 'Meta data');
|
|
}
|
|
|
|
public getTabValue() {
|
|
return InspectTab.Meta;
|
|
}
|
|
|
|
static Component = ({ model }: SceneComponentProps<InspectMetaDataTab>) => {
|
|
const { panelRef, dataSource } = model.state;
|
|
const data = sceneGraph.getData(panelRef.resolve());
|
|
const Inspector = dataSource.components?.MetadataInspector;
|
|
|
|
if (!data.state.data || !Inspector) {
|
|
return null;
|
|
}
|
|
|
|
return <Inspector datasource={dataSource} data={data.state.data.series} />;
|
|
};
|
|
}
|