hardhat-deploy 2.0.0-next.40 → 2.0.0-next.42
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 +19 -6
- package/dist/esm/config/default.d.ts.map +1 -1
- package/dist/esm/config/default.js +1 -7
- package/dist/esm/config/default.js.map +1 -1
- package/dist/esm/config/get-config.d.ts.map +1 -1
- package/dist/esm/config/get-config.js +2 -4
- package/dist/esm/config/get-config.js.map +1 -1
- package/dist/esm/config/validation.d.ts.map +1 -1
- package/dist/esm/config/validation.js +4 -8
- package/dist/esm/config/validation.js.map +1 -1
- package/dist/esm/generate-types.d.ts.map +1 -1
- package/dist/esm/generate-types.js +105 -131
- package/dist/esm/generate-types.js.map +1 -1
- package/dist/esm/helpers.d.ts +4 -2
- package/dist/esm/helpers.d.ts.map +1 -1
- package/dist/esm/helpers.js +4 -3
- package/dist/esm/helpers.js.map +1 -1
- package/dist/esm/types.d.ts +6 -12
- package/dist/esm/types.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/config/default.ts +1 -7
- package/src/config/get-config.ts +3 -4
- package/src/config/validation.ts +6 -8
- package/src/generate-types.ts +116 -129
- package/src/helpers.ts +6 -4
- package/src/types.ts +2 -14
package/README.md
CHANGED
|
@@ -107,7 +107,19 @@ pnpm add -D hardhat-deploy@next rocketh @rocketh/deploy @rocketh/read-execute
|
|
|
107
107
|
|
|
108
108
|
:::
|
|
109
109
|
|
|
110
|
-
|
|
110
|
+
|
|
111
|
+
Then you need to add it to the plugins list of hardhat in hardhat.config.ts:
|
|
112
|
+
|
|
113
|
+
```ts
|
|
114
|
+
import HardhatDeploy from 'hardhat-deploy';
|
|
115
|
+
...
|
|
116
|
+
const config: HardhatUserConfig = {
|
|
117
|
+
plugins: [..., HardhatDeploy],
|
|
118
|
+
...
|
|
119
|
+
```
|
|
120
|
+
|
|
121
|
+
|
|
122
|
+
We also recommend you add these to provide more features
|
|
111
123
|
|
|
112
124
|
::: code-group
|
|
113
125
|
|
|
@@ -121,11 +133,9 @@ pnpm add -D @rocketh/proxy @rocketh/diamond @rocketh/export @rocketh/verifier @r
|
|
|
121
133
|
|
|
122
134
|
:::
|
|
123
135
|
|
|
124
|
-
|
|
136
|
+
Note that extensions like `@rocketh/proxy` need to be passed into the rocketh setup function so they can be used.
|
|
125
137
|
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
We recommend to actually use the `rocketh.ts/js` config file to do that in one place.
|
|
138
|
+
The best way to do that is actually use the `rocketh.ts/js` config file itself to do that in one place.
|
|
129
139
|
We also recommend you setup an alias for it so you can import with `import .. from "#rocketh"` it from anywhere:
|
|
130
140
|
You can set it up by settings imports in `package.json`
|
|
131
141
|
|
|
@@ -174,7 +184,7 @@ export const config = {
|
|
|
174
184
|
// so that they just need to import this file
|
|
175
185
|
// we add here the extension we need, so that they are available in the deploy scripts
|
|
176
186
|
// extensions are simply function that accept as their first argument the Environment
|
|
177
|
-
// by passing them to the setup function (see below) you get to access them
|
|
187
|
+
// by passing them to the setup function (see below) you get to access them through the environment object with type-safety
|
|
178
188
|
import * as deployExtensions from '@rocketh/deploy'; // this one provide a deploy function
|
|
179
189
|
import * as readExecuteFunctions from '@rocketh/read-execute'; // this one provide read,execute functions
|
|
180
190
|
const extensions = {...deployExtensions, ...readExecuteExtensions};
|
|
@@ -389,6 +399,9 @@ To execute that command, you need to specify the network to run against :
|
|
|
389
399
|
pnpm rocketh-verify -n <network-name> <etherscan|sourcify|blockscout>
|
|
390
400
|
```
|
|
391
401
|
|
|
402
|
+
For etherscan verification, you just need the ETHERSCAN_API_KEY en variable to be set.
|
|
403
|
+
you can use a .env or .env.local file for that as rocketh will load them automatically.
|
|
404
|
+
|
|
392
405
|
### 3. rocketh-export
|
|
393
406
|
|
|
394
407
|
This command is provided by the optional package `@rocketh/export`
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"default.d.ts","sourceRoot":"","sources":["../../../src/config/default.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,wBAAwB,EAAC,MAAM,aAAa,CAAC;AAE1D,eAAO,MAAM,cAAc,EAAE,
|
|
1
|
+
{"version":3,"file":"default.d.ts","sourceRoot":"","sources":["../../../src/config/default.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,wBAAwB,EAAC,MAAM,aAAa,CAAC;AAE1D,eAAO,MAAM,cAAc,EAAE,wBAG5B,CAAC"}
|
|
@@ -1,11 +1,5 @@
|
|
|
1
1
|
export const DEFAULT_CONFIG = {
|
|
2
2
|
// externalArtifacts: [],
|
|
3
|
-
destinations: {
|
|
4
|
-
js: [],
|
|
5
|
-
ts: ['./generated/artifacts.ts'],
|
|
6
|
-
json: [],
|
|
7
|
-
jsm: [],
|
|
8
|
-
tsm: [],
|
|
9
|
-
},
|
|
3
|
+
destinations: [{ mode: 'javascript', folder: './generated' }],
|
|
10
4
|
};
|
|
11
5
|
//# sourceMappingURL=default.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"default.js","sourceRoot":"","sources":["../../../src/config/default.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,cAAc,GAA6B;IACvD,yBAAyB;IACzB,YAAY,EAAE
|
|
1
|
+
{"version":3,"file":"default.js","sourceRoot":"","sources":["../../../src/config/default.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,cAAc,GAA6B;IACvD,yBAAyB;IACzB,YAAY,EAAE,CAAC,EAAC,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,aAAa,EAAC,CAAC;CAC3D,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-config.d.ts","sourceRoot":"","sources":["../../../src/config/get-config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,wBAAwB,EAAE,4BAA4B,EAAC,MAAM,aAAa,CAAC;AAIxF,wBAAgB,SAAS,CAAC,UAAU,EAAE,4BAA4B,GAAG,SAAS,GAAG,wBAAwB,
|
|
1
|
+
{"version":3,"file":"get-config.d.ts","sourceRoot":"","sources":["../../../src/config/get-config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,wBAAwB,EAAE,4BAA4B,EAAC,MAAM,aAAa,CAAC;AAIxF,wBAAgB,SAAS,CAAC,UAAU,EAAE,4BAA4B,GAAG,SAAS,GAAG,wBAAwB,CAOxG"}
|
|
@@ -1,10 +1,8 @@
|
|
|
1
1
|
import { DEFAULT_CONFIG } from './default.js';
|
|
2
2
|
export function getConfig(userConfig) {
|
|
3
3
|
return {
|
|
4
|
-
destinations: {
|
|
5
|
-
|
|
6
|
-
...(userConfig?.destinations || {}),
|
|
7
|
-
},
|
|
4
|
+
destinations: userConfig?.destinations?.map((v) => ({ mode: v.mode || 'javascript', folder: v.folder || './generated' })) ||
|
|
5
|
+
DEFAULT_CONFIG.destinations,
|
|
8
6
|
// externalArtifacts: userConfig?.externalArtifacts || DEFAULT_CONFIG.externalArtifacts,
|
|
9
7
|
};
|
|
10
8
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-config.js","sourceRoot":"","sources":["../../../src/config/get-config.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,cAAc,EAAC,MAAM,cAAc,CAAC;AAE5C,MAAM,UAAU,SAAS,CAAC,UAAoD;IAC7E,OAAO;QACN,YAAY,EAAE
|
|
1
|
+
{"version":3,"file":"get-config.js","sourceRoot":"","sources":["../../../src/config/get-config.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,cAAc,EAAC,MAAM,cAAc,CAAC;AAE5C,MAAM,UAAU,SAAS,CAAC,UAAoD;IAC7E,OAAO;QACN,YAAY,EACX,UAAU,EAAE,YAAY,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAC,IAAI,EAAE,CAAC,CAAC,IAAI,IAAI,YAAY,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,IAAI,aAAa,EAAC,CAAC,CAAC;YACzG,cAAc,CAAC,YAAY;QAC5B,wFAAwF;KACxF,CAAC;AACH,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validation.d.ts","sourceRoot":"","sources":["../../../src/config/validation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,gCAAgC,EAAC,MAAM,oCAAoC,CAAC;AACzF,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"validation.d.ts","sourceRoot":"","sources":["../../../src/config/validation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,gCAAgC,EAAC,MAAM,oCAAoC,CAAC;AACzF,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,gBAAgB,CAAC;AAmBtD,wBAAsB,2BAA2B,CAChD,UAAU,EAAE,iBAAiB,GAC3B,OAAO,CAAC,gCAAgC,EAAE,CAAC,CAE7C"}
|
|
@@ -4,14 +4,10 @@ const artifactGenerationUserConfigSchema = z
|
|
|
4
4
|
.object({
|
|
5
5
|
// externalArtifacts: z.array(z.string()).optional(),
|
|
6
6
|
destinations: z
|
|
7
|
-
.object({
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
jsm: z.array(z.string()).optional(),
|
|
12
|
-
tsm: z.array(z.string()).optional(),
|
|
13
|
-
directories: z.array(z.string()).optional(),
|
|
14
|
-
})
|
|
7
|
+
.array(z.object({
|
|
8
|
+
mode: z.union([z.literal('javascript'), z.literal('typescript')]).optional(),
|
|
9
|
+
folder: z.string().optional(),
|
|
10
|
+
}))
|
|
15
11
|
.optional(),
|
|
16
12
|
})
|
|
17
13
|
.optional();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validation.js","sourceRoot":"","sources":["../../../src/config/validation.ts"],"names":[],"mappings":"AAGA,OAAO,EAAC,yBAAyB,EAAC,MAAM,oCAAoC,CAAC;AAC7E,OAAO,EAAC,CAAC,EAAC,MAAM,KAAK,CAAC;AAEtB,MAAM,kCAAkC,GAAG,CAAC;KAC1C,MAAM,CAAC;IACP,qDAAqD;IACrD,YAAY,EAAE,CAAC;SACb,
|
|
1
|
+
{"version":3,"file":"validation.js","sourceRoot":"","sources":["../../../src/config/validation.ts"],"names":[],"mappings":"AAGA,OAAO,EAAC,yBAAyB,EAAC,MAAM,oCAAoC,CAAC;AAC7E,OAAO,EAAC,CAAC,EAAC,MAAM,KAAK,CAAC;AAEtB,MAAM,kCAAkC,GAAG,CAAC;KAC1C,MAAM,CAAC;IACP,qDAAqD;IACrD,YAAY,EAAE,CAAC;SACb,KAAK,CACL,CAAC,CAAC,MAAM,CAAC;QACR,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;QAC5E,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;KAC7B,CAAC,CACF;SACA,QAAQ,EAAE;CACZ,CAAC;KACD,QAAQ,EAAE,CAAC;AAEb,MAAM,CAAC,KAAK,UAAU,2BAA2B,CAChD,UAA6B;IAE7B,OAAO,yBAAyB,CAAC,UAAU,CAAC,sBAAsB,EAAE,kCAAkC,CAAC,CAAC;AACzG,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generate-types.d.ts","sourceRoot":"","sources":["../../src/generate-types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,wBAAwB,EAAC,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"generate-types.d.ts","sourceRoot":"","sources":["../../src/generate-types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,wBAAwB,EAAC,MAAM,YAAY,CAAC;AAqKzD,wBAAsB,aAAa,CAAC,KAAK,EAAE;IAAC,SAAS,EAAE,MAAM,EAAE,CAAA;CAAC,EAAE,MAAM,EAAE,wBAAwB,GAAG,OAAO,CAAC,IAAI,CAAC,CAiHjH"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import debug from 'debug';
|
|
2
2
|
import fs from 'node:fs';
|
|
3
|
-
import path
|
|
3
|
+
import path from 'node:path';
|
|
4
4
|
import slash from 'slash';
|
|
5
5
|
import { traverse } from './utils/files.js';
|
|
6
6
|
const log = debug('hardhat-deploy:generate-types');
|
|
@@ -41,137 +41,103 @@ function ensureDirExistsSync(folderPath) {
|
|
|
41
41
|
fs.mkdirSync(folderPath, { recursive: true });
|
|
42
42
|
return { created: true, reason: 'Directory was created' };
|
|
43
43
|
}
|
|
44
|
-
function
|
|
45
|
-
const
|
|
46
|
-
const
|
|
47
|
-
const
|
|
48
|
-
const
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
for (const tsFile of ts) {
|
|
54
|
-
if (tsFile.endsWith('.ts')) {
|
|
55
|
-
if (!name) {
|
|
56
|
-
const filepath = tsFile;
|
|
57
|
-
const folderPath = path.dirname(filepath);
|
|
58
|
-
ensureDirExistsSync(folderPath);
|
|
59
|
-
writeIfDifferent(filepath, newContent);
|
|
60
|
-
ensureDirExistsSync(`${folderPath}/types`);
|
|
61
|
-
for (const name of Object.keys(data)) {
|
|
62
|
-
const splitted = name.split('/');
|
|
63
|
-
const numPath = splitted.length;
|
|
64
|
-
let pathToBase = '';
|
|
65
|
-
for (let i = 0; i < numPath; i++) {
|
|
66
|
-
pathToBase += '../';
|
|
67
|
-
}
|
|
68
|
-
let lastName = splitted.pop() || name;
|
|
69
|
-
const content = `
|
|
70
|
-
import artifacts from '${pathToBase}${basename(tsFile.replace('.ts', '.js'))}';
|
|
71
|
-
export type Abi_${lastName} = typeof artifacts["${name}"]["abi"];
|
|
72
|
-
`;
|
|
73
|
-
ensureDirExistsSync(dirname(`${folderPath}/types/${name}`));
|
|
74
|
-
writeIfDifferent(`${folderPath}/types/${name}.ts`, content);
|
|
75
|
-
}
|
|
76
|
-
}
|
|
77
|
-
}
|
|
78
|
-
else {
|
|
79
|
-
if (name) {
|
|
80
|
-
const filepath = `${tsFile}/${name}.ts`;
|
|
81
|
-
const folderPath = path.dirname(filepath);
|
|
82
|
-
ensureDirExistsSync(folderPath);
|
|
83
|
-
writeIfDifferent(filepath, newContent);
|
|
84
|
-
}
|
|
85
|
-
else {
|
|
86
|
-
let indexFileContent = ``;
|
|
87
|
-
for (const name of Object.keys(data)) {
|
|
88
|
-
let transformedName = name.replaceAll('/', '_').replaceAll('.', '_');
|
|
89
|
-
indexFileContent += `
|
|
90
|
-
import ${transformedName} from './${name}.js';
|
|
91
|
-
export {${transformedName}};
|
|
92
|
-
export type Abi_${transformedName} = typeof ${transformedName}.abi;
|
|
93
|
-
`;
|
|
94
|
-
}
|
|
95
|
-
writeIfDifferent(`${tsFile}/index.ts`, indexFileContent);
|
|
96
|
-
}
|
|
97
|
-
}
|
|
98
|
-
}
|
|
44
|
+
function writeArtifactToFile(folder, canonicalName, data, mode) {
|
|
45
|
+
const name = canonicalName.split('/').pop();
|
|
46
|
+
const artifactName = `Artifact_${name}`;
|
|
47
|
+
const tsFilepath = path.join(folder, 'values', canonicalName) + '.ts';
|
|
48
|
+
const folderPath = path.dirname(tsFilepath);
|
|
49
|
+
ensureDirExistsSync(folderPath);
|
|
50
|
+
if (mode === 'typescript') {
|
|
51
|
+
const newContent = `export const ${artifactName} = ${JSON.stringify(data, null, 2)} as const;`;
|
|
52
|
+
writeIfDifferent(tsFilepath, newContent);
|
|
99
53
|
}
|
|
100
|
-
if (
|
|
101
|
-
const newContent = `export
|
|
102
|
-
|
|
103
|
-
const
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
const folderPath = path.dirname(filepath);
|
|
121
|
-
ensureDirExistsSync(folderPath);
|
|
122
|
-
writeIfDifferent(filepath, newContent);
|
|
123
|
-
writeIfDifferent(filepath.replace(/\.js$/, '.d.ts'), dtsContent);
|
|
124
|
-
writeIfDifferent(filepath.replace(/\.js$/, '.cjs'), cjsContent);
|
|
125
|
-
}
|
|
126
|
-
}
|
|
54
|
+
else if (mode === 'javascript') {
|
|
55
|
+
const newContent = `export const ${artifactName} = /** @type {const} **/ (${JSON.stringify(data, null, 2)});`;
|
|
56
|
+
const dtsContent = `export declare const ${artifactName}: ${JSON.stringify(data, null, 2)};`;
|
|
57
|
+
const jsFilepath = path.join(folder, 'values', canonicalName) + '.js';
|
|
58
|
+
writeIfDifferent(jsFilepath, newContent);
|
|
59
|
+
writeIfDifferent(jsFilepath.replace(/\.js$/, '.d.ts'), dtsContent);
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
function writeArtifactIndexToFile(folder, data, mode) {
|
|
63
|
+
const tsFilepath = path.join(folder, 'artifacts') + '.ts';
|
|
64
|
+
const folderPath = path.dirname(tsFilepath);
|
|
65
|
+
ensureDirExistsSync(folderPath);
|
|
66
|
+
if (mode === 'typescript') {
|
|
67
|
+
let newContent = '';
|
|
68
|
+
for (const canonicalName of Object.keys(data)) {
|
|
69
|
+
const transformedName = canonicalName.replaceAll('/', '_').replaceAll('.', '_');
|
|
70
|
+
const name = canonicalName.split('/').pop();
|
|
71
|
+
const artifactName = `Artifact_${name}`;
|
|
72
|
+
const importNaming = canonicalName != name ? `${artifactName} as ${transformedName}` : `${artifactName} as ${name}`;
|
|
73
|
+
newContent += `export {${importNaming}} from './values/${canonicalName}.js';\n`;
|
|
127
74
|
}
|
|
75
|
+
writeIfDifferent(tsFilepath, newContent);
|
|
128
76
|
}
|
|
129
|
-
if (
|
|
130
|
-
|
|
131
|
-
for (const
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
writeIfDifferent(filepath, newContent);
|
|
138
|
-
}
|
|
139
|
-
}
|
|
140
|
-
else {
|
|
141
|
-
if (name) {
|
|
142
|
-
const filepath = `${jsonFile}/${name}.json`;
|
|
143
|
-
const folderPath = path.dirname(filepath);
|
|
144
|
-
ensureDirExistsSync(folderPath);
|
|
145
|
-
writeIfDifferent(filepath, newContent);
|
|
146
|
-
}
|
|
147
|
-
}
|
|
77
|
+
else if (mode === 'javascript') {
|
|
78
|
+
let newContent = '';
|
|
79
|
+
for (const canonicalName of Object.keys(data)) {
|
|
80
|
+
const transformedName = canonicalName.replaceAll('/', '_').replaceAll('.', '_');
|
|
81
|
+
const name = canonicalName.split('/').pop();
|
|
82
|
+
const artifactName = `Artifact_${name}`;
|
|
83
|
+
const importNaming = canonicalName != name ? `${artifactName} as ${transformedName}` : `${artifactName} as ${name}`;
|
|
84
|
+
newContent += `export {${importNaming}} from './values/${canonicalName}.js';\n`;
|
|
148
85
|
}
|
|
86
|
+
const jsFilepath = path.join(folder, 'artifacts') + '.js';
|
|
87
|
+
writeIfDifferent(jsFilepath, newContent);
|
|
88
|
+
writeIfDifferent(jsFilepath.replace(/\.js$/, '.d.ts'), newContent);
|
|
149
89
|
}
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
90
|
+
}
|
|
91
|
+
function writeABIDefinitionToFile(folder, canonicalName, data, mode) {
|
|
92
|
+
const nameAsPath = canonicalName.split('/');
|
|
93
|
+
const name = nameAsPath[nameAsPath.length - 1];
|
|
94
|
+
const abiName = `Abi_${name}`;
|
|
95
|
+
const artifactName = `Artifact_${name}`;
|
|
96
|
+
const relativePath = `../`.repeat(nameAsPath.length);
|
|
97
|
+
const tsFilepath = path.join(folder, 'types', canonicalName) + '.ts';
|
|
98
|
+
const folderPath = path.dirname(tsFilepath);
|
|
99
|
+
ensureDirExistsSync(folderPath);
|
|
100
|
+
if (mode === 'typescript') {
|
|
101
|
+
const newContent = `import {${artifactName}} from '${relativePath}values/${canonicalName}.js';
|
|
102
|
+
export type ${abiName} = (typeof ${artifactName})['abi'];\n`;
|
|
103
|
+
writeIfDifferent(tsFilepath, newContent);
|
|
104
|
+
}
|
|
105
|
+
else if (mode === 'javascript') {
|
|
106
|
+
const jsFilepath = path.join(folder, 'types', canonicalName) + '.js';
|
|
107
|
+
const newContent = `export {};\n`;
|
|
108
|
+
const dtsContent = `import {${artifactName}} from '${relativePath}values/${canonicalName}.js';
|
|
109
|
+
export type ${abiName} = (typeof ${artifactName})['abi'];\n`;
|
|
110
|
+
writeIfDifferent(jsFilepath, newContent);
|
|
111
|
+
writeIfDifferent(jsFilepath.replace(/\.js$/, '.d.ts'), dtsContent);
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
function writeABIDefinitionIndexToFile(folder, data, mode) {
|
|
115
|
+
const tsFilepath = path.join(folder, 'types', 'index') + '.ts';
|
|
116
|
+
const folderPath = path.dirname(tsFilepath);
|
|
117
|
+
ensureDirExistsSync(folderPath);
|
|
118
|
+
if (mode === 'typescript') {
|
|
119
|
+
let newContent = '';
|
|
120
|
+
for (const canonicalName of Object.keys(data)) {
|
|
121
|
+
const transformedName = canonicalName.replaceAll('/', '_').replaceAll('.', '_');
|
|
122
|
+
const name = canonicalName.split('/').pop();
|
|
123
|
+
const abiName = `Abi_${name}`;
|
|
124
|
+
const importNaming = canonicalName != name ? `${abiName} as ${transformedName}` : `${abiName} as ${name}`;
|
|
125
|
+
newContent += `export {${importNaming}} from "./${canonicalName}.js"\n`;
|
|
162
126
|
}
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
}
|
|
127
|
+
writeIfDifferent(tsFilepath, newContent);
|
|
128
|
+
}
|
|
129
|
+
else if (mode === 'javascript') {
|
|
130
|
+
const jsFilepath = path.join(folder, 'types', 'index') + '.js';
|
|
131
|
+
let newContent = '';
|
|
132
|
+
for (const canonicalName of Object.keys(data)) {
|
|
133
|
+
const transformedName = canonicalName.replaceAll('/', '_').replaceAll('.', '_');
|
|
134
|
+
const name = canonicalName.split('/').pop();
|
|
135
|
+
const abiName = `Abi_${name}`;
|
|
136
|
+
const importNaming = canonicalName != name ? `${abiName} as ${transformedName}` : `${abiName} as ${name}`;
|
|
137
|
+
newContent += `export {${importNaming}} from "./${canonicalName}.js"\n`;
|
|
174
138
|
}
|
|
139
|
+
writeIfDifferent(jsFilepath, newContent);
|
|
140
|
+
writeIfDifferent(jsFilepath.replace(/\.js$/, '.d.ts'), newContent);
|
|
175
141
|
}
|
|
176
142
|
}
|
|
177
143
|
export async function generateTypes(paths, config) {
|
|
@@ -256,13 +222,21 @@ export async function generateTypes(paths, config) {
|
|
|
256
222
|
}
|
|
257
223
|
}
|
|
258
224
|
}
|
|
225
|
+
// for (const key of Object.keys(allArtifacts)) {
|
|
226
|
+
// const artifact = allArtifacts[key];
|
|
227
|
+
// writeFiles(key, artifact, config);
|
|
228
|
+
// }
|
|
229
|
+
// // const json = hre.config.generateTypedArtifacts.json || [];
|
|
230
|
+
// // json.push('./generated/_artifacts.json');
|
|
231
|
+
// // writeFiles(undefined, allArtifacts, {...hre.config.generateTypedArtifacts, json: json});
|
|
232
|
+
// writeFiles(undefined, allArtifacts, config);
|
|
233
|
+
const generatedFolder = 'generated';
|
|
234
|
+
const mode = 'javascript';
|
|
259
235
|
for (const key of Object.keys(allArtifacts)) {
|
|
260
|
-
|
|
261
|
-
|
|
236
|
+
writeABIDefinitionToFile(generatedFolder, key, allArtifacts[key], mode);
|
|
237
|
+
writeArtifactToFile(generatedFolder, key, allArtifacts[key], mode);
|
|
262
238
|
}
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
// writeFiles(undefined, allArtifacts, {...hre.config.generateTypedArtifacts, json: json});
|
|
266
|
-
writeFiles(undefined, allArtifacts, config);
|
|
239
|
+
writeArtifactIndexToFile(generatedFolder, allArtifacts, mode);
|
|
240
|
+
writeABIDefinitionIndexToFile(generatedFolder, allArtifacts, mode);
|
|
267
241
|
}
|
|
268
242
|
//# sourceMappingURL=generate-types.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generate-types.js","sourceRoot":"","sources":["../../src/generate-types.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"generate-types.js","sourceRoot":"","sources":["../../src/generate-types.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAyB,MAAM,WAAW,CAAC;AAClD,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAgB,QAAQ,EAAC,MAAM,kBAAkB,CAAC;AAEzD,MAAM,GAAG,GAAG,KAAK,CAAC,+BAA+B,CAAC,CAAC;AAEnD,SAAS,gBAAgB,CAAC,QAAgB,EAAE,cAAsB;IACjE,qCAAqC;IACrC,MAAM,cAAc,GAAG,MAAM,CAAC,cAAc,CAAC,CAAC;IAE9C,IAAI,CAAC;QACJ,IAAI,eAAe,CAAC;QAEpB,IAAI,CAAC;YACJ,eAAe,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QACrD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAChB,uDAAuD;YACvD,uCAAuC;YACvC,EAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;YAC3C,OAAO,EAAC,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,oBAAoB,EAAC,CAAC;QACtD,CAAC;QAED,2BAA2B;QAC3B,IAAI,cAAc,KAAK,eAAe,EAAE,CAAC;YACxC,2DAA2D;YAC3D,EAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;YAC3C,OAAO,EAAC,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,uBAAuB,EAAC,CAAC;QACzD,CAAC;QAED,OAAO,EAAC,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,uBAAuB,EAAC,CAAC;IAC1D,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QAChB,OAAO,CAAC,KAAK,CAAC,4BAA4B,EAAE,KAAK,CAAC,CAAC;QACnD,MAAM,KAAK,CAAC;IACb,CAAC;AACF,CAAC;AAED,SAAS,mBAAmB,CAAC,UAAkB;IAC9C,oCAAoC;IACpC,IAAI,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QAC/B,OAAO,EAAC,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,0BAA0B,EAAC,CAAC;IAC7D,CAAC;IAED,uDAAuD;IACvD,qCAAqC;IACrC,EAAE,CAAC,SAAS,CAAC,UAAU,EAAE,EAAC,SAAS,EAAE,IAAI,EAAC,CAAC,CAAC;IAC5C,OAAO,EAAC,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,uBAAuB,EAAC,CAAC;AACzD,CAAC;AAUD,SAAS,mBAAmB,CAAC,MAAc,EAAE,aAAqB,EAAE,IAAc,EAAE,IAAiC;IACpH,MAAM,IAAI,GAAG,aAAa,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC;IAC5C,MAAM,YAAY,GAAG,YAAY,IAAI,EAAE,CAAC;IACxC,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,EAAE,aAAa,CAAC,GAAG,KAAK,CAAC;IACtE,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;IAC5C,mBAAmB,CAAC,UAAU,CAAC,CAAC;IAChC,IAAI,IAAI,KAAK,YAAY,EAAE,CAAC;QAC3B,MAAM,UAAU,GAAG,gBAAgB,YAAY,MAAM,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,YAAY,CAAC;QAC/F,gBAAgB,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;IAC1C,CAAC;SAAM,IAAI,IAAI,KAAK,YAAY,EAAE,CAAC;QAClC,MAAM,UAAU,GAAG,gBAAgB,YAAY,6BAA6B,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC;QAC9G,MAAM,UAAU,GAAG,wBAAwB,YAAY,KAAK,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC;QAC7F,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,EAAE,aAAa,CAAC,GAAG,KAAK,CAAC;QACtE,gBAAgB,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;QACzC,gBAAgB,CAAC,UAAU,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE,UAAU,CAAC,CAAC;IACpE,CAAC;AACF,CAAC;AAED,SAAS,wBAAwB,CAAC,MAAc,EAAE,IAAe,EAAE,IAAiC;IACnG,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,WAAW,CAAC,GAAG,KAAK,CAAC;IAC1D,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;IAC5C,mBAAmB,CAAC,UAAU,CAAC,CAAC;IAChC,IAAI,IAAI,KAAK,YAAY,EAAE,CAAC;QAC3B,IAAI,UAAU,GAAG,EAAE,CAAC;QACpB,KAAK,MAAM,aAAa,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YAC/C,MAAM,eAAe,GAAG,aAAa,CAAC,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;YAChF,MAAM,IAAI,GAAG,aAAa,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC;YAC5C,MAAM,YAAY,GAAG,YAAY,IAAI,EAAE,CAAC;YACxC,MAAM,YAAY,GACjB,aAAa,IAAI,IAAI,CAAC,CAAC,CAAC,GAAG,YAAY,OAAO,eAAe,EAAE,CAAC,CAAC,CAAC,GAAG,YAAY,OAAO,IAAI,EAAE,CAAC;YAChG,UAAU,IAAI,WAAW,YAAY,oBAAoB,aAAa,SAAS,CAAC;QACjF,CAAC;QAED,gBAAgB,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;IAC1C,CAAC;SAAM,IAAI,IAAI,KAAK,YAAY,EAAE,CAAC;QAClC,IAAI,UAAU,GAAG,EAAE,CAAC;QACpB,KAAK,MAAM,aAAa,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YAC/C,MAAM,eAAe,GAAG,aAAa,CAAC,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;YAChF,MAAM,IAAI,GAAG,aAAa,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC;YAC5C,MAAM,YAAY,GAAG,YAAY,IAAI,EAAE,CAAC;YACxC,MAAM,YAAY,GACjB,aAAa,IAAI,IAAI,CAAC,CAAC,CAAC,GAAG,YAAY,OAAO,eAAe,EAAE,CAAC,CAAC,CAAC,GAAG,YAAY,OAAO,IAAI,EAAE,CAAC;YAChG,UAAU,IAAI,WAAW,YAAY,oBAAoB,aAAa,SAAS,CAAC;QACjF,CAAC;QACD,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,WAAW,CAAC,GAAG,KAAK,CAAC;QAC1D,gBAAgB,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;QACzC,gBAAgB,CAAC,UAAU,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE,UAAU,CAAC,CAAC;IACpE,CAAC;AACF,CAAC;AAED,SAAS,wBAAwB,CAChC,MAAc,EACd,aAAqB,EACrB,IAAc,EACd,IAAiC;IAEjC,MAAM,UAAU,GAAG,aAAa,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC5C,MAAM,IAAI,GAAG,UAAU,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAC/C,MAAM,OAAO,GAAG,OAAO,IAAI,EAAE,CAAC;IAC9B,MAAM,YAAY,GAAG,YAAY,IAAI,EAAE,CAAC;IACxC,MAAM,YAAY,GAAG,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;IACrD,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,aAAa,CAAC,GAAG,KAAK,CAAC;IACrE,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;IAC5C,mBAAmB,CAAC,UAAU,CAAC,CAAC;IAChC,IAAI,IAAI,KAAK,YAAY,EAAE,CAAC;QAC3B,MAAM,UAAU,GAAG,WAAW,YAAY,WAAW,YAAY,UAAU,aAAa;cAC5E,OAAO,cAAc,YAAY,aAAa,CAAC;QAC3D,gBAAgB,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;IAC1C,CAAC;SAAM,IAAI,IAAI,KAAK,YAAY,EAAE,CAAC;QAClC,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,aAAa,CAAC,GAAG,KAAK,CAAC;QACrE,MAAM,UAAU,GAAG,cAAc,CAAC;QAClC,MAAM,UAAU,GAAG,WAAW,YAAY,WAAW,YAAY,UAAU,aAAa;cAC5E,OAAO,cAAc,YAAY,aAAa,CAAC;QAC3D,gBAAgB,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;QACzC,gBAAgB,CAAC,UAAU,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE,UAAU,CAAC,CAAC;IACpE,CAAC;AACF,CAAC;AACD,SAAS,6BAA6B,CAAC,MAAc,EAAE,IAAe,EAAE,IAAiC;IACxG,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,GAAG,KAAK,CAAC;IAC/D,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;IAC5C,mBAAmB,CAAC,UAAU,CAAC,CAAC;IAChC,IAAI,IAAI,KAAK,YAAY,EAAE,CAAC;QAC3B,IAAI,UAAU,GAAG,EAAE,CAAC;QACpB,KAAK,MAAM,aAAa,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YAC/C,MAAM,eAAe,GAAG,aAAa,CAAC,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;YAChF,MAAM,IAAI,GAAG,aAAa,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC;YAC5C,MAAM,OAAO,GAAG,OAAO,IAAI,EAAE,CAAC;YAC9B,MAAM,YAAY,GAAG,aAAa,IAAI,IAAI,CAAC,CAAC,CAAC,GAAG,OAAO,OAAO,eAAe,EAAE,CAAC,CAAC,CAAC,GAAG,OAAO,OAAO,IAAI,EAAE,CAAC;YAC1G,UAAU,IAAI,WAAW,YAAY,aAAa,aAAa,QAAQ,CAAC;QACzE,CAAC;QACD,gBAAgB,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;IAC1C,CAAC;SAAM,IAAI,IAAI,KAAK,YAAY,EAAE,CAAC;QAClC,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,GAAG,KAAK,CAAC;QAC/D,IAAI,UAAU,GAAG,EAAE,CAAC;QACpB,KAAK,MAAM,aAAa,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YAC/C,MAAM,eAAe,GAAG,aAAa,CAAC,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;YAChF,MAAM,IAAI,GAAG,aAAa,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC;YAC5C,MAAM,OAAO,GAAG,OAAO,IAAI,EAAE,CAAC;YAC9B,MAAM,YAAY,GAAG,aAAa,IAAI,IAAI,CAAC,CAAC,CAAC,GAAG,OAAO,OAAO,eAAe,EAAE,CAAC,CAAC,CAAC,GAAG,OAAO,OAAO,IAAI,EAAE,CAAC;YAC1G,UAAU,IAAI,WAAW,YAAY,aAAa,aAAa,QAAQ,CAAC;QACzE,CAAC;QACD,gBAAgB,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;QACzC,gBAAgB,CAAC,UAAU,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE,UAAU,CAAC,CAAC;IACpE,CAAC;AACF,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,KAA4B,EAAE,MAAgC;IACjG,MAAM,cAAc,GAAG,IAAI,GAAG,EAAe,CAAC;IAC9C,MAAM,YAAY,GAA0B,EAAE,CAAC;IAC/C,MAAM,aAAa,GAAmC,EAAE,CAAC;IAEzD,KAAK,MAAM,aAAa,IAAI,KAAK,CAAC,SAAS,EAAE,CAAC;QAC7C,MAAM,KAAK,GAAoB,QAAQ,CACtC,aAAa,EACb,EAAE,EACF,aAAa,EACb,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,IAAI,YAAY,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,CACzF,CAAC;QAEF,6CAA6C;QAC7C,sBAAsB;QACtB,6CAA6C;QAE7C,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YAC1B,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC;YAC3B,IAAI,IAAI,CAAC,SAAS,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;gBACnD,SAAS;YACV,CAAC;YACD,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC;YAChD,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC;YAEvD,gDAAgD;YAChD,MAAM,YAAY,GAAG,QAAQ,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;YACnD,kDAAkD;YAClD,iCAAiC;YACjC,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;YACnD,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAEnC,IAAI,CAAC,MAAM,CAAC,WAAW;gBAAE,SAAS;YAElC,wCAAwC;YACxC,IAAI,iBAAiB,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,YAAY,EAAE,GAAG,MAAM,CAAC,WAAW,cAAc,CAAC,CAAC;YAEpG,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;gBACzB,qCAAqC;gBACrC,IAAI,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC,EAAE,CAAC;oBAC3D,qHAAqH;oBACrH,MAAM,UAAU,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,EAAE,WAAW,CAAC,EAAE,OAAO,CAAC,CAAC;oBACpF,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;oBACzC,MAAM,qBAAqB,GAAG,SAAS,CAAC,SAAS,CAAC;oBAClD,MAAM,CAAC,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC,qBAAqB,EAAE,OAAO,CAAC,CAAC;oBACnE,yEAAyE;oBACzE,iBAAiB,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,YAAY,EAAE,GAAG,MAAM,CAAC,WAAW,OAAO,CAAC,CAAC;gBAC1F,CAAC;YACF,CAAC;YAED,6CAA6C;YAC7C,kBAAkB;YAClB,8DAA8D;YAC9D,KAAK;YACL,IAAI,sBAAsB,GAAG,iBAAiB,CAAC;YAC/C,gDAAgD;YAChD,qDAAqD;YACrD,IAAI;YACJ,IAAI,eAAe,CAAC;YACpB,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,sBAAsB,CAAC,EAAE,CAAC;gBACjD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,sBAAsB,CAAC;oBAAE,SAAS;gBACrD,MAAM,gBAAgB,GAAG,EAAE,CAAC,YAAY,CAAC,sBAAsB,EAAE,OAAO,CAAC,CAAC;gBAC1E,eAAe,GAAG,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;gBAC/C,cAAc,CAAC,GAAG,CAAC,sBAAsB,EAAE,eAAe,CAAC,CAAC;YAC7D,CAAC;iBAAM,CAAC;gBACP,eAAe,GAAG,cAAc,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC;YAC9D,CAAC;YAED,MAAM,cAAc,GAAG,eAAe,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,YAAY,CAAC,CAAC;YAC9F,MAAM,qBAAqB,GAAG,EAAC,GAAG,MAAM,EAAE,GAAG,cAAc,EAAC,CAAC;YAC7D,MAAM,EAAC,WAAW,EAAE,OAAO,EAAE,GAAG,cAAc,EAAC,GAAG,qBAAqB,CAAC;YACxE,MAAM,QAAQ,GAAG,GAAG,OAAO,IAAI,YAAY,EAAE,CAAC;YAC9C,YAAY,CAAC,QAAQ,CAAC,GAAG,cAAc,CAAC;YACxC,IAAI,aAAa,CAAC,YAAY,CAAC,EAAE,CAAC;gBACjC,OAAO,YAAY,CAAC,YAAY,CAAC,CAAC;YACnC,CAAC;iBAAM,CAAC;gBACP,YAAY,CAAC,YAAY,CAAC,GAAG,cAAc,CAAC;gBAC5C,aAAa,CAAC,YAAY,CAAC,GAAG,IAAI,CAAC;YACpC,CAAC;QACF,CAAC;IACF,CAAC;IAED,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC;QAC7C,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YAC3B,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YAC7B,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACtB,MAAM,SAAS,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;gBAC1C,IAAI,YAAY,CAAC,SAAS,CAAC,EAAE,CAAC;oBAC7B,OAAO,YAAY,CAAC,GAAG,CAAC,CAAC;gBAC1B,CAAC;YACF,CAAC;QACF,CAAC;IACF,CAAC;IAED,iDAAiD;IACjD,uCAAuC;IACvC,sCAAsC;IACtC,IAAI;IACJ,gEAAgE;IAChE,+CAA+C;IAC/C,8FAA8F;IAE9F,+CAA+C;IAE/C,MAAM,eAAe,GAAG,WAAW,CAAC;IACpC,MAAM,IAAI,GAAG,YAAY,CAAC;IAC1B,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC;QAC7C,wBAAwB,CAAC,eAAe,EAAE,GAAG,EAAE,YAAY,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,CAAC;QACxE,mBAAmB,CAAC,eAAe,EAAE,GAAG,EAAE,YAAY,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,CAAC;IACpE,CAAC;IAED,wBAAwB,CAAC,eAAe,EAAE,YAAY,EAAE,IAAI,CAAC,CAAC;IAC9D,6BAA6B,CAAC,eAAe,EAAE,YAAY,EAAE,IAAI,CAAC,CAAC;AACpE,CAAC"}
|
package/dist/esm/helpers.d.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { EdrNetworkUserConfig, NetworkUserConfig, SensitiveString } from 'hardhat/types/config';
|
|
2
2
|
import { HardhatRuntimeEnvironment } from 'hardhat/types/hre';
|
|
3
|
+
import { NetworkConnection } from 'hardhat/types/network';
|
|
3
4
|
import { Environment, UnresolvedUnknownNamedAccounts, UnresolvedNetworkSpecificData } from 'rocketh';
|
|
4
5
|
export declare function setupHardhatDeploy<Extensions extends Record<string, (env: Environment<any, any, any>) => any> = {}, NamedAccounts extends UnresolvedUnknownNamedAccounts = UnresolvedUnknownNamedAccounts, Data extends UnresolvedNetworkSpecificData = UnresolvedNetworkSpecificData>(extensions: Extensions): {
|
|
5
6
|
loadEnvironmentFromHardhat: (required: {
|
|
@@ -8,8 +9,9 @@ export declare function setupHardhatDeploy<Extensions extends Record<string, (en
|
|
|
8
9
|
useChainIdOfForkedNetwork?: boolean;
|
|
9
10
|
}) => Promise<import("rocketh").EnhancedEnvironment<UnresolvedUnknownNamedAccounts, UnresolvedNetworkSpecificData, import("rocketh").UnknownDeployments, Extensions, Record<string, unknown>>>;
|
|
10
11
|
};
|
|
11
|
-
export declare function loadEnvironmentFromHardhat<NamedAccounts extends UnresolvedUnknownNamedAccounts = UnresolvedUnknownNamedAccounts, Data extends UnresolvedNetworkSpecificData = UnresolvedNetworkSpecificData>(
|
|
12
|
+
export declare function loadEnvironmentFromHardhat<NamedAccounts extends UnresolvedUnknownNamedAccounts = UnresolvedUnknownNamedAccounts, Data extends UnresolvedNetworkSpecificData = UnresolvedNetworkSpecificData>(params: {
|
|
12
13
|
hre: HardhatRuntimeEnvironment;
|
|
14
|
+
connection?: NetworkConnection;
|
|
13
15
|
}, options?: {
|
|
14
16
|
useChainIdOfForkedNetwork?: boolean;
|
|
15
17
|
}): Promise<Environment<NamedAccounts, Data>>;
|
|
@@ -18,7 +20,7 @@ export declare function getMnemonic(networkName?: string): string | SensitiveStr
|
|
|
18
20
|
export declare function getAccounts(networkName?: string): {
|
|
19
21
|
mnemonic: string | SensitiveString;
|
|
20
22
|
};
|
|
21
|
-
export declare function addNetworksFromEnv(networks?: Record<string,
|
|
23
|
+
export declare function addNetworksFromEnv(networks?: Record<string, NetworkUserConfig>): Record<string, NetworkUserConfig>;
|
|
22
24
|
export declare function populateNetworksFromEnv(networks: Record<string, Omit<NetworkUserConfig, 'accounts' | 'url'> | EdrNetworkUserConfig>): Record<string, NetworkUserConfig>;
|
|
23
25
|
export declare function addForkConfiguration(networks: Record<string, NetworkUserConfig>): Record<string, NetworkUserConfig>;
|
|
24
26
|
//# sourceMappingURL=helpers.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../src/helpers.ts"],"names":[],"mappings":"AACA,OAAO,EAEN,oBAAoB,EAEpB,iBAAiB,EACjB,eAAe,EACf,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAC,yBAAyB,EAAC,MAAM,mBAAmB,CAAC;AAC5D,OAAO,EACN,WAAW,EACX,8BAA8B,EAC9B,6BAA6B,EAG7B,MAAM,SAAS,CAAC;AAEjB,wBAAgB,kBAAkB,CACjC,UAAU,SAAS,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,WAAW,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,KAAK,GAAG,CAAC,GAAG,EAAE,EAChF,aAAa,SAAS,8BAA8B,GAAG,8BAA8B,EACrF,IAAI,SAAS,6BAA6B,GAAG,6BAA6B,EACzE,UAAU,EAAE,UAAU;2CAEZ;QAAC,GAAG,EAAE,yBAAyB,CAAA;KAAC,YAChC;QACT,yBAAyB,CAAC,EAAE,OAAO,CAAC;KACpC;EASF;AAED,wBAAsB,0BAA0B,CAC/C,aAAa,SAAS,8BAA8B,GAAG,8BAA8B,EACrF,IAAI,SAAS,6BAA6B,GAAG,6BAA6B,EAE1E,
|
|
1
|
+
{"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../src/helpers.ts"],"names":[],"mappings":"AACA,OAAO,EAEN,oBAAoB,EAEpB,iBAAiB,EACjB,eAAe,EACf,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAC,yBAAyB,EAAC,MAAM,mBAAmB,CAAC;AAC5D,OAAO,EAAC,iBAAiB,EAAC,MAAM,uBAAuB,CAAC;AACxD,OAAO,EACN,WAAW,EACX,8BAA8B,EAC9B,6BAA6B,EAG7B,MAAM,SAAS,CAAC;AAEjB,wBAAgB,kBAAkB,CACjC,UAAU,SAAS,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,WAAW,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,KAAK,GAAG,CAAC,GAAG,EAAE,EAChF,aAAa,SAAS,8BAA8B,GAAG,8BAA8B,EACrF,IAAI,SAAS,6BAA6B,GAAG,6BAA6B,EACzE,UAAU,EAAE,UAAU;2CAEZ;QAAC,GAAG,EAAE,yBAAyB,CAAA;KAAC,YAChC;QACT,yBAAyB,CAAC,EAAE,OAAO,CAAC;KACpC;EASF;AAED,wBAAsB,0BAA0B,CAC/C,aAAa,SAAS,8BAA8B,GAAG,8BAA8B,EACrF,IAAI,SAAS,6BAA6B,GAAG,6BAA6B,EAE1E,MAAM,EAAE;IAAC,GAAG,EAAE,yBAAyB,CAAC;IAAC,UAAU,CAAC,EAAE,iBAAiB,CAAA;CAAC,EACxE,OAAO,CAAC,EAAE;IACT,yBAAyB,CAAC,EAAE,OAAO,CAAC;CACpC,GACC,OAAO,CAAC,WAAW,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC,CAuE3C;AAiBD,wBAAgB,MAAM,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,GAAG,eAAe,GAAG,SAAS,CAuBhF;AAED,wBAAgB,WAAW,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,eAAe,CAc1E;AAED,wBAAgB,WAAW,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG;IAAC,QAAQ,EAAE,MAAM,GAAG,eAAe,CAAA;CAAC,CAEtF;AAED,wBAAgB,kBAAkB,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,iBAAiB,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAuBlH;AAED,wBAAgB,uBAAuB,CACtC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,iBAAiB,EAAE,UAAU,GAAG,KAAK,CAAC,GAAG,oBAAoB,CAAC,GAC1F,MAAM,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAuBnC;AAED,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,iBAAiB,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAsDnH"}
|
package/dist/esm/helpers.js
CHANGED
|
@@ -9,15 +9,15 @@ export function setupHardhatDeploy(extensions) {
|
|
|
9
9
|
loadEnvironmentFromHardhat: loadEnvironmentFromHardhatWithExtensions,
|
|
10
10
|
};
|
|
11
11
|
}
|
|
12
|
-
export async function loadEnvironmentFromHardhat(
|
|
13
|
-
const connection = await hre.network.connect();
|
|
12
|
+
export async function loadEnvironmentFromHardhat(params, options) {
|
|
13
|
+
const connection = params.connection || (await params.hre.network.connect());
|
|
14
14
|
let provider = connection.provider;
|
|
15
15
|
let network = connection.networkName;
|
|
16
16
|
let forkChainId;
|
|
17
17
|
const fork = process.env.HARDHAT_FORK;
|
|
18
18
|
if (fork) {
|
|
19
19
|
if (options?.useChainIdOfForkedNetwork) {
|
|
20
|
-
const forkNetworkConfig = hre.config.networks[fork];
|
|
20
|
+
const forkNetworkConfig = params.hre.config.networks[fork];
|
|
21
21
|
if (forkNetworkConfig.type === 'edr-simulated') {
|
|
22
22
|
forkChainId = forkNetworkConfig.chainId;
|
|
23
23
|
}
|
|
@@ -191,6 +191,7 @@ export function addForkConfiguration(networks) {
|
|
|
191
191
|
if (currentNetworkName &&
|
|
192
192
|
currentNetworkName !== 'hardhat' &&
|
|
193
193
|
currentNetworkName !== 'edr' &&
|
|
194
|
+
currentNetworkName !== 'edr-simulated' &&
|
|
194
195
|
currentNetworkName !== 'memory') {
|
|
195
196
|
const currentNetwork = networks[currentNetworkName];
|
|
196
197
|
if (currentNetwork) {
|
package/dist/esm/helpers.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../src/helpers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,cAAc,EAAC,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../src/helpers.ts"],"names":[],"mappings":"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"}
|
package/dist/esm/types.d.ts
CHANGED
|
@@ -1,19 +1,13 @@
|
|
|
1
1
|
export type ArtifactGenerationUserConfig = {
|
|
2
2
|
destinations?: {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
jsm?: string[];
|
|
7
|
-
tsm?: string[];
|
|
8
|
-
};
|
|
3
|
+
mode?: 'javascript' | 'typescript';
|
|
4
|
+
folder?: string;
|
|
5
|
+
}[];
|
|
9
6
|
};
|
|
10
7
|
export type ArtifactGenerationConfig = {
|
|
11
8
|
destinations: {
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
jsm: string[];
|
|
16
|
-
tsm: string[];
|
|
17
|
-
};
|
|
9
|
+
mode: 'javascript' | 'typescript';
|
|
10
|
+
folder: string;
|
|
11
|
+
}[];
|
|
18
12
|
};
|
|
19
13
|
//# sourceMappingURL=types.d.ts.map
|
package/dist/esm/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,4BAA4B,GAAG;IAE1C,YAAY,CAAC,EAAE;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,4BAA4B,GAAG;IAE1C,YAAY,CAAC,EAAE;QAAC,IAAI,CAAC,EAAE,YAAY,GAAG,YAAY,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAC,EAAE,CAAC;CACvE,CAAC;AAEF,MAAM,MAAM,wBAAwB,GAAG;IAEtC,YAAY,EAAE;QAAC,IAAI,EAAE,YAAY,GAAG,YAAY,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAC,EAAE,CAAC;CACpE,CAAC"}
|
package/package.json
CHANGED
package/src/config/default.ts
CHANGED
|
@@ -2,11 +2,5 @@ import type {ArtifactGenerationConfig} from '../types.js';
|
|
|
2
2
|
|
|
3
3
|
export const DEFAULT_CONFIG: ArtifactGenerationConfig = {
|
|
4
4
|
// externalArtifacts: [],
|
|
5
|
-
destinations: {
|
|
6
|
-
js: [],
|
|
7
|
-
ts: ['./generated/artifacts.ts'],
|
|
8
|
-
json: [],
|
|
9
|
-
jsm: [],
|
|
10
|
-
tsm: [],
|
|
11
|
-
},
|
|
5
|
+
destinations: [{mode: 'javascript', folder: './generated'}],
|
|
12
6
|
};
|
package/src/config/get-config.ts
CHANGED
|
@@ -4,10 +4,9 @@ import {DEFAULT_CONFIG} from './default.js';
|
|
|
4
4
|
|
|
5
5
|
export function getConfig(userConfig: ArtifactGenerationUserConfig | undefined): ArtifactGenerationConfig {
|
|
6
6
|
return {
|
|
7
|
-
destinations:
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
},
|
|
7
|
+
destinations:
|
|
8
|
+
userConfig?.destinations?.map((v) => ({mode: v.mode || 'javascript', folder: v.folder || './generated'})) ||
|
|
9
|
+
DEFAULT_CONFIG.destinations,
|
|
11
10
|
// externalArtifacts: userConfig?.externalArtifacts || DEFAULT_CONFIG.externalArtifacts,
|
|
12
11
|
};
|
|
13
12
|
}
|
package/src/config/validation.ts
CHANGED
|
@@ -8,14 +8,12 @@ const artifactGenerationUserConfigSchema = z
|
|
|
8
8
|
.object({
|
|
9
9
|
// externalArtifacts: z.array(z.string()).optional(),
|
|
10
10
|
destinations: z
|
|
11
|
-
.
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
directories: z.array(z.string()).optional(),
|
|
18
|
-
})
|
|
11
|
+
.array(
|
|
12
|
+
z.object({
|
|
13
|
+
mode: z.union([z.literal('javascript'), z.literal('typescript')]).optional(),
|
|
14
|
+
folder: z.string().optional(),
|
|
15
|
+
})
|
|
16
|
+
)
|
|
19
17
|
.optional(),
|
|
20
18
|
})
|
|
21
19
|
.optional();
|
package/src/generate-types.ts
CHANGED
|
@@ -49,140 +49,117 @@ function ensureDirExistsSync(folderPath: string) {
|
|
|
49
49
|
return {created: true, reason: 'Directory was created'};
|
|
50
50
|
}
|
|
51
51
|
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
const jsm = typeof destinations?.jsm === 'string' ? [destinations?.jsm] : destinations?.jsm || [];
|
|
58
|
-
const tsm = typeof destinations?.tsm === 'string' ? [destinations?.tsm] : destinations?.tsm || [];
|
|
52
|
+
type Artifact = {
|
|
53
|
+
contractName: string;
|
|
54
|
+
abi: any[];
|
|
55
|
+
// ...
|
|
56
|
+
};
|
|
59
57
|
|
|
60
|
-
|
|
61
|
-
const newContent = `export default ${JSON.stringify(data, null, 2)} as const;`;
|
|
62
|
-
for (const tsFile of ts) {
|
|
63
|
-
if (tsFile.endsWith('.ts')) {
|
|
64
|
-
if (!name) {
|
|
65
|
-
const filepath = tsFile;
|
|
66
|
-
const folderPath = path.dirname(filepath);
|
|
67
|
-
ensureDirExistsSync(folderPath);
|
|
68
|
-
writeIfDifferent(filepath, newContent);
|
|
58
|
+
type Artifacts = {[key: string]: Artifact};
|
|
69
59
|
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
export
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
}
|
|
86
|
-
}
|
|
87
|
-
} else {
|
|
88
|
-
if (name) {
|
|
89
|
-
const filepath = `${tsFile}/${name}.ts`;
|
|
90
|
-
const folderPath = path.dirname(filepath);
|
|
91
|
-
ensureDirExistsSync(folderPath);
|
|
92
|
-
writeIfDifferent(filepath, newContent);
|
|
93
|
-
} else {
|
|
94
|
-
let indexFileContent = ``;
|
|
95
|
-
|
|
96
|
-
for (const name of Object.keys(data)) {
|
|
97
|
-
let transformedName = name.replaceAll('/', '_').replaceAll('.', '_');
|
|
98
|
-
indexFileContent += `
|
|
99
|
-
import ${transformedName} from './${name}.js';
|
|
100
|
-
export {${transformedName}};
|
|
101
|
-
export type Abi_${transformedName} = typeof ${transformedName}.abi;
|
|
102
|
-
`;
|
|
103
|
-
}
|
|
104
|
-
writeIfDifferent(`${tsFile}/index.ts`, indexFileContent);
|
|
105
|
-
}
|
|
106
|
-
}
|
|
107
|
-
}
|
|
60
|
+
function writeArtifactToFile(folder: string, canonicalName: string, data: Artifact, mode: 'typescript' | 'javascript') {
|
|
61
|
+
const name = canonicalName.split('/').pop();
|
|
62
|
+
const artifactName = `Artifact_${name}`;
|
|
63
|
+
const tsFilepath = path.join(folder, 'values', canonicalName) + '.ts';
|
|
64
|
+
const folderPath = path.dirname(tsFilepath);
|
|
65
|
+
ensureDirExistsSync(folderPath);
|
|
66
|
+
if (mode === 'typescript') {
|
|
67
|
+
const newContent = `export const ${artifactName} = ${JSON.stringify(data, null, 2)} as const;`;
|
|
68
|
+
writeIfDifferent(tsFilepath, newContent);
|
|
69
|
+
} else if (mode === 'javascript') {
|
|
70
|
+
const newContent = `export const ${artifactName} = /** @type {const} **/ (${JSON.stringify(data, null, 2)});`;
|
|
71
|
+
const dtsContent = `export declare const ${artifactName}: ${JSON.stringify(data, null, 2)};`;
|
|
72
|
+
const jsFilepath = path.join(folder, 'values', canonicalName) + '.js';
|
|
73
|
+
writeIfDifferent(jsFilepath, newContent);
|
|
74
|
+
writeIfDifferent(jsFilepath.replace(/\.js$/, '.d.ts'), dtsContent);
|
|
108
75
|
}
|
|
76
|
+
}
|
|
109
77
|
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
for (const
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
writeIfDifferent(filepath.replace(/\.js$/, '.d.ts'), dtsContent);
|
|
124
|
-
writeIfDifferent(filepath.replace(/\.js$/, '.cjs'), cjsContent);
|
|
125
|
-
}
|
|
126
|
-
} else {
|
|
127
|
-
if (name) {
|
|
128
|
-
const filepath = `${jsFile}/${name}.js`;
|
|
129
|
-
const folderPath = path.dirname(filepath);
|
|
130
|
-
ensureDirExistsSync(folderPath);
|
|
131
|
-
writeIfDifferent(filepath, newContent);
|
|
132
|
-
writeIfDifferent(filepath.replace(/\.js$/, '.d.ts'), dtsContent);
|
|
133
|
-
writeIfDifferent(filepath.replace(/\.js$/, '.cjs'), cjsContent);
|
|
134
|
-
}
|
|
135
|
-
}
|
|
78
|
+
function writeArtifactIndexToFile(folder: string, data: Artifacts, mode: 'typescript' | 'javascript') {
|
|
79
|
+
const tsFilepath = path.join(folder, 'artifacts') + '.ts';
|
|
80
|
+
const folderPath = path.dirname(tsFilepath);
|
|
81
|
+
ensureDirExistsSync(folderPath);
|
|
82
|
+
if (mode === 'typescript') {
|
|
83
|
+
let newContent = '';
|
|
84
|
+
for (const canonicalName of Object.keys(data)) {
|
|
85
|
+
const transformedName = canonicalName.replaceAll('/', '_').replaceAll('.', '_');
|
|
86
|
+
const name = canonicalName.split('/').pop();
|
|
87
|
+
const artifactName = `Artifact_${name}`;
|
|
88
|
+
const importNaming =
|
|
89
|
+
canonicalName != name ? `${artifactName} as ${transformedName}` : `${artifactName} as ${name}`;
|
|
90
|
+
newContent += `export {${importNaming}} from './values/${canonicalName}.js';\n`;
|
|
136
91
|
}
|
|
137
|
-
}
|
|
138
92
|
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
} else {
|
|
150
|
-
if (name) {
|
|
151
|
-
const filepath = `${jsonFile}/${name}.json`;
|
|
152
|
-
const folderPath = path.dirname(filepath);
|
|
153
|
-
ensureDirExistsSync(folderPath);
|
|
154
|
-
writeIfDifferent(filepath, newContent);
|
|
155
|
-
}
|
|
156
|
-
}
|
|
93
|
+
writeIfDifferent(tsFilepath, newContent);
|
|
94
|
+
} else if (mode === 'javascript') {
|
|
95
|
+
let newContent = '';
|
|
96
|
+
for (const canonicalName of Object.keys(data)) {
|
|
97
|
+
const transformedName = canonicalName.replaceAll('/', '_').replaceAll('.', '_');
|
|
98
|
+
const name = canonicalName.split('/').pop();
|
|
99
|
+
const artifactName = `Artifact_${name}`;
|
|
100
|
+
const importNaming =
|
|
101
|
+
canonicalName != name ? `${artifactName} as ${transformedName}` : `${artifactName} as ${name}`;
|
|
102
|
+
newContent += `export {${importNaming}} from './values/${canonicalName}.js';\n`;
|
|
157
103
|
}
|
|
104
|
+
const jsFilepath = path.join(folder, 'artifacts') + '.js';
|
|
105
|
+
writeIfDifferent(jsFilepath, newContent);
|
|
106
|
+
writeIfDifferent(jsFilepath.replace(/\.js$/, '.d.ts'), newContent);
|
|
158
107
|
}
|
|
108
|
+
}
|
|
159
109
|
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
110
|
+
function writeABIDefinitionToFile(
|
|
111
|
+
folder: string,
|
|
112
|
+
canonicalName: string,
|
|
113
|
+
data: Artifact,
|
|
114
|
+
mode: 'typescript' | 'javascript'
|
|
115
|
+
) {
|
|
116
|
+
const nameAsPath = canonicalName.split('/');
|
|
117
|
+
const name = nameAsPath[nameAsPath.length - 1];
|
|
118
|
+
const abiName = `Abi_${name}`;
|
|
119
|
+
const artifactName = `Artifact_${name}`;
|
|
120
|
+
const relativePath = `../`.repeat(nameAsPath.length);
|
|
121
|
+
const tsFilepath = path.join(folder, 'types', canonicalName) + '.ts';
|
|
122
|
+
const folderPath = path.dirname(tsFilepath);
|
|
123
|
+
ensureDirExistsSync(folderPath);
|
|
124
|
+
if (mode === 'typescript') {
|
|
125
|
+
const newContent = `import {${artifactName}} from '${relativePath}values/${canonicalName}.js';
|
|
126
|
+
export type ${abiName} = (typeof ${artifactName})['abi'];\n`;
|
|
127
|
+
writeIfDifferent(tsFilepath, newContent);
|
|
128
|
+
} else if (mode === 'javascript') {
|
|
129
|
+
const jsFilepath = path.join(folder, 'types', canonicalName) + '.js';
|
|
130
|
+
const newContent = `export {};\n`;
|
|
131
|
+
const dtsContent = `import {${artifactName}} from '${relativePath}values/${canonicalName}.js';
|
|
132
|
+
export type ${abiName} = (typeof ${artifactName})['abi'];\n`;
|
|
133
|
+
writeIfDifferent(jsFilepath, newContent);
|
|
134
|
+
writeIfDifferent(jsFilepath.replace(/\.js$/, '.d.ts'), dtsContent);
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
function writeABIDefinitionIndexToFile(folder: string, data: Artifacts, mode: 'typescript' | 'javascript') {
|
|
138
|
+
const tsFilepath = path.join(folder, 'types', 'index') + '.ts';
|
|
139
|
+
const folderPath = path.dirname(tsFilepath);
|
|
140
|
+
ensureDirExistsSync(folderPath);
|
|
141
|
+
if (mode === 'typescript') {
|
|
142
|
+
let newContent = '';
|
|
143
|
+
for (const canonicalName of Object.keys(data)) {
|
|
144
|
+
const transformedName = canonicalName.replaceAll('/', '_').replaceAll('.', '_');
|
|
145
|
+
const name = canonicalName.split('/').pop();
|
|
146
|
+
const abiName = `Abi_${name}`;
|
|
147
|
+
const importNaming = canonicalName != name ? `${abiName} as ${transformedName}` : `${abiName} as ${name}`;
|
|
148
|
+
newContent += `export {${importNaming}} from "./${canonicalName}.js"\n`;
|
|
172
149
|
}
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
writeIfDifferent(filepath, newContent);
|
|
184
|
-
}
|
|
150
|
+
writeIfDifferent(tsFilepath, newContent);
|
|
151
|
+
} else if (mode === 'javascript') {
|
|
152
|
+
const jsFilepath = path.join(folder, 'types', 'index') + '.js';
|
|
153
|
+
let newContent = '';
|
|
154
|
+
for (const canonicalName of Object.keys(data)) {
|
|
155
|
+
const transformedName = canonicalName.replaceAll('/', '_').replaceAll('.', '_');
|
|
156
|
+
const name = canonicalName.split('/').pop();
|
|
157
|
+
const abiName = `Abi_${name}`;
|
|
158
|
+
const importNaming = canonicalName != name ? `${abiName} as ${transformedName}` : `${abiName} as ${name}`;
|
|
159
|
+
newContent += `export {${importNaming}} from "./${canonicalName}.js"\n`;
|
|
185
160
|
}
|
|
161
|
+
writeIfDifferent(jsFilepath, newContent);
|
|
162
|
+
writeIfDifferent(jsFilepath.replace(/\.js$/, '.d.ts'), newContent);
|
|
186
163
|
}
|
|
187
164
|
}
|
|
188
165
|
|
|
@@ -280,13 +257,23 @@ export async function generateTypes(paths: {artifacts: string[]}, config: Artifa
|
|
|
280
257
|
}
|
|
281
258
|
}
|
|
282
259
|
|
|
260
|
+
// for (const key of Object.keys(allArtifacts)) {
|
|
261
|
+
// const artifact = allArtifacts[key];
|
|
262
|
+
// writeFiles(key, artifact, config);
|
|
263
|
+
// }
|
|
264
|
+
// // const json = hre.config.generateTypedArtifacts.json || [];
|
|
265
|
+
// // json.push('./generated/_artifacts.json');
|
|
266
|
+
// // writeFiles(undefined, allArtifacts, {...hre.config.generateTypedArtifacts, json: json});
|
|
267
|
+
|
|
268
|
+
// writeFiles(undefined, allArtifacts, config);
|
|
269
|
+
|
|
270
|
+
const generatedFolder = 'generated';
|
|
271
|
+
const mode = 'javascript';
|
|
283
272
|
for (const key of Object.keys(allArtifacts)) {
|
|
284
|
-
|
|
285
|
-
|
|
273
|
+
writeABIDefinitionToFile(generatedFolder, key, allArtifacts[key], mode);
|
|
274
|
+
writeArtifactToFile(generatedFolder, key, allArtifacts[key], mode);
|
|
286
275
|
}
|
|
287
|
-
// const json = hre.config.generateTypedArtifacts.json || [];
|
|
288
|
-
// json.push('./generated/_artifacts.json');
|
|
289
|
-
// writeFiles(undefined, allArtifacts, {...hre.config.generateTypedArtifacts, json: json});
|
|
290
276
|
|
|
291
|
-
|
|
277
|
+
writeArtifactIndexToFile(generatedFolder, allArtifacts, mode);
|
|
278
|
+
writeABIDefinitionIndexToFile(generatedFolder, allArtifacts, mode);
|
|
292
279
|
}
|
package/src/helpers.ts
CHANGED
|
@@ -7,6 +7,7 @@ import {
|
|
|
7
7
|
SensitiveString,
|
|
8
8
|
} from 'hardhat/types/config';
|
|
9
9
|
import {HardhatRuntimeEnvironment} from 'hardhat/types/hre';
|
|
10
|
+
import {NetworkConnection} from 'hardhat/types/network';
|
|
10
11
|
import {
|
|
11
12
|
Environment,
|
|
12
13
|
UnresolvedUnknownNamedAccounts,
|
|
@@ -39,19 +40,19 @@ export async function loadEnvironmentFromHardhat<
|
|
|
39
40
|
NamedAccounts extends UnresolvedUnknownNamedAccounts = UnresolvedUnknownNamedAccounts,
|
|
40
41
|
Data extends UnresolvedNetworkSpecificData = UnresolvedNetworkSpecificData
|
|
41
42
|
>(
|
|
42
|
-
|
|
43
|
+
params: {hre: HardhatRuntimeEnvironment; connection?: NetworkConnection},
|
|
43
44
|
options?: {
|
|
44
45
|
useChainIdOfForkedNetwork?: boolean;
|
|
45
46
|
}
|
|
46
47
|
): Promise<Environment<NamedAccounts, Data>> {
|
|
47
|
-
const connection = await hre.network.connect();
|
|
48
|
+
const connection = params.connection || (await params.hre.network.connect());
|
|
48
49
|
let provider: any = connection.provider;
|
|
49
50
|
let network: string | {fork: string} = connection.networkName;
|
|
50
51
|
let forkChainId: number | undefined;
|
|
51
52
|
const fork = process.env.HARDHAT_FORK as string | undefined;
|
|
52
53
|
if (fork) {
|
|
53
54
|
if (options?.useChainIdOfForkedNetwork) {
|
|
54
|
-
const forkNetworkConfig = hre.config.networks[fork];
|
|
55
|
+
const forkNetworkConfig = params.hre.config.networks[fork];
|
|
55
56
|
|
|
56
57
|
if (forkNetworkConfig.type === 'edr-simulated') {
|
|
57
58
|
forkChainId = forkNetworkConfig.chainId;
|
|
@@ -176,7 +177,7 @@ export function getAccounts(networkName?: string): {mnemonic: string | Sensitive
|
|
|
176
177
|
return {mnemonic: getMnemonic(networkName)};
|
|
177
178
|
}
|
|
178
179
|
|
|
179
|
-
export function addNetworksFromEnv(networks?: Record<string,
|
|
180
|
+
export function addNetworksFromEnv(networks?: Record<string, NetworkUserConfig>): Record<string, NetworkUserConfig> {
|
|
180
181
|
const newNetworks: Record<string, NetworkUserConfig> = networks ? {...networks} : {};
|
|
181
182
|
const allEnv = Object.keys(process.env);
|
|
182
183
|
for (const envKey of allEnv) {
|
|
@@ -236,6 +237,7 @@ export function addForkConfiguration(networks: Record<string, NetworkUserConfig>
|
|
|
236
237
|
currentNetworkName &&
|
|
237
238
|
currentNetworkName !== 'hardhat' &&
|
|
238
239
|
currentNetworkName !== 'edr' &&
|
|
240
|
+
currentNetworkName !== 'edr-simulated' &&
|
|
239
241
|
currentNetworkName !== 'memory'
|
|
240
242
|
) {
|
|
241
243
|
const currentNetwork = networks[currentNetworkName] as HttpNetworkUserConfig;
|
package/src/types.ts
CHANGED
|
@@ -1,21 +1,9 @@
|
|
|
1
1
|
export type ArtifactGenerationUserConfig = {
|
|
2
2
|
// externalArtifacts?: string[];
|
|
3
|
-
destinations?: {
|
|
4
|
-
js?: string[];
|
|
5
|
-
ts?: string[];
|
|
6
|
-
json?: string[];
|
|
7
|
-
jsm?: string[];
|
|
8
|
-
tsm?: string[];
|
|
9
|
-
};
|
|
3
|
+
destinations?: {mode?: 'javascript' | 'typescript'; folder?: string}[];
|
|
10
4
|
};
|
|
11
5
|
|
|
12
6
|
export type ArtifactGenerationConfig = {
|
|
13
7
|
// externalArtifacts: string[];
|
|
14
|
-
destinations: {
|
|
15
|
-
js: string[];
|
|
16
|
-
ts: string[];
|
|
17
|
-
json: string[];
|
|
18
|
-
jsm: string[];
|
|
19
|
-
tsm: string[];
|
|
20
|
-
};
|
|
8
|
+
destinations: {mode: 'javascript' | 'typescript'; folder: string}[];
|
|
21
9
|
};
|