Error responses when deleting emails
This commit is contained in:
@ -1,5 +1,15 @@
|
||||
import { gql } from 'graphql-request'
|
||||
import { gqlFetcher } from '../networkHelpers'
|
||||
import { NewsletterEmail } from '../queries/useGetNewsletterEmailsQuery'
|
||||
|
||||
type DeleteNewsletterEmailResult = {
|
||||
deleteNewsletterEmail: CreateNewsletterEmail
|
||||
errorCodes?: unknown[]
|
||||
}
|
||||
|
||||
type CreateNewsletterEmail = {
|
||||
newsletterEmail: NewsletterEmail
|
||||
}
|
||||
|
||||
export async function deleteNewsletterEmailMutation(
|
||||
newsletterEmailId: string
|
||||
@ -21,9 +31,8 @@ export async function deleteNewsletterEmailMutation(
|
||||
`
|
||||
|
||||
try {
|
||||
const data = await gqlFetcher(mutation, { newsletterEmailId })
|
||||
console.log('delete email', data)
|
||||
return 'data'
|
||||
const data = await gqlFetcher(mutation, { newsletterEmailId }) as DeleteNewsletterEmailResult
|
||||
return data.errorCodes ? undefined : data.deleteNewsletterEmail.newsletterEmail.id
|
||||
} catch (error) {
|
||||
console.log('deleteNewsletterEmailMutation error', error)
|
||||
return undefined
|
||||
|
||||
@ -185,18 +185,21 @@ export default function EmailsPage(): JSX.Element {
|
||||
applyStoredTheme(false)
|
||||
|
||||
async function createEmail(): Promise<void> {
|
||||
try {
|
||||
const email = await createNewsletterEmailMutation()
|
||||
if (email) {
|
||||
showSuccessToast('Email Created')
|
||||
revalidate()
|
||||
return
|
||||
}
|
||||
} catch { }
|
||||
showErrorToast('Error Creating Email')
|
||||
const email = await createNewsletterEmailMutation()
|
||||
if (!email) {
|
||||
showErrorToast('Error Creating Email')
|
||||
return
|
||||
}
|
||||
showSuccessToast('Email Created')
|
||||
revalidate()
|
||||
}
|
||||
|
||||
async function deleteEmail(id: string): Promise<void> {
|
||||
await deleteNewsletterEmailMutation(id)
|
||||
const result = await deleteNewsletterEmailMutation(id)
|
||||
if (!result) {
|
||||
showErrorToast('Error Deleting Email')
|
||||
return
|
||||
}
|
||||
revalidate()
|
||||
showSuccessToast('Email Deleted')
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user