Files
grafana/public/app/features/plugins/admin/hooks/usePluginConfig.tsx
2023-11-10 12:28:36 +01:00

18 lines
442 B
TypeScript

import { useAsync } from 'react-use';
import { loadPlugin } from '../../utils';
import { CatalogPlugin } from '../types';
export const usePluginConfig = (plugin?: CatalogPlugin) => {
return useAsync(async () => {
if (!plugin) {
return null;
}
if (plugin.isFullyInstalled && !plugin.isDisabled) {
return loadPlugin(plugin.id);
}
return null;
}, [plugin?.id, plugin?.isInstalled, plugin?.isDisabled]);
};