viem 1.9.0 → 1.9.3

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 CHANGED
@@ -188,6 +188,12 @@ Check out the following places for more viem-related content:
188
188
  <img alt="celo logo" src="https://raw.githubusercontent.com/wagmi-dev/.github/main/content/sponsors/celo-light.svg" width="auto" height="50">
189
189
  </picture>
190
190
  </a>
191
+ <a href="https://pimlico.io/">
192
+ <picture>
193
+ <source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/wagmi-dev/.github/main/content/sponsors/pimlico-dark.svg">
194
+ <img alt="pimlico logo" src="https://raw.githubusercontent.com/wagmi-dev/.github/main/content/sponsors/pimlico-light.svg" width="auto" height="50">
195
+ </picture>
196
+ </a>
191
197
  <a href="https://zora.co/">
192
198
  <picture>
193
199
  <source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/wagmi-dev/.github/main/content/sponsors/zora-dark.svg">
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.multicall = void 0;
4
4
  const abis_js_1 = require("../../constants/abis.js");
5
5
  const abi_js_1 = require("../../errors/abi.js");
6
+ const base_js_1 = require("../../errors/base.js");
6
7
  const contract_js_1 = require("../../errors/contract.js");
7
8
  const decodeFunctionResult_js_1 = require("../../utils/abi/decodeFunctionResult.js");
8
9
  const encodeFunctionData_js_1 = require("../../utils/abi/encodeFunctionData.js");
@@ -36,8 +37,10 @@ async function multicall(client, args) {
36
37
  args,
37
38
  functionName,
38
39
  });
39
- currentChunkSize += callData.length;
40
- if (batchSize > 0 && currentChunkSize > batchSize) {
40
+ currentChunkSize += (callData.length - 2) / 2;
41
+ if (batchSize > 0 &&
42
+ currentChunkSize > batchSize &&
43
+ chunkedCalls[currentChunk].length > 0) {
41
44
  currentChunk++;
42
45
  currentChunkSize = (callData.length - 2) / 2;
43
46
  chunkedCalls[currentChunk] = [];
@@ -71,7 +74,7 @@ async function multicall(client, args) {
71
74
  ];
72
75
  }
73
76
  }
