OsiPad/frontend/src/web3.ts

26 lines
778 B
TypeScript

import { Web3 } from "web3";
import messageBoxArtifacts from "./evm-output/MessageBox.artifacts.json";
import padTokenArtifacts from "./evm-output/PADToken.artifacts.json";
import deployedAddresses from "./evm-output/deployed_addresses.json";
export let web3: Web3;
// https://docs.web3js.org/guides/getting_started/metamask/#react-app
// Check MetaMask is installed
if (window.ethereum) {
// Instantiate Web3 with the injected provider
web3 = new Web3(window.ethereum);
} else {
alert("ERROR: Please download MetaMask.");
}
export const messageBox = new web3!.eth.Contract(
messageBoxArtifacts.abi,
deployedAddresses["MessageBoxModule#MessageBox"]
);
export const padToken = new web3!.eth.Contract(
padTokenArtifacts.abi,
deployedAddresses["MainModule#PADToken"]
);