diff --git a/app/client/modules/settings/components/passkeys-section.tsx b/app/client/modules/settings/components/passkeys-section.tsx
index 2a85e301..24a58f54 100644
--- a/app/client/modules/settings/components/passkeys-section.tsx
+++ b/app/client/modules/settings/components/passkeys-section.tsx
@@ -84,38 +84,54 @@ export function PasskeysSection() {
return;
}
setIsRenaming(true);
- const { error } = await authClient.$fetch("/passkey/update-passkey", {
- method: "POST",
- body: { id: renameTarget.id, name },
- });
- setIsRenaming(false);
- if (error) {
- logger.error(error);
- toast.error("Failed to rename passkey", { description: error.message });
- return;
+ try {
+ const { error } = await authClient.$fetch("/passkey/update-passkey", {
+ method: "POST",
+ body: { id: renameTarget.id, name },
+ });
+ if (error) {
+ logger.error(error);
+ toast.error("Failed to rename passkey", { description: error.message });
+ return;
+ }
+ toast.success("Passkey renamed");
+ setRenameTarget(null);
+ setRenameValue("");
+ await refetch();
+ } catch (err) {
+ logger.error(err);
+ toast.error("Failed to rename passkey", {
+ description: err instanceof Error ? err.message : "Unknown error",
+ });
+ } finally {
+ setIsRenaming(false);
}
- toast.success("Passkey renamed");
- setRenameTarget(null);
- setRenameValue("");
- await refetch();
};
const handleDelete = async () => {
if (!deleteTarget) return;
setIsDeleting(true);
- const { error } = await authClient.$fetch("/passkey/delete-passkey", {
- method: "POST",
- body: { id: deleteTarget.id },
- });
- setIsDeleting(false);
- if (error) {
- logger.error(error);
- toast.error("Failed to delete passkey", { description: error.message });
- return;
+ try {
+ const { error } = await authClient.$fetch("/passkey/delete-passkey", {
+ method: "POST",
+ body: { id: deleteTarget.id },
+ });
+ if (error) {
+ logger.error(error);
+ toast.error("Failed to delete passkey", { description: error.message });
+ return;
+ }
+ toast.success("Passkey deleted");
+ setDeleteTarget(null);
+ await refetch();
+ } catch (err) {
+ logger.error(err);
+ toast.error("Failed to delete passkey", {
+ description: err instanceof Error ? err.message : "Unknown error",
+ });
+ } finally {
+ setIsDeleting(false);
}
- toast.success("Passkey deleted");
- setDeleteTarget(null);
- await refetch();
};
const list = (passkeys ?? []) as PasskeyEntry[];
@@ -160,6 +176,8 @@ export function PasskeysSection() {
-