diff --git a/web/app.fluidity.money/app/queries/useHighestRewardStatistics.ts b/web/app.fluidity.money/app/queries/useHighestRewardStatistics.ts index 9bca3f9c5..05d007bdf 100644 --- a/web/app.fluidity.money/app/queries/useHighestRewardStatistics.ts +++ b/web/app.fluidity.money/app/queries/useHighestRewardStatistics.ts @@ -71,7 +71,7 @@ type HighestRewardByNetworkBody = { }; const useHighestRewardStatisticsByNetwork = async (network: string) => { - if (network !== "ethereum" && network !== "arbitrum") { + if (network !== "arbitrum") { throw Error(`network ${network} not supported`); } diff --git a/web/app.fluidity.money/app/queries/useUserActionsAggregate.ts b/web/app.fluidity.money/app/queries/useUserActionsAggregate.ts index 1fb1dd023..9a2349abe 100644 --- a/web/app.fluidity.money/app/queries/useUserActionsAggregate.ts +++ b/web/app.fluidity.money/app/queries/useUserActionsAggregate.ts @@ -111,33 +111,26 @@ const queryAll: Queryable = { } `, solana: gql` - query userActionsAggregateAll( - $offset: Int = 0, - $limit: Int = 12, - ) { - solana: user_transactions_aggregate( - args: { - network_: "solana", - limit_: $limit, - offset_: $offset + query userActionsAggregateAll($offset: Int = 0, $limit: Int = 12) { + solana: user_transactions_aggregate( + args: { network_: "solana", limit_: $limit, offset_: $offset } + ) { + value: amount + receiver: recipient_address + rewardHash: reward_hash + sender: sender_address + hash: transaction_hash + utility_amount + utility_name + winner: winning_address + reward: winning_amount + application + currency + timestamp: time + swap_in + type } - ) { - value: amount - receiver: recipient_address - rewardHash: reward_hash - sender: sender_address - hash: transaction_hash - utility_amount - utility_name - winner: winning_address - reward: winning_amount - application - currency - timestamp: time - swap_in - type } - } `, }; diff --git a/web/app.fluidity.money/app/queries/useUserRewards.spec.ts b/web/app.fluidity.money/app/queries/useUserRewards.spec.ts index 1dcf6def5..44d06063a 100644 --- a/web/app.fluidity.money/app/queries/useUserRewards.spec.ts +++ b/web/app.fluidity.money/app/queries/useUserRewards.spec.ts @@ -8,7 +8,7 @@ beforeAll(() => { describe("useUserRewards successfully runs", () => { it("should return a valid response", async () => { const response = await useUserRewardsByAddress( - "ethereum", + "arbitrum", "0xeb6b882a295d316ac62c8cfcc81c3e37c084b7c5" ); expect(response).toBeDefined(); diff --git a/web/app.fluidity.money/app/queries/useUserRewards.ts b/web/app.fluidity.money/app/queries/useUserRewards.ts index 6fbf5fcf3..06654c913 100644 --- a/web/app.fluidity.money/app/queries/useUserRewards.ts +++ b/web/app.fluidity.money/app/queries/useUserRewards.ts @@ -59,7 +59,6 @@ const queryWinnersAllSolana = gql` `; const queryWinnersAll: { [network in Chain]: string } = { - ethereum: queryWinnersAll_, arbitrum: queryWinnersAll_, polygon_zk: queryWinnersAll_, solana: queryWinnersAllSolana, @@ -118,7 +117,6 @@ const queryWinnersByAddressSolana = gql` `; const queryWinnersByAddress: { [network in Chain]: string } = { - ethereum: queryWinnersByAddress_, arbitrum: queryWinnersByAddress_, polygon_zk: queryWinnersByAddress_, solana: queryWinnersByAddressSolana, diff --git a/web/app.fluidity.money/app/queries/useUserTransactions.ts b/web/app.fluidity.money/app/queries/useUserTransactions.ts index 2cb40e39d..34d76ff5e 100644 --- a/web/app.fluidity.money/app/queries/useUserTransactions.ts +++ b/web/app.fluidity.money/app/queries/useUserTransactions.ts @@ -13,47 +13,6 @@ import { import { MintAddress } from "~/types/MintAddress"; const queryByAddress: Queryable = { - ethereum: gql` - query getTransactionsByAddress( - $tokens: [String!] - $address: String! - $offset: Int = 0 - $filterHashes: [String!] = [] - $limit: Int = 12 - ) { - ethereum { - transfers( - currency: { in: $tokens } - any: [{ sender: { is: $address } }, { receiver: { is: $address } }] - options: { - desc: "block.timestamp.unixtime" - limit: $limit - offset: $offset - } - ) { - sender { - address - } - receiver { - address - } - amount - currency { - symbol - } - transaction(txHash: { notIn: $filterHashes }) { - hash - } - block { - timestamp { - unixtime - } - } - } - } - } - `, - arbitrum: gql` query getTransactionsByAddress( $address: String! @@ -164,71 +123,6 @@ const queryByAddress: Queryable = { }; const queryByTxHash: Queryable = { - ethereum: gql` - query getTransactionsByTxHash( - $transactions: [String!] - $filterHashes: [String!] = [] - $tokens: [String!] = [] - $limit: Int = 12 - ) { - ethereum { - transfers( - options: { desc: "block.timestamp.unixtime", limit: $limit } - txHash: { in: $transactions } - currency: { in: $tokens } - ) { - sender { - address - } - receiver { - address - } - amount - currency { - symbol - } - transaction(txHash: { notIn: $filterHashes }) { - hash - } - block { - timestamp { - unixtime - } - } - } - } - } - `, - - arbitrum: gql` - query getTransactionsByTxHash( - $transactions: [String!] - $filterHashes: [String!] = [] - $limit: Int = 12 - ) { - transfers: user_actions( - where: { - network: { _eq: "arbitrum" } - _not: { transaction_hash: { _in: $filterHashes } } - transaction_hash: { _in: $transactions } - } - order_by: { time: desc } - limit: $limit - ) { - sender_address - recipient_address - token_short_name - time - transaction_hash - amount - token_decimals - type - swap_in - application - } - } - `, - solana: gql` query getTransactionsByTxHash( $transactions: [String!] @@ -289,45 +183,6 @@ const queryByTxHash: Queryable = { }; const queryAll: Queryable = { - ethereum: gql` - query getTransactions( - $tokens: [String!] - $offset: Int = 0 - $filterHashes: [String!] = [] - $limit: Int = 12 - ) { - ethereum { - transfers( - currency: { in: $tokens } - options: { - desc: "block.timestamp.unixtime" - limit: $limit - offset: $offset - } - ) { - sender { - address - } - receiver { - address - } - amount - currency { - symbol - } - transaction(txHash: { notIn: $filterHashes }) { - hash - } - block { - timestamp { - unixtime - } - } - } - } - } - `, - arbitrum: gql` query getTransactions( $offset: Int = 0 @@ -468,26 +323,6 @@ export type UserTransaction = { application: string; }; -type BitqueryUserTransaction = { - sender: { - address: string; - }; - receiver: { address: string }; - block: { timestamp: { unixtime: number } }; - transaction: { hash: string }; - amount: number; - currency: { symbol: string }; -}; - -type BitqueryUserTransactionRes = { - data?: { - [network: string]: { - transfers: BitqueryUserTransaction[]; - }; - }; - errors?: unknown; -}; - type HasuraUserTransaction = { sender_address: string; recipient_address: string; @@ -541,21 +376,13 @@ const useUserTransactionsByAddress = async ( errors: `Failed to fetch GraphQL URL and headers for network ${network}`, }; - const result = - networkGqlBackend(network) === "hasura" - ? parseHasuraUserTransactions( - await jsonPost< - UserTransactionsByAddressBody, - HasuraUserTransactionRes - >(url, body, headers) - ) - : parseBitqueryUserTransactions( - await jsonPost< - UserTransactionsByAddressBody, - BitqueryUserTransactionRes - >(url, body, headers), - network - ); + const result = parseHasuraUserTransactions( + await jsonPost( + url, + body, + headers + ) + ); return result; }; @@ -586,21 +413,13 @@ const useUserTransactionsByTxHash = async ( errors: `Failed to fetch GraphQL URL and headers for network ${network}`, }; - const result = - networkGqlBackend(network) === "hasura" - ? parseHasuraUserTransactions( - await jsonPost< - UserTransactionsByTxHashBody, - HasuraUserTransactionRes - >(url, body, headers) - ) - : parseBitqueryUserTransactions( - await jsonPost< - UserTransactionsByTxHashBody, - BitqueryUserTransactionRes - >(url, body, headers), - network - ); + const result = parseHasuraUserTransactions( + await jsonPost( + url, + body, + headers + ) + ); return result; }; @@ -638,23 +457,13 @@ const useUserTransactionsAll = async ( errors: `Failed to fetch GraphQL URL and headers for network ${network}`, }; - const result = - networkGqlBackend(network) === "hasura" - ? parseHasuraUserTransactions( - await jsonPost( - url, - body, - headers - ) - ) - : parseBitqueryUserTransactions( - await jsonPost( - url, - body, - headers - ), - network - ); + const result = parseHasuraUserTransactions( + await jsonPost( + url, + body, + headers + ) + ); return result; }; @@ -711,28 +520,6 @@ const parseHasuraUserTransactions = ( }; }; -const parseBitqueryUserTransactions = ( - result: BitqueryUserTransactionRes, - network: string -): UserTransactionsRes => { - if (!result.data || result.errors) - return { - errors: result.errors, - }; - - const transfers: BitqueryUserTransaction[] = - result.data[network]?.transfers ?? []; - - return { - data: { - transfers: transfers.map((transfer) => ({ - ...transfer, - application: "none", - })), - }, - }; -}; - export { useUserTransactionsAll, useUserTransactionsByAddress, diff --git a/web/app.fluidity.money/app/queries/useUserUnclaimedRewards.spec.ts b/web/app.fluidity.money/app/queries/useUserUnclaimedRewards.spec.ts index 057cbfc23..a87c76c0d 100644 --- a/web/app.fluidity.money/app/queries/useUserUnclaimedRewards.spec.ts +++ b/web/app.fluidity.money/app/queries/useUserUnclaimedRewards.spec.ts @@ -8,7 +8,7 @@ beforeAll(() => { describe("useUserUnclaimedRewards", () => { it("should return a valid response", async () => { const { data, error } = await useUserUnclaimedRewards( - "ethereum", + "arbitrum", "0xeb6b882a295d316ac62c8cfcc81c3e37c084b7c5" ); expect(data).toBeDefined(); diff --git a/web/app.fluidity.money/app/queries/useUserUnclaimedRewards.ts b/web/app.fluidity.money/app/queries/useUserUnclaimedRewards.ts index 0aeb44b40..d7152d5ce 100644 --- a/web/app.fluidity.money/app/queries/useUserUnclaimedRewards.ts +++ b/web/app.fluidity.money/app/queries/useUserUnclaimedRewards.ts @@ -2,27 +2,6 @@ import { gql, Queryable, jsonPost } from "~/util"; import { chainType } from "~/util/chainUtils/chains"; const query: Queryable = { - ethereum: gql` - query getPendingRewards($address: String!) { - ethereum_pending_winners( - where: { - reward_sent: { _eq: false } - address: { _eq: $address } - network: { _eq: "ethereum" } - } - order_by: { block_number: desc } - ) { - address - reward_sent - token_decimals - token_short_name - transaction_hash - win_amount - block_number - } - } - `, - solana: gql``, arbitrum: gql` diff --git a/web/app.fluidity.money/app/root.tsx b/web/app.fluidity.money/app/root.tsx index 6f7d1d55d..819c7a8cd 100644 --- a/web/app.fluidity.money/app/root.tsx +++ b/web/app.fluidity.money/app/root.tsx @@ -21,7 +21,7 @@ import { SplitContextProvider } from "contexts/SplitProvider"; import CacheProvider from "contexts/CacheProvider"; import { useEffect, useState } from "react"; import { CookieConsent } from "@fluidity-money/surfing"; -import {Buffer} from "buffer"; +import { Buffer } from "buffer"; globalThis.Buffer = Buffer; diff --git a/web/app.fluidity.money/app/routes/$network.tsx b/web/app.fluidity.money/app/routes/$network.tsx index 66ea4a8bb..97148ed0a 100644 --- a/web/app.fluidity.money/app/routes/$network.tsx +++ b/web/app.fluidity.money/app/routes/$network.tsx @@ -2,9 +2,7 @@ import type { LoaderFunction } from "@remix-run/node"; import { Outlet, useLoaderData } from "@remix-run/react"; import serverConfig, { colors } from "~/webapp.config.server"; import { redirect } from "@remix-run/node"; -import { useEffect, useMemo, useState, useContext } from "react"; -import FluidityFacadeContext from "contexts/FluidityFacade"; -import { SplitContext } from "contexts/SplitProvider"; +import { useEffect, useMemo, useState } from "react"; import config from "../../webapp.config.js"; import EthereumProvider from "contexts/EthereumProvider"; @@ -62,13 +60,12 @@ const Provider = ({ children: React.ReactNode; }) => { const providers: ProviderMap = { - ethereum: EthereumProvider(walletconnectId, tokens, network), solana: SolanaProvider(solRpc, tokens), arbitrum: EthereumProvider(walletconnectId, tokens, network), polygon_zk: EthereumProvider(walletconnectId, tokens, network), }; - const [validNetwork, setValidNetwork] = useState(network ?? "ethereum"); + const [validNetwork, setValidNetwork] = useState(network ?? "arbitrum"); useEffect(() => { if (network && Object.keys(providers).includes(network)) { @@ -84,32 +81,6 @@ const Provider = ({ return {children}; }; -const ProviderOutlet = () => { - const { connected, address, getDegenScore } = useContext( - FluidityFacadeContext - ); - - const { client } = useContext(SplitContext); - - useEffect(() => { - if (!(address && connected)) return; - - (async () => { - if (!getDegenScore) return; - - const degenScore = await getDegenScore(address); - - client?.track("connected-user-degen-score", address, degenScore); - })(); - }, [address, client]); - - return ( - <> - - - ); -}; - type LoaderData = { network: string; explorer: string; @@ -151,7 +122,7 @@ export default function Network() { tokens={tokens} colorMap={colors} /> - + ); } diff --git a/web/app.fluidity.money/app/routes/$network/dashboard.tsx b/web/app.fluidity.money/app/routes/$network/dashboard.tsx index 07c54ef0b..80dec9167 100644 --- a/web/app.fluidity.money/app/routes/$network/dashboard.tsx +++ b/web/app.fluidity.money/app/routes/$network/dashboard.tsx @@ -202,10 +202,6 @@ const CHAIN_NAME_MAP: Record< string, { name: string; icon: JSX.Element; disabled?: boolean } > = { - ethereum: { - name: "ETH", - icon: , - }, arbitrum: { name: "ARB", icon: , diff --git a/web/app.fluidity.money/app/routes/$network/dashboard/assets/regular.tsx b/web/app.fluidity.money/app/routes/$network/dashboard/assets/regular.tsx index d9b820313..91b6d5e07 100644 --- a/web/app.fluidity.money/app/routes/$network/dashboard/assets/regular.tsx +++ b/web/app.fluidity.money/app/routes/$network/dashboard/assets/regular.tsx @@ -34,12 +34,14 @@ export const loader: LoaderFunction = async ({ params }) => { const eacAggregatorProxyAddr = config.contract.eac_aggregator_proxy[network as Chain]; - const wethPrice = chainType(network) === "evm" ? - await getWethUsdPrice( - provider, - eacAggregatorProxyAddr, - EACAggregatorProxyAbi - ) : 0; + const wethPrice = + chainType(network) === "evm" + ? await getWethUsdPrice( + provider, + eacAggregatorProxyAddr, + EACAggregatorProxyAbi + ) + : 0; const regularTokens = tokens .filter((token) => !token.isFluidOf) diff --git a/web/app.fluidity.money/app/routes/$network/dashboard/home.tsx b/web/app.fluidity.money/app/routes/$network/dashboard/home.tsx index 62377b9c2..f4add9655 100644 --- a/web/app.fluidity.money/app/routes/$network/dashboard/home.tsx +++ b/web/app.fluidity.money/app/routes/$network/dashboard/home.tsx @@ -76,7 +76,7 @@ function ErrorBoundary(error: Error) { } const SAFE_DEFAULT_HOME: HomeLoaderData = { - network: "ethereum", + network: "arbitrum", loaded: false, graph: { day: [], diff --git a/web/app.fluidity.money/app/routes/$network/dashboard/rewards/index.tsx b/web/app.fluidity.money/app/routes/$network/dashboard/rewards/index.tsx index c871298ee..7648e1f5d 100644 --- a/web/app.fluidity.money/app/routes/$network/dashboard/rewards/index.tsx +++ b/web/app.fluidity.money/app/routes/$network/dashboard/rewards/index.tsx @@ -108,7 +108,7 @@ type CacheData = { const SAFE_DEFAULT_REWARDS: RewardsLoaderData = { // Only used in Rewards - network: "ethereum", + network: "arbitrum", fluidTokenMap: {}, totalPrizePool: 0, loaded: false, diff --git a/web/app.fluidity.money/app/routes/$network/dashboard/rewards/unclaimed.tsx b/web/app.fluidity.money/app/routes/$network/dashboard/rewards/unclaimed.tsx index e1353afbf..6805f3052 100644 --- a/web/app.fluidity.money/app/routes/$network/dashboard/rewards/unclaimed.tsx +++ b/web/app.fluidity.money/app/routes/$network/dashboard/rewards/unclaimed.tsx @@ -240,15 +240,14 @@ const UnclaimedWinnings = () => { return (
{/* Info Card - Only accessible for Ethereum/Arbitrum */} - {(network === "ethereum" || network === "arbitrum") && - !!userUnclaimedRewards && ( - - )} + {network === "arbitrum" && !!userUnclaimedRewards && ( + + )} {!!address && unclaimedData.state === "loading" && (
diff --git a/web/app.fluidity.money/app/routes/$network/index.tsx b/web/app.fluidity.money/app/routes/$network/index.tsx index 0d5b3b882..13cdceda7 100644 --- a/web/app.fluidity.money/app/routes/$network/index.tsx +++ b/web/app.fluidity.money/app/routes/$network/index.tsx @@ -37,10 +37,6 @@ const CHAIN_NAME_MAP: Record< string, { name: string; icon: JSX.Element; disabled?: boolean } > = { - ethereum: { - name: "ETH", - icon: , - }, arbitrum: { name: "ARB", icon: , diff --git a/web/app.fluidity.money/app/routes/$network/query/dashboard/__tests__/unclaimed.spec.ts b/web/app.fluidity.money/app/routes/$network/query/dashboard/__tests__/unclaimed.spec.ts index fd8be3c52..27f7f5a88 100644 --- a/web/app.fluidity.money/app/routes/$network/query/dashboard/__tests__/unclaimed.spec.ts +++ b/web/app.fluidity.money/app/routes/$network/query/dashboard/__tests__/unclaimed.spec.ts @@ -9,7 +9,7 @@ beforeAll(() => { describe("Unclaimed page Loader", () => { it("should return a response", async () => { const reqParams = { - network: "ethereum", + network: "arbitrum", address: "0xeb6b882a295d316ac62c8cfcc81c3e37c084b7c5", }; diff --git a/web/app.fluidity.money/app/routes/$network/query/dashboard/prizePool.tsx b/web/app.fluidity.money/app/routes/$network/query/dashboard/prizePool.tsx index ec398a5a3..182786e8d 100644 --- a/web/app.fluidity.money/app/routes/$network/query/dashboard/prizePool.tsx +++ b/web/app.fluidity.money/app/routes/$network/query/dashboard/prizePool.tsx @@ -1,12 +1,8 @@ import { json } from "react-router-dom"; import config from "~/webapp.config.server"; -import RewardAbi from "~/util/chainUtils/ethereum/RewardPool.json"; import TotalRewardPoolAbi from "~/util/chainUtils/ethereum/getTotalRewardPool.json"; import RegistryAbi from "~/util/chainUtils/ethereum/Registry.json"; -import { - aggregatePrizePools, - getTotalRewardPool, -} from "~/util/chainUtils/ethereum/transaction"; +import { getTotalRewardPool } from "~/util/chainUtils/ethereum/transaction"; import { JsonRpcProvider } from "@ethersproject/providers"; import { Chain } from "~/util/chainUtils/chains"; @@ -17,11 +13,6 @@ export async function loader() { return Promise.resolve( Promise.all( [ - { - network: "ethereum", - abi: RewardAbi, - getPrizePool: aggregatePrizePools, - }, { network: "arbitrum", abi: TotalRewardPoolAbi, diff --git a/web/app.fluidity.money/app/routes/$network/query/dashboard/rewards.tsx b/web/app.fluidity.money/app/routes/$network/query/dashboard/rewards.tsx index 7efdaa936..56ab128da 100644 --- a/web/app.fluidity.money/app/routes/$network/query/dashboard/rewards.tsx +++ b/web/app.fluidity.money/app/routes/$network/query/dashboard/rewards.tsx @@ -4,15 +4,11 @@ import type { Rewarders } from "~/util/rewardAggregates"; import type { TokenPerformance } from "~/util/tokenAggregate"; import { JsonRpcProvider } from "@ethersproject/providers"; -import { - aggregatePrizePools, - getTotalRewardPool, -} from "~/util/chainUtils/ethereum/transaction"; +import { getTotalRewardPool } from "~/util/chainUtils/ethereum/transaction"; import { json } from "@remix-run/node"; import useApplicationRewardStatistics from "~/queries/useApplicationRewardStatistics"; import { aggregateRewards } from "~/util/rewardAggregates"; import { aggregateTokens } from "~/util/tokenAggregate"; -import RewardAbi from "~/util/chainUtils/ethereum/RewardPool.json"; import TotalRewardPoolAbi from "~/util/chainUtils/ethereum/getTotalRewardPool.json"; import config from "~/webapp.config.server"; import { @@ -54,11 +50,6 @@ export const loader: LoaderFunction = async ({ request, params }) => { return Promise.resolve( Promise.all( [ - { - network: "ethereum", - abi: RewardAbi, - getPrizePool: aggregatePrizePools, - }, { network: "arbitrum", abi: TotalRewardPoolAbi, diff --git a/web/app.fluidity.money/app/routes/wtf.tsx b/web/app.fluidity.money/app/routes/wtf.tsx index 59d8ede57..9f89d43a3 100644 --- a/web/app.fluidity.money/app/routes/wtf.tsx +++ b/web/app.fluidity.money/app/routes/wtf.tsx @@ -178,7 +178,7 @@ export default function IndexPage() { const enabledChains = CHAINS.filter(({ name }) => { if (name === "POLY_ZK" && !showExperiment("enable-polygonzk")) return false; - + return true; }); diff --git a/web/app.fluidity.money/app/util/api/graphql.ts b/web/app.fluidity.money/app/util/api/graphql.ts index b5e71197b..59a11e4ea 100644 --- a/web/app.fluidity.money/app/util/api/graphql.ts +++ b/web/app.fluidity.money/app/util/api/graphql.ts @@ -9,12 +9,10 @@ type GqlEndpoint = { headers: { [key: string]: string }; }; -type GqlBackend = "hasura" | "bitquery"; +type GqlBackend = "hasura"; export const networkGqlBackend = (network: string): GqlBackend | null => { switch (network) { - case "ethereum": - return "bitquery"; case "solana": case "arbitrum": case "polygon_zk": @@ -26,11 +24,6 @@ export const networkGqlBackend = (network: string): GqlBackend | null => { export const fetchGqlEndpoint = (network: string): GqlEndpoint | null => { switch (networkGqlBackend(network)) { - case "bitquery": - return { - url: "https://graphql.bitquery.io", - headers: { "X-API-KEY": process.env.FLU_BITQUERY_TOKEN ?? "" }, - }; case "hasura": return { url: "https://fluidity.hasura.app/v1/graphql", diff --git a/web/app.fluidity.money/app/util/chainUtils/chains.ts b/web/app.fluidity.money/app/util/chainUtils/chains.ts index 083790c52..cbd912e1a 100644 --- a/web/app.fluidity.money/app/util/chainUtils/chains.ts +++ b/web/app.fluidity.money/app/util/chainUtils/chains.ts @@ -1,9 +1,8 @@ -export type Chain = "ethereum" | "solana" | "arbitrum" | "polygon_zk"; +export type Chain = "solana" | "arbitrum" | "polygon_zk"; export type ChainType = "evm" | "solana"; const chainType = (network: string): ChainType | undefined => { switch (network) { - case "ethereum": case "arbitrum": case "polygon_zk": return "evm"; @@ -16,8 +15,6 @@ const chainType = (network: string): ChainType | undefined => { const getChainId = (network: Chain): number => { switch (network) { - case "ethereum": - return 1; case "arbitrum": return 42161; case "polygon_zk": @@ -34,8 +31,6 @@ const getNetworkFromChainId = ( typeof chainId_ === "string" ? parseInt(chainId_, 16) : chainId_; switch (chainId) { - case 1: - return "ethereum"; case 42161: return "arbitrum"; case 1101: @@ -45,7 +40,6 @@ const getNetworkFromChainId = ( const getChainNativeToken = (network: string): string => { switch (network) { - case "ethereum": case "arbitrum": case "polygon_zk": return "ETH"; diff --git a/web/app.fluidity.money/app/util/chainUtils/ethereum/DegenScoreBeacon.json b/web/app.fluidity.money/app/util/chainUtils/ethereum/DegenScoreBeacon.json deleted file mode 100644 index 880a02173..000000000 --- a/web/app.fluidity.money/app/util/chainUtils/ethereum/DegenScoreBeacon.json +++ /dev/null @@ -1,31 +0,0 @@ -[ - { - "inputs": [ - { - "internalType": "address", - "name": "account", - "type": "address" - }, - { - "internalType": "uint256", - "name": "traitId", - "type": "uint256" - }, - { - "internalType": "uint64", - "name": "maxAge", - "type": "uint64" - } - ], - "name": "getTrait", - "outputs": [ - { - "internalType": "uint192", - "name": "", - "type": "uint192" - } - ], - "stateMutability": "view", - "type": "function" - } -] diff --git a/web/app.fluidity.money/app/util/chainUtils/ethereum/transaction.ts b/web/app.fluidity.money/app/util/chainUtils/ethereum/transaction.ts index 2ce476e93..545721d1d 100644 --- a/web/app.fluidity.money/app/util/chainUtils/ethereum/transaction.ts +++ b/web/app.fluidity.money/app/util/chainUtils/ethereum/transaction.ts @@ -351,38 +351,6 @@ export const getTotalRewardPool = async ( } }; -// Returns User DegenScore -export const getUserDegenScore = async ( - provider: JsonRpcProvider, - userAddr: string, - degenScoreAddr: string, - degenScoreAbi: ContractInterface -): Promise => { - try { - const degenScoreContract = new Contract( - degenScoreAddr, - degenScoreAbi, - provider - ); - - if (!degenScoreContract) - throw new Error(`Could not instantiate DegenScore at ${degenScoreAddr}`); - - const degenScoreTraitId = "121371448299756538184036965"; - - const score = await degenScoreContract.callStatic.getTrait( - userAddr, - degenScoreTraitId, - 0 - ); - - return score.toNumber(); - } catch (error) { - await handleContractErrors(error as ErrorType, provider); - return 0; - } -}; - export type StakingRatioRes = { fusdcUsdcRatio: BigNumber; fusdcWethRatio: BigNumber; diff --git a/web/app.fluidity.money/app/util/chainUtils/links.ts b/web/app.fluidity.money/app/util/chainUtils/links.ts index cbb672408..fc388e687 100644 --- a/web/app.fluidity.money/app/util/chainUtils/links.ts +++ b/web/app.fluidity.money/app/util/chainUtils/links.ts @@ -2,8 +2,6 @@ import type { Chain } from "./chains"; const getAddressExplorerLink = (chain: Chain, address: string): string => { switch (chain) { - case "ethereum": - return `https://etherscan.io/address/${address}`; case "solana": return `https://explorer.solana.com/address/${address}`; case "arbitrum": @@ -16,8 +14,6 @@ const getAddressExplorerLink = (chain: Chain, address: string): string => { // Ethereum only const getBlockExplorerLink = (chain: Chain, block: number): string => { switch (chain) { - case "ethereum": - return `https://etherscan.io/block/${block}`; case "solana": return `https://explorer.solana.com/block/${block}`; case "arbitrum": @@ -29,8 +25,6 @@ const getBlockExplorerLink = (chain: Chain, block: number): string => { const getTxExplorerLink = (chain: Chain, address: string): string => { switch (chain) { - case "ethereum": - return `https://etherscan.io/tx/${address}`; case "solana": return `https://explorer.solana.com/tx/${address}`; case "arbitrum": @@ -42,10 +36,6 @@ const getTxExplorerLink = (chain: Chain, address: string): string => { const networkMapper = (network: string) => { switch (network) { - case "ETH": - return "ethereum"; - case "ethereum": - return "ETH"; case "SOL": return "solana"; case "solana": diff --git a/web/app.fluidity.money/app/util/chainUtils/solana/fluidityInstruction.ts b/web/app.fluidity.money/app/util/chainUtils/solana/fluidityInstruction.ts index 56cd03b68..17a26271e 100644 --- a/web/app.fluidity.money/app/util/chainUtils/solana/fluidityInstruction.ts +++ b/web/app.fluidity.money/app/util/chainUtils/solana/fluidityInstruction.ts @@ -53,10 +53,9 @@ export class FluidityInstruction extends SolanaEnum { const seedString = `FLU:${TokenSymbol}_OBLIGATION`; const seedBuffer = Buffer.from(seedString, "utf8"); - const bump = - PublicKey.findProgramAddressSync( - [seedBuffer], - new PublicKey("HEvunKKgzf4SMZimVMET6HuzAyfGJS4ZMShUz94KLUdR") + const bump = PublicKey.findProgramAddressSync( + [seedBuffer], + new PublicKey("HEvunKKgzf4SMZimVMET6HuzAyfGJS4ZMShUz94KLUdR") )[1]; return bump; diff --git a/web/app.fluidity.money/app/util/chainUtils/solana/instructions.ts b/web/app.fluidity.money/app/util/chainUtils/solana/instructions.ts index 625d24bf6..e9127b4e1 100644 --- a/web/app.fluidity.money/app/util/chainUtils/solana/instructions.ts +++ b/web/app.fluidity.money/app/util/chainUtils/solana/instructions.ts @@ -8,12 +8,16 @@ import { Connection, } from "@solana/web3.js"; import { getATAAddressSync } from "@saberhq/token-utils"; -import { useWallet, useConnection, WalletContextState } from "@solana/wallet-adapter-react"; +import { + useWallet, + useConnection, + WalletContextState, +} from "@solana/wallet-adapter-react"; import BN from "bn.js"; import { FluidityInstruction } from "./fluidityInstruction"; import { getFluidInstructionKeys, getOrCreateATA } from "./solanaAddresses"; import { TransactionResponse } from "../instructions"; -import {jsonPost} from "~/util/api/rpc"; +import { jsonPost } from "~/util/api/rpc"; export const getCheckedSolContext = () => { const wallet = useWallet(); @@ -36,7 +40,11 @@ export const getCheckedSolContext = () => { }; }; -const getBalance = async (connection: Connection, publicKey: PublicKey, token: Token): Promise => { +const getBalance = async ( + connection: Connection, + publicKey: PublicKey, + token: Token +): Promise => { try { //balance of SOL represented as a TokenAmount if (token.name === "Solana") { @@ -55,8 +63,7 @@ const getBalance = async (connection: Connection, publicKey: PublicKey, token: T } catch (e) { // if account wasn't found, the user has no ATA and therefore none of the given token const trimmedError = (e as Error).message.split(":")?.[2].trim(); - if (trimmedError === "could not find account") - return new BN(0); + if (trimmedError === "could not find account") return new BN(0); throw new Error( `Could not fetch balance: Could not fetch token ${token.address}: ${e}` @@ -95,7 +102,10 @@ export type UserAmountMintedRes = { amount_minted: number; }; -const amountMinted = async (publicKey: PublicKey, tokenName: string): Promise => { +const amountMinted = async ( + publicKey: PublicKey, + tokenName: string +): Promise => { const url = "https://api.solana.fluidity.money/user-amount-minted"; const body = { address: publicKey.toString(), diff --git a/web/app.fluidity.money/app/webapp.config.js b/web/app.fluidity.money/app/webapp.config.js index b36d20841..1f66f7ff3 100644 --- a/web/app.fluidity.money/app/webapp.config.js +++ b/web/app.fluidity.money/app/webapp.config.js @@ -1,16 +1,6 @@ const options = { // Chains drivers: { - ethereum: [ - { - label: "Ethereum", - testnet: false, - rpc: { - http: "https://mainnet.infura.io/v3/your-api-key", - ws: "wss://mainnet.infura.io/ws/v3/your-api-key", - }, - }, - ], solana: [ { label: "Solana", @@ -22,13 +12,6 @@ const options = { }, ], }, - ethereum: { - currencies: [ - "0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48", - "0xdAC17F958D2ee523a2206206994597C13D831ec7", - "0x6B175474E89094C44Da98b954EedeAC495271d0F", - ], - }, }; export default options; diff --git a/web/app.fluidity.money/app/webapp.config.server.ts b/web/app.fluidity.money/app/webapp.config.server.ts index 82404bc55..99f35d833 100644 --- a/web/app.fluidity.money/app/webapp.config.server.ts +++ b/web/app.fluidity.money/app/webapp.config.server.ts @@ -83,13 +83,11 @@ const OptionsSchema = z.object({ ), contract: z.object({ prize_pool: z.object({ - ethereum: z.string(), arbitrum: z.string(), solana: z.string(), polygon_zk: z.string(), }), eac_aggregator_proxy: z.object({ - ethereum: z.string(), arbitrum: z.string(), solana: z.string(), polygon_zk: z.string(), diff --git a/web/app.fluidity.money/contexts/EthereumProvider.tsx b/web/app.fluidity.money/contexts/EthereumProvider.tsx index e3db1429f..ad35b934a 100644 --- a/web/app.fluidity.money/contexts/EthereumProvider.tsx +++ b/web/app.fluidity.money/contexts/EthereumProvider.tsx @@ -23,7 +23,6 @@ import { EIP1193 } from "@web3-react/eip1193"; import { SplitContext } from "contexts/SplitProvider"; import FluidityFacadeContext from "contexts/FluidityFacade"; import { - getUserDegenScore, getUserStakingDeposits, getTokenStakingRatio, makeStakingDeposit, @@ -42,7 +41,6 @@ import { getNetworkFromChainId, } from "~/util/chainUtils/chains"; -import DegenScoreAbi from "~/util/chainUtils/ethereum/DegenScoreBeacon.json"; import StakingAbi from "~/util/chainUtils/ethereum/Staking.json"; import LootboxOwnershipAbi from "~/util/chainUtils/ethereum/LootboxConfirmAddressOwnership.json"; import { useToolTip } from "~/components"; @@ -333,28 +331,6 @@ const EthereumFacade = ({ .map(([addr]) => addr); }; - /** - * getDegenScore returns the "DegenScore" of a user. - * - * Source: https://degenscore.com. - */ - const getDegenScore = async (address: string): Promise => { - const signer = provider?.getSigner(); - - if (!signer) { - return 0; - } - - const degenScoreAddr = "0x0521FA0bf785AE9759C7cB3CBE7512EbF20Fbdaa"; - - return getUserDegenScore( - signer.provider, - address, - degenScoreAddr, - DegenScoreAbi - ); - }; - /** * getStakingDeposits returns total tokens staked by a user. */ @@ -615,7 +591,6 @@ const EthereumFacade = ({ rawAddress: account ?? "", address: account?.toLowerCase() ?? "", manualReward, - getDegenScore, addToken, connected: isActive, connecting: isActivating, diff --git a/web/app.fluidity.money/contexts/FluidityFacade.tsx b/web/app.fluidity.money/contexts/FluidityFacade.tsx index 90f273d8f..09c188439 100644 --- a/web/app.fluidity.money/contexts/FluidityFacade.tsx +++ b/web/app.fluidity.money/contexts/FluidityFacade.tsx @@ -40,8 +40,6 @@ export interface IFluidityFacade { | undefined >; - getDegenScore?: (address: string) => Promise; - addToken?: (symbol: string) => Promise; getStakingRatios?: () => Promise; diff --git a/web/app.fluidity.money/contexts/SolanaProvider.tsx b/web/app.fluidity.money/contexts/SolanaProvider.tsx index 9e3ca2c4e..9e445a465 100644 --- a/web/app.fluidity.money/contexts/SolanaProvider.tsx +++ b/web/app.fluidity.money/contexts/SolanaProvider.tsx @@ -33,13 +33,11 @@ const SolanaFacade = ({ tokens: Token[]; }) => { const wallet = useWallet(); - const { connected, publicKey, disconnect, connecting, signMessage } = - wallet; - const {connection} = useConnection(); + const { connected, publicKey, disconnect, connecting, signMessage } = wallet; + const { connection } = useConnection(); const swap = async (amount: string, tokenAddr: string) => { - if (!publicKey) - return; + if (!publicKey) return; const fromToken = tokens.find((t) => t.address === tokenAddr); @@ -60,7 +58,15 @@ const SolanaFacade = ({ `Could not initiate Swap: Could not find dest pair token from ${tokenAddr} in solana` ); - return internalSwap(wallet, connection, connected, publicKey, amount, fromToken, toToken); + return internalSwap( + wallet, + connection, + connected, + publicKey, + amount, + fromToken, + toToken + ); }; const balance = async (tokenAddr: string): Promise => { @@ -71,8 +77,7 @@ const SolanaFacade = ({ `Could not fetch balance: Could not find matching token ${tokenAddr} in solana` ); - if (!publicKey) - return new BN(0); + if (!publicKey) return new BN(0); return getBalance(connection, publicKey, token); }; @@ -84,8 +89,7 @@ const SolanaFacade = ({ }; const getFluidTokens = async (): Promise => { - if (!publicKey) - return []; + if (!publicKey) return []; const fluidTokens = tokens.filter((t) => t.isFluidOf); @@ -95,12 +99,11 @@ const SolanaFacade = ({ return fluidTokensPosBalance.map((t) => t.address); }; - - const amountMinted = async(tokenName: string): Promise => { - if (!publicKey) - return; - return amountMintedInternal(publicKey, tokenName) - } + + const amountMinted = async (tokenName: string): Promise => { + if (!publicKey) return; + return amountMintedInternal(publicKey, tokenName); + }; return (