Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 0 additions & 6 deletions .env.example
Original file line number Diff line number Diff line change
Expand Up @@ -16,12 +16,6 @@ VITE_POLYGON_ZK_EVM_NETWORK_ID=1
# BRIDGE API
VITE_BRIDGE_API_URL=http://localhost:8080

# FIAT EXCHANGE RATES API
VITE_ENABLE_FIAT_EXCHANGE_RATES=true
VITE_FIAT_EXCHANGE_RATES_API_URL=https://api.exchangeratesapi.io/v1/latest
VITE_FIAT_EXCHANGE_RATES_API_KEY=
VITE_FIAT_EXCHANGE_RATES_ETHEREUM_USDC_ADDRESS=0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48

# OUTDATED NETWORK MODAL
VITE_ENABLE_OUTDATED_NETWORK_MODAL=true
VITE_OUTDATED_NETWORK_MODAL_TITLE=Welcome to the new Polygon zkEVM testnet!
Expand Down
12 changes: 0 additions & 12 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -33,17 +33,6 @@ environment variable by your own:
cp .env.example .env
```

If you want to see token prices converted to your local fiat currency in the UI you'll need to
register [here](https://exchangeratesapi.io) to obtain an API Key. Once you get it, you need to set
the `VITE_ENABLE_FIAT_EXCHANGE_RATES` env var to `true` and fill this required env vars as well:

- `VITE_FIAT_EXCHANGE_RATES_API_URL`
- `VITE_FIAT_EXCHANGE_RATES_API_KEY`
- `VITE_FIAT_EXCHANGE_RATES_ETHEREUM_USDC_ADDRESS`

If you just want to omit fiat conversion you can just disable this feature by setting the
`VITE_ENABLE_FIAT_EXCHANGE_RATES` env var to `false`.

Finally, to run the UI in development mode, you just need to run:

```sh
Expand Down Expand Up @@ -79,7 +68,6 @@ docker run \
-e POLYGON_ZK_EVM_BRIDGE_CONTRACT_ADDRESS=0x9d98deabc42dd696deb9e40b4f1cab7ddbf55988 \
-e POLYGON_ZK_EVM_NETWORK_ID=1 \
-e BRIDGE_API_URL=http://localhost:8080 \
-e ENABLE_FIAT_EXCHANGE_RATES=false \
-e ENABLE_OUTDATED_NETWORK_MODAL=false \
-e ENABLE_DEPOSIT_WARNING=true \
-e ENABLE_REPORT_FORM=false \
Expand Down
18 changes: 0 additions & 18 deletions scripts/deploy.sh
Original file line number Diff line number Diff line change
Expand Up @@ -20,24 +20,6 @@ echo "VITE_POLYGON_ZK_EVM_NETWORK_ID=$POLYGON_ZK_EVM_NETWORK_ID" >> $ENV_FILENAM
# BRIDGE API env vars
echo "VITE_BRIDGE_API_URL=$BRIDGE_API_URL" >> $ENV_FILENAME

# FIAT EXCHANGE RATES API env vars
echo "VITE_ENABLE_FIAT_EXCHANGE_RATES=$ENABLE_FIAT_EXCHANGE_RATES" >> $ENV_FILENAME

if [ ! -z "$FIAT_EXCHANGE_RATES_API_URL" ];
then
echo "VITE_FIAT_EXCHANGE_RATES_API_URL=$FIAT_EXCHANGE_RATES_API_URL" >> $ENV_FILENAME
fi

if [ ! -z "$FIAT_EXCHANGE_RATES_API_KEY" ];
then
echo "VITE_FIAT_EXCHANGE_RATES_API_KEY=$FIAT_EXCHANGE_RATES_API_KEY" >> $ENV_FILENAME
fi

if [ ! -z "$FIAT_EXCHANGE_RATES_ETHEREUM_USDC_ADDRESS" ];
then
echo "VITE_FIAT_EXCHANGE_RATES_ETHEREUM_USDC_ADDRESS=$FIAT_EXCHANGE_RATES_ETHEREUM_USDC_ADDRESS" >> $ENV_FILENAME
fi

# OUTDATED NETWORK MODAL
echo "VITE_ENABLE_OUTDATED_NETWORK_MODAL=$ENABLE_OUTDATED_NETWORK_MODAL" >> $ENV_FILENAME

Expand Down
69 changes: 1 addition & 68 deletions src/adapters/env.ts
Original file line number Diff line number Diff line change
@@ -1,23 +1,19 @@
import { z } from "zod";

import { getChains, getUsdcToken } from "src/constants";
import { getChains } from "src/constants";
import * as domain from "src/domain";
import { StrictSchema } from "src/utils/type-safety";

