-
Notifications
You must be signed in to change notification settings - Fork 8
/
Copy pathhardhat.config.ts
48 lines (43 loc) · 1.23 KB
/
hardhat.config.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
import 'tsconfig-paths/register';
import '@/config/environment';
import '@/plugins';
import type { HardhatUserConfig } from 'hardhat/types';
import { etherscan } from '@/config/etherscan';
import { networks } from '@/config/networks';
import { namedAccountIndices } from '@/config/accounts';
import { defender } from '@/config/defender';
import { getEthernalConfig } from '@/config/ethernal';
import { solidity } from '@/config/solidity';
import { docgen } from '@/config/docgen';
import { fireblocks } from '@/config/fireblocks';
import { tracer } from '@/config/tracer';
import { typechain } from '@/config/typechain';
export const getConfig = (
environment: NodeJS.ProcessEnv = process.env
): HardhatUserConfig => {
const config: HardhatUserConfig = {
docgen,
namedAccounts: namedAccountIndices,
networks,
etherscan,
defender,
solidity,
fireblocks,
ethernal: getEthernalConfig(environment),
paths: {
sources: './contracts',
cache: './cache_hardhat',
},
tracer,
typechain,
contractSizer: {
alphaSort: true,
disambiguatePaths: false,
runOnCompile: true,
strict: false,
},
};
return config;
};
export const config = getConfig();
export default config;