diff --git a/src/components/Prompt.tsx b/src/components/Prompt.tsx
index ed8c15f156..f21c98ff86 100644
--- a/src/components/Prompt.tsx
+++ b/src/components/Prompt.tsx
@@ -52,9 +52,7 @@ export function Outer({
+ style={[gtMobile ? {width: 400} : a.w_full]}>
{children}
diff --git a/src/components/verification/VerificationCreatePrompt.tsx b/src/components/verification/VerificationCreatePrompt.tsx
index 66aca750c0..2190365a49 100644
--- a/src/components/verification/VerificationCreatePrompt.tsx
+++ b/src/components/verification/VerificationCreatePrompt.tsx
@@ -1,4 +1,4 @@
-import {useCallback} from 'react'
+import {useCallback, useState} from 'react'
import {View} from 'react-native'
import {msg, Trans} from '@lingui/macro'
import {useLingui} from '@lingui/react'
@@ -7,11 +7,13 @@ import {logger} from '#/logger'
import {useModerationOpts} from '#/state/preferences/moderation-opts'
import {useVerificationCreateMutation} from '#/state/queries/verification/useVerificationCreateMutation'
import * as Toast from '#/view/com/util/Toast'
-import {atoms as a} from '#/alf'
+import {atoms as a, useBreakpoints} from '#/alf'
import {Admonition} from '#/components/Admonition'
+import {Button, ButtonIcon,ButtonText} from '#/components/Button'
import {type DialogControlProps} from '#/components/Dialog'
import * as Dialog from '#/components/Dialog'
import {VerifiedCheck} from '#/components/icons/VerifiedCheck'
+import {Loader} from '#/components/Loader'
import * as ProfileCard from '#/components/ProfileCard'
import * as Prompt from '#/components/Prompt'
import type * as bsky from '#/types/bsky'
@@ -24,19 +26,22 @@ export function VerificationCreatePrompt({
profile: bsky.profile.AnyProfileView
}) {
const {_} = useLingui()
+ const {gtMobile} = useBreakpoints()
const moderationOpts = useModerationOpts()
- const {mutateAsync: create} = useVerificationCreateMutation()
+ const {mutateAsync: create, isPending} = useVerificationCreateMutation()
+ const [error, setError] = useState(``)
const onConfirm = useCallback(async () => {
try {
await create({profile})
Toast.show(_(msg`Successfully verified`))
+ control.close()
} catch (e) {
- Toast.show(_(msg`Failed to create a verification`), 'xmark')
+ setError(_(msg`Verification failed, please try again.`))
logger.error('Failed to create a verification', {
safeMessage: e,
})
}
- }, [_, profile, create])
+ }, [_, profile, create, control])
return (
@@ -63,10 +68,24 @@ export function VerificationCreatePrompt({
) : null}
+ {error && (
+
+ {error}
+
+ )}
+
{profile.displayName ? (
-
+
) : (