rounds implemented + over all improvements
This commit is contained in:
+37
-11
@@ -4,6 +4,7 @@ import { useWalletStore } from "./wallet";
|
||||
import { useContractStore } from "./contracts";
|
||||
import Meme1Json from "@/assets/contracts/Meme1.json";
|
||||
import Meme2Json from "@/assets/contracts/Meme2.json";
|
||||
import MemeToken from "@/assets/contracts/MemeToken.json";
|
||||
import MemeBurnerJson from "@/assets/contracts/MemeBurner.json";
|
||||
|
||||
export const useTokenStore = defineStore("token", {
|
||||
@@ -19,7 +20,7 @@ export const useTokenStore = defineStore("token", {
|
||||
},
|
||||
backgroundColor: "#4b8501",
|
||||
abi: Meme1Json.abi,
|
||||
contractAddress: Meme1Json.contractAddress,
|
||||
contractAddress: Meme1Json.contractAddress,
|
||||
},
|
||||
{
|
||||
name: "$SHIB",
|
||||
@@ -52,6 +53,12 @@ export const useTokenStore = defineStore("token", {
|
||||
allowance: null,
|
||||
},
|
||||
loading: false,
|
||||
memeToken: {
|
||||
config: {
|
||||
abi: MemeToken.abi,
|
||||
contractAddress: MemeToken.contractAddress
|
||||
}
|
||||
},
|
||||
memeBurner: {
|
||||
config: MemeBurnerJson,
|
||||
contract: null,
|
||||
@@ -76,30 +83,49 @@ export const useTokenStore = defineStore("token", {
|
||||
.allowance(walletStore.address, MemeBurnerJson.contractAddress)
|
||||
.call();
|
||||
console.log("allowance", allowance);
|
||||
var decimals = await this.contract.methods.decimals().call();
|
||||
console.log("decimals", decimals);
|
||||
return allowance;
|
||||
},
|
||||
async approveToken(amount) {
|
||||
const walletStore = useWalletStore();
|
||||
this.loading = true;
|
||||
var approve = await this.contract.methods
|
||||
.approve(this.memeBurner.config.contractAddress, amount)
|
||||
.send({ from: walletStore.address });
|
||||
console.log("approve", approve);
|
||||
this.loading = false;
|
||||
return approve;
|
||||
try {
|
||||
console.log("amount", amount);
|
||||
this.loading = true;
|
||||
const walletStore = useWalletStore();
|
||||
var approve = await this.contract.methods
|
||||
.approve(this.memeBurner.config.contractAddress, amount)
|
||||
.send({ from: walletStore.address });
|
||||
//todo parameter value übergeben in eth web3.utils.toHex(web3.utils.toWei(amount, 'ether'))
|
||||
|
||||
// .send({ from: walletStore.address, value: 0.5 });
|
||||
console.log("approve", approve);
|
||||
this.activeToken.allowance = await this.allowance();
|
||||
return approve;
|
||||
} catch (error) {
|
||||
console.error(error);
|
||||
} finally {
|
||||
this.loading = false;
|
||||
}
|
||||
},
|
||||
async sacrificeToken(amount) {
|
||||
try {
|
||||
console.log("amount", amount);
|
||||
if (!amount || amount == 0) {
|
||||
//todo error
|
||||
console.error("amount is 0 or null or undefined");
|
||||
return;
|
||||
}
|
||||
this.loading = true;
|
||||
console.log("this.activeToken.", this.activeToken.contractAddress);
|
||||
const walletStore = useWalletStore();
|
||||
console.log("walletStore.address", walletStore.address);
|
||||
var reward = await this.memeBurner.contract.methods
|
||||
.sacrificeMeme(this.activeToken.contractAddress, "400000000000000000")
|
||||
.sacrificeMeme(this.activeToken.contractAddress, amount)
|
||||
.send({ from: walletStore.address });
|
||||
console.log("reward", reward);
|
||||
this.activeToken.allowance = await this.allowance();
|
||||
} catch (error) {
|
||||
error.log(error);
|
||||
console.error(error);
|
||||
} finally {
|
||||
this.loading = false;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user