From 20ebcfaff89fcf291ee4fb05650d4b95f0d5f48b Mon Sep 17 00:00:00 2001 From: abefernan <44572727+abefernan@users.noreply.github.com> Date: Mon, 1 Jul 2024 11:48:34 +0200 Subject: [PATCH] Improve errors --- components/forms/CreateMultisigForm/index.tsx | 26 +++++++++---------- 1 file changed, 12 insertions(+), 14 deletions(-) diff --git a/components/forms/CreateMultisigForm/index.tsx b/components/forms/CreateMultisigForm/index.tsx index 44e3918..359f1b4 100644 --- a/components/forms/CreateMultisigForm/index.tsx +++ b/components/forms/CreateMultisigForm/index.tsx @@ -65,14 +65,14 @@ export default function CreateMultisigForm() { }, [createMultisigForm, watchedMembers]); const submitCreateMultisig = async () => { - // Caution: threshold is string instead of number - const { members, threshold } = createMultisigForm.getValues(); + try { + // Caution: threshold is string instead of number + const { members, threshold } = createMultisigForm.getValues(); - const pubkeys = await Promise.all( - members - .filter(({ member }) => member !== "") - .map(async ({ member }) => { - try { + const pubkeys = await Promise.all( + members + .filter(({ member }) => member !== "") + .map(async ({ member }) => { if (!member.startsWith(chain.addressPrefix)) { return member; } @@ -81,17 +81,15 @@ export default function CreateMultisigForm() { const accountOnChain = await client.getAccount(member); if (!accountOnChain || !accountOnChain.pubkey) { - return member; + throw new Error( + `Member "${member}" is not a pubkey and is not on chain. It needs to send a transaction to appear on chain or you can provide its pubkey`, + ); } return String(accountOnChain.pubkey.value); - } catch { - return member; - } - }), - ); + }), + ); - try { const { bech32Address: address } = await getKeplrKey(chain.chainId); const multisigAddress = await createMultisigFromCompressedSecp256k1Pubkeys(