grafana/public/app/features/plugins/angularDeprecation/utils.ts
Giuseppe Guerra da117aea1c
Plugins: Allow disabling angular deprecation UI for specific plugins (#77026)
* Plugins:Allow disabling angular deprecation UI for specific plugins

* add backend test

* changed test names

* lint

* Removed angular properties from DataSourceDTO

* Update tests

* Move angularDetected and hideAngularDeprecation in angularMeta property

* Fix angular property name in AppPluginConfig

* Fix reference to angularMeta.detected

* Fix hide_angular_deprecation not working for core plugins

* lint
2023-11-10 11:44:54 +01:00

17 lines
733 B
TypeScript

import { DataSourceInstanceSettings } from '@grafana/data';
import { config } from '@grafana/runtime';
import { DataSourceJsonData } from '@grafana/schema';
function getDsInstanceSettingsByUid(dsUid: string): DataSourceInstanceSettings<DataSourceJsonData> | null {
return Object.values(config.datasources).find((ds) => ds.uid === dsUid) ?? null;
}
export function isAngularDatasourcePlugin(dsUid: string): boolean {
return getDsInstanceSettingsByUid(dsUid)?.meta.angular?.detected ?? false;
}
export function isAngularDatasourcePluginAndNotHidden(dsUid: string): boolean {
const settings = getDsInstanceSettingsByUid(dsUid);
return (settings?.meta.angular?.detected && !settings?.meta.angular.hideDeprecation) ?? false;
}