sendTransaction method

Submits, approves, and waits for confirmation of a Solana transaction. Accepts a serialized transaction (base64 or base58); the SDK applies the active signer and returns the final CrossmintTransactionDetails.

Implementation

Future<CrossmintTransactionDetails> sendTransaction(
  CrossmintSolanaTransactionRequest request,
) async {
  await preAuthIfNeeded();
  final CrossmintWalletApprovalSigner activeSigner = requireActiveSigner(
    'send Solana transactions',
  );
  final CrossmintTransactionDetails created = await client.wallets
      .createSolanaTransaction(
        walletId: locator,
        request: CrossmintSolanaTransactionRequest(
          serializedTransaction: request.serializedTransaction,
          signerLocator: request.signerLocator ?? activeSigner.locator,
          raw: request.raw,
        ),
      );
  return approveTransactionAndWait(created.id, seedTransaction: created);
}