From 610939cea5f208d547d081a84aed8b5633c49964 Mon Sep 17 00:00:00 2001 From: Shreerang Kale Date: Mon, 5 May 2025 18:53:38 +0530 Subject: [PATCH] Remove usage of request ID --- src/screens/SignTxEmbed.tsx | 32 +++++++++++++++----------------- 1 file changed, 15 insertions(+), 17 deletions(-) diff --git a/src/screens/SignTxEmbed.tsx b/src/screens/SignTxEmbed.tsx index a4f2a84..110648c 100644 --- a/src/screens/SignTxEmbed.tsx +++ b/src/screens/SignTxEmbed.tsx @@ -41,7 +41,6 @@ interface IncomingMessageEventData { } type TransactionDetails = { - requestId: string; source: MessageEventSource; origin: string; signerAddress: string; @@ -72,13 +71,13 @@ export const SignTxEmbed = () => { // Message Handlers const handleGetCosmosAccountsRequest = useCallback(async (event: MessageEvent) => { - const { id, data } = event.data; + const { data } = event.data; const source = event.source as Window; const origin = event.origin; const requestData = data as GetAccountsRequestData; const mnemonic = await getMnemonic(); - console.log(`Received ${REQUEST_COSMOS_ACCOUNTS_DATA}`, id); + console.log(`Received ${REQUEST_COSMOS_ACCOUNTS_DATA}`); try { const requestedNetworkData = networksData.find(networkData => networkData.chainId === requestData.chainId) @@ -103,22 +102,22 @@ export const SignTxEmbed = () => { ); const response: GetAccountsResponse = { accounts: responseAccounts }; - sendMessage(source, COSMOS_ACCOUNTS_RESPONSE, {id, data: response}, origin); + sendMessage(source, COSMOS_ACCOUNTS_RESPONSE, {data: response}, origin); } catch (error: unknown) { console.error(`Error handling ${REQUEST_COSMOS_ACCOUNTS_DATA}:`, error); const errorMsg = error instanceof Error ? error.message : String(error); - sendMessage(source, COSMOS_ACCOUNTS_RESPONSE, { id, error: `Failed to get accounts: ${errorMsg}` }, origin); + sendMessage(source, COSMOS_ACCOUNTS_RESPONSE, { error: `Failed to get accounts: ${errorMsg}` }, origin); } }, [networksData]); const handleSignTxRequest = useCallback(async (event: MessageEvent) => { - const { id, data } = event.data; + const { data } = event.data; const source = event.source as Window; const origin = event.origin; const requestData = data as SignTxRequestData; - console.log(`Received ${REQUEST_SIGN_TX}`, id); + console.log(`Received ${REQUEST_SIGN_TX}`); setIsTxApprovalVisible(false); setTransactionDetails(null); setTxError(null); @@ -150,7 +149,6 @@ export const SignTxEmbed = () => { } setTransactionDetails({ - requestId: id, source: source, origin: origin, signerAddress, @@ -168,13 +166,13 @@ export const SignTxEmbed = () => { console.error(`Error handling ${REQUEST_SIGN_TX}:`, error); const errorMsg = error instanceof Error ? error.message : String(error); - sendMessage(source, id, { error: `Failed to prepare transaction: ${errorMsg}` }, origin); + sendMessage(source, SIGN_TX_RESPONSE, { error: `Failed to prepare transaction: ${errorMsg}` }, origin); setTxError(errorMsg); } }, [networksData]); const handleIncomingMessage = useCallback((event: MessageEvent) => { - if (!event.data || typeof event.data !== 'object' || !event.data.type || !event.data.id || !event.source || event.source === window) { + if (!event.data || typeof event.data !== 'object' || !event.data.type || !event.source || event.source === window) { return; // Basic validation } @@ -212,7 +210,7 @@ export const SignTxEmbed = () => { setIsTxLoading(true); setTxError(null); - const { requestId, source, origin, requestedNetwork, chainId, account, signerAddress, signDoc } = transactionDetails; + const { source, origin, requestedNetwork, chainId, account, signerAddress, signDoc } = transactionDetails; try { const { privKey } = await getPathKey(`${requestedNetwork.namespace}:${chainId}`, account.index); @@ -222,8 +220,8 @@ export const SignTxEmbed = () => { // Perform the actual signing const signResponse = await wallet.signDirect(signerAddress, signDoc); - sendMessage(source as Window, SIGN_TX_RESPONSE, {id: requestId, data: signResponse}, origin); - console.log("Sent signDirect response:", requestId); + sendMessage(source as Window, SIGN_TX_RESPONSE, {data: signResponse}, origin); + console.log("Sent signDirect response"); setIsTxApprovalVisible(false); setTransactionDetails(null); @@ -233,7 +231,7 @@ export const SignTxEmbed = () => { const errorMsg = error instanceof Error ? error.message : String(error); setTxError(errorMsg); - sendMessage(source as Window, SIGN_TX_RESPONSE, {id: requestId, error: `Failed to sign transaction: ${errorMsg}` }, origin); + sendMessage(source as Window, SIGN_TX_RESPONSE, { error: `Failed to sign transaction: ${errorMsg}` }, origin); } finally { setIsTxLoading(false); } @@ -241,10 +239,10 @@ export const SignTxEmbed = () => { const rejectRequestHandler = () => { if (!transactionDetails) return; - const { requestId, source, origin } = transactionDetails; - console.log("Rejecting request:", requestId); + const { source, origin } = transactionDetails; + console.log("Rejecting request"); - sendMessage(source as Window, SIGN_TX_RESPONSE, {id: requestId, error: "User rejected the signature request." }, origin); + sendMessage(source as Window, SIGN_TX_RESPONSE, { error: "User rejected the signature request." }, origin); setIsTxApprovalVisible(false); setTransactionDetails(null); setTxError(null);