rocketh 0.15.0-testing.17 → 0.15.0-testing.2

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.
Files changed (57) hide show
  1. package/CHANGELOG.md +0 -90
  2. package/dist/cli.js +1 -1
  3. package/dist/cli.js.map +1 -1
  4. package/dist/environment/deployments.d.ts +1 -1
  5. package/dist/environment/deployments.d.ts.map +1 -1
  6. package/dist/environment/index.d.ts +6 -2
  7. package/dist/environment/index.d.ts.map +1 -1
  8. package/dist/environment/index.js +60 -42
  9. package/dist/environment/index.js.map +1 -1
  10. package/dist/environment/types.d.ts +75 -33
  11. package/dist/environment/types.d.ts.map +1 -1
  12. package/dist/environment/utils/artifacts.d.ts +1 -1
  13. package/dist/environment/utils/artifacts.d.ts.map +1 -1
  14. package/dist/environment/utils/chains.d.ts +5 -6
  15. package/dist/environment/utils/chains.d.ts.map +1 -1
  16. package/dist/environment/utils/chains.js +19 -85
  17. package/dist/environment/utils/chains.js.map +1 -1
  18. package/dist/executor/index.d.ts +84 -12
  19. package/dist/executor/index.d.ts.map +1 -1
  20. package/dist/executor/index.js +216 -167
  21. package/dist/executor/index.js.map +1 -1
  22. package/dist/executor/setup.test.d.ts +3 -3
  23. package/dist/executor/setup.test.d.ts.map +1 -1
  24. package/dist/executor/setup.test.js +1 -1
  25. package/dist/executor/setup.test.js.map +1 -1
  26. package/dist/executor/types.d.ts +0 -92
  27. package/dist/executor/types.d.ts.map +1 -1
  28. package/dist/index.d.ts +6 -6
  29. package/dist/index.d.ts.map +1 -1
  30. package/dist/index.js +6 -6
  31. package/dist/index.js.map +1 -1
  32. package/dist/utils/extensions.d.ts +2 -1
  33. package/dist/utils/extensions.d.ts.map +1 -1
  34. package/dist/utils/extensions.test.d.ts +2 -2
  35. package/dist/utils/extensions.test.d.ts.map +1 -1
  36. package/dist/utils/fs.d.ts +1 -1
  37. package/dist/utils/fs.d.ts.map +1 -1
  38. package/dist/utils/fs.js.map +1 -1
  39. package/package.json +3 -3
  40. package/src/cli.ts +3 -3
  41. package/src/environment/deployments.ts +1 -1
  42. package/src/environment/index.ts +72 -56
  43. package/src/environment/types.ts +380 -0
  44. package/src/environment/utils/artifacts.ts +1 -1
  45. package/src/environment/utils/chains.ts +22 -113
  46. package/src/executor/index.ts +341 -218
  47. package/src/executor/setup.test.ts +2 -2
  48. package/src/executor/types.ts +176 -0
  49. package/src/index.ts +6 -14
  50. package/src/utils/extensions.test.ts +1 -1
  51. package/src/utils/extensions.ts +2 -2
  52. package/src/utils/fs.ts +1 -1
  53. package/dist/types.d.ts +0 -472
  54. package/dist/types.d.ts.map +0 -1
  55. package/dist/types.js +0 -2
  56. package/dist/types.js.map +0 -1
  57. package/src/types.ts +0 -600
@@ -1,6 +1,5 @@
1
1
  import { Address } from 'abitype';
2
2
  import type { Environment, JSONTypePlusBigInt, UnknownDeployments, UnresolvedNetworkSpecificData, UnresolvedUnknownNamedAccounts } from '../environment/types.js';
3
- import { EIP1193ProviderWithoutEvents } from 'eip-1193';
4
3
  export type DeployScriptFunction<NamedAccounts extends UnresolvedUnknownNamedAccounts = UnresolvedUnknownNamedAccounts, Data extends UnresolvedNetworkSpecificData = UnresolvedNetworkSpecificData, ArgumentsTypes = undefined, Deployments extends UnknownDeployments = UnknownDeployments, Extra extends Record<string, unknown> = Record<string, unknown>> = (env: Environment<NamedAccounts, Data, Deployments, Extra>, args?: ArgumentsTypes) => Promise<void | boolean>;
