diff --git a/react-app-rewired/headers/csps/chains/arbitrum.ts b/react-app-rewired/headers/csps/chains/arbitrum.ts index be74a30323e..c0d768c242f 100644 --- a/react-app-rewired/headers/csps/chains/arbitrum.ts +++ b/react-app-rewired/headers/csps/chains/arbitrum.ts @@ -1,10 +1,19 @@ import type { Csp } from '../../types' +const REACT_APP_ARBITRUM_NODE_URL = process.env.REACT_APP_ARBITRUM_NODE_URL +const REACT_APP_UNCHAINED_ARBITRUM_HTTP_URL = process.env.REACT_APP_UNCHAINED_ARBITRUM_HTTP_URL +const REACT_APP_UNCHAINED_ARBITRUM_WS_URL = process.env.REACT_APP_UNCHAINED_ARBITRUM_WS_URL + +if (!REACT_APP_ARBITRUM_NODE_URL) throw new Error('REACT_APP_ARBITRUM_NODE_URL is required') +if (!REACT_APP_UNCHAINED_ARBITRUM_HTTP_URL) + throw new Error('REACT_APP_UNCHAINED_ARBITRUM_HTTP_URL is required') +if (!REACT_APP_UNCHAINED_ARBITRUM_WS_URL) + throw new Error('REACT_APP_UNCHAINED_ARBITRUM_WS_URL is required') + export const csp: Csp = { 'connect-src': [ - process.env.REACT_APP_ARBITRUM_NODE_URL!, - process.env.REACT_APP_UNCHAINED_ARBITRUM_HTTP_URL!, - process.env.REACT_APP_UNCHAINED_ARBITRUM_WS_URL!, - 'https://arbitrum.llamarpc.com', + REACT_APP_ARBITRUM_NODE_URL, + REACT_APP_UNCHAINED_ARBITRUM_HTTP_URL, + REACT_APP_UNCHAINED_ARBITRUM_WS_URL, ], } diff --git a/react-app-rewired/headers/csps/chains/arbitrumNova.ts b/react-app-rewired/headers/csps/chains/arbitrumNova.ts index 4234293823c..c93dd5d9b89 100644 --- a/react-app-rewired/headers/csps/chains/arbitrumNova.ts +++ b/react-app-rewired/headers/csps/chains/arbitrumNova.ts @@ -1,10 +1,23 @@ import type { Csp } from '../../types' +const REACT_APP_ARBITRUM_NOVA_NODE_URL = process.env.REACT_APP_ARBITRUM_NOVA_NODE_URL +const REACT_APP_UNCHAINED_ARBITRUM_NOVA_HTTP_URL = + process.env.REACT_APP_UNCHAINED_ARBITRUM_NOVA_HTTP_URL +const REACT_APP_UNCHAINED_ARBITRUM_NOVA_WS_URL = + process.env.REACT_APP_UNCHAINED_ARBITRUM_NOVA_WS_URL + +if (!REACT_APP_ARBITRUM_NOVA_NODE_URL) + throw new Error('REACT_APP_ARBITRUM_NOVA_NODE_URL is required') +if (!REACT_APP_UNCHAINED_ARBITRUM_NOVA_HTTP_URL) + throw new Error('REACT_APP_UNCHAINED_ARBITRUM_NOVA_HTTP_URL is required') +if (!REACT_APP_UNCHAINED_ARBITRUM_NOVA_WS_URL) + throw new Error('REACT_APP_UNCHAINED_ARBITRUM_NOVA_WS_URL is required') + export const csp: Csp = { 'connect-src': [ - process.env.REACT_APP_ARBITRUM_NOVA_NODE_URL!, - process.env.REACT_APP_UNCHAINED_ARBITRUM_NOVA_HTTP_URL!, - process.env.REACT_APP_UNCHAINED_ARBITRUM_NOVA_WS_URL!, + REACT_APP_ARBITRUM_NOVA_NODE_URL, + REACT_APP_UNCHAINED_ARBITRUM_NOVA_HTTP_URL, + REACT_APP_UNCHAINED_ARBITRUM_NOVA_WS_URL, 'https://nova.arbitrum.io/rpc', ], } diff --git a/react-app-rewired/headers/csps/chains/avalanche.ts b/react-app-rewired/headers/csps/chains/avalanche.ts index 76c54d8792d..a488e979fc9 100644 --- a/react-app-rewired/headers/csps/chains/avalanche.ts +++ b/react-app-rewired/headers/csps/chains/avalanche.ts @@ -1,10 +1,20 @@ import type { Csp } from '../../types' +const REACT_APP_AVALANCHE_NODE_URL = process.env.REACT_APP_AVALANCHE_NODE_URL +const REACT_APP_UNCHAINED_AVALANCHE_HTTP_URL = process.env.REACT_APP_UNCHAINED_AVALANCHE_HTTP_URL +const REACT_APP_UNCHAINED_AVALANCHE_WS_URL = process.env.REACT_APP_UNCHAINED_AVALANCHE_WS_URL + +if (!REACT_APP_AVALANCHE_NODE_URL) throw new Error('REACT_APP_AVALANCHE_NODE_URL is required') +if (!REACT_APP_UNCHAINED_AVALANCHE_HTTP_URL) + throw new Error('REACT_APP_UNCHAINED_AVALANCHE_HTTP_URL is required') +if (!REACT_APP_UNCHAINED_AVALANCHE_WS_URL) + throw new Error('REACT_APP_UNCHAINED_AVALANCHE_WS_URL is required') + export const csp: Csp = { 'connect-src': [ - process.env.REACT_APP_AVALANCHE_NODE_URL!, - process.env.REACT_APP_UNCHAINED_AVALANCHE_HTTP_URL!, - process.env.REACT_APP_UNCHAINED_AVALANCHE_WS_URL!, + REACT_APP_AVALANCHE_NODE_URL, + REACT_APP_UNCHAINED_AVALANCHE_HTTP_URL, + REACT_APP_UNCHAINED_AVALANCHE_WS_URL, 'https://api.avax.network/ext/bc/C/rpc', ], } diff --git a/react-app-rewired/headers/csps/chains/base.ts b/react-app-rewired/headers/csps/chains/base.ts index 0ca2059532b..ffa2ddab8b5 100644 --- a/react-app-rewired/headers/csps/chains/base.ts +++ b/react-app-rewired/headers/csps/chains/base.ts @@ -1,10 +1,19 @@ import type { Csp } from '../../types' +const REACT_APP_BASE_NODE_URL = process.env.REACT_APP_BASE_NODE_URL +const REACT_APP_UNCHAINED_BASE_HTTP_URL = process.env.REACT_APP_UNCHAINED_BASE_HTTP_URL +const REACT_APP_UNCHAINED_BASE_WS_URL = process.env.REACT_APP_UNCHAINED_BASE_WS_URL + +if (!REACT_APP_BASE_NODE_URL) throw new Error('REACT_APP_BASE_NODE_URL is required') +if (!REACT_APP_UNCHAINED_BASE_HTTP_URL) + throw new Error('REACT_APP_UNCHAINED_BASE_HTTP_URL is required') +if (!REACT_APP_UNCHAINED_BASE_WS_URL) throw new Error('REACT_APP_UNCHAINED_BASE_WS_URL is required') + export const csp: Csp = { 'connect-src': [ - process.env.REACT_APP_BASE_NODE_URL!, - process.env.REACT_APP_UNCHAINED_BASE_HTTP_URL!, - process.env.REACT_APP_UNCHAINED_BASE_WS_URL!, + REACT_APP_BASE_NODE_URL, + REACT_APP_UNCHAINED_BASE_HTTP_URL, + REACT_APP_UNCHAINED_BASE_WS_URL, 'https://base.llamarpc.com', ], } diff --git a/react-app-rewired/headers/csps/chains/bitcoin.ts b/react-app-rewired/headers/csps/chains/bitcoin.ts index 089b119330c..3f8515600f2 100644 --- a/react-app-rewired/headers/csps/chains/bitcoin.ts +++ b/react-app-rewired/headers/csps/chains/bitcoin.ts @@ -1,8 +1,13 @@ import type { Csp } from '../../types' +const REACT_APP_UNCHAINED_BITCOIN_HTTP_URL = process.env.REACT_APP_UNCHAINED_BITCOIN_HTTP_URL +const REACT_APP_UNCHAINED_BITCOIN_WS_URL = process.env.REACT_APP_UNCHAINED_BITCOIN_WS_URL + +if (!REACT_APP_UNCHAINED_BITCOIN_HTTP_URL) + throw new Error('REACT_APP_UNCHAINED_BITCOIN_HTTP_URL is required') +if (!REACT_APP_UNCHAINED_BITCOIN_WS_URL) + throw new Error('REACT_APP_UNCHAINED_BITCOIN_WS_URL is required') + export const csp: Csp = { - 'connect-src': [ - process.env.REACT_APP_UNCHAINED_BITCOIN_HTTP_URL!, - process.env.REACT_APP_UNCHAINED_BITCOIN_WS_URL!, - ], + 'connect-src': [REACT_APP_UNCHAINED_BITCOIN_HTTP_URL, REACT_APP_UNCHAINED_BITCOIN_WS_URL], } diff --git a/react-app-rewired/headers/csps/chains/bitcoincash.ts b/react-app-rewired/headers/csps/chains/bitcoincash.ts index dcfb8b2dc14..0259aaa6026 100644 --- a/react-app-rewired/headers/csps/chains/bitcoincash.ts +++ b/react-app-rewired/headers/csps/chains/bitcoincash.ts @@ -1,8 +1,14 @@ import type { Csp } from '../../types' +const REACT_APP_UNCHAINED_BITCOINCASH_HTTP_URL = + process.env.REACT_APP_UNCHAINED_BITCOINCASH_HTTP_URL +const REACT_APP_UNCHAINED_BITCOINCASH_WS_URL = process.env.REACT_APP_UNCHAINED_BITCOINCASH_WS_URL + +if (!REACT_APP_UNCHAINED_BITCOINCASH_HTTP_URL) + throw new Error('REACT_APP_UNCHAINED_BITCOINCASH_HTTP_URL is required') +if (!REACT_APP_UNCHAINED_BITCOINCASH_WS_URL) + throw new Error('REACT_APP_UNCHAINED_BITCOINCASH_WS_URL is required') + export const csp: Csp = { - 'connect-src': [ - process.env.REACT_APP_UNCHAINED_BITCOINCASH_HTTP_URL!, - process.env.REACT_APP_UNCHAINED_BITCOINCASH_WS_URL!, - ], + 'connect-src': [REACT_APP_UNCHAINED_BITCOINCASH_HTTP_URL, REACT_APP_UNCHAINED_BITCOINCASH_WS_URL], } diff --git a/react-app-rewired/headers/csps/chains/bnbsmartchain.ts b/react-app-rewired/headers/csps/chains/bnbsmartchain.ts index 885faded368..dd325d3ea53 100644 --- a/react-app-rewired/headers/csps/chains/bnbsmartchain.ts +++ b/react-app-rewired/headers/csps/chains/bnbsmartchain.ts @@ -1,10 +1,23 @@ import type { Csp } from '../../types' +const REACT_APP_BNBSMARTCHAIN_NODE_URL = process.env.REACT_APP_BNBSMARTCHAIN_NODE_URL +const REACT_APP_UNCHAINED_BNBSMARTCHAIN_HTTP_URL = + process.env.REACT_APP_UNCHAINED_BNBSMARTCHAIN_HTTP_URL +const REACT_APP_UNCHAINED_BNBSMARTCHAIN_WS_URL = + process.env.REACT_APP_UNCHAINED_BNBSMARTCHAIN_WS_URL + +if (!REACT_APP_BNBSMARTCHAIN_NODE_URL) + throw new Error('REACT_APP_BNBSMARTCHAIN_NODE_URL is required') +if (!REACT_APP_UNCHAINED_BNBSMARTCHAIN_HTTP_URL) + throw new Error('REACT_APP_UNCHAINED_BNBSMARTCHAIN_HTTP_URL is required') +if (!REACT_APP_UNCHAINED_BNBSMARTCHAIN_WS_URL) + throw new Error('REACT_APP_UNCHAINED_BNBSMARTCHAIN_WS_URL is required') + export const csp: Csp = { 'connect-src': [ - process.env.REACT_APP_BNBSMARTCHAIN_NODE_URL!, - process.env.REACT_APP_UNCHAINED_BNBSMARTCHAIN_HTTP_URL!, - process.env.REACT_APP_UNCHAINED_BNBSMARTCHAIN_WS_URL!, + REACT_APP_BNBSMARTCHAIN_NODE_URL, + REACT_APP_UNCHAINED_BNBSMARTCHAIN_HTTP_URL, + REACT_APP_UNCHAINED_BNBSMARTCHAIN_WS_URL, 'https://binance.llamarpc.com', ], } diff --git a/react-app-rewired/headers/csps/chains/cosmos.ts b/react-app-rewired/headers/csps/chains/cosmos.ts index 5055f34d84d..79b12e5521a 100644 --- a/react-app-rewired/headers/csps/chains/cosmos.ts +++ b/react-app-rewired/headers/csps/chains/cosmos.ts @@ -1,10 +1,15 @@ import type { Csp } from '../../types' +const REACT_APP_UNCHAINED_COSMOS_HTTP_URL = process.env.REACT_APP_UNCHAINED_COSMOS_HTTP_URL +const REACT_APP_UNCHAINED_COSMOS_WS_URL = process.env.REACT_APP_UNCHAINED_COSMOS_WS_URL + +if (!REACT_APP_UNCHAINED_COSMOS_HTTP_URL) + throw new Error('REACT_APP_UNCHAINED_COSMOS_HTTP_URL is required') +if (!REACT_APP_UNCHAINED_COSMOS_WS_URL) + throw new Error('REACT_APP_UNCHAINED_COSMOS_WS_URL is required') + export const csp: Csp = { - 'connect-src': [ - process.env.REACT_APP_UNCHAINED_COSMOS_HTTP_URL!, - process.env.REACT_APP_UNCHAINED_COSMOS_WS_URL!, - ], + 'connect-src': [REACT_APP_UNCHAINED_COSMOS_HTTP_URL, REACT_APP_UNCHAINED_COSMOS_WS_URL], 'img-src': [ 'https://raw.githubusercontent.com/cosmostation/', 'https://raw.githubusercontent.com/cosmos/chain-registry/', diff --git a/react-app-rewired/headers/csps/chains/dogecoin.ts b/react-app-rewired/headers/csps/chains/dogecoin.ts index cef35324b72..a22dce0e3d8 100644 --- a/react-app-rewired/headers/csps/chains/dogecoin.ts +++ b/react-app-rewired/headers/csps/chains/dogecoin.ts @@ -1,8 +1,13 @@ import type { Csp } from '../../types' +const REACT_APP_UNCHAINED_DOGECOIN_HTTP_URL = process.env.REACT_APP_UNCHAINED_DOGECOIN_HTTP_URL +const REACT_APP_UNCHAINED_DOGECOIN_WS_URL = process.env.REACT_APP_UNCHAINED_DOGECOIN_WS_URL + +if (!REACT_APP_UNCHAINED_DOGECOIN_HTTP_URL) + throw new Error('REACT_APP_UNCHAINED_DOGECOIN_HTTP_URL is required') +if (!REACT_APP_UNCHAINED_DOGECOIN_WS_URL) + throw new Error('REACT_APP_UNCHAINED_DOGECOIN_WS_URL is required') + export const csp: Csp = { - 'connect-src': [ - process.env.REACT_APP_UNCHAINED_DOGECOIN_HTTP_URL!, - process.env.REACT_APP_UNCHAINED_DOGECOIN_WS_URL!, - ], + 'connect-src': [REACT_APP_UNCHAINED_DOGECOIN_HTTP_URL, REACT_APP_UNCHAINED_DOGECOIN_WS_URL], } diff --git a/react-app-rewired/headers/csps/chains/ethereum.ts b/react-app-rewired/headers/csps/chains/ethereum.ts index 60844caa027..45ca95cbe1c 100644 --- a/react-app-rewired/headers/csps/chains/ethereum.ts +++ b/react-app-rewired/headers/csps/chains/ethereum.ts @@ -1,11 +1,23 @@ import type { Csp } from '../../types' +const REACT_APP_ETHEREUM_NODE_URL = process.env.REACT_APP_ETHEREUM_NODE_URL +const REACT_APP_UNCHAINED_ETHEREUM_HTTP_URL = process.env.REACT_APP_UNCHAINED_ETHEREUM_HTTP_URL +const REACT_APP_UNCHAINED_ETHEREUM_WS_URL = process.env.REACT_APP_UNCHAINED_ETHEREUM_WS_URL +const REACT_APP_ALCHEMY_POLYGON_URL = process.env.REACT_APP_ALCHEMY_POLYGON_URL + +if (!REACT_APP_ETHEREUM_NODE_URL) throw new Error('REACT_APP_ETHEREUM_NODE_URL is required') +if (!REACT_APP_UNCHAINED_ETHEREUM_HTTP_URL) + throw new Error('REACT_APP_UNCHAINED_ETHEREUM_HTTP_URL is required') +if (!REACT_APP_UNCHAINED_ETHEREUM_WS_URL) + throw new Error('REACT_APP_UNCHAINED_ETHEREUM_WS_URL is required') +if (!REACT_APP_ALCHEMY_POLYGON_URL) throw new Error('REACT_APP_ALCHEMY_POLYGON_URL is required') + export const csp: Csp = { 'connect-src': [ - process.env.REACT_APP_ETHEREUM_NODE_URL!, - process.env.REACT_APP_UNCHAINED_ETHEREUM_HTTP_URL!, - process.env.REACT_APP_UNCHAINED_ETHEREUM_WS_URL!, - process.env.REACT_APP_ALCHEMY_POLYGON_URL!, + REACT_APP_ETHEREUM_NODE_URL, + REACT_APP_UNCHAINED_ETHEREUM_HTTP_URL, + REACT_APP_UNCHAINED_ETHEREUM_WS_URL, + REACT_APP_ALCHEMY_POLYGON_URL, 'https://eth.llamarpc.com', ], } diff --git a/react-app-rewired/headers/csps/chains/gnosis.ts b/react-app-rewired/headers/csps/chains/gnosis.ts index 915cd400f32..2793ccb8959 100644 --- a/react-app-rewired/headers/csps/chains/gnosis.ts +++ b/react-app-rewired/headers/csps/chains/gnosis.ts @@ -1,10 +1,19 @@ import type { Csp } from '../../types' +const REACT_APP_GNOSIS_NODE_URL = process.env.REACT_APP_GNOSIS_NODE_URL +const REACT_APP_UNCHAINED_GNOSIS_HTTP_URL = process.env.REACT_APP_UNCHAINED_GNOSIS_HTTP_URL +const REACT_APP_UNCHAINED_GNOSIS_WS_URL = process.env.REACT_APP_UNCHAINED_GNOSIS_WS_URL + +if (!REACT_APP_GNOSIS_NODE_URL) throw new Error('REACT_APP_GNOSIS_NODE_URL is required') +if (!REACT_APP_UNCHAINED_GNOSIS_HTTP_URL) + throw new Error('REACT_APP_UNCHAINED_GNOSIS_HTTP_URL is required') +if (!REACT_APP_UNCHAINED_GNOSIS_WS_URL) + throw new Error('REACT_APP_UNCHAINED_GNOSIS_WS_URL is required') + export const csp: Csp = { 'connect-src': [ - process.env.REACT_APP_GNOSIS_NODE_URL!, - process.env.REACT_APP_UNCHAINED_GNOSIS_HTTP_URL!, - process.env.REACT_APP_UNCHAINED_GNOSIS_WS_URL!, - 'https://rpc.gnosischain.com', + REACT_APP_GNOSIS_NODE_URL, + REACT_APP_UNCHAINED_GNOSIS_HTTP_URL, + REACT_APP_UNCHAINED_GNOSIS_WS_URL, ], } diff --git a/react-app-rewired/headers/csps/chains/litecoin.ts b/react-app-rewired/headers/csps/chains/litecoin.ts index 2a9fa23a22d..7c1b2b5574f 100644 --- a/react-app-rewired/headers/csps/chains/litecoin.ts +++ b/react-app-rewired/headers/csps/chains/litecoin.ts @@ -1,8 +1,13 @@ import type { Csp } from '../../types' +const REACT_APP_UNCHAINED_LITECOIN_HTTP_URL = process.env.REACT_APP_UNCHAINED_LITECOIN_HTTP_URL +const REACT_APP_UNCHAINED_LITECOIN_WS_URL = process.env.REACT_APP_UNCHAINED_LITECOIN_WS_URL + +if (!REACT_APP_UNCHAINED_LITECOIN_HTTP_URL) + throw new Error('REACT_APP_UNCHAINED_LITECOIN_HTTP_URL is required') +if (!REACT_APP_UNCHAINED_LITECOIN_WS_URL) + throw new Error('REACT_APP_UNCHAINED_LITECOIN_WS_URL is required') + export const csp: Csp = { - 'connect-src': [ - process.env.REACT_APP_UNCHAINED_LITECOIN_HTTP_URL!, - process.env.REACT_APP_UNCHAINED_LITECOIN_WS_URL!, - ], + 'connect-src': [REACT_APP_UNCHAINED_LITECOIN_HTTP_URL, REACT_APP_UNCHAINED_LITECOIN_WS_URL], } diff --git a/react-app-rewired/headers/csps/chains/optimism.ts b/react-app-rewired/headers/csps/chains/optimism.ts index 7e90cbb836c..74e8067a82d 100644 --- a/react-app-rewired/headers/csps/chains/optimism.ts +++ b/react-app-rewired/headers/csps/chains/optimism.ts @@ -1,10 +1,19 @@ import type { Csp } from '../../types' +const REACT_APP_OPTIMISM_NODE_URL = process.env.REACT_APP_OPTIMISM_NODE_URL +const REACT_APP_UNCHAINED_OPTIMISM_HTTP_URL = process.env.REACT_APP_UNCHAINED_OPTIMISM_HTTP_URL +const REACT_APP_UNCHAINED_OPTIMISM_WS_URL = process.env.REACT_APP_UNCHAINED_OPTIMISM_WS_URL + +if (!REACT_APP_OPTIMISM_NODE_URL) throw new Error('REACT_APP_OPTIMISM_NODE_URL is required') +if (!REACT_APP_UNCHAINED_OPTIMISM_HTTP_URL) + throw new Error('REACT_APP_UNCHAINED_OPTIMISM_HTTP_URL is required') +if (!REACT_APP_UNCHAINED_OPTIMISM_WS_URL) + throw new Error('REACT_APP_UNCHAINED_OPTIMISM_WS_URL is required') + export const csp: Csp = { 'connect-src': [ - process.env.REACT_APP_OPTIMISM_NODE_URL!, - process.env.REACT_APP_UNCHAINED_OPTIMISM_HTTP_URL!, - process.env.REACT_APP_UNCHAINED_OPTIMISM_WS_URL!, - 'https://optimism.llamarpc.com', + REACT_APP_OPTIMISM_NODE_URL, + REACT_APP_UNCHAINED_OPTIMISM_HTTP_URL, + REACT_APP_UNCHAINED_OPTIMISM_WS_URL, ], } diff --git a/react-app-rewired/headers/csps/chains/polygon.ts b/react-app-rewired/headers/csps/chains/polygon.ts index 74d7ad3ae48..cd2c8155367 100644 --- a/react-app-rewired/headers/csps/chains/polygon.ts +++ b/react-app-rewired/headers/csps/chains/polygon.ts @@ -1,10 +1,19 @@ import type { Csp } from '../../types' +const REACT_APP_POLYGON_NODE_URL = process.env.REACT_APP_POLYGON_NODE_URL +const REACT_APP_UNCHAINED_POLYGON_HTTP_URL = process.env.REACT_APP_UNCHAINED_POLYGON_HTTP_URL +const REACT_APP_UNCHAINED_POLYGON_WS_URL = process.env.REACT_APP_UNCHAINED_POLYGON_WS_URL + +if (!REACT_APP_POLYGON_NODE_URL) throw new Error('REACT_APP_POLYGON_NODE_URL is required') +if (!REACT_APP_UNCHAINED_POLYGON_HTTP_URL) + throw new Error('REACT_APP_UNCHAINED_POLYGON_HTTP_URL is required') +if (!REACT_APP_UNCHAINED_POLYGON_WS_URL) + throw new Error('REACT_APP_UNCHAINED_POLYGON_WS_URL is required') + export const csp: Csp = { 'connect-src': [ - process.env.REACT_APP_POLYGON_NODE_URL!, - process.env.REACT_APP_UNCHAINED_POLYGON_HTTP_URL!, - process.env.REACT_APP_UNCHAINED_POLYGON_WS_URL!, - 'https://polygon.llamarpc.com', + REACT_APP_POLYGON_NODE_URL, + REACT_APP_UNCHAINED_POLYGON_HTTP_URL, + REACT_APP_UNCHAINED_POLYGON_WS_URL, ], } diff --git a/react-app-rewired/headers/csps/chains/solana.ts b/react-app-rewired/headers/csps/chains/solana.ts index 78d30783a06..74232be56bd 100644 --- a/react-app-rewired/headers/csps/chains/solana.ts +++ b/react-app-rewired/headers/csps/chains/solana.ts @@ -1,9 +1,19 @@ import type { Csp } from '../../types' +const REACT_APP_UNCHAINED_SOLANA_HTTP_URL = process.env.REACT_APP_UNCHAINED_SOLANA_HTTP_URL +const REACT_APP_UNCHAINED_SOLANA_WS_URL = process.env.REACT_APP_UNCHAINED_SOLANA_WS_URL +const REACT_APP_SOLANA_NODE_URL = process.env.REACT_APP_SOLANA_NODE_URL + +if (!REACT_APP_UNCHAINED_SOLANA_HTTP_URL) + throw new Error('REACT_APP_UNCHAINED_SOLANA_HTTP_URL is required') +if (!REACT_APP_UNCHAINED_SOLANA_WS_URL) + throw new Error('REACT_APP_UNCHAINED_SOLANA_WS_URL is required') +if (!REACT_APP_SOLANA_NODE_URL) throw new Error('REACT_APP_SOLANA_NODE_URL is required') + export const csp: Csp = { 'connect-src': [ - process.env.REACT_APP_UNCHAINED_SOLANA_HTTP_URL!, - process.env.REACT_APP_UNCHAINED_SOLANA_WS_URL!, - process.env.REACT_APP_SOLANA_NODE_URL!, + REACT_APP_UNCHAINED_SOLANA_HTTP_URL, + REACT_APP_UNCHAINED_SOLANA_WS_URL, + REACT_APP_SOLANA_NODE_URL, ], } diff --git a/react-app-rewired/headers/csps/chains/thorchain.ts b/react-app-rewired/headers/csps/chains/thorchain.ts index ee6611bcba6..7e7dcaa20dc 100644 --- a/react-app-rewired/headers/csps/chains/thorchain.ts +++ b/react-app-rewired/headers/csps/chains/thorchain.ts @@ -1,10 +1,24 @@ import type { Csp } from '../../types' +const REACT_APP_UNCHAINED_THORCHAIN_HTTP_URL = process.env.REACT_APP_UNCHAINED_THORCHAIN_HTTP_URL +const REACT_APP_UNCHAINED_THORCHAIN_WS_URL = process.env.REACT_APP_UNCHAINED_THORCHAIN_WS_URL +const REACT_APP_UNCHAINED_THORCHAIN_V1_HTTP_URL = + process.env.REACT_APP_UNCHAINED_THORCHAIN_V1_HTTP_URL +const REACT_APP_THORCHAIN_NODE_URL = process.env.REACT_APP_THORCHAIN_NODE_URL + +if (!REACT_APP_UNCHAINED_THORCHAIN_HTTP_URL) + throw new Error('REACT_APP_UNCHAINED_THORCHAIN_HTTP_URL is required') +if (!REACT_APP_UNCHAINED_THORCHAIN_WS_URL) + throw new Error('REACT_APP_UNCHAINED_THORCHAIN_WS_URL is required') +if (!REACT_APP_UNCHAINED_THORCHAIN_V1_HTTP_URL) + throw new Error('REACT_APP_UNCHAINED_THORCHAIN_V1_HTTP_URL is required') +if (!REACT_APP_THORCHAIN_NODE_URL) throw new Error('REACT_APP_THORCHAIN_NODE_URL is required') + export const csp: Csp = { 'connect-src': [ - process.env.REACT_APP_UNCHAINED_THORCHAIN_HTTP_URL!, - process.env.REACT_APP_UNCHAINED_THORCHAIN_WS_URL!, - process.env.REACT_APP_UNCHAINED_THORCHAIN_V1_HTTP_URL!, - process.env.REACT_APP_THORCHAIN_NODE_URL!, + REACT_APP_UNCHAINED_THORCHAIN_HTTP_URL, + REACT_APP_UNCHAINED_THORCHAIN_WS_URL, + REACT_APP_UNCHAINED_THORCHAIN_V1_HTTP_URL, + REACT_APP_THORCHAIN_NODE_URL, ], } diff --git a/react-app-rewired/headers/csps/chatwoot.ts b/react-app-rewired/headers/csps/chatwoot.ts index ec5e82eb851..eb9dc77458e 100644 --- a/react-app-rewired/headers/csps/chatwoot.ts +++ b/react-app-rewired/headers/csps/chatwoot.ts @@ -1,7 +1,11 @@ import type { Csp } from '../types' +const REACT_APP_CHATWOOT_URL = process.env.REACT_APP_CHATWOOT_URL + +if (!REACT_APP_CHATWOOT_URL) throw new Error('REACT_APP_CHATWOOT_URL is required') + export const csp: Csp = { - 'connect-src': [process.env.REACT_APP_CHATWOOT_URL!], - 'script-src': [process.env.REACT_APP_CHATWOOT_URL!], - 'frame-src': [process.env.REACT_APP_CHATWOOT_URL!], + 'connect-src': [REACT_APP_CHATWOOT_URL], + 'script-src': [REACT_APP_CHATWOOT_URL], + 'frame-src': [REACT_APP_CHATWOOT_URL], } diff --git a/react-app-rewired/headers/csps/defi/mtpelerin.ts b/react-app-rewired/headers/csps/defi/mtpelerin.ts index 5bce7dc2c71..aa9dd3b8a6f 100644 --- a/react-app-rewired/headers/csps/defi/mtpelerin.ts +++ b/react-app-rewired/headers/csps/defi/mtpelerin.ts @@ -1,9 +1,17 @@ import type { Csp } from '../../types' +const REACT_APP_MTPELERIN_ASSETS_API = process.env.REACT_APP_MTPELERIN_ASSETS_API +const REACT_APP_MTPELERIN_BUY_URL = process.env.REACT_APP_MTPELERIN_BUY_URL +const REACT_APP_MTPELERIN_SELL_URL = process.env.REACT_APP_MTPELERIN_SELL_URL + +if (!REACT_APP_MTPELERIN_ASSETS_API) throw new Error('REACT_APP_MTPELERIN_ASSETS_API is required') +if (!REACT_APP_MTPELERIN_BUY_URL) throw new Error('REACT_APP_MTPELERIN_BUY_URL is required') +if (!REACT_APP_MTPELERIN_SELL_URL) throw new Error('REACT_APP_MTPELERIN_SELL_URL is required') + export const csp: Csp = { 'connect-src': [ - process.env.REACT_APP_MTPELERIN_ASSETS_API!, - process.env.REACT_APP_MTPELERIN_BUY_URL!, - process.env.REACT_APP_MTPELERIN_SELL_URL!, + REACT_APP_MTPELERIN_ASSETS_API, + REACT_APP_MTPELERIN_BUY_URL, + REACT_APP_MTPELERIN_SELL_URL, ], } diff --git a/react-app-rewired/headers/csps/fiatRamps/onRamper.ts b/react-app-rewired/headers/csps/fiatRamps/onRamper.ts index 29787fbfb63..ae2537788b3 100644 --- a/react-app-rewired/headers/csps/fiatRamps/onRamper.ts +++ b/react-app-rewired/headers/csps/fiatRamps/onRamper.ts @@ -1,8 +1,12 @@ import type { Csp } from '../../types' +const REACT_APP_ONRAMPER_API_URL = process.env.REACT_APP_ONRAMPER_API_URL +const REACT_APP_ONRAMPER_WIDGET_URL = process.env.REACT_APP_ONRAMPER_WIDGET_URL + +if (!REACT_APP_ONRAMPER_API_URL) throw new Error('REACT_APP_ONRAMPER_API_URL is required') +if (!REACT_APP_ONRAMPER_WIDGET_URL) throw new Error('REACT_APP_ONRAMPER_WIDGET_URL is required') + export const csp: Csp = { - 'connect-src': [ - process.env.REACT_APP_ONRAMPER_API_URL!, - process.env.REACT_APP_ONRAMPER_WIDGET_URL!, - ], + 'connect-src': [REACT_APP_ONRAMPER_API_URL, REACT_APP_ONRAMPER_WIDGET_URL], + 'frame-src': [REACT_APP_ONRAMPER_WIDGET_URL], } diff --git a/react-app-rewired/headers/csps/plugins/foxPage.ts b/react-app-rewired/headers/csps/plugins/foxPage.ts index 2ab55ca5cbd..6d04d164f6c 100644 --- a/react-app-rewired/headers/csps/plugins/foxPage.ts +++ b/react-app-rewired/headers/csps/plugins/foxPage.ts @@ -1,10 +1,20 @@ import type { Csp } from '../../types' +const REACT_APP_TOKEMAK_STATS_URL = process.env.REACT_APP_TOKEMAK_STATS_URL +const REACT_APP_BOARDROOM_API_BASE_URL = process.env.REACT_APP_BOARDROOM_API_BASE_URL + +if (!REACT_APP_TOKEMAK_STATS_URL) throw new Error('REACT_APP_TOKEMAK_STATS_URL is required') +if (!REACT_APP_BOARDROOM_API_BASE_URL) + throw new Error('REACT_APP_BOARDROOM_API_BASE_URL is required') + export const csp: Csp = { 'connect-src': [ - // https://github.com/shapeshift/web/blob/c85fbdd27c360fc09cd8a2aaabec493f9c4e8b78/src/state/apis/foxy/foxyApi.ts#L21 - process.env.REACT_APP_TOKEMAK_STATS_URL!, - // https://github.com/shapeshift/web/blob/965e5f3365e62f02f4cff3d0f78a020e0bf6b376/src/plugins/foxPage/hooks/getGovernanceData.ts#L47 - process.env.REACT_APP_BOARDROOM_API_BASE_URL!, + 'https://raw.githubusercontent.com/Uniswap/token-lists/master/test/schema/example.tokenlist.json', + 'https://raw.githubusercontent.com/Uniswap/default-token-list/master/src/tokens/mainnet.json', + 'https://raw.githubusercontent.com/compound-finance/token-list/master/compound.tokenlist.json', + 'https://api.tokemak.xyz/', + REACT_APP_TOKEMAK_STATS_URL, + 'https://api.boardroom.info/', + REACT_APP_BOARDROOM_API_BASE_URL, ], } diff --git a/react-app-rewired/headers/csps/wallets/keepkey.ts b/react-app-rewired/headers/csps/wallets/keepkey.ts index 87b3e18a300..4598949f728 100644 --- a/react-app-rewired/headers/csps/wallets/keepkey.ts +++ b/react-app-rewired/headers/csps/wallets/keepkey.ts @@ -1,8 +1,11 @@ import type { Csp } from '../../types' +const REACT_APP_KEEPKEY_VERSIONS_URL = process.env.REACT_APP_KEEPKEY_VERSIONS_URL +const REACT_APP_KEEPKEY_DESKTOP_URL = process.env.REACT_APP_KEEPKEY_DESKTOP_URL + +if (!REACT_APP_KEEPKEY_VERSIONS_URL) throw new Error('REACT_APP_KEEPKEY_VERSIONS_URL is required') +if (!REACT_APP_KEEPKEY_DESKTOP_URL) throw new Error('REACT_APP_KEEPKEY_DESKTOP_URL is required') + export const csp: Csp = { - 'connect-src': [ - process.env.REACT_APP_KEEPKEY_VERSIONS_URL!, - process.env.REACT_APP_KEEPKEY_DESKTOP_URL!, - ], + 'connect-src': [REACT_APP_KEEPKEY_VERSIONS_URL, REACT_APP_KEEPKEY_DESKTOP_URL], } diff --git a/react-app-rewired/headers/csps/wallets/walletConnect.ts b/react-app-rewired/headers/csps/wallets/walletConnect.ts index 8f9c9396d08..79e1c4ba9dd 100644 --- a/react-app-rewired/headers/csps/wallets/walletConnect.ts +++ b/react-app-rewired/headers/csps/wallets/walletConnect.ts @@ -1,8 +1,13 @@ import type { Csp } from '../../types' +const REACT_APP_WALLET_CONNECT_RELAY_URL = process.env.REACT_APP_WALLET_CONNECT_RELAY_URL + +if (!REACT_APP_WALLET_CONNECT_RELAY_URL) + throw new Error('REACT_APP_WALLET_CONNECT_RELAY_URL is required') + export const csp: Csp = { 'connect-src': [ - process.env.REACT_APP_WALLET_CONNECT_RELAY_URL!, + REACT_APP_WALLET_CONNECT_RELAY_URL, 'wss://*.bridge.walletconnect.org/', 'wss://*.relay.walletconnect.org/', 'wss://relay.walletconnect.org/', diff --git a/react-app-rewired/headers/csps/wallets/walletMigration.ts b/react-app-rewired/headers/csps/wallets/walletMigration.ts index 258a2b87f79..ba6a53ddd40 100644 --- a/react-app-rewired/headers/csps/wallets/walletMigration.ts +++ b/react-app-rewired/headers/csps/wallets/walletMigration.ts @@ -1,9 +1,13 @@ import type { Csp } from '../../types' +const REACT_APP_WALLET_MIGRATION_URL = process.env.REACT_APP_WALLET_MIGRATION_URL + +if (!REACT_APP_WALLET_MIGRATION_URL) throw new Error('REACT_APP_WALLET_MIGRATION_URL is required') + export const csp: Csp = { 'connect-src': [ // friendly-challenge@0.9.1: https://github.com/FriendlyCaptcha/friendly-challenge/blob/f110634f17f316b90a9bd59b190291abe3c639bb/src/captcha.ts#L20 'https://api.friendlycaptcha.com/api/v1/puzzle', - process.env.REACT_APP_WALLET_MIGRATION_URL!, + REACT_APP_WALLET_MIGRATION_URL, ], } diff --git a/react-app-rewired/headers/types.ts b/react-app-rewired/headers/types.ts index 130c60720df..d6eecf75d9c 100644 --- a/react-app-rewired/headers/types.ts +++ b/react-app-rewired/headers/types.ts @@ -1,2 +1,3 @@ +// process.env is not properly typed but could be if we were using vite imports.meta. wen vite? export type Csp = Record -export type CspEntry = [string, string] +export type CspEntry = string[]