diff --git a/package.json b/package.json index 97984ccf..e7add067 100644 --- a/package.json +++ b/package.json @@ -44,7 +44,7 @@ "@shutter-network/shutter-crypto": "1.0.1", "@snapshot-labs/lock": "^0.2.4", "@snapshot-labs/pineapple": "^1.1.0", - "@snapshot-labs/snapshot.js": "^0.11.17", + "@snapshot-labs/snapshot.js": "^0.11.24", "@vue/apollo-composable": "4.0.0-beta.11", "@vueuse/core": "^10.6.1", "@vueuse/head": "^2.0.0", diff --git a/snapshot-spaces b/snapshot-spaces index 76519fcd..6fbb2064 160000 --- a/snapshot-spaces +++ b/snapshot-spaces @@ -1 +1 @@ -Subproject commit 76519fcd7d97b64da3a49f96f754a1f41f5d5258 +Subproject commit 6fbb206480132ac20c02440c74f6f275c65af038 diff --git a/src/components/ModalAccount.vue b/src/components/ModalAccount.vue index a0bcb615..5c2c8070 100644 --- a/src/components/ModalAccount.vue +++ b/src/components/ModalAccount.vue @@ -17,6 +17,8 @@ const injected = computed(() => getInjected()); const filteredConnectors = computed(() => { const baseConnectors = ['injected', 'walletconnect', 'walletlink']; + // If injected is Coinbase, hide WalletLink + if (injected.value?.name === 'Coinbase') connectors.walletlink.hidden = true; if (isShowingAllConnectors.value) return Object.keys(connectors); return Object.keys(connectors).filter(cId => baseConnectors.includes(cId)); }); diff --git a/src/components/SettingsTreasuriesBlockItemButton.vue b/src/components/SettingsTreasuriesBlockItemButton.vue index 0f40cc10..a33cc902 100644 --- a/src/components/SettingsTreasuriesBlockItemButton.vue +++ b/src/components/SettingsTreasuriesBlockItemButton.vue @@ -2,6 +2,7 @@ import { TreasuryWallet } from '@/helpers/interfaces'; import { Network } from '@/plugins/oSnap/types'; import { ConfigError, getIsOsnapEnabled } from '@/plugins/oSnap/utils/getters'; +import { ConfigError, getIsOsnapEnabled } from '@/plugins/oSnap/utils/getters'; const props = defineProps<{ treasury: TreasuryWallet; @@ -18,6 +19,7 @@ const emit = defineEmits<{ const isOsnapEnabled = ref(false); const isChainSupported = ref(true); +const isChainSupported = ref(true); async function updateIsOsnapEnabled() { if (!props.hasOsnapPlugin) return; @@ -53,7 +55,7 @@ onUnmounted(() => {

{{ treasury.name }}

-
+
diff --git a/src/components/SpaceProposalBoost.vue b/src/components/SpaceProposalBoost.vue index 799831fe..a737c946 100644 --- a/src/components/SpaceProposalBoost.vue +++ b/src/components/SpaceProposalBoost.vue @@ -46,14 +46,24 @@ const newBoostLink = computed(() => ({ const isActive = computed(() => props.proposal.state === 'active'); const isFinal = computed(() => props.proposal.scores_state === 'final'); +const winningChoice = computed(() => { + const maxScore = Math.max(...props.proposal.scores); + const maxScoreCount = props.proposal.scores.filter( + score => score === maxScore + ).length; + return maxScoreCount > 1 ? 0 : props.proposal.scores.indexOf(maxScore) + 1; +}); + function isEligible(boost: BoostSubgraph) { + const type = boost.strategy.eligibility.type; const choice = boost.strategy.eligibility.choice; if (!web3Account.value) return false; - if (props.proposal.privacy === 'shutter' && !isFinal.value) return false; + if (!isFinal.value) return false; if (!userVote.value) return false; - if (choice === null) return true; - + if (type === 'prediction') + return userVote.value.choice.toString() === winningChoice.value.toString(); + if (type === 'incentive' && choice === null) return true; return userVote.value.choice.toString() === choice; } diff --git a/src/components/SpaceProposalBoostClaimModalItem.vue b/src/components/SpaceProposalBoostClaimModalItem.vue index 08bace57..7b48b006 100644 --- a/src/components/SpaceProposalBoostClaimModalItem.vue +++ b/src/components/SpaceProposalBoostClaimModalItem.vue @@ -32,10 +32,7 @@ const reward = computed(() => { props.boost.token.decimals ); - return formatNumber( - Number(amountDecimal), - getNumberFormatter({ maximumFractionDigits: 8 }).value - ); + return amountDecimal; }); const claim = computed(() => { @@ -84,7 +81,13 @@ async function handleClaimAndReload() { {{ hasClaimed ? 'Claimed' : 'Reward' }} - {{ reward }} {{ props.boost.token.symbol }} + {{ + formatNumber( + Number(reward), + getNumberFormatter({ maximumFractionDigits: 8 }).value + ) + }} + {{ props.boost.token.symbol }}
{
-