|
1 | 1 | import { FC, useEffect, useMemo } from 'react'
|
2 | 2 | import { SubmitHandler, useForm } from 'react-hook-form'
|
3 | 3 |
|
4 |
| -import { Button, CopyButton, Dialog, Fieldset, FormWrapper, Input, Select, toast } from '@/components' |
| 4 | +import { Alert, Button, CopyButton, Dialog, Fieldset, FormWrapper, Input, Select } from '@/components' |
5 | 5 | import { zodResolver } from '@hookform/resolvers/zod'
|
6 | 6 | import { TranslationStore } from '@views/repo'
|
7 | 7 | import { z } from 'zod'
|
@@ -125,16 +125,6 @@ export const ProfileSettingsTokenCreateDialog: FC<ProfileSettingsTokenCreateDial
|
125 | 125 | : `${t('views:profileSettings.createTokenDialog.tokenExpiryDate', 'Token will expire on')} ${calculateExpirationDate(expirationValue)}`
|
126 | 126 | }
|
127 | 127 |
|
128 |
| - /** |
129 |
| - * Show an unexpected server error message |
130 |
| - * Ensure that validation errors are handled by the react-hook-form |
131 |
| - */ |
132 |
| - useEffect(() => { |
133 |
| - if (!error || error?.type !== ApiErrorType.TokenCreate) return |
134 |
| - |
135 |
| - toast({ title: error.message, variant: 'destructive' }) |
136 |
| - }, [error]) |
137 |
| - |
138 | 128 | return (
|
139 | 129 | <Dialog.Root open={open} onOpenChange={handleOpenChange}>
|
140 | 130 | <Dialog.Content aria-describedby={undefined}>
|
@@ -209,6 +199,12 @@ export const ProfileSettingsTokenCreateDialog: FC<ProfileSettingsTokenCreateDial
|
209 | 199 | )}
|
210 | 200 | </Fieldset>
|
211 | 201 |
|
| 202 | + {error?.type === ApiErrorType.TokenCreate && ( |
| 203 | + <Alert.Container variant="destructive"> |
| 204 | + <Alert.Title>{error.message}</Alert.Title> |
| 205 | + </Alert.Container> |
| 206 | + )} |
| 207 | + |
212 | 208 | <Dialog.Footer className="-mx-5 -mb-5">
|
213 | 209 | <Button type="button" variant="outline" onClick={handleClose}>
|
214 | 210 | {createdTokenData
|
|
0 commit comments