All files / app/hooks use-create-token-transfer-tx.ts

0% Statements 0/9
100% Branches 0/0
0% Functions 0/1
0% Lines 0/9

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25                                                 
import {
  createStacksPrivateKey,
  getPublicKey,
  makeUnsignedSTXTokenTransfer,
  publicKeyToString,
  TokenTransferOptions,
  TransactionSigner,
} from '@stacks/transactions';
 
interface CreateSoftwareWalletTokenTransferTx {
  privateKey: string;
  txOptions: TokenTransferOptions;
}
export async function createSoftwareWalletTokenTransferTx(
  args: CreateSoftwareWalletTokenTransferTx
) {
  const { privateKey, txOptions } = args;
  const senderKey = createStacksPrivateKey(privateKey);
  const publicKey = publicKeyToString(getPublicKey(senderKey));
  const tx = await makeUnsignedSTXTokenTransfer({ ...txOptions, publicKey });
  const signer = new TransactionSigner(tx);
  signer.signOrigin(senderKey);
  return tx;
}