From e45b2953deba0826ac9f7e74826a78be44b787da Mon Sep 17 00:00:00 2001 From: "Grot (@grafanabot)" <43478413+grafanabot@users.noreply.github.com> Date: Wed, 3 May 2023 04:01:27 -0400 Subject: [PATCH] [v10.0.x] PluginCatalog: Update message about insufficient permissions (#67697) PluginCatalog: Update message about insufficient permissions (#67664) Changed so we map the enum into different message. (cherry picked from commit 21d28c1cb5db54f6f26544022d41fcc658430c23) Co-authored-by: Marcus Andersson --- .../InstallControls/InstallControlsWarning.tsx | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/public/app/features/plugins/admin/components/InstallControls/InstallControlsWarning.tsx b/public/app/features/plugins/admin/components/InstallControls/InstallControlsWarning.tsx index c2c3643d301..7a2f86c1386 100644 --- a/public/app/features/plugins/admin/components/InstallControls/InstallControlsWarning.tsx +++ b/public/app/features/plugins/admin/components/InstallControls/InstallControlsWarning.tsx @@ -58,8 +58,7 @@ export const InstallControlsWarning = ({ plugin, pluginStatus, latestCompatibleV } if (!hasPermission && !isExternallyManaged) { - const message = `You do not have permission to ${pluginStatus} this plugin.`; - return
{message}
; + return
{statusToMessage(pluginStatus)}
; } if (!plugin.isPublished) { @@ -101,3 +100,17 @@ export const getStyles = (theme: GrafanaTheme2) => { `, }; }; + +function statusToMessage(status: PluginStatus): string { + switch (status) { + case PluginStatus.INSTALL: + case PluginStatus.REINSTALL: + return `You do not have permission to install this plugin.`; + case PluginStatus.UNINSTALL: + return `You do not have permission to uninstall this plugin.`; + case PluginStatus.UPDATE: + return `You do not have permission to update this plugin.`; + default: + return `You do not have permission to manage this plugin.`; + } +}