|
|
|
@ -11,10 +11,14 @@ import { publicProvider } from 'wagmi/providers/public'
|
|
|
|
|
const web3 = new Web3(Web3.givenProvider);
|
|
|
|
|
|
|
|
|
|
import Airdrop from "./Airdrop.json";
|
|
|
|
|
import MagnaToken from "./MagnaToken.json";
|
|
|
|
|
|
|
|
|
|
const airdropAddress = "0xe7f1725E7734CE288F8367e1Bb143E90bb3F0512";
|
|
|
|
|
const airdropContract = new web3.eth.Contract(Airdrop.abi as any, airdropAddress);
|
|
|
|
|
|
|
|
|
|
const magnaTokenAddress = "0x5FbDB2315678afecb367f032d93F642f64180aa3";
|
|
|
|
|
const magnaTokenContract = new web3.eth.Contract(MagnaToken.abi as any, magnaTokenAddress);
|
|
|
|
|
|
|
|
|
|
const { chains, provider, webSocketProvider } = configureChains([mainnet], [publicProvider()]);
|
|
|
|
|
|
|
|
|
|
const wagmiClient = createClient({
|
|
|
|
@ -46,6 +50,7 @@ function Profile() {
|
|
|
|
|
|
|
|
|
|
return (
|
|
|
|
|
<div>
|
|
|
|
|
<div>Connect to Airdrop App</div>
|
|
|
|
|
{connectors.map((connector) => (
|
|
|
|
|
<button
|
|
|
|
|
disabled={!connector.ready}
|
|
|
|
@ -136,9 +141,20 @@ function AddressList({addressList}: AddressListProps) {
|
|
|
|
|
|
|
|
|
|
function App() {
|
|
|
|
|
const [addressList, setAddressList] = useState([]);
|
|
|
|
|
const { address: ownerAddress } = useAccount()
|
|
|
|
|
|
|
|
|
|
async function performAirdrop() {
|
|
|
|
|
console.log("Performing airdrop");
|
|
|
|
|
|
|
|
|
|
console.log(magnaTokenContract.methods);
|
|
|
|
|
|
|
|
|
|
const allowance = await magnaTokenContract.methods.allowance(ownerAddress, airdropAddress).call({ from: ownerAddress });
|
|
|
|
|
console.log(`Allowance: ${allowance}`);
|
|
|
|
|
|
|
|
|
|
if (allowance <= 0) {
|
|
|
|
|
//TODO prompt to set a positive balance
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
return (
|
|
|
|
|