Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- async sendSolanaTransaction(params: {
- walletAddress: string;
- walletId: string;
- tokenAddress?: string;
- to: string;
- amount: bigint;
- isNative: boolean;
- }): Promise<{ hash: string; status: 'success' | 'failed' }> {
- try {
- const transaction = await solanaService.preparePrivyTransaction({
- senderAddress: params.walletAddress,
- recipientAddress: params.to,
- tokenMint: params.tokenAddress,
- amount: params.amount,
- isNative: params.isNative,
- });
- const response =
- await this.client.walletApi.solana.signAndSendTransaction({
- walletId: params.walletId,
- caip2: 'solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp',
- transaction,
- });
- if (!response || !response.hash) {
- throw new Error('No transaction hash received');
- }
- return {
- hash: response.hash,
- status: 'success',
- };
- } catch (error) {
- console.error('❌ Error sending Solana transaction:', error);
- throw error;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment