Files
grafana/packages/grafana-data/src/context/plugins/DataSourcePluginContextProvider.tsx
T
Matt Cowley dbbd9f23d1 Plugin Extensions: Expose PluginMeta generic in usePluginContext (#107577)
* Plugin Extensions: Expose PluginMeta generic in usePluginContext

* Plugin Extensions: Cast usePluginContext type on return

* Plugin Extensions: Fix PluginContext export
2025-07-08 15:51:30 +02:00

21 lines
737 B
TypeScript

import { PropsWithChildren, ReactElement, useMemo } from 'react';
import { DataSourceInstanceSettings } from '../../types/datasource';
import { PluginContext, DataSourcePluginContextType } from './PluginContext';
export type DataSourcePluginContextProviderProps = {
instanceSettings: DataSourceInstanceSettings;
};
export function DataSourcePluginContextProvider(
props: PropsWithChildren<DataSourcePluginContextProviderProps>
): ReactElement {
const { children, instanceSettings } = props;
const value: DataSourcePluginContextType = useMemo(() => {
return { instanceSettings, meta: instanceSettings.meta };
}, [instanceSettings]);
return <PluginContext.Provider value={value}>{children}</PluginContext.Provider>;
}