Context
The code-base uses both web3 (i.e.: here, here and here) and ethers.js method, and as mentioned here we should converge towards consistently using ethers.js. In the process, I think it'd be valuable to make the code more flexible should we swap tools again in the future.
Proposal
create wrapper/adapter class that will encapsulate all the recurring web3.js/ethers.js methods so that the consumers (tests, scripts etc.) are not directly exposed to the dependencies
use ethers.js methods within the wrapper/adapter entity
replace the occurrences of web3/ethers.js methods with the corresponding methods in the wrapper entity
remove web3-related dependencies from the code (tests, scripts, package.json etc.)
Context The code-base uses both web3 (i.e.: here, here and here) and ethers.js method, and as mentioned here we should converge towards consistently using ethers.js. In the process, I think it'd be valuable to make the code more flexible should we swap tools again in the future.
Proposal