diff --git a/public/app/features/dashboard/api/publicDashboardApi.ts b/public/app/features/dashboard/api/publicDashboardApi.ts index 8eed4f279ae..a329a2df723 100644 --- a/public/app/features/dashboard/api/publicDashboardApi.ts +++ b/public/app/features/dashboard/api/publicDashboardApi.ts @@ -113,9 +113,9 @@ export const publicDashboardApi = createApi({ }, invalidatesTags: (result, error, { dashboardUid }) => [{ type: 'PublicDashboard', id: dashboardUid }], }), - deleteEmailSharing: builder.mutation({ - query: ({ uid, recipient }) => ({ - url: `/public-dashboards/${uid}/share/recipients/${recipient}`, + deleteEmailSharing: builder.mutation({ + query: ({ uid, recipientUid }) => ({ + url: `/public-dashboards/${uid}/share/recipients/${recipientUid}`, method: 'DELETE', }), async onQueryStarted(_, { dispatch, queryFulfilled }) { 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 3ad652bcac8..30a53b17ed8 100644 --- a/public/app/features/dashboard/components/ShareModal/SharePublicDashboard/ConfigPublicDashboard/EmailSharingConfiguration.tsx +++ b/public/app/features/dashboard/components/ShareModal/SharePublicDashboard/ConfigPublicDashboard/EmailSharingConfiguration.tsx @@ -22,7 +22,7 @@ import { } from 'app/features/dashboard/api/publicDashboardApi'; import { useSelector } from 'app/types'; -import { PublicDashboardShareType, validEmailRegex } from '../SharePublicDashboardUtils'; +import { PublicDashboard, PublicDashboardShareType, validEmailRegex } from '../SharePublicDashboardUtils'; interface EmailSharingConfigurationForm { shareType: PublicDashboardShareType; @@ -41,23 +41,23 @@ const EmailList = ({ dashboardUid, publicDashboardUid, }: { - recipients: string[]; + recipients: PublicDashboard['recipients']; dashboardUid: string; publicDashboardUid: string; }) => { const styles = useStyles2(getStyles); const [deleteEmail, { isLoading: isDeleteLoading }] = useDeleteEmailSharingMutation(); - const onDeleteEmail = (email: string) => { - deleteEmail({ recipient: email, dashboardUid: dashboardUid, uid: publicDashboardUid }); + const onDeleteEmail = (recipientUid: string) => { + deleteEmail({ recipientUid, dashboardUid: dashboardUid, uid: publicDashboardUid }); }; return ( - {recipients.map((recipient) => ( - - + {recipients!.map((recipient) => ( + +
{recipient}
{recipient.recipient} diff --git a/public/app/features/dashboard/components/ShareModal/SharePublicDashboard/SharePublicDashboardUtils.ts b/public/app/features/dashboard/components/ShareModal/SharePublicDashboard/SharePublicDashboardUtils.ts index c89a902c199..33092089208 100644 --- a/public/app/features/dashboard/components/ShareModal/SharePublicDashboard/SharePublicDashboardUtils.ts +++ b/public/app/features/dashboard/components/ShareModal/SharePublicDashboard/SharePublicDashboardUtils.ts @@ -22,7 +22,7 @@ export interface PublicDashboard extends PublicDashboardSettings { dashboardUid: string; timeSettings?: object; share: PublicDashboardShareType; - recipients?: string[]; + recipients?: Array<{ uid: string; recipient: string }>; } // Instance methods