viem 2.19.9 → 2.20.0
Sign up to get free protection for your applications and to get access to all the features.
- package/CHANGELOG.md +18 -0
- package/_cjs/account-abstraction/accounts/toSmartAccount.js +4 -5
- package/_cjs/account-abstraction/accounts/toSmartAccount.js.map +1 -1
- package/_cjs/account-abstraction/actions/bundler/estimateUserOperationGas.js +12 -9
- package/_cjs/account-abstraction/actions/bundler/estimateUserOperationGas.js.map +1 -1
- package/_cjs/account-abstraction/actions/bundler/sendUserOperation.js +14 -8
- package/_cjs/account-abstraction/actions/bundler/sendUserOperation.js.map +1 -1
- package/_cjs/errors/version.js +1 -1
- package/_cjs/experimental/eip5792/actions/sendCalls.js +22 -7
- package/_cjs/experimental/eip5792/actions/sendCalls.js.map +1 -1
- package/_cjs/experimental/eip5792/actions/writeContracts.js.map +1 -1
- package/_cjs/op-stack/actions/getTimeToFinalize.js +7 -1
- package/_cjs/op-stack/actions/getTimeToFinalize.js.map +1 -1
- package/_cjs/op-stack/actions/getWithdrawalStatus.js +7 -1
- package/_cjs/op-stack/actions/getWithdrawalStatus.js.map +1 -1
- package/_esm/account-abstraction/accounts/toSmartAccount.js +4 -5
- package/_esm/account-abstraction/accounts/toSmartAccount.js.map +1 -1
- package/_esm/account-abstraction/actions/bundler/estimateUserOperationGas.js +12 -9
- package/_esm/account-abstraction/actions/bundler/estimateUserOperationGas.js.map +1 -1
- package/_esm/account-abstraction/actions/bundler/sendUserOperation.js +14 -8
- package/_esm/account-abstraction/actions/bundler/sendUserOperation.js.map +1 -1
- package/_esm/errors/version.js +1 -1
- package/_esm/experimental/eip5792/actions/sendCalls.js +22 -7
- package/_esm/experimental/eip5792/actions/sendCalls.js.map +1 -1
- package/_esm/experimental/eip5792/actions/writeContracts.js +2 -0
- package/_esm/experimental/eip5792/actions/writeContracts.js.map +1 -1
- package/_esm/op-stack/actions/getTimeToFinalize.js +7 -1
- package/_esm/op-stack/actions/getTimeToFinalize.js.map +1 -1
- package/_esm/op-stack/actions/getWithdrawalStatus.js +7 -1
- package/_esm/op-stack/actions/getWithdrawalStatus.js.map +1 -1
- package/_types/account-abstraction/accounts/toSmartAccount.d.ts.map +1 -1
- package/_types/account-abstraction/accounts/types.d.ts +3 -0
- package/_types/account-abstraction/accounts/types.d.ts.map +1 -1
- package/_types/account-abstraction/actions/bundler/estimateUserOperationGas.d.ts +6 -4
- package/_types/account-abstraction/actions/bundler/estimateUserOperationGas.d.ts.map +1 -1
- package/_types/account-abstraction/actions/bundler/sendUserOperation.d.ts +7 -5
- package/_types/account-abstraction/actions/bundler/sendUserOperation.d.ts.map +1 -1
- package/_types/errors/version.d.ts +1 -1
- package/_types/experimental/eip5792/actions/sendCalls.d.ts +33 -12
- package/_types/experimental/eip5792/actions/sendCalls.d.ts.map +1 -1
- package/_types/experimental/eip5792/actions/writeContracts.d.ts +2 -0
- package/_types/experimental/eip5792/actions/writeContracts.d.ts.map +1 -1
- package/_types/op-stack/actions/getTimeToFinalize.d.ts.map +1 -1
- package/_types/op-stack/actions/getWithdrawalStatus.d.ts.map +1 -1
- package/_types/types/eip1193.d.ts +6 -6
- package/_types/types/eip1193.d.ts.map +1 -1
- package/account-abstraction/accounts/toSmartAccount.ts +12 -10
- package/account-abstraction/accounts/types.ts +3 -0
- package/account-abstraction/actions/bundler/estimateUserOperationGas.ts +53 -32
- package/account-abstraction/actions/bundler/sendUserOperation.ts +50 -33
- package/errors/version.ts +1 -1
- package/experimental/eip5792/actions/sendCalls.ts +107 -21
- package/experimental/eip5792/actions/writeContracts.ts +2 -0
- package/op-stack/actions/getTimeToFinalize.ts +8 -1
- package/op-stack/actions/getWithdrawalStatus.ts +8 -1
- package/package.json +1 -1
- package/types/eip1193.ts +8 -11
package/CHANGELOG.md
CHANGED
@@ -1,5 +1,23 @@
|
|
1
1
|
# viem
|
2
2
|
|
3
|
+
## 2.20.0
|
4
|
+
|
5
|
+
### Minor Changes
|
6
|
+
|
7
|
+
- [#2641](https://github.com/wevm/viem/pull/2641) [`89d11ed`](https://github.com/wevm/viem/commit/89d11edb558656bc3c97f0c410a448f99f92a1f4) Thanks [@jxom](https://github.com/jxom)! - **Experimental:** Deprecated `writeContracts`. Use `sendCalls` instead.
|
8
|
+
|
9
|
+
- [#2641](https://github.com/wevm/viem/pull/2641) [`89d11ed`](https://github.com/wevm/viem/commit/89d11edb558656bc3c97f0c410a448f99f92a1f4) Thanks [@jxom](https://github.com/jxom)! - **Experimental:** Updated `sendCalls` to match the updated EIP-5792 spec (`chainId` per call).
|
10
|
+
|
11
|
+
- [#2641](https://github.com/wevm/viem/pull/2641) [`89d11ed`](https://github.com/wevm/viem/commit/89d11edb558656bc3c97f0c410a448f99f92a1f4) Thanks [@jxom](https://github.com/jxom)! - **Experimental:** Updated `sendCalls` to also accept contract function interface.
|
12
|
+
|
13
|
+
### Patch Changes
|
14
|
+
|
15
|
+
- [#2638](https://github.com/wevm/viem/pull/2638) [`9cbd082`](https://github.com/wevm/viem/commit/9cbd0820533c278bb4e40ff390a7091a607152b3) Thanks [@jxom](https://github.com/jxom)! - Added \`nonceKeyManager\` as a property to \`toSmartAccount\`.
|
16
|
+
|
17
|
+
- [#2638](https://github.com/wevm/viem/pull/2638) [`9cbd082`](https://github.com/wevm/viem/commit/9cbd0820533c278bb4e40ff390a7091a607152b3) Thanks [@jxom](https://github.com/jxom)! - Added ability to pass full-formed User Operations to `sendUserOperation` and `estimateUserOperationGas`.
|
18
|
+
|
19
|
+
- [#2639](https://github.com/wevm/viem/pull/2639) [`9a1c6ab`](https://github.com/wevm/viem/commit/9a1c6abe6c89c444c8fc28cea1fc6ef9759ae53b) Thanks [@jxom](https://github.com/jxom)! - **OP Stack:** Tweaked proof submitter logic.
|
20
|
+
|
3
21
|
## 2.19.9
|
4
22
|
|
5
23
|
### Patch Changes
|
@@ -8,17 +8,16 @@ const getAction_js_1 = require("../../utils/getAction.js");
|
|
8
8
|
const nonceManager_js_1 = require("../../utils/nonceManager.js");
|
9
9
|
const serializeErc6492Signature_js_1 = require("../../utils/signature/serializeErc6492Signature.js");
|
10
10
|
async function toSmartAccount(implementation) {
|
11
|
-
const { extend,
|
12
|
-
let deployed = false;
|
13
|
-
const address = await implementation.getAddress();
|
14
|
-
const nonceKeyManager = (0, nonceManager_js_1.createNonceManager)({
|
11
|
+
const { extend, nonceKeyManager = (0, nonceManager_js_1.createNonceManager)({
|
15
12
|
source: {
|
16
13
|
get() {
|
17
14
|
return Date.now();
|
18
15
|
},
|
19
16
|
set() { },
|
20
17
|
},
|
21
|
-
});
|
18
|
+
}), ...rest } = implementation;
|
19
|
+
let deployed = false;
|
20
|
+
const address = await implementation.getAddress();
|
22
21
|
return {
|
23
22
|
...extend,
|
24
23
|
...rest,
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"toSmartAccount.js","sourceRoot":"","sources":["../../../account-abstraction/accounts/toSmartAccount.ts"],"names":[],"mappings":";;AA4BA,
|
1
|
+
{"version":3,"file":"toSmartAccount.js","sourceRoot":"","sources":["../../../account-abstraction/accounts/toSmartAccount.ts"],"names":[],"mappings":"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"}
|
@@ -9,28 +9,31 @@ const userOperationGas_js_1 = require("../../utils/formatters/userOperationGas.j
|
|
9
9
|
const userOperationRequest_js_1 = require("../../utils/formatters/userOperationRequest.js");
|
10
10
|
const prepareUserOperation_js_1 = require("./prepareUserOperation.js");
|
11
11
|
async function estimateUserOperationGas(client, parameters) {
|
12
|
-
const { account: account_ = client.account } = parameters;
|
13
|
-
if (!account_)
|
12
|
+
const { account: account_ = client.account, entryPointAddress } = parameters;
|
13
|
+
if (!account_ && !parameters.sender)
|
14
14
|
throw new account_js_1.AccountNotFoundError();
|
15
|
-
const account = (0, parseAccount_js_1.parseAccount)(account_);
|
16
|
-
const request =
|
17
|
-
|
18
|
-
|
19
|
-
|
15
|
+
const account = account_ ? (0, parseAccount_js_1.parseAccount)(account_) : undefined;
|
16
|
+
const request = account
|
17
|
+
? await (0, getAction_js_1.getAction)(client, prepareUserOperation_js_1.prepareUserOperation, 'prepareUserOperation')({
|
18
|
+
...parameters,
|
19
|
+
parameters: ['factory', 'nonce', 'paymaster', 'signature'],
|
20
|
+
})
|
21
|
+
: parameters;
|
20
22
|
try {
|
21
23
|
const result = await client.request({
|
22
24
|
method: 'eth_estimateUserOperationGas',
|
23
25
|
params: [
|
24
26
|
(0, userOperationRequest_js_1.formatUserOperationRequest)(request),
|
25
|
-
account
|
27
|
+
(entryPointAddress ?? account?.entryPoint?.address),
|
26
28
|
],
|
27
29
|
});
|
28
30
|
return (0, userOperationGas_js_1.formatUserOperationGas)(result);
|
29
31
|
}
|
30
32
|
catch (error) {
|
33
|
+
const calls = parameters.calls;
|
31
34
|
throw (0, getUserOperationError_js_1.getUserOperationError)(error, {
|
32
35
|
...request,
|
33
|
-
calls:
|
36
|
+
...(calls ? { calls } : {}),
|
34
37
|
});
|
35
38
|
}
|
36
39
|
}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"estimateUserOperationGas.js","sourceRoot":"","sources":["../../../../account-abstraction/actions/bundler/estimateUserOperationGas.ts"],"names":[],"mappings":";;
|
1
|
+
{"version":3,"file":"estimateUserOperationGas.js","sourceRoot":"","sources":["../../../../account-abstraction/actions/bundler/estimateUserOperationGas.ts"],"names":[],"mappings":";;AA+IA,4DA+CC;AA7LD,6EAGgD;AAGhD,2DAAiE;AAYjE,8DAAuD;AAiBvD,0FAAmF;AACnF,oFAGmD;AACnD,4FAGuD;AACvD,uEAIkC;AA8F3B,KAAK,UAAU,wBAAwB,CAK5C,MAAqD,EACrD,UAIC;IAED,MAAM,EAAE,OAAO,EAAE,QAAQ,GAAG,MAAM,CAAC,OAAO,EAAE,iBAAiB,EAAE,GAAG,UAAU,CAAA;IAE5E,IAAI,CAAC,QAAQ,IAAI,CAAC,UAAU,CAAC,MAAM;QAAE,MAAM,IAAI,iCAAoB,EAAE,CAAA;IACrE,MAAM,OAAO,GAAG,QAAQ,CAAC,CAAC,CAAC,IAAA,8BAAY,EAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;IAE7D,MAAM,OAAO,GAAG,OAAO;QACrB,CAAC,CAAC,MAAM,IAAA,wBAAS,EACb,MAAM,EACN,8CAAoB,EACpB,sBAAsB,CACvB,CAAC;YACA,GAAG,UAAU;YACb,UAAU,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,WAAW,EAAE,WAAW,CAAC;SACd,CAAC;QACjD,CAAC,CAAC,UAAU,CAAA;IAEd,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC;YAClC,MAAM,EAAE,8BAA8B;YACtC,MAAM,EAAE;gBACN,IAAA,oDAA0B,EAAC,OAAwB,CAAC;gBACpD,CAAC,iBAAiB,IAAI,OAAO,EAAE,UAAU,EAAE,OAAO,CAAE;aACrD;SACF,CAAC,CAAA;QACF,OAAO,IAAA,4CAAsB,EAAC,MAAM,CAGnC,CAAA;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,KAAK,GAAI,UAAkB,CAAC,KAAK,CAAA;QACvC,MAAM,IAAA,gDAAqB,EAAC,KAAkB,EAAE;YAC9C,GAAI,OAAyB;YAC7B,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC5B,CAAC,CAAA;IACJ,CAAC;AACH,CAAC"}
|
@@ -8,13 +8,15 @@ const getUserOperationError_js_1 = require("../../utils/errors/getUserOperationE
|
|
8
8
|
const userOperationRequest_js_1 = require("../../utils/formatters/userOperationRequest.js");
|
9
9
|
const prepareUserOperation_js_1 = require("./prepareUserOperation.js");
|
10
10
|
async function sendUserOperation(client, parameters) {
|
11
|
-
const { account: account_ = client.account } = parameters;
|
12
|
-
if (!account_)
|
11
|
+
const { account: account_ = client.account, entryPointAddress } = parameters;
|
12
|
+
if (!account_ && !parameters.sender)
|
13
13
|
throw new account_js_1.AccountNotFoundError();
|
14
|
-
const account = (0, parseAccount_js_1.parseAccount)(account_);
|
15
|
-
const request =
|
16
|
-
|
17
|
-
|
14
|
+
const account = account_ ? (0, parseAccount_js_1.parseAccount)(account_) : undefined;
|
15
|
+
const request = account
|
16
|
+
? await (0, getAction_js_1.getAction)(client, prepareUserOperation_js_1.prepareUserOperation, 'prepareUserOperation')(parameters)
|
17
|
+
: parameters;
|
18
|
+
const signature = (parameters.signature ||
|
19
|
+
(await account?.signUserOperation(request)));
|
18
20
|
const rpcParameters = (0, userOperationRequest_js_1.formatUserOperationRequest)({
|
19
21
|
...request,
|
20
22
|
signature,
|
@@ -22,13 +24,17 @@ async function sendUserOperation(client, parameters) {
|
|
22
24
|
try {
|
23
25
|
return await client.request({
|
24
26
|
method: 'eth_sendUserOperation',
|
25
|
-
params: [
|
27
|
+
params: [
|
28
|
+
rpcParameters,
|
29
|
+
(entryPointAddress ?? account?.entryPoint.address),
|
30
|
+
],
|
26
31
|
}, { retryCount: 0 });
|
27
32
|
}
|
28
33
|
catch (error) {
|
34
|
+
const calls = parameters.calls;
|
29
35
|
throw (0, getUserOperationError_js_1.getUserOperationError)(error, {
|
30
36
|
...request,
|
31
|
-
calls:
|
37
|
+
...(calls ? { calls } : {}),
|
32
38
|
signature,
|
33
39
|
});
|
34
40
|
}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"sendUserOperation.js","sourceRoot":"","sources":["../../../../account-abstraction/actions/bundler/sendUserOperation.ts"],"names":[],"mappings":";;
|
1
|
+
{"version":3,"file":"sendUserOperation.js","sourceRoot":"","sources":["../../../../account-abstraction/actions/bundler/sendUserOperation.ts"],"names":[],"mappings":";;AAqHA,8CAgDC;AApKD,6EAAsE;AAGtE,2DAAiE;AAOjE,8DAAuD;AAgBvD,0FAAmF;AACnF,4FAGuD;AACvD,uEAIkC;AAiF3B,KAAK,UAAU,iBAAiB,CAKrC,MAAqD,EACrD,UAAwE;IAExE,MAAM,EAAE,OAAO,EAAE,QAAQ,GAAG,MAAM,CAAC,OAAO,EAAE,iBAAiB,EAAE,GAAG,UAAU,CAAA;IAE5E,IAAI,CAAC,QAAQ,IAAI,CAAC,UAAU,CAAC,MAAM;QAAE,MAAM,IAAI,iCAAoB,EAAE,CAAA;IACrE,MAAM,OAAO,GAAG,QAAQ,CAAC,CAAC,CAAC,IAAA,8BAAY,EAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;IAE7D,MAAM,OAAO,GAAG,OAAO;QACrB,CAAC,CAAC,MAAM,IAAA,wBAAS,EACb,MAAM,EACN,8CAAoB,EACpB,sBAAsB,CACvB,CAAC,UAAuD,CAAC;QAC5D,CAAC,CAAC,UAAU,CAAA;IAEd,MAAM,SAAS,GAAG,CAAC,UAAU,CAAC,SAAS;QACrC,CAAC,MAAM,OAAO,EAAE,iBAAiB,CAAC,OAAwB,CAAC,CAAC,CAAE,CAAA;IAEhE,MAAM,aAAa,GAAG,IAAA,oDAA0B,EAAC;QAC/C,GAAG,OAAO;QACV,SAAS;KACO,CAAC,CAAA;IAEnB,IAAI,CAAC;QACH,OAAO,MAAM,MAAM,CAAC,OAAO,CACzB;YACE,MAAM,EAAE,uBAAuB;YAC/B,MAAM,EAAE;gBACN,aAAa;gBACb,CAAC,iBAAiB,IAAI,OAAO,EAAE,UAAU,CAAC,OAAO,CAAE;aACpD;SACF,EACD,EAAE,UAAU,EAAE,CAAC,EAAE,CAClB,CAAA;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,KAAK,GAAI,UAAkB,CAAC,KAAK,CAAA;QACvC,MAAM,IAAA,gDAAqB,EAAC,KAAkB,EAAE;YAC9C,GAAI,OAAyB;YAC7B,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC3B,SAAS;SACV,CAAC,CAAA;IACJ,CAAC;AACH,CAAC"}
|
package/_cjs/errors/version.js
CHANGED
@@ -4,26 +4,41 @@ exports.sendCalls = sendCalls;
|
|
4
4
|
const parseAccount_js_1 = require("../../../accounts/utils/parseAccount.js");
|
5
5
|
const account_js_1 = require("../../../errors/account.js");
|
6
6
|
const chain_js_1 = require("../../../errors/chain.js");
|
7
|
+
const encodeFunctionData_js_1 = require("../../../utils/abi/encodeFunctionData.js");
|
7
8
|
const toHex_js_1 = require("../../../utils/encoding/toHex.js");
|
8
9
|
const getTransactionError_js_1 = require("../../../utils/errors/getTransactionError.js");
|
9
10
|
async function sendCalls(client, parameters) {
|
10
|
-
const { account: account_ = client.account,
|
11
|
+
const { account: account_ = client.account, capabilities, chain = client.chain, version = '1.0', } = parameters;
|
11
12
|
if (!account_)
|
12
13
|
throw new account_js_1.AccountNotFoundError({
|
13
14
|
docsPath: '/experimental/eip5792/sendCalls',
|
14
15
|
});
|
15
16
|
const account = (0, parseAccount_js_1.parseAccount)(account_);
|
16
|
-
|
17
|
-
|
17
|
+
const calls = parameters.calls.map((call_) => {
|
18
|
+
const call = call_;
|
19
|
+
const chainId = call.chain?.id ?? call.chainId ?? chain?.id;
|
20
|
+
if (!chainId)
|
21
|
+
throw new chain_js_1.ChainNotFoundError();
|
22
|
+
const data = call.abi
|
23
|
+
? (0, encodeFunctionData_js_1.encodeFunctionData)({
|
24
|
+
abi: call.abi,
|
25
|
+
functionName: call.functionName,
|
26
|
+
args: call.args,
|
27
|
+
})
|
28
|
+
: call.data;
|
29
|
+
return {
|
30
|
+
chainId: (0, toHex_js_1.numberToHex)(chainId),
|
31
|
+
data,
|
32
|
+
to: call.to,
|
33
|
+
value: call.value ? (0, toHex_js_1.numberToHex)(call.value) : undefined,
|
34
|
+
};
|
35
|
+
});
|
18
36
|
try {
|
19
37
|
return await client.request({
|
20
38
|
method: 'wallet_sendCalls',
|
21
39
|
params: [
|
22
40
|
{
|
23
|
-
calls
|
24
|
-
...call,
|
25
|
-
value: call.value ? (0, toHex_js_1.numberToHex)(call.value) : undefined,
|
26
|
-
})),
|
41
|
+
calls,
|
27
42
|
capabilities,
|
28
43
|
chainId: (0, toHex_js_1.numberToHex)(chain.id),
|
29
44
|
from: account.address,
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"sendCalls.js","sourceRoot":"","sources":["../../../../experimental/eip5792/actions/sendCalls.ts"],"names":[],"mappings":";;
|
1
|
+
{"version":3,"file":"sendCalls.js","sourceRoot":"","sources":["../../../../experimental/eip5792/actions/sendCalls.ts"],"names":[],"mappings":";;AA2EA,8BAmEC;AA7ID,6EAAsE;AAGtE,2DAAiE;AAEjE,uDAA6D;AAY7D,oFAA6E;AAE7E,+DAA8D;AAC9D,yFAAkF;AAsD3E,KAAK,UAAU,SAAS,CAM7B,MAAyC,EACzC,UAAqE;IAErE,MAAM,EACJ,OAAO,EAAE,QAAQ,GAAG,MAAM,CAAC,OAAO,EAClC,YAAY,EACZ,KAAK,GAAG,MAAM,CAAC,KAAK,EACpB,OAAO,GAAG,KAAK,GAChB,GAAG,UAAU,CAAA;IAEd,IAAI,CAAC,QAAQ;QACX,MAAM,IAAI,iCAAoB,CAAC;YAC7B,QAAQ,EAAE,iCAAiC;SAC5C,CAAC,CAAA;IACJ,MAAM,OAAO,GAAG,IAAA,8BAAY,EAAC,QAAQ,CAAC,CAAA;IAEtC,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAc,EAAE,EAAE;QACpD,MAAM,IAAI,GAAG,KAAa,CAAA;QAE1B,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,EAAE,EAAE,IAAI,IAAI,CAAC,OAAO,IAAI,KAAK,EAAE,EAAE,CAAA;QAC3D,IAAI,CAAC,OAAO;YAAE,MAAM,IAAI,6BAAkB,EAAE,CAAA;QAE5C,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG;YACnB,CAAC,CAAC,IAAA,0CAAkB,EAAC;gBACjB,GAAG,EAAE,IAAI,CAAC,GAAG;gBACb,YAAY,EAAE,IAAI,CAAC,YAAY;gBAC/B,IAAI,EAAE,IAAI,CAAC,IAAI;aAChB,CAAC;YACJ,CAAC,CAAC,IAAI,CAAC,IAAI,CAAA;QAEb,OAAO;YACL,OAAO,EAAE,IAAA,sBAAW,EAAC,OAAO,CAAC;YAC7B,IAAI;YACJ,EAAE,EAAE,IAAI,CAAC,EAAE;YACX,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,IAAA,sBAAW,EAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS;SACxD,CAAA;IACH,CAAC,CAAC,CAAA;IAEF,IAAI,CAAC;QACH,OAAO,MAAM,MAAM,CAAC,OAAO,CACzB;YACE,MAAM,EAAE,kBAAkB;YAC1B,MAAM,EAAE;gBACN;oBACE,KAAK;oBACL,YAAY;oBACZ,OAAO,EAAE,IAAA,sBAAW,EAAC,KAAM,CAAC,EAAE,CAAC;oBAC/B,IAAI,EAAE,OAAO,CAAC,OAAO;oBACrB,OAAO;iBACR;aACF;SACF,EACD,EAAE,UAAU,EAAE,CAAC,EAAE,CAClB,CAAA;IACH,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,IAAA,4CAAmB,EAAC,GAAgB,EAAE;YAC1C,GAAG,UAAU;YACb,OAAO;YACP,KAAK,EAAE,UAAU,CAAC,KAAM;SACzB,CAAC,CAAA;IACJ,CAAC;AACH,CAAC"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"writeContracts.js","sourceRoot":"","sources":["../../../../experimental/eip5792/actions/writeContracts.ts"],"names":[],"mappings":";;
|
1
|
+
{"version":3,"file":"writeContracts.js","sourceRoot":"","sources":["../../../../experimental/eip5792/actions/writeContracts.ts"],"names":[],"mappings":";;AAgGA,wCAgCC;AAjHD,oFAGiD;AACjD,8DAAuD;AACvD,iDAKuB;AAuEhB,KAAK,UAAU,cAAc,CAMlC,MAAgC,EAChC,UAKC;IAED,MAAM,SAAS,GAAG,UAAU,CAAC,SAA8C,CAAA;IAC3E,MAAM,KAAK,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE;QACvC,MAAM,EAAE,OAAO,EAAE,GAAG,EAAE,YAAY,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,QAAQ,CAAA;QAC5D,OAAO;YACL,IAAI,EAAE,IAAA,0CAAkB,EAAC;gBACvB,GAAG;gBACH,YAAY;gBACZ,IAAI;aACL,CAAC;YACF,EAAE,EAAE,OAAO;YACX,KAAK;SACyC,CAAA;IAClD,CAAC,CAAC,CAAA;IACF,OAAO,IAAA,wBAAS,EACd,MAAM,EACN,wBAAS,EACT,WAAW,CACZ,CAAC,EAAE,GAAG,UAAU,EAAE,KAAK,EAAyB,CAAC,CAAA;AACpD,CAAC"}
|
@@ -47,11 +47,17 @@ async function getTimeToFinalize(client, parameters) {
|
|
47
47
|
const timestamp = Date.now() + seconds * 1000;
|
48
48
|
return { period: Number(period), seconds, timestamp };
|
49
49
|
}
|
50
|
+
const numProofSubmitters = await (0, readContract_js_1.readContract)(client, {
|
51
|
+
abi: abis_js_1.portal2Abi,
|
52
|
+
address: portalAddress,
|
53
|
+
functionName: 'numProofSubmitters',
|
54
|
+
args: [withdrawalHash],
|
55
|
+
}).catch(() => 1n);
|
50
56
|
const proofSubmitter = await (0, readContract_js_1.readContract)(client, {
|
51
57
|
abi: abis_js_1.portal2Abi,
|
52
58
|
address: portalAddress,
|
53
59
|
functionName: 'proofSubmitters',
|
54
|
-
args: [withdrawalHash,
|
60
|
+
args: [withdrawalHash, numProofSubmitters - 1n],
|
55
61
|
}).catch(() => undefined);
|
56
62
|
const [[_disputeGameProxy, proveTimestamp], proofMaturityDelaySeconds] = await Promise.all([
|
57
63
|
proofSubmitter
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"getTimeToFinalize.js","sourceRoot":"","sources":["../../../op-stack/actions/getTimeToFinalize.ts"],"names":[],"mappings":";;AA2EA,
|
1
|
+
{"version":3,"file":"getTimeToFinalize.js","sourceRoot":"","sources":["../../../op-stack/actions/getTimeToFinalize.ts"],"names":[],"mappings":"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"}
|
@@ -72,11 +72,17 @@ async function getWithdrawalStatus(client, parameters) {
|
|
72
72
|
const { seconds } = timeToFinalizeResult.value;
|
73
73
|
return seconds > 0 ? 'waiting-to-finalize' : 'ready-to-finalize';
|
74
74
|
}
|
75
|
+
const numProofSubmitters = await (0, readContract_js_1.readContract)(client, {
|
76
|
+
abi: abis_js_1.portal2Abi,
|
77
|
+
address: portalAddress,
|
78
|
+
functionName: 'numProofSubmitters',
|
79
|
+
args: [withdrawal.withdrawalHash],
|
80
|
+
}).catch(() => 1n);
|
75
81
|
const proofSubmitter = await (0, readContract_js_1.readContract)(client, {
|
76
82
|
abi: abis_js_1.portal2Abi,
|
77
83
|
address: portalAddress,
|
78
84
|
functionName: 'proofSubmitters',
|
79
|
-
args: [withdrawal.withdrawalHash,
|
85
|
+
args: [withdrawal.withdrawalHash, numProofSubmitters - 1n],
|
80
86
|
}).catch(() => withdrawal.sender);
|
81
87
|
const [disputeGameResult, checkWithdrawalResult, finalizedResult] = await Promise.allSettled([
|
82
88
|
(0, getGame_js_1.getGame)(client, {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"getWithdrawalStatus.js","sourceRoot":"","sources":["../../../op-stack/actions/getWithdrawalStatus.ts"],"names":[],"mappings":";;AA+GA,
|
1
|
+
{"version":3,"file":"getWithdrawalStatus.js","sourceRoot":"","sources":["../../../op-stack/actions/getWithdrawalStatus.ts"],"names":[],"mappings":"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"}
|
@@ -11,17 +11,16 @@ import { serializeErc6492Signature } from '../../utils/signature/serializeErc649
|
|
11
11
|
* @returns A Smart Account. {@link ToSmartAccountReturnType}
|
12
12
|
*/
|
13
13
|
export async function toSmartAccount(implementation) {
|
14
|
-
const { extend,
|
15
|
-
let deployed = false;
|
16
|
-
const address = await implementation.getAddress();
|
17
|
-
const nonceKeyManager = createNonceManager({
|
14
|
+
const { extend, nonceKeyManager = createNonceManager({
|
18
15
|
source: {
|
19
16
|
get() {
|
20
17
|
return Date.now();
|
21
18
|
},
|
22
19
|
set() { },
|
23
20
|
},
|
24
|
-
});
|
21
|
+
}), ...rest } = implementation;
|
22
|
+
let deployed = false;
|
23
|
+
const address = await implementation.getAddress();
|
25
24
|
return {
|
26
25
|
...extend,
|
27
26
|
...rest,
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"toSmartAccount.js","sourceRoot":"","sources":["../../../account-abstraction/accounts/toSmartAccount.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,QAAQ,EAAE,MAAM,SAAS,CAAA;AAE5C,OAAO,EAAE,OAAO,EAAE,MAAM,iCAAiC,CAAA;AACzD,OAAO,EAAE,YAAY,EAAE,MAAM,sCAAsC,CAAA;AAEnE,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAA;AACpD,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAA;AAChE,OAAO,EAAE,yBAAyB,EAAE,MAAM,oDAAoD,CAAA;AAe9F;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAGlC,cAA8B;IAE9B,MAAM,
|
1
|
+
{"version":3,"file":"toSmartAccount.js","sourceRoot":"","sources":["../../../account-abstraction/accounts/toSmartAccount.ts"],"names":[],"mappings":"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"}
|
@@ -33,28 +33,31 @@ import { prepareUserOperation, } from './prepareUserOperation.js';
|
|
33
33
|
* })
|
34
34
|
*/
|
35
35
|
export async function estimateUserOperationGas(client, parameters) {
|
36
|
-
const { account: account_ = client.account } = parameters;
|
37
|
-
if (!account_)
|
36
|
+
const { account: account_ = client.account, entryPointAddress } = parameters;
|
37
|
+
if (!account_ && !parameters.sender)
|
38
38
|
throw new AccountNotFoundError();
|
39
|
-
const account = parseAccount(account_);
|
40
|
-
const request =
|
41
|
-
|
42
|
-
|
43
|
-
|
39
|
+
const account = account_ ? parseAccount(account_) : undefined;
|
40
|
+
const request = account
|
41
|
+
? await getAction(client, prepareUserOperation, 'prepareUserOperation')({
|
42
|
+
...parameters,
|
43
|
+
parameters: ['factory', 'nonce', 'paymaster', 'signature'],
|
44
|
+
})
|
45
|
+
: parameters;
|
44
46
|
try {
|
45
47
|
const result = await client.request({
|
46
48
|
method: 'eth_estimateUserOperationGas',
|
47
49
|
params: [
|
48
50
|
formatUserOperationRequest(request),
|
49
|
-
account
|
51
|
+
(entryPointAddress ?? account?.entryPoint?.address),
|
50
52
|
],
|
51
53
|
});
|
52
54
|
return formatUserOperationGas(result);
|
53
55
|
}
|
54
56
|
catch (error) {
|
57
|
+
const calls = parameters.calls;
|
55
58
|
throw getUserOperationError(error, {
|
56
59
|
...request,
|
57
|
-
calls:
|
60
|
+
...(calls ? { calls } : {}),
|
58
61
|
});
|
59
62
|
}
|
60
63
|
}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"estimateUserOperationGas.js","sourceRoot":"","sources":["../../../../account-abstraction/actions/bundler/estimateUserOperationGas.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,YAAY,GACb,MAAM,yCAAyC,CAAA;AAGhD,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAA;
|
1
|
+
{"version":3,"file":"estimateUserOperationGas.js","sourceRoot":"","sources":["../../../../account-abstraction/actions/bundler/estimateUserOperationGas.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,YAAY,GACb,MAAM,yCAAyC,CAAA;AAGhD,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAA;AAYjE,OAAO,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAA;AAiBvD,OAAO,EAAE,qBAAqB,EAAE,MAAM,6CAA6C,CAAA;AACnF,OAAO,EAEL,sBAAsB,GACvB,MAAM,4CAA4C,CAAA;AACnD,OAAO,EAEL,0BAA0B,GAC3B,MAAM,gDAAgD,CAAA;AACvD,OAAO,EAGL,oBAAoB,GACrB,MAAM,2BAA2B,CAAA;AAmElC;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAK5C,MAAqD,EACrD,UAIC;IAED,MAAM,EAAE,OAAO,EAAE,QAAQ,GAAG,MAAM,CAAC,OAAO,EAAE,iBAAiB,EAAE,GAAG,UAAU,CAAA;IAE5E,IAAI,CAAC,QAAQ,IAAI,CAAC,UAAU,CAAC,MAAM;QAAE,MAAM,IAAI,oBAAoB,EAAE,CAAA;IACrE,MAAM,OAAO,GAAG,QAAQ,CAAC,CAAC,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;IAE7D,MAAM,OAAO,GAAG,OAAO;QACrB,CAAC,CAAC,MAAM,SAAS,CACb,MAAM,EACN,oBAAoB,EACpB,sBAAsB,CACvB,CAAC;YACA,GAAG,UAAU;YACb,UAAU,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,WAAW,EAAE,WAAW,CAAC;SACd,CAAC;QACjD,CAAC,CAAC,UAAU,CAAA;IAEd,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC;YAClC,MAAM,EAAE,8BAA8B;YACtC,MAAM,EAAE;gBACN,0BAA0B,CAAC,OAAwB,CAAC;gBACpD,CAAC,iBAAiB,IAAI,OAAO,EAAE,UAAU,EAAE,OAAO,CAAE;aACrD;SACF,CAAC,CAAA;QACF,OAAO,sBAAsB,CAAC,MAAM,CAGnC,CAAA;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,KAAK,GAAI,UAAkB,CAAC,KAAK,CAAA;QACvC,MAAM,qBAAqB,CAAC,KAAkB,EAAE;YAC9C,GAAI,OAAyB;YAC7B,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC5B,CAAC,CAAA;IACJ,CAAC;AACH,CAAC"}
|
@@ -32,13 +32,15 @@ import { prepareUserOperation, } from './prepareUserOperation.js';
|
|
32
32
|
* })
|
33
33
|
*/
|
34
34
|
export async function sendUserOperation(client, parameters) {
|
35
|
-
const { account: account_ = client.account } = parameters;
|
36
|
-
if (!account_)
|
35
|
+
const { account: account_ = client.account, entryPointAddress } = parameters;
|
36
|
+
if (!account_ && !parameters.sender)
|
37
37
|
throw new AccountNotFoundError();
|
38
|
-
const account = parseAccount(account_);
|
39
|
-
const request =
|
40
|
-
|
41
|
-
|
38
|
+
const account = account_ ? parseAccount(account_) : undefined;
|
39
|
+
const request = account
|
40
|
+
? await getAction(client, prepareUserOperation, 'prepareUserOperation')(parameters)
|
41
|
+
: parameters;
|
42
|
+
const signature = (parameters.signature ||
|
43
|
+
(await account?.signUserOperation(request)));
|
42
44
|
const rpcParameters = formatUserOperationRequest({
|
43
45
|
...request,
|
44
46
|
signature,
|
@@ -46,13 +48,17 @@ export async function sendUserOperation(client, parameters) {
|
|
46
48
|
try {
|
47
49
|
return await client.request({
|
48
50
|
method: 'eth_sendUserOperation',
|
49
|
-
params: [
|
51
|
+
params: [
|
52
|
+
rpcParameters,
|
53
|
+
(entryPointAddress ?? account?.entryPoint.address),
|
54
|
+
],
|
50
55
|
}, { retryCount: 0 });
|
51
56
|
}
|
52
57
|
catch (error) {
|
58
|
+
const calls = parameters.calls;
|
53
59
|
throw getUserOperationError(error, {
|
54
60
|
...request,
|
55
|
-
calls:
|
61
|
+
...(calls ? { calls } : {}),
|
56
62
|
signature,
|
57
63
|
});
|
58
64
|
}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"sendUserOperation.js","sourceRoot":"","sources":["../../../../account-abstraction/actions/bundler/sendUserOperation.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,yCAAyC,CAAA;AAGtE,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAA;AAOjE,OAAO,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAA;AAgBvD,OAAO,EAAE,qBAAqB,EAAE,MAAM,6CAA6C,CAAA;AACnF,OAAO,EAEL,0BAA0B,GAC3B,MAAM,gDAAgD,CAAA;AACvD,OAAO,EAGL,oBAAoB,GACrB,MAAM,2BAA2B,CAAA;
|
1
|
+
{"version":3,"file":"sendUserOperation.js","sourceRoot":"","sources":["../../../../account-abstraction/actions/bundler/sendUserOperation.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,yCAAyC,CAAA;AAGtE,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAA;AAOjE,OAAO,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAA;AAgBvD,OAAO,EAAE,qBAAqB,EAAE,MAAM,6CAA6C,CAAA;AACnF,OAAO,EAEL,0BAA0B,GAC3B,MAAM,gDAAgD,CAAA;AACvD,OAAO,EAGL,oBAAoB,GACrB,MAAM,2BAA2B,CAAA;AAsDlC;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAKrC,MAAqD,EACrD,UAAwE;IAExE,MAAM,EAAE,OAAO,EAAE,QAAQ,GAAG,MAAM,CAAC,OAAO,EAAE,iBAAiB,EAAE,GAAG,UAAU,CAAA;IAE5E,IAAI,CAAC,QAAQ,IAAI,CAAC,UAAU,CAAC,MAAM;QAAE,MAAM,IAAI,oBAAoB,EAAE,CAAA;IACrE,MAAM,OAAO,GAAG,QAAQ,CAAC,CAAC,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;IAE7D,MAAM,OAAO,GAAG,OAAO;QACrB,CAAC,CAAC,MAAM,SAAS,CACb,MAAM,EACN,oBAAoB,EACpB,sBAAsB,CACvB,CAAC,UAAuD,CAAC;QAC5D,CAAC,CAAC,UAAU,CAAA;IAEd,MAAM,SAAS,GAAG,CAAC,UAAU,CAAC,SAAS;QACrC,CAAC,MAAM,OAAO,EAAE,iBAAiB,CAAC,OAAwB,CAAC,CAAC,CAAE,CAAA;IAEhE,MAAM,aAAa,GAAG,0BAA0B,CAAC;QAC/C,GAAG,OAAO;QACV,SAAS;KACO,CAAC,CAAA;IAEnB,IAAI,CAAC;QACH,OAAO,MAAM,MAAM,CAAC,OAAO,CACzB;YACE,MAAM,EAAE,uBAAuB;YAC/B,MAAM,EAAE;gBACN,aAAa;gBACb,CAAC,iBAAiB,IAAI,OAAO,EAAE,UAAU,CAAC,OAAO,CAAE;aACpD;SACF,EACD,EAAE,UAAU,EAAE,CAAC,EAAE,CAClB,CAAA;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,KAAK,GAAI,UAAkB,CAAC,KAAK,CAAA;QACvC,MAAM,qBAAqB,CAAC,KAAkB,EAAE;YAC9C,GAAI,OAAyB;YAC7B,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC3B,SAAS;SACV,CAAC,CAAA;IACJ,CAAC;AACH,CAAC"}
|
package/_esm/errors/version.js
CHANGED
@@ -1,2 +1,2 @@
|
|
1
|
-
export const version = '2.
|
1
|
+
export const version = '2.20.0';
|
2
2
|
//# sourceMappingURL=version.js.map
|
@@ -1,6 +1,7 @@
|
|
1
1
|
import { parseAccount } from '../../../accounts/utils/parseAccount.js';
|
2
2
|
import { AccountNotFoundError } from '../../../errors/account.js';
|
3
3
|
import { ChainNotFoundError } from '../../../errors/chain.js';
|
4
|
+
import { encodeFunctionData } from '../../../utils/abi/encodeFunctionData.js';
|
4
5
|
import { numberToHex } from '../../../utils/encoding/toHex.js';
|
5
6
|
import { getTransactionError } from '../../../utils/errors/getTransactionError.js';
|
6
7
|
/**
|
@@ -36,23 +37,37 @@ import { getTransactionError } from '../../../utils/errors/getTransactionError.j
|
|
36
37
|
* })
|
37
38
|
*/
|
38
39
|
export async function sendCalls(client, parameters) {
|
39
|
-
const { account: account_ = client.account,
|
40
|
+
const { account: account_ = client.account, capabilities, chain = client.chain, version = '1.0', } = parameters;
|
40
41
|
if (!account_)
|
41
42
|
throw new AccountNotFoundError({
|
42
43
|
docsPath: '/experimental/eip5792/sendCalls',
|
43
44
|
});
|
44
45
|
const account = parseAccount(account_);
|
45
|
-
|
46
|
-
|
46
|
+
const calls = parameters.calls.map((call_) => {
|
47
|
+
const call = call_;
|
48
|
+
const chainId = call.chain?.id ?? call.chainId ?? chain?.id;
|
49
|
+
if (!chainId)
|
50
|
+
throw new ChainNotFoundError();
|
51
|
+
const data = call.abi
|
52
|
+
? encodeFunctionData({
|
53
|
+
abi: call.abi,
|
54
|
+
functionName: call.functionName,
|
55
|
+
args: call.args,
|
56
|
+
})
|
57
|
+
: call.data;
|
58
|
+
return {
|
59
|
+
chainId: numberToHex(chainId),
|
60
|
+
data,
|
61
|
+
to: call.to,
|
62
|
+
value: call.value ? numberToHex(call.value) : undefined,
|
63
|
+
};
|
64
|
+
});
|
47
65
|
try {
|
48
66
|
return await client.request({
|
49
67
|
method: 'wallet_sendCalls',
|
50
68
|
params: [
|
51
69
|
{
|
52
|
-
calls
|
53
|
-
...call,
|
54
|
-
value: call.value ? numberToHex(call.value) : undefined,
|
55
|
-
})),
|
70
|
+
calls,
|
56
71
|
capabilities,
|
57
72
|
chainId: numberToHex(chain.id),
|
58
73
|
from: account.address,
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"sendCalls.js","sourceRoot":"","sources":["../../../../experimental/eip5792/actions/sendCalls.ts"],"names":[],"mappings":"
|
1
|
+
{"version":3,"file":"sendCalls.js","sourceRoot":"","sources":["../../../../experimental/eip5792/actions/sendCalls.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,yCAAyC,CAAA;AAGtE,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAA;AAEjE,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAA;AAY7D,OAAO,EAAE,kBAAkB,EAAE,MAAM,0CAA0C,CAAA;AAE7E,OAAO,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAA;AAC9D,OAAO,EAAE,mBAAmB,EAAE,MAAM,8CAA8C,CAAA;AAsBlF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,MAAM,CAAC,KAAK,UAAU,SAAS,CAM7B,MAAyC,EACzC,UAAqE;IAErE,MAAM,EACJ,OAAO,EAAE,QAAQ,GAAG,MAAM,CAAC,OAAO,EAClC,YAAY,EACZ,KAAK,GAAG,MAAM,CAAC,KAAK,EACpB,OAAO,GAAG,KAAK,GAChB,GAAG,UAAU,CAAA;IAEd,IAAI,CAAC,QAAQ;QACX,MAAM,IAAI,oBAAoB,CAAC;YAC7B,QAAQ,EAAE,iCAAiC;SAC5C,CAAC,CAAA;IACJ,MAAM,OAAO,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAA;IAEtC,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAc,EAAE,EAAE;QACpD,MAAM,IAAI,GAAG,KAAa,CAAA;QAE1B,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,EAAE,EAAE,IAAI,IAAI,CAAC,OAAO,IAAI,KAAK,EAAE,EAAE,CAAA;QAC3D,IAAI,CAAC,OAAO;YAAE,MAAM,IAAI,kBAAkB,EAAE,CAAA;QAE5C,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG;YACnB,CAAC,CAAC,kBAAkB,CAAC;gBACjB,GAAG,EAAE,IAAI,CAAC,GAAG;gBACb,YAAY,EAAE,IAAI,CAAC,YAAY;gBAC/B,IAAI,EAAE,IAAI,CAAC,IAAI;aAChB,CAAC;YACJ,CAAC,CAAC,IAAI,CAAC,IAAI,CAAA;QAEb,OAAO;YACL,OAAO,EAAE,WAAW,CAAC,OAAO,CAAC;YAC7B,IAAI;YACJ,EAAE,EAAE,IAAI,CAAC,EAAE;YACX,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS;SACxD,CAAA;IACH,CAAC,CAAC,CAAA;IAEF,IAAI,CAAC;QACH,OAAO,MAAM,MAAM,CAAC,OAAO,CACzB;YACE,MAAM,EAAE,kBAAkB;YAC1B,MAAM,EAAE;gBACN;oBACE,KAAK;oBACL,YAAY;oBACZ,OAAO,EAAE,WAAW,CAAC,KAAM,CAAC,EAAE,CAAC;oBAC/B,IAAI,EAAE,OAAO,CAAC,OAAO;oBACrB,OAAO;iBACR;aACF;SACF,EACD,EAAE,UAAU,EAAE,CAAC,EAAE,CAClB,CAAA;IACH,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,mBAAmB,CAAC,GAAgB,EAAE;YAC1C,GAAG,UAAU;YACb,OAAO;YACP,KAAK,EAAE,UAAU,CAAC,KAAM;SACzB,CAAC,CAAA;IACJ,CAAC;AACH,CAAC"}
|
@@ -2,6 +2,8 @@ import { encodeFunctionData, } from '../../../utils/abi/encodeFunctionData.js';
|
|
2
2
|
import { getAction } from '../../../utils/getAction.js';
|
3
3
|
import { sendCalls, } from './sendCalls.js';
|
4
4
|
/**
|
5
|
+
* @deprecated Use {@link sendCalls} instead. See https://viem.sh/experimental/eip5792/sendCalls#contract-calls.
|
6
|
+
*
|
5
7
|
* Requests for the wallet to sign and broadcast a batch of write contract calls (transactions) to the network.
|
6
8
|
*
|
7
9
|
* - Docs: https://viem.sh/experimental/eip5792/writeContracts
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"writeContracts.js","sourceRoot":"","sources":["../../../../experimental/eip5792/actions/writeContracts.ts"],"names":[],"mappings":"AAeA,OAAO,EAEL,kBAAkB,GACnB,MAAM,0CAA0C,CAAA;AACjD,OAAO,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAA;AACvD,OAAO,EAIL,SAAS,GACV,MAAM,gBAAgB,CAAA;AA0BvB
|
1
|
+
{"version":3,"file":"writeContracts.js","sourceRoot":"","sources":["../../../../experimental/eip5792/actions/writeContracts.ts"],"names":[],"mappings":"AAeA,OAAO,EAEL,kBAAkB,GACnB,MAAM,0CAA0C,CAAA;AACjD,OAAO,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAA;AACvD,OAAO,EAIL,SAAS,GACV,MAAM,gBAAgB,CAAA;AA0BvB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4CG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAMlC,MAAgC,EAChC,UAKC;IAED,MAAM,SAAS,GAAG,UAAU,CAAC,SAA8C,CAAA;IAC3E,MAAM,KAAK,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE;QACvC,MAAM,EAAE,OAAO,EAAE,GAAG,EAAE,YAAY,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,QAAQ,CAAA;QAC5D,OAAO;YACL,IAAI,EAAE,kBAAkB,CAAC;gBACvB,GAAG;gBACH,YAAY;gBACZ,IAAI;aACL,CAAC;YACF,EAAE,EAAE,OAAO;YACX,KAAK;SACyC,CAAA;IAClD,CAAC,CAAC,CAAA;IACF,OAAO,SAAS,CACd,MAAM,EACN,SAAS,EACT,WAAW,CACZ,CAAC,EAAE,GAAG,UAAU,EAAE,KAAK,EAAyB,CAAC,CAAA;AACpD,CAAC"}
|
@@ -80,11 +80,17 @@ export async function getTimeToFinalize(client, parameters) {
|
|
80
80
|
const timestamp = Date.now() + seconds * 1000;
|
81
81
|
return { period: Number(period), seconds, timestamp };
|
82
82
|
}
|
83
|
+
const numProofSubmitters = await readContract(client, {
|
84
|
+
abi: portal2Abi,
|
85
|
+
address: portalAddress,
|
86
|
+
functionName: 'numProofSubmitters',
|
87
|
+
args: [withdrawalHash],
|
88
|
+
}).catch(() => 1n);
|
83
89
|
const proofSubmitter = await readContract(client, {
|
84
90
|
abi: portal2Abi,
|
85
91
|
address: portalAddress,
|
86
92
|
functionName: 'proofSubmitters',
|
87
|
-
args: [withdrawalHash,
|
93
|
+
args: [withdrawalHash, numProofSubmitters - 1n],
|
88
94
|
}).catch(() => undefined);
|
89
95
|
const [[_disputeGameProxy, proveTimestamp], proofMaturityDelaySeconds] = await Promise.all([
|
90
96
|
proofSubmitter
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"getTimeToFinalize.js","sourceRoot":"","sources":["../../../op-stack/actions/getTimeToFinalize.ts"],"names":[],"mappings":"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
|
1
|
+
{"version":3,"file":"getTimeToFinalize.js","sourceRoot":"","sources":["../../../op-stack/actions/getTimeToFinalize.ts"],"names":[],"mappings":"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"}
|