forked from tornadocash/tornado-cli
Add offchain oracle contract
This commit is contained in:
parent
28508ef299
commit
8f656af0ac
@ -85,9 +85,9 @@ import {
|
|||||||
TreeCache,
|
TreeCache,
|
||||||
} from './services';
|
} from './services';
|
||||||
|
|
||||||
const DEFAULT_GAS_LIMIT = 600_000;
|
const DEFAULT_GAS_LIMIT = Number(process.env.DEFAULT_GAS_LIMIT) || 600_000;
|
||||||
const RELAYER_NETWORK = 1;
|
|
||||||
const TOKEN_PRICE_ORACLE = '0x0AdDd25a91563696D8567Df78D5A01C9a991F9B8';
|
const RELAYER_NETWORK = Number(process.env.RELAYER_NETWORK) || 1;
|
||||||
|
|
||||||
// Where cached events, trees, circuits, and key is saved
|
// Where cached events, trees, circuits, and key is saved
|
||||||
const STATIC_DIR = process.env.CACHE_DIR || path.join(__dirname, '../static');
|
const STATIC_DIR = process.env.CACHE_DIR || path.join(__dirname, '../static');
|
||||||
@ -280,7 +280,7 @@ export async function getProgramRelayer({
|
|||||||
|
|
||||||
const netConfig = getConfig(netId);
|
const netConfig = getConfig(netId);
|
||||||
|
|
||||||
const ethConfig = getConfig('1');
|
const ethConfig = getConfig(RELAYER_NETWORK);
|
||||||
|
|
||||||
const subdomains = getSubdomains();
|
const subdomains = getSubdomains();
|
||||||
|
|
||||||
@ -291,7 +291,7 @@ export async function getProgramRelayer({
|
|||||||
constants: { REGISTRY_BLOCK },
|
constants: { REGISTRY_BLOCK },
|
||||||
} = ethConfig;
|
} = ethConfig;
|
||||||
|
|
||||||
const provider = getProgramProvider(1, ethRpc, ethConfig, {
|
const provider = getProgramProvider(RELAYER_NETWORK, ethRpc, ethConfig, {
|
||||||
...fetchDataOptions,
|
...fetchDataOptions,
|
||||||
});
|
});
|
||||||
|
|
||||||
@ -791,6 +791,7 @@ export function tornadoProgram() {
|
|||||||
nativeCurrency,
|
nativeCurrency,
|
||||||
multicallContract,
|
multicallContract,
|
||||||
routerContract,
|
routerContract,
|
||||||
|
offchainOracleContract,
|
||||||
ovmGasPriceOracleContract,
|
ovmGasPriceOracleContract,
|
||||||
tokens: { [currency]: currencyConfig },
|
tokens: { [currency]: currencyConfig },
|
||||||
} = config;
|
} = config;
|
||||||
@ -833,10 +834,11 @@ export function tornadoProgram() {
|
|||||||
? OvmGasPriceOracle__factory.connect(ovmGasPriceOracleContract, provider)
|
? OvmGasPriceOracle__factory.connect(ovmGasPriceOracleContract, provider)
|
||||||
: undefined,
|
: undefined,
|
||||||
);
|
);
|
||||||
|
|
||||||
const tokenPriceOracle = new TokenPriceOracle(
|
const tokenPriceOracle = new TokenPriceOracle(
|
||||||
provider,
|
provider,
|
||||||
Multicall,
|
Multicall,
|
||||||
OffchainOracle__factory.connect(TOKEN_PRICE_ORACLE, provider),
|
offchainOracleContract ? OffchainOracle__factory.connect(offchainOracleContract, provider) : undefined,
|
||||||
);
|
);
|
||||||
|
|
||||||
const depositsServiceConstructor = {
|
const depositsServiceConstructor = {
|
||||||
|
@ -54,11 +54,12 @@ export type Config = {
|
|||||||
rpcUrls: RpcUrls;
|
rpcUrls: RpcUrls;
|
||||||
multicallContract: string;
|
multicallContract: string;
|
||||||
routerContract: string;
|
routerContract: string;
|
||||||
|
echoContract: string;
|
||||||
|
offchainOracleContract?: string;
|
||||||
tornContract?: string;
|
tornContract?: string;
|
||||||
governanceContract?: string;
|
governanceContract?: string;
|
||||||
stakingRewardsContract?: string;
|
stakingRewardsContract?: string;
|
||||||
registryContract?: string;
|
registryContract?: string;
|
||||||
echoContract: string;
|
|
||||||
aggregatorContract?: string;
|
aggregatorContract?: string;
|
||||||
reverseRecordsContract?: string;
|
reverseRecordsContract?: string;
|
||||||
gasPriceOracleContract?: string;
|
gasPriceOracleContract?: string;
|
||||||
@ -147,11 +148,12 @@ export const defaultConfig: networkConfig = {
|
|||||||
},
|
},
|
||||||
multicallContract: '0xcA11bde05977b3631167028862bE2a173976CA11',
|
multicallContract: '0xcA11bde05977b3631167028862bE2a173976CA11',
|
||||||
routerContract: '0xd90e2f925DA726b50C4Ed8D0Fb90Ad053324F31b',
|
routerContract: '0xd90e2f925DA726b50C4Ed8D0Fb90Ad053324F31b',
|
||||||
|
echoContract: '0x9B27DD5Bb15d42DC224FCD0B7caEbBe16161Df42',
|
||||||
|
offchainOracleContract: '0x0AdDd25a91563696D8567Df78D5A01C9a991F9B8',
|
||||||
tornContract: '0x77777FeDdddFfC19Ff86DB637967013e6C6A116C',
|
tornContract: '0x77777FeDdddFfC19Ff86DB637967013e6C6A116C',
|
||||||
governanceContract: '0x5efda50f22d34F262c29268506C5Fa42cB56A1Ce',
|
governanceContract: '0x5efda50f22d34F262c29268506C5Fa42cB56A1Ce',
|
||||||
stakingRewardsContract: '0x5B3f656C80E8ddb9ec01Dd9018815576E9238c29',
|
stakingRewardsContract: '0x5B3f656C80E8ddb9ec01Dd9018815576E9238c29',
|
||||||
registryContract: '0x58E8dCC13BE9780fC42E8723D8EaD4CF46943dF2',
|
registryContract: '0x58E8dCC13BE9780fC42E8723D8EaD4CF46943dF2',
|
||||||
echoContract: '0x9B27DD5Bb15d42DC224FCD0B7caEbBe16161Df42',
|
|
||||||
aggregatorContract: '0xE8F47A78A6D52D317D0D2FFFac56739fE14D1b49',
|
aggregatorContract: '0xE8F47A78A6D52D317D0D2FFFac56739fE14D1b49',
|
||||||
reverseRecordsContract: '0x3671aE578E63FdF66ad4F3E12CC0c0d71Ac7510C',
|
reverseRecordsContract: '0x3671aE578E63FdF66ad4F3E12CC0c0d71Ac7510C',
|
||||||
tornadoSubgraph: 'tornadocash/mainnet-tornado-subgraph',
|
tornadoSubgraph: 'tornadocash/mainnet-tornado-subgraph',
|
||||||
@ -258,8 +260,9 @@ export const defaultConfig: networkConfig = {
|
|||||||
networkName: 'Binance Smart Chain',
|
networkName: 'Binance Smart Chain',
|
||||||
deployedBlock: 8158799,
|
deployedBlock: 8158799,
|
||||||
multicallContract: '0xcA11bde05977b3631167028862bE2a173976CA11',
|
multicallContract: '0xcA11bde05977b3631167028862bE2a173976CA11',
|
||||||
echoContract: '0xa75BF2815618872f155b7C4B0C81bF990f5245E4',
|
|
||||||
routerContract: '0x0D5550d52428E7e3175bfc9550207e4ad3859b17',
|
routerContract: '0x0D5550d52428E7e3175bfc9550207e4ad3859b17',
|
||||||
|
echoContract: '0xa75BF2815618872f155b7C4B0C81bF990f5245E4',
|
||||||
|
offchainOracleContract: '0x0AdDd25a91563696D8567Df78D5A01C9a991F9B8',
|
||||||
tornadoSubgraph: 'tornadocash/bsc-tornado-subgraph',
|
tornadoSubgraph: 'tornadocash/bsc-tornado-subgraph',
|
||||||
subgraphs: {
|
subgraphs: {
|
||||||
tornado,
|
tornado,
|
||||||
@ -322,8 +325,9 @@ export const defaultConfig: networkConfig = {
|
|||||||
networkName: 'Polygon (Matic) Network',
|
networkName: 'Polygon (Matic) Network',
|
||||||
deployedBlock: 16257962,
|
deployedBlock: 16257962,
|
||||||
multicallContract: '0xcA11bde05977b3631167028862bE2a173976CA11',
|
multicallContract: '0xcA11bde05977b3631167028862bE2a173976CA11',
|
||||||
echoContract: '0xa75BF2815618872f155b7C4B0C81bF990f5245E4',
|
|
||||||
routerContract: '0x0D5550d52428E7e3175bfc9550207e4ad3859b17',
|
routerContract: '0x0D5550d52428E7e3175bfc9550207e4ad3859b17',
|
||||||
|
echoContract: '0xa75BF2815618872f155b7C4B0C81bF990f5245E4',
|
||||||
|
offchainOracleContract: '0x0AdDd25a91563696D8567Df78D5A01C9a991F9B8',
|
||||||
gasPriceOracleContract: '0xF81A8D8D3581985D3969fe53bFA67074aDFa8F3C',
|
gasPriceOracleContract: '0xF81A8D8D3581985D3969fe53bFA67074aDFa8F3C',
|
||||||
tornadoSubgraph: 'tornadocash/matic-tornado-subgraph',
|
tornadoSubgraph: 'tornadocash/matic-tornado-subgraph',
|
||||||
subgraphs: {
|
subgraphs: {
|
||||||
@ -379,8 +383,9 @@ export const defaultConfig: networkConfig = {
|
|||||||
networkName: 'Optimism',
|
networkName: 'Optimism',
|
||||||
deployedBlock: 2243689,
|
deployedBlock: 2243689,
|
||||||
multicallContract: '0xcA11bde05977b3631167028862bE2a173976CA11',
|
multicallContract: '0xcA11bde05977b3631167028862bE2a173976CA11',
|
||||||
echoContract: '0xa75BF2815618872f155b7C4B0C81bF990f5245E4',
|
|
||||||
routerContract: '0x0D5550d52428E7e3175bfc9550207e4ad3859b17',
|
routerContract: '0x0D5550d52428E7e3175bfc9550207e4ad3859b17',
|
||||||
|
echoContract: '0xa75BF2815618872f155b7C4B0C81bF990f5245E4',
|
||||||
|
offchainOracleContract: '0x0AdDd25a91563696D8567Df78D5A01C9a991F9B8',
|
||||||
ovmGasPriceOracleContract: '0x420000000000000000000000000000000000000F',
|
ovmGasPriceOracleContract: '0x420000000000000000000000000000000000000F',
|
||||||
tornadoSubgraph: 'tornadocash/optimism-tornado-subgraph',
|
tornadoSubgraph: 'tornadocash/optimism-tornado-subgraph',
|
||||||
subgraphs: {
|
subgraphs: {
|
||||||
@ -444,8 +449,9 @@ export const defaultConfig: networkConfig = {
|
|||||||
networkName: 'Arbitrum One',
|
networkName: 'Arbitrum One',
|
||||||
deployedBlock: 3430648,
|
deployedBlock: 3430648,
|
||||||
multicallContract: '0xcA11bde05977b3631167028862bE2a173976CA11',
|
multicallContract: '0xcA11bde05977b3631167028862bE2a173976CA11',
|
||||||
echoContract: '0xa75BF2815618872f155b7C4B0C81bF990f5245E4',
|
|
||||||
routerContract: '0x0D5550d52428E7e3175bfc9550207e4ad3859b17',
|
routerContract: '0x0D5550d52428E7e3175bfc9550207e4ad3859b17',
|
||||||
|
echoContract: '0xa75BF2815618872f155b7C4B0C81bF990f5245E4',
|
||||||
|
offchainOracleContract: '0x0AdDd25a91563696D8567Df78D5A01C9a991F9B8',
|
||||||
tornadoSubgraph: 'tornadocash/arbitrum-tornado-subgraph',
|
tornadoSubgraph: 'tornadocash/arbitrum-tornado-subgraph',
|
||||||
subgraphs: {
|
subgraphs: {
|
||||||
tornado,
|
tornado,
|
||||||
@ -508,8 +514,9 @@ export const defaultConfig: networkConfig = {
|
|||||||
networkName: 'Gnosis Chain',
|
networkName: 'Gnosis Chain',
|
||||||
deployedBlock: 17754561,
|
deployedBlock: 17754561,
|
||||||
multicallContract: '0xcA11bde05977b3631167028862bE2a173976CA11',
|
multicallContract: '0xcA11bde05977b3631167028862bE2a173976CA11',
|
||||||
echoContract: '0xa75BF2815618872f155b7C4B0C81bF990f5245E4',
|
|
||||||
routerContract: '0x0D5550d52428E7e3175bfc9550207e4ad3859b17',
|
routerContract: '0x0D5550d52428E7e3175bfc9550207e4ad3859b17',
|
||||||
|
echoContract: '0xa75BF2815618872f155b7C4B0C81bF990f5245E4',
|
||||||
|
offchainOracleContract: '0x0AdDd25a91563696D8567Df78D5A01C9a991F9B8',
|
||||||
tornadoSubgraph: 'tornadocash/xdai-tornado-subgraph',
|
tornadoSubgraph: 'tornadocash/xdai-tornado-subgraph',
|
||||||
subgraphs: {
|
subgraphs: {
|
||||||
tornado,
|
tornado,
|
||||||
@ -572,8 +579,9 @@ export const defaultConfig: networkConfig = {
|
|||||||
networkName: 'Avalanche Mainnet',
|
networkName: 'Avalanche Mainnet',
|
||||||
deployedBlock: 4429818,
|
deployedBlock: 4429818,
|
||||||
multicallContract: '0xcA11bde05977b3631167028862bE2a173976CA11',
|
multicallContract: '0xcA11bde05977b3631167028862bE2a173976CA11',
|
||||||
echoContract: '0xa75BF2815618872f155b7C4B0C81bF990f5245E4',
|
|
||||||
routerContract: '0x0D5550d52428E7e3175bfc9550207e4ad3859b17',
|
routerContract: '0x0D5550d52428E7e3175bfc9550207e4ad3859b17',
|
||||||
|
echoContract: '0xa75BF2815618872f155b7C4B0C81bF990f5245E4',
|
||||||
|
offchainOracleContract: '0x0AdDd25a91563696D8567Df78D5A01C9a991F9B8',
|
||||||
tornadoSubgraph: 'tornadocash/avalanche-tornado-subgraph',
|
tornadoSubgraph: 'tornadocash/avalanche-tornado-subgraph',
|
||||||
subgraphs: {
|
subgraphs: {
|
||||||
theGraph,
|
theGraph,
|
||||||
@ -627,11 +635,11 @@ export const defaultConfig: networkConfig = {
|
|||||||
deployedBlock: 5594395,
|
deployedBlock: 5594395,
|
||||||
multicallContract: '0xcA11bde05977b3631167028862bE2a173976CA11',
|
multicallContract: '0xcA11bde05977b3631167028862bE2a173976CA11',
|
||||||
routerContract: '0x1572AFE6949fdF51Cb3E0856216670ae9Ee160Ee',
|
routerContract: '0x1572AFE6949fdF51Cb3E0856216670ae9Ee160Ee',
|
||||||
|
echoContract: '0xa75BF2815618872f155b7C4B0C81bF990f5245E4',
|
||||||
tornContract: '0x3AE6667167C0f44394106E197904519D808323cA',
|
tornContract: '0x3AE6667167C0f44394106E197904519D808323cA',
|
||||||
governanceContract: '0xe5324cD7602eeb387418e594B87aCADee08aeCAD',
|
governanceContract: '0xe5324cD7602eeb387418e594B87aCADee08aeCAD',
|
||||||
stakingRewardsContract: '0x6d0018890751Efd31feb8166711B16732E2b496b',
|
stakingRewardsContract: '0x6d0018890751Efd31feb8166711B16732E2b496b',
|
||||||
registryContract: '0x1428e5d2356b13778A13108b10c440C83011dfB8',
|
registryContract: '0x1428e5d2356b13778A13108b10c440C83011dfB8',
|
||||||
echoContract: '0xcDD1fc3F5ac2782D83449d3AbE80D6b7B273B0e5',
|
|
||||||
aggregatorContract: '0x4088712AC9fad39ea133cdb9130E465d235e9642',
|
aggregatorContract: '0x4088712AC9fad39ea133cdb9130E465d235e9642',
|
||||||
reverseRecordsContract: '0xEc29700C0283e5Be64AcdFe8077d6cC95dE23C23',
|
reverseRecordsContract: '0xEc29700C0283e5Be64AcdFe8077d6cC95dE23C23',
|
||||||
tornadoSubgraph: 'tornadocash/sepolia-tornado-subgraph',
|
tornadoSubgraph: 'tornadocash/sepolia-tornado-subgraph',
|
||||||
@ -692,7 +700,7 @@ export const enabledChains = ['1', '10', '56', '100', '137', '42161', '43114', '
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* Custom config object to extend default config
|
* Custom config object to extend default config
|
||||||
*
|
*
|
||||||
* Inspired by getUrlFunc from ethers.js
|
* Inspired by getUrlFunc from ethers.js
|
||||||
* https://github.com/ethers-io/ethers.js/blob/v6/src.ts/utils/fetch.ts#L59
|
* https://github.com/ethers-io/ethers.js/blob/v6/src.ts/utils/fetch.ts#L59
|
||||||
*/
|
*/
|
||||||
@ -700,7 +708,7 @@ export let customConfig: networkConfig = {};
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* Add or override existing network config object
|
* Add or override existing network config object
|
||||||
*
|
*
|
||||||
* Could be also called on the UI hook so that the UI could allow people to use privacy pools that it hasn't deployed
|
* Could be also called on the UI hook so that the UI could allow people to use privacy pools that it hasn't deployed
|
||||||
*/
|
*/
|
||||||
export function addNetwork(newConfig: networkConfig) {
|
export function addNetwork(newConfig: networkConfig) {
|
||||||
|
Loading…
Reference in New Issue
Block a user