interface Env {
VITE_BRIDGE_API_URL: string;
VITE_ENABLE_DEPOSIT_WARNING: string;
VITE_ENABLE_FIAT_EXCHANGE_RATES: string;
VITE_ENABLE_OUTDATED_NETWORK_MODAL?: string;
VITE_ENABLE_REPORT_FORM: string;
VITE_ETHEREUM_BRIDGE_CONTRACT_ADDRESS: string;
VITE_ETHEREUM_EXPLORER_URL: string;
VITE_ETHEREUM_FORCE_UPDATE_GLOBAL_EXIT_ROOT: string;
VITE_ETHEREUM_PROOF_OF_EFFICIENCY_CONTRACT_ADDRESS: string;
VITE_ETHEREUM_RPC_URL: string;
VITE_FIAT_EXCHANGE_RATES_API_KEY?: string;
VITE_FIAT_EXCHANGE_RATES_API_URL?: string;
VITE_FIAT_EXCHANGE_RATES_ETHEREUM_USDC_ADDRESS?: string;
VITE_OUTDATED_NETWORK_MODAL_MESSAGE_PARAGRAPH_1?: string;
VITE_OUTDATED_NETWORK_MODAL_MESSAGE_PARAGRAPH_2?: string;
VITE_OUTDATED_NETWORK_MODAL_TITLE?: string;
Expand All @@ -32,16 +28,6 @@ interface Env {
VITE_REPORT_FORM_URL_ENTRY?: string;
}

type GetFiatExchangeRatesEnvParams = Pick<
Env,
| "VITE_ENABLE_FIAT_EXCHANGE_RATES"
| "VITE_FIAT_EXCHANGE_RATES_API_KEY"
| "VITE_FIAT_EXCHANGE_RATES_API_URL"
| "VITE_FIAT_EXCHANGE_RATES_ETHEREUM_USDC_ADDRESS"
> & {
ethereumChain: domain.Chain;
};

type GetReportFormEnvParams = Pick<
Env,
| "VITE_ENABLE_REPORT_FORM"
Expand Down Expand Up @@ -72,44 +58,6 @@ const stringBooleanParser = StrictSchema<string, boolean>()(
})
);

const getFiatExchangeRatesEnv = ({
ethereumChain,
VITE_ENABLE_FIAT_EXCHANGE_RATES,
VITE_FIAT_EXCHANGE_RATES_API_KEY,
VITE_FIAT_EXCHANGE_RATES_API_URL,
VITE_FIAT_EXCHANGE_RATES_ETHEREUM_USDC_ADDRESS,
}: GetFiatExchangeRatesEnvParams): domain.Env["fiatExchangeRates"] => {
const areFiatExchangeRatesEnabled = stringBooleanParser.parse(VITE_ENABLE_FIAT_EXCHANGE_RATES);

if (!areFiatExchangeRatesEnabled) {
return {
areEnabled: false,
};
}

if (!VITE_FIAT_EXCHANGE_RATES_API_URL) {
throw new Error("Missing VITE_FIAT_EXCHANGE_RATES_API_URL env vars");
}

if (!VITE_FIAT_EXCHANGE_RATES_API_KEY) {
throw new Error("Missing VITE_FIAT_EXCHANGE_RATES_API_KEY env var");
}

if (!VITE_FIAT_EXCHANGE_RATES_ETHEREUM_USDC_ADDRESS) {
throw new Error("Missing VITE_FIAT_EXCHANGE_RATES_ETHEREUM_USDC_ADDRESS env vars");
}

return {
apiKey: VITE_FIAT_EXCHANGE_RATES_API_KEY,
apiUrl: VITE_FIAT_EXCHANGE_RATES_API_URL,
areEnabled: true,
usdcToken: getUsdcToken({
address: VITE_FIAT_EXCHANGE_RATES_ETHEREUM_USDC_ADDRESS,
chainId: ethereumChain.chainId,
}),
};
};

