From 999b24d2a0c4647ead792dd8247f48c5dc91eaeb Mon Sep 17 00:00:00 2001 From: Marcus Andersson Date: Tue, 13 Jan 2026 10:59:53 +0100 Subject: [PATCH] Made it possible to pass a custom react node as the icon for extension links. --- packages/grafana-data/src/types/pluginExtensions.ts | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/grafana-data/src/types/pluginExtensions.ts b/packages/grafana-data/src/types/pluginExtensions.ts index cc2a97b4a50..76241735a52 100644 --- a/packages/grafana-data/src/types/pluginExtensions.ts +++ b/packages/grafana-data/src/types/pluginExtensions.ts @@ -28,7 +28,7 @@ export type PluginExtensionLink = PluginExtensionBase & { type: PluginExtensionTypes.link; path?: string; onClick?: (event?: React.MouseEvent) => void; - icon?: IconName; + icon?: IconName | React.ReactNode; category?: string; openInNewTab?: boolean; }; @@ -106,7 +106,7 @@ export type PluginAddedLinksConfigureFunc = (context: Re description: string; path: string; onClick: (event: React.MouseEvent | undefined, helpers: PluginExtensionEventHelpers) => void; - icon: IconName; + icon: IconName | React.ReactNode; category: string; openInNewTab: boolean; }> @@ -136,7 +136,7 @@ export type PluginExtensionAddedLinkConfig = Pl configure?: PluginAddedLinksConfigureFunc; // (Optional) A icon that can be displayed in the ui for the extension option. - icon?: IconName; + icon?: IconName | React.ReactNode; // (Optional) A category to be used when grouping the options in the ui category?: string;