diff --git a/packages/grafana-data/src/utils/dataLinks.ts b/packages/grafana-data/src/utils/dataLinks.ts index 218c97950a4..4aadad9ac0c 100644 --- a/packages/grafana-data/src/utils/dataLinks.ts +++ b/packages/grafana-data/src/utils/dataLinks.ts @@ -62,7 +62,7 @@ export function mapInternalLinkToExplore(options: LinkToExploreOptions): LinkMod }); } : undefined, - target: '_self', + target: link?.targetBlank ? '_blank' : '_self', origin: field, }; } diff --git a/public/app/features/panel/components/PanelRenderer.tsx b/public/app/features/panel/components/PanelRenderer.tsx index b841e210c00..6ac2e9cd377 100644 --- a/public/app/features/panel/components/PanelRenderer.tsx +++ b/public/app/features/panel/components/PanelRenderer.tsx @@ -10,8 +10,9 @@ import { compareArrayValues, compareDataFrameStructures, PluginContextProvider, + ScopedVars, } from '@grafana/data'; -import { PanelRendererProps } from '@grafana/runtime'; +import { getTemplateSrv, PanelRendererProps } from '@grafana/runtime'; import { ErrorBoundaryAlert, useTheme2 } from '@grafana/ui'; import { appEvents } from 'app/core/core'; @@ -151,7 +152,9 @@ export function useFieldOverrides( data: series, fieldConfig, fieldConfigRegistry, - replaceVariables: (str: string) => str, + replaceVariables: (str: string, scopedVars?: ScopedVars) => { + return getTemplateSrv().replace(str, scopedVars); + }, theme, timeZone, }),