@zerodev/sdk 5.4.6 → 5.4.8
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/kernel/utils/common/getUpgradeKernelCall.js +22 -0
- package/_cjs/accounts/kernel/utils/common/getUpgradeKernelCall.js.map +1 -0
- package/_cjs/actions/account-client/upgradeKernel.js +23 -0
- package/_cjs/actions/account-client/upgradeKernel.js.map +1 -0
- package/_cjs/actions/public/getKernelImplementationAddress.js +21 -0
- package/_cjs/actions/public/getKernelImplementationAddress.js.map +1 -0
- package/_cjs/actions/public/index.js +3 -1
- package/_cjs/actions/public/index.js.map +1 -1
- package/_cjs/clients/decorators/kernel.js +2 -0
- package/_cjs/clients/decorators/kernel.js.map +1 -1
- package/_cjs/constants.js +2 -1
- package/_cjs/constants.js.map +1 -1
- package/_cjs/index.js +3 -1
- package/_cjs/index.js.map +1 -1
- package/_esm/accounts/kernel/utils/common/getUpgradeKernelCall.js +18 -0
- package/_esm/accounts/kernel/utils/common/getUpgradeKernelCall.js.map +1 -0
- package/_esm/actions/account-client/upgradeKernel.js +19 -0
- package/_esm/actions/account-client/upgradeKernel.js.map +1 -0
- package/_esm/actions/public/getKernelImplementationAddress.js +39 -0
- package/_esm/actions/public/getKernelImplementationAddress.js.map +1 -0
- package/_esm/actions/public/index.js +1 -0
- package/_esm/actions/public/index.js.map +1 -1
- package/_esm/clients/decorators/kernel.js +2 -0
- package/_esm/clients/decorators/kernel.js.map +1 -1
- package/_esm/constants.js +1 -0
- package/_esm/constants.js.map +1 -1
- package/_esm/index.js +1 -0
- package/_esm/index.js.map +1 -1
- package/_types/accounts/kernel/utils/common/getUpgradeKernelCall.d.ts +9 -0
- package/_types/accounts/kernel/utils/common/getUpgradeKernelCall.d.ts.map +1 -0
- package/_types/actions/account-client/upgradeKernel.d.ts +8 -0
- package/_types/actions/account-client/upgradeKernel.d.ts.map +1 -0
- package/_types/actions/public/getKernelImplementationAddress.d.ts +28 -0
- package/_types/actions/public/getKernelImplementationAddress.d.ts.map +1 -0
- package/_types/actions/public/index.d.ts +1 -0
- package/_types/actions/public/index.d.ts.map +1 -1
- package/_types/clients/decorators/kernel.d.ts +9 -0
- package/_types/clients/decorators/kernel.d.ts.map +1 -1
- package/_types/constants.d.ts +1 -0
- package/_types/constants.d.ts.map +1 -1
- package/_types/index.d.ts +1 -0
- package/_types/index.d.ts.map +1 -1
- package/accounts/kernel/utils/common/getUpgradeKernelCall.ts +29 -0
- package/actions/account-client/upgradeKernel.ts +49 -0
- package/actions/public/getKernelImplementationAddress.ts +52 -0
- package/actions/public/index.ts +1 -0
- package/clients/decorators/kernel.ts +19 -0
- package/constants.ts +3 -0
- package/index.ts +1 -0
- package/package.json +1 -1
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getUpgradeKernelCall = void 0;
|
|
4
|
+
const viem_1 = require("viem");
|
|
5
|
+
const constants_js_1 = require("../../../../constants.js");
|
|
6
|
+
const utils_js_1 = require("../../../../utils.js");
|
|
7
|
+
const KernelAccountAbi_js_1 = require("../../abi/kernel_v_3_0_0/KernelAccountAbi.js");
|
|
8
|
+
function getUpgradeKernelCall(account, kernelVersion) {
|
|
9
|
+
(0, utils_js_1.validateKernelVersionWithEntryPoint)(account.entryPoint.version, kernelVersion);
|
|
10
|
+
const implementation = constants_js_1.KernelVersionToAddressesMap[kernelVersion].accountImplementationAddress;
|
|
11
|
+
return {
|
|
12
|
+
to: account.address,
|
|
13
|
+
data: (0, viem_1.encodeFunctionData)({
|
|
14
|
+
abi: KernelAccountAbi_js_1.KernelV3AccountAbi,
|
|
15
|
+
functionName: "upgradeTo",
|
|
16
|
+
args: [implementation]
|
|
17
|
+
}),
|
|
18
|
+
value: 0n
|
|
19
|
+
};
|
|
20
|
+
}
|
|
21
|
+
exports.getUpgradeKernelCall = getUpgradeKernelCall;
|
|
22
|
+
//# sourceMappingURL=getUpgradeKernelCall.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getUpgradeKernelCall.js","sourceRoot":"","sources":["../../../../../accounts/kernel/utils/common/getUpgradeKernelCall.ts"],"names":[],"mappings":";;;AACA,+BAAyC;AAEzC,2DAAsE;AAEtE,mDAA0E;AAC1E,sFAAiF;AAEjF,SAAgB,oBAAoB,CAChC,OAAqB,EACrB,aAAkC;IAElC,IAAA,8CAAmC,EAC/B,OAAO,CAAC,UAAU,CAAC,OAAO,EAC1B,aAAa,CAChB,CAAA;IACD,MAAM,cAAc,GAChB,0CAA2B,CAAC,aAAa,CAAC,CAAC,4BAA4B,CAAA;IAE3E,OAAO;QACH,EAAE,EAAE,OAAO,CAAC,OAAO;QACnB,IAAI,EAAE,IAAA,yBAAkB,EAAC;YACrB,GAAG,EAAE,wCAAkB;YACvB,YAAY,EAAE,WAAW;YACzB,IAAI,EAAE,CAAC,cAAc,CAAC;SACzB,CAAC;QACF,KAAK,EAAE,EAAE;KACZ,CAAA;AACL,CAAC;AApBD,oDAoBC"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.upgradeKernel = void 0;
|
|
4
|
+
const account_abstraction_1 = require("viem/account-abstraction");
|
|
5
|
+
const utils_1 = require("viem/utils");
|
|
6
|
+
const getUpgradeKernelCall_js_1 = require("../../accounts/kernel/utils/common/getUpgradeKernelCall.js");
|
|
7
|
+
const index_js_1 = require("../../errors/index.js");
|
|
8
|
+
async function upgradeKernel(client, args) {
|
|
9
|
+
const { account: account_ = client.account, kernelVersion } = args;
|
|
10
|
+
if (!account_)
|
|
11
|
+
throw new index_js_1.AccountNotFoundError({
|
|
12
|
+
docsPath: "/docs/actions/wallet/sendTransaction"
|
|
13
|
+
});
|
|
14
|
+
const account = (0, utils_1.parseAccount)(account_);
|
|
15
|
+
const call = (0, getUpgradeKernelCall_js_1.getUpgradeKernelCall)(account, kernelVersion);
|
|
16
|
+
return await (0, utils_1.getAction)(client, account_abstraction_1.sendUserOperation, "sendUserOperation")({
|
|
17
|
+
...args,
|
|
18
|
+
calls: [call],
|
|
19
|
+
account
|
|
20
|
+
});
|
|
21
|
+
}
|
|
22
|
+
exports.upgradeKernel = upgradeKernel;
|
|
23
|
+
//# sourceMappingURL=upgradeKernel.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"upgradeKernel.js","sourceRoot":"","sources":["../../../actions/account-client/upgradeKernel.ts"],"names":[],"mappings":";;;AACA,kEAIiC;AACjC,sCAAoD;AACpD,wGAAiG;AACjG,oDAA4D;AAarD,KAAK,UAAU,aAAa,CAM/B,MAAyC,EACzC,IAAwE;IAExE,MAAM,EAAE,OAAO,EAAE,QAAQ,GAAG,MAAM,CAAC,OAAO,EAAE,aAAa,EAAE,GAAG,IAAI,CAAA;IAClE,IAAI,CAAC,QAAQ;QACT,MAAM,IAAI,+BAAoB,CAAC;YAC3B,QAAQ,EAAE,sCAAsC;SACnD,CAAC,CAAA;IAEN,MAAM,OAAO,GAAG,IAAA,oBAAY,EAAC,QAAQ,CAAiB,CAAA;IACtD,MAAM,IAAI,GAAG,IAAA,8CAAoB,EAAC,OAAO,EAAE,aAAa,CAAC,CAAA;IAEzD,OAAO,MAAM,IAAA,iBAAS,EAClB,MAAM,EACN,uCAAiB,EACjB,mBAAmB,CACtB,CAAC;QACE,GAAG,IAAI;QACP,KAAK,EAAE,CAAC,IAAI,CAAC;QACb,OAAO;KACqB,CAAC,CAAA;AACrC,CAAC;AA3BD,sCA2BC"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getKernelImplementationAddress = void 0;
|
|
4
|
+
const actions_1 = require("viem/actions");
|
|
5
|
+
const utils_1 = require("viem/utils");
|
|
6
|
+
const constants_1 = require("../../constants");
|
|
7
|
+
const getKernelImplementationAddress = async (client, args) => {
|
|
8
|
+
const { address } = args;
|
|
9
|
+
const storageValue = await (0, utils_1.getAction)(client, actions_1.getStorageAt, "getStorageAt")({
|
|
10
|
+
address,
|
|
11
|
+
slot: constants_1.KERNEL_IMPLEMENTATION_SLOT
|
|
12
|
+
});
|
|
13
|
+
if (!storageValue) {
|
|
14
|
+
throw new Error("Kernel implementation address not found");
|
|
15
|
+
}
|
|
16
|
+
const addressSlice = (0, utils_1.slice)(storageValue, 12);
|
|
17
|
+
const addressHex = (0, utils_1.isHex)(addressSlice) ? addressSlice : (0, utils_1.toHex)(addressSlice);
|
|
18
|
+
return (0, utils_1.getAddress)(addressHex);
|
|
19
|
+
};
|
|
20
|
+
exports.getKernelImplementationAddress = getKernelImplementationAddress;
|
|
21
|
+
//# sourceMappingURL=getKernelImplementationAddress.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getKernelImplementationAddress.js","sourceRoot":"","sources":["../../../actions/public/getKernelImplementationAddress.ts"],"names":[],"mappings":";;;AACA,0CAA2C;AAC3C,sCAAuE;AACvE,+CAA4D;AA4BrD,MAAM,8BAA8B,GAAG,KAAK,EAC/C,MAAc,EACd,IAA0C,EAC1B,EAAE;IAClB,MAAM,EAAE,OAAO,EAAE,GAAG,IAAI,CAAA;IAExB,MAAM,YAAY,GAAG,MAAM,IAAA,iBAAS,EAChC,MAAM,EACN,sBAAY,EACZ,cAAc,CACjB,CAAC;QACE,OAAO;QACP,IAAI,EAAE,sCAA0B;KACnC,CAAC,CAAA;IACF,IAAI,CAAC,YAAY,EAAE,CAAC;QAChB,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAA;IAC9D,CAAC;IACD,MAAM,YAAY,GAAG,IAAA,aAAK,EAAC,YAAY,EAAE,EAAE,CAAC,CAAA;IAC5C,MAAM,UAAU,GAAG,IAAA,aAAK,EAAC,YAAY,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,IAAA,aAAK,EAAC,YAAY,CAAC,CAAA;IAC3E,OAAO,IAAA,kBAAU,EAAC,UAAU,CAAC,CAAA;AACjC,CAAC,CAAA;AApBY,QAAA,8BAA8B,kCAoB1C"}
|
|
@@ -1,10 +1,12 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.isSmartAccountDeployed = exports.getSenderAddress = exports.getAccountNonce = void 0;
|
|
3
|
+
exports.getKernelImplementationAddress = exports.isSmartAccountDeployed = exports.getSenderAddress = exports.getAccountNonce = void 0;
|
|
4
4
|
var getAccountNonce_js_1 = require("./getAccountNonce.js");
|
|
5
5
|
Object.defineProperty(exports, "getAccountNonce", { enumerable: true, get: function () { return getAccountNonce_js_1.getAccountNonce; } });
|
|
6
6
|
var getSenderAddress_js_1 = require("./getSenderAddress.js");
|
|
7
7
|
Object.defineProperty(exports, "getSenderAddress", { enumerable: true, get: function () { return getSenderAddress_js_1.getSenderAddress; } });
|
|
8
8
|
var isSmartAccountDeployed_js_1 = require("./isSmartAccountDeployed.js");
|
|
9
9
|
Object.defineProperty(exports, "isSmartAccountDeployed", { enumerable: true, get: function () { return isSmartAccountDeployed_js_1.isSmartAccountDeployed; } });
|
|
10
|
+
var getKernelImplementationAddress_js_1 = require("./getKernelImplementationAddress.js");
|
|
11
|
+
Object.defineProperty(exports, "getKernelImplementationAddress", { enumerable: true, get: function () { return getKernelImplementationAddress_js_1.getKernelImplementationAddress; } });
|
|
10
12
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../actions/public/index.ts"],"names":[],"mappings":";;;AAAA,2DAG6B;AADzB,qHAAA,eAAe,OAAA;AAEnB,6DAI8B;AAD1B,uHAAA,gBAAgB,OAAA;AAEpB,yEAAoE;AAA3D,mIAAA,sBAAsB,OAAA"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../actions/public/index.ts"],"names":[],"mappings":";;;AAAA,2DAG6B;AADzB,qHAAA,eAAe,OAAA;AAEnB,6DAI8B;AAD1B,uHAAA,gBAAgB,OAAA;AAEpB,yEAAoE;AAA3D,mIAAA,sBAAsB,OAAA;AAC/B,yFAAoF;AAA3E,mJAAA,8BAA8B,OAAA"}
|
|
@@ -7,6 +7,7 @@ const invalidateNonce_js_1 = require("../../actions/account-client/invalidateNon
|
|
|
7
7
|
const sendTransaction_js_1 = require("../../actions/account-client/sendTransaction.js");
|
|
8
8
|
const signMessage_js_1 = require("../../actions/account-client/signMessage.js");
|
|
9
9
|
const signTypedData_js_1 = require("../../actions/account-client/signTypedData.js");
|
|
10
|
+
const upgradeKernel_js_1 = require("../../actions/account-client/upgradeKernel.js");
|
|
10
11
|
const writeContract_js_1 = require("../../actions/account-client/writeContract.js");
|
|
11
12
|
const index_js_1 = require("../../actions/index.js");
|
|
12
13
|
const estimateGasInERC20_js_1 = require("../../actions/paymaster/estimateGasInERC20.js");
|
|
@@ -26,6 +27,7 @@ function kernelAccountClientActions() {
|
|
|
26
27
|
changeSudoValidator: async (args) => (0, index_js_1.changeSudoValidator)(client, args),
|
|
27
28
|
invalidateNonce: async (args) => (0, invalidateNonce_js_1.invalidateNonce)(client, args),
|
|
28
29
|
getKernelV3ModuleCurrentNonce: async () => (0, getKernelV3ModuleCurrentNonce_js_1.getKernelV3ModuleCurrentNonce)(client),
|
|
30
|
+
upgradeKernel: async (args) => (0, upgradeKernel_js_1.upgradeKernel)(client, args),
|
|
29
31
|
sendTransaction: (args) => (0, sendTransaction_js_1.sendTransaction)(client, args),
|
|
30
32
|
signMessage: (args) => (0, signMessage_js_1.signMessage)(client, args),
|
|
31
33
|
signTypedData: (args) => (0, signTypedData_js_1.signTypedData)(client, args),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"kernel.js","sourceRoot":"","sources":["../../../clients/decorators/kernel.ts"],"names":[],"mappings":";;;AAaA,oHAA6G;AAC7G,0GAGiE;AACjE,wFAGwD;AACxD,wFAAiF;AACjF,gFAAyE;AACzE,oFAA6E;AAC7E,oFAA6E;AAM7E,qDAI+B;AAC/B,yFAIsD;AACtD,6FAIwD;AAejD,MAAM,uBAAuB,GAChC,GAAgD,EAAE,CAClD,CAAC,MAAc,EAAiC,EAAE,CAAC,CAAC;IAChD,oBAAoB,EAAE,KAAK,EAAE,IAAoC,EAAE,EAAE,CACjE,IAAA,8CAAoB,EAChB,MAAmD,EACnD;QACI,GAAG,IAAI;KACV,CACJ;IACL,kBAAkB,EAAE,KAAK,EAAE,IAAkC,EAAE,EAAE,CAC7D,IAAA,0CAAkB,EACd,MAAmD,EACnD,IAAI,CACP;CACR,CAAC,CAAA;AAfO,QAAA,uBAAuB,2BAe9B;
|
|
1
|
+
{"version":3,"file":"kernel.js","sourceRoot":"","sources":["../../../clients/decorators/kernel.ts"],"names":[],"mappings":";;;AAaA,oHAA6G;AAC7G,0GAGiE;AACjE,wFAGwD;AACxD,wFAAiF;AACjF,gFAAyE;AACzE,oFAA6E;AAC7E,oFAGsD;AACtD,oFAA6E;AAM7E,qDAI+B;AAC/B,yFAIsD;AACtD,6FAIwD;AAejD,MAAM,uBAAuB,GAChC,GAAgD,EAAE,CAClD,CAAC,MAAc,EAAiC,EAAE,CAAC,CAAC;IAChD,oBAAoB,EAAE,KAAK,EAAE,IAAoC,EAAE,EAAE,CACjE,IAAA,8CAAoB,EAChB,MAAmD,EACnD;QACI,GAAG,IAAI;KACV,CACJ;IACL,kBAAkB,EAAE,KAAK,EAAE,IAAkC,EAAE,EAAE,CAC7D,IAAA,0CAAkB,EACd,MAAmD,EACnD,IAAI,CACP;CACR,CAAC,CAAA;AAfO,QAAA,uBAAuB,2BAe9B;AAqYN,SAAgB,0BAA0B;IACtC,OAAO,CAMH,MAAgD,EACC,EAAE,CAAC,CAAC;QACrD,iBAAiB,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAA,4BAAiB,EAAC,MAAM,EAAE,IAAI,CAAC;QAC5D,wBAAwB,EAAE,KAAK,IAAI,EAAE,CAAC,IAAA,sDAAwB,EAAC,MAAM,CAAC;QACtE,eAAe,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,IAAA,0BAAe,EAAC,MAAM,EAAE,IAAI,CAAC;QAC9D,mBAAmB,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,IAAA,8BAAmB,EAAC,MAAM,EAAE,IAAI,CAAC;QACtE,eAAe,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,IAAA,oCAAe,EAAC,MAAM,EAAE,IAAI,CAAC;QAC9D,6BAA6B,EAAE,KAAK,IAAI,EAAE,CACtC,IAAA,gEAA6B,EAAC,MAAM,CAAC;QACzC,aAAa,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,IAAA,gCAAa,EAAC,MAAM,EAAE,IAAI,CAAC;QAE1D,eAAe,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAA,oCAAe,EAAC,MAAM,EAAE,IAAW,CAAC;QAC/D,WAAW,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAA,4BAAW,EAAC,MAAM,EAAE,IAAI,CAAC;QAChD,aAAa,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAA,gCAAa,EAAC,MAAM,EAAE,IAAI,CAAC;QACpD,aAAa,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAA,gCAAa,EAAC,MAAM,EAAE,IAAI,CAAC;KACvD,CAAC,CAAA;AACN,CAAC;AAvBD,gEAuBC"}
|
package/_cjs/constants.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.getEntryPoint = exports.KernelFactoryToInitCodeHashMap = exports.safeCreateCallAddress = exports.EXEC_TYPE = exports.CALL_TYPE = exports.VALIDATOR_MODE = exports.VALIDATOR_TYPE = exports.KERNEL_NAME = exports.ONLY_ENTRYPOINT_HOOK_ADDRESS = exports.TOKEN_ACTION = exports.KERNEL_V3_2 = exports.KERNEL_V3_1 = exports.KERNEL_V3_0 = exports.KERNEL_V2_4 = exports.KERNEL_V2_3 = exports.KERNEL_V2_2 = exports.KERNEL_V0_2 = exports.KernelVersionToAddressesMap = exports.FACTORY_ADDRESS_V0_6_INIT_CODE_HASH = exports.FACTORY_ADDRESS_V0_6 = exports.MAGIC_VALUE_SIG_REPLAYABLE = exports.DUMMY_ECDSA_SIG = void 0;
|
|
3
|
+
exports.getEntryPoint = exports.KERNEL_IMPLEMENTATION_SLOT = exports.KernelFactoryToInitCodeHashMap = exports.safeCreateCallAddress = exports.EXEC_TYPE = exports.CALL_TYPE = exports.VALIDATOR_MODE = exports.VALIDATOR_TYPE = exports.KERNEL_NAME = exports.ONLY_ENTRYPOINT_HOOK_ADDRESS = exports.TOKEN_ACTION = exports.KERNEL_V3_2 = exports.KERNEL_V3_1 = exports.KERNEL_V3_0 = exports.KERNEL_V2_4 = exports.KERNEL_V2_3 = exports.KERNEL_V2_2 = exports.KERNEL_V0_2 = exports.KernelVersionToAddressesMap = exports.FACTORY_ADDRESS_V0_6_INIT_CODE_HASH = exports.FACTORY_ADDRESS_V0_6 = exports.MAGIC_VALUE_SIG_REPLAYABLE = exports.DUMMY_ECDSA_SIG = void 0;
|
|
4
4
|
const viem_1 = require("viem");
|
|
5
5
|
const account_abstraction_1 = require("viem/account-abstraction");
|
|
6
6
|
exports.DUMMY_ECDSA_SIG = "0xfffffffffffffffffffffffffffffff0000000000000000000000000000000007aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa1c";
|
|
@@ -82,6 +82,7 @@ exports.KernelFactoryToInitCodeHashMap = {
|
|
|
82
82
|
"0x5de4839a76cf55d0c90e2061ef4386d962E15ae3": "0xee9d8350bd899dd261db689aafd87eb8a30f085adbaff48152399438ff4eed73",
|
|
83
83
|
"0x6723b44Abeec4E71eBE3232BD5B455805baDD22f": "0x6fe6e6ea30eddce942b9618033ab8429f9ddac594053bec8a6744fffc71976e2"
|
|
84
84
|
};
|
|
85
|
+
exports.KERNEL_IMPLEMENTATION_SLOT = "0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc";
|
|
85
86
|
const getEntryPoint = (entryPointVersion) => {
|
|
86
87
|
if (entryPointVersion === "0.6")
|
|
87
88
|
return {
|
package/_cjs/constants.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../constants.ts"],"names":[],"mappings":";;;AAAA,+BAA0D;AAC1D,kEAIiC;AAQpB,QAAA,eAAe,GACxB,sIAAsI,CAAA;AAE7H,QAAA,0BAA0B,GACnC,oEAAoE,CAAA;AAW3D,QAAA,oBAAoB,GAAG,4CAA4C,CAAA;AACnE,QAAA,mCAAmC,GAC5C,oEAAoE,CAAA;AAE3D,QAAA,2BAA2B,GASpC;IACA,OAAO,EAAE;QACL,4BAA4B,EAAE,kBAAW;QACzC,cAAc,EAAE,4CAA4C;KAC/D;IACD,OAAO,EAAE;QACL,4BAA4B,EACxB,4CAA4C;QAChD,cAAc,EAAE,4BAAoB;QACpC,YAAY,EAAE,2CAAmC;KACpD;IACD,OAAO,EAAE;QACL,4BAA4B,EACxB,4CAA4C;QAChD,cAAc,EAAE,4BAAoB;QACpC,YAAY,EAAE,2CAAmC;KACpD;IACD,OAAO,EAAE;QACL,4BAA4B,EACxB,4CAA4C;QAChD,cAAc,EAAE,4BAAoB;QACpC,YAAY,EAAE,2CAAmC;KACpD;IACD,OAAO,EAAE;QACL,4BAA4B,EACxB,4CAA4C;QAChD,cAAc,EAAE,4CAA4C;QAC5D,kBAAkB,EAAE,4CAA4C;QAChE,YAAY,EACR,oEAAoE;KAC3E;IACD,OAAO,EAAE;QACL,4BAA4B,EACxB,4CAA4C;QAChD,cAAc,EAAE,4CAA4C;QAC5D,kBAAkB,EAAE,4CAA4C;QAChE,YAAY,EACR,oEAAoE;KAC3E;IACD,OAAO,EAAE;QACL,4BAA4B,EACxB,4CAA4C;QAChD,cAAc,EAAE,4CAA4C;QAC5D,kBAAkB,EAAE,4CAA4C;QAChE,YAAY,EACR,oEAAoE;KAC3E;CACJ,CAAA;AAEY,QAAA,WAAW,GAA2B,OAAO,CAAA;AAC7C,QAAA,WAAW,GAA2B,OAAO,CAAA;AAC7C,QAAA,WAAW,GAA2B,OAAO,CAAA;AAC7C,QAAA,WAAW,GAA2B,OAAO,CAAA;AAC7C,QAAA,WAAW,GAA2B,OAAO,CAAA;AAC7C,QAAA,WAAW,GAA2B,OAAO,CAAA;AAC7C,QAAA,WAAW,GAA2B,OAAO,CAAA;AAE7C,QAAA,YAAY,GAAG,4CAA4C,CAAA;AAC3D,QAAA,4BAA4B,GACrC,4CAA4C,CAAA;AACnC,QAAA,WAAW,GAAG,QAAQ,CAAA;AAEtB,QAAA,cAAc,GAAG;IAC1B,IAAI,EAAE,MAAM;IACZ,SAAS,EAAE,MAAM;IACjB,UAAU,EAAE,MAAM;CACZ,CAAA;AACV,IAAY,cAGX;AAHD,WAAY,cAAc;IACtB,kCAAgB,CAAA;IAChB,iCAAe,CAAA;AACnB,CAAC,EAHW,cAAc,8BAAd,cAAc,QAGzB;AACD,IAAY,SAIX;AAJD,WAAY,SAAS;IACjB,4BAAe,CAAA;IACf,2BAAc,CAAA;IACd,mCAAsB,CAAA;AAC1B,CAAC,EAJW,SAAS,yBAAT,SAAS,QAIpB;AACD,IAAY,SAGX;AAHD,WAAY,SAAS;IACjB,6BAAgB,CAAA;IAChB,8BAAiB,CAAA;AACrB,CAAC,EAHW,SAAS,yBAAT,SAAS,QAGpB;AAIY,QAAA,qBAAqB,GAC9B,4CAA4C,CAAA;AACnC,QAAA,8BAA8B,GAA4B;IACnE,4CAA4C,EACxC,oEAAoE;IACxE,4CAA4C,EACxC,oEAAoE;CAC3E,CAAA;
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../constants.ts"],"names":[],"mappings":"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"}
|
package/_cjs/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.isPluginInitialized = exports.getUserOperationGasPrice = exports.setPimlicoAsProvider = exports.isProviderSet = exports.getEncodedPluginsData = exports.KernelEIP1193Provider = exports.getCustomNonceKeyFromString = exports.verifyEIP6492Signature = exports.gasTokenAddresses = exports.constants = exports.TokenActionsAbi = exports.KernelFactoryStakerAbi = exports.KernelV3FactoryAbi = exports.KernelV3_1AccountAbi = exports.KernelV3InitAbi = exports.KernelV3ExecuteAbi = exports.KernelV3AccountAbi = exports.KernelFactoryAbi = exports.KernelAccountAbi = exports.createFallbackKernelAccountClient = exports.createKernelAccountClient = exports.createZeroDevPaymasterClient = exports.kernelAccountClientActions = exports.zerodevPaymasterActions = exports.sponsorUserOperation = exports.getPluginsEnableTypedData = exports.getActionSelector = exports.accountMetadata = exports.getKernelV3Nonce = exports.EIP1271Abi = exports.addressToEmptyAccount = exports.KERNEL_ADDRESSES = exports.createKernelAccountV1 = exports.createKernelAccountV0_2 = exports.createKernelAccount = void 0;
|
|
3
|
+
exports.getUpgradeKernelCall = exports.isPluginInitialized = exports.getUserOperationGasPrice = exports.setPimlicoAsProvider = exports.isProviderSet = exports.getEncodedPluginsData = exports.KernelEIP1193Provider = exports.getCustomNonceKeyFromString = exports.verifyEIP6492Signature = exports.gasTokenAddresses = exports.constants = exports.TokenActionsAbi = exports.KernelFactoryStakerAbi = exports.KernelV3FactoryAbi = exports.KernelV3_1AccountAbi = exports.KernelV3InitAbi = exports.KernelV3ExecuteAbi = exports.KernelV3AccountAbi = exports.KernelFactoryAbi = exports.KernelAccountAbi = exports.createFallbackKernelAccountClient = exports.createKernelAccountClient = exports.createZeroDevPaymasterClient = exports.kernelAccountClientActions = exports.zerodevPaymasterActions = exports.sponsorUserOperation = exports.getPluginsEnableTypedData = exports.getActionSelector = exports.accountMetadata = exports.getKernelV3Nonce = exports.EIP1271Abi = exports.addressToEmptyAccount = exports.KERNEL_ADDRESSES = exports.createKernelAccountV1 = exports.createKernelAccountV0_2 = exports.createKernelAccount = void 0;
|
|
4
4
|
const tslib_1 = require("tslib");
|
|
5
5
|
var index_js_1 = require("./accounts/index.js");
|
|
6
6
|
Object.defineProperty(exports, "createKernelAccount", { enumerable: true, get: function () { return index_js_1.createKernelAccount; } });
|
|
@@ -60,4 +60,6 @@ var isPluginInitialized_js_1 = require("./accounts/kernel/utils/plugins/ep0_7/is
|
|
|
60
60
|
Object.defineProperty(exports, "isPluginInitialized", { enumerable: true, get: function () { return isPluginInitialized_js_1.isPluginInitialized; } });
|
|
61
61
|
tslib_1.__exportStar(require("./errors/index.js"), exports);
|
|
62
62
|
tslib_1.__exportStar(require("./utils/index.js"), exports);
|
|
63
|
+
var getUpgradeKernelCall_js_1 = require("./accounts/kernel/utils/common/getUpgradeKernelCall.js");
|
|
64
|
+
Object.defineProperty(exports, "getUpgradeKernelCall", { enumerable: true, get: function () { return getUpgradeKernelCall_js_1.getUpgradeKernelCall; } });
|
|
63
65
|
//# sourceMappingURL=index.js.map
|
package/_cjs/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":";;;;AAAA,gDAgB4B;AAfxB,+GAAA,mBAAmB,OAAA;AACnB,mHAAA,uBAAuB,OAAA;AACvB,iHAAA,qBAAqB,OAAA;AAMrB,4GAAA,gBAAgB,OAAA;AAChB,iHAAA,qBAAqB,OAAA;AACrB,sGAAA,UAAU,OAAA;AACV,4GAAA,gBAAgB,OAAA;AAChB,2GAAA,eAAe,OAAA;AACf,6GAAA,iBAAiB,OAAA;AACjB,qHAAA,yBAAyB,OAAA;AAE7B,uFAIoD;AAHhD,+HAAA,oBAAoB,OAAA;AAKxB,4DAKuC;AAJnC,oHAAA,uBAAuB,OAAA;AAEvB,uHAAA,0BAA0B,OAAA;AAG9B,mEAGqC;AAFjC,kIAAA,4BAA4B,OAAA;AAGhC,2EAGyC;AAFrC,mIAAA,yBAAyB,OAAA;AAG7B,2FAA4F;AAAnF,mJAAA,iCAAiC,OAAA;AAQ1C,iFAA4E;AAAnE,uHAAA,gBAAgB,OAAA;AACzB,iFAA4E;AAAnE,uHAAA,gBAAgB,OAAA;AACzB,gGAIiE;AAH7D,yHAAA,kBAAkB,OAAA;AAClB,yHAAA,kBAAkB,OAAA;AAClB,sHAAA,eAAe,OAAA;AAEnB,8FAA6F;AAApF,2HAAA,oBAAoB,OAAA;AAC7B,gGAA6F;AAApF,yHAAA,kBAAkB,OAAA;AAC3B,4GAAuG;AAA9F,mIAAA,sBAAsB,OAAA;AAC/B,+EAA0E;AAAjE,qHAAA,eAAe,OAAA;AACxB,8CAA2C;AAC3C,qDAA0B;AAC1B,+DAAgF;AAAvE,yHAAA,iBAAiB,OAAA;AAC1B,sDAGkC;AAF9B,kHAAA,sBAAsB,OAAA;AACtB,uHAAA,2BAA2B,OAAA;AAE/B,iDAA4D;AAAnD,iHAAA,qBAAqB,OAAA;AAC9B,2GAAsG;AAA7F,iIAAA,qBAAqB,OAAA;AAC9B,+CAAwE;AAA/D,yGAAA,aAAa,OAAA;AAAE,gHAAA,oBAAoB,OAAA;AAC5C,oGAA+F;AAAtF,uIAAA,wBAAwB,OAAA;AACjC,uGAAkG;AAAzF,6HAAA,mBAAmB,OAAA;AAC5B,4DAAiC;AACjC,2DAAgC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":";;;;AAAA,gDAgB4B;AAfxB,+GAAA,mBAAmB,OAAA;AACnB,mHAAA,uBAAuB,OAAA;AACvB,iHAAA,qBAAqB,OAAA;AAMrB,4GAAA,gBAAgB,OAAA;AAChB,iHAAA,qBAAqB,OAAA;AACrB,sGAAA,UAAU,OAAA;AACV,4GAAA,gBAAgB,OAAA;AAChB,2GAAA,eAAe,OAAA;AACf,6GAAA,iBAAiB,OAAA;AACjB,qHAAA,yBAAyB,OAAA;AAE7B,uFAIoD;AAHhD,+HAAA,oBAAoB,OAAA;AAKxB,4DAKuC;AAJnC,oHAAA,uBAAuB,OAAA;AAEvB,uHAAA,0BAA0B,OAAA;AAG9B,mEAGqC;AAFjC,kIAAA,4BAA4B,OAAA;AAGhC,2EAGyC;AAFrC,mIAAA,yBAAyB,OAAA;AAG7B,2FAA4F;AAAnF,mJAAA,iCAAiC,OAAA;AAQ1C,iFAA4E;AAAnE,uHAAA,gBAAgB,OAAA;AACzB,iFAA4E;AAAnE,uHAAA,gBAAgB,OAAA;AACzB,gGAIiE;AAH7D,yHAAA,kBAAkB,OAAA;AAClB,yHAAA,kBAAkB,OAAA;AAClB,sHAAA,eAAe,OAAA;AAEnB,8FAA6F;AAApF,2HAAA,oBAAoB,OAAA;AAC7B,gGAA6F;AAApF,yHAAA,kBAAkB,OAAA;AAC3B,4GAAuG;AAA9F,mIAAA,sBAAsB,OAAA;AAC/B,+EAA0E;AAAjE,qHAAA,eAAe,OAAA;AACxB,8CAA2C;AAC3C,qDAA0B;AAC1B,+DAAgF;AAAvE,yHAAA,iBAAiB,OAAA;AAC1B,sDAGkC;AAF9B,kHAAA,sBAAsB,OAAA;AACtB,uHAAA,2BAA2B,OAAA;AAE/B,iDAA4D;AAAnD,iHAAA,qBAAqB,OAAA;AAC9B,2GAAsG;AAA7F,iIAAA,qBAAqB,OAAA;AAC9B,+CAAwE;AAA/D,yGAAA,aAAa,OAAA;AAAE,gHAAA,oBAAoB,OAAA;AAC5C,oGAA+F;AAAtF,uIAAA,wBAAwB,OAAA;AACjC,uGAAkG;AAAzF,6HAAA,mBAAmB,OAAA;AAC5B,4DAAiC;AACjC,2DAAgC;AAChC,kGAA6F;AAApF,+HAAA,oBAAoB,OAAA"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { encodeFunctionData } from "viem";
|
|
2
|
+
import { KernelVersionToAddressesMap } from "../../../../constants.js";
|
|
3
|
+
import { validateKernelVersionWithEntryPoint } from "../../../../utils.js";
|
|
4
|
+
import { KernelV3AccountAbi } from "../../abi/kernel_v_3_0_0/KernelAccountAbi.js";
|
|
5
|
+
export function getUpgradeKernelCall(account, kernelVersion) {
|
|
6
|
+
validateKernelVersionWithEntryPoint(account.entryPoint.version, kernelVersion);
|
|
7
|
+
const implementation = KernelVersionToAddressesMap[kernelVersion].accountImplementationAddress;
|
|
8
|
+
return {
|
|
9
|
+
to: account.address,
|
|
10
|
+
data: encodeFunctionData({
|
|
11
|
+
abi: KernelV3AccountAbi,
|
|
12
|
+
functionName: "upgradeTo",
|
|
13
|
+
args: [implementation]
|
|
14
|
+
}),
|
|
15
|
+
value: 0n
|
|
16
|
+
};
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=getUpgradeKernelCall.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getUpgradeKernelCall.js","sourceRoot":"","sources":["../../../../../accounts/kernel/utils/common/getUpgradeKernelCall.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,MAAM,CAAA;AAEzC,OAAO,EAAE,2BAA2B,EAAE,MAAM,0BAA0B,CAAA;AAEtE,OAAO,EAAE,mCAAmC,EAAE,MAAM,sBAAsB,CAAA;AAC1E,OAAO,EAAE,kBAAkB,EAAE,MAAM,8CAA8C,CAAA;AAEjF,MAAM,UAAU,oBAAoB,CAChC,OAAqB,EACrB,aAAkC;IAElC,mCAAmC,CAC/B,OAAO,CAAC,UAAU,CAAC,OAAO,EAC1B,aAAa,CAChB,CAAA;IACD,MAAM,cAAc,GAChB,2BAA2B,CAAC,aAAa,CAAC,CAAC,4BAA4B,CAAA;IAE3E,OAAO;QACH,EAAE,EAAE,OAAO,CAAC,OAAO;QACnB,IAAI,EAAE,kBAAkB,CAAC;YACrB,GAAG,EAAE,kBAAkB;YACvB,YAAY,EAAE,WAAW;YACzB,IAAI,EAAE,CAAC,cAAc,CAAC;SACzB,CAAC;QACF,KAAK,EAAE,EAAE;KACZ,CAAA;AACL,CAAC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { sendUserOperation } from "viem/account-abstraction";
|
|
2
|
+
import { getAction, parseAccount } from "viem/utils";
|
|
3
|
+
import { getUpgradeKernelCall } from "../../accounts/kernel/utils/common/getUpgradeKernelCall.js";
|
|
4
|
+
import { AccountNotFoundError } from "../../errors/index.js";
|
|
5
|
+
export async function upgradeKernel(client, args) {
|
|
6
|
+
const { account: account_ = client.account, kernelVersion } = args;
|
|
7
|
+
if (!account_)
|
|
8
|
+
throw new AccountNotFoundError({
|
|
9
|
+
docsPath: "/docs/actions/wallet/sendTransaction"
|
|
10
|
+
});
|
|
11
|
+
const account = parseAccount(account_);
|
|
12
|
+
const call = getUpgradeKernelCall(account, kernelVersion);
|
|
13
|
+
return await getAction(client, sendUserOperation, "sendUserOperation")({
|
|
14
|
+
...args,
|
|
15
|
+
calls: [call],
|
|
16
|
+
account
|
|
17
|
+
});
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=upgradeKernel.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"upgradeKernel.js","sourceRoot":"","sources":["../../../actions/account-client/upgradeKernel.ts"],"names":[],"mappings":"AACA,OAAO,EAGH,iBAAiB,EACpB,MAAM,0BAA0B,CAAA;AACjC,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AACpD,OAAO,EAAE,oBAAoB,EAAE,MAAM,4DAA4D,CAAA;AACjG,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAA;AAa5D,MAAM,CAAC,KAAK,UAAU,aAAa,CAM/B,MAAyC,EACzC,IAAwE;IAExE,MAAM,EAAE,OAAO,EAAE,QAAQ,GAAG,MAAM,CAAC,OAAO,EAAE,aAAa,EAAE,GAAG,IAAI,CAAA;IAClE,IAAI,CAAC,QAAQ;QACT,MAAM,IAAI,oBAAoB,CAAC;YAC3B,QAAQ,EAAE,sCAAsC;SACnD,CAAC,CAAA;IAEN,MAAM,OAAO,GAAG,YAAY,CAAC,QAAQ,CAAiB,CAAA;IACtD,MAAM,IAAI,GAAG,oBAAoB,CAAC,OAAO,EAAE,aAAa,CAAC,CAAA;IAEzD,OAAO,MAAM,SAAS,CAClB,MAAM,EACN,iBAAiB,EACjB,mBAAmB,CACtB,CAAC;QACE,GAAG,IAAI;QACP,KAAK,EAAE,CAAC,IAAI,CAAC;QACb,OAAO;KACqB,CAAC,CAAA;AACrC,CAAC"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { getStorageAt } from "viem/actions";
|
|
2
|
+
import { getAction, getAddress, isHex, slice, toHex } from "viem/utils";
|
|
3
|
+
import { KERNEL_IMPLEMENTATION_SLOT } from "../../constants";
|
|
4
|
+
/**
|
|
5
|
+
* Returns the address of the kernel implementation.
|
|
6
|
+
*
|
|
7
|
+
* @param client {@link client} that you created using viem's createPublicClient.
|
|
8
|
+
* @param args {@link GetKernelImplementationAddressParams} address
|
|
9
|
+
* @returns Address
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* import { createPublicClient } from "viem"
|
|
13
|
+
* import { getKernelImplementationAddress } from "@zerodev/sdk/actions"
|
|
14
|
+
*
|
|
15
|
+
* const client = createPublicClient({
|
|
16
|
+
* chain: goerli,
|
|
17
|
+
* transport: http("https://goerli.infura.io/v3/your-infura-key")
|
|
18
|
+
* })
|
|
19
|
+
*
|
|
20
|
+
* const kernelImplementationAddress = await getKernelImplementationAddress(client, {
|
|
21
|
+
* address,
|
|
22
|
+
* })
|
|
23
|
+
*
|
|
24
|
+
* // Return 0x0000000000000000000000000000000000000000
|
|
25
|
+
*/
|
|
26
|
+
export const getKernelImplementationAddress = async (client, args) => {
|
|
27
|
+
const { address } = args;
|
|
28
|
+
const storageValue = await getAction(client, getStorageAt, "getStorageAt")({
|
|
29
|
+
address,
|
|
30
|
+
slot: KERNEL_IMPLEMENTATION_SLOT
|
|
31
|
+
});
|
|
32
|
+
if (!storageValue) {
|
|
33
|
+
throw new Error("Kernel implementation address not found");
|
|
34
|
+
}
|
|
35
|
+
const addressSlice = slice(storageValue, 12);
|
|
36
|
+
const addressHex = isHex(addressSlice) ? addressSlice : toHex(addressSlice);
|
|
37
|
+
return getAddress(addressHex);
|
|
38
|
+
};
|
|
39
|
+
//# sourceMappingURL=getKernelImplementationAddress.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getKernelImplementationAddress.js","sourceRoot":"","sources":["../../../actions/public/getKernelImplementationAddress.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAC3C,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AACvE,OAAO,EAAE,0BAA0B,EAAE,MAAM,iBAAiB,CAAA;AAM5D;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,CAAC,MAAM,8BAA8B,GAAG,KAAK,EAC/C,MAAc,EACd,IAA0C,EAC1B,EAAE;IAClB,MAAM,EAAE,OAAO,EAAE,GAAG,IAAI,CAAA;IAExB,MAAM,YAAY,GAAG,MAAM,SAAS,CAChC,MAAM,EACN,YAAY,EACZ,cAAc,CACjB,CAAC;QACE,OAAO;QACP,IAAI,EAAE,0BAA0B;KACnC,CAAC,CAAA;IACF,IAAI,CAAC,YAAY,EAAE,CAAC;QAChB,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAA;IAC9D,CAAC;IACD,MAAM,YAAY,GAAG,KAAK,CAAC,YAAY,EAAE,EAAE,CAAC,CAAA;IAC5C,MAAM,UAAU,GAAG,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,KAAK,CAAC,YAAY,CAAC,CAAA;IAC3E,OAAO,UAAU,CAAC,UAAU,CAAC,CAAA;AACjC,CAAC,CAAA"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
export { getAccountNonce } from "./getAccountNonce.js";
|
|
2
2
|
export { getSenderAddress } from "./getSenderAddress.js";
|
|
3
3
|
export { isSmartAccountDeployed } from "./isSmartAccountDeployed.js";
|
|
4
|
+
export { getKernelImplementationAddress } from "./getKernelImplementationAddress.js";
|
|
4
5
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../actions/public/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAEH,eAAe,EAClB,MAAM,sBAAsB,CAAA;AAC7B,OAAO,EAGH,gBAAgB,EACnB,MAAM,uBAAuB,CAAA;AAC9B,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../actions/public/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAEH,eAAe,EAClB,MAAM,sBAAsB,CAAA;AAC7B,OAAO,EAGH,gBAAgB,EACnB,MAAM,uBAAuB,CAAA;AAC9B,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAA;AACpE,OAAO,EAAE,8BAA8B,EAAE,MAAM,qCAAqC,CAAA"}
|
|
@@ -4,6 +4,7 @@ import { invalidateNonce } from "../../actions/account-client/invalidateNonce.js
|
|
|
4
4
|
import { sendTransaction } from "../../actions/account-client/sendTransaction.js";
|
|
5
5
|
import { signMessage } from "../../actions/account-client/signMessage.js";
|
|
6
6
|
import { signTypedData } from "../../actions/account-client/signTypedData.js";
|
|
7
|
+
import { upgradeKernel } from "../../actions/account-client/upgradeKernel.js";
|
|
7
8
|
import { writeContract } from "../../actions/account-client/writeContract.js";
|
|
8
9
|
import { changeSudoValidator, signUserOperation, uninstallPlugin } from "../../actions/index.js";
|
|
9
10
|
import { estimateGasInERC20 } from "../../actions/paymaster/estimateGasInERC20.js";
|
|
@@ -22,6 +23,7 @@ export function kernelAccountClientActions() {
|
|
|
22
23
|
changeSudoValidator: async (args) => changeSudoValidator(client, args),
|
|
23
24
|
invalidateNonce: async (args) => invalidateNonce(client, args),
|
|
24
25
|
getKernelV3ModuleCurrentNonce: async () => getKernelV3ModuleCurrentNonce(client),
|
|
26
|
+
upgradeKernel: async (args) => upgradeKernel(client, args),
|
|
25
27
|
// biome-ignore lint/suspicious/noExplicitAny: <explanation>
|
|
26
28
|
sendTransaction: (args) => sendTransaction(client, args),
|
|
27
29
|
signMessage: (args) => signMessage(client, args),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"kernel.js","sourceRoot":"","sources":["../../../clients/decorators/kernel.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,6BAA6B,EAAE,MAAM,+DAA+D,CAAA;AAC7G,OAAO,EAEH,wBAAwB,EAC3B,MAAM,0DAA0D,CAAA;AACjE,OAAO,EAEH,eAAe,EAClB,MAAM,iDAAiD,CAAA;AACxD,OAAO,EAAE,eAAe,EAAE,MAAM,iDAAiD,CAAA;AACjF,OAAO,EAAE,WAAW,EAAE,MAAM,6CAA6C,CAAA;AACzE,OAAO,EAAE,aAAa,EAAE,MAAM,+CAA+C,CAAA;AAC7E,OAAO,EAAE,aAAa,EAAE,MAAM,+CAA+C,CAAA;AAM7E,OAAO,EACH,mBAAmB,EACnB,iBAAiB,EACjB,eAAe,EAClB,MAAM,wBAAwB,CAAA;AAC/B,OAAO,EAGH,kBAAkB,EACrB,MAAM,+CAA+C,CAAA;AACtD,OAAO,EAGH,oBAAoB,EACvB,MAAM,iDAAiD,CAAA;AAexD,MAAM,CAAC,MAAM,uBAAuB,GAChC,GAAgD,EAAE,CAClD,CAAC,MAAc,EAAiC,EAAE,CAAC,CAAC;IAChD,oBAAoB,EAAE,KAAK,EAAE,IAAoC,EAAE,EAAE,CACjE,oBAAoB,CAChB,MAAmD,EACnD;QACI,GAAG,IAAI;KACV,CACJ;IACL,kBAAkB,EAAE,KAAK,EAAE,IAAkC,EAAE,EAAE,CAC7D,kBAAkB,CACd,MAAmD,EACnD,IAAI,CACP;CACR,CAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"kernel.js","sourceRoot":"","sources":["../../../clients/decorators/kernel.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,6BAA6B,EAAE,MAAM,+DAA+D,CAAA;AAC7G,OAAO,EAEH,wBAAwB,EAC3B,MAAM,0DAA0D,CAAA;AACjE,OAAO,EAEH,eAAe,EAClB,MAAM,iDAAiD,CAAA;AACxD,OAAO,EAAE,eAAe,EAAE,MAAM,iDAAiD,CAAA;AACjF,OAAO,EAAE,WAAW,EAAE,MAAM,6CAA6C,CAAA;AACzE,OAAO,EAAE,aAAa,EAAE,MAAM,+CAA+C,CAAA;AAC7E,OAAO,EAEH,aAAa,EAChB,MAAM,+CAA+C,CAAA;AACtD,OAAO,EAAE,aAAa,EAAE,MAAM,+CAA+C,CAAA;AAM7E,OAAO,EACH,mBAAmB,EACnB,iBAAiB,EACjB,eAAe,EAClB,MAAM,wBAAwB,CAAA;AAC/B,OAAO,EAGH,kBAAkB,EACrB,MAAM,+CAA+C,CAAA;AACtD,OAAO,EAGH,oBAAoB,EACvB,MAAM,iDAAiD,CAAA;AAexD,MAAM,CAAC,MAAM,uBAAuB,GAChC,GAAgD,EAAE,CAClD,CAAC,MAAc,EAAiC,EAAE,CAAC,CAAC;IAChD,oBAAoB,EAAE,KAAK,EAAE,IAAoC,EAAE,EAAE,CACjE,oBAAoB,CAChB,MAAmD,EACnD;QACI,GAAG,IAAI;KACV,CACJ;IACL,kBAAkB,EAAE,KAAK,EAAE,IAAkC,EAAE,EAAE,CAC7D,kBAAkB,CACd,MAAmD,EACnD,IAAI,CACP;CACR,CAAC,CAAA;AAqYN,MAAM,UAAU,0BAA0B;IACtC,OAAO,CAMH,MAAgD,EACC,EAAE,CAAC,CAAC;QACrD,iBAAiB,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,iBAAiB,CAAC,MAAM,EAAE,IAAI,CAAC;QAC5D,wBAAwB,EAAE,KAAK,IAAI,EAAE,CAAC,wBAAwB,CAAC,MAAM,CAAC;QACtE,eAAe,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,eAAe,CAAC,MAAM,EAAE,IAAI,CAAC;QAC9D,mBAAmB,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,mBAAmB,CAAC,MAAM,EAAE,IAAI,CAAC;QACtE,eAAe,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,eAAe,CAAC,MAAM,EAAE,IAAI,CAAC;QAC9D,6BAA6B,EAAE,KAAK,IAAI,EAAE,CACtC,6BAA6B,CAAC,MAAM,CAAC;QACzC,aAAa,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,aAAa,CAAC,MAAM,EAAE,IAAI,CAAC;QAC1D,4DAA4D;QAC5D,eAAe,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,eAAe,CAAC,MAAM,EAAE,IAAW,CAAC;QAC/D,WAAW,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,WAAW,CAAC,MAAM,EAAE,IAAI,CAAC;QAChD,aAAa,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,aAAa,CAAC,MAAM,EAAE,IAAI,CAAC;QACpD,aAAa,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,aAAa,CAAC,MAAM,EAAE,IAAI,CAAC;KACvD,CAAC,CAAA;AACN,CAAC"}
|
package/_esm/constants.js
CHANGED
|
@@ -89,6 +89,7 @@ export const KernelFactoryToInitCodeHashMap = {
|
|
|
89
89
|
"0x5de4839a76cf55d0c90e2061ef4386d962E15ae3": "0xee9d8350bd899dd261db689aafd87eb8a30f085adbaff48152399438ff4eed73",
|
|
90
90
|
"0x6723b44Abeec4E71eBE3232BD5B455805baDD22f": "0x6fe6e6ea30eddce942b9618033ab8429f9ddac594053bec8a6744fffc71976e2"
|
|
91
91
|
};
|
|
92
|
+
export const KERNEL_IMPLEMENTATION_SLOT = "0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc";
|
|
92
93
|
export const getEntryPoint = (entryPointVersion) => {
|
|
93
94
|
if (entryPointVersion === "0.6")
|
|
94
95
|
return {
|
package/_esm/constants.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../constants.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../constants.ts"],"names":[],"mappings":"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"}
|
package/_esm/index.js
CHANGED
|
@@ -25,4 +25,5 @@ export { getUserOperationGasPrice } from "./actions/account-client/getUserOperat
|
|
|
25
25
|
export { isPluginInitialized } from "./accounts/kernel/utils/plugins/ep0_7/isPluginInitialized.js";
|
|
26
26
|
export * from "./errors/index.js";
|
|
27
27
|
export * from "./utils/index.js";
|
|
28
|
+
export { getUpgradeKernelCall } from "./accounts/kernel/utils/common/getUpgradeKernelCall.js";
|
|
28
29
|
//# sourceMappingURL=index.js.map
|
package/_esm/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,mBAAmB,EACnB,uBAAuB,EACvB,qBAAqB,EAMrB,gBAAgB,EAChB,qBAAqB,EACrB,UAAU,EACV,gBAAgB,EAChB,eAAe,EACf,iBAAiB,EACjB,yBAAyB,EAC5B,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EACH,oBAAoB,EAGvB,MAAM,6CAA6C,CAAA;AACpD,OAAO,EAAiC,MAAM,kCAAkC,CAAA;AAChF,OAAO,EACH,uBAAuB,EAEvB,0BAA0B,EAE7B,MAAM,gCAAgC,CAAA;AACvC,OAAO,EACH,4BAA4B,EAE/B,MAAM,8BAA8B,CAAA;AACrC,OAAO,EACH,yBAAyB,EAE5B,MAAM,kCAAkC,CAAA;AACzC,OAAO,EAAE,iCAAiC,EAAE,MAAM,0CAA0C,CAAA;AAC5F,OAAO,EAMN,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EAAE,gBAAgB,EAAE,MAAM,2CAA2C,CAAA;AAC5E,OAAO,EAAE,gBAAgB,EAAE,MAAM,2CAA2C,CAAA;AAC5E,OAAO,EACH,kBAAkB,EAClB,kBAAkB,EAClB,eAAe,EAClB,MAAM,0DAA0D,CAAA;AACjE,OAAO,EAAE,oBAAoB,EAAE,MAAM,wDAAwD,CAAA;AAC7F,OAAO,EAAE,kBAAkB,EAAE,MAAM,0DAA0D,CAAA;AAC7F,OAAO,EAAE,sBAAsB,EAAE,MAAM,gEAAgE,CAAA;AACvG,OAAO,EAAE,eAAe,EAAE,MAAM,0CAA0C,CAAA;6BAC/C,gBAAgB;wBAA/B,SAAS;AACrB,cAAc,YAAY,CAAA;AAC1B,OAAO,EAAE,iBAAiB,EAAwB,MAAM,wBAAwB,CAAA;AAChF,OAAO,EACH,sBAAsB,EACtB,2BAA2B,EAC9B,MAAM,2BAA2B,CAAA;AAClC,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAA;AAC5D,OAAO,EAAE,qBAAqB,EAAE,MAAM,gEAAgE,CAAA;AACtG,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAA;AACxE,OAAO,EAAE,wBAAwB,EAAE,MAAM,sDAAsD,CAAA;AAC/F,OAAO,EAAE,mBAAmB,EAAE,MAAM,8DAA8D,CAAA;AAClG,cAAc,mBAAmB,CAAA;AACjC,cAAc,kBAAkB,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,mBAAmB,EACnB,uBAAuB,EACvB,qBAAqB,EAMrB,gBAAgB,EAChB,qBAAqB,EACrB,UAAU,EACV,gBAAgB,EAChB,eAAe,EACf,iBAAiB,EACjB,yBAAyB,EAC5B,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EACH,oBAAoB,EAGvB,MAAM,6CAA6C,CAAA;AACpD,OAAO,EAAiC,MAAM,kCAAkC,CAAA;AAChF,OAAO,EACH,uBAAuB,EAEvB,0BAA0B,EAE7B,MAAM,gCAAgC,CAAA;AACvC,OAAO,EACH,4BAA4B,EAE/B,MAAM,8BAA8B,CAAA;AACrC,OAAO,EACH,yBAAyB,EAE5B,MAAM,kCAAkC,CAAA;AACzC,OAAO,EAAE,iCAAiC,EAAE,MAAM,0CAA0C,CAAA;AAC5F,OAAO,EAMN,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EAAE,gBAAgB,EAAE,MAAM,2CAA2C,CAAA;AAC5E,OAAO,EAAE,gBAAgB,EAAE,MAAM,2CAA2C,CAAA;AAC5E,OAAO,EACH,kBAAkB,EAClB,kBAAkB,EAClB,eAAe,EAClB,MAAM,0DAA0D,CAAA;AACjE,OAAO,EAAE,oBAAoB,EAAE,MAAM,wDAAwD,CAAA;AAC7F,OAAO,EAAE,kBAAkB,EAAE,MAAM,0DAA0D,CAAA;AAC7F,OAAO,EAAE,sBAAsB,EAAE,MAAM,gEAAgE,CAAA;AACvG,OAAO,EAAE,eAAe,EAAE,MAAM,0CAA0C,CAAA;6BAC/C,gBAAgB;wBAA/B,SAAS;AACrB,cAAc,YAAY,CAAA;AAC1B,OAAO,EAAE,iBAAiB,EAAwB,MAAM,wBAAwB,CAAA;AAChF,OAAO,EACH,sBAAsB,EACtB,2BAA2B,EAC9B,MAAM,2BAA2B,CAAA;AAClC,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAA;AAC5D,OAAO,EAAE,qBAAqB,EAAE,MAAM,gEAAgE,CAAA;AACtG,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAA;AACxE,OAAO,EAAE,wBAAwB,EAAE,MAAM,sDAAsD,CAAA;AAC/F,OAAO,EAAE,mBAAmB,EAAE,MAAM,8DAA8D,CAAA;AAClG,cAAc,mBAAmB,CAAA;AACjC,cAAc,kBAAkB,CAAA;AAChC,OAAO,EAAE,oBAAoB,EAAE,MAAM,wDAAwD,CAAA"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { Hex } from "viem";
|
|
2
|
+
import type { SmartAccount } from "viem/account-abstraction";
|
|
3
|
+
import type { KERNEL_VERSION_TYPE } from "../../../../types/kernel.js";
|
|
4
|
+
export declare function getUpgradeKernelCall(account: SmartAccount, kernelVersion: KERNEL_VERSION_TYPE): {
|
|
5
|
+
to: string;
|
|
6
|
+
data: Hex;
|
|
7
|
+
value: bigint;
|
|
8
|
+
};
|
|
9
|
+
//# sourceMappingURL=getUpgradeKernelCall.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getUpgradeKernelCall.d.ts","sourceRoot":"","sources":["../../../../../accounts/kernel/utils/common/getUpgradeKernelCall.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,MAAM,CAAA;AAE/B,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAA;AAE5D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAA;AAItE,wBAAgB,oBAAoB,CAChC,OAAO,EAAE,YAAY,EACrB,aAAa,EAAE,mBAAmB,GACnC;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,GAAG,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAiB1C"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { Chain, Client, Hash, Prettify, Transport } from "viem";
|
|
2
|
+
import { type SendUserOperationParameters, type SmartAccount } from "viem/account-abstraction";
|
|
3
|
+
import type { KERNEL_VERSION_TYPE } from "../../types/kernel.js";
|
|
4
|
+
export type UpgradeKernelParameters<account extends SmartAccount | undefined, accountOverride extends SmartAccount | undefined = undefined, calls extends readonly unknown[] = readonly unknown[]> = Prettify<Partial<SendUserOperationParameters<account, accountOverride, calls>> & {
|
|
5
|
+
kernelVersion: KERNEL_VERSION_TYPE;
|
|
6
|
+
}>;
|
|
7
|
+
export declare function upgradeKernel<account extends SmartAccount | undefined, chain extends Chain | undefined, accountOverride extends SmartAccount | undefined = undefined, calls extends readonly unknown[] = readonly unknown[]>(client: Client<Transport, chain, account>, args: Prettify<UpgradeKernelParameters<account, accountOverride, calls>>): Promise<Hash>;
|
|
8
|
+
//# sourceMappingURL=upgradeKernel.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"upgradeKernel.d.ts","sourceRoot":"","sources":["../../../actions/account-client/upgradeKernel.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,MAAM,CAAA;AACpE,OAAO,EACH,KAAK,2BAA2B,EAChC,KAAK,YAAY,EAEpB,MAAM,0BAA0B,CAAA;AAIjC,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAA;AAEhE,MAAM,MAAM,uBAAuB,CAC/B,OAAO,SAAS,YAAY,GAAG,SAAS,EACxC,eAAe,SAAS,YAAY,GAAG,SAAS,GAAG,SAAS,EAC5D,KAAK,SAAS,SAAS,OAAO,EAAE,GAAG,SAAS,OAAO,EAAE,IACrD,QAAQ,CACR,OAAO,CAAC,2BAA2B,CAAC,OAAO,EAAE,eAAe,EAAE,KAAK,CAAC,CAAC,GAAG;IACpE,aAAa,EAAE,mBAAmB,CAAA;CACrC,CACJ,CAAA;AAED,wBAAsB,aAAa,CAC/B,OAAO,SAAS,YAAY,GAAG,SAAS,EACxC,KAAK,SAAS,KAAK,GAAG,SAAS,EAC/B,eAAe,SAAS,YAAY,GAAG,SAAS,GAAG,SAAS,EAC5D,KAAK,SAAS,SAAS,OAAO,EAAE,GAAG,SAAS,OAAO,EAAE,EAErD,MAAM,EAAE,MAAM,CAAC,SAAS,EAAE,KAAK,EAAE,OAAO,CAAC,EACzC,IAAI,EAAE,QAAQ,CAAC,uBAAuB,CAAC,OAAO,EAAE,eAAe,EAAE,KAAK,CAAC,CAAC,GACzE,OAAO,CAAC,IAAI,CAAC,CAmBf"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import type { Address, Client } from "viem";
|
|
2
|
+
export type GetKernelImplementationAddressParams = {
|
|
3
|
+
address: Address;
|
|
4
|
+
};
|
|
5
|
+
/**
|
|
6
|
+
* Returns the address of the kernel implementation.
|
|
7
|
+
*
|
|
8
|
+
* @param client {@link client} that you created using viem's createPublicClient.
|
|
9
|
+
* @param args {@link GetKernelImplementationAddressParams} address
|
|
10
|
+
* @returns Address
|
|
11
|
+
*
|
|
12
|
+
* @example
|
|
13
|
+
* import { createPublicClient } from "viem"
|
|
14
|
+
* import { getKernelImplementationAddress } from "@zerodev/sdk/actions"
|
|
15
|
+
*
|
|
16
|
+
* const client = createPublicClient({
|
|
17
|
+
* chain: goerli,
|
|
18
|
+
* transport: http("https://goerli.infura.io/v3/your-infura-key")
|
|
19
|
+
* })
|
|
20
|
+
*
|
|
21
|
+
* const kernelImplementationAddress = await getKernelImplementationAddress(client, {
|
|
22
|
+
* address,
|
|
23
|
+
* })
|
|
24
|
+
*
|
|
25
|
+
* // Return 0x0000000000000000000000000000000000000000
|
|
26
|
+
*/
|
|
27
|
+
export declare const getKernelImplementationAddress: (client: Client, args: GetKernelImplementationAddressParams) => Promise<Address>;
|
|
28
|
+
//# sourceMappingURL=getKernelImplementationAddress.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getKernelImplementationAddress.d.ts","sourceRoot":"","sources":["../../../actions/public/getKernelImplementationAddress.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,MAAM,CAAA;AAK3C,MAAM,MAAM,oCAAoC,GAAG;IAC/C,OAAO,EAAE,OAAO,CAAA;CACnB,CAAA;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,eAAO,MAAM,8BAA8B,WAC/B,MAAM,QACR,oCAAoC,KAC3C,QAAQ,OAAO,CAiBjB,CAAA"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
export { type GetAccountNonceParams, getAccountNonce } from "./getAccountNonce.js";
|
|
2
2
|
export { type GetSenderAddressParams, type InvalidEntryPointError, getSenderAddress } from "./getSenderAddress.js";
|
|
3
3
|
export { isSmartAccountDeployed } from "./isSmartAccountDeployed.js";
|
|
4
|
+
export { getKernelImplementationAddress } from "./getKernelImplementationAddress.js";
|
|
4
5
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../actions/public/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,KAAK,qBAAqB,EAC1B,eAAe,EAClB,MAAM,sBAAsB,CAAA;AAC7B,OAAO,EACH,KAAK,sBAAsB,EAC3B,KAAK,sBAAsB,EAC3B,gBAAgB,EACnB,MAAM,uBAAuB,CAAA;AAC9B,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../actions/public/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,KAAK,qBAAqB,EAC1B,eAAe,EAClB,MAAM,sBAAsB,CAAA;AAC7B,OAAO,EACH,KAAK,sBAAsB,EAC3B,KAAK,sBAAsB,EAC3B,gBAAgB,EACnB,MAAM,uBAAuB,CAAA;AAC9B,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAA;AACpE,OAAO,EAAE,8BAA8B,EAAE,MAAM,qCAAqC,CAAA"}
|
|
@@ -5,6 +5,7 @@ import { type InvalidateNonceParameters } from "../../actions/account-client/inv
|
|
|
5
5
|
import { sendTransaction } from "../../actions/account-client/sendTransaction.js";
|
|
6
6
|
import { signMessage } from "../../actions/account-client/signMessage.js";
|
|
7
7
|
import { signTypedData } from "../../actions/account-client/signTypedData.js";
|
|
8
|
+
import { type UpgradeKernelParameters } from "../../actions/account-client/upgradeKernel.js";
|
|
8
9
|
import { writeContract } from "../../actions/account-client/writeContract.js";
|
|
9
10
|
import type { ChangeSudoValidatorParameters, SignUserOperationReturnType, UninstallPluginParameters } from "../../actions/index.js";
|
|
10
11
|
import { signUserOperation } from "../../actions/index.js";
|
|
@@ -63,6 +64,14 @@ export type KernelAccountClientActions<TChain extends Chain | undefined = Chain
|
|
|
63
64
|
* @returns nonce
|
|
64
65
|
*/
|
|
65
66
|
getKernelV3ModuleCurrentNonce: () => Promise<number>;
|
|
67
|
+
/**
|
|
68
|
+
* Creates, signs, and sends a transaction to upgrade the kernel to the network.
|
|
69
|
+
* This function also allows you to sponsor this transaction if sender is a smartAccount
|
|
70
|
+
*
|
|
71
|
+
* @param args - {@link UpgradeKernelParameters}
|
|
72
|
+
* @returns The [Transaction](https://viem.sh/docs/glossary/terms.html#transaction) hash. {@link SendTransactionReturnType}
|
|
73
|
+
*/
|
|
74
|
+
upgradeKernel: <accountOverride extends SmartAccount | undefined = undefined, calls extends readonly unknown[] = readonly unknown[]>(args: UpgradeKernelParameters<TSmartAccount, accountOverride, calls>) => Promise<Hash>;
|
|
66
75
|
/**
|
|
67
76
|
* Creates, signs, and sends a new transaction to the network.
|
|
68
77
|
* This function also allows you to sponsor this transaction if sender is a smartAccount
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"kernel.d.ts","sourceRoot":"","sources":["../../../clients/decorators/kernel.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACR,GAAG,EACH,KAAK,EACL,MAAM,EACN,oBAAoB,EACpB,oBAAoB,EACpB,IAAI,EACJ,QAAQ,EACR,SAAS,EACT,SAAS,EACT,uBAAuB,EAC1B,MAAM,MAAM,CAAA;AACb,OAAO,KAAK,EAAE,iBAAiB,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAA;AAE/E,OAAO,EACH,KAAK,kCAAkC,EAE1C,MAAM,0DAA0D,CAAA;AACjE,OAAO,EACH,KAAK,yBAAyB,EAEjC,MAAM,iDAAiD,CAAA;AACxD,OAAO,EAAE,eAAe,EAAE,MAAM,iDAAiD,CAAA;AACjF,OAAO,EAAE,WAAW,EAAE,MAAM,6CAA6C,CAAA;AACzE,OAAO,EAAE,aAAa,EAAE,MAAM,+CAA+C,CAAA;AAC7E,OAAO,EAAE,aAAa,EAAE,MAAM,+CAA+C,CAAA;AAC7E,OAAO,KAAK,EACR,6BAA6B,EAC7B,2BAA2B,EAC3B,yBAAyB,EAC5B,MAAM,wBAAwB,CAAA;AAC/B,OAAO,EAEH,iBAAiB,EAEpB,MAAM,wBAAwB,CAAA;AAC/B,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,GAAG;IACxC;;OAEG;IACH,oBAAoB,EAAE,CAClB,IAAI,EAAE,8BAA8B,KACnC,OAAO,CAAC,8BAA8B,CAAC,CAAA;IAC5C,kBAAkB,EAAE,CAChB,IAAI,EAAE,4BAA4B,KACjC,OAAO,CAAC,4BAA4B,CAAC,CAAA;CAC7C,CAAA;AAED,eAAO,MAAM,uBAAuB,8DAEvB,MAAM,KAAG,6BAahB,CAAA;AAEN,MAAM,MAAM,0BAA0B,CAClC,MAAM,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,EACpD,aAAa,SAAS,YAAY,GAAG,SAAS,GAAG,YAAY,GAAG,SAAS,IACzE;IACA;;;;;OAKG;IACH,iBAAiB,EAAE,CACf,eAAe,SAAS,YAAY,GAAG,SAAS,GAAG,SAAS,EAC5D,KAAK,SAAS,SAAS,OAAO,EAAE,GAAG,SAAS,OAAO,EAAE,EAErD,IAAI,EAAE,UAAU,CACZ,OAAO,iBAAiB,CACpB,aAAa,EACb,MAAM,EACN,eAAe,EACf,KAAK,CACR,CACJ,CAAC,CAAC,CAAC,KACH,OAAO,CAAC,2BAA2B,CAAC,CAAA;IACzC;;;;OAIG;IACH,wBAAwB,EAAE,MAAM,OAAO,CACnC,QAAQ,CAAC,kCAAkC,CAAC,CAC/C,CAAA;IACD;;;;;;;OAOG;IACH,eAAe,EAAE,CACb,eAAe,SAAS,YAAY,GAAG,SAAS,GAAG,SAAS,EAC5D,KAAK,SAAS,SAAS,OAAO,EAAE,GAAG,SAAS,OAAO,EAAE,EAErD,IAAI,EAAE,yBAAyB,CAAC,aAAa,EAAE,eAAe,EAAE,KAAK,CAAC,KACrE,OAAO,CAAC,IAAI,CAAC,CAAA;IAClB;;;OAGG;IACH,mBAAmB,EAAE,CACjB,eAAe,SAAS,YAAY,GAAG,SAAS,GAAG,SAAS,EAC5D,KAAK,SAAS,SAAS,OAAO,EAAE,GAAG,SAAS,OAAO,EAAE,EAErD,IAAI,EAAE,6BAA6B,CAC/B,aAAa,EACb,eAAe,EACf,KAAK,CACR,KACA,OAAO,CAAC,IAAI,CAAC,CAAA;IAElB;;;;;;;OAOG;IACH,eAAe,EAAE,CACb,eAAe,SAAS,YAAY,GAAG,SAAS,GAAG,SAAS,EAC5D,KAAK,SAAS,SAAS,OAAO,EAAE,GAAG,SAAS,OAAO,EAAE,EAErD,IAAI,EAAE,yBAAyB,CAAC,aAAa,EAAE,eAAe,EAAE,KAAK,CAAC,KACrE,OAAO,CAAC,IAAI,CAAC,CAAA;IAClB;;;;;;OAMG;IACH,6BAA6B,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,CAAA;IACpD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA0CG;IACH,eAAe,EAAE,CACb,cAAc,SAAS,KAAK,GAAG,SAAS,GAAG,SAAS,EACpD,eAAe,SAAS,YAAY,GAAG,SAAS,GAAG,SAAS,EAC5D,KAAK,SAAS,SAAS,OAAO,EAAE,GAAG,SAAS,OAAO,EAAE,EAErD,IAAI,EAAE,UAAU,CACZ,OAAO,eAAe,CAClB,aAAa,EACb,MAAM,EACN,eAAe,EACf,cAAc,EACd,KAAK,CACR,CACJ,CAAC,CAAC,CAAC,KACH,OAAO,CAAC,IAAI,CAAC,CAAA;IAClB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA0CG;IACH,WAAW,EAAE,CACT,IAAI,EAAE,UAAU,CAAC,OAAO,WAAW,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,KACrD,UAAU,CAAC,OAAO,WAAW,CAAC,aAAa,CAAC,CAAC,CAAA;IAClD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA+FG;IACH,aAAa,EAAE,CACX,KAAK,CAAC,UAAU,SAAS,SAAS,GAAG;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;KAAE,EAC/D,YAAY,SAAS,MAAM,EAE3B,IAAI,EAAE,UAAU,CACZ,OAAO,aAAa,CAAC,UAAU,EAAE,YAAY,EAAE,aAAa,CAAC,CAChE,CAAC,CAAC,CAAC,KACH,UAAU,CACX,OAAO,aAAa,CAAC,UAAU,EAAE,YAAY,EAAE,aAAa,CAAC,CAChE,CAAA;IACD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA+CG;IACH,aAAa,EAAE,CACX,KAAK,CAAC,IAAI,SAAS,GAAG,GAAG,SAAS,OAAO,EAAE,EAC3C,aAAa,SAAS,oBAAoB,CACtC,IAAI,EACJ,YAAY,GAAG,SAAS,CAC3B,GAAG,oBAAoB,CAAC,IAAI,EAAE,YAAY,GAAG,SAAS,CAAC,EACxD,KAAK,SAAS,oBAAoB,CAC9B,IAAI,EACJ,YAAY,GAAG,SAAS,EACxB,aAAa,CAChB,GAAG,oBAAoB,CAAC,IAAI,EAAE,YAAY,GAAG,SAAS,EAAE,aAAa,CAAC,EACvE,cAAc,SAAS,KAAK,GAAG,SAAS,GAAG,SAAS,EAEpD,IAAI,EAAE,uBAAuB,CACzB,IAAI,EACJ,aAAa,EACb,KAAK,EACL,MAAM,EACN,aAAa,EACb,cAAc,CACjB,KACA,UAAU,CACX,OAAO,aAAa,CAChB,MAAM,EACN,aAAa,EACb,IAAI,EACJ,aAAa,EACb,KAAK,EACL,cAAc,CACjB,CACJ,CAAA;CACJ,CAAA;AAED,wBAAgB,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"kernel.d.ts","sourceRoot":"","sources":["../../../clients/decorators/kernel.ts"],"names":[],"mappings":"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"}
|
package/_types/constants.d.ts
CHANGED
|
@@ -45,5 +45,6 @@ export declare const safeCreateCallAddress = "0x9b35Af71d77eaf8d7e40252370304687
|
|
|
45
45
|
export declare const KernelFactoryToInitCodeHashMap: {
|
|
46
46
|
[key: Address]: Hex;
|
|
47
47
|
};
|
|
48
|
+
export declare const KERNEL_IMPLEMENTATION_SLOT = "0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc";
|
|
48
49
|
export declare const getEntryPoint: <TEntryPointVersion extends EntryPointVersion>(entryPointVersion: TEntryPointVersion) => EntryPointType<TEntryPointVersion>;
|
|
49
50
|
//# sourceMappingURL=constants.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../constants.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,OAAO,EAAE,KAAK,GAAG,EAAe,MAAM,MAAM,CAAA;AAC1D,OAAO,EACH,KAAK,iBAAiB,EAGzB,MAAM,0BAA0B,CAAA;AACjC,OAAO,KAAK,EACR,cAAc,EACd,sBAAsB,EACtB,sBAAsB,EACtB,mBAAmB,EACtB,MAAM,mBAAmB,CAAA;AAE1B,eAAO,MAAM,eAAe,yIAC8G,CAAA;AAE1I,eAAO,MAAM,0BAA0B,uEACiC,CAAA;AAWxE,eAAO,MAAM,oBAAoB,+CAA+C,CAAA;AAChF,eAAO,MAAM,mCAAmC,uEACwB,CAAA;AAExE,eAAO,MAAM,2BAA2B,EAAE;KACrC,GAAG,IAAI,mBAAmB,GAAG;QAC1B,4BAA4B,EAAE,OAAO,CAAA;QACrC,cAAc,EAAE,OAAO,CAAA;QACvB,kBAAkB,CAAC,EAAE,GAAG,SAAS,sBAAsB,GACjD,OAAO,GACP,KAAK,CAAA;QACX,YAAY,CAAC,EAAE,GAAG,CAAA;KACrB;CAgDJ,CAAA;AAED,eAAO,MAAM,WAAW,EAAE,sBAAgC,CAAA;AAC1D,eAAO,MAAM,WAAW,EAAE,sBAAgC,CAAA;AAC1D,eAAO,MAAM,WAAW,EAAE,sBAAgC,CAAA;AAC1D,eAAO,MAAM,WAAW,EAAE,sBAAgC,CAAA;AAC1D,eAAO,MAAM,WAAW,EAAE,sBAAgC,CAAA;AAC1D,eAAO,MAAM,WAAW,EAAE,sBAAgC,CAAA;AAC1D,eAAO,MAAM,WAAW,EAAE,sBAAgC,CAAA;AAE1D,eAAO,MAAM,YAAY,+CAA+C,CAAA;AACxE,eAAO,MAAM,4BAA4B,+CACO,CAAA;AAChD,eAAO,MAAM,WAAW,WAAW,CAAA;AAEnC,eAAO,MAAM,cAAc;;;;CAIjB,CAAA;AACV,oBAAY,cAAc;IACtB,OAAO,SAAS;IAChB,MAAM,SAAS;CAClB;AACD,oBAAY,SAAS;IACjB,MAAM,SAAS;IACf,KAAK,SAAS;IACd,aAAa,SAAS;CACzB;AACD,oBAAY,SAAS;IACjB,OAAO,SAAS;IAChB,QAAQ,SAAS;CACpB;AAID,eAAO,MAAM,qBAAqB,+CACc,CAAA;AAChD,eAAO,MAAM,8BAA8B,EAAE;IAAE,CAAC,GAAG,EAAE,OAAO,GAAG,GAAG,CAAA;CAKjE,CAAA;AAED,eAAO,MAAM,aAAa,6HAYzB,CAAA"}
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../constants.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,OAAO,EAAE,KAAK,GAAG,EAAe,MAAM,MAAM,CAAA;AAC1D,OAAO,EACH,KAAK,iBAAiB,EAGzB,MAAM,0BAA0B,CAAA;AACjC,OAAO,KAAK,EACR,cAAc,EACd,sBAAsB,EACtB,sBAAsB,EACtB,mBAAmB,EACtB,MAAM,mBAAmB,CAAA;AAE1B,eAAO,MAAM,eAAe,yIAC8G,CAAA;AAE1I,eAAO,MAAM,0BAA0B,uEACiC,CAAA;AAWxE,eAAO,MAAM,oBAAoB,+CAA+C,CAAA;AAChF,eAAO,MAAM,mCAAmC,uEACwB,CAAA;AAExE,eAAO,MAAM,2BAA2B,EAAE;KACrC,GAAG,IAAI,mBAAmB,GAAG;QAC1B,4BAA4B,EAAE,OAAO,CAAA;QACrC,cAAc,EAAE,OAAO,CAAA;QACvB,kBAAkB,CAAC,EAAE,GAAG,SAAS,sBAAsB,GACjD,OAAO,GACP,KAAK,CAAA;QACX,YAAY,CAAC,EAAE,GAAG,CAAA;KACrB;CAgDJ,CAAA;AAED,eAAO,MAAM,WAAW,EAAE,sBAAgC,CAAA;AAC1D,eAAO,MAAM,WAAW,EAAE,sBAAgC,CAAA;AAC1D,eAAO,MAAM,WAAW,EAAE,sBAAgC,CAAA;AAC1D,eAAO,MAAM,WAAW,EAAE,sBAAgC,CAAA;AAC1D,eAAO,MAAM,WAAW,EAAE,sBAAgC,CAAA;AAC1D,eAAO,MAAM,WAAW,EAAE,sBAAgC,CAAA;AAC1D,eAAO,MAAM,WAAW,EAAE,sBAAgC,CAAA;AAE1D,eAAO,MAAM,YAAY,+CAA+C,CAAA;AACxE,eAAO,MAAM,4BAA4B,+CACO,CAAA;AAChD,eAAO,MAAM,WAAW,WAAW,CAAA;AAEnC,eAAO,MAAM,cAAc;;;;CAIjB,CAAA;AACV,oBAAY,cAAc;IACtB,OAAO,SAAS;IAChB,MAAM,SAAS;CAClB;AACD,oBAAY,SAAS;IACjB,MAAM,SAAS;IACf,KAAK,SAAS;IACd,aAAa,SAAS;CACzB;AACD,oBAAY,SAAS;IACjB,OAAO,SAAS;IAChB,QAAQ,SAAS;CACpB;AAID,eAAO,MAAM,qBAAqB,+CACc,CAAA;AAChD,eAAO,MAAM,8BAA8B,EAAE;IAAE,CAAC,GAAG,EAAE,OAAO,GAAG,GAAG,CAAA;CAKjE,CAAA;AAED,eAAO,MAAM,0BAA0B,uEACiC,CAAA;AAExE,eAAO,MAAM,aAAa,6HAYzB,CAAA"}
|
package/_types/index.d.ts
CHANGED
|
@@ -24,4 +24,5 @@ export { getUserOperationGasPrice } from "./actions/account-client/getUserOperat
|
|
|
24
24
|
export { isPluginInitialized } from "./accounts/kernel/utils/plugins/ep0_7/isPluginInitialized.js";
|
|
25
25
|
export * from "./errors/index.js";
|
|
26
26
|
export * from "./utils/index.js";
|
|
27
|
+
export { getUpgradeKernelCall } from "./accounts/kernel/utils/common/getUpgradeKernelCall.js";
|
|
27
28
|
//# sourceMappingURL=index.d.ts.map
|
package/_types/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,mBAAmB,EACnB,uBAAuB,EACvB,qBAAqB,EACrB,KAAK,6BAA6B,EAClC,KAAK,6BAA6B,EAClC,KAAK,+BAA+B,EACpC,KAAK,gCAAgC,EACrC,KAAK,kCAAkC,EACvC,gBAAgB,EAChB,qBAAqB,EACrB,UAAU,EACV,gBAAgB,EAChB,eAAe,EACf,iBAAiB,EACjB,yBAAyB,EAC5B,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EACH,oBAAoB,EACpB,KAAK,8BAA8B,EACnC,KAAK,8BAA8B,EACtC,MAAM,6CAA6C,CAAA;AACpD,OAAO,EAAE,KAAK,wBAAwB,EAAE,MAAM,kCAAkC,CAAA;AAChF,OAAO,EACH,uBAAuB,EACvB,KAAK,6BAA6B,EAClC,0BAA0B,EAC1B,KAAK,0BAA0B,EAClC,MAAM,gCAAgC,CAAA;AACvC,OAAO,EACH,4BAA4B,EAC5B,KAAK,sBAAsB,EAC9B,MAAM,8BAA8B,CAAA;AACrC,OAAO,EACH,yBAAyB,EACzB,KAAK,mBAAmB,EAC3B,MAAM,kCAAkC,CAAA;AACzC,OAAO,EAAE,iCAAiC,EAAE,MAAM,0CAA0C,CAAA;AAC5F,OAAO,EACH,KAAK,eAAe,EACpB,KAAK,mBAAmB,EACxB,KAAK,yBAAyB,EAC9B,KAAK,mBAAmB,EACxB,KAAK,MAAM,EACd,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EAAE,gBAAgB,EAAE,MAAM,2CAA2C,CAAA;AAC5E,OAAO,EAAE,gBAAgB,EAAE,MAAM,2CAA2C,CAAA;AAC5E,OAAO,EACH,kBAAkB,EAClB,kBAAkB,EAClB,eAAe,EAClB,MAAM,0DAA0D,CAAA;AACjE,OAAO,EAAE,oBAAoB,EAAE,MAAM,wDAAwD,CAAA;AAC7F,OAAO,EAAE,kBAAkB,EAAE,MAAM,0DAA0D,CAAA;AAC7F,OAAO,EAAE,sBAAsB,EAAE,MAAM,gEAAgE,CAAA;AACvG,OAAO,EAAE,eAAe,EAAE,MAAM,0CAA0C,CAAA;AAC1E,OAAO,KAAK,SAAS,MAAM,gBAAgB,CAAA;AAC3C,cAAc,YAAY,CAAA;AAC1B,OAAO,EAAE,iBAAiB,EAAE,KAAK,eAAe,EAAE,MAAM,wBAAwB,CAAA;AAChF,OAAO,EACH,sBAAsB,EACtB,2BAA2B,EAC9B,MAAM,2BAA2B,CAAA;AAClC,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAA;AAC5D,OAAO,EAAE,qBAAqB,EAAE,MAAM,gEAAgE,CAAA;AACtG,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAA;AACxE,OAAO,EAAE,wBAAwB,EAAE,MAAM,sDAAsD,CAAA;AAC/F,OAAO,EAAE,mBAAmB,EAAE,MAAM,8DAA8D,CAAA;AAClG,cAAc,mBAAmB,CAAA;AACjC,cAAc,kBAAkB,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,mBAAmB,EACnB,uBAAuB,EACvB,qBAAqB,EACrB,KAAK,6BAA6B,EAClC,KAAK,6BAA6B,EAClC,KAAK,+BAA+B,EACpC,KAAK,gCAAgC,EACrC,KAAK,kCAAkC,EACvC,gBAAgB,EAChB,qBAAqB,EACrB,UAAU,EACV,gBAAgB,EAChB,eAAe,EACf,iBAAiB,EACjB,yBAAyB,EAC5B,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EACH,oBAAoB,EACpB,KAAK,8BAA8B,EACnC,KAAK,8BAA8B,EACtC,MAAM,6CAA6C,CAAA;AACpD,OAAO,EAAE,KAAK,wBAAwB,EAAE,MAAM,kCAAkC,CAAA;AAChF,OAAO,EACH,uBAAuB,EACvB,KAAK,6BAA6B,EAClC,0BAA0B,EAC1B,KAAK,0BAA0B,EAClC,MAAM,gCAAgC,CAAA;AACvC,OAAO,EACH,4BAA4B,EAC5B,KAAK,sBAAsB,EAC9B,MAAM,8BAA8B,CAAA;AACrC,OAAO,EACH,yBAAyB,EACzB,KAAK,mBAAmB,EAC3B,MAAM,kCAAkC,CAAA;AACzC,OAAO,EAAE,iCAAiC,EAAE,MAAM,0CAA0C,CAAA;AAC5F,OAAO,EACH,KAAK,eAAe,EACpB,KAAK,mBAAmB,EACxB,KAAK,yBAAyB,EAC9B,KAAK,mBAAmB,EACxB,KAAK,MAAM,EACd,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EAAE,gBAAgB,EAAE,MAAM,2CAA2C,CAAA;AAC5E,OAAO,EAAE,gBAAgB,EAAE,MAAM,2CAA2C,CAAA;AAC5E,OAAO,EACH,kBAAkB,EAClB,kBAAkB,EAClB,eAAe,EAClB,MAAM,0DAA0D,CAAA;AACjE,OAAO,EAAE,oBAAoB,EAAE,MAAM,wDAAwD,CAAA;AAC7F,OAAO,EAAE,kBAAkB,EAAE,MAAM,0DAA0D,CAAA;AAC7F,OAAO,EAAE,sBAAsB,EAAE,MAAM,gEAAgE,CAAA;AACvG,OAAO,EAAE,eAAe,EAAE,MAAM,0CAA0C,CAAA;AAC1E,OAAO,KAAK,SAAS,MAAM,gBAAgB,CAAA;AAC3C,cAAc,YAAY,CAAA;AAC1B,OAAO,EAAE,iBAAiB,EAAE,KAAK,eAAe,EAAE,MAAM,wBAAwB,CAAA;AAChF,OAAO,EACH,sBAAsB,EACtB,2BAA2B,EAC9B,MAAM,2BAA2B,CAAA;AAClC,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAA;AAC5D,OAAO,EAAE,qBAAqB,EAAE,MAAM,gEAAgE,CAAA;AACtG,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAA;AACxE,OAAO,EAAE,wBAAwB,EAAE,MAAM,sDAAsD,CAAA;AAC/F,OAAO,EAAE,mBAAmB,EAAE,MAAM,8DAA8D,CAAA;AAClG,cAAc,mBAAmB,CAAA;AACjC,cAAc,kBAAkB,CAAA;AAChC,OAAO,EAAE,oBAAoB,EAAE,MAAM,wDAAwD,CAAA"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import type { Hex } from "viem"
|
|
2
|
+
import { encodeFunctionData } from "viem"
|
|
3
|
+
import type { SmartAccount } from "viem/account-abstraction"
|
|
4
|
+
import { KernelVersionToAddressesMap } from "../../../../constants.js"
|
|
5
|
+
import type { KERNEL_VERSION_TYPE } from "../../../../types/kernel.js"
|
|
6
|
+
import { validateKernelVersionWithEntryPoint } from "../../../../utils.js"
|
|
7
|
+
import { KernelV3AccountAbi } from "../../abi/kernel_v_3_0_0/KernelAccountAbi.js"
|
|
8
|
+
|
|
9
|
+
export function getUpgradeKernelCall(
|
|
10
|
+
account: SmartAccount,
|
|
11
|
+
kernelVersion: KERNEL_VERSION_TYPE
|
|
12
|
+
): { to: string; data: Hex; value: bigint } {
|
|
13
|
+
validateKernelVersionWithEntryPoint(
|
|
14
|
+
account.entryPoint.version,
|
|
15
|
+
kernelVersion
|
|
16
|
+
)
|
|
17
|
+
const implementation =
|
|
18
|
+
KernelVersionToAddressesMap[kernelVersion].accountImplementationAddress
|
|
19
|
+
|
|
20
|
+
return {
|
|
21
|
+
to: account.address,
|
|
22
|
+
data: encodeFunctionData({
|
|
23
|
+
abi: KernelV3AccountAbi,
|
|
24
|
+
functionName: "upgradeTo",
|
|
25
|
+
args: [implementation]
|
|
26
|
+
}),
|
|
27
|
+
value: 0n
|
|
28
|
+
}
|
|
29
|
+
}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import type { Chain, Client, Hash, Prettify, Transport } from "viem"
|
|
2
|
+
import {
|
|
3
|
+
type SendUserOperationParameters,
|
|
4
|
+
type SmartAccount,
|
|
5
|
+
sendUserOperation
|
|
6
|
+
} from "viem/account-abstraction"
|
|
7
|
+
import { getAction, parseAccount } from "viem/utils"
|
|
8
|
+
import { getUpgradeKernelCall } from "../../accounts/kernel/utils/common/getUpgradeKernelCall.js"
|
|
9
|
+
import { AccountNotFoundError } from "../../errors/index.js"
|
|
10
|
+
import type { KERNEL_VERSION_TYPE } from "../../types/kernel.js"
|
|
11
|
+
|
|
12
|
+
export type UpgradeKernelParameters<
|
|
13
|
+
account extends SmartAccount | undefined,
|
|
14
|
+
accountOverride extends SmartAccount | undefined = undefined,
|
|
15
|
+
calls extends readonly unknown[] = readonly unknown[]
|
|
16
|
+
> = Prettify<
|
|
17
|
+
Partial<SendUserOperationParameters<account, accountOverride, calls>> & {
|
|
18
|
+
kernelVersion: KERNEL_VERSION_TYPE
|
|
19
|
+
}
|
|
20
|
+
>
|
|
21
|
+
|
|
22
|
+
export async function upgradeKernel<
|
|
23
|
+
account extends SmartAccount | undefined,
|
|
24
|
+
chain extends Chain | undefined,
|
|
25
|
+
accountOverride extends SmartAccount | undefined = undefined,
|
|
26
|
+
calls extends readonly unknown[] = readonly unknown[]
|
|
27
|
+
>(
|
|
28
|
+
client: Client<Transport, chain, account>,
|
|
29
|
+
args: Prettify<UpgradeKernelParameters<account, accountOverride, calls>>
|
|
30
|
+
): Promise<Hash> {
|
|
31
|
+
const { account: account_ = client.account, kernelVersion } = args
|
|
32
|
+
if (!account_)
|
|
33
|
+
throw new AccountNotFoundError({
|
|
34
|
+
docsPath: "/docs/actions/wallet/sendTransaction"
|
|
35
|
+
})
|
|
36
|
+
|
|
37
|
+
const account = parseAccount(account_) as SmartAccount
|
|
38
|
+
const call = getUpgradeKernelCall(account, kernelVersion)
|
|
39
|
+
|
|
40
|
+
return await getAction(
|
|
41
|
+
client,
|
|
42
|
+
sendUserOperation,
|
|
43
|
+
"sendUserOperation"
|
|
44
|
+
)({
|
|
45
|
+
...args,
|
|
46
|
+
calls: [call],
|
|
47
|
+
account
|
|
48
|
+
} as SendUserOperationParameters)
|
|
49
|
+
}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import type { Address, Client } from "viem"
|
|
2
|
+
import { getStorageAt } from "viem/actions"
|
|
3
|
+
import { getAction, getAddress, isHex, slice, toHex } from "viem/utils"
|
|
4
|
+
import { KERNEL_IMPLEMENTATION_SLOT } from "../../constants"
|
|
5
|
+
|
|
6
|
+
export type GetKernelImplementationAddressParams = {
|
|
7
|
+
address: Address
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
/**
|
|
11
|
+
* Returns the address of the kernel implementation.
|
|
12
|
+
*
|
|
13
|
+
* @param client {@link client} that you created using viem's createPublicClient.
|
|
14
|
+
* @param args {@link GetKernelImplementationAddressParams} address
|
|
15
|
+
* @returns Address
|
|
16
|
+
*
|
|
17
|
+
* @example
|
|
18
|
+
* import { createPublicClient } from "viem"
|
|
19
|
+
* import { getKernelImplementationAddress } from "@zerodev/sdk/actions"
|
|
20
|
+
*
|
|
21
|
+
* const client = createPublicClient({
|
|
22
|
+
* chain: goerli,
|
|
23
|
+
* transport: http("https://goerli.infura.io/v3/your-infura-key")
|
|
24
|
+
* })
|
|
25
|
+
*
|
|
26
|
+
* const kernelImplementationAddress = await getKernelImplementationAddress(client, {
|
|
27
|
+
* address,
|
|
28
|
+
* })
|
|
29
|
+
*
|
|
30
|
+
* // Return 0x0000000000000000000000000000000000000000
|
|
31
|
+
*/
|
|
32
|
+
export const getKernelImplementationAddress = async (
|
|
33
|
+
client: Client,
|
|
34
|
+
args: GetKernelImplementationAddressParams
|
|
35
|
+
): Promise<Address> => {
|
|
36
|
+
const { address } = args
|
|
37
|
+
|
|
38
|
+
const storageValue = await getAction(
|
|
39
|
+
client,
|
|
40
|
+
getStorageAt,
|
|
41
|
+
"getStorageAt"
|
|
42
|
+
)({
|
|
43
|
+
address,
|
|
44
|
+
slot: KERNEL_IMPLEMENTATION_SLOT
|
|
45
|
+
})
|
|
46
|
+
if (!storageValue) {
|
|
47
|
+
throw new Error("Kernel implementation address not found")
|
|
48
|
+
}
|
|
49
|
+
const addressSlice = slice(storageValue, 12)
|
|
50
|
+
const addressHex = isHex(addressSlice) ? addressSlice : toHex(addressSlice)
|
|
51
|
+
return getAddress(addressHex)
|
|
52
|
+
}
|
package/actions/public/index.ts
CHANGED
|
@@ -23,6 +23,10 @@ import {
|
|
|
23
23
|
import { sendTransaction } from "../../actions/account-client/sendTransaction.js"
|
|
24
24
|
import { signMessage } from "../../actions/account-client/signMessage.js"
|
|
25
25
|
import { signTypedData } from "../../actions/account-client/signTypedData.js"
|
|
26
|
+
import {
|
|
27
|
+
type UpgradeKernelParameters,
|
|
28
|
+
upgradeKernel
|
|
29
|
+
} from "../../actions/account-client/upgradeKernel.js"
|
|
26
30
|
import { writeContract } from "../../actions/account-client/writeContract.js"
|
|
27
31
|
import type {
|
|
28
32
|
ChangeSudoValidatorParameters,
|
|
@@ -157,6 +161,20 @@ export type KernelAccountClientActions<
|
|
|
157
161
|
* @returns nonce
|
|
158
162
|
*/
|
|
159
163
|
getKernelV3ModuleCurrentNonce: () => Promise<number>
|
|
164
|
+
/**
|
|
165
|
+
* Creates, signs, and sends a transaction to upgrade the kernel to the network.
|
|
166
|
+
* This function also allows you to sponsor this transaction if sender is a smartAccount
|
|
167
|
+
*
|
|
168
|
+
* @param args - {@link UpgradeKernelParameters}
|
|
169
|
+
* @returns The [Transaction](https://viem.sh/docs/glossary/terms.html#transaction) hash. {@link SendTransactionReturnType}
|
|
170
|
+
*/
|
|
171
|
+
upgradeKernel: <
|
|
172
|
+
accountOverride extends SmartAccount | undefined = undefined,
|
|
173
|
+
calls extends readonly unknown[] = readonly unknown[]
|
|
174
|
+
>(
|
|
175
|
+
args: UpgradeKernelParameters<TSmartAccount, accountOverride, calls>
|
|
176
|
+
) => Promise<Hash>
|
|
177
|
+
|
|
160
178
|
/**
|
|
161
179
|
* Creates, signs, and sends a new transaction to the network.
|
|
162
180
|
* This function also allows you to sponsor this transaction if sender is a smartAccount
|
|
@@ -464,6 +482,7 @@ export function kernelAccountClientActions() {
|
|
|
464
482
|
invalidateNonce: async (args) => invalidateNonce(client, args),
|
|
465
483
|
getKernelV3ModuleCurrentNonce: async () =>
|
|
466
484
|
getKernelV3ModuleCurrentNonce(client),
|
|
485
|
+
upgradeKernel: async (args) => upgradeKernel(client, args),
|
|
467
486
|
// biome-ignore lint/suspicious/noExplicitAny: <explanation>
|
|
468
487
|
sendTransaction: (args) => sendTransaction(client, args as any),
|
|
469
488
|
signMessage: (args) => signMessage(client, args),
|
package/constants.ts
CHANGED
|
@@ -131,6 +131,9 @@ export const KernelFactoryToInitCodeHashMap: { [key: Address]: Hex } = {
|
|
|
131
131
|
"0x6fe6e6ea30eddce942b9618033ab8429f9ddac594053bec8a6744fffc71976e2"
|
|
132
132
|
}
|
|
133
133
|
|
|
134
|
+
export const KERNEL_IMPLEMENTATION_SLOT =
|
|
135
|
+
"0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc"
|
|
136
|
+
|
|
134
137
|
export const getEntryPoint = <TEntryPointVersion extends EntryPointVersion>(
|
|
135
138
|
entryPointVersion: TEntryPointVersion
|
|
136
139
|
): EntryPointType<TEntryPointVersion> => {
|
package/index.ts
CHANGED
|
@@ -68,3 +68,4 @@ export { getUserOperationGasPrice } from "./actions/account-client/getUserOperat
|
|
|
68
68
|
export { isPluginInitialized } from "./accounts/kernel/utils/plugins/ep0_7/isPluginInitialized.js"
|
|
69
69
|
export * from "./errors/index.js"
|
|
70
70
|
export * from "./utils/index.js"
|
|
71
|
+
export { getUpgradeKernelCall } from "./accounts/kernel/utils/common/getUpgradeKernelCall.js"
|