diff --git a/.changeset/fair-goats-glow.md b/.changeset/fair-goats-glow.md new file mode 100644 index 000000000..b7d83f522 --- /dev/null +++ b/.changeset/fair-goats-glow.md @@ -0,0 +1,5 @@ +--- +"@sovryn/contracts": patch +--- + +Add StakingRewardsOS contract on BOB diff --git a/.changeset/tasty-radios-retire.md b/.changeset/tasty-radios-retire.md new file mode 100644 index 000000000..95b7050f9 --- /dev/null +++ b/.changeset/tasty-radios-retire.md @@ -0,0 +1,5 @@ +--- +"frontend": patch +--- + +General POWA & Spice updates diff --git a/apps/frontend/src/app/5_pages/LandingPage/components/QuickLaunch/QuickLaunch.tsx b/apps/frontend/src/app/5_pages/LandingPage/components/QuickLaunch/QuickLaunch.tsx index ffdd7d006..1b5e038f9 100644 --- a/apps/frontend/src/app/5_pages/LandingPage/components/QuickLaunch/QuickLaunch.tsx +++ b/apps/frontend/src/app/5_pages/LandingPage/components/QuickLaunch/QuickLaunch.tsx @@ -99,7 +99,6 @@ export const QuickLaunch: FC = () => { url: () => navigate('/convert'), backgroundImage: runesBg, chains: [Chains.BOB], - disable: true, }, { title: t(pageTranslations.quickLaunch.earnYield_BOB.title), diff --git a/apps/frontend/src/app/5_pages/RewardsPage/hooks/useGetLiquidOsSovClaimAmount.ts b/apps/frontend/src/app/5_pages/RewardsPage/hooks/useGetLiquidOsSovClaimAmount.ts index ded8a48a3..44ee2d382 100644 --- a/apps/frontend/src/app/5_pages/RewardsPage/hooks/useGetLiquidOsSovClaimAmount.ts +++ b/apps/frontend/src/app/5_pages/RewardsPage/hooks/useGetLiquidOsSovClaimAmount.ts @@ -4,6 +4,7 @@ import { Decimal } from '@sovryn/utils'; import { MS } from '../../../../constants/general'; import { useAccount } from '../../../../hooks/useAccount'; +import { useCurrentChain } from '../../../../hooks/useChainStore'; import { useGetProtocolContract } from '../../../../hooks/useGetContract'; import { useGetLockDate } from '../../StakePage/components/StakesFrame/hooks/useGetLockDate'; @@ -15,7 +16,8 @@ export const useGetLiquidOsSovClaimAmount = () => { }); const { account } = useAccount(); - const stakingRewardsOs = useGetProtocolContract('stakingRewardsOs'); + const chainId = useCurrentChain(); + const stakingRewardsOs = useGetProtocolContract('stakingRewardsOs', chainId); const now = useMemo(() => Math.ceil(Date.now() / MS), []); const { lockDate } = useGetLockDate(now); diff --git a/apps/frontend/src/locales/en/translations.json b/apps/frontend/src/locales/en/translations.json index 0b415a56f..f8425e12d 100644 --- a/apps/frontend/src/locales/en/translations.json +++ b/apps/frontend/src/locales/en/translations.json @@ -506,7 +506,7 @@ "runes_BOB": { "title": "Trade Runes", "description": "The hottest tokens now trading on Sovryn.", - "action": "Coming soon" + "action": "Trade Runes" }, "earnYield_BOB": { "title": "Passive Yield", @@ -537,8 +537,8 @@ "cta": "Learn More" }, "runesBridge": { - "title": "RUNES ARE COMING", - "description": "Runes will soon be tradeable on mainnet! Runes bridge is being prepared to go live. Stay tuned!", + "title": "RUNES ARE HERE!", + "description": "Runes are now tradeable on mainnet! Runes bridge is live!", "cta": "Learn more about Runes" }, "sovrynIsLiveOnBob": { @@ -1008,14 +1008,14 @@ "meta": { "title": "Extra Spice & Runes Leaderboard - Sovryn" }, - "title": "Extra Spice & Runes Leaderboard", + "title": "Extra Spice & Runes Season 1 Leaderboard", "claimWarning": "Please note that users claiming from the distributor contract prior to <0>2024-05-31 12:00:00 UTC will not be eligible to Extra Spice, and claiming prior to <1>2024-06-30 12:00:00 UTC will not be eligible to Rune points.", "aboutCampaign": "About Extra Spice and Runes campaign", "claimLp": "Claim LP tokens", "connectWalletText": "Connect your wallet to see how many points you’ve got.", "connectWalletCta": "Connect wallet", "table": { - "leaderboard": "Leaderboard", + "leaderboard": "Season 1 Leaderboard", "yourPosition": "Your position", "participant": "Participant", "balance": "Balance", @@ -1959,10 +1959,10 @@ "longDescription": "Your deposits were transferred into the Sovryn AMM pools on BOB. Deposit represents 50% of the value of your original token and 50% in SOV. Trading fees will begin accruing immediately.", "eSovDescription": "For eSOV Depositors:
If you deposited eSOV via Sovryn’s referral link, please move your eSOV to BOB and stake them in Sovryn on BOB. This action must be done by <0>2024-05-16 12:00:00 UTC to be eligible for Extra Spice. <1>Read more", "claimWarning": "Please note that users claiming from the distributor contract prior to <0>2024-05-31 12:00:00 UTC will not be eligible to Extra Spice, and claiming prior to <1>2024-06-30 12:00:00 UTC will not be eligible to Rune points.", - "checkLeaderboard": "Check leaderboard", + "checkLeaderboard": "Check Season 1 leaderboard", "disclaimer": "I understand that by claiming deposits now I will lose eligibility for the additional rewards", "descriptionValues": { - "amm": "Marked Making page" + "amm": "Market Making page" }, "originalDeposit": "Original deposit", "claimableTitle": "AMM pool", diff --git a/packages/contracts/src/contracts/protocol/bob.ts b/packages/contracts/src/contracts/protocol/bob.ts index 0f58b995c..3a0868e93 100644 --- a/packages/contracts/src/contracts/protocol/bob.ts +++ b/packages/contracts/src/contracts/protocol/bob.ts @@ -10,6 +10,11 @@ export const bob: Record = { getAbi: async () => (await import('../../abis/merkleDistributor.json')).default, }, + stakingRewardsOs: { + address: '0xFdC57Cb52264209afd1559E7E3Db0F28351E9422', + getAbi: async () => + (await import('../../abis/StakingRewardsOs.json')).default, + }, runeBridge: { address: '0x8989E07E565966463C73dadE4c095DaC991e1dD2', getAbi: async () => (await import('../../abis/RuneBridge.json')).default, diff --git a/packages/contracts/src/contracts/protocol/bobTestnet.ts b/packages/contracts/src/contracts/protocol/bobTestnet.ts index 8f7658a7d..52a281016 100644 --- a/packages/contracts/src/contracts/protocol/bobTestnet.ts +++ b/packages/contracts/src/contracts/protocol/bobTestnet.ts @@ -6,10 +6,15 @@ export const bobTestnet: Record = { getAbi: async () => (await import('../../abis/staking.json')).default, }, merkleDistributor: { - address: '0x0', // todo: update address + address: '0x0', getAbi: async () => (await import('../../abis/merkleDistributor.json')).default, }, + stakingRewardsOs: { + address: '0x0', + getAbi: async () => + (await import('../../abis/StakingRewardsOs.json')).default, + }, runeBridge: { address: '0x9d451acb7A7f98dc4F2d2A2aA1A0b0436f0Effdb', getAbi: async () => (await import('../../abis/RuneBridge.json')).default,