@zerodev/sdk 5.3.3 → 5.3.5
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/_cjs/accounts/utils/toKernelPluginManager.js +7 -1
- package/_cjs/accounts/utils/toKernelPluginManager.js.map +1 -1
- package/_cjs/actions/account-client/getKernelV3ModuleCurrentNonce.js +27 -0
- package/_cjs/actions/account-client/getKernelV3ModuleCurrentNonce.js.map +1 -0
- package/_cjs/actions/account-client/invalidateNonce.js +27 -0
- package/_cjs/actions/account-client/invalidateNonce.js.map +1 -0
- package/_cjs/clients/decorators/kernel.js +10 -0
- package/_cjs/clients/decorators/kernel.js.map +1 -1
- package/_esm/accounts/utils/toKernelPluginManager.js +7 -1
- package/_esm/accounts/utils/toKernelPluginManager.js.map +1 -1
- package/_esm/actions/account-client/getKernelV3ModuleCurrentNonce.js +23 -0
- package/_esm/actions/account-client/getKernelV3ModuleCurrentNonce.js.map +1 -0
- package/_esm/actions/account-client/invalidateNonce.js +23 -0
- package/_esm/actions/account-client/invalidateNonce.js.map +1 -0
- package/_esm/clients/decorators/kernel.js +10 -0
- package/_esm/clients/decorators/kernel.js.map +1 -1
- package/_types/accounts/utils/toKernelPluginManager.d.ts.map +1 -1
- package/_types/actions/account-client/getKernelV3ModuleCurrentNonce.d.ts +7 -0
- package/_types/actions/account-client/getKernelV3ModuleCurrentNonce.d.ts.map +1 -0
- package/_types/actions/account-client/invalidateNonce.d.ts +9 -0
- package/_types/actions/account-client/invalidateNonce.d.ts.map +1 -0
- package/_types/clients/decorators/kernel.d.ts +20 -0
- package/_types/clients/decorators/kernel.d.ts.map +1 -1
- package/accounts/utils/toKernelPluginManager.ts +7 -1
- package/actions/account-client/getKernelV3ModuleCurrentNonce.ts +68 -0
- package/actions/account-client/invalidateNonce.ts +68 -0
- package/clients/decorators/kernel.ts +59 -1
- package/package.json +1 -1
|
@@ -26,7 +26,7 @@ async function toKernelPluginManager(client, { sudo, regular, hook, pluginEnable
|
|
|
26
26
|
throw new Error("Either sudo or/and regular validator version mismatch. Update to latest plugin package and use the proper plugin version");
|
|
27
27
|
}
|
|
28
28
|
const entryPointVersion = (0, permissionless_1.getEntryPointVersion)(entryPointAddress);
|
|
29
|
-
|
|
29
|
+
let chainId;
|
|
30
30
|
const activeValidator = regular || sudo;
|
|
31
31
|
if (!activeValidator) {
|
|
32
32
|
throw new Error("One of `sudo` or `regular` validator must be set");
|
|
@@ -119,6 +119,9 @@ async function toKernelPluginManager(client, { sudo, regular, hook, pluginEnable
|
|
|
119
119
|
if (!regular)
|
|
120
120
|
throw new Error("regular validator not set");
|
|
121
121
|
const { version } = await (0, accountMetadata_js_1.accountMetadata)(client, accountAddress, kernelVersion);
|
|
122
|
+
if (!chainId) {
|
|
123
|
+
chainId = await (0, actions_1.getChainId)(client);
|
|
124
|
+
}
|
|
122
125
|
let ownerSig;
|
|
123
126
|
if (entryPointVersion === "v0.6") {
|
|
124
127
|
const typeData = await (0, getPluginsEnableTypedData_js_1.getPluginsEnableTypedData)({
|
|
@@ -165,6 +168,9 @@ async function toKernelPluginManager(client, { sudo, regular, hook, pluginEnable
|
|
|
165
168
|
throw new Error("regular validator not set");
|
|
166
169
|
const { version } = await (0, accountMetadata_js_1.accountMetadata)(client, accountAddress, kernelVersion);
|
|
167
170
|
const validatorNonce = await (0, getKernelV3Nonce_js_1.getKernelV3Nonce)(client, accountAddress);
|
|
171
|
+
if (!chainId) {
|
|
172
|
+
chainId = await (0, actions_1.getChainId)(client);
|
|
173
|
+
}
|
|
168
174
|
const typedData = await (0, getPluginsEnableTypedData_js_2.getPluginsEnableTypedData)({
|
|
169
175
|
accountAddress,
|
|
170
176
|
chainId,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"toKernelPluginManager.js","sourceRoot":"","sources":["../../../accounts/utils/toKernelPluginManager.ts"],"names":[],"mappings":";;;AAAA,mDAAqD;AAErD,mCAAkC;AAClC,+BAaa;AACb,0CAAyC;AACzC,6HAA0J;AAC1J,qDAI2B;AAC3B,qDAI8B;AAC9B,2FAAoF;AACpF,kFAA2E;AAC3E,sFAA+E;AAC/E,qGAAyH;AACzH,6GAAqI;AACrI,qGAAyH;AACzH,6GAAqI;AACrI,iGAA0F;AAE1F,SAAgB,qBAAqB,CAEjC,MAAW;IAEX,OAAO,MAAM,CAAC,wBAAwB,KAAK,SAAS,CAAA;AACxD,CAAC;AALD,sDAKC;AAEM,KAAK,UAAU,qBAAqB,CAKvC,MAA6C,EAC7C,EACI,IAAI,EACJ,OAAO,EACP,IAAI,EACJ,qBAAqB,EACrB,iBAAiB,EACjB,MAAM,EACN,UAAU,GAAG,CAAC,EACd,UAAU,GAAG,CAAC,EACd,UAAU,EAAE,iBAAiB,EAC7B,aAAa,EACuB;IAExC,IACI,CAAC,IAAI,IAAI,CAAC,IAAA,kBAAS,EAAC,aAAa,EAAE,IAAI,EAAE,uBAAuB,CAAC,CAAC;QAClE,CAAC,OAAO,IAAI,CAAC,IAAA,kBAAS,EAAC,aAAa,EAAE,OAAO,EAAE,uBAAuB,CAAC,CAAC,EAC1E,CAAC;QACC,MAAM,IAAI,KAAK,CACX,0HAA0H,CAC7H,CAAA;IACL,CAAC;IACD,MAAM,iBAAiB,GAAG,IAAA,qCAAoB,EAAC,iBAAiB,CAAC,CAAA;IACjE,
|
|
1
|
+
{"version":3,"file":"toKernelPluginManager.js","sourceRoot":"","sources":["../../../accounts/utils/toKernelPluginManager.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getKernelV3ModuleCurrentNonce = void 0;
|
|
4
|
+
const utils_1 = require("permissionless/utils");
|
|
5
|
+
const actions_1 = require("viem/actions");
|
|
6
|
+
const utils_2 = require("viem/utils");
|
|
7
|
+
const KernelAccountAbi_js_1 = require("../../accounts/kernel/abi/kernel_v_3_0_0/KernelAccountAbi.js");
|
|
8
|
+
async function getKernelV3ModuleCurrentNonce(client, args) {
|
|
9
|
+
const { account: account_ = client.account } = args;
|
|
10
|
+
if (!account_)
|
|
11
|
+
throw new utils_1.AccountOrClientNotFoundError();
|
|
12
|
+
const account = (0, utils_1.parseAccount)(account_);
|
|
13
|
+
try {
|
|
14
|
+
const nonce = await (0, utils_2.getAction)(client, actions_1.readContract, "sendTransaction")({
|
|
15
|
+
abi: KernelAccountAbi_js_1.KernelV3AccountAbi,
|
|
16
|
+
address: account.address,
|
|
17
|
+
functionName: "currentNonce",
|
|
18
|
+
args: []
|
|
19
|
+
});
|
|
20
|
+
return nonce;
|
|
21
|
+
}
|
|
22
|
+
catch (error) {
|
|
23
|
+
return 1;
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
exports.getKernelV3ModuleCurrentNonce = getKernelV3ModuleCurrentNonce;
|
|
27
|
+
//# sourceMappingURL=getKernelV3ModuleCurrentNonce.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getKernelV3ModuleCurrentNonce.js","sourceRoot":"","sources":["../../../actions/account-client/getKernelV3ModuleCurrentNonce.ts"],"names":[],"mappings":";;;AAEA,gDAG6B;AAE7B,0CAA2C;AAC3C,sCAAsC;AAEtC,sGAAiG;AAkB1F,KAAK,UAAU,6BAA6B,CAS/C,MAA4C,EAC5C,IAOC;IAED,MAAM,EAAE,OAAO,EAAE,QAAQ,GAAG,MAAM,CAAC,OAAO,EAAE,GAAG,IAAI,CAAA;IACnD,IAAI,CAAC,QAAQ;QAAE,MAAM,IAAI,oCAA4B,EAAE,CAAA;IAEvD,MAAM,OAAO,GAAG,IAAA,oBAAY,EAAC,QAAQ,CAAmC,CAAA;IAExE,IAAI,CAAC;QACD,MAAM,KAAK,GAAG,MAAM,IAAA,iBAAS,EACzB,MAAM,EACN,sBAAY,EACZ,iBAAiB,CACpB,CAAC;YACE,GAAG,EAAE,wCAAkB;YACvB,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,YAAY,EAAE,cAAc;YAC5B,IAAI,EAAE,EAAE;SACX,CAAC,CAAA;QACF,OAAO,KAAK,CAAA;IAChB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,OAAO,CAAC,CAAA;IACZ,CAAC;AACL,CAAC;AAvCD,sEAuCC"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.invalidateNonce = void 0;
|
|
4
|
+
const smartAccount_1 = require("permissionless/actions/smartAccount");
|
|
5
|
+
const utils_1 = require("permissionless/utils");
|
|
6
|
+
const utils_2 = require("viem/utils");
|
|
7
|
+
const KernelAccountAbi_js_1 = require("../../accounts/kernel/abi/kernel_v_3_0_0/KernelAccountAbi.js");
|
|
8
|
+
async function invalidateNonce(client, args) {
|
|
9
|
+
const { account: account_ = client.account, middleware, nonceToSet } = args;
|
|
10
|
+
if (!account_)
|
|
11
|
+
throw new utils_1.AccountOrClientNotFoundError();
|
|
12
|
+
const account = (0, utils_1.parseAccount)(account_);
|
|
13
|
+
return await (0, utils_2.getAction)(client, (smartAccount_1.sendTransaction), "sendTransaction")({
|
|
14
|
+
...args,
|
|
15
|
+
to: account.address,
|
|
16
|
+
data: (0, utils_2.encodeFunctionData)({
|
|
17
|
+
abi: KernelAccountAbi_js_1.KernelV3AccountAbi,
|
|
18
|
+
functionName: "invalidateNonce",
|
|
19
|
+
args: [nonceToSet]
|
|
20
|
+
}),
|
|
21
|
+
value: 0n,
|
|
22
|
+
account,
|
|
23
|
+
middleware
|
|
24
|
+
});
|
|
25
|
+
}
|
|
26
|
+
exports.invalidateNonce = invalidateNonce;
|
|
27
|
+
//# sourceMappingURL=invalidateNonce.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"invalidateNonce.js","sourceRoot":"","sources":["../../../actions/account-client/invalidateNonce.ts"],"names":[],"mappings":";;;AAAA,sEAG4C;AAE5C,gDAG6B;AAE7B,sCAA0D;AAE1D,sGAAiG;AAoB1F,KAAK,UAAU,eAAe,CASjC,MAA4C,EAC5C,IAEC;IAED,MAAM,EAAE,OAAO,EAAE,QAAQ,GAAG,MAAM,CAAC,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,GAAG,IAAI,CAAA;IAC3E,IAAI,CAAC,QAAQ;QAAE,MAAM,IAAI,oCAA4B,EAAE,CAAA;IAEvD,MAAM,OAAO,GAAG,IAAA,oBAAY,EAAC,QAAQ,CAAmC,CAAA;IAExE,OAAO,MAAM,IAAA,iBAAS,EAClB,MAAM,EACN,CAAA,8BAA6D,CAAA,EAC7D,iBAAiB,CACpB,CAAC;QACE,GAAG,IAAI;QACP,EAAE,EAAE,OAAO,CAAC,OAAO;QACnB,IAAI,EAAE,IAAA,0BAAkB,EAAC;YACrB,GAAG,EAAE,wCAAkB;YACvB,YAAY,EAAE,iBAAiB;YAC/B,IAAI,EAAE,CAAC,UAAU,CAAC;SACrB,CAAC;QACF,KAAK,EAAE,EAAE;QACT,OAAO;QACP,UAAU;KACb,CAAC,CAAA;AACN,CAAC;AAnCD,0CAmCC"}
|
|
@@ -2,7 +2,9 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.kernelAccountClientActions = exports.zerodevPaymasterActions = void 0;
|
|
4
4
|
const permissionless_1 = require("permissionless");
|
|
5
|
+
const getKernelV3ModuleCurrentNonce_js_1 = require("../../actions/account-client/getKernelV3ModuleCurrentNonce.js");
|
|
5
6
|
const getUserOperationGasPrice_js_1 = require("../../actions/account-client/getUserOperationGasPrice.js");
|
|
7
|
+
const invalidateNonce_js_1 = require("../../actions/account-client/invalidateNonce.js");
|
|
6
8
|
const index_js_1 = require("../../actions/index.js");
|
|
7
9
|
const estimateGasInERC20_js_1 = require("../../actions/paymaster/estimateGasInERC20.js");
|
|
8
10
|
const sponsorUserOperation_js_1 = require("../../actions/paymaster/sponsorUserOperation.js");
|
|
@@ -25,6 +27,14 @@ function kernelAccountClientActions({ middleware }) {
|
|
|
25
27
|
uninstallPlugin: async (args) => (0, index_js_1.uninstallPlugin)(client, {
|
|
26
28
|
...args,
|
|
27
29
|
middleware
|
|
30
|
+
}),
|
|
31
|
+
invalidateNonce: async (args) => (0, invalidateNonce_js_1.invalidateNonce)(client, {
|
|
32
|
+
...args,
|
|
33
|
+
middleware
|
|
34
|
+
}),
|
|
35
|
+
getKernelV3ModuleCurrentNonce: async (args) => (0, getKernelV3ModuleCurrentNonce_js_1.getKernelV3ModuleCurrentNonce)(client, {
|
|
36
|
+
...args,
|
|
37
|
+
middleware
|
|
28
38
|
})
|
|
29
39
|
});
|
|
30
40
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"kernel.js","sourceRoot":"","sources":["../../../clients/decorators/kernel.ts"],"names":[],"mappings":";;;AAAA,mDAA8E;AAK9E,0GAGiE;
|
|
1
|
+
{"version":3,"file":"kernel.js","sourceRoot":"","sources":["../../../clients/decorators/kernel.ts"],"names":[],"mappings":";;;AAAA,mDAA8E;AAK9E,oHAGsE;AACtE,0GAGiE;AACjE,wFAGwD;AAMxD,qDAA2E;AAC3E,yFAIsD;AACtD,6FAIwD;AAejD,MAAM,uBAAuB,GAChC,CAAgC,iBAA6B,EAAE,EAAE,CACjE,CAAC,MAAc,EAA6C,EAAE,CAAC,CAAC;IAC5D,oBAAoB,EAAE,KAAK,EACvB,IAAoE,EACtE,EAAE,CACA,IAAA,8CAAoB,EAChB,MAA4C,EAC5C;QACI,GAAG,IAAI;QACP,UAAU,EAAE,iBAAiB;KAChC,CACJ;IACL,kBAAkB,EAAE,KAAK,EAAE,IAAkC,EAAE,EAAE,CAC7D,IAAA,0CAAkB,EACd,MAA4C,EAC5C,IAAI,CACP;CACR,CAAC,CAAA;AAlBO,QAAA,uBAAuB,2BAkB9B;AAyFN,SAAgB,0BAA0B,CAAgC,EACtE,UAAU,EACW;IACrB,OAAO,CAOH,MAAiD,EACY,EAAE,CAAC,CAAC;QACjE,GAAG,IAAA,oCAAmB,EAAC,EAAE,UAAU,EAAE,CAAC,CAAC,MAAM,CAAC;QAC9C,iBAAiB,EAAE,CAAC,IAAI,EAAE,EAAE,CACxB,IAAA,4BAAiB,EACb,MAAM,EACN;YACI,GAAG,IAAI;YACP,UAAU;SAC6C,CAC9D;QACL,wBAAwB,EAAE,KAAK,IAAI,EAAE,CAAC,IAAA,sDAAwB,EAAC,MAAM,CAAC;QACtE,eAAe,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,CAC5B,IAAA,0BAAe,EACX,MAAM,EACN;YACI,GAAG,IAAI;YACP,UAAU;SAKb,CACJ;QACL,eAAe,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,CAC5B,IAAA,oCAAe,EAAC,MAAM,EAAE;YACpB,GAAG,IAAI;YACP,UAAU;SACmD,CAAC;QACtE,6BAA6B,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,CAC1C,IAAA,gEAA6B,EAAC,MAAM,EAAE;YAClC,GAAG,IAAI;YACP,UAAU;SAKb,CAAC;KACT,CAAC,CAAA;AACN,CAAC;AAjDD,gEAiDC"}
|
|
@@ -24,7 +24,7 @@ export async function toKernelPluginManager(client, { sudo, regular, hook, plugi
|
|
|
24
24
|
throw new Error("Either sudo or/and regular validator version mismatch. Update to latest plugin package and use the proper plugin version");
|
|
25
25
|
}
|
|
26
26
|
const entryPointVersion = getEntryPointVersion(entryPointAddress);
|
|
27
|
-
|
|
27
|
+
let chainId;
|
|
28
28
|
const activeValidator = regular || sudo;
|
|
29
29
|
if (!activeValidator) {
|
|
30
30
|
throw new Error("One of `sudo` or `regular` validator must be set");
|
|
@@ -117,6 +117,9 @@ export async function toKernelPluginManager(client, { sudo, regular, hook, plugi
|
|
|
117
117
|
if (!regular)
|
|
118
118
|
throw new Error("regular validator not set");
|
|
119
119
|
const { version } = await accountMetadata(client, accountAddress, kernelVersion);
|
|
120
|
+
if (!chainId) {
|
|
121
|
+
chainId = await getChainId(client);
|
|
122
|
+
}
|
|
120
123
|
let ownerSig;
|
|
121
124
|
if (entryPointVersion === "v0.6") {
|
|
122
125
|
const typeData = await getPluginsEnableTypedDataV1({
|
|
@@ -163,6 +166,9 @@ export async function toKernelPluginManager(client, { sudo, regular, hook, plugi
|
|
|
163
166
|
throw new Error("regular validator not set");
|
|
164
167
|
const { version } = await accountMetadata(client, accountAddress, kernelVersion);
|
|
165
168
|
const validatorNonce = await getKernelV3Nonce(client, accountAddress);
|
|
169
|
+
if (!chainId) {
|
|
170
|
+
chainId = await getChainId(client);
|
|
171
|
+
}
|
|
166
172
|
const typedData = await getPluginsEnableTypedDataV2({
|
|
167
173
|
accountAddress,
|
|
168
174
|
chainId,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"toKernelPluginManager.js","sourceRoot":"","sources":["../../../accounts/utils/toKernelPluginManager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAA;AAErD,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAA;AAClC,OAAO,EAMH,MAAM,EACN,SAAS,EACT,SAAS,EACT,UAAU,EACV,GAAG,EACH,KAAK,EACL,WAAW,EACd,MAAM,MAAM,CAAA;AACb,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AACzC,OAAO,EAAE,2BAA2B,IAAI,gCAAgC,EAAE,MAAM,0EAA0E,CAAA;AAC1J,OAAO,EACH,4BAA4B,EAC5B,cAAc,EACd,cAAc,EACjB,MAAM,oBAAoB,CAAA;AAC3B,OAAO,EAGH,aAAa,EAChB,MAAM,uBAAuB,CAAA;AAC9B,OAAO,EAAE,gBAAgB,EAAE,MAAM,mDAAmD,CAAA;AACpF,OAAO,EAAE,eAAe,EAAE,MAAM,2CAA2C,CAAA;AAC3E,OAAO,EAAE,iBAAiB,EAAE,MAAM,6CAA6C,CAAA;AAC/E,OAAO,EAAE,qBAAqB,IAAI,uBAAuB,EAAE,MAAM,wDAAwD,CAAA;AACzH,OAAO,EAAE,yBAAyB,IAAI,2BAA2B,EAAE,MAAM,4DAA4D,CAAA;AACrI,OAAO,EAAE,qBAAqB,IAAI,uBAAuB,EAAE,MAAM,wDAAwD,CAAA;AACzH,OAAO,EAAE,yBAAyB,IAAI,2BAA2B,EAAE,MAAM,4DAA4D,CAAA;AACrI,OAAO,EAAE,mBAAmB,EAAE,MAAM,sDAAsD,CAAA;AAE1F,MAAM,UAAU,qBAAqB;AACjC,4DAA4D;AAC5D,MAAW;IAEX,OAAO,MAAM,CAAC,wBAAwB,KAAK,SAAS,CAAA;AACxD,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,qBAAqB,CAKvC,MAA6C,EAC7C,EACI,IAAI,EACJ,OAAO,EACP,IAAI,EACJ,qBAAqB,EACrB,iBAAiB,EACjB,MAAM,EACN,UAAU,GAAG,CAAC,EACd,UAAU,GAAG,CAAC,EACd,UAAU,EAAE,iBAAiB,EAC7B,aAAa,EACuB;IAExC,IACI,CAAC,IAAI,IAAI,CAAC,SAAS,CAAC,aAAa,EAAE,IAAI,EAAE,uBAAuB,CAAC,CAAC;QAClE,CAAC,OAAO,IAAI,CAAC,SAAS,CAAC,aAAa,EAAE,OAAO,EAAE,uBAAuB,CAAC,CAAC,EAC1E,CAAC;QACC,MAAM,IAAI,KAAK,CACX,0HAA0H,CAC7H,CAAA;IACL,CAAC;IACD,MAAM,iBAAiB,GAAG,oBAAoB,CAAC,iBAAiB,CAAC,CAAA;IACjE,
|
|
1
|
+
{"version":3,"file":"toKernelPluginManager.js","sourceRoot":"","sources":["../../../accounts/utils/toKernelPluginManager.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { AccountOrClientNotFoundError, parseAccount } from "permissionless/utils";
|
|
2
|
+
import { readContract } from "viem/actions";
|
|
3
|
+
import { getAction } from "viem/utils";
|
|
4
|
+
import { KernelV3AccountAbi } from "../../accounts/kernel/abi/kernel_v_3_0_0/KernelAccountAbi.js";
|
|
5
|
+
export async function getKernelV3ModuleCurrentNonce(client, args) {
|
|
6
|
+
const { account: account_ = client.account } = args;
|
|
7
|
+
if (!account_)
|
|
8
|
+
throw new AccountOrClientNotFoundError();
|
|
9
|
+
const account = parseAccount(account_);
|
|
10
|
+
try {
|
|
11
|
+
const nonce = await getAction(client, readContract, "sendTransaction")({
|
|
12
|
+
abi: KernelV3AccountAbi,
|
|
13
|
+
address: account.address,
|
|
14
|
+
functionName: "currentNonce",
|
|
15
|
+
args: []
|
|
16
|
+
});
|
|
17
|
+
return nonce;
|
|
18
|
+
}
|
|
19
|
+
catch (error) {
|
|
20
|
+
return 1;
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
//# sourceMappingURL=getKernelV3ModuleCurrentNonce.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getKernelV3ModuleCurrentNonce.js","sourceRoot":"","sources":["../../../actions/account-client/getKernelV3ModuleCurrentNonce.ts"],"names":[],"mappings":"AAEA,OAAO,EACH,4BAA4B,EAC5B,YAAY,EACf,MAAM,sBAAsB,CAAA;AAE7B,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAC3C,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA;AAEtC,OAAO,EAAE,kBAAkB,EAAE,MAAM,8DAA8D,CAAA;AAkBjG,MAAM,CAAC,KAAK,UAAU,6BAA6B,CAS/C,MAA4C,EAC5C,IAOC;IAED,MAAM,EAAE,OAAO,EAAE,QAAQ,GAAG,MAAM,CAAC,OAAO,EAAE,GAAG,IAAI,CAAA;IACnD,IAAI,CAAC,QAAQ;QAAE,MAAM,IAAI,4BAA4B,EAAE,CAAA;IAEvD,MAAM,OAAO,GAAG,YAAY,CAAC,QAAQ,CAAmC,CAAA;IAExE,IAAI,CAAC;QACD,MAAM,KAAK,GAAG,MAAM,SAAS,CACzB,MAAM,EACN,YAAY,EACZ,iBAAiB,CACpB,CAAC;YACE,GAAG,EAAE,kBAAkB;YACvB,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,YAAY,EAAE,cAAc;YAC5B,IAAI,EAAE,EAAE;SACX,CAAC,CAAA;QACF,OAAO,KAAK,CAAA;IAChB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,OAAO,CAAC,CAAA;IACZ,CAAC;AACL,CAAC"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { sendTransaction } from "permissionless/actions/smartAccount";
|
|
2
|
+
import { AccountOrClientNotFoundError, parseAccount } from "permissionless/utils";
|
|
3
|
+
import { encodeFunctionData, getAction } from "viem/utils";
|
|
4
|
+
import { KernelV3AccountAbi } from "../../accounts/kernel/abi/kernel_v_3_0_0/KernelAccountAbi.js";
|
|
5
|
+
export async function invalidateNonce(client, args) {
|
|
6
|
+
const { account: account_ = client.account, middleware, nonceToSet } = args;
|
|
7
|
+
if (!account_)
|
|
8
|
+
throw new AccountOrClientNotFoundError();
|
|
9
|
+
const account = parseAccount(account_);
|
|
10
|
+
return await getAction(client, (sendTransaction), "sendTransaction")({
|
|
11
|
+
...args,
|
|
12
|
+
to: account.address,
|
|
13
|
+
data: encodeFunctionData({
|
|
14
|
+
abi: KernelV3AccountAbi,
|
|
15
|
+
functionName: "invalidateNonce",
|
|
16
|
+
args: [nonceToSet]
|
|
17
|
+
}),
|
|
18
|
+
value: 0n,
|
|
19
|
+
account,
|
|
20
|
+
middleware
|
|
21
|
+
});
|
|
22
|
+
}
|
|
23
|
+
//# sourceMappingURL=invalidateNonce.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"invalidateNonce.js","sourceRoot":"","sources":["../../../actions/account-client/invalidateNonce.ts"],"names":[],"mappings":"AAAA,OAAO,EAEH,eAAe,EAClB,MAAM,qCAAqC,CAAA;AAE5C,OAAO,EACH,4BAA4B,EAC5B,YAAY,EACf,MAAM,sBAAsB,CAAA;AAE7B,OAAO,EAAE,kBAAkB,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA;AAE1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,8DAA8D,CAAA;AAoBjG,MAAM,CAAC,KAAK,UAAU,eAAe,CASjC,MAA4C,EAC5C,IAEC;IAED,MAAM,EAAE,OAAO,EAAE,QAAQ,GAAG,MAAM,CAAC,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,GAAG,IAAI,CAAA;IAC3E,IAAI,CAAC,QAAQ;QAAE,MAAM,IAAI,4BAA4B,EAAE,CAAA;IAEvD,MAAM,OAAO,GAAG,YAAY,CAAC,QAAQ,CAAmC,CAAA;IAExE,OAAO,MAAM,SAAS,CAClB,MAAM,EACN,CAAA,eAA6D,CAAA,EAC7D,iBAAiB,CACpB,CAAC;QACE,GAAG,IAAI;QACP,EAAE,EAAE,OAAO,CAAC,OAAO;QACnB,IAAI,EAAE,kBAAkB,CAAC;YACrB,GAAG,EAAE,kBAAkB;YACvB,YAAY,EAAE,iBAAiB;YAC/B,IAAI,EAAE,CAAC,UAAU,CAAC;SACrB,CAAC;QACF,KAAK,EAAE,EAAE;QACT,OAAO;QACP,UAAU;KACb,CAAC,CAAA;AACN,CAAC"}
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import { smartAccountActions } from "permissionless";
|
|
2
|
+
import { getKernelV3ModuleCurrentNonce } from "../../actions/account-client/getKernelV3ModuleCurrentNonce.js";
|
|
2
3
|
import { getUserOperationGasPrice } from "../../actions/account-client/getUserOperationGasPrice.js";
|
|
4
|
+
import { invalidateNonce } from "../../actions/account-client/invalidateNonce.js";
|
|
3
5
|
import { signUserOperation, uninstallPlugin } from "../../actions/index.js";
|
|
4
6
|
import { estimateGasInERC20 } from "../../actions/paymaster/estimateGasInERC20.js";
|
|
5
7
|
import { sponsorUserOperation } from "../../actions/paymaster/sponsorUserOperation.js";
|
|
@@ -21,6 +23,14 @@ export function kernelAccountClientActions({ middleware }) {
|
|
|
21
23
|
uninstallPlugin: async (args) => uninstallPlugin(client, {
|
|
22
24
|
...args,
|
|
23
25
|
middleware
|
|
26
|
+
}),
|
|
27
|
+
invalidateNonce: async (args) => invalidateNonce(client, {
|
|
28
|
+
...args,
|
|
29
|
+
middleware
|
|
30
|
+
}),
|
|
31
|
+
getKernelV3ModuleCurrentNonce: async (args) => getKernelV3ModuleCurrentNonce(client, {
|
|
32
|
+
...args,
|
|
33
|
+
middleware
|
|
24
34
|
})
|
|
25
35
|
});
|
|
26
36
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"kernel.js","sourceRoot":"","sources":["../../../clients/decorators/kernel.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4B,mBAAmB,EAAE,MAAM,gBAAgB,CAAA;AAK9E,OAAO,EAEH,wBAAwB,EAC3B,MAAM,0DAA0D,CAAA;
|
|
1
|
+
{"version":3,"file":"kernel.js","sourceRoot":"","sources":["../../../clients/decorators/kernel.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4B,mBAAmB,EAAE,MAAM,gBAAgB,CAAA;AAK9E,OAAO,EAEH,6BAA6B,EAChC,MAAM,+DAA+D,CAAA;AACtE,OAAO,EAEH,wBAAwB,EAC3B,MAAM,0DAA0D,CAAA;AACjE,OAAO,EAEH,eAAe,EAClB,MAAM,iDAAiD,CAAA;AAMxD,OAAO,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAA;AAC3E,OAAO,EAGH,kBAAkB,EACrB,MAAM,+CAA+C,CAAA;AACtD,OAAO,EAGH,oBAAoB,EACvB,MAAM,iDAAiD,CAAA;AAexD,MAAM,CAAC,MAAM,uBAAuB,GAChC,CAAgC,iBAA6B,EAAE,EAAE,CACjE,CAAC,MAAc,EAA6C,EAAE,CAAC,CAAC;IAC5D,oBAAoB,EAAE,KAAK,EACvB,IAAoE,EACtE,EAAE,CACA,oBAAoB,CAChB,MAA4C,EAC5C;QACI,GAAG,IAAI;QACP,UAAU,EAAE,iBAAiB;KAChC,CACJ;IACL,kBAAkB,EAAE,KAAK,EAAE,IAAkC,EAAE,EAAE,CAC7D,kBAAkB,CACd,MAA4C,EAC5C,IAAI,CACP;CACR,CAAC,CAAA;AAyFN,MAAM,UAAU,0BAA0B,CAAgC,EACtE,UAAU,EACW;IACrB,OAAO,CAOH,MAAiD,EACY,EAAE,CAAC,CAAC;QACjE,GAAG,mBAAmB,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,MAAM,CAAC;QAC9C,iBAAiB,EAAE,CAAC,IAAI,EAAE,EAAE,CACxB,iBAAiB,CACb,MAAM,EACN;YACI,GAAG,IAAI;YACP,UAAU;SAC6C,CAC9D;QACL,wBAAwB,EAAE,KAAK,IAAI,EAAE,CAAC,wBAAwB,CAAC,MAAM,CAAC;QACtE,eAAe,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,CAC5B,eAAe,CACX,MAAM,EACN;YACI,GAAG,IAAI;YACP,UAAU;SAKb,CACJ;QACL,eAAe,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,CAC5B,eAAe,CAAC,MAAM,EAAE;YACpB,GAAG,IAAI;YACP,UAAU;SACmD,CAAC;QACtE,6BAA6B,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,CAC1C,6BAA6B,CAAC,MAAM,EAAE;YAClC,GAAG,IAAI;YACP,UAAU;SAKb,CAAC;KACT,CAAC,CAAA;AACN,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"toKernelPluginManager.d.ts","sourceRoot":"","sources":["../../../accounts/utils/toKernelPluginManager.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAA;AAEjE,OAAO,EAEH,KAAK,KAAK,EACV,KAAK,MAAM,EAEX,KAAK,SAAS,EAQjB,MAAM,MAAM,CAAA;AAQb,OAAO,EACH,KAAK,mBAAmB,EACxB,KAAK,yBAAyB,EAEjC,MAAM,uBAAuB,CAAA;AAU9B,wBAAgB,qBAAqB,CAAC,UAAU,SAAS,UAAU,EAE/D,MAAM,EAAE,GAAG,GACZ,MAAM,IAAI,mBAAmB,CAAC,UAAU,CAAC,CAE3C;AAED,wBAAsB,qBAAqB,CACvC,UAAU,SAAS,UAAU,EAC7B,UAAU,SAAS,SAAS,GAAG,SAAS,EACxC,MAAM,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,EAEpD,MAAM,EAAE,MAAM,CAAC,UAAU,EAAE,MAAM,EAAE,SAAS,CAAC,EAC7C,EACI,IAAI,EACJ,OAAO,EACP,IAAI,EACJ,qBAAqB,EACrB,iBAAiB,EACjB,MAAM,EACN,UAAc,EACd,UAAc,EACd,UAAU,EAAE,iBAAiB,EAC7B,aAAa,EAChB,EAAE,yBAAyB,CAAC,UAAU,CAAC,GACzC,OAAO,CAAC,mBAAmB,CAAC,UAAU,CAAC,CAAC,
|
|
1
|
+
{"version":3,"file":"toKernelPluginManager.d.ts","sourceRoot":"","sources":["../../../accounts/utils/toKernelPluginManager.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAA;AAEjE,OAAO,EAEH,KAAK,KAAK,EACV,KAAK,MAAM,EAEX,KAAK,SAAS,EAQjB,MAAM,MAAM,CAAA;AAQb,OAAO,EACH,KAAK,mBAAmB,EACxB,KAAK,yBAAyB,EAEjC,MAAM,uBAAuB,CAAA;AAU9B,wBAAgB,qBAAqB,CAAC,UAAU,SAAS,UAAU,EAE/D,MAAM,EAAE,GAAG,GACZ,MAAM,IAAI,mBAAmB,CAAC,UAAU,CAAC,CAE3C;AAED,wBAAsB,qBAAqB,CACvC,UAAU,SAAS,UAAU,EAC7B,UAAU,SAAS,SAAS,GAAG,SAAS,EACxC,MAAM,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,EAEpD,MAAM,EAAE,MAAM,CAAC,UAAU,EAAE,MAAM,EAAE,SAAS,CAAC,EAC7C,EACI,IAAI,EACJ,OAAO,EACP,IAAI,EACJ,qBAAqB,EACrB,iBAAiB,EACjB,MAAM,EACN,UAAc,EACd,UAAc,EACd,UAAU,EAAE,iBAAiB,EAC7B,aAAa,EAChB,EAAE,yBAAyB,CAAC,UAAU,CAAC,GACzC,OAAO,CAAC,mBAAmB,CAAC,UAAU,CAAC,CAAC,CAmV1C"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { SendTransactionWithPaymasterParameters } from "permissionless/actions/smartAccount";
|
|
2
|
+
import type { EntryPoint, Prettify } from "permissionless/types";
|
|
3
|
+
import type { Chain, Client, Transport } from "viem";
|
|
4
|
+
import type { KernelSmartAccount } from "../../accounts/index.js";
|
|
5
|
+
export type GetKernelV3ModuleCurrentNonceParameters<entryPoint extends EntryPoint, TChain extends Chain | undefined = Chain | undefined, TAccount extends KernelSmartAccount<entryPoint> | undefined = KernelSmartAccount<entryPoint> | undefined, TChainOverride extends Chain | undefined = Chain | undefined> = Prettify<SendTransactionWithPaymasterParameters<entryPoint, TChain, TAccount, TChainOverride>>;
|
|
6
|
+
export declare function getKernelV3ModuleCurrentNonce<entryPoint extends EntryPoint, TTransport extends Transport = Transport, TChain extends Chain | undefined = Chain | undefined, TAccount extends KernelSmartAccount<entryPoint> | undefined = KernelSmartAccount<entryPoint> | undefined, TChainOverride extends Chain | undefined = Chain | undefined>(client: Client<TTransport, TChain, TAccount>, args: Prettify<GetKernelV3ModuleCurrentNonceParameters<entryPoint, TChain, TAccount, TChainOverride>>): Promise<number>;
|
|
7
|
+
//# sourceMappingURL=getKernelV3ModuleCurrentNonce.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getKernelV3ModuleCurrentNonce.d.ts","sourceRoot":"","sources":["../../../actions/account-client/getKernelV3ModuleCurrentNonce.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sCAAsC,EAAE,MAAM,qCAAqC,CAAA;AACjG,OAAO,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAA;AAKhE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,MAAM,CAAA;AAGpD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAA;AAGjE,MAAM,MAAM,uCAAuC,CAC/C,UAAU,SAAS,UAAU,EAC7B,MAAM,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,EACpD,QAAQ,SAAS,kBAAkB,CAAC,UAAU,CAAC,GAAG,SAAS,GACrD,kBAAkB,CAAC,UAAU,CAAC,GAC9B,SAAS,EACf,cAAc,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,IAC5D,QAAQ,CACR,sCAAsC,CAClC,UAAU,EACV,MAAM,EACN,QAAQ,EACR,cAAc,CACjB,CACJ,CAAA;AAED,wBAAsB,6BAA6B,CAC/C,UAAU,SAAS,UAAU,EAC7B,UAAU,SAAS,SAAS,GAAG,SAAS,EACxC,MAAM,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,EACpD,QAAQ,SAAS,kBAAkB,CAAC,UAAU,CAAC,GAAG,SAAS,GACrD,kBAAkB,CAAC,UAAU,CAAC,GAC9B,SAAS,EACf,cAAc,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,EAE5D,MAAM,EAAE,MAAM,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,CAAC,EAC5C,IAAI,EAAE,QAAQ,CACV,uCAAuC,CACnC,UAAU,EACV,MAAM,EACN,QAAQ,EACR,cAAc,CACjB,CACJ,GACF,OAAO,CAAC,MAAM,CAAC,CAqBjB"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { type SendTransactionWithPaymasterParameters } from "permissionless/actions/smartAccount";
|
|
2
|
+
import type { EntryPoint, Prettify } from "permissionless/types";
|
|
3
|
+
import type { Chain, Client, Hash, Transport } from "viem";
|
|
4
|
+
import type { KernelSmartAccount } from "../../accounts/index.js";
|
|
5
|
+
export type InvalidateNonceParameters<entryPoint extends EntryPoint, TChain extends Chain | undefined = Chain | undefined, TAccount extends KernelSmartAccount<entryPoint> | undefined = KernelSmartAccount<entryPoint> | undefined, TChainOverride extends Chain | undefined = Chain | undefined> = Prettify<SendTransactionWithPaymasterParameters<entryPoint, TChain, TAccount, TChainOverride> & {
|
|
6
|
+
nonceToSet: number;
|
|
7
|
+
}>;
|
|
8
|
+
export declare function invalidateNonce<entryPoint extends EntryPoint, TTransport extends Transport = Transport, TChain extends Chain | undefined = Chain | undefined, TAccount extends KernelSmartAccount<entryPoint> | undefined = KernelSmartAccount<entryPoint> | undefined, TChainOverride extends Chain | undefined = Chain | undefined>(client: Client<TTransport, TChain, TAccount>, args: Prettify<InvalidateNonceParameters<entryPoint, TChain, TAccount, TChainOverride>>): Promise<Hash>;
|
|
9
|
+
//# sourceMappingURL=invalidateNonce.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"invalidateNonce.d.ts","sourceRoot":"","sources":["../../../actions/account-client/invalidateNonce.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,KAAK,sCAAsC,EAE9C,MAAM,qCAAqC,CAAA;AAC5C,OAAO,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAA;AAKhE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,MAAM,CAAA;AAE1D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAA;AAGjE,MAAM,MAAM,yBAAyB,CACjC,UAAU,SAAS,UAAU,EAC7B,MAAM,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,EACpD,QAAQ,SAAS,kBAAkB,CAAC,UAAU,CAAC,GAAG,SAAS,GACrD,kBAAkB,CAAC,UAAU,CAAC,GAC9B,SAAS,EACf,cAAc,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,IAC5D,QAAQ,CACR,sCAAsC,CAClC,UAAU,EACV,MAAM,EACN,QAAQ,EACR,cAAc,CACjB,GAAG;IACA,UAAU,EAAE,MAAM,CAAA;CACrB,CACJ,CAAA;AAED,wBAAsB,eAAe,CACjC,UAAU,SAAS,UAAU,EAC7B,UAAU,SAAS,SAAS,GAAG,SAAS,EACxC,MAAM,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,EACpD,QAAQ,SAAS,kBAAkB,CAAC,UAAU,CAAC,GAAG,SAAS,GACrD,kBAAkB,CAAC,UAAU,CAAC,GAC9B,SAAS,EACf,cAAc,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,EAE5D,MAAM,EAAE,MAAM,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,CAAC,EAC5C,IAAI,EAAE,QAAQ,CACV,yBAAyB,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,cAAc,CAAC,CAC1E,GACF,OAAO,CAAC,IAAI,CAAC,CAsBf"}
|
|
@@ -3,7 +3,9 @@ import type { Middleware } from "permissionless/actions/smartAccount";
|
|
|
3
3
|
import type { EntryPoint, Prettify } from "permissionless/types";
|
|
4
4
|
import type { Chain, Client, Hash, Transport } from "viem";
|
|
5
5
|
import type { KernelSmartAccount } from "../../accounts/index.js";
|
|
6
|
+
import { type GetKernelV3ModuleCurrentNonceParameters } from "../../actions/account-client/getKernelV3ModuleCurrentNonce.js";
|
|
6
7
|
import { type GetUserOperationGasPriceReturnType } from "../../actions/account-client/getUserOperationGasPrice.js";
|
|
8
|
+
import { type InvalidateNonceParameters } from "../../actions/account-client/invalidateNonce.js";
|
|
7
9
|
import type { SignUserOperationReturnType, UninstallPluginParameters } from "../../actions/index.js";
|
|
8
10
|
import { signUserOperation } from "../../actions/index.js";
|
|
9
11
|
import { type EstimateGasInERC20Parameters, type EstimateGasInERC20ReturnType } from "../../actions/paymaster/estimateGasInERC20.js";
|
|
@@ -39,6 +41,24 @@ export type KernelAccountClientActions<entryPoint extends EntryPoint, TChain ext
|
|
|
39
41
|
* @returns The [Transaction](https://viem.sh/docs/glossary/terms.html#transaction) hash. {@link SendTransactionReturnType}
|
|
40
42
|
*/
|
|
41
43
|
uninstallPlugin: <TChainOverride extends Chain | undefined = Chain | undefined>(args: UninstallPluginParameters<entryPoint, TChain, TSmartAccount, TChainOverride>) => Promise<Hash>;
|
|
44
|
+
/**
|
|
45
|
+
* Creates, signs, and sends a kernel v3 module nonce invalidation transaction to the network.
|
|
46
|
+
* This function also allows you to sponsor this transaction if sender is a smartAccount
|
|
47
|
+
*
|
|
48
|
+
*
|
|
49
|
+
* @param args - {@link InvalidateNonceParameters}
|
|
50
|
+
* @returns The [Transaction](https://viem.sh/docs/glossary/terms.html#transaction) hash. {@link SendTransactionReturnType}
|
|
51
|
+
*/
|
|
52
|
+
invalidateNonce: <TChainOverride extends Chain | undefined = Chain | undefined>(args: InvalidateNonceParameters<entryPoint, TChain, TSmartAccount, TChainOverride>) => Promise<Hash>;
|
|
53
|
+
/**
|
|
54
|
+
* Creates, signs, and sends a transaction to fetch KernelV3 module nonce to the network.
|
|
55
|
+
* This function also allows you to sponsor this transaction if sender is a smartAccount
|
|
56
|
+
*
|
|
57
|
+
*
|
|
58
|
+
* @param args - {@link GetKernelV3ModuleCurrentNonceParameters}
|
|
59
|
+
* @returns nonce
|
|
60
|
+
*/
|
|
61
|
+
getKernelV3ModuleCurrentNonce: <TChainOverride extends Chain | undefined = Chain | undefined>(args: GetKernelV3ModuleCurrentNonceParameters<entryPoint, TChain, TSmartAccount, TChainOverride>) => Promise<number>;
|
|
42
62
|
};
|
|
43
63
|
export declare function kernelAccountClientActions<entryPoint extends EntryPoint>({ middleware }: Middleware<entryPoint>): <TTransport extends Transport, TChain extends Chain | undefined = Chain | undefined, TSmartAccount extends KernelSmartAccount<entryPoint> | undefined = KernelSmartAccount<entryPoint> | undefined>(client: Client<TTransport, TChain, TSmartAccount>) => KernelAccountClientActions<entryPoint, TChain, TSmartAccount>;
|
|
44
64
|
//# sourceMappingURL=kernel.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"kernel.d.ts","sourceRoot":"","sources":["../../../clients/decorators/kernel.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,mBAAmB,EAAuB,MAAM,gBAAgB,CAAA;AAC9E,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qCAAqC,CAAA;AACrE,OAAO,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAA;AAChE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,MAAM,CAAA;AAC1D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAA;AACjE,OAAO,EACH,KAAK,kCAAkC,EAE1C,MAAM,0DAA0D,CAAA;AACjE,OAAO,KAAK,EAER,2BAA2B,EAC3B,yBAAyB,EAC5B,MAAM,wBAAwB,CAAA;AAC/B,OAAO,EAAE,iBAAiB,EAAmB,MAAM,wBAAwB,CAAA;AAC3E,OAAO,EACH,KAAK,4BAA4B,EACjC,KAAK,4BAA4B,EAEpC,MAAM,+CAA+C,CAAA;AACtD,OAAO,EACH,KAAK,8BAA8B,EACnC,KAAK,8BAA8B,EAEtC,MAAM,iDAAiD,CAAA;AAGxD,MAAM,MAAM,6BAA6B,CAAC,UAAU,SAAS,UAAU,IAAI;IACvE;;OAEG;IACH,oBAAoB,EAAE,CAClB,IAAI,EAAE,8BAA8B,CAAC,UAAU,CAAC,KAC/C,OAAO,CAAC,8BAA8B,CAAC,UAAU,CAAC,CAAC,CAAA;IACxD,kBAAkB,EAAE,CAChB,IAAI,EAAE,4BAA4B,KACjC,OAAO,CAAC,4BAA4B,CAAC,CAAA;CAC7C,CAAA;AAED,eAAO,MAAM,uBAAuB,6EAEvB,MAAM,8CAgBb,CAAA;AAEN,MAAM,MAAM,0BAA0B,CAClC,UAAU,SAAS,UAAU,EAC7B,MAAM,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,EACpD,aAAa,SAAS,kBAAkB,CAAC,UAAU,CAAC,GAAG,SAAS,GAC1D,kBAAkB,CAAC,UAAU,CAAC,GAC9B,SAAS,IACf,mBAAmB,CAAC,UAAU,EAAE,MAAM,EAAE,aAAa,CAAC,GAAG;IACzD;;;;;OAKG;IACH,iBAAiB,EAAE,CAAC,UAAU,SAAS,SAAS,EAC5C,IAAI,EAAE,UAAU,CACZ,OAAO,iBAAiB,CACpB,UAAU,EACV,UAAU,EACV,MAAM,EACN,aAAa,CAChB,CACJ,CAAC,CAAC,CAAC,KACH,OAAO,CAAC,2BAA2B,CAAC,UAAU,CAAC,CAAC,CAAA;IACrD;;;;OAIG;IACH,wBAAwB,EAAE,MAAM,OAAO,CACnC,QAAQ,CAAC,kCAAkC,CAAC,CAC/C,CAAA;IACD;;;;;;;OAOG;IACH,eAAe,EAAE,CACb,cAAc,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,EAE5D,IAAI,EAAE,yBAAyB,CAC3B,UAAU,EACV,MAAM,EACN,aAAa,EACb,cAAc,CACjB,KACA,OAAO,CAAC,IAAI,CAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"kernel.d.ts","sourceRoot":"","sources":["../../../clients/decorators/kernel.ts"],"names":[],"mappings":"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"}
|
|
@@ -71,7 +71,7 @@ export async function toKernelPluginManager<
|
|
|
71
71
|
)
|
|
72
72
|
}
|
|
73
73
|
const entryPointVersion = getEntryPointVersion(entryPointAddress)
|
|
74
|
-
|
|
74
|
+
let chainId: number
|
|
75
75
|
const activeValidator = regular || sudo
|
|
76
76
|
if (!activeValidator) {
|
|
77
77
|
throw new Error("One of `sudo` or `regular` validator must be set")
|
|
@@ -181,6 +181,9 @@ export async function toKernelPluginManager<
|
|
|
181
181
|
accountAddress,
|
|
182
182
|
kernelVersion
|
|
183
183
|
)
|
|
184
|
+
if (!chainId) {
|
|
185
|
+
chainId = await getChainId(client)
|
|
186
|
+
}
|
|
184
187
|
let ownerSig: Hex
|
|
185
188
|
if (entryPointVersion === "v0.6") {
|
|
186
189
|
const typeData = await getPluginsEnableTypedDataV1({
|
|
@@ -237,6 +240,9 @@ export async function toKernelPluginManager<
|
|
|
237
240
|
|
|
238
241
|
const validatorNonce = await getKernelV3Nonce(client, accountAddress)
|
|
239
242
|
|
|
243
|
+
if (!chainId) {
|
|
244
|
+
chainId = await getChainId(client)
|
|
245
|
+
}
|
|
240
246
|
const typedData = await getPluginsEnableTypedDataV2({
|
|
241
247
|
accountAddress,
|
|
242
248
|
chainId,
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
import type { SendTransactionWithPaymasterParameters } from "permissionless/actions/smartAccount"
|
|
2
|
+
import type { EntryPoint, Prettify } from "permissionless/types"
|
|
3
|
+
import {
|
|
4
|
+
AccountOrClientNotFoundError,
|
|
5
|
+
parseAccount
|
|
6
|
+
} from "permissionless/utils"
|
|
7
|
+
import type { Chain, Client, Transport } from "viem"
|
|
8
|
+
import { readContract } from "viem/actions"
|
|
9
|
+
import { getAction } from "viem/utils"
|
|
10
|
+
import type { KernelSmartAccount } from "../../accounts/index.js"
|
|
11
|
+
import { KernelV3AccountAbi } from "../../accounts/kernel/abi/kernel_v_3_0_0/KernelAccountAbi.js"
|
|
12
|
+
|
|
13
|
+
export type GetKernelV3ModuleCurrentNonceParameters<
|
|
14
|
+
entryPoint extends EntryPoint,
|
|
15
|
+
TChain extends Chain | undefined = Chain | undefined,
|
|
16
|
+
TAccount extends KernelSmartAccount<entryPoint> | undefined =
|
|
17
|
+
| KernelSmartAccount<entryPoint>
|
|
18
|
+
| undefined,
|
|
19
|
+
TChainOverride extends Chain | undefined = Chain | undefined
|
|
20
|
+
> = Prettify<
|
|
21
|
+
SendTransactionWithPaymasterParameters<
|
|
22
|
+
entryPoint,
|
|
23
|
+
TChain,
|
|
24
|
+
TAccount,
|
|
25
|
+
TChainOverride
|
|
26
|
+
>
|
|
27
|
+
>
|
|
28
|
+
|
|
29
|
+
export async function getKernelV3ModuleCurrentNonce<
|
|
30
|
+
entryPoint extends EntryPoint,
|
|
31
|
+
TTransport extends Transport = Transport,
|
|
32
|
+
TChain extends Chain | undefined = Chain | undefined,
|
|
33
|
+
TAccount extends KernelSmartAccount<entryPoint> | undefined =
|
|
34
|
+
| KernelSmartAccount<entryPoint>
|
|
35
|
+
| undefined,
|
|
36
|
+
TChainOverride extends Chain | undefined = Chain | undefined
|
|
37
|
+
>(
|
|
38
|
+
client: Client<TTransport, TChain, TAccount>,
|
|
39
|
+
args: Prettify<
|
|
40
|
+
GetKernelV3ModuleCurrentNonceParameters<
|
|
41
|
+
entryPoint,
|
|
42
|
+
TChain,
|
|
43
|
+
TAccount,
|
|
44
|
+
TChainOverride
|
|
45
|
+
>
|
|
46
|
+
>
|
|
47
|
+
): Promise<number> {
|
|
48
|
+
const { account: account_ = client.account } = args
|
|
49
|
+
if (!account_) throw new AccountOrClientNotFoundError()
|
|
50
|
+
|
|
51
|
+
const account = parseAccount(account_) as KernelSmartAccount<entryPoint>
|
|
52
|
+
|
|
53
|
+
try {
|
|
54
|
+
const nonce = await getAction(
|
|
55
|
+
client,
|
|
56
|
+
readContract,
|
|
57
|
+
"sendTransaction"
|
|
58
|
+
)({
|
|
59
|
+
abi: KernelV3AccountAbi,
|
|
60
|
+
address: account.address,
|
|
61
|
+
functionName: "currentNonce",
|
|
62
|
+
args: []
|
|
63
|
+
})
|
|
64
|
+
return nonce
|
|
65
|
+
} catch (error) {
|
|
66
|
+
return 1
|
|
67
|
+
}
|
|
68
|
+
}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
import {
|
|
2
|
+
type SendTransactionWithPaymasterParameters,
|
|
3
|
+
sendTransaction
|
|
4
|
+
} from "permissionless/actions/smartAccount"
|
|
5
|
+
import type { EntryPoint, Prettify } from "permissionless/types"
|
|
6
|
+
import {
|
|
7
|
+
AccountOrClientNotFoundError,
|
|
8
|
+
parseAccount
|
|
9
|
+
} from "permissionless/utils"
|
|
10
|
+
import type { Chain, Client, Hash, Transport } from "viem"
|
|
11
|
+
import { encodeFunctionData, getAction } from "viem/utils"
|
|
12
|
+
import type { KernelSmartAccount } from "../../accounts/index.js"
|
|
13
|
+
import { KernelV3AccountAbi } from "../../accounts/kernel/abi/kernel_v_3_0_0/KernelAccountAbi.js"
|
|
14
|
+
|
|
15
|
+
export type InvalidateNonceParameters<
|
|
16
|
+
entryPoint extends EntryPoint,
|
|
17
|
+
TChain extends Chain | undefined = Chain | undefined,
|
|
18
|
+
TAccount extends KernelSmartAccount<entryPoint> | undefined =
|
|
19
|
+
| KernelSmartAccount<entryPoint>
|
|
20
|
+
| undefined,
|
|
21
|
+
TChainOverride extends Chain | undefined = Chain | undefined
|
|
22
|
+
> = Prettify<
|
|
23
|
+
SendTransactionWithPaymasterParameters<
|
|
24
|
+
entryPoint,
|
|
25
|
+
TChain,
|
|
26
|
+
TAccount,
|
|
27
|
+
TChainOverride
|
|
28
|
+
> & {
|
|
29
|
+
nonceToSet: number
|
|
30
|
+
}
|
|
31
|
+
>
|
|
32
|
+
|
|
33
|
+
export async function invalidateNonce<
|
|
34
|
+
entryPoint extends EntryPoint,
|
|
35
|
+
TTransport extends Transport = Transport,
|
|
36
|
+
TChain extends Chain | undefined = Chain | undefined,
|
|
37
|
+
TAccount extends KernelSmartAccount<entryPoint> | undefined =
|
|
38
|
+
| KernelSmartAccount<entryPoint>
|
|
39
|
+
| undefined,
|
|
40
|
+
TChainOverride extends Chain | undefined = Chain | undefined
|
|
41
|
+
>(
|
|
42
|
+
client: Client<TTransport, TChain, TAccount>,
|
|
43
|
+
args: Prettify<
|
|
44
|
+
InvalidateNonceParameters<entryPoint, TChain, TAccount, TChainOverride>
|
|
45
|
+
>
|
|
46
|
+
): Promise<Hash> {
|
|
47
|
+
const { account: account_ = client.account, middleware, nonceToSet } = args
|
|
48
|
+
if (!account_) throw new AccountOrClientNotFoundError()
|
|
49
|
+
|
|
50
|
+
const account = parseAccount(account_) as KernelSmartAccount<entryPoint>
|
|
51
|
+
|
|
52
|
+
return await getAction(
|
|
53
|
+
client,
|
|
54
|
+
sendTransaction<TChain, TAccount, entryPoint, TChainOverride>,
|
|
55
|
+
"sendTransaction"
|
|
56
|
+
)({
|
|
57
|
+
...args,
|
|
58
|
+
to: account.address,
|
|
59
|
+
data: encodeFunctionData({
|
|
60
|
+
abi: KernelV3AccountAbi,
|
|
61
|
+
functionName: "invalidateNonce",
|
|
62
|
+
args: [nonceToSet]
|
|
63
|
+
}),
|
|
64
|
+
value: 0n,
|
|
65
|
+
account,
|
|
66
|
+
middleware
|
|
67
|
+
})
|
|
68
|
+
}
|
|
@@ -3,10 +3,18 @@ import type { Middleware } from "permissionless/actions/smartAccount"
|
|
|
3
3
|
import type { EntryPoint, Prettify } from "permissionless/types"
|
|
4
4
|
import type { Chain, Client, Hash, Transport } from "viem"
|
|
5
5
|
import type { KernelSmartAccount } from "../../accounts/index.js"
|
|
6
|
+
import {
|
|
7
|
+
type GetKernelV3ModuleCurrentNonceParameters,
|
|
8
|
+
getKernelV3ModuleCurrentNonce
|
|
9
|
+
} from "../../actions/account-client/getKernelV3ModuleCurrentNonce.js"
|
|
6
10
|
import {
|
|
7
11
|
type GetUserOperationGasPriceReturnType,
|
|
8
12
|
getUserOperationGasPrice
|
|
9
13
|
} from "../../actions/account-client/getUserOperationGasPrice.js"
|
|
14
|
+
import {
|
|
15
|
+
type InvalidateNonceParameters,
|
|
16
|
+
invalidateNonce
|
|
17
|
+
} from "../../actions/account-client/invalidateNonce.js"
|
|
10
18
|
import type {
|
|
11
19
|
SignUserOperationParameters,
|
|
12
20
|
SignUserOperationReturnType,
|
|
@@ -106,6 +114,42 @@ export type KernelAccountClientActions<
|
|
|
106
114
|
TChainOverride
|
|
107
115
|
>
|
|
108
116
|
) => Promise<Hash>
|
|
117
|
+
/**
|
|
118
|
+
* Creates, signs, and sends a kernel v3 module nonce invalidation transaction to the network.
|
|
119
|
+
* This function also allows you to sponsor this transaction if sender is a smartAccount
|
|
120
|
+
*
|
|
121
|
+
*
|
|
122
|
+
* @param args - {@link InvalidateNonceParameters}
|
|
123
|
+
* @returns The [Transaction](https://viem.sh/docs/glossary/terms.html#transaction) hash. {@link SendTransactionReturnType}
|
|
124
|
+
*/
|
|
125
|
+
invalidateNonce: <
|
|
126
|
+
TChainOverride extends Chain | undefined = Chain | undefined
|
|
127
|
+
>(
|
|
128
|
+
args: InvalidateNonceParameters<
|
|
129
|
+
entryPoint,
|
|
130
|
+
TChain,
|
|
131
|
+
TSmartAccount,
|
|
132
|
+
TChainOverride
|
|
133
|
+
>
|
|
134
|
+
) => Promise<Hash>
|
|
135
|
+
/**
|
|
136
|
+
* Creates, signs, and sends a transaction to fetch KernelV3 module nonce to the network.
|
|
137
|
+
* This function also allows you to sponsor this transaction if sender is a smartAccount
|
|
138
|
+
*
|
|
139
|
+
*
|
|
140
|
+
* @param args - {@link GetKernelV3ModuleCurrentNonceParameters}
|
|
141
|
+
* @returns nonce
|
|
142
|
+
*/
|
|
143
|
+
getKernelV3ModuleCurrentNonce: <
|
|
144
|
+
TChainOverride extends Chain | undefined = Chain | undefined
|
|
145
|
+
>(
|
|
146
|
+
args: GetKernelV3ModuleCurrentNonceParameters<
|
|
147
|
+
entryPoint,
|
|
148
|
+
TChain,
|
|
149
|
+
TSmartAccount,
|
|
150
|
+
TChainOverride
|
|
151
|
+
>
|
|
152
|
+
) => Promise<number>
|
|
109
153
|
}
|
|
110
154
|
|
|
111
155
|
export function kernelAccountClientActions<entryPoint extends EntryPoint>({
|
|
@@ -141,6 +185,20 @@ export function kernelAccountClientActions<entryPoint extends EntryPoint>({
|
|
|
141
185
|
TChain,
|
|
142
186
|
TSmartAccount
|
|
143
187
|
>
|
|
144
|
-
)
|
|
188
|
+
),
|
|
189
|
+
invalidateNonce: async (args) =>
|
|
190
|
+
invalidateNonce(client, {
|
|
191
|
+
...args,
|
|
192
|
+
middleware
|
|
193
|
+
} as InvalidateNonceParameters<entryPoint, TChain, TSmartAccount>),
|
|
194
|
+
getKernelV3ModuleCurrentNonce: async (args) =>
|
|
195
|
+
getKernelV3ModuleCurrentNonce(client, {
|
|
196
|
+
...args,
|
|
197
|
+
middleware
|
|
198
|
+
} as GetKernelV3ModuleCurrentNonceParameters<
|
|
199
|
+
entryPoint,
|
|
200
|
+
TChain,
|
|
201
|
+
TSmartAccount
|
|
202
|
+
>)
|
|
145
203
|
})
|
|
146
204
|
}
|