aboutsummaryrefslogtreecommitdiffstats
path: root/packages/web/app/dashboard/settings/components/AddApiKey.tsx
diff options
context:
space:
mode:
Diffstat (limited to 'packages/web/app/dashboard/settings/components/AddApiKey.tsx')
-rw-r--r--packages/web/app/dashboard/settings/components/AddApiKey.tsx18
1 files changed, 10 insertions, 8 deletions
diff --git a/packages/web/app/dashboard/settings/components/AddApiKey.tsx b/packages/web/app/dashboard/settings/components/AddApiKey.tsx
index f4f2894c..c438f4b1 100644
--- a/packages/web/app/dashboard/settings/components/AddApiKey.tsx
+++ b/packages/web/app/dashboard/settings/components/AddApiKey.tsx
@@ -53,20 +53,22 @@ function AddApiKeyForm({ onSuccess }: { onSuccess: (key: string) => void }) {
name: z.string(),
});
const router = useRouter();
+ const mutator = api.apiKeys.create.useMutation({
+ onSuccess: (resp) => {
+ onSuccess(resp.key);
+ router.refresh();
+ },
+ onError: () => {
+ toast({ description: "Something went wrong", variant: "destructive" });
+ },
+ });
const form = useForm<z.infer<typeof formSchema>>({
resolver: zodResolver(formSchema),
});
async function onSubmit(value: z.infer<typeof formSchema>) {
- try {
- const resp = await api.apiKeys.create.mutate({ name: value.name });
- onSuccess(resp.key);
- } catch (e) {
- toast({ description: "Something went wrong", variant: "destructive" });
- return;
- }
- router.refresh();
+ mutator.mutate({ name: value.name });
}
const onError: SubmitErrorHandler<z.infer<typeof formSchema>> = (errors) => {