const getReportFormEnv = ({
VITE_ENABLE_REPORT_FORM,
VITE_REPORT_FORM_ERROR_ENTRY,
Expand Down Expand Up @@ -155,17 +103,13 @@ const getReportFormEnv = ({
const envToDomain = ({
VITE_BRIDGE_API_URL,
VITE_ENABLE_DEPOSIT_WARNING,
VITE_ENABLE_FIAT_EXCHANGE_RATES,
VITE_ENABLE_OUTDATED_NETWORK_MODAL,
VITE_ENABLE_REPORT_FORM,
VITE_ETHEREUM_BRIDGE_CONTRACT_ADDRESS,
VITE_ETHEREUM_EXPLORER_URL,
VITE_ETHEREUM_FORCE_UPDATE_GLOBAL_EXIT_ROOT,
VITE_ETHEREUM_PROOF_OF_EFFICIENCY_CONTRACT_ADDRESS,
VITE_ETHEREUM_RPC_URL,
VITE_FIAT_EXCHANGE_RATES_API_KEY,
VITE_FIAT_EXCHANGE_RATES_API_URL,
VITE_FIAT_EXCHANGE_RATES_ETHEREUM_USDC_ADDRESS,
VITE_OUTDATED_NETWORK_MODAL_MESSAGE_PARAGRAPH_1,
VITE_OUTDATED_NETWORK_MODAL_MESSAGE_PARAGRAPH_2,
VITE_OUTDATED_NETWORK_MODAL_TITLE,
Expand Down Expand Up @@ -223,13 +167,6 @@ const envToDomain = ({
return {
bridgeApiUrl,
chains,
fiatExchangeRates: getFiatExchangeRatesEnv({
ethereumChain,
VITE_ENABLE_FIAT_EXCHANGE_RATES,
VITE_FIAT_EXCHANGE_RATES_API_KEY,
VITE_FIAT_EXCHANGE_RATES_API_URL,
VITE_FIAT_EXCHANGE_RATES_ETHEREUM_USDC_ADDRESS,
}),
forceUpdateGlobalExitRootForL1,
isDepositWarningEnabled,
outdatedNetworkModal,
Expand All @@ -249,17 +186,13 @@ const envParser = StrictSchema<Env, domain.Env>()(
.object({
VITE_BRIDGE_API_URL: z.string().url(),
VITE_ENABLE_DEPOSIT_WARNING: z.string(),
VITE_ENABLE_FIAT_EXCHANGE_RATES: z.string(),
VITE_ENABLE_OUTDATED_NETWORK_MODAL: z.string().optional(),
VITE_ENABLE_REPORT_FORM: z.string(),
VITE_ETHEREUM_BRIDGE_CONTRACT_ADDRESS: z.string().length(42),
VITE_ETHEREUM_EXPLORER_URL: z.string().url(),
VITE_ETHEREUM_FORCE_UPDATE_GLOBAL_EXIT_ROOT: z.string(),
VITE_ETHEREUM_PROOF_OF_EFFICIENCY_CONTRACT_ADDRESS: z.string().length(42),
VITE_ETHEREUM_RPC_URL: z.string().url(),
VITE_FIAT_EXCHANGE_RATES_API_KEY: z.string().optional(),
VITE_FIAT_EXCHANGE_RATES_API_URL: z.string().url().optional(),
VITE_FIAT_EXCHANGE_RATES_ETHEREUM_USDC_ADDRESS: z.string().length(42).optional(),
VITE_OUTDATED_NETWORK_MODAL_MESSAGE_PARAGRAPH_1: z.string().optional(),
VITE_OUTDATED_NETWORK_MODAL_MESSAGE_PARAGRAPH_2: z.string().optional(),
VITE_OUTDATED_NETWORK_MODAL_TITLE: z.string().optional(),
Expand Down
109 changes: 0 additions & 109 deletions src/adapters/fiat-exchange-rates-api.ts

This file was deleted.

15 changes: 1 addition & 14 deletions src/adapters/storage.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2,22 +2,9 @@ import { z } from "zod";

import { tokenParser } from "src/adapters/tokens";
import * as constants from "src/constants";
import { Chain, Currency, Env, PolicyCheck, Token } from "src/domain";
import { Chain, Env, PolicyCheck, Token } from "src/domain";
import { PendingTx, pendingTxParser, serializePendingTx } from "src/utils/serializers";

// Currency
export function getCurrency(): Currency {
return getStorageByKey({
defaultValue: constants.PREFERRED_CURRENCY,
key: constants.PREFERRED_CURRENCY_KEY,
parser: z.nativeEnum(Currency),
});
}

export function setCurrency(currency: Currency): Currency {
return setStorageByKey({ key: constants.PREFERRED_CURRENCY_KEY, value: currency });
}

// Custom Tokens
export function cleanupCustomTokens(envTokens: Token[]): Token[] {
return setCustomTokens(
Expand Down
22 changes: 1 addition & 21 deletions src/constants.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ import { ethers } from "ethers";

import { ReactComponent as EthChainIcon } from "src/assets/icons/chains/ethereum.svg";
import { ReactComponent as PolygonZkEVMChainIcon } from "src/assets/icons/chains/polygon-zkevm.svg";
import { Chain, Currency, EthereumChain, ProviderError, Token, ZkEVMChain } from "src/domain";
import { Chain, EthereumChain, ProviderError, Token, ZkEVMChain } from "src/domain";
import { ProofOfEfficiency__factory } from "src/types/contracts/proof-of-efficiency";
import { getEthereumNetworkName } from "src/utils/labels";

Expand Down Expand Up @@ -36,10 +36,6 @@ export const POLICY_CHECK_KEY = "policyCheck";

export const DISMISSED_DEPOSIT_WARNING_KEY = "dismissedDepositWarning";

export const PREFERRED_CURRENCY = Currency.USD;

export const FIAT_DISPLAY_PRECISION = 2;

export const TOKEN_DISPLAY_PRECISION = 6;

export const SNACKBAR_AUTO_HIDE_DURATION = 5 * 1000; //5s in ms
Expand Down Expand Up @@ -150,19 +146,3 @@ export const getEtherToken = (chain: Chain): Token => {
symbol: "ETH",
};
};

export const getUsdcToken = ({
address,
chainId,
}: {
address: string;
chainId: number;
}): Token => ({
address,
chainId,
decimals: 6,
logoURI:
"https://raw.githubusercontent.com/trustwallet/assets/master/blockchains/ethereum/assets/0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48/logo.png",
name: "USD Coin",
symbol: "USDC",
});
Loading