Something went wrong. Try again.
Bluesky app fork with some witchin' additions 💫 forked from jollywhoppers.com/witchsky.app
Something went wrong. Try again.
1.6 kB · 50 lines
TSX
at main
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051import {useCallback} from 'react'import {type AppBskyActorDefs} from '@atproto/api'import {msg} from '@lingui/macro'import {useLingui} from '@lingui/react'
import {logger} from '#/logger'import {useVerificationsRemoveMutation} from '#/state/queries/verification/useVerificationsRemoveMutation'import * as Toast from '#/view/com/util/Toast'import {type DialogControlProps} from '#/components/Dialog'import * as Prompt from '#/components/Prompt'import type * as bsky from '#/types/bsky'
export {useDialogControl as usePromptControl} from '#/components/Dialog'
export function VerificationRemovePrompt({ control, profile, verifications, onConfirm: onConfirmInner,}: { control: DialogControlProps profile: bsky.profile.AnyProfileView verifications: AppBskyActorDefs.VerificationView[] onConfirm?: () => void}) { const {_} = useLingui() const {mutateAsync: remove} = useVerificationsRemoveMutation() const onConfirm = useCallback(async () => { onConfirmInner?.() try { await remove({profile, verifications}) Toast.show(_(msg`Removed verification`)) } catch (e) { Toast.show(_(msg`Failed to remove verification`), 'xmark') logger.error('Failed to remove verification', { safeMessage: e, }) } }, [_, profile, verifications, remove, onConfirmInner])
return ( <Prompt.Basic control={control} title={_(msg`Remove your verification for this account?`)} onConfirm={onConfirm} confirmButtonCta={_(msg`Remove verification`)} confirmButtonColor="negative" /> )}