@mixerx/config 0.1.2 → 0.2.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +22 -4
- package/dist/assertions.d.ts +10 -1
- package/dist/assertions.d.ts.map +1 -1
- package/dist/assertions.js +148 -35
- package/dist/assertions.js.map +1 -1
- package/dist/config.d.ts +7 -6
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +113 -152
- package/dist/config.js.map +1 -1
- package/dist/types.d.ts +28 -3
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js +1 -1
- package/dist/types.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -1,10 +1,28 @@
|
|
|
1
1
|
# @mixerx/config
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
MixerX protocol config package.
|
|
4
4
|
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
`
|
|
5
|
+
Supported network ids are exported from `SUPPORTED_NET_IDS`. Pool contracts live
|
|
6
|
+
under `instances[chainId]`, and chain-level defaults live under
|
|
7
|
+
`networkConfigByNetId[chainId]`.
|
|
8
|
+
|
|
9
|
+
## Sepolia status
|
|
10
|
+
|
|
11
|
+
Sepolia (`11155111`) is partially configured with the deployed pools, router,
|
|
12
|
+
relayer registry, MXR token, and DAI token.
|
|
13
|
+
|
|
14
|
+
The Sepolia deployment does not have these contracts yet:
|
|
15
|
+
|
|
16
|
+
- `networkConfigByNetId[11155111].contracts.aggregator`
|
|
17
|
+
- `networkConfigByNetId[11155111].contracts.offchainOracleAddress`
|
|
18
|
+
|
|
19
|
+
Both must be added before using Sepolia in flows that need relayer ENS
|
|
20
|
+
resolution, price feeds, or token/oracle rates. That currently includes
|
|
21
|
+
`admin-api` onchain relayer reads, `mixerx-relayer`, and `mixerx-oracles`.
|
|
22
|
+
|
|
23
|
+
Custom pools that do not map to a fixed denomination use the string key
|
|
24
|
+
`custom` in `instanceAddress`, producing pool ids like `eth-custom` or
|
|
25
|
+
`mxr-custom`.
|
|
8
26
|
|
|
9
27
|
## Scripts
|
|
10
28
|
|
package/dist/assertions.d.ts
CHANGED
|
@@ -1,10 +1,11 @@
|
|
|
1
|
-
import type { Address, Instances, Mining, Torn, TornadoTrees, Vesting, Voucher } from './types.js';
|
|
1
|
+
import type { Address, Instances, Mining, NetworkConfig, RewardSwap, TokenConfig, Torn, TornadoTrees, Vesting, Voucher } from './types.js';
|
|
2
2
|
export declare function assertValidConfigShape(input: {
|
|
3
3
|
torn: Torn;
|
|
4
4
|
miningV2: Mining;
|
|
5
5
|
vesting: Vesting;
|
|
6
6
|
instances: Instances;
|
|
7
7
|
voucher: Voucher;
|
|
8
|
+
rewardSwap: RewardSwap;
|
|
8
9
|
tornadoTrees: TornadoTrees;
|
|
9
10
|
governance: Address;
|
|
10
11
|
governanceImpl: Address;
|
|
@@ -21,5 +22,13 @@ export declare function assertValidConfigShape(input: {
|
|
|
21
22
|
tornadoRouter: Address;
|
|
22
23
|
instanceRegistry: Address;
|
|
23
24
|
deployer: Address;
|
|
25
|
+
relayerRegistryProxy: Address;
|
|
26
|
+
aggregator: Address;
|
|
27
|
+
offchainOracle: Address;
|
|
28
|
+
governanceProxy: Address;
|
|
29
|
+
tornadoProxyMainnet: Address;
|
|
30
|
+
mixerxToken: TokenConfig;
|
|
31
|
+
wrappedStablecoin: Address;
|
|
32
|
+
networkConfigByNetId: Partial<Record<number, NetworkConfig>>;
|
|
24
33
|
}): void;
|
|
25
34
|
//# sourceMappingURL=assertions.d.ts.map
|
package/dist/assertions.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"assertions.d.ts","sourceRoot":"","sources":["../src/assertions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"assertions.d.ts","sourceRoot":"","sources":["../src/assertions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,OAAO,EAEP,SAAS,EACT,MAAM,EACN,aAAa,EAEb,UAAU,EACV,WAAW,EACX,IAAI,EACJ,YAAY,EACZ,OAAO,EACP,OAAO,EACR,MAAM,YAAY,CAAC;AA6LpB,wBAAgB,sBAAsB,CAAC,KAAK,EAAE;IAC5C,IAAI,EAAE,IAAI,CAAC;IACX,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,SAAS,CAAC;IACrB,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,EAAE,UAAU,CAAC;IACvB,YAAY,EAAE,YAAY,CAAC;IAC3B,UAAU,EAAE,OAAO,CAAC;IACpB,cAAc,EAAE,OAAO,CAAC;IACxB,YAAY,EAAE,OAAO,CAAC;IACtB,iBAAiB,EAAE,OAAO,CAAC;IAC3B,cAAc,EAAE,OAAO,CAAC;IACxB,kBAAkB,EAAE,OAAO,CAAC;IAC5B,gBAAgB,EAAE,OAAO,CAAC;IAC1B,eAAe,EAAE,OAAO,CAAC;IACzB,eAAe,EAAE,OAAO,CAAC;IACzB,UAAU,EAAE,OAAO,CAAC;IACpB,qBAAqB,EAAE,OAAO,CAAC;IAC/B,eAAe,EAAE,OAAO,CAAC;IACzB,aAAa,EAAE,OAAO,CAAC;IACvB,gBAAgB,EAAE,OAAO,CAAC;IAC1B,QAAQ,EAAE,OAAO,CAAC;IAClB,oBAAoB,EAAE,OAAO,CAAC;IAC9B,UAAU,EAAE,OAAO,CAAC;IACpB,cAAc,EAAE,OAAO,CAAC;IACxB,eAAe,EAAE,OAAO,CAAC;IACzB,mBAAmB,EAAE,OAAO,CAAC;IAC7B,WAAW,EAAE,WAAW,CAAC;IACzB,iBAAiB,EAAE,OAAO,CAAC;IAC3B,oBAAoB,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC,CAAC;CAC9D,GAAG,IAAI,CAqCP"}
|
package/dist/assertions.js
CHANGED
|
@@ -1,40 +1,110 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.assertValidConfigShape = assertValidConfigShape;
|
|
4
|
+
const mainnetRequiredContracts = [
|
|
5
|
+
'relayerRegistryAddress',
|
|
6
|
+
'relayerRegistry',
|
|
7
|
+
'aggregator',
|
|
8
|
+
'offchainOracleAddress',
|
|
9
|
+
'tornadoRouter',
|
|
10
|
+
'deployer',
|
|
11
|
+
'feeManager',
|
|
12
|
+
'governance',
|
|
13
|
+
'governanceImpl',
|
|
14
|
+
'governanceAddress',
|
|
15
|
+
'instanceRegistry',
|
|
16
|
+
'oldMixerXProxy',
|
|
17
|
+
'poseidonHasher2',
|
|
18
|
+
'poseidonHasher3',
|
|
19
|
+
'rewardSwap',
|
|
20
|
+
'rewardVerifier',
|
|
21
|
+
'tornadoProxy',
|
|
22
|
+
'tornadoProxyLight',
|
|
23
|
+
'tornadoStakingRewards',
|
|
24
|
+
'tornadoTrees',
|
|
25
|
+
'treeUpdateVerifier',
|
|
26
|
+
'voucher',
|
|
27
|
+
'withdrawVerifier',
|
|
28
|
+
];
|
|
29
|
+
const sepoliaRequiredContracts = [
|
|
30
|
+
'deployer',
|
|
31
|
+
'hasher',
|
|
32
|
+
'admin',
|
|
33
|
+
'currentAdmin',
|
|
34
|
+
'feeManager',
|
|
35
|
+
'mxr',
|
|
36
|
+
'dai',
|
|
37
|
+
'instanceRegistry',
|
|
38
|
+
'relayerRegistryAddress',
|
|
39
|
+
'relayerRegistry',
|
|
40
|
+
'tornadoRouter',
|
|
41
|
+
'mixerXRouter',
|
|
42
|
+
'verifier',
|
|
43
|
+
'aggregator',
|
|
44
|
+
'offchainOracleAddress',
|
|
45
|
+
];
|
|
46
|
+
function assertString(value, key) {
|
|
47
|
+
if (typeof value !== 'string' || value.length === 0) {
|
|
48
|
+
throw new Error(`Missing ${key}`);
|
|
49
|
+
}
|
|
50
|
+
}
|
|
4
51
|
function assertAddressLike(value, key) {
|
|
5
|
-
|
|
6
|
-
|
|
52
|
+
assertString(value.address, `${key}.address`);
|
|
53
|
+
}
|
|
54
|
+
function assertToken(value, key) {
|
|
55
|
+
assertString(value.address, `${key}.address`);
|
|
56
|
+
assertString(value.symbol, `${key}.symbol`);
|
|
57
|
+
if (!Number.isFinite(value.decimals) || !Number.isInteger(value.decimals) || value.decimals < 0) {
|
|
58
|
+
throw new Error(`Invalid ${key}.decimals`);
|
|
7
59
|
}
|
|
8
60
|
}
|
|
9
61
|
function assertTorn(value) {
|
|
10
|
-
|
|
11
|
-
|
|
62
|
+
assertString(value.address, 'torn.address');
|
|
63
|
+
assertString(value.capitalization, 'torn.capitalization');
|
|
64
|
+
if (!Number.isFinite(value.pausePeriod) || value.pausePeriod <= 0) {
|
|
65
|
+
throw new Error('Invalid torn.pausePeriod');
|
|
66
|
+
}
|
|
67
|
+
for (const key of ['airdrop', 'miningV2', 'governance', 'team1', 'team2', 'team3', 'team4', 'team5']) {
|
|
68
|
+
assertString(value.distribution[key].to, `torn.distribution.${key}.to`);
|
|
69
|
+
assertString(value.distribution[key].amount, `torn.distribution.${key}.amount`);
|
|
12
70
|
}
|
|
13
71
|
}
|
|
14
72
|
function assertMining(value) {
|
|
15
|
-
|
|
16
|
-
|
|
73
|
+
assertString(value.address, 'miningV2.address');
|
|
74
|
+
assertString(value.initialBalance, 'miningV2.initialBalance');
|
|
75
|
+
if (!Array.isArray(value.rates) || value.rates.length === 0) {
|
|
76
|
+
throw new Error('Invalid miningV2.rates');
|
|
77
|
+
}
|
|
78
|
+
for (const [index, rate] of value.rates.entries()) {
|
|
79
|
+
assertString(rate.instance, `miningV2.rates.${index}.instance`);
|
|
80
|
+
assertString(rate.value, `miningV2.rates.${index}.value`);
|
|
17
81
|
}
|
|
18
82
|
}
|
|
19
|
-
function
|
|
20
|
-
|
|
21
|
-
|
|
83
|
+
function assertVesting(value) {
|
|
84
|
+
for (const key of ['team1', 'team2', 'team3', 'team4', 'team5', 'governance']) {
|
|
85
|
+
const vestingInfo = value[key];
|
|
86
|
+
assertString(vestingInfo.address, `vesting.${key}.address`);
|
|
87
|
+
if (!Number.isFinite(vestingInfo.cliff) || !Number.isFinite(vestingInfo.duration)) {
|
|
88
|
+
throw new Error(`Invalid vesting.${key} schedule`);
|
|
89
|
+
}
|
|
22
90
|
}
|
|
23
91
|
}
|
|
24
|
-
function
|
|
25
|
-
|
|
26
|
-
|
|
92
|
+
function assertVoucher(value) {
|
|
93
|
+
assertString(value.address, 'voucher.address');
|
|
94
|
+
if (!Number.isFinite(value.duration) || value.duration <= 0) {
|
|
95
|
+
throw new Error('Invalid voucher.duration');
|
|
27
96
|
}
|
|
28
97
|
}
|
|
29
|
-
function
|
|
30
|
-
|
|
31
|
-
if (
|
|
32
|
-
throw new Error('Invalid
|
|
98
|
+
function assertRewardSwap(value) {
|
|
99
|
+
assertString(value.address, 'rewardSwap.address');
|
|
100
|
+
if (!Number.isFinite(value.poolWeight) || value.poolWeight <= 0) {
|
|
101
|
+
throw new Error('Invalid rewardSwap.poolWeight');
|
|
33
102
|
}
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
103
|
+
}
|
|
104
|
+
function assertTornadoTrees(value) {
|
|
105
|
+
assertString(value.address, 'tornadoTrees.address');
|
|
106
|
+
if (!Number.isInteger(value.levels) || value.levels <= 0) {
|
|
107
|
+
throw new Error('Invalid tornadoTrees.levels');
|
|
38
108
|
}
|
|
39
109
|
}
|
|
40
110
|
function assertCurrency(network, key, value) {
|
|
@@ -60,27 +130,70 @@ function assertInstances(instances) {
|
|
|
60
130
|
}
|
|
61
131
|
}
|
|
62
132
|
}
|
|
133
|
+
function assertCompleteNetworkConfig(network, value, requiredContracts) {
|
|
134
|
+
if (!value || typeof value !== 'object' || !('contracts' in value) || !value.contracts) {
|
|
135
|
+
throw new Error(`Invalid ${network} config: missing contracts`);
|
|
136
|
+
}
|
|
137
|
+
if (!('tokens' in value) || !value.tokens) {
|
|
138
|
+
throw new Error(`Invalid ${network} config: missing tokens`);
|
|
139
|
+
}
|
|
140
|
+
const { contracts, tokens } = value;
|
|
141
|
+
for (const contractKey of requiredContracts) {
|
|
142
|
+
assertString(contracts[contractKey], `${network}.contracts.${String(contractKey)}`);
|
|
143
|
+
}
|
|
144
|
+
if (!tokens.mixerXTokenAddress ||
|
|
145
|
+
!tokens.mixerXTokenSymbol ||
|
|
146
|
+
!Number.isFinite(tokens.mixerXTokenDecimals) ||
|
|
147
|
+
!tokens.wrappedStablecoinAddress) {
|
|
148
|
+
throw new Error(`Invalid ${network} tokens config`);
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
function assertNetworkConfig(value) {
|
|
152
|
+
const mainnetConfig = value[1];
|
|
153
|
+
if (!mainnetConfig) {
|
|
154
|
+
throw new Error('Missing networkConfigByNetId.1');
|
|
155
|
+
}
|
|
156
|
+
const sepoliaConfig = value[11155111];
|
|
157
|
+
if (!sepoliaConfig) {
|
|
158
|
+
throw new Error('Missing networkConfigByNetId.11155111');
|
|
159
|
+
}
|
|
160
|
+
assertCompleteNetworkConfig('mainnet', mainnetConfig, mainnetRequiredContracts);
|
|
161
|
+
assertCompleteNetworkConfig('sepolia', sepoliaConfig, sepoliaRequiredContracts);
|
|
162
|
+
}
|
|
63
163
|
function assertValidConfigShape(input) {
|
|
64
164
|
assertTorn(input.torn);
|
|
65
165
|
assertMining(input.miningV2);
|
|
66
166
|
assertVesting(input.vesting);
|
|
67
167
|
assertInstances(input.instances);
|
|
68
168
|
assertVoucher(input.voucher);
|
|
169
|
+
assertRewardSwap(input.rewardSwap);
|
|
69
170
|
assertTornadoTrees(input.tornadoTrees);
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
171
|
+
for (const [key, value] of [
|
|
172
|
+
['governance', input.governance],
|
|
173
|
+
['governanceImpl', input.governanceImpl],
|
|
174
|
+
['tornadoProxy', input.tornadoProxy],
|
|
175
|
+
['tornadoProxyLight', input.tornadoProxyLight],
|
|
176
|
+
['rewardVerifier', input.rewardVerifier],
|
|
177
|
+
['treeUpdateVerifier', input.treeUpdateVerifier],
|
|
178
|
+
['withdrawVerifier', input.withdrawVerifier],
|
|
179
|
+
['poseidonHasher2', input.poseidonHasher2],
|
|
180
|
+
['poseidonHasher3', input.poseidonHasher3],
|
|
181
|
+
['feeManager', input.feeManager],
|
|
182
|
+
['tornadoStakingRewards', input.tornadoStakingRewards],
|
|
183
|
+
['relayerRegistry', input.relayerRegistry],
|
|
184
|
+
['tornadoRouter', input.tornadoRouter],
|
|
185
|
+
['instanceRegistry', input.instanceRegistry],
|
|
186
|
+
['deployer', input.deployer],
|
|
187
|
+
['relayerRegistryProxy', input.relayerRegistryProxy],
|
|
188
|
+
['aggregator', input.aggregator],
|
|
189
|
+
['offchainOracle', input.offchainOracle],
|
|
190
|
+
['governanceProxy', input.governanceProxy],
|
|
191
|
+
['tornadoProxyMainnet', input.tornadoProxyMainnet],
|
|
192
|
+
['wrappedStablecoin', input.wrappedStablecoin],
|
|
193
|
+
]) {
|
|
194
|
+
assertAddressLike(value, key);
|
|
195
|
+
}
|
|
196
|
+
assertToken(input.mixerxToken, 'mixerxToken');
|
|
197
|
+
assertNetworkConfig(input.networkConfigByNetId);
|
|
85
198
|
}
|
|
86
199
|
//# sourceMappingURL=assertions.js.map
|
package/dist/assertions.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"assertions.js","sourceRoot":"","sources":["../src/assertions.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"assertions.js","sourceRoot":"","sources":["../src/assertions.ts"],"names":[],"mappings":"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"}
|
package/dist/config.d.ts
CHANGED
|
@@ -1,8 +1,11 @@
|
|
|
1
|
-
import type { Address,
|
|
1
|
+
import type { Address, InstanceCurrency, Instances, Mining, NetworkConfig, RewardSwap, TokenConfig, Torn, TornadoTrees, Vesting, Voucher, availableIds } from './types.js';
|
|
2
2
|
export declare const torn: Torn;
|
|
3
3
|
export declare const miningV2: Mining;
|
|
4
4
|
export declare const vesting: Vesting;
|
|
5
5
|
export declare const instances: Instances;
|
|
6
|
+
export declare const networkConfigByNetId: Partial<Record<availableIds, NetworkConfig>>;
|
|
7
|
+
export declare function getNetworkConfig(netId: availableIds): NetworkConfig | undefined;
|
|
8
|
+
export declare function getInstancesForNetId(netId: availableIds): Record<string, InstanceCurrency> | undefined;
|
|
6
9
|
export declare const voucher: Voucher;
|
|
7
10
|
export declare const rewardSwap: RewardSwap;
|
|
8
11
|
export declare const tornadoTrees: TornadoTrees;
|
|
@@ -28,14 +31,11 @@ export declare const governanceProxy: Address;
|
|
|
28
31
|
export declare const tornadoProxyMainnet: Address;
|
|
29
32
|
export declare const mixerxToken: TokenConfig;
|
|
30
33
|
export declare const wrappedStablecoin: Address;
|
|
31
|
-
export declare const networkConfigByNetId: Partial<Record<availableIds, NetworkConfig>>;
|
|
32
|
-
export declare function getNetworkConfig(netId: availableIds): NetworkConfig | undefined;
|
|
33
|
-
export declare function getInstancesForNetId(netId: availableIds): Record<string, InstanceCurrency> | undefined;
|
|
34
34
|
declare const config: {
|
|
35
35
|
torn: Torn;
|
|
36
36
|
miningV2: Mining;
|
|
37
37
|
vesting: Vesting;
|
|
38
|
-
instances: Partial<Record<1 |
|
|
38
|
+
instances: Partial<Record<1 | 11155111, Record<string, InstanceCurrency>>>;
|
|
39
39
|
voucher: Voucher;
|
|
40
40
|
rewardSwap: RewardSwap;
|
|
41
41
|
tornadoTrees: TornadoTrees;
|
|
@@ -61,8 +61,9 @@ declare const config: {
|
|
|
61
61
|
tornadoProxyMainnet: Address;
|
|
62
62
|
mixerxToken: TokenConfig;
|
|
63
63
|
wrappedStablecoin: Address;
|
|
64
|
-
networkConfigByNetId: Partial<Record<1 |
|
|
64
|
+
networkConfigByNetId: Partial<Record<1 | 11155111, NetworkConfig>>;
|
|
65
65
|
getNetworkConfig: typeof getNetworkConfig;
|
|
66
|
+
getInstancesForNetId: typeof getInstancesForNetId;
|
|
66
67
|
};
|
|
67
68
|
export default config;
|
|
68
69
|
//# sourceMappingURL=config.d.ts.map
|
package/dist/config.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,OAAO,EACP,
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,OAAO,EACP,gBAAgB,EAChB,SAAS,EACT,MAAM,EACN,aAAa,EAEb,UAAU,EACV,WAAW,EACX,IAAI,EACJ,YAAY,EACZ,OAAO,EACP,OAAO,EACP,YAAY,EACb,MAAM,YAAY,CAAC;AAIpB,eAAO,MAAM,IAAI,EAAE,IAclB,CAAC;AAEF,eAAO,MAAM,QAAQ,EAAE,MAStB,CAAC;AAEF,eAAO,MAAM,OAAO,EAAE,OAoCrB,CAAC;AAEF,eAAO,MAAM,SAAS,EAAE,SAkGvB,CAAC;AAEF,eAAO,MAAM,oBAAoB,EAAE,OAAO,CAAC,MAAM,CAAC,YAAY,EAAE,aAAa,CAAC,CA2D7E,CAAC;AAEF,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,YAAY,GAAG,aAAa,GAAG,SAAS,CAE/E;AAED,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,YAAY,GAAG,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,GAAG,SAAS,CAEtG;AAoBD,eAAO,MAAM,OAAO,EAAE,OAA8E,CAAC;AACrG,eAAO,MAAM,UAAU,EAAE,UAAwF,CAAC;AAClH,eAAO,MAAM,YAAY,EAAE,YAAsF,CAAC;AAClH,eAAO,MAAM,UAAU,EAAE,OAAmE,CAAC;AAC7F,eAAO,MAAM,cAAc,EAAE,OAAuE,CAAC;AACrG,eAAO,MAAM,YAAY,EAAE,OAAqE,CAAC;AACjG,eAAO,MAAM,iBAAiB,EAAE,OAA0E,CAAC;AAC3G,eAAO,MAAM,cAAc,EAAE,OAAuE,CAAC;AACrG,eAAO,MAAM,kBAAkB,EAAE,OAA2E,CAAC;AAC7G,eAAO,MAAM,gBAAgB,EAAE,OAAyE,CAAC;AACzG,eAAO,MAAM,eAAe,EAAE,OAAwE,CAAC;AACvG,eAAO,MAAM,eAAe,EAAE,OAAwE,CAAC;AACvG,eAAO,MAAM,UAAU,EAAE,OAAmE,CAAC;AAC7F,eAAO,MAAM,qBAAqB,EAAE,OAA8E,CAAC;AACnH,eAAO,MAAM,eAAe,EAAE,OAAwE,CAAC;AACvG,eAAO,MAAM,aAAa,EAAE,OAA4D,CAAC;AACzF,eAAO,MAAM,gBAAgB,EAAE,OAAyE,CAAC;AACzG,eAAO,MAAM,QAAQ,EAAE,OAAiE,CAAC;AAEzF,eAAO,MAAM,oBAAoB,EAAE,OAAqE,CAAC;AACzG,eAAO,MAAM,UAAU,EAAE,OAAyD,CAAC;AACnF,eAAO,MAAM,cAAc,EAAE,OAAoE,CAAC;AAClG,eAAO,MAAM,eAAe,EAAE,OAA0E,CAAC;AACzG,eAAO,MAAM,mBAAmB,EAAE,OAAuE,CAAC;AAC1G,eAAO,MAAM,WAAW,EAAE,WAIzB,CAAC;AACF,eAAO,MAAM,iBAAiB,EAAE,OAAoE,CAAC;AAErG,QAAA,MAAM,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiCX,CAAC;AAEF,eAAe,MAAM,CAAC"}
|
package/dist/config.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.wrappedStablecoin = exports.mixerxToken = exports.tornadoProxyMainnet = exports.governanceProxy = exports.offchainOracle = exports.aggregator = exports.relayerRegistryProxy = exports.deployer = exports.instanceRegistry = exports.tornadoRouter = exports.relayerRegistry = exports.tornadoStakingRewards = exports.feeManager = exports.poseidonHasher3 = exports.poseidonHasher2 = exports.withdrawVerifier = exports.treeUpdateVerifier = exports.rewardVerifier = exports.tornadoProxyLight = exports.tornadoProxy = exports.governanceImpl = exports.governance = exports.tornadoTrees = exports.rewardSwap = exports.voucher = exports.networkConfigByNetId = exports.instances = exports.vesting = exports.miningV2 = exports.torn = void 0;
|
|
4
4
|
exports.getNetworkConfig = getNetworkConfig;
|
|
5
5
|
exports.getInstancesForNetId = getInstancesForNetId;
|
|
6
6
|
const etherToWei = (valueInEther) => `${valueInEther}000000000000000000`;
|
|
@@ -132,180 +132,96 @@ exports.instances = {
|
|
|
132
132
|
decimals: 8,
|
|
133
133
|
},
|
|
134
134
|
},
|
|
135
|
-
|
|
135
|
+
11155111: {
|
|
136
136
|
eth: {
|
|
137
137
|
instanceAddress: {
|
|
138
|
-
0.1: '
|
|
139
|
-
1: '
|
|
140
|
-
10: '
|
|
141
|
-
100: '
|
|
138
|
+
0.1: '0xEB6f943816e40bc4bEc7427B279c5618ab1723E2',
|
|
139
|
+
1: '0x20ae33b86040A122d2b232372650aB1B59716E13',
|
|
140
|
+
10: '0x119462c8B33597A57274dFc73B6c4e37beb529C2',
|
|
141
|
+
100: '0x27944432b8A303eC6799282BCBc7259d1f87d695',
|
|
142
|
+
custom: '0x72FfCfa296eB5cA484d0646E25F068046a173f9b',
|
|
142
143
|
},
|
|
143
144
|
symbol: 'ETH',
|
|
144
145
|
decimals: 18,
|
|
145
146
|
},
|
|
146
147
|
dai: {
|
|
147
148
|
instanceAddress: {
|
|
148
|
-
100: '
|
|
149
|
-
1000: '
|
|
150
|
-
10000: '
|
|
151
|
-
100000: '
|
|
149
|
+
100: '0x00DEdc8dc2A8A65572329bce1fC3503F8235Cdc6',
|
|
150
|
+
1000: '0x5fE6af46768219Fe9a796C722f413794B6e4e903',
|
|
151
|
+
10000: '0x6Ee85f0B4D596C6400958C85fd7AeDAA5f189Db2',
|
|
152
|
+
100000: '0x94A4011f92697a960794FCA5e908f0e1Bf2aF3f6',
|
|
152
153
|
},
|
|
153
|
-
tokenAddress: '
|
|
154
|
+
tokenAddress: '0xa238B2AE355D32e6A88F804F96ED299be454413A',
|
|
154
155
|
symbol: 'DAI',
|
|
155
156
|
decimals: 18,
|
|
156
157
|
},
|
|
157
|
-
|
|
158
|
-
instanceAddress: {
|
|
159
|
-
5000: '0x833481186f16Cece3f1Eeea1a694c42034c3a0dB',
|
|
160
|
-
50000: '0xd8D7DE3349ccaA0Fde6298fe6D7b7d0d34586193',
|
|
161
|
-
500000: '0x8281Aa6795aDE17C8973e1aedcA380258Bc124F9',
|
|
162
|
-
5000000: '0x57b2B8c82F065de8Ef5573f9730fC1449B403C9f',
|
|
163
|
-
},
|
|
164
|
-
tokenAddress: '0x822397d9a55d0fefd20F5c4bCaB33C5F65bd28Eb',
|
|
165
|
-
symbol: 'cDAI',
|
|
166
|
-
decimals: 8,
|
|
167
|
-
},
|
|
168
|
-
usdc: {
|
|
169
|
-
instanceAddress: {
|
|
170
|
-
100: '0x05E0b5B40B7b66098C2161A5EE11C5740A3A7C45',
|
|
171
|
-
1000: '0x23173fE8b96A4Ad8d2E17fB83EA5dcccdCa1Ae52',
|
|
172
|
-
},
|
|
173
|
-
tokenAddress: '0xD87Ba7A50B2E7E660f678A895E4B72E7CB4CCd9C',
|
|
174
|
-
symbol: 'USDC',
|
|
175
|
-
decimals: 6,
|
|
176
|
-
},
|
|
177
|
-
usdt: {
|
|
178
|
-
instanceAddress: {
|
|
179
|
-
100: '0x538Ab61E8A9fc1b2f93b3dd9011d662d89bE6FE6',
|
|
180
|
-
1000: '0x94Be88213a387E992Dd87DE56950a9aef34b9448',
|
|
181
|
-
},
|
|
182
|
-
tokenAddress: '0xb7FC2023D96AEa94Ba0254AA5Aeb93141e4aad66',
|
|
183
|
-
symbol: 'USDT',
|
|
184
|
-
decimals: 6,
|
|
185
|
-
},
|
|
186
|
-
wbtc: {
|
|
187
|
-
instanceAddress: {
|
|
188
|
-
0.1: '0x242654336ca2205714071898f67E254EB49ACdCe',
|
|
189
|
-
1: '0x776198CCF446DFa168347089d7338879273172cF',
|
|
190
|
-
10: '0xeDC5d01286f99A066559F60a585406f3878a033e',
|
|
191
|
-
},
|
|
192
|
-
tokenAddress: '0xC04B0d3107736C32e19F1c62b2aF67BE61d63a05',
|
|
193
|
-
symbol: 'WBTC',
|
|
194
|
-
decimals: 8,
|
|
195
|
-
},
|
|
196
|
-
},
|
|
197
|
-
10: {
|
|
198
|
-
eth: {
|
|
199
|
-
instanceAddress: {
|
|
200
|
-
0.1: '0x84443CFd09A48AF6eF360C6976C5392aC5023a1F',
|
|
201
|
-
1: '0xd47438C816c9E7f2E2888E060936a499Af9582b3',
|
|
202
|
-
10: '0x330bdFADE01eE9bF63C209Ee33102DD334618e0a',
|
|
203
|
-
100: '0x1E34A77868E19A6647b1f2F47B51ed72dEDE95DD',
|
|
204
|
-
},
|
|
205
|
-
symbol: 'ETH',
|
|
206
|
-
decimals: 18,
|
|
207
|
-
},
|
|
208
|
-
},
|
|
209
|
-
56: {
|
|
210
|
-
bnb: {
|
|
211
|
-
instanceAddress: {
|
|
212
|
-
0.1: '0x84443CFd09A48AF6eF360C6976C5392aC5023a1F',
|
|
213
|
-
1: '0xd47438C816c9E7f2E2888E060936a499Af9582b3',
|
|
214
|
-
10: '0x330bdFADE01eE9bF63C209Ee33102DD334618e0a',
|
|
215
|
-
100: '0x1E34A77868E19A6647b1f2F47B51ed72dEDE95DD',
|
|
216
|
-
},
|
|
217
|
-
symbol: 'BNB',
|
|
218
|
-
decimals: 18,
|
|
219
|
-
},
|
|
220
|
-
},
|
|
221
|
-
100: {
|
|
222
|
-
xdai: {
|
|
223
|
-
instanceAddress: {
|
|
224
|
-
100: '0x1E34A77868E19A6647b1f2F47B51ed72dEDE95DD',
|
|
225
|
-
1000: '0xdf231d99Ff8b6c6CBF4E9B9a945CBAcEF9339178',
|
|
226
|
-
10000: '0xaf4c0B70B2Ea9FB7487C7CbB37aDa259579fe040',
|
|
227
|
-
100000: '0xa5C2254e4253490C54cef0a4347fddb8f75A4998',
|
|
228
|
-
},
|
|
229
|
-
symbol: 'xDAI',
|
|
230
|
-
decimals: 18,
|
|
231
|
-
},
|
|
232
|
-
},
|
|
233
|
-
137: {
|
|
234
|
-
matic: {
|
|
158
|
+
mxr: {
|
|
235
159
|
instanceAddress: {
|
|
236
|
-
|
|
237
|
-
1000: '0xdf231d99Ff8b6c6CBF4E9B9a945CBAcEF9339178',
|
|
238
|
-
10000: '0xaf4c0B70B2Ea9FB7487C7CbB37aDa259579fe040',
|
|
239
|
-
100000: '0xa5C2254e4253490C54cef0a4347fddb8f75A4998',
|
|
160
|
+
custom: '0x07f68b695c4fa70bAdc084915c0d45cf18e5b34a',
|
|
240
161
|
},
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
},
|
|
244
|
-
},
|
|
245
|
-
42161: {
|
|
246
|
-
eth: {
|
|
247
|
-
instanceAddress: {
|
|
248
|
-
0.1: '0x84443CFd09A48AF6eF360C6976C5392aC5023a1F',
|
|
249
|
-
1: '0xd47438C816c9E7f2E2888E060936a499Af9582b3',
|
|
250
|
-
10: '0x330bdFADE01eE9bF63C209Ee33102DD334618e0a',
|
|
251
|
-
100: '0x1E34A77868E19A6647b1f2F47B51ed72dEDE95DD',
|
|
252
|
-
},
|
|
253
|
-
symbol: 'ETH',
|
|
254
|
-
decimals: 18,
|
|
255
|
-
},
|
|
256
|
-
},
|
|
257
|
-
43114: {
|
|
258
|
-
avax: {
|
|
259
|
-
instanceAddress: {
|
|
260
|
-
10: '0x330bdFADE01eE9bF63C209Ee33102DD334618e0a',
|
|
261
|
-
100: '0x1E34A77868E19A6647b1f2F47B51ed72dEDE95DD',
|
|
262
|
-
500: '0xaf8d1839c3c67cf571aa74B5c12398d4901147B3',
|
|
263
|
-
},
|
|
264
|
-
symbol: 'AVAX',
|
|
162
|
+
tokenAddress: '0x4E511a1bDECef2c36402C8bB8b94C1b505F4Fb84',
|
|
163
|
+
symbol: 'MXR',
|
|
265
164
|
decimals: 18,
|
|
266
165
|
},
|
|
267
166
|
},
|
|
268
167
|
};
|
|
269
|
-
exports.voucher = { address: 'voucher.contract.tornadocash.eth', duration: 12 };
|
|
270
|
-
exports.rewardSwap = { address: 'reward-swap.contract.tornadocash.eth', poolWeight: 1e11 };
|
|
271
|
-
exports.tornadoTrees = { address: 'tornado-trees.contract.tornadocash.eth', levels: 20 };
|
|
272
|
-
exports.governance = { address: 'governance.contract.tornadocash.eth' };
|
|
273
|
-
exports.governanceImpl = { address: 'governance-impl.contract.tornadocash.eth' };
|
|
274
|
-
exports.tornadoProxy = { address: 'tornado-proxy.contract.tornadocash.eth' };
|
|
275
|
-
exports.tornadoProxyLight = { address: '0x0D5550d52428E7e3175bfc9550207e4ad3859b17' };
|
|
276
|
-
exports.rewardVerifier = { address: 'reward-verifier.contract.tornadocash.eth' };
|
|
277
|
-
exports.treeUpdateVerifier = { address: 'tree-update-verifier.contract.tornadocash.eth' };
|
|
278
|
-
exports.withdrawVerifier = { address: 'withdraw-verifier.contract.tornadocash.eth' };
|
|
279
|
-
exports.poseidonHasher2 = { address: 'poseidon2.contract.tornadocash.eth' };
|
|
280
|
-
exports.poseidonHasher3 = { address: 'poseidon3.contract.tornadocash.eth' };
|
|
281
|
-
exports.feeManager = { address: 'fee-manager.contract.tornadocash.eth' };
|
|
282
|
-
exports.tornadoStakingRewards = { address: 'staking-rewards.contract.tornadocash.eth' };
|
|
283
|
-
exports.relayerRegistry = { address: 'relayer-registry.contract.tornadocash.eth' };
|
|
284
|
-
exports.tornadoRouter = { address: 'tornado-router.contract.tornadocash.eth' };
|
|
285
|
-
exports.instanceRegistry = { address: 'instance-registry.contract.tornadocash.eth' };
|
|
286
|
-
exports.deployer = { address: 'deployer.contract.tornadocash.eth' };
|
|
287
|
-
// Mainnet deployed addresses used by MixerX services
|
|
288
|
-
exports.relayerRegistryProxy = { address: '0x58E8dCC13BE9780fC42E8723D8EaD4CF46943dF2' };
|
|
289
|
-
exports.aggregator = { address: '0xE8F47A78A6D52D317D0D2FFFac56739fE14D1b49' };
|
|
290
|
-
exports.offchainOracle = { address: '0x07D91f5fb9Bf7798734C3f606dB065549F6893bb' };
|
|
291
|
-
exports.governanceProxy = { address: '0x5efda50f22d34f262c29268506c5fa42cb56a1ce' };
|
|
292
|
-
exports.tornadoProxyMainnet = { address: '0x722122df12d4e14e13ac3b6895a86e84145b6967' };
|
|
293
|
-
exports.mixerxToken = { address: '0x77777feddddffc19ff86db637967013e6c6a116c', symbol: 'torn', decimals: 18 };
|
|
294
|
-
exports.wrappedStablecoin = { address: '0x5d3a536E4D6DbD6114cc1Ead35777bAB948E3643' };
|
|
295
168
|
exports.networkConfigByNetId = {
|
|
296
169
|
1: {
|
|
297
170
|
contracts: {
|
|
298
|
-
relayerRegistryAddress:
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
171
|
+
relayerRegistryAddress: '0x58E8dCC13BE9780fC42E8723D8EaD4CF46943dF2',
|
|
172
|
+
relayerRegistry: 'relayer-registry.contract.tornadocash.eth',
|
|
173
|
+
aggregator: '0xE8F47A78A6D52D317D0D2FFFac56739fE14D1b49',
|
|
174
|
+
offchainOracleAddress: '0x07D91f5fb9Bf7798734C3f606dB065549F6893bb',
|
|
175
|
+
tornadoRouter: 'tornado-router.contract.tornadocash.eth',
|
|
176
|
+
deployer: 'deployer.contract.tornadocash.eth',
|
|
177
|
+
feeManager: 'fee-manager.contract.tornadocash.eth',
|
|
178
|
+
governance: 'governance.contract.tornadocash.eth',
|
|
179
|
+
governanceImpl: 'governance-impl.contract.tornadocash.eth',
|
|
180
|
+
governanceAddress: '0x5efda50f22d34f262c29268506c5fa42cb56a1ce',
|
|
181
|
+
instanceRegistry: 'instance-registry.contract.tornadocash.eth',
|
|
182
|
+
oldMixerXProxy: '0x722122df12d4e14e13ac3b6895a86e84145b6967',
|
|
183
|
+
poseidonHasher2: 'poseidon2.contract.tornadocash.eth',
|
|
184
|
+
poseidonHasher3: 'poseidon3.contract.tornadocash.eth',
|
|
185
|
+
rewardSwap: 'reward-swap.contract.tornadocash.eth',
|
|
186
|
+
rewardVerifier: 'reward-verifier.contract.tornadocash.eth',
|
|
187
|
+
tornadoProxy: 'tornado-proxy.contract.tornadocash.eth',
|
|
188
|
+
tornadoProxyLight: '0x0D5550d52428E7e3175bfc9550207e4ad3859b17',
|
|
189
|
+
tornadoStakingRewards: 'staking-rewards.contract.tornadocash.eth',
|
|
190
|
+
tornadoTrees: 'tornado-trees.contract.tornadocash.eth',
|
|
191
|
+
treeUpdateVerifier: 'tree-update-verifier.contract.tornadocash.eth',
|
|
192
|
+
voucher: 'voucher.contract.tornadocash.eth',
|
|
193
|
+
withdrawVerifier: 'withdraw-verifier.contract.tornadocash.eth',
|
|
303
194
|
},
|
|
304
195
|
tokens: {
|
|
305
|
-
mixerXTokenAddress:
|
|
306
|
-
mixerXTokenSymbol:
|
|
307
|
-
mixerXTokenDecimals:
|
|
308
|
-
wrappedStablecoinAddress:
|
|
196
|
+
mixerXTokenAddress: '0x77777feddddffc19ff86db637967013e6c6a116c',
|
|
197
|
+
mixerXTokenSymbol: 'torn',
|
|
198
|
+
mixerXTokenDecimals: 18,
|
|
199
|
+
wrappedStablecoinAddress: '0x5d3a536E4D6DbD6114cc1Ead35777bAB948E3643',
|
|
200
|
+
},
|
|
201
|
+
},
|
|
202
|
+
11155111: {
|
|
203
|
+
contracts: {
|
|
204
|
+
deployer: '0xC1d7D3C3F4Eb4b6ab715d14E70939a5c865C9Bd4',
|
|
205
|
+
hasher: '0x2CFee3ca96bA67AaF608dD9d6A1266F365bFc2B4',
|
|
206
|
+
admin: '0x9C8eCFbAa86Ea2D9692d213C25993eb9c47221A5',
|
|
207
|
+
currentAdmin: '0x850EFdCb7117296712be2d82a932a1E640aaF735',
|
|
208
|
+
feeManager: '0x812101D7b84F590CFF63cE30f811092D8E034c34',
|
|
209
|
+
mxr: '0x4E511a1bDECef2c36402C8bB8b94C1b505F4Fb84',
|
|
210
|
+
dai: '0xa238B2AE355D32e6A88F804F96ED299be454413A',
|
|
211
|
+
instanceRegistry: '0xBec6b8dc4955C4D57125Ac92738507ddB5428529',
|
|
212
|
+
relayerRegistryAddress: '0xeC651aF759a3EC01A5Ac8BA44BC56801DFD52DE8',
|
|
213
|
+
relayerRegistry: '0xeC651aF759a3EC01A5Ac8BA44BC56801DFD52DE8',
|
|
214
|
+
tornadoRouter: '0xc324768242bB11D8eCf1931fD6d44d3f7f93C35E',
|
|
215
|
+
mixerXRouter: '0xc324768242bB11D8eCf1931fD6d44d3f7f93C35E',
|
|
216
|
+
verifier: '0x2553cF45628cd2175bF15E495a13D768d11e58C3',
|
|
217
|
+
aggregator: '0xE7287D09d9A20C40049a0CaE5b79ef4084d67392',
|
|
218
|
+
offchainOracleAddress: '0x542B4C005914eA24eF4cA4E71C3E922aF319E0cB',
|
|
219
|
+
},
|
|
220
|
+
tokens: {
|
|
221
|
+
mixerXTokenAddress: '0x4E511a1bDECef2c36402C8bB8b94C1b505F4Fb84',
|
|
222
|
+
mixerXTokenSymbol: 'MXR',
|
|
223
|
+
mixerXTokenDecimals: 18,
|
|
224
|
+
wrappedStablecoinAddress: '0xa238B2AE355D32e6A88F804F96ED299be454413A',
|
|
309
225
|
},
|
|
310
226
|
},
|
|
311
227
|
};
|
|
@@ -315,6 +231,50 @@ function getNetworkConfig(netId) {
|
|
|
315
231
|
function getInstancesForNetId(netId) {
|
|
316
232
|
return exports.instances[netId];
|
|
317
233
|
}
|
|
234
|
+
function requireNetworkConfig(netId) {
|
|
235
|
+
const networkConfig = getNetworkConfig(netId);
|
|
236
|
+
if (!networkConfig) {
|
|
237
|
+
throw new Error(`Missing network config for netId ${netId}`);
|
|
238
|
+
}
|
|
239
|
+
return networkConfig;
|
|
240
|
+
}
|
|
241
|
+
function requireContract(networkConfig, key) {
|
|
242
|
+
const value = networkConfig.contracts[key];
|
|
243
|
+
if (!value) {
|
|
244
|
+
throw new Error(`Missing mainnet contract config: ${key}`);
|
|
245
|
+
}
|
|
246
|
+
return value;
|
|
247
|
+
}
|
|
248
|
+
const mainnetConfig = requireNetworkConfig(1);
|
|
249
|
+
exports.voucher = { address: requireContract(mainnetConfig, 'voucher'), duration: 12 };
|
|
250
|
+
exports.rewardSwap = { address: requireContract(mainnetConfig, 'rewardSwap'), poolWeight: 1e11 };
|
|
251
|
+
exports.tornadoTrees = { address: requireContract(mainnetConfig, 'tornadoTrees'), levels: 20 };
|
|
252
|
+
exports.governance = { address: requireContract(mainnetConfig, 'governance') };
|
|
253
|
+
exports.governanceImpl = { address: requireContract(mainnetConfig, 'governanceImpl') };
|
|
254
|
+
exports.tornadoProxy = { address: requireContract(mainnetConfig, 'tornadoProxy') };
|
|
255
|
+
exports.tornadoProxyLight = { address: requireContract(mainnetConfig, 'tornadoProxyLight') };
|
|
256
|
+
exports.rewardVerifier = { address: requireContract(mainnetConfig, 'rewardVerifier') };
|
|
257
|
+
exports.treeUpdateVerifier = { address: requireContract(mainnetConfig, 'treeUpdateVerifier') };
|
|
258
|
+
exports.withdrawVerifier = { address: requireContract(mainnetConfig, 'withdrawVerifier') };
|
|
259
|
+
exports.poseidonHasher2 = { address: requireContract(mainnetConfig, 'poseidonHasher2') };
|
|
260
|
+
exports.poseidonHasher3 = { address: requireContract(mainnetConfig, 'poseidonHasher3') };
|
|
261
|
+
exports.feeManager = { address: requireContract(mainnetConfig, 'feeManager') };
|
|
262
|
+
exports.tornadoStakingRewards = { address: requireContract(mainnetConfig, 'tornadoStakingRewards') };
|
|
263
|
+
exports.relayerRegistry = { address: requireContract(mainnetConfig, 'relayerRegistry') };
|
|
264
|
+
exports.tornadoRouter = { address: mainnetConfig.contracts.tornadoRouter };
|
|
265
|
+
exports.instanceRegistry = { address: requireContract(mainnetConfig, 'instanceRegistry') };
|
|
266
|
+
exports.deployer = { address: requireContract(mainnetConfig, 'deployer') };
|
|
267
|
+
exports.relayerRegistryProxy = { address: mainnetConfig.contracts.relayerRegistryAddress };
|
|
268
|
+
exports.aggregator = { address: mainnetConfig.contracts.aggregator };
|
|
269
|
+
exports.offchainOracle = { address: mainnetConfig.contracts.offchainOracleAddress };
|
|
270
|
+
exports.governanceProxy = { address: requireContract(mainnetConfig, 'governanceAddress') };
|
|
271
|
+
exports.tornadoProxyMainnet = { address: requireContract(mainnetConfig, 'oldMixerXProxy') };
|
|
272
|
+
exports.mixerxToken = {
|
|
273
|
+
address: mainnetConfig.tokens.mixerXTokenAddress,
|
|
274
|
+
symbol: mainnetConfig.tokens.mixerXTokenSymbol,
|
|
275
|
+
decimals: mainnetConfig.tokens.mixerXTokenDecimals,
|
|
276
|
+
};
|
|
277
|
+
exports.wrappedStablecoin = { address: mainnetConfig.tokens.wrappedStablecoinAddress };
|
|
318
278
|
const config = {
|
|
319
279
|
torn: exports.torn,
|
|
320
280
|
miningV2: exports.miningV2,
|
|
@@ -347,6 +307,7 @@ const config = {
|
|
|
347
307
|
wrappedStablecoin: exports.wrappedStablecoin,
|
|
348
308
|
networkConfigByNetId: exports.networkConfigByNetId,
|
|
349
309
|
getNetworkConfig,
|
|
310
|
+
getInstancesForNetId,
|
|
350
311
|
};
|
|
351
312
|
exports.default = config;
|
|
352
313
|
//# sourceMappingURL=config.js.map
|
package/dist/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
|
package/dist/types.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export declare const SUPPORTED_NET_IDS: readonly [1,
|
|
1
|
+
export declare const SUPPORTED_NET_IDS: readonly [1, 11155111];
|
|
2
2
|
export type availableIds = (typeof SUPPORTED_NET_IDS)[number];
|
|
3
3
|
export type AvailableId = availableIds;
|
|
4
4
|
export type Address = {
|
|
@@ -94,8 +94,33 @@ export type NetworkContractsConfig = {
|
|
|
94
94
|
relayerRegistryAddress: string;
|
|
95
95
|
aggregator: string;
|
|
96
96
|
offchainOracleAddress: string;
|
|
97
|
-
|
|
98
|
-
|
|
97
|
+
tornadoRouter: string;
|
|
98
|
+
admin?: string;
|
|
99
|
+
currentAdmin?: string;
|
|
100
|
+
dai?: string;
|
|
101
|
+
deployer?: string;
|
|
102
|
+
feeManager?: string;
|
|
103
|
+
governance?: string;
|
|
104
|
+
governanceImpl?: string;
|
|
105
|
+
governanceAddress?: string;
|
|
106
|
+
hasher?: string;
|
|
107
|
+
instanceRegistry?: string;
|
|
108
|
+
mixerXRouter?: string;
|
|
109
|
+
mxr?: string;
|
|
110
|
+
oldMixerXProxy?: string;
|
|
111
|
+
poseidonHasher2?: string;
|
|
112
|
+
poseidonHasher3?: string;
|
|
113
|
+
relayerRegistry?: string;
|
|
114
|
+
rewardSwap?: string;
|
|
115
|
+
rewardVerifier?: string;
|
|
116
|
+
tornadoProxy?: string;
|
|
117
|
+
tornadoProxyLight?: string;
|
|
118
|
+
tornadoStakingRewards?: string;
|
|
119
|
+
tornadoTrees?: string;
|
|
120
|
+
treeUpdateVerifier?: string;
|
|
121
|
+
verifier?: string;
|
|
122
|
+
voucher?: string;
|
|
123
|
+
withdrawVerifier?: string;
|
|
99
124
|
};
|
|
100
125
|
export type NetworkTokensConfig = {
|
|
101
126
|
mixerXTokenAddress: string;
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,iBAAiB,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
package/dist/types.js
CHANGED
package/dist/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":";;;AAAa,QAAA,iBAAiB,GAAG,CAAC,CAAC,EAAE,
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":";;;AAAa,QAAA,iBAAiB,GAAG,CAAC,CAAC,EAAE,QAAQ,CAAU,CAAC"}
|