mirror of
https://github.com/grafana/grafana.git
synced 2025-02-25 18:55:37 -06:00
PublicDashboards: Add recipient uid to recipient list (#64076)
uid added for recipients
This commit is contained in:
parent
976db3f53f
commit
528dc28657
@ -113,9 +113,9 @@ export const publicDashboardApi = createApi({
|
|||||||
},
|
},
|
||||||
invalidatesTags: (result, error, { dashboardUid }) => [{ type: 'PublicDashboard', id: dashboardUid }],
|
invalidatesTags: (result, error, { dashboardUid }) => [{ type: 'PublicDashboard', id: dashboardUid }],
|
||||||
}),
|
}),
|
||||||
deleteEmailSharing: builder.mutation<void, { recipient: string; dashboardUid: string; uid: string }>({
|
deleteEmailSharing: builder.mutation<void, { recipientUid: string; dashboardUid: string; uid: string }>({
|
||||||
query: ({ uid, recipient }) => ({
|
query: ({ uid, recipientUid }) => ({
|
||||||
url: `/public-dashboards/${uid}/share/recipients/${recipient}`,
|
url: `/public-dashboards/${uid}/share/recipients/${recipientUid}`,
|
||||||
method: 'DELETE',
|
method: 'DELETE',
|
||||||
}),
|
}),
|
||||||
async onQueryStarted(_, { dispatch, queryFulfilled }) {
|
async onQueryStarted(_, { dispatch, queryFulfilled }) {
|
||||||
|
@ -22,7 +22,7 @@ import {
|
|||||||
} from 'app/features/dashboard/api/publicDashboardApi';
|
} from 'app/features/dashboard/api/publicDashboardApi';
|
||||||
import { useSelector } from 'app/types';
|
import { useSelector } from 'app/types';
|
||||||
|
|
||||||
import { PublicDashboardShareType, validEmailRegex } from '../SharePublicDashboardUtils';
|
import { PublicDashboard, PublicDashboardShareType, validEmailRegex } from '../SharePublicDashboardUtils';
|
||||||
|
|
||||||
interface EmailSharingConfigurationForm {
|
interface EmailSharingConfigurationForm {
|
||||||
shareType: PublicDashboardShareType;
|
shareType: PublicDashboardShareType;
|
||||||
@ -41,23 +41,23 @@ const EmailList = ({
|
|||||||
dashboardUid,
|
dashboardUid,
|
||||||
publicDashboardUid,
|
publicDashboardUid,
|
||||||
}: {
|
}: {
|
||||||
recipients: string[];
|
recipients: PublicDashboard['recipients'];
|
||||||
dashboardUid: string;
|
dashboardUid: string;
|
||||||
publicDashboardUid: string;
|
publicDashboardUid: string;
|
||||||
}) => {
|
}) => {
|
||||||
const styles = useStyles2(getStyles);
|
const styles = useStyles2(getStyles);
|
||||||
const [deleteEmail, { isLoading: isDeleteLoading }] = useDeleteEmailSharingMutation();
|
const [deleteEmail, { isLoading: isDeleteLoading }] = useDeleteEmailSharingMutation();
|
||||||
|
|
||||||
const onDeleteEmail = (email: string) => {
|
const onDeleteEmail = (recipientUid: string) => {
|
||||||
deleteEmail({ recipient: email, dashboardUid: dashboardUid, uid: publicDashboardUid });
|
deleteEmail({ recipientUid, dashboardUid: dashboardUid, uid: publicDashboardUid });
|
||||||
};
|
};
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<table className={styles.table} data-testid={selectors.EmailSharingList}>
|
<table className={styles.table} data-testid={selectors.EmailSharingList}>
|
||||||
<tbody>
|
<tbody>
|
||||||
{recipients.map((recipient) => (
|
{recipients!.map((recipient) => (
|
||||||
<tr key={recipient}>
|
<tr key={recipient.uid}>
|
||||||
<td>{recipient}</td>
|
<td>{recipient.recipient}</td>
|
||||||
<td>
|
<td>
|
||||||
<ButtonGroup className={styles.tableButtonsContainer}>
|
<ButtonGroup className={styles.tableButtonsContainer}>
|
||||||
<Button
|
<Button
|
||||||
@ -68,7 +68,7 @@ const EmailList = ({
|
|||||||
title="Revoke"
|
title="Revoke"
|
||||||
size="sm"
|
size="sm"
|
||||||
disabled={isDeleteLoading}
|
disabled={isDeleteLoading}
|
||||||
onClick={() => onDeleteEmail(recipient)}
|
onClick={() => onDeleteEmail(recipient.uid)}
|
||||||
>
|
>
|
||||||
Revoke
|
Revoke
|
||||||
</Button>
|
</Button>
|
||||||
|
@ -22,7 +22,7 @@ export interface PublicDashboard extends PublicDashboardSettings {
|
|||||||
dashboardUid: string;
|
dashboardUid: string;
|
||||||
timeSettings?: object;
|
timeSettings?: object;
|
||||||
share: PublicDashboardShareType;
|
share: PublicDashboardShareType;
|
||||||
recipients?: string[];
|
recipients?: Array<{ uid: string; recipient: string }>;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Instance methods
|
// Instance methods
|
||||||
|
Loading…
Reference in New Issue
Block a user