val userWalletAddress = "SOLANA_ADDRESS"
val transaction = Transaction()
... // transaction manipulation
BloctoSDK.shared.solana.convertToProgramWalletTransaction(
solanaAddress: userWalletAddress) { [weak self] result in
guard let self = self else { return }
case let .success(transaction):
var newTransaction = transaction
// partial sign after transaction converted.
try newTransaction.partialSign(signers: [newAccount])
BloctoSDK.shared.solana.signAndSendTransaction(
transaction: newTransaction) { [weak self] result in
case let .success(txHash):
case let .failure(error):
case let .failure(error):