5
4
  export interface DeployScriptModule<NamedAccounts extends UnresolvedUnknownNamedAccounts = UnresolvedUnknownNamedAccounts, Data extends UnresolvedNetworkSpecificData = UnresolvedNetworkSpecificData, ArgumentsTypes = undefined, Deployments extends UnknownDeployments = UnknownDeployments, Extra extends Record<string, unknown> = Record<string, unknown>> {
6
5
  (env: Environment<NamedAccounts, Data, Deployments, Extra>, args?: ArgumentsTypes): Promise<void | boolean>;
@@ -96,96 +95,5 @@ export type ChainInfo = {
96
95
  genesisHash?: string;
97
96
  properties?: Record<string, JSONTypePlusBigInt>;
98
97
  };
99
- export type NamedAccountExecuteFunction<NamedAccounts extends UnresolvedUnknownNamedAccounts = UnresolvedUnknownNamedAccounts, Data extends UnresolvedNetworkSpecificData = UnresolvedNetworkSpecificData> = <ArgumentsType = undefined, Deployments extends UnknownDeployments = UnknownDeployments>(callback: DeployScriptFunction<NamedAccounts, Data, ArgumentsType, Deployments>, options: {
100
- tags?: string[];
101
- dependencies?: string[];
102
- id?: string;
103
- }) => DeployScriptModule<NamedAccounts, Data, ArgumentsType, Deployments>;
104
- export interface UntypedRequestArguments {
105
- readonly method: string;
106
- readonly params?: readonly unknown[] | object;
107
- }
108
- export type UntypedEIP1193Provider = {
109
- request(requestArguments: UntypedRequestArguments): Promise<unknown>;
110
- };
111
- export type ConfigOverrides = {
112
- deployments?: string;
113
- scripts?: string | string[];
114
- };
115
- export type Create2DeterministicDeploymentInfo = {
116
- factory: `0x${string}`;
117
- deployer: `0x${string}`;
118
- funding: string;
119
- signedTx: `0x${string}`;
120
- };
121
- export type Create3DeterministicDeploymentInfo = {
122
- salt?: `0x${string}`;
123
- factory: `0x${string}`;
124
- bytecode: `0x${string}`;
125
- proxyBytecode: `0x${string}`;
126
- };
127
- export type DeterministicDeploymentInfo = Create2DeterministicDeploymentInfo | {
128
- create2?: Create2DeterministicDeploymentInfo;
129
- create3?: Create3DeterministicDeploymentInfo;
130
- };
131
- export type ChainUserConfig = {
132
- rpcUrl?: string;
133
- tags?: string[];
134
- deterministicDeployment?: DeterministicDeploymentInfo;
135
- info?: ChainInfo;
136
- pollingInterval?: number;
137
- properties?: Record<string, JSONTypePlusBigInt>;
138
- };
139
- export type ChainConfig = {
140
- rpcUrl: string;
141
- tags: string[];
142
- deterministicDeployment: DeterministicDeploymentInfo;
143
- info: ChainInfo;
144
- pollingInterval: number;
145
- properties: Record<string, JSONTypePlusBigInt>;
146
- };
147
- export type DeploymentTargetConfig = {
148
- chainId: number;
149
- scripts?: string | string[];
150
- overrides: Omit<ChainUserConfig, 'info'>;
151
- };
152
- export type Chains = {
153
- [idOrName: number | string]: ChainUserConfig;
154
- };
155
- export type SignerProtocolFunction = (protocolString: string) => Promise<Signer>;
156
- export type SignerProtocol = {
157
- getSigner: SignerProtocolFunction;
158
- };
159
- export type UserConfig<NamedAccounts extends UnresolvedUnknownNamedAccounts = UnresolvedUnknownNamedAccounts, Data extends UnresolvedNetworkSpecificData = UnresolvedNetworkSpecificData> = {
160
- targets?: {
161
- [name: string]: DeploymentTargetConfig;
162
- };
163
- chains?: Chains;
164
- deployments?: string;
165
- scripts?: string | string[];
166
- accounts?: NamedAccounts;
167
- data?: Data;
168
- signerProtocols?: Record<string, SignerProtocolFunction>;
169
- defaultPollingInterval?: number;
170
- };
171
- export type ResolvedUserConfig<NamedAccounts extends UnresolvedUnknownNamedAccounts = UnresolvedUnknownNamedAccounts, Data extends UnresolvedNetworkSpecificData = UnresolvedNetworkSpecificData> = UserConfig & {
172
- deployments: string;
173
- scripts: string[];
174
- defaultPollingInterval: number;
175
- };
176
- export type ExecutionParams<Extra extends Record<string, unknown> = Record<string, unknown>> = {
177
- target?: string | {
178
- fork: string;
179
- };
180
- tags?: string[];
181
- saveDeployments?: boolean;
182
- askBeforeProceeding?: boolean;
183
- reportGasUse?: boolean;
184
- defaultPollingInterval?: number;
185
- extra?: Extra;
186
- logLevel?: number;
187
- provider?: EIP1193ProviderWithoutEvents;
188
- config: ConfigOverrides;
189
- };
190
98
  export {};
191
99
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/executor/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/executor/types.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -1,8 +1,8 @@
1
- export { setup, loadAndExecuteDeployments, executeDeployScripts, readAndResolveConfig, enhanceEnvIfNeeded, loadEnvironment, } from './executor/index.js';
2
- export { getChainConfig, chainByCanonicalName } from './environment/utils/chains.js';
3
- export * from './types.js';
1
+ export * from './executor/index.js';
2
+ export * from './executor/types.js';
3
+ export * from './environment/types.js';
4
4
  export { loadDeployments } from './environment/deployments.js';
5
- export { mergeArtifacts } from './environment/utils/artifacts.js';
6
- export { getGasPriceEstimate, getRoughGasPriceEstimate } from './utils/eth.js';
7
- export { bigIntToStringReplacer } from './utils/json.js';
5
+ export * from './environment/utils/artifacts.js';
6
+ export * from './environment/utils/chains.js';
7
+ export * from './utils/eth.js';
8
8
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,KAAK,EACL,yBAAyB,EACzB,oBAAoB,EACpB,oBAAoB,EACpB,kBAAkB,EAClB,eAAe,GACf,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAC,cAAc,EAAE,oBAAoB,EAAC,MAAM,+BAA+B,CAAC;AACnF,cAAc,YAAY,CAAC;AAC3B,OAAO,EAAC,eAAe,EAAC,MAAM,8BAA8B,CAAC;AAC7D,OAAO,EAAC,cAAc,EAAC,MAAM,kCAAkC,CAAC;AAChE,OAAO,EAAC,mBAAmB,EAAE,wBAAwB,EAAC,MAAM,gBAAgB,CAAC;AAC7E,OAAO,EAAC,sBAAsB,EAAC,MAAM,iBAAiB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,wBAAwB,CAAC;AACvC,OAAO,EAAC,eAAe,EAAC,MAAM,8BAA8B,CAAC;AAC7D,cAAc,kCAAkC,CAAC;AACjD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,gBAAgB,CAAC"}
package/dist/index.js CHANGED
@@ -1,8 +1,8 @@
1
- export { setup, loadAndExecuteDeployments, executeDeployScripts, readAndResolveConfig, enhanceEnvIfNeeded, loadEnvironment, } from './executor/index.js';
2
- export { getChainConfig, chainByCanonicalName } from './environment/utils/chains.js';
3
- export * from './types.js';
1
+ export * from './executor/index.js';
2
+ export * from './executor/types.js';
3
+ export * from './environment/types.js';
4
4
  export { loadDeployments } from './environment/deployments.js';
5
- export { mergeArtifacts } from './environment/utils/artifacts.js';
6
- export { getGasPriceEstimate, getRoughGasPriceEstimate } from './utils/eth.js';
7
- export { bigIntToStringReplacer } from './utils/json.js';
5
+ export * from './environment/utils/artifacts.js';
6
+ export * from './environment/utils/chains.js';
7
+ export * from './utils/eth.js';
8
8
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,KAAK,EACL,yBAAyB,EACzB,oBAAoB,EACpB,oBAAoB,EACpB,kBAAkB,EAClB,eAAe,GACf,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAC,cAAc,EAAE,oBAAoB,EAAC,MAAM,+BAA+B,CAAC;AACnF,cAAc,YAAY,CAAC;AAC3B,OAAO,EAAC,eAAe,EAAC,MAAM,8BAA8B,CAAC;AAC7D,OAAO,EAAC,cAAc,EAAC,MAAM,kCAAkC,CAAC;AAChE,OAAO,EAAC,mBAAmB,EAAE,wBAAwB,EAAC,MAAM,gBAAgB,CAAC;AAC7E,OAAO,EAAC,sBAAsB,EAAC,MAAM,iBAAiB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,wBAAwB,CAAC;AACvC,OAAO,EAAC,eAAe,EAAC,MAAM,8BAA8B,CAAC;AAC7D,cAAc,kCAAkC,CAAC;AACjD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,gBAAgB,CAAC"}
@@ -1,4 +1,5 @@
1
- import type { Environment, UnknownDeployments, UnresolvedNetworkSpecificData, UnresolvedUnknownNamedAccounts, CurriedFunctions } from '../types.js';
1
+ import type { Environment, UnknownDeployments, UnresolvedNetworkSpecificData, UnresolvedUnknownNamedAccounts } from '../environment/types.js';
2
+ import { CurriedFunctions } from '../executor/types.js';
2
3
  /**
3
4
  * @param env - The environment object to inject as the first parameter
4
5
  * @param functionsAndGetters - An object containing functions that expect the environment as their first parameter,
@@ -1 +1 @@
1
- {"version":3,"file":"extensions.d.ts","sourceRoot":"","sources":["../../src/utils/extensions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACX,WAAW,EACX,kBAAkB,EAClB,6BAA6B,EAC7B,8BAA8B,EAC9B,gBAAgB,EAChB,MAAM,aAAa,CAAC;AAErB;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,wBAAgB,eAAe,CAC9B,aAAa,SAAS,8BAA8B,GAAG,8BAA8B,EACrF,IAAI,SAAS,6BAA6B,GAAG,6BAA6B,EAC1E,WAAW,SAAS,kBAAkB,GAAG,kBAAkB,EAC3D,KAAK,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/D,CAAC,SAAS,MAAM,CACf,MAAM,EACJ,CAAC,CAAC,GAAG,EAAE,WAAW,CAAC,aAAa,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,CAAC,KAAK,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,CAAC,GACxF,CAAC,CAAC,GAAG,EAAE,WAAW,CAAC,aAAa,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,CAAC,KAAK,GAAG,CAAC,CACtE,GAAG,MAAM,CACT,MAAM,EACJ,CAAC,CAAC,GAAG,EAAE,WAAW,CAAC,aAAa,EAAE,IAAI,EAAE,WAAW,CAAC,KAAK,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,CAAC,GACjF,CAAC,CAAC,GAAG,EAAE,WAAW,CAAC,aAAa,EAAE,IAAI,EAAE,WAAW,CAAC,KAAK,GAAG,CAAC,CAC/D,EACA,GAAG,EAAE,WAAW,CAAC,aAAa,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,CAAC,EAAE,mBAAmB,EAAE,CAAC,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAoBxG"}
1
+ {"version":3,"file":"extensions.d.ts","sourceRoot":"","sources":["../../src/utils/extensions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACX,WAAW,EACX,kBAAkB,EAClB,6BAA6B,EAC7B,8BAA8B,EAC9B,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAC,gBAAgB,EAAC,MAAM,sBAAsB,CAAC;AAEtD;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,wBAAgB,eAAe,CAC9B,aAAa,SAAS,8BAA8B,GAAG,8BAA8B,EACrF,IAAI,SAAS,6BAA6B,GAAG,6BAA6B,EAC1E,WAAW,SAAS,kBAAkB,GAAG,kBAAkB,EAC3D,KAAK,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/D,CAAC,SAAS,MAAM,CACf,MAAM,EACJ,CAAC,CAAC,GAAG,EAAE,WAAW,CAAC,aAAa,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,CAAC,KAAK,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,CAAC,GACxF,CAAC,CAAC,GAAG,EAAE,WAAW,CAAC,aAAa,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,CAAC,KAAK,GAAG,CAAC,CACtE,GAAG,MAAM,CACT,MAAM,EACJ,CAAC,CAAC,GAAG,EAAE,WAAW,CAAC,aAAa,EAAE,IAAI,EAAE,WAAW,CAAC,KAAK,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,CAAC,GACjF,CAAC,CAAC,GAAG,EAAE,WAAW,CAAC,aAAa,EAAE,IAAI,EAAE,WAAW,CAAC,KAAK,GAAG,CAAC,CAC/D,EACA,GAAG,EAAE,WAAW,CAAC,aAAa,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,CAAC,EAAE,mBAAmB,EAAE,CAAC,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAoBxG"}
@@ -1,4 +1,4 @@
1
- import type { Environment } from '../types.js';
1
+ import type { Environment } from '../environment/types.js';
2
2
  declare const exampleExtensions: {
3
3
  deploy: (env: Environment) => (contractName: string, args: any[]) => Promise<void>;
4
4
  verify: (env: Environment) => (address: string) => Promise<boolean>;
@@ -6,7 +6,7 @@ declare const exampleExtensions: {
6
6
  syncFunction: (env: Environment) => (value: number) => number;
7
7
  provider: (env: Environment) => import("../environment/providers/TransactionHashTracker.js").TransactionHashTracker;
8
8
  };
9
- declare const enhancedEnv: import("../types.js").CurriedFunctions<{
9
+ declare const enhancedEnv: import("../index.js").CurriedFunctions<{
10
10
  deploy: (env: Environment) => (contractName: string, args: any[]) => Promise<void>;
11
11
  verify: (env: Environment) => (address: string) => Promise<boolean>;
12
12
  getBalance: (env: Environment) => (address: string) => Promise<bigint>;
@@ -1 +1 @@
1
- {"version":3,"file":"extensions.test.d.ts","sourceRoot":"","sources":["../../src/utils/extensions.test.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,WAAW,EAAC,MAAM,aAAa,CAAC;AAO7C,QAAA,MAAM,iBAAiB;kBAEf,WAAW,MACV,cAAc,MAAM,EAAE,MAAM,GAAG,EAAE,KAAG,OAAO,CAAC,IAAI,CAAC;kBAKlD,WAAW,MACV,SAAS,MAAM,KAAG,OAAO,CAAC,OAAO,CAAC;sBAKnC,WAAW,MACV,SAAS,MAAM,KAAG,OAAO,CAAC,MAAM,CAAC;wBAKlC,WAAW,MAChB,OAAO,MAAM,KAAG,MAAM;oBAIR,WAAW;CAC3B,CAAC;AAGF,QAAA,MAAM,WAAW;kBA3BT,WAAW,MACV,cAAc,MAAM,EAAE,MAAM,GAAG,EAAE,KAAG,OAAO,CAAC,IAAI,CAAC;kBAKlD,WAAW,MACV,SAAS,MAAM,KAAG,OAAO,CAAC,OAAO,CAAC;sBAKnC,WAAW,MACV,SAAS,MAAM,KAAG,OAAO,CAAC,MAAM,CAAC;wBAKlC,WAAW,MAChB,OAAO,MAAM,KAAG,MAAM;oBAIR,WAAW;EAImC,CAAC;AAGhE,iBAAe,SAAS,kBAUvB;AAGD,OAAO,EAAC,SAAS,EAAE,WAAW,EAAE,iBAAiB,EAAC,CAAC"}
1
+ {"version":3,"file":"extensions.test.d.ts","sourceRoot":"","sources":["../../src/utils/extensions.test.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,WAAW,EAAC,MAAM,yBAAyB,CAAC;AAOzD,QAAA,MAAM,iBAAiB;kBAEf,WAAW,MACV,cAAc,MAAM,EAAE,MAAM,GAAG,EAAE,KAAG,OAAO,CAAC,IAAI,CAAC;kBAKlD,WAAW,MACV,SAAS,MAAM,KAAG,OAAO,CAAC,OAAO,CAAC;sBAKnC,WAAW,MACV,SAAS,MAAM,KAAG,OAAO,CAAC,MAAM,CAAC;wBAKlC,WAAW,MAChB,OAAO,MAAM,KAAG,MAAM;oBAIR,WAAW;CAC3B,CAAC;AAGF,QAAA,MAAM,WAAW;kBA3BT,WAAW,MACV,cAAc,MAAM,EAAE,MAAM,GAAG,EAAE,KAAG,OAAO,CAAC,IAAI,CAAC;kBAKlD,WAAW,MACV,SAAS,MAAM,KAAG,OAAO,CAAC,OAAO,CAAC;sBAKnC,WAAW,MACV,SAAS,MAAM,KAAG,OAAO,CAAC,MAAM,CAAC;wBAKlC,WAAW,MAChB,OAAO,MAAM,KAAG,MAAM;oBAIR,WAAW;EAImC,CAAC;AAGhE,iBAAe,SAAS,kBAUvB;AAGD,OAAO,EAAC,SAAS,EAAE,WAAW,EAAE,iBAAiB,EAAC,CAAC"}
@@ -4,7 +4,7 @@ interface LookupFileOptions {
4
4
  predicate?: (file: string) => boolean;
5
5
  }
6
6
  export declare function lookupFile(dir: string, formats: string[], options?: LookupFileOptions): string | undefined;
7
- export declare function traverseMultipleDirectory(dirs: readonly string[]): string[];
7
+ export declare function traverseMultipleDirectory(dirs: string[]): string[];
8
8
  export declare const traverse: (dir: string, result?: any[], topDir?: string, filter?: (name: string, stats: any) => boolean) => Array<{
9
9
  name: string;
10
10
  path: string;
@@ -1 +1 @@
1
- {"version":3,"file":"fs.d.ts","sourceRoot":"","sources":["../../src/utils/fs.ts"],"names":[],"mappings":"AAIA,UAAU,iBAAiB;IAC1B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC;CACtC;AAED,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,OAAO,CAAC,EAAE,iBAAiB,GAAG,MAAM,GAAG,SAAS,CAc1G;AAED,wBAAgB,yBAAyB,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,EAAE,CAU3E;AAED,eAAO,MAAM,QAAQ,GACpB,KAAK,MAAM,EACX,SAAQ,GAAG,EAAO,EAClB,SAAS,MAAM,EACf,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,KAAK,OAAO,KAC5C,KAAK,CAAC;IACR,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,OAAO,CAAC;CACnB,CAoBA,CAAC"}
1
+ {"version":3,"file":"fs.d.ts","sourceRoot":"","sources":["../../src/utils/fs.ts"],"names":[],"mappings":"AAIA,UAAU,iBAAiB;IAC1B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC;CACtC;AAED,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,OAAO,CAAC,EAAE,iBAAiB,GAAG,MAAM,GAAG,SAAS,CAc1G;AAED,wBAAgB,yBAAyB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,CAUlE;AAED,eAAO,MAAM,QAAQ,GACpB,KAAK,MAAM,EACX,SAAQ,GAAG,EAAO,EAClB,SAAS,MAAM,EACf,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,KAAK,OAAO,KAC5C,KAAK,CAAC;IACR,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,OAAO,CAAC;CACnB,CAoBA,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"fs.js","sourceRoot":"","sources":["../../src/utils/fs.ts"],"names":[],"mappings":"AAAA,oIAAoI;AACpI,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAQ7B,MAAM,UAAU,UAAU,CAAC,GAAW,EAAE,OAAiB,EAAE,OAA2B;IACrF,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC9B,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;QACxC,IAAI,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC;YAC/D,MAAM,MAAM,GAAG,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;YACjF,IAAI,CAAC,OAAO,EAAE,SAAS,IAAI,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC;gBACtD,OAAO,MAAM,CAAC;YACf,CAAC;QACF,CAAC;IACF,CAAC;IACD,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IACpC,IAAI,SAAS,KAAK,GAAG,IAAI,CAAC,CAAC,OAAO,EAAE,OAAO,IAAI,SAAS,CAAC,UAAU,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,EAAE,CAAC;QACxF,OAAO,UAAU,CAAC,SAAS,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IAChD,CAAC;AACF,CAAC;AAED,MAAM,UAAU,yBAAyB,CAAC,IAAuB;IAChE,MAAM,SAAS,GAAG,EAAE,CAAC;IACrB,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACxB,IAAI,UAAU,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC;QAC/B,UAAU,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;QACpD,KAAK,MAAM,QAAQ,IAAI,UAAU,EAAE,CAAC;YACnC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC;QACvD,CAAC;IACF,CAAC;IACD,OAAO,SAAS,CAAC;AAClB,CAAC;AAED,MAAM,CAAC,MAAM,QAAQ,GAAG,UACvB,GAAW,EACX,SAAgB,EAAE,EAClB,MAAe,EACf,MAA8C,CAAC,oBAAoB;;IAQnE,EAAE,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;QACpC,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QACtC,MAAM,KAAK,GAAG,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QACjC,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,EAAE,CAAC;YAC3E,MAAM,SAAS,GAAG;gBACjB,IAAI;gBACJ,IAAI,EAAE,KAAK;gBACX,YAAY,EAAE,IAAI,CAAC,QAAQ,CAAC,MAAM,IAAI,GAAG,EAAE,KAAK,CAAC;gBACjD,OAAO,EAAE,KAAK,CAAC,OAAO;gBACtB,SAAS,EAAE,KAAK,CAAC,WAAW,EAAE;aAC9B,CAAC;YACF,IAAI,SAAS,CAAC,SAAS,EAAE,CAAC;gBACzB,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBACvB,OAAO,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,IAAI,GAAG,EAAE,MAAM,CAAC,CAAC;YACvD,CAAC;YACD,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACxB,CAAC;IACF,CAAC,CAAC,CAAC;IACH,OAAO,MAAM,CAAC;AACf,CAAC,CAAC"}
1
+ {"version":3,"file":"fs.js","sourceRoot":"","sources":["../../src/utils/fs.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "rocketh",
3
- "version": "0.15.0-testing.17",
3
+ "version": "0.15.0-testing.2",
4
4
  "description": "deploy smart contract on ethereum-compatible networks",
5
5
  "publishConfig": {
6
6
  "access": "public"
@@ -20,7 +20,9 @@
20
20
  },
21
21
  "devDependencies": {
22
22
  "@types/node": "^24.4.0",
23
+ "abitype": "^1.1.0",
23
24
  "as-soon": "^0.0.11",
25
+ "eip-1193": "^0.6.5",
24
26
  "ipfs-gateway-emulator": "4.2.1-ipfs.2",
25
27
  "rimraf": "^6.0.1",
26
28
  "typedoc": "^0.28.13",
@@ -29,10 +31,8 @@
29
31
  "dependencies": {
30
32
  "@types/figlet": "^1.7.0",
31
33
  "@types/prompts": "^2.4.9",
32
- "abitype": "^1.1.0",
33
34
  "change-case": "^5.4.4",
34
35
  "commander": "^13.1.0",
35
- "eip-1193": "^0.6.5",
36
36
  "eip-1193-jsonrpc-provider": "^0.4.3",
37
37
  "ethers": "^6.15.0",
38
38
  "figlet": "^1.9.1",
package/src/cli.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  #! /usr/bin/env node
2
2
  import {loadEnv} from 'ldenv';
3
- import {ExecutionParams, loadAndExecuteDeployments} from './index.js';
3
+ import {ConfigOptions, loadAndExecuteDeployments} from './index.js';
4
4
  import {Command} from 'commander';
5
5
  import pkg from '../package.json' with {type: 'json'};
6
6
 
@@ -19,14 +19,14 @@ program
19
19
  .option('--skip-gas-report', 'if set skip gas report')
20
20
  .option('--skip-prompts', 'if set skip any prompts')
21
21
  .option('--save-deployments', 'if set, save deployments')
22
- .requiredOption('-e, --environment <value>', 'environment to use')
22
+ .requiredOption('--target <value>', 'target context to use')
23
23
  .parse(process.argv);
24
24
 
25
25
  const options = program.opts();
26
26
 
27
27
 
28
28
  loadAndExecuteDeployments({
29
- ...(options as ExecutionParams),
29
+ ...(options as ConfigOptions),
30
30
  logLevel: 1,
31
31
  askBeforeProceeding: options.skipPrompts ? false : true,
32
32
  reportGasUse: options.skipGasReport ? false : true,
@@ -1,7 +1,7 @@
1
1
  import path from 'node:path';
2
2
  import fs from 'node:fs';
3
3
  import {traverse} from '../utils/fs.js';
4
- import {UnknownDeployments} from '../types.js';
4
+ import {UnknownDeployments} from './types.js';
5
5
 
6
6
  export function loadDeployments(
7
7
  deploymentsPath: string,
@@ -9,6 +9,7 @@ import {
9
9
  PendingDeployment,
10
10
  PendingTransaction,
11
11
  ResolvedAccount,
12
+ ResolvedConfig,
12
13
  ResolvedNamedAccounts,
13
14
  ResolvedNamedSigners,
14
15
  UnknownDeployments,
@@ -16,10 +17,8 @@ import {
16
17
  UnresolvedNetworkSpecificData,
17
18
  ResolvedNetworkSpecificData,
18
19
  DataType,
19
- ResolvedExecutionParams,
20
- ResolvedUserConfig,
21
- PendingExecution,
22
- } from '../types.js';
20
+ } from './types.js';
21
+ import {JSONRPCHTTPProvider} from 'eip-1193-jsonrpc-provider';
23
22
  import {Abi, Address} from 'abitype';
24
23
  import {InternalEnvironment} from '../internal/types.js';
25
24
  import path from 'node:path';
@@ -30,13 +29,22 @@ import {
30
29
  EIP1193Block,
31
30
  EIP1193BlockWithTransactions,
32
31
  EIP1193DATA,
32
+ EIP1193ProviderWithoutEvents,
33
+ EIP1193QUANTITY,
33
34
  EIP1193Transaction,
34
35
  EIP1193TransactionReceipt,
35
36
  } from 'eip-1193';
36
37
  import {ProgressIndicator, log, spin} from '../internal/logging.js';
38
+ import {PendingExecution} from './types.js';
39
+ import {getChainWithConfig} from './utils/chains.js';
37
40
  import {mergeArtifacts} from './utils/artifacts.js';
38
41
  import {TransactionHashTracker, TransactionHashTrackerProvider} from './providers/TransactionHashTracker.js';
39
42
 
43
+ export type SignerProtocolFunction = (protocolString: string) => Promise<Signer>;
44
+ export type SignerProtocol = {
45
+ getSigner: SignerProtocolFunction;
46
+ };
47
+
40
48
  function wait(numSeconds: number): Promise<void> {
41
49
  return new Promise((resolve) => {
42
50
  setTimeout(resolve, numSeconds * 1000);
@@ -58,10 +66,12 @@ export async function createEnvironment<
58
66
  Data extends UnresolvedNetworkSpecificData = UnresolvedNetworkSpecificData,
59
67
  Deployments extends UnknownDeployments = UnknownDeployments
60
68
  >(
61
- userConfig: ResolvedUserConfig<NamedAccounts, Data>,
62
- resolvedExecutionParams: ResolvedExecutionParams
69
+ config: ResolvedConfig<NamedAccounts, Data>
63
70
  ): Promise<{internal: InternalEnvironment; external: Environment<NamedAccounts, Data, Deployments>}> {
64
- const rawProvider = resolvedExecutionParams.provider;
71
+ const rawProvider =
72
+ 'provider' in config.target
73
+ ? config.target.provider
74
+ : (new JSONRPCHTTPProvider(config.target.nodeUrl) as EIP1193ProviderWithoutEvents);
65
75
 
66
76
  const provider: TransactionHashTracker = new TransactionHashTrackerProvider(rawProvider);
67
77
 
@@ -85,14 +95,34 @@ export async function createEnvironment<
85
95
  console.error(`failed to get genesis block`);
86
96
  }
87
97
 
88
- const deploymentsFolder = userConfig.deployments;
89
- const environmentName = resolvedExecutionParams.environment.name;
90
- const saveDeployments = resolvedExecutionParams.saveDeployments;
98
+ let networkName: string;
99
+ let saveDeployments: boolean;
91
100
  let networkTags: {[tag: string]: boolean} = {};
92
- for (const networkTag of resolvedExecutionParams.environment.tags) {
101
+ for (const networkTag of config.target.tags) {
93
102
  networkTags[networkTag] = true;
94
103
  }
95
104
 
105
+ if ('nodeUrl' in config) {
106
+ networkName = config.target.name;
107
+ saveDeployments = true;
108
+ } else {
109
+ if (config.target.name) {
110
+ networkName = config.target.name;
111
+ } else {
112
+ networkName = 'memory';
113
+ }
114
+ if (networkName === 'memory' || networkName === 'hardhat' || networkName === 'default') {
115
+ networkTags['memory'] = true;
116
+ saveDeployments = false;
117
+ } else {
118
+ saveDeployments = true;
119
+ }
120
+ }
121
+
122
+ if (config.saveDeployments !== undefined) {
123
+ saveDeployments = config.saveDeployments;
124
+ }
125
+
96
126
  const resolvedAccounts: {[name: string]: ResolvedAccount} = {};
97
127
 
98
128
  const allRemoteAccounts = await provider.request({method: 'eth_accounts'});
@@ -119,7 +149,7 @@ export async function createEnvironment<
119
149
  } else if (typeof accountDef === 'string') {
120
150
  if (accountDef.startsWith('0x')) {
121
151
  if (accountDef.length === 66) {
122
- const privateKeyProtocol = userConfig.signerProtocols?.['privateKey'];
152
+ const privateKeyProtocol = config.signerProtocols['privateKey'];
123
153
  if (privateKeyProtocol) {
124
154
  const namedSigner = await privateKeyProtocol(`privateKey:${accountDef}`);
125
155
  const [address] = await namedSigner.signer.request({method: 'eth_accounts'});
@@ -138,7 +168,7 @@ export async function createEnvironment<
138
168
  } else {
139
169
  if (accountDef.indexOf(':') > 0) {
140
170
  const [protocolID, extra] = accountDef.split(':');
141
- const protocol = userConfig.signerProtocols?.[protocolID];
171
+ const protocol = config.signerProtocols[protocolID];
142
172
  if (!protocol) {
143
173
  throw new Error(`protocol: ${protocolID} is not supported`);
144
174
  }
@@ -156,8 +186,7 @@ export async function createEnvironment<
156
186
  }
157
187
  }
158
188
  } else {
159
- // TODO allow for canonical chain name ?
160
- const accountForNetwork = accountDef[environmentName] || accountDef[chainId] || accountDef['default'];
189
+ const accountForNetwork = accountDef[networkName] || accountDef[chainId] || accountDef['default'];
161
190
  if (typeof accountForNetwork !== undefined) {
162
191
  const accountFetched = await getAccount(name, accounts, accountForNetwork);
163
192
  if (accountFetched) {
@@ -169,33 +198,24 @@ export async function createEnvironment<
169
198
  return account;
170
199
  }
171
200
 
172
- if (userConfig.accounts) {
173
- const accountNames = Object.keys(userConfig.accounts);
201
+ if (config.accounts) {
202
+ const accountNames = Object.keys(config.accounts);
174
203
  for (const accountName of accountNames) {
175
- const account = await getAccount(accountName, userConfig.accounts, userConfig.accounts[accountName]);
176
- if (!account) {
177
- throw new Error(
178
- `cannot get account for ${accountName} = ${JSON.stringify(
179
- userConfig.accounts[accountName],
180
- null,
181
- 2
182
- )}\n You might need to connect to a account-aware provider.`
183
- );
184
- }
204
+ let account = await getAccount(accountName, config.accounts, config.accounts[accountName]);
185
205
  (resolvedAccounts as any)[accountName] = account;
186
206
  }
187
207
  }
188
208
 
189
209
  const resolvedData: ResolvedNetworkSpecificData<Data> = {} as ResolvedNetworkSpecificData<Data>;
190
210
  async function getData<T = unknown>(name: string, dataDef: DataType<T>): Promise<T | undefined> {
191
- const dataForNetwork = dataDef[environmentName] || dataDef[chainId] || dataDef['default'];
211
+ const dataForNetwork = dataDef[networkName] || dataDef[chainId] || dataDef['default'];
192
212
  return dataForNetwork;
193
213
  }
194
214
 
195
- if (userConfig.data) {
196
- const dataFields = Object.keys(userConfig.data);
215
+ if (config.data) {
216
+ const dataFields = Object.keys(config.data);
197
217
  for (const dataField of dataFields) {
198
- let fieldData = await getData(dataField, userConfig.data[dataField]);
218
+ let fieldData = await getData(dataField, config.data[dataField]);
199
219
  (resolvedData as any)[dataField] = fieldData;
200
220
  }
201
221
  }
@@ -203,18 +223,21 @@ export async function createEnvironment<
203
223
  const context = {
204
224
  accounts: resolvedAccounts,
205
225
  data: resolvedData,
206
- fork: resolvedExecutionParams.environment.fork,
207
- saveDeployments,
208
- tags: networkTags,
226
+ network: {
227
+ name: networkName,
228
+ fork: config.target.fork,
229
+ saveDeployments,
230
+ tags: networkTags,
231
+ },
209
232
  };
210
233
 
211
234
  // console.log(`context`, JSON.stringify(context.network, null, 2));
212
235
 
213
236
  const {deployments, migrations} = loadDeployments(
214
- deploymentsFolder,
215
- environmentName,
237
+ config.deployments,
238
+ context.network.name,
216
239
  false,
217
- context.fork
240
+ context.network.fork
218
241
  ? undefined
219
242
  : {
220
243
  chainId,
@@ -244,11 +267,7 @@ export async function createEnvironment<
244
267
  }
245
268
 
246
269
  const perliminaryEnvironment = {
247
- context: {
248
- saveDeployments: context.saveDeployments,
249
- },
250
- name: environmentName,
251
- tags: context.tags,
270
+ config,
252
271
  deployments: deployments as Deployments,
253
272
  namedAccounts: namedAccounts as ResolvedNamedAccounts<NamedAccounts>,
254
273
  data: resolvedData,
@@ -256,19 +275,16 @@ export async function createEnvironment<
256
275
  unnamedAccounts,
257
276
  addressSigners: addressSigners,
258
277
  network: {
259
- chain: resolvedExecutionParams.chain,
260
- fork: context.fork,
278
+ chain: getChainWithConfig(chainId, config),
279
+ name: context.network.name,
280
+ tags: context.network.tags,
261
281
  provider,
262
- deterministicDeployment: resolvedExecutionParams.environment.deterministicDeployment,
263
-
264
- // for backward compatibility
265
- tags: context.tags,
266
282
  },
267
- extra: resolvedExecutionParams.extra || {},
283
+ extra: config.extra || {},
268
284
  };
269
285
 
270
286
  function getDeploymentFolder(): string {
271
- const folderPath = path.join(deploymentsFolder, environmentName);
287
+ const folderPath = path.join(config.deployments, context.network.name);
272
288
  return folderPath;
273
289
  }
274
290
 
@@ -321,7 +337,7 @@ export async function createEnvironment<
321
337
 
322
338
  function recordMigration(id: string): void {
323
339
  migrations[id] = Math.floor(Date.now() / 1000);
324
- if (context.saveDeployments) {
340
+ if (context.network.saveDeployments) {
325
341
  const folderPath = ensureDeploymentFolder();
326
342
  fs.writeFileSync(`${folderPath}/.migrations.json`, JSON.stringify(migrations));
327
343
  }
@@ -369,7 +385,7 @@ export async function createEnvironment<
369
385
  } else {
370
386
  deployments[name] = {...deployment, numDeployments: 1};
371
387
  }
372
- if (context.saveDeployments) {
388
+ if (context.network.saveDeployments) {
373
389
  const folderPath = ensureDeploymentFolder();
374
390
  fs.writeFileSync(`${folderPath}/${name}.json`, JSONToString(deployment, 2));
375
391
  }
@@ -377,7 +393,7 @@ export async function createEnvironment<
377
393
  }
378
394
 
379
395
  async function recoverTransactionsIfAny(): Promise<void> {
380
- if (!context.saveDeployments) {
396
+ if (!context.network.saveDeployments) {
381
397
  return;
382
398
  }
383
399
  const folderPath = getDeploymentFolder();
@@ -422,7 +438,7 @@ export async function createEnvironment<
422
438
  }
423
439
 
424
440
  async function savePendingTransaction(pendingTransaction: PendingTransaction) {
425
- if (context.saveDeployments) {
441
+ if (context.network.saveDeployments) {
426
442
  const folderPath = ensureDeploymentFolder();
427
443
  const filepath = path.join(folderPath, '.pending_transactions.json');
428
444
  let existingPendinTransactions: PendingTransaction[];
@@ -442,7 +458,7 @@ export async function createEnvironment<
442
458
  // confirmations?: number; // TODO
443
459
  // timeout?: number; // TODO
444
460
  }): Promise<EIP1193TransactionReceipt> {
445
- const {hash, pollingInterval} = {pollingInterval: resolvedExecutionParams.pollingInterval, ...params};
461
+ const {hash, pollingInterval} = {pollingInterval: config.target.pollingInterval, ...params};
446
462
 
447
463
  let receipt: EIP1193TransactionReceipt | null = null;
448
464
  try {
@@ -460,7 +476,7 @@ export async function createEnvironment<
460
476
  }
461
477
 
462
478
  async function deleteTransaction<TAbi extends Abi = Abi>(hash: string) {
463
- if (context.saveDeployments) {
479
+ if (context.network.saveDeployments) {
464
480
  const folderPath = ensureDeploymentFolder();
465
481
  const filepath = path.join(folderPath, '.pending_transactions.json');
466
482
  let existingPendinTransactions: PendingTransaction[];