@nomicfoundation/hardhat-viem 3.0.0-next.13 → 3.0.0-next.14

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.
@@ -1 +1 @@
1
- {"version":3,"file":"clients.d.ts","sourceRoot":"","sources":["../../../src/internal/clients.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,yBAAyB,EACzB,yBAAyB,EACzB,UAAU,EACX,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,KAAK,EACV,OAAO,IAAI,WAAW,EACtB,kBAAkB,IAAI,sBAAsB,EAC5C,gBAAgB,IAAI,oBAAoB,EACxC,kBAAkB,IAAI,sBAAsB,EAC7C,MAAM,MAAM,CAAC;AAcd,wBAAsB,eAAe,CAAC,UAAU,SAAS,SAAS,GAAG,MAAM,EACzE,QAAQ,EAAE,gBAAgB,EAC1B,SAAS,EAAE,UAAU,EACrB,kBAAkB,CAAC,EAAE,OAAO,CAAC,sBAAsB,CAAC,GACnD,OAAO,CAAC,yBAAyB,CAAC,UAAU,CAAC,CAAC,CAqBhD;AAED,wBAAsB,gBAAgB,CAAC,UAAU,SAAS,SAAS,GAAG,MAAM,EAC1E,QAAQ,EAAE,gBAAgB,EAC1B,SAAS,EAAE,UAAU,EACrB,kBAAkB,CAAC,EAAE,OAAO,CAAC,sBAAsB,CAAC,GACnD,OAAO,CAAC,KAAK,CAAC,yBAAyB,CAAC,UAAU,CAAC,CAAC,CAAC,CA2BvD;AAED,wBAAsB,eAAe,CAAC,UAAU,SAAS,SAAS,GAAG,MAAM,EACzE,QAAQ,EAAE,gBAAgB,EAC1B,SAAS,EAAE,UAAU,EACrB,OAAO,EAAE,WAAW,EACpB,kBAAkB,CAAC,EAAE,OAAO,CAAC,sBAAsB,CAAC,GACnD,OAAO,CAAC,yBAAyB,CAAC,UAAU,CAAC,CAAC,CAsBhD;AAED,wBAAsB,sBAAsB,CAC1C,UAAU,SAAS,SAAS,GAAG,MAAM,EAErC,QAAQ,EAAE,gBAAgB,EAC1B,SAAS,EAAE,UAAU,EACrB,kBAAkB,CAAC,EAAE,OAAO,CAAC,sBAAsB,CAAC,GACnD,OAAO,CAAC,yBAAyB,CAAC,UAAU,CAAC,CAAC,CAoBhD;AAED,wBAAsB,aAAa,CAAC,UAAU,SAAS,SAAS,GAAG,MAAM,EACvE,QAAQ,EAAE,gBAAgB,EAC1B,SAAS,EAAE,UAAU,EACrB,gBAAgB,CAAC,EAAE,OAAO,CAAC,oBAAoB,CAAC,GAC/C,OAAO,CAAC,UAAU,CAAC,CAcrB"}
1
+ {"version":3,"file":"clients.d.ts","sourceRoot":"","sources":["../../../src/internal/clients.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,yBAAyB,EACzB,yBAAyB,EACzB,UAAU,EACX,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,KAAK,EACV,OAAO,IAAI,WAAW,EACtB,kBAAkB,IAAI,sBAAsB,EAC5C,gBAAgB,IAAI,oBAAoB,EACxC,kBAAkB,IAAI,sBAAsB,EAC7C,MAAM,MAAM,CAAC;AAcd,wBAAsB,eAAe,CAAC,UAAU,SAAS,SAAS,GAAG,MAAM,EACzE,QAAQ,EAAE,gBAAgB,EAC1B,SAAS,EAAE,UAAU,EACrB,kBAAkB,CAAC,EAAE,OAAO,CAAC,sBAAsB,CAAC,GACnD,OAAO,CAAC,yBAAyB,CAAC,UAAU,CAAC,CAAC,CAoBhD;AAED,wBAAsB,gBAAgB,CAAC,UAAU,SAAS,SAAS,GAAG,MAAM,EAC1E,QAAQ,EAAE,gBAAgB,EAC1B,SAAS,EAAE,UAAU,EACrB,kBAAkB,CAAC,EAAE,OAAO,CAAC,sBAAsB,CAAC,GACnD,OAAO,CAAC,KAAK,CAAC,yBAAyB,CAAC,UAAU,CAAC,CAAC,CAAC,CA0BvD;AAED,wBAAsB,eAAe,CAAC,UAAU,SAAS,SAAS,GAAG,MAAM,EACzE,QAAQ,EAAE,gBAAgB,EAC1B,SAAS,EAAE,UAAU,EACrB,OAAO,EAAE,WAAW,EACpB,kBAAkB,CAAC,EAAE,OAAO,CAAC,sBAAsB,CAAC,GACnD,OAAO,CAAC,yBAAyB,CAAC,UAAU,CAAC,CAAC,CAqBhD;AAED,wBAAsB,sBAAsB,CAC1C,UAAU,SAAS,SAAS,GAAG,MAAM,EAErC,QAAQ,EAAE,gBAAgB,EAC1B,SAAS,EAAE,UAAU,EACrB,kBAAkB,CAAC,EAAE,OAAO,CAAC,sBAAsB,CAAC,GACnD,OAAO,CAAC,yBAAyB,CAAC,UAAU,CAAC,CAAC,CAoBhD;AAED,wBAAsB,aAAa,CAAC,UAAU,SAAS,SAAS,GAAG,MAAM,EACvE,QAAQ,EAAE,gBAAgB,EAC1B,SAAS,EAAE,UAAU,EACrB,gBAAgB,CAAC,EAAE,OAAO,CAAC,oBAAoB,CAAC,GAC/C,OAAO,CAAC,UAAU,CAAC,CAcrB"}
@@ -5,14 +5,12 @@ import { getAccounts } from "./accounts.js";
5
5
  import { getChain, getMode, isDevelopmentNetwork } from "./chains.js";
6
6
  export async function getPublicClient(provider, chainType, publicClientConfig) {
7
7
  const chain = publicClientConfig?.chain ?? (await getChain(provider, chainType));
8
- const parameters = {
9
- ...(await getDefaultClientParameters(provider)),
10
- ...publicClientConfig,
11
- };
8
+ const { defaultClientParams, defaultTransportParams } = await getDefaultParams(provider);
12
9
  let publicClient = createPublicClient({
13
10
  chain,
14
- transport: customTransport(provider),
15
- ...parameters,
11
+ transport: customTransport(provider, defaultTransportParams),
12
+ ...defaultClientParams,
13
+ ...publicClientConfig,
16
14
  });
17
15
  if (chainType === "optimism") {
18
16
  publicClient = publicClient.extend(publicActionsL2());
@@ -24,15 +22,13 @@ export async function getPublicClient(provider, chainType, publicClientConfig) {
24
22
  export async function getWalletClients(provider, chainType, walletClientConfig) {
25
23
  const chain = walletClientConfig?.chain ?? (await getChain(provider, chainType));
26
24
  const accounts = await getAccounts(provider);
27
- const parameters = {
28
- ...(await getDefaultClientParameters(provider)),
29
- ...walletClientConfig,
30
- };
25
+ const { defaultClientParams, defaultTransportParams } = await getDefaultParams(provider);
31
26
  let walletClients = accounts.map((account) => createWalletClient({
32
27
  chain,
33
28
  account,
34
- transport: customTransport(provider),
35
- ...parameters,
29
+ transport: customTransport(provider, defaultTransportParams),
30
+ ...defaultClientParams,
31
+ ...walletClientConfig,
36
32
  }));
37
33
  if (chainType === "optimism") {
38
34
  walletClients = walletClients.map((walletClient) => walletClient.extend(walletActionsL2()));
@@ -43,15 +39,13 @@ export async function getWalletClients(provider, chainType, walletClientConfig)
43
39
  }
44
40
  export async function getWalletClient(provider, chainType, address, walletClientConfig) {
45
41
  const chain = walletClientConfig?.chain ?? (await getChain(provider, chainType));
46
- const parameters = {
47
- ...(await getDefaultClientParameters(provider)),
48
- ...walletClientConfig,
49
- };
42
+ const { defaultClientParams, defaultTransportParams } = await getDefaultParams(provider);
50
43
  let walletClient = createWalletClient({
51
44
  chain,
52
45
  account: address,
53
- transport: customTransport(provider),
54
- ...parameters,
46
+ transport: customTransport(provider, defaultTransportParams),
47
+ ...defaultClientParams,
48
+ ...walletClientConfig,
55
49
  });
56
50
  if (chainType === "optimism") {
57
51
  walletClient = walletClient.extend(walletActionsL2());
@@ -73,19 +67,24 @@ export async function getDefaultWalletClient(provider, chainType, walletClientCo
73
67
  export async function getTestClient(provider, chainType, testClientConfig) {
74
68
  const chain = testClientConfig?.chain ?? (await getChain(provider, chainType));
75
69
  const mode = await getMode(provider);
76
- const parameters = { ...DEFAULT_CLIENT_PARAMETERS, ...testClientConfig };
77
70
  const testClient = createTestClient({
78
71
  chain,
79
72
  mode,
80
- transport: customTransport(provider),
81
- ...parameters,
73
+ transport: customTransport(provider, DEFAULT_DEVELOPMENT_TRANSPORT_PARAMS),
74
+ ...DEFAULT_DEVELOPMENT_CLIENT_PARAMS,
75
+ ...testClientConfig,
82
76
  });
83
77
  return testClient;
84
78
  }
85
- const DEFAULT_CLIENT_PARAMETERS = { pollingInterval: 50, cacheTime: 0 };
86
- async function getDefaultClientParameters(provider) {
87
- return (await isDevelopmentNetwork(provider))
88
- ? DEFAULT_CLIENT_PARAMETERS
79
+ const DEFAULT_DEVELOPMENT_CLIENT_PARAMS = { pollingInterval: 50, cacheTime: 0 };
80
+ const DEFAULT_DEVELOPMENT_TRANSPORT_PARAMS = { retryCount: 0 };
81
+ async function getDefaultParams(provider) {
82
+ const isDevelopment = await isDevelopmentNetwork(provider);
83
+ return isDevelopment
84
+ ? {
85
+ defaultClientParams: DEFAULT_DEVELOPMENT_CLIENT_PARAMS,
86
+ defaultTransportParams: DEFAULT_DEVELOPMENT_TRANSPORT_PARAMS,
87
+ }
89
88
  : {};
90
89
  }
91
90
  //# sourceMappingURL=clients.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"clients.js","sourceRoot":"","sources":["../../../src/internal/clients.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"clients.js","sourceRoot":"","sources":["../../../src/internal/clients.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nomicfoundation/hardhat-viem",
3
- "version": "3.0.0-next.13",
3
+ "version": "3.0.0-next.14",
4
4
  "description": "Hardhat plugin for viem",
5
5
  "homepage": "https://github.com/nomicfoundation/hardhat/tree/v-next/v-next/hardhat-viem",
6
6
  "repository": {
@@ -31,7 +31,7 @@
31
31
  "README.md"
32
32
  ],
33
33
  "devDependencies": {
34
- "@nomicfoundation/hardhat-node-test-reporter": "^3.0.0-next.13",
34
+ "@nomicfoundation/hardhat-node-test-reporter": "^3.0.0-next.14",
35
35
  "@types/node": "^20.14.9",
36
36
  "c8": "^9.1.0",
37
37
  "eslint": "9.25.1",
@@ -41,14 +41,14 @@
41
41
  "tsx": "^4.19.3",
42
42
  "typescript": "~5.5.0",
43
43
  "viem": "^2.30.0",
44
- "@nomicfoundation/hardhat-test-utils": "^3.0.0-next.13"
44
+ "@nomicfoundation/hardhat-test-utils": "^3.0.0-next.14"
45
45
  },
46
46
  "dependencies": {
47
- "@nomicfoundation/hardhat-errors": "^3.0.0-next.13",
48
- "@nomicfoundation/hardhat-utils": "^3.0.0-next.13"
47
+ "@nomicfoundation/hardhat-errors": "^3.0.0-next.14",
48
+ "@nomicfoundation/hardhat-utils": "^3.0.0-next.14"
49
49
  },
50
50
  "peerDependencies": {
51
- "hardhat": "^3.0.0-next.13",
51
+ "hardhat": "^3.0.0-next.14",
52
52
  "viem": "^2.30.0"
53
53
  },
54
54
  "scripts": {
@@ -31,15 +31,14 @@ export async function getPublicClient<ChainTypeT extends ChainType | string>(
31
31
  ): Promise<GetPublicClientReturnType<ChainTypeT>> {
32
32
  const chain =
33
33
  publicClientConfig?.chain ?? (await getChain(provider, chainType));
34
- const parameters = {
35
- ...(await getDefaultClientParameters(provider)),
36
- ...publicClientConfig,
37
- };
34
+ const { defaultClientParams, defaultTransportParams } =
35
+ await getDefaultParams(provider);
38
36
 
39
37
  let publicClient = createPublicClient({
40
38
  chain,
41
- transport: customTransport(provider),
42
- ...parameters,
39
+ transport: customTransport(provider, defaultTransportParams),
40
+ ...defaultClientParams,
41
+ ...publicClientConfig,
43
42
  });
44
43
 
45
44
  if (chainType === "optimism") {
@@ -59,17 +58,16 @@ export async function getWalletClients<ChainTypeT extends ChainType | string>(
59
58
  const chain =
60
59
  walletClientConfig?.chain ?? (await getChain(provider, chainType));
61
60
  const accounts = await getAccounts(provider);
62
- const parameters = {
63
- ...(await getDefaultClientParameters(provider)),
64
- ...walletClientConfig,
65
- };
61
+ const { defaultClientParams, defaultTransportParams } =
62
+ await getDefaultParams(provider);
66
63
 
67
64
  let walletClients = accounts.map((account) =>
68
65
  createWalletClient({
69
66
  chain,
70
67
  account,
71
- transport: customTransport(provider),
72
- ...parameters,
68
+ transport: customTransport(provider, defaultTransportParams),
69
+ ...defaultClientParams,
70
+ ...walletClientConfig,
73
71
  }),
74
72
  );
75
73
 
@@ -92,16 +90,15 @@ export async function getWalletClient<ChainTypeT extends ChainType | string>(
92
90
  ): Promise<GetWalletClientReturnType<ChainTypeT>> {
93
91
  const chain =
94
92
  walletClientConfig?.chain ?? (await getChain(provider, chainType));
95
- const parameters = {
96
- ...(await getDefaultClientParameters(provider)),
97
- ...walletClientConfig,
98
- };
93
+ const { defaultClientParams, defaultTransportParams } =
94
+ await getDefaultParams(provider);
99
95
 
100
96
  let walletClient = createWalletClient({
101
97
  chain,
102
98
  account: address,
103
- transport: customTransport(provider),
104
- ...parameters,
99
+ transport: customTransport(provider, defaultTransportParams),
100
+ ...defaultClientParams,
101
+ ...walletClientConfig,
105
102
  });
106
103
 
107
104
  if (chainType === "optimism") {
@@ -149,22 +146,27 @@ export async function getTestClient<ChainTypeT extends ChainType | string>(
149
146
  const chain =
150
147
  testClientConfig?.chain ?? (await getChain(provider, chainType));
151
148
  const mode = await getMode(provider);
152
- const parameters = { ...DEFAULT_CLIENT_PARAMETERS, ...testClientConfig };
153
149
 
154
150
  const testClient = createTestClient({
155
151
  chain,
156
152
  mode,
157
- transport: customTransport(provider),
158
- ...parameters,
153
+ transport: customTransport(provider, DEFAULT_DEVELOPMENT_TRANSPORT_PARAMS),
154
+ ...DEFAULT_DEVELOPMENT_CLIENT_PARAMS,
155
+ ...testClientConfig,
159
156
  });
160
157
 
161
158
  return testClient;
162
159
  }
163
160
 
164
- const DEFAULT_CLIENT_PARAMETERS = { pollingInterval: 50, cacheTime: 0 };
161
+ const DEFAULT_DEVELOPMENT_CLIENT_PARAMS = { pollingInterval: 50, cacheTime: 0 };
162
+ const DEFAULT_DEVELOPMENT_TRANSPORT_PARAMS = { retryCount: 0 };
165
163
 
166
- async function getDefaultClientParameters(provider: EthereumProvider) {
167
- return (await isDevelopmentNetwork(provider))
168
- ? DEFAULT_CLIENT_PARAMETERS
164
+ async function getDefaultParams(provider: EthereumProvider) {
165
+ const isDevelopment = await isDevelopmentNetwork(provider);
166
+ return isDevelopment
167
+ ? {
168
+ defaultClientParams: DEFAULT_DEVELOPMENT_CLIENT_PARAMS,
169
+ defaultTransportParams: DEFAULT_DEVELOPMENT_TRANSPORT_PARAMS,
170
+ }
169
171
  : {};
170
172
  }