Skip to content

Commit

Permalink
refactor sendTransaction
Browse files Browse the repository at this point in the history
  • Loading branch information
chuckbergeron committed Aug 10, 2023
1 parent 0f365aa commit 3e768b9
Showing 1 changed file with 23 additions and 42 deletions.
65 changes: 23 additions & 42 deletions packages/library/src/drawAuction.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { ethers, BigNumber, Contract } from 'ethers';
import { ethers, BigNumber, Contract, PopulatedTransaction } from 'ethers';
import { Provider } from '@ethersproject/providers';
import { ContractsBlob, getContract } from '@generationsoftware/pt-v5-utils-js';
import { DefenderRelaySigner } from 'defender-relay-client/lib/ethers';
Expand Down Expand Up @@ -451,65 +451,46 @@ const sendTransaction = async (
auctionContracts: AuctionContracts,
params: DrawAuctionConfigParams,
) => {
if (selectedContract === RNG_AUCTION_KEY) {
console.log(chalk.yellow(`Submitting transaction:`));
console.log(chalk.green(`Execute RngAuction#startRngRequest`));
printSpacer();
const isPrivate = canUseIsPrivate(params.chainId, params.useFlashbots);
console.log(chalk.green.bold(`Flashbots (Private transaction) support:`, isPrivate));
printSpacer();

const isPrivate = canUseIsPrivate(params.chainId, params.useFlashbots);
console.log(chalk.yellow(`Submitting transaction:`));

console.log(chalk.green.bold(`Flashbots (Private transaction) support:`, isPrivate));
let populatedTx: PopulatedTransaction;
if (selectedContract === RNG_AUCTION_KEY) {
console.log(chalk.green(`Execute RngAuction#startRngRequest`));
printSpacer();

const startRngRequestTxParams = buildStartRngRequestParams(params.rewardRecipient);
const populatedTx =
await auctionContracts.rngAuctionContract.populateTransaction.startRngRequest(
...Object.values(startRngRequestTxParams),
);

console.log(chalk.greenBright.bold(`Sending transaction ...`));
const tx = await relayer.sendTransaction({
isPrivate,
data: populatedTx.data,
to: populatedTx.to,
gasLimit: 8000000,
});

console.log(chalk.greenBright.bold('Transaction sent! ✔'));
console.log(chalk.blueBright.bold('Transaction hash:', tx.hash));

return tx;
populatedTx = await auctionContracts.rngAuctionContract.populateTransaction.startRngRequest(
...Object.values(startRngRequestTxParams),
);
} else {
console.log(chalk.yellow(`Submitting transaction:`));
console.log(chalk.green(`Execute RngAuctionRelayerDirect#relay`));
printSpacer();

const isPrivate = canUseIsPrivate(params.chainId, params.useFlashbots);

console.log(chalk.green.bold(`Flashbots (Private transaction) support:`, isPrivate));
printSpacer();

const relayTxParams = buildRelayParams(
auctionContracts.rngRelayAuctionContract.address,
params.rewardRecipient,
);
const populatedTx = await auctionContracts.rngAuctionRelayerDirect.populateTransaction.relay(
populatedTx = await auctionContracts.rngAuctionRelayerDirect.populateTransaction.relay(
...Object.values(relayTxParams),
);
}

console.log(chalk.greenBright.bold(`Sending transaction ...`));
const tx = await relayer.sendTransaction({
isPrivate,
data: populatedTx.data,
to: populatedTx.to,
gasLimit: 8000000,
});
console.log(chalk.greenBright.bold(`Sending transaction ...`));
const tx = await relayer.sendTransaction({
isPrivate,
data: populatedTx.data,
to: populatedTx.to,
gasLimit: 8000000,
});

console.log(chalk.greenBright.bold('Transaction sent! ✔'));
console.log(chalk.blueBright.bold('Transaction hash:', tx.hash));
console.log(chalk.greenBright.bold('Transaction sent! ✔'));
console.log(chalk.blueBright.bold('Transaction hash:', tx.hash));

return tx;
}
return tx;
};

const optionallyIncreaseRngFeeAllowance = async (
Expand Down

0 comments on commit 3e768b9

Please sign in to comment.