@relayprotocol/relay-svm-wallet-adapter 17.0.0 → 17.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,5 +1,13 @@
1
1
  import { AddressLookupTableAccount, Connection, PublicKey, TransactionInstruction, TransactionMessage, VersionedTransaction } from '@solana/web3.js';
2
2
  import { LogLevel, getClient } from '@relayprotocol/relay-sdk';
3
+ const BASE58_SIGNATURE_REGEX = /^[1-9A-HJ-NP-Za-km-z]+$/;
4
+ const assertBase58TransactionSignature = (signature) => {
5
+ if (typeof signature !== 'string' ||
6
+ signature.length === 0 ||
7
+ !BASE58_SIGNATURE_REGEX.test(signature)) {
8
+ throw new Error('Invalid Solana signature: expected base58.');
9
+ }
10
+ };
3
11
  /**
4
12
  * Adapts a Solana wallet to work with the Relay SDK
5
13
  * @param walletAddress - The public key address of the Solana wallet
@@ -45,12 +53,15 @@ export const adaptSolanaWallet = (walletAddress, chainId, connection, signAndSen
45
53
  .then((res) => res.value)) ?? []));
46
54
  const transaction = new VersionedTransaction(messageV0);
47
55
  const signature = await signAndSendTransaction(transaction, undefined, instructions, stepItem.data.instructions);
56
+ const transactionSignature = signature?.signature;
57
+ assertBase58TransactionSignature(transactionSignature);
48
58
  client.log(['Transaction Signature obtained', signature], LogLevel.Verbose);
49
- return signature.signature;
59
+ return transactionSignature;
50
60
  },
51
61
  handleConfirmTransactionStep: async (txHash) => {
52
62
  // Solana doesn't have a concept of replaced transactions
53
63
  // So we don't need to handle onReplaced and onCancelled
64
+ assertBase58TransactionSignature(txHash);
54
65
  const { blockhash, lastValidBlockHeight } = await connection.getLatestBlockhash('confirmed');
55
66
  const result = await connection.confirmTransaction({
56
67
  blockhash: blockhash,
@@ -1 +1 @@
1
- {"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../src/adapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../src/adapter.ts"],"names":[],"mappings":"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"}