Exports a helper class WethHelper
to simplify interactions with the canonical wrapped Ether (WETH9) contract.
Documentation can be found in the docs/
folder.
This section will get you started quickly with the WethHelper
class.
Add the package to your project.
# with yarn
yarn add @habsyr/weth-helper
# with npm
npm i --save @habsyr/weth-helper
Import the helper class into your codebase.
// ES6+ and TypeScript
import { WethHelper } from "@habsyr/weth-helper";
// CommonJS
const { WethHelper } = require("@habsyr/weth-helper");
You must instantiate helper instances with a configured Ethereum provider.
To use in a web3
supported browser, try the following.
const { WethHelper } = require("@habsyr/weth-helper");
(async () => {
await window.ethereum.enable();
const wethHelper = new WethHelper(window.ethereum);
// use any public methods after construction
const one = wethHelper.toBaseUnits(1);
const txId = await wethHelper.wrap(one);
})();
For usage in the server (Node.js), try the following.
const { WethHelper } = require("@habsyr/weth-helper");
const Web3 = require("web3");
const {
ETHEREUM_JSONRPC_URL = "http://localhost:8545",
} = process.env;
const web3 = new Web3(ETHEREUM_JSONRPC_URL);
const wethHelper = new WethHelper(web3.currentProvider);
- Install dependencies (
yarn
) - Build source (
yarn build
) - Lint source (
yarn lint
) - Generate docs (
yarn docs
) - Run tests against Ganache RPC (
yarn test
)
Written by Henry Harder (@hrharder
), 2019.
Contributions and issue reports welcome and encourage.
Please feel free to open an issue or a pull request as needed.