rounds implemented + over all improvements

This commit is contained in:
EmberSpirit
2023-07-10 21:18:05 +02:00
parent 86f4e97f23
commit 9565f494ea
12 changed files with 350 additions and 127 deletions
+82 -51
View File
@@ -11,20 +11,18 @@ import { useContractStore } from "@/stores/contracts";
import { useMemeburnerStore } from "@/stores/memeburner";
import { useRewardLockerStore } from "@/stores/rewardlocker";
import { useMultiCallStore } from "@/stores/multicall";
import { useRoundsStore } from "@/stores/rounds";
const tokenStore = useTokenStore();
const contractStore = useContractStore();
const memeBurnerStore = useMemeburnerStore();
const rewardLockerStore = useRewardLockerStore();
const multiCallStore = useMultiCallStore();
const { memeBurner } = storeToRefs(tokenStore);
const roundsStore = useRoundsStore();
const { memeBurner, token } = storeToRefs(tokenStore);
const { list } = storeToRefs(contractStore);
const isMobile = ref(false);
isMobile.value = isMobileFunc();
onMounted(() => {
window.addEventListener("resize", handleWindowSizeChange);
handleWindowSizeChange();
});
let subscription;
onUnmounted(() => {
window.removeEventListener("resize", handleWindowSizeChange);
});
@@ -43,74 +41,107 @@ function isMobileFunc() {
provide("isMobile", isMobile);
onMounted(async () => {
window.addEventListener("resize", handleWindowSizeChange);
handleWindowSizeChange();
//more or less tests
var test = await walletStore.isConnected();
console.log("test", test);
let web3 = new Web3("https://eth-goerli.g.alchemy.com/v2/0-W9tOm6v_QP1PfRV8RuBCpWr-qoEbkN");
let web3socket = new Web3(
new Web3.providers.WebsocketProvider("wss://eth-goerli.g.alchemy.com/v2/0-W9tOm6v_QP1PfRV8RuBCpWr-qoEbkN")
);
console.log("web3socket", web3socket);
//init
walletStore.web3 = web3;
const contract = new web3.eth.Contract(memeBurner.value.config.abi, memeBurner.value.config.contractAddress);
// const contract = new web3.eth.Contract(memeBurner.value.config.abi, memeBurner.value.config.contractAddress);
list.value.memeBurnerPublic = new web3.eth.Contract(
memeBurner.value.config.abi,
memeBurner.value.config.contractAddress
);
//Memeburner Contract
memeBurnerStore.contract = new web3.eth.Contract(
memeBurnerStore.config.abi,
memeBurnerStore.config.contractAddress
);
var getGoal = await memeBurnerStore.getGoal(1);
var getSacrificedMeme1 = await memeBurnerStore.getSacrificedMeme(1, "0x4435ABC578136e2Eca50b5EFf950F17CAF42485b");
var getSacrificedMeme2 = await memeBurnerStore.getSacrificedMeme(1, "0xa0B7b2a78dF87eDc70736f7ED9D40d86c37B533F");
var blub1 = (getSacrificedMeme1.amountAchieved / getGoal) * 100;
var blub2 = (getSacrificedMeme2.amountAchieved / getGoal) * 100;
// var testabc = await memeBurnerStore.contract.methods
// .getSacrificedMeme(1, "0x4435ABC578136e2Eca50b5EFf950F17CAF42485b")
// .call();
// console.log("testabc", testabc);
memeBurnerStore.contract = new web3.eth.Contract(
memeBurnerStore.config.abi,
memeBurnerStore.config.contractAddress
);
// var data = await memeBurnerStore.getSacrificedRound(1);
// console.log("data", data);
// console.log("blub1", blub1);
// console.log("blub2", blub2);
// console.log("getSacrificedMeme", getSacrificedMeme1.amountAchieved);
// console.log("getGoal", getGoal);
// console.log("memeBurnerStore.contract", memeBurnerStore.contract);
// console.log("list", list.value);
// const rounds = await contract.methods.rounds("0x0e349D42C125acA39ea58024FFC23ED0fE5feE32").call();
// console.log("rounds", rounds);
var testabc = await memeBurnerStore.contract.methods
.getSacrificedMeme(1, "0x4435ABC578136e2Eca50b5EFf950F17CAF42485b")
.call();
console.log("testabc", testabc);
// var claim = await rewardLockerStore.getTotalRewardsOf("0x60dd9D0e015115b9aEf61bEDCcBE1390CEEfC247", [1]);
// console.log("claim", claim);
multiCallStore.contract = new web3.eth.Contract(multiCallStore.config.abi, multiCallStore.config.contractAddress);
var data = await memeBurnerStore.getSacrificedRound(1);
console.log("data", data);
memeBurnerStore.contract = new web3.eth.Contract(
memeBurnerStore.config.abi,
memeBurnerStore.config.contractAddress
);
console.log("blub1", blub1);
console.log("blub2", blub2);
console.log("getSacrificedMeme", getSacrificedMeme1.amountAchieved);
console.log("getGoal", getGoal);
console.log("memeBurnerStore.contract", memeBurnerStore.contract);
console.log("list", list.value);
const currentRound = await memeBurnerStore.getCurrentRound();
const rounds = await contract.methods.rounds("0x0e349D42C125acA39ea58024FFC23ED0fE5feE32").call();
console.log("currentRound", currentRound);
console.log("rounds", rounds);
// var lastCompletedRound = await rewardLockerStore.lastCompletedRound();
// console.log("lastCompletedRound", lastCompletedRound);
// var getwards = await rewardLockerStore.getRewards(
// "0x60dd9D0e015115b9aEf61bEDCcBE1390CEEfC247",
// 1,
// "0x4435ABC578136e2Eca50b5EFf950F17CAF42485b"
// );
// console.log("getwards", getwards);
//contracts
rewardLockerStore.contract = new web3.eth.Contract(
rewardLockerStore.config.abi,
rewardLockerStore.config.contractAddress
);
var lastCompletedRound = await rewardLockerStore.lastCompletedRound();
console.log("lastCompletedRound", lastCompletedRound);
var getwards = await rewardLockerStore.getRewards(
walletStore.address,
1,
"0x4435ABC578136e2Eca50b5EFf950F17CAF42485b"
memeBurnerStore.contract = new web3.eth.Contract(
memeBurnerStore.config.abi,
memeBurnerStore.config.contractAddress
);
console.log("getwards", getwards);
tokenStore.memeToken.contract = new web3.eth.Contract(
tokenStore.memeToken.config.abi,
tokenStore.memeToken.config.contractAddress
);
const websocketMemeBurner = new web3socket.eth.Contract(
memeBurnerStore.config.abi,
memeBurnerStore.config.contractAddress
);
multiCallStore.contract = new web3.eth.Contract(multiCallStore.config.abi, multiCallStore.config.contractAddress);
//init
roundsStore.currentRound = parseInt(await memeBurnerStore.getCurrentRound());
console.log("roundsStore.currentRound", roundsStore.currentRound);
roundsStore.activeRound = roundsStore.currentRound;
await roundsStore.fillRound(roundsStore.activeRound);
tokenStore.memeToken.decimals = parseInt(await tokenStore.memeToken.contract.methods.decimals().call());
for (let index = 0; index < token.value.length; index++) {
const _token = token.value[index];
_token.contract = new web3.eth.Contract(_token.abi, _token.contractAddress);
_token.decimals = parseInt(await _token.contract.methods.decimals().call());
}
console.log("token123", token.value);
//events
// var bleb = roundsStore.rounds[roundsStore.currentRound].find(
// (obj) => obj.contractAddress === "0x4435ABC578136e2Eca50b5EFf950F17CAF42485b"
// );
// console.log("roundsStore.rounds[roundsStore.currentRound]", bleb);
websocketMemeBurner.events
.MemeSacrificed()
.on("data", async (event) => {
console.log("sacrificedAmount", event.returnValues.sacrificedAmount);
console.log("sacrificedToken", event.returnValues.sacrificedToken);
await roundsStore.updateCurrentRound(
event.returnValues.sacrificedToken,
event.returnValues.sacrificedAmount
);
})
.on("error", (error) => console.log("MemeSacrificederror", error));
});
</script>