All files / src/connect/tx contract-deploy.ts

66.66% Statements 4/6
100% Branches 0/0
0% Functions 0/1
80% Lines 4/5

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 202x 2x 2x                 2x                
import { ContractDeployTxOptions, ContractDeployTxPayload, TransactionTypes } from './types';
import { signTransactionPayload } from './sign';
import { safeGetPublicKey } from '../common/utils';
 
/**
 * makeContractDeployToken
 *
 * Make a contract deploy transaction token for use with a wallet-based authenticator.
 * @param privateKey
 * @param options
 */
export async function makeContractDeployToken({ privateKey, ...options }: ContractDeployTxOptions) {
  const payload: ContractDeployTxPayload = {
    ...options,
    publicKey: safeGetPublicKey(privateKey),
    txType: TransactionTypes.ContractDeploy,
  };
  return signTransactionPayload(payload, privateKey);
}