diff --git a/packages/grafana-data/src/types/plugin.ts b/packages/grafana-data/src/types/plugin.ts index 0d718e92fa7..4793b06b50a 100644 --- a/packages/grafana-data/src/types/plugin.ts +++ b/packages/grafana-data/src/types/plugin.ts @@ -123,6 +123,7 @@ export interface PluginInclude { interface PluginMetaInfoLink { name: string; url: string; + target?: '_blank' | '_self' | '_parent' | '_top'; } export interface PluginBuildInfo { diff --git a/public/app/features/datasources/components/DataSourceTypeCard.tsx b/public/app/features/datasources/components/DataSourceTypeCard.tsx index e313e14787b..3ad177773de 100644 --- a/public/app/features/datasources/components/DataSourceTypeCard.tsx +++ b/public/app/features/datasources/components/DataSourceTypeCard.tsx @@ -14,6 +14,7 @@ export function DataSourceTypeCard({ onClick, dataSourcePlugin }: Props) { const isPhantom = dataSourcePlugin.module === 'phantom'; const isClickable = !isPhantom && !dataSourcePlugin.unlicensed; const learnMoreLink = dataSourcePlugin.info?.links?.length > 0 ? dataSourcePlugin.info.links[0] : null; + const learnMoreLinkTarget = learnMoreLink?.target ?? '_blank'; const styles = useStyles2(getStyles); @@ -47,10 +48,9 @@ export function DataSourceTypeCard({ onClick, dataSourcePlugin }: Props) { e.stopPropagation()} rel="noopener" - target="_blank" + target={learnMoreLinkTarget} variant="secondary" > {learnMoreLink.name} diff --git a/public/app/features/datasources/state/buildCategories.ts b/public/app/features/datasources/state/buildCategories.ts index d3bca1abdda..68fa9f45d2d 100644 --- a/public/app/features/datasources/state/buildCategories.ts +++ b/public/app/features/datasources/state/buildCategories.ts @@ -1,5 +1,5 @@ import { DataSourcePluginMeta, PluginType } from '@grafana/data'; -import { config, featureEnabled } from '@grafana/runtime'; +import { featureEnabled } from '@grafana/runtime'; import { DataSourcePluginCategory } from 'app/types'; export function buildCategories(plugins: DataSourcePluginMeta[]): DataSourcePluginCategory[] { @@ -244,8 +244,9 @@ function getPhantomPlugin(options: GetPhantomPluginOptions): DataSourcePluginMet author: { name: 'Grafana Labs' }, links: [ { - url: config.pluginCatalogURL + options.id, + url: '/plugins/' + options.id, name: 'Install now', + target: '_self', }, ], screenshots: [],