diff --git a/public/app/features/dashboard/components/ShareModal/SharePublicDashboard/ConfigPublicDashboard/EmailSharingConfiguration.tsx b/public/app/features/dashboard/components/ShareModal/SharePublicDashboard/ConfigPublicDashboard/EmailSharingConfiguration.tsx index 5b916eb980a..4a25e6c9b11 100644 --- a/public/app/features/dashboard/components/ShareModal/SharePublicDashboard/ConfigPublicDashboard/EmailSharingConfiguration.tsx +++ b/public/app/features/dashboard/components/ShareModal/SharePublicDashboard/ConfigPublicDashboard/EmailSharingConfiguration.tsx @@ -5,6 +5,7 @@ import { useWindowSize } from 'react-use'; import { GrafanaTheme2, SelectableValue } from '@grafana/data/src'; import { selectors as e2eSelectors } from '@grafana/e2e-selectors/src'; +import { FieldSet } from '@grafana/ui'; import { Button, ButtonGroup, @@ -15,6 +16,7 @@ import { Spinner, useStyles2, } from '@grafana/ui/src'; +import { contextSrv } from 'app/core/services/context_srv'; import { useAddRecipientMutation, useDeleteRecipientMutation, @@ -22,7 +24,8 @@ import { useReshareAccessToRecipientMutation, useUpdatePublicDashboardMutation, } from 'app/features/dashboard/api/publicDashboardApi'; -import { useSelector } from 'app/types'; +import { isOrgAdmin } from 'app/features/plugins/admin/permissions'; +import { AccessControlAction, useSelector } from 'app/types'; import { trackDashboardSharingActionPerType } from '../../analytics'; import { shareDashboardType } from '../../utils'; @@ -118,6 +121,8 @@ export const EmailSharingConfiguration = () => { const [updateShareType] = useUpdatePublicDashboardMutation(); const [addEmail, { isLoading: isAddEmailLoading }] = useAddRecipientMutation(); + const hasWritePermissions = contextSrv.hasAccess(AccessControlAction.DashboardsPublicWrite, isOrgAdmin()); + const { register, setValue, @@ -154,70 +159,72 @@ export const EmailSharingConfiguration = () => { }; return ( -
); };