74
- const results = await Promise.all(chunkedCalls.map((calls) => (0, readContract_js_1.readContract)(client, {
77
+ const aggregate3Results = await Promise.allSettled(chunkedCalls.map((calls) => (0, readContract_js_1.readContract)(client, {
75
78
  abi: abis_js_1.multicall3Abi,
76
79
  address: multicallAddress,
77
80
  args: [calls],
@@ -79,36 +82,56 @@ async function multicall(client, args) {
79
82
  blockTag,
80
83
  functionName: 'aggregate3',
81
84
  })));
82
- return results.flat().map(({ returnData, success }, i) => {
83
- const calls = chunkedCalls.flat();
84
- const { callData } = calls[i];
85
- const { abi, address, functionName, args } = contracts[i];
86
- try {
87
- if (callData === '0x')
88
- throw new abi_js_1.AbiDecodingZeroDataError();
89
- if (!success)
90
- throw new contract_js_1.RawContractError({ data: returnData });
91
- const result = (0, decodeFunctionResult_js_1.decodeFunctionResult)({
92
- abi,
93
- args,
94
- data: returnData,
95
- functionName,
96
- });
97
- return allowFailure ? { result, status: 'success' } : result;
98
- }
99
- catch (err) {
100
- const error = (0, getContractError_js_1.getContractError)(err, {
101
- abi,
102
- address,
103
- args,
104
- docsPath: '/docs/contract/multicall',
105
- functionName,
106
- });
85
+ const results = [];
86
+ for (let i = 0; i < aggregate3Results.length; i++) {
87
+ const result = aggregate3Results[i];
88
+ if (result.status === 'rejected') {
107
89
  if (!allowFailure)
108
- throw error;
109
- return { error, result: undefined, status: 'failure' };
90
+ throw result.reason;
91
+ for (let j = 0; j < chunkedCalls[i].length; j++) {
92
+ results.push({
93
+ status: 'failure',
94
+ error: result.reason,
95
+ result: undefined,
96
+ });
97
+ }
98
+ continue;
110
99
  }
111
- });
100
+ const aggregate3Result = result.value;
101
+ for (let j = 0; j < aggregate3Result.length; j++) {
102
+ const { returnData, success } = aggregate3Result[j];
103
+ const { callData } = chunkedCalls[i][j];
104
+ const { abi, address, functionName, args } = contracts[results.length];
105
+ try {
106
+ if (callData === '0x')
107
+ throw new abi_js_1.AbiDecodingZeroDataError();
108
+ if (!success)
109
+ throw new contract_js_1.RawContractError({ data: returnData });
110
+ const result = (0, decodeFunctionResult_js_1.decodeFunctionResult)({
111
+ abi,
112
+ args,
113
+ data: returnData,
114
+ functionName,
115
+ });
116
+ results.push(allowFailure ? { result, status: 'success' } : result);
117
+ }
118
+ catch (err) {
119
+ const error = (0, getContractError_js_1.getContractError)(err, {
120
+ abi,
121
+ address,
122
+ args,
123
+ docsPath: '/docs/contract/multicall',
124
+ functionName,
125
+ });
126
+ if (!allowFailure)
127
+ throw error;
128
+ results.push({ error, result: undefined, status: 'failure' });
129
+ }
130
+ }
131
+ }
132
+ if (results.length !== contracts.length)
133
+ throw new base_js_1.BaseError('multicall results mismatch');
134
+ return results;
112
135
  }
113
136
  exports.multicall = multicall;
114
137
  //# sourceMappingURL=multicall.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"multicall.js","sourceRoot":"","sources":["../../../../src/actions/public/multicall.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"multicall.js","sourceRoot":"","sources":["../../../../src/actions/public/multicall.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"prepareTransactionRequest.js","sourceRoot":"","sources":["../../../../src/actions/wallet/prepareTransactionRequest.ts"],"names":[],"mappings":";;;AACA,0EAAmE;AACnE,sFAAwF;AACxF,wEAG4C;AAC5C,kEAA2D;AAC3D,wFAAiF;AAGjF,wDAA8D;AAC9D,gDAG4B;AAQ5B,+EAAwE;AACxE,yFAAkF;AAoE3E,KAAK,UAAU,yBAAyB,CAK7C,MAA2C,EAC3C,IAA2E;IAI3E,MAAM,EAAE,OAAO,EAAE,QAAQ,GAAG,MAAM,CAAC,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,IAAI,CAAA;IAC5E,IAAI,CAAC,QAAQ;QAAE,MAAM,IAAI,iCAAoB,EAAE,CAAA;IAC/C,MAAM,OAAO,GAAG,IAAA,8BAAY,EAAC,QAAQ,CAAC,CAAA;IAEtC,MAAM,KAAK,GAAG,MAAM,IAAA,sBAAQ,EAAC,MAAM,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAA;IAE5D,MAAM,OAAO,GAAG,EAAE,GAAG,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC,OAAO,EAAE,CAAA;IAElD,IAAI,OAAO,KAAK,KAAK,WAAW;QAC9B,OAAO,CAAC,KAAK,GAAG,MAAM,IAAA,4CAAmB,EAAC,MAAM,EAAE;YAChD,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,QAAQ,EAAE,SAAS;SACpB,CAAC,CAAA;IAEJ,IAAI,OAAO,IAAI,KAAK,WAAW,EAAE;QAC/B,IAAI;YACF,OAAO,CAAC,IAAI,GAAG,IAAA,0CAAkB,EAC/B,OAAkC,CAC5B,CAAA;SACT;QAAC,MAAM;YAEN,OAAO,CAAC,IAAI;gBACV,OAAO,KAAK,CAAC,aAAa,KAAK,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAA;SACjE;KACF;IAED,IAAI,OAAO,CAAC,IAAI,KAAK,SAAS,EAAE;QAE9B,MAAM,EAAE,YAAY,EAAE,oBAAoB,EAAE,GAC1C,MAAM,IAAA,mDAA2B,EAAC,MAAM,EAAE;YACxC,KAAK;YACL,KAAK;YACL,OAAO,EAAE,OAA8C;SACxD,CAAC,CAAA;QAEJ,IACE,OAAO,IAAI,CAAC,oBAAoB,KAAK,WAAW;YAChD,IAAI,CAAC,YAAY;YACjB,IAAI,CAAC,YAAY,GAAG,oBAAoB;YAExC,MAAM,IAAI,gCAAuB,CAAC;gBAChC,oBAAoB;aACrB,CAAC,CAAA;QAEJ,OAAO,CAAC,oBAAoB,GAAG,oBAAoB,CAAA;QACnD,OAAO,CAAC,YAAY,GAAG,YAAY,CAAA;KACpC;SAAM;QAEL,IACE,OAAO,IAAI,CAAC,YAAY,KAAK,WAAW;YACxC,OAAO,IAAI,CAAC,oBAAoB,KAAK,WAAW;YAEhD,MAAM,IAAI,qCAA4B,EAAE,CAAA;QAE1C,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,MAAM,IAAA,mDAA2B,EAAC,MAAM,EAAE;YACxE,KAAK;YACL,KAAK;YACL,OAAO,EAAE,OAA8C;YACvD,IAAI,EAAE,QAAQ;SACf,CAAC,CAAA;QACF,OAAO,CAAC,QAAQ,GAAG,SAAS,CAAA;KAC7B;IAED,IAAI,OAAO,GAAG,KAAK,WAAW;QAC5B,OAAO,CAAC,GAAG,GAAG,MAAM,IAAA,4BAAW,EAAC,MAAM,EAAE;YACtC,GAAG,OAAO;YACV,OAAO,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE;SAC/B,CAAC,CAAA;IAE7B,IAAA,gCAAa,EAAC,OAAkC,CAAC,CAAA;IAEjD,OAAO,OAIN,CAAA;AACH,CAAC;AAtFD,8DAsFC"}
1
+ {"version":3,"file":"prepareTransactionRequest.js","sourceRoot":"","sources":["../../../../src/actions/wallet/prepareTransactionRequest.ts"],"names":[],"mappings":";;;AACA,0EAAmE;AACnE,sFAAwF;AACxF,wEAG4C;AAC5C,kEAA2D;AAC3D,wFAAiF;AAGjF,wDAA8D;AAC9D,gDAG4B;AAQ5B,+EAAwE;AACxE,yFAAkF;AAiE3E,KAAK,UAAU,yBAAyB,CAK7C,MAA2C,EAC3C,IAA2E;IAI3E,MAAM,EAAE,OAAO,EAAE,QAAQ,GAAG,MAAM,CAAC,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,IAAI,CAAA;IAC5E,IAAI,CAAC,QAAQ;QAAE,MAAM,IAAI,iCAAoB,EAAE,CAAA;IAC/C,MAAM,OAAO,GAAG,IAAA,8BAAY,EAAC,QAAQ,CAAC,CAAA;IAEtC,MAAM,KAAK,GAAG,MAAM,IAAA,sBAAQ,EAAC,MAAM,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAA;IAE5D,MAAM,OAAO,GAAG,EAAE,GAAG,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC,OAAO,EAAE,CAAA;IAElD,IAAI,OAAO,KAAK,KAAK,WAAW;QAC9B,OAAO,CAAC,KAAK,GAAG,MAAM,IAAA,4CAAmB,EAAC,MAAM,EAAE;YAChD,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,QAAQ,EAAE,SAAS;SACpB,CAAC,CAAA;IAEJ,IAAI,OAAO,IAAI,KAAK,WAAW,EAAE;QAC/B,IAAI;YACF,OAAO,CAAC,IAAI,GAAG,IAAA,0CAAkB,EAC/B,OAAkC,CAC5B,CAAA;SACT;QAAC,MAAM;YAEN,OAAO,CAAC,IAAI;gBACV,OAAO,KAAK,CAAC,aAAa,KAAK,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAA;SACjE;KACF;IAED,IAAI,OAAO,CAAC,IAAI,KAAK,SAAS,EAAE;QAE9B,MAAM,EAAE,YAAY,EAAE,oBAAoB,EAAE,GAC1C,MAAM,IAAA,mDAA2B,EAAC,MAAM,EAAE;YACxC,KAAK;YACL,KAAK;YACL,OAAO,EAAE,OAA8C;SACxD,CAAC,CAAA;QAEJ,IACE,OAAO,IAAI,CAAC,oBAAoB,KAAK,WAAW;YAChD,IAAI,CAAC,YAAY;YACjB,IAAI,CAAC,YAAY,GAAG,oBAAoB;YAExC,MAAM,IAAI,gCAAuB,CAAC;gBAChC,oBAAoB;aACrB,CAAC,CAAA;QAEJ,OAAO,CAAC,oBAAoB,GAAG,oBAAoB,CAAA;QACnD,OAAO,CAAC,YAAY,GAAG,YAAY,CAAA;KACpC;SAAM;QAEL,IACE,OAAO,IAAI,CAAC,YAAY,KAAK,WAAW;YACxC,OAAO,IAAI,CAAC,oBAAoB,KAAK,WAAW;YAEhD,MAAM,IAAI,qCAA4B,EAAE,CAAA;QAE1C,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,MAAM,IAAA,mDAA2B,EAAC,MAAM,EAAE;YACxE,KAAK;YACL,KAAK;YACL,OAAO,EAAE,OAA8C;YACvD,IAAI,EAAE,QAAQ;SACf,CAAC,CAAA;QACF,OAAO,CAAC,QAAQ,GAAG,SAAS,CAAA;KAC7B;IAED,IAAI,OAAO,GAAG,KAAK,WAAW;QAC5B,OAAO,CAAC,GAAG,GAAG,MAAM,IAAA,4BAAW,EAAC,MAAM,EAAE;YACtC,GAAG,OAAO;YACV,OAAO,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE;SAC/B,CAAC,CAAA;IAE7B,IAAA,gCAAa,EAAC,OAAkC,CAAC,CAAA;IAEjD,OAAO,OAIN,CAAA;AACH,CAAC;AAtFD,8DAsFC"}
@@ -1,5 +1,5 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.version = void 0;
4
- exports.version = '1.9.0';
4
+ exports.version = '1.9.3';
5
5
  //# sourceMappingURL=version.js.map
@@ -1,5 +1,6 @@
1
1
  import { multicall3Abi } from '../../constants/abis.js';
2
2
  import { AbiDecodingZeroDataError } from '../../errors/abi.js';
3
+ import { BaseError } from '../../errors/base.js';
3
4
  import { RawContractError } from '../../errors/contract.js';
4
5
  import { decodeFunctionResult } from '../../utils/abi/decodeFunctionResult.js';
5
6
  import { encodeFunctionData, } from '../../utils/abi/encodeFunctionData.js';
@@ -72,8 +73,15 @@ export async function multicall(client, args) {
72
73
  args,
73
74
  functionName,
74
75
  });
75
- currentChunkSize += callData.length;
76
- if (batchSize > 0 && currentChunkSize > batchSize) {
76
+ currentChunkSize += (callData.length - 2) / 2;
77
+ // Check to see if we need to create a new chunk.
78
+ if (
79
+ // Check if batching is enabled.
80
+ batchSize > 0 &&
81
+ // Check if the current size of the batch exceeds the size limit.
82
+ currentChunkSize > batchSize &&
83
+ // Check if the current chunk is not already empty.
84
+ chunkedCalls[currentChunk].length > 0) {
77
85
  currentChunk++;
78
86
  currentChunkSize = (callData.length - 2) / 2;
79
87
  chunkedCalls[currentChunk] = [];
@@ -107,7 +115,7 @@ export async function multicall(client, args) {
107
115
  ];
108
116
  }
109
117
  }
110
- const results = await Promise.all(chunkedCalls.map((calls) => readContract(client, {
118
+ const aggregate3Results = await Promise.allSettled(chunkedCalls.map((calls) => readContract(client, {
111
119
  abi: multicall3Abi,
112
120
  address: multicallAddress,
113
121
  args: [calls],
@@ -115,35 +123,62 @@ export async function multicall(client, args) {
115
123
  blockTag,
116
124
  functionName: 'aggregate3',
117
125
  })));
118
- return results.flat().map(({ returnData, success }, i) => {
119
- const calls = chunkedCalls.flat();
120
- const { callData } = calls[i];
121
- const { abi, address, functionName, args } = contracts[i];
122
- try {
123
- if (callData === '0x')
124
- throw new AbiDecodingZeroDataError();
125
- if (!success)
126
- throw new RawContractError({ data: returnData });
127
- const result = decodeFunctionResult({
128
- abi,
129
- args,
130
- data: returnData,
131
- functionName,
132
- });
133
- return allowFailure ? { result, status: 'success' } : result;
134
- }
135
- catch (err) {
136
- const error = getContractError(err, {
137
- abi,
138
- address,
139
- args,
140
- docsPath: '/docs/contract/multicall',
141
- functionName,
142
- });
126
+ const results = [];
127
+ for (let i = 0; i < aggregate3Results.length; i++) {
128
+ const result = aggregate3Results[i];
129
+ // If an error occurred in a `readContract` invocation (ie. network error),
130
+ // then append the failure reason to each contract result.
131
+ if (result.status === 'rejected') {
143
132
  if (!allowFailure)
144
- throw error;
145
- return { error, result: undefined, status: 'failure' };
133
+ throw result.reason;
134
+ for (let j = 0; j < chunkedCalls[i].length; j++) {
135
+ results.push({
136
+ status: 'failure',
137
+ error: result.reason,
138
+ result: undefined,
139
+ });
140
+ }
141
+ continue;
146
142
  }
147
- });
143
+ // If the `readContract` call was successful, then decode the results.
144
+ const aggregate3Result = result.value;
145
+ for (let j = 0; j < aggregate3Result.length; j++) {
146
+ // Extract the response from `readContract`
147
+ const { returnData, success } = aggregate3Result[j];
148
+ // Extract the request call data from the original call.
149
+ const { callData } = chunkedCalls[i][j];
150
+ // Extract the contract config for this call from the `contracts` argument
151
+ // for decoding.
152
+ const { abi, address, functionName, args } = contracts[results.length];
153
+ try {
154
+ if (callData === '0x')
155
+ throw new AbiDecodingZeroDataError();
156
+ if (!success)
157
+ throw new RawContractError({ data: returnData });
158
+ const result = decodeFunctionResult({
159
+ abi,
160
+ args,
161
+ data: returnData,
162
+ functionName,
163
+ });
164
+ results.push(allowFailure ? { result, status: 'success' } : result);
165
+ }
166
+ catch (err) {
167
+ const error = getContractError(err, {
168
+ abi,
169
+ address,
170
+ args,
171
+ docsPath: '/docs/contract/multicall',
172
+ functionName,
173
+ });
174
+ if (!allowFailure)
175
+ throw error;
176
+ results.push({ error, result: undefined, status: 'failure' });
177
+ }
178
+ }
179
+ }
180
+ if (results.length !== contracts.length)
181
+ throw new BaseError('multicall results mismatch');
182
+ return results;
148
183
  }
149
184
  //# sourceMappingURL=multicall.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"multicall.js","sourceRoot":"","sources":["../../../../src/actions/public/multicall.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"multicall.js","sourceRoot":"","sources":["../../../../src/actions/public/multicall.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"prepareTransactionRequest.js","sourceRoot":"","sources":["../../../../src/actions/wallet/prepareTransactionRequest.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"prepareTransactionRequest.js","sourceRoot":"","sources":["../../../../src/actions/wallet/prepareTransactionRequest.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- export const version = '1.9.0';
1
+ export const version = '1.9.3';
2
2
  //# sourceMappingURL=version.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"multicall.d.ts","sourceRoot":"","sources":["../../../../src/actions/public/multicall.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAA;AAE9C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,+BAA+B,CAAA;AAC3D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,6CAA6C,CAAA;AAK5E,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAA;AACjD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAA;AAErE,OAAO,KAAK,EACV,kBAAkB,EAClB,gBAAgB,EACjB,MAAM,0BAA0B,CAAA;AASjC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,WAAW,CAAA;AAG/C,MAAM,MAAM,mBAAmB,CAC7B,UAAU,SAAS,sBAAsB,EAAE,GAAG,sBAAsB,EAAE,EACtE,aAAa,SAAS,OAAO,GAAG,IAAI,IAClC,IAAI,CAAC,cAAc,EAAE,aAAa,GAAG,UAAU,CAAC,GAAG;IACrD,YAAY,CAAC,EAAE,aAAa,CAAA;IAC5B,gHAAgH;IAChH,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,SAAS,EAAE,MAAM,CAAC,SAAS,CAAC,GAAG,kBAAkB,CAAC,UAAU,CAAC,CAAC,CAAC,CAAA;IAC/D,gBAAgB,CAAC,EAAE,OAAO,CAAA;CAC3B,CAAA;AAED,MAAM,MAAM,mBAAmB,CAC7B,UAAU,SAAS,sBAAsB,EAAE,GAAG,sBAAsB,EAAE,EACtE,aAAa,SAAS,OAAO,GAAG,IAAI,IAClC,gBAAgB,CAAC,UAAU,EAAE,aAAa,CAAC,CAAA;AAE/C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCG;AACH,wBAAsB,SAAS,CAC7B,UAAU,SAAS,sBAAsB,EAAE,EAC3C,MAAM,SAAS,KAAK,GAAG,SAAS,EAChC,aAAa,SAAS,OAAO,GAAG,IAAI,EAEpC,MAAM,EAAE,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,EACjC,IAAI,EAAE,mBAAmB,CAAC,UAAU,EAAE,aAAa,CAAC,GACnD,OAAO,CAAC,mBAAmB,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC,CA8HzD"}
1
+ {"version":3,"file":"multicall.d.ts","sourceRoot":"","sources":["../../../../src/actions/public/multicall.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAA;AAE9C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,+BAA+B,CAAA;AAC3D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,6CAA6C,CAAA;AAK5E,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAA;AACjD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAA;AAErE,OAAO,KAAK,EACV,kBAAkB,EAClB,gBAAgB,EACjB,MAAM,0BAA0B,CAAA;AASjC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,WAAW,CAAA;AAG/C,MAAM,MAAM,mBAAmB,CAC7B,UAAU,SAAS,sBAAsB,EAAE,GAAG,sBAAsB,EAAE,EACtE,aAAa,SAAS,OAAO,GAAG,IAAI,IAClC,IAAI,CAAC,cAAc,EAAE,aAAa,GAAG,UAAU,CAAC,GAAG;IACrD,YAAY,CAAC,EAAE,aAAa,CAAA;IAC5B,gHAAgH;IAChH,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,SAAS,EAAE,MAAM,CAAC,SAAS,CAAC,GAAG,kBAAkB,CAAC,UAAU,CAAC,CAAC,CAAC,CAAA;IAC/D,gBAAgB,CAAC,EAAE,OAAO,CAAA;CAC3B,CAAA;AAED,MAAM,MAAM,mBAAmB,CAC7B,UAAU,SAAS,sBAAsB,EAAE,GAAG,sBAAsB,EAAE,EACtE,aAAa,SAAS,OAAO,GAAG,IAAI,IAClC,gBAAgB,CAAC,UAAU,EAAE,aAAa,CAAC,CAAA;AAE/C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCG;AACH,wBAAsB,SAAS,CAC7B,UAAU,SAAS,sBAAsB,EAAE,EAC3C,MAAM,SAAS,KAAK,GAAG,SAAS,EAChC,aAAa,SAAS,OAAO,GAAG,IAAI,EAEpC,MAAM,EAAE,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,EACjC,IAAI,EAAE,mBAAmB,CAAC,UAAU,EAAE,aAAa,CAAC,GACnD,OAAO,CAAC,mBAAmB,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC,CAsKzD"}
@@ -7,7 +7,7 @@ import type { GetChain } from '../../types/chain.js';
7
7
  import type { UnionOmit } from '../../types/utils.js';
8
8
  import type { FormattedTransactionRequest } from '../../utils/formatters/transactionRequest.js';
9
9
  export type PrepareTransactionRequestParameters<TChain extends Chain | undefined = Chain | undefined, TAccount extends Account | undefined = Account | undefined, TChainOverride extends Chain | undefined = Chain | undefined> = UnionOmit<FormattedTransactionRequest<TChainOverride extends Chain ? TChainOverride : TChain>, 'from'> & GetAccountParameter<TAccount> & GetChain<TChain, TChainOverride>;
10
- export type PrepareTransactionRequestReturnType<TChain extends Chain | undefined = Chain | undefined, TAccount extends Account | undefined = Account | undefined, TChainOverride extends Chain | undefined = Chain | undefined> = UnionOmit<FormattedTransactionRequest<TChainOverride extends Chain ? TChainOverride : TChain>, 'from'> & GetAccountParameter<TAccount> & GetChain<TChain, TChainOverride>;
10
+ export type PrepareTransactionRequestReturnType<TChain extends Chain | undefined = Chain | undefined, TAccount extends Account | undefined = Account | undefined, TChainOverride extends Chain | undefined = Chain | undefined> = FormattedTransactionRequest<TChainOverride extends Chain ? TChainOverride : TChain> & GetAccountParameter<TAccount> & GetChain<TChain, TChainOverride>;
11
11
  /**
12
12
  * Prepares a transaction request for signing.
13
13
  *
@@ -1 +1 @@
1
- {"version":3,"file":"prepareTransactionRequest.d.ts","sourceRoot":"","sources":["../../../../src/actions/wallet/prepareTransactionRequest.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAA;AAStD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,+BAA+B,CAAA;AAC3D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,6CAA6C,CAAA;AAM5E,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAA;AACjE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAA;AACjD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAA;AAEpD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAA;AACrD,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,8CAA8C,CAAA;AAK/F,MAAM,MAAM,mCAAmC,CAC7C,MAAM,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,EACpD,QAAQ,SAAS,OAAO,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,EAC1D,cAAc,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,IAC1D,SAAS,CACX,2BAA2B,CACzB,cAAc,SAAS,KAAK,GAAG,cAAc,GAAG,MAAM,CACvD,EACD,MAAM,CACP,GACC,mBAAmB,CAAC,QAAQ,CAAC,GAC7B,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAC,CAAA;AAElC,MAAM,MAAM,mCAAmC,CAC7C,MAAM,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,EACpD,QAAQ,SAAS,OAAO,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,EAC1D,cAAc,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,IAC1D,SAAS,CACX,2BAA2B,CACzB,cAAc,SAAS,KAAK,GAAG,cAAc,GAAG,MAAM,CACvD,EACD,MAAM,CACP,GACC,mBAAmB,CAAC,QAAQ,CAAC,GAC7B,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAC,CAAA;AAElC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuCG;AACH,wBAAsB,yBAAyB,CAC7C,MAAM,SAAS,KAAK,GAAG,SAAS,EAChC,QAAQ,SAAS,OAAO,GAAG,SAAS,EACpC,cAAc,SAAS,KAAK,GAAG,SAAS,EAExC,MAAM,EAAE,MAAM,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,CAAC,EAC3C,IAAI,EAAE,mCAAmC,CAAC,MAAM,EAAE,QAAQ,EAAE,cAAc,CAAC,GAC1E,OAAO,CACR,mCAAmC,CAAC,MAAM,EAAE,QAAQ,EAAE,cAAc,CAAC,CACtE,CA6EA"}
1
+ {"version":3,"file":"prepareTransactionRequest.d.ts","sourceRoot":"","sources":["../../../../src/actions/wallet/prepareTransactionRequest.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAA;AAStD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,+BAA+B,CAAA;AAC3D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,6CAA6C,CAAA;AAM5E,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAA;AACjE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAA;AACjD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAA;AAEpD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAA;AACrD,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,8CAA8C,CAAA;AAK/F,MAAM,MAAM,mCAAmC,CAC7C,MAAM,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,EACpD,QAAQ,SAAS,OAAO,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,EAC1D,cAAc,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,IAC1D,SAAS,CACX,2BAA2B,CACzB,cAAc,SAAS,KAAK,GAAG,cAAc,GAAG,MAAM,CACvD,EACD,MAAM,CACP,GACC,mBAAmB,CAAC,QAAQ,CAAC,GAC7B,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAC,CAAA;AAElC,MAAM,MAAM,mCAAmC,CAC7C,MAAM,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,EACpD,QAAQ,SAAS,OAAO,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,EAC1D,cAAc,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,IAC1D,2BAA2B,CAC7B,cAAc,SAAS,KAAK,GAAG,cAAc,GAAG,MAAM,CACvD,GACC,mBAAmB,CAAC,QAAQ,CAAC,GAC7B,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAC,CAAA;AAElC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuCG;AACH,wBAAsB,yBAAyB,CAC7C,MAAM,SAAS,KAAK,GAAG,SAAS,EAChC,QAAQ,SAAS,OAAO,GAAG,SAAS,EACpC,cAAc,SAAS,KAAK,GAAG,SAAS,EAExC,MAAM,EAAE,MAAM,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,CAAC,EAC3C,IAAI,EAAE,mCAAmC,CAAC,MAAM,EAAE,QAAQ,EAAE,cAAc,CAAC,GAC1E,OAAO,CACR,mCAAmC,CAAC,MAAM,EAAE,QAAQ,EAAE,cAAc,CAAC,CACtE,CA6EA"}
@@ -1,2 +1,2 @@
1
- export declare const version = "1.9.0";
1
+ export declare const version = "1.9.3";
2
2
  //# sourceMappingURL=version.d.ts.map
package/package.json CHANGED
@@ -20,7 +20,7 @@
20
20
  "optional": true
21
21
  }
22
22
  },
23
- "version": "1.9.0",
23
+ "version": "1.9.3",
24
24
  "files": [
25
25
  "dist",
26
26
  "!dist/**/*.tsbuildinfo",
@@ -4,7 +4,7 @@ import type { Client } from '../../clients/createClient.js'
4
4
  import type { Transport } from '../../clients/transports/createTransport.js'
5
5
  import { multicall3Abi } from '../../constants/abis.js'
6
6
  import { AbiDecodingZeroDataError } from '../../errors/abi.js'
7
- import type { BaseError } from '../../errors/base.js'
7
+ import { BaseError } from '../../errors/base.js'
8
8
  import { RawContractError } from '../../errors/contract.js'
9
9
  import type { Chain } from '../../types/chain.js'
10
10
  import type { ContractFunctionConfig } from '../../types/contract.js'
@@ -136,8 +136,16 @@ export async function multicall<
136
136
  functionName,
137
137
  } as unknown as EncodeFunctionDataParameters)
138
138
 
139
- currentChunkSize += callData.length
140
- if (batchSize > 0 && currentChunkSize > batchSize) {
139
+ currentChunkSize += (callData.length - 2) / 2
140
+ // Check to see if we need to create a new chunk.
141
+ if (
142
+ // Check if batching is enabled.
143
+ batchSize > 0 &&
144
+ // Check if the current size of the batch exceeds the size limit.
145
+ currentChunkSize > batchSize &&
146
+ // Check if the current chunk is not already empty.
147
+ chunkedCalls[currentChunk].length > 0
148
+ ) {
141
149
  currentChunk++
142
150
  currentChunkSize = (callData.length - 2) / 2
143
151
  chunkedCalls[currentChunk] = []
@@ -171,7 +179,7 @@ export async function multicall<
171
179
  }
172
180
  }
173
181
 
174
- const results = await Promise.all(
182
+ const aggregate3Results = await Promise.allSettled(
175
183
  chunkedCalls.map((calls) =>
176
184
  readContract(client, {
177
185
  abi: multicall3Abi,
@@ -184,32 +192,64 @@ export async function multicall<
184
192
  ),
185
193
  )
186
194
 
187
- return results.flat().map(({ returnData, success }, i) => {
188
- const calls = chunkedCalls.flat()
189
- const { callData } = calls[i]
190
- const { abi, address, functionName, args } = contracts[
191
- i
192
- ] as ContractFunctionConfig
193
- try {
194
- if (callData === '0x') throw new AbiDecodingZeroDataError()
195
- if (!success) throw new RawContractError({ data: returnData })
196
- const result = decodeFunctionResult({
197
- abi,
198
- args,
199
- data: returnData,
200
- functionName,
201
- })
202
- return allowFailure ? { result, status: 'success' } : result
203
- } catch (err) {
204
- const error = getContractError(err as BaseError, {
205
- abi,
206
- address,
207
- args,
208
- docsPath: '/docs/contract/multicall',
209
- functionName,
210
- })
211
- if (!allowFailure) throw error
212
- return { error, result: undefined, status: 'failure' }
195
+ const results = []
196
+ for (let i = 0; i < aggregate3Results.length; i++) {
197
+ const result = aggregate3Results[i]
198
+
199
+ // If an error occurred in a `readContract` invocation (ie. network error),
200
+ // then append the failure reason to each contract result.
201
+ if (result.status === 'rejected') {
202
+ if (!allowFailure) throw result.reason
203
+ for (let j = 0; j < chunkedCalls[i].length; j++) {
204
+ results.push({
205
+ status: 'failure',
206
+ error: result.reason,
207
+ result: undefined,
208
+ })
209
+ }
210
+ continue
213
211
  }
214
- }) as MulticallResults<TContracts, TAllowFailure>
212
+
213
+ // If the `readContract` call was successful, then decode the results.
214
+ const aggregate3Result = result.value
215
+ for (let j = 0; j < aggregate3Result.length; j++) {
216
+ // Extract the response from `readContract`
217
+ const { returnData, success } = aggregate3Result[j]
218
+
219
+ // Extract the request call data from the original call.
220
+ const { callData } = chunkedCalls[i][j]
221
+
222
+ // Extract the contract config for this call from the `contracts` argument
223
+ // for decoding.
224
+ const { abi, address, functionName, args } = contracts[
225
+ results.length
226
+ ] as ContractFunctionConfig
227
+
228
+ try {
229
+ if (callData === '0x') throw new AbiDecodingZeroDataError()
230
+ if (!success) throw new RawContractError({ data: returnData })
231
+ const result = decodeFunctionResult({
232
+ abi,
233
+ args,
234
+ data: returnData,
235
+ functionName,
236
+ })
237
+ results.push(allowFailure ? { result, status: 'success' } : result)
238
+ } catch (err) {
239
+ const error = getContractError(err as BaseError, {
240
+ abi,
241
+ address,
242
+ args,
243
+ docsPath: '/docs/contract/multicall',
244
+ functionName,
245
+ })
246
+ if (!allowFailure) throw error
247
+ results.push({ error, result: undefined, status: 'failure' })
248
+ }
249
+ }
250
+ }
251
+
252
+ if (results.length !== contracts.length)
253
+ throw new BaseError('multicall results mismatch')
254
+ return results as MulticallResults<TContracts, TAllowFailure>
215
255
  }
@@ -41,11 +41,8 @@ export type PrepareTransactionRequestReturnType<
41
41
  TChain extends Chain | undefined = Chain | undefined,
42
42
  TAccount extends Account | undefined = Account | undefined,
43
43
  TChainOverride extends Chain | undefined = Chain | undefined,
44
- > = UnionOmit<
45
- FormattedTransactionRequest<
46
- TChainOverride extends Chain ? TChainOverride : TChain
47
- >,
48
- 'from'
44
+ > = FormattedTransactionRequest<
45
+ TChainOverride extends Chain ? TChainOverride : TChain
49
46
  > &
50
47
  GetAccountParameter<TAccount> &
51
48
  GetChain<TChain, TChainOverride>
@@ -171,7 +168,7 @@ export async function prepareTransactionRequest<
171
168
 
172
169
  assertRequest(request as AssertRequestParameters)
173
170
 
174
- return request as PrepareTransactionRequestReturnType<
171
+ return request as unknown as PrepareTransactionRequestReturnType<
175
172
  TChain,
176
173
  TAccount,
177
174
  TChainOverride
@@ -1 +1 @@
1
- export const version = '1.9.0'
1
+ export const version = '1.9.3'