dop-stick
Version:
Source control tooling for versionable-upgradeable smart contracts
60 lines ⢠3.21 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.ExecuteUpgradeLogAdapter = void 0;
const terminal_1 = require("../core/terminal");
class ExecuteUpgradeLogAdapter {
startUpgrade(networkInfo) {
this.networkInfo = networkInfo;
terminal_1.Terminal.writeLine('\nš EXECUTING UPGRADE');
terminal_1.Terminal.writeLine('āāāāāāāāāāāāāāāāāāā');
terminal_1.Terminal.writeLine('');
terminal_1.Terminal.writeLine(`Network: ${networkInfo.name}`);
terminal_1.Terminal.writeLine(`ChainId: ${networkInfo.chainId}`);
terminal_1.Terminal.writeLine(`Diamond: ${networkInfo.diamondAddress}`);
terminal_1.Terminal.writeLine('');
}
logPreparation(cuts) {
terminal_1.Terminal.writeLine('Preparing upgrade...');
terminal_1.Terminal.writeLine(terminal_1.Terminal.style(`ā Formatted ${cuts} facet cuts`, terminal_1.Terminal.colors.green));
terminal_1.Terminal.writeLine(terminal_1.Terminal.style('ā Retrieved upgrade service', terminal_1.Terminal.colors.green));
}
logGasEstimate(gas) {
terminal_1.Terminal.writeLine(terminal_1.Terminal.style(`ā Estimated gas: ${formatGas(gas)}`, terminal_1.Terminal.colors.green));
terminal_1.Terminal.writeLine('');
}
startExecution(cuts, functionName = 'diamondCut') {
terminal_1.Terminal.writeLine('Executing diamond cut...');
terminal_1.Terminal.writeLine(terminal_1.Terminal.style('ā Sending transaction', terminal_1.Terminal.colors.yellow));
terminal_1.Terminal.writeLine(`⢠Method: ${functionName}`);
terminal_1.Terminal.writeLine(`⢠Cuts: ${cuts} modules`);
}
logTransactionSent(txHash) {
terminal_1.Terminal.writeLine(`⢠TxHash: ${txHash}`);
}
logConfirmation(blockNumber, gasUsed, cost) {
terminal_1.Terminal.writeLine(terminal_1.Terminal.style(`\nā Transaction confirmed (Block #${blockNumber})`, terminal_1.Terminal.colors.green));
terminal_1.Terminal.writeLine(`⢠Gas used: ${formatGas(gasUsed)}`);
terminal_1.Terminal.writeLine(`⢠Cost: ${cost} ETH`);
}
logError(error, txHash) {
terminal_1.Terminal.writeLine(terminal_1.Terminal.style('\nā Transaction failed', terminal_1.Terminal.colors.red));
terminal_1.Terminal.writeLine(terminal_1.Terminal.style(`⢠Error: ${error}`, terminal_1.Terminal.colors.red));
if (txHash) {
terminal_1.Terminal.writeLine(`⢠TxHash: ${txHash}`);
}
}
logFinalStatus(blockNumber, totalGas, totalCost) {
terminal_1.Terminal.writeLine('\nFinal Status');
terminal_1.Terminal.writeLine(`⢠Block number: ${blockNumber}`);
terminal_1.Terminal.writeLine(`⢠Total gas: ${formatGas(totalGas)}`);
terminal_1.Terminal.writeLine(`⢠Total cost: ${totalCost} ETH`);
}
}
exports.ExecuteUpgradeLogAdapter = ExecuteUpgradeLogAdapter;
// Helper function
function formatGas(gas) {
return gas.gt(1000000) ?
`${(gas.toNumber() / 1000000).toFixed(1)}M` :
`${(gas.toNumber() / 1000).toFixed(1)}K`;
}
//# sourceMappingURL=executeUpgradeLogAdapter.js.map