@zerodev/permissions 5.2.1-alpha.1 → 5.2.1-alpha.10
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/deserializePermissionAccount.js +11 -8
- package/_cjs/deserializePermissionAccount.js.map +1 -1
- package/_cjs/policies/index.js +4 -1
- package/_cjs/policies/index.js.map +1 -1
- package/_cjs/policies/toCallPolicy.js +1 -1
- package/_cjs/policies/toCallPolicy.js.map +1 -1
- package/_cjs/policies/toGasPolicy.js +1 -1
- package/_cjs/policies/toGasPolicy.js.map +1 -1
- package/_cjs/policies/toRateLimitPolicy.js +1 -1
- package/_cjs/policies/toRateLimitPolicy.js.map +1 -1
- package/_cjs/policies/toSignatureCallerPolicy.js +1 -1
- package/_cjs/policies/toSignatureCallerPolicy.js.map +1 -1
- package/_cjs/policies/toSudoPolicy.js +1 -1
- package/_cjs/policies/toSudoPolicy.js.map +1 -1
- package/_cjs/signers/toEmptyECDSASigner.js +30 -0
- package/_cjs/signers/toEmptyECDSASigner.js.map +1 -0
- package/_cjs/signers/toWebAuthnPubKey.js +4 -3
- package/_cjs/signers/toWebAuthnPubKey.js.map +1 -1
- package/_cjs/signers/toWebAuthnSigner.js +2 -2
- package/_cjs/signers/toWebAuthnSigner.js.map +1 -1
- package/_cjs/toPermissionValidator.js +13 -9
- package/_cjs/toPermissionValidator.js.map +1 -1
- package/_esm/deserializePermissionAccount.js +13 -10
- package/_esm/deserializePermissionAccount.js.map +1 -1
- package/_esm/policies/index.js +1 -1
- package/_esm/policies/index.js.map +1 -1
- package/_esm/policies/toCallPolicy.js +1 -1
- package/_esm/policies/toCallPolicy.js.map +1 -1
- package/_esm/policies/toGasPolicy.js +1 -1
- package/_esm/policies/toGasPolicy.js.map +1 -1
- package/_esm/policies/toRateLimitPolicy.js +1 -1
- package/_esm/policies/toRateLimitPolicy.js.map +1 -1
- package/_esm/policies/toSignatureCallerPolicy.js +1 -1
- package/_esm/policies/toSignatureCallerPolicy.js.map +1 -1
- package/_esm/policies/toSudoPolicy.js +1 -1
- package/_esm/policies/toSudoPolicy.js.map +1 -1
- package/_esm/signers/toEmptyECDSASigner.js +27 -0
- package/_esm/signers/toEmptyECDSASigner.js.map +1 -0
- package/_esm/signers/toWebAuthnPubKey.js +2 -1
- package/_esm/signers/toWebAuthnPubKey.js.map +1 -1
- package/_esm/signers/toWebAuthnSigner.js +1 -1
- package/_esm/signers/toWebAuthnSigner.js.map +1 -1
- package/_esm/toPermissionValidator.js +14 -10
- package/_esm/toPermissionValidator.js.map +1 -1
- package/_types/deserializePermissionAccount.d.ts +1 -1
- package/_types/deserializePermissionAccount.d.ts.map +1 -1
- package/_types/policies/index.d.ts +1 -1
- package/_types/policies/index.d.ts.map +1 -1
- package/_types/policies/toCallPolicy.d.ts +1 -1
- package/_types/policies/toCallPolicy.d.ts.map +1 -1
- package/_types/policies/toGasPolicy.d.ts +2 -2
- package/_types/policies/toGasPolicy.d.ts.map +1 -1
- package/_types/policies/toRateLimitPolicy.d.ts +1 -1
- package/_types/policies/toRateLimitPolicy.d.ts.map +1 -1
- package/_types/policies/toSignatureCallerPolicy.d.ts +1 -1
- package/_types/policies/toSignatureCallerPolicy.d.ts.map +1 -1
- package/_types/policies/toSudoPolicy.d.ts +1 -1
- package/_types/policies/toSudoPolicy.d.ts.map +1 -1
- package/_types/signers/toEmptyECDSASigner.d.ts +4 -0
- package/_types/signers/toEmptyECDSASigner.d.ts.map +1 -0
- package/_types/signers/toWebAuthnPubKey.d.ts.map +1 -1
- package/_types/signers/toWebAuthnSigner.d.ts.map +1 -1
- package/_types/toPermissionValidator.d.ts.map +1 -1
- package/_types/types.d.ts +2 -2
- package/_types/types.d.ts.map +1 -1
- package/deserializePermissionAccount.ts +19 -11
- package/package.json +3 -3
- package/policies/index.ts +1 -1
- package/policies/toCallPolicy.ts +2 -2
- package/policies/toGasPolicy.ts +4 -4
- package/policies/toRateLimitPolicy.ts +2 -2
- package/policies/toSignatureCallerPolicy.ts +2 -2
- package/policies/toSudoPolicy.ts +2 -2
- package/signers/toEmptyECDSASigner.ts +34 -0
- package/signers/toWebAuthnPubKey.ts +2 -1
- package/signers/toWebAuthnSigner.ts +2 -1
- package/toPermissionValidator.ts +19 -11
- package/types.ts +2 -2
|
@@ -2,7 +2,6 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.decodeParamsFromInitCode = exports.createPolicyFromParams = exports.deserializePermissionAccount = void 0;
|
|
4
4
|
const sdk_1 = require("@zerodev/sdk");
|
|
5
|
-
const sdk_2 = require("@zerodev/sdk");
|
|
6
5
|
const accounts_1 = require("@zerodev/sdk/accounts");
|
|
7
6
|
const permissionless_1 = require("permissionless");
|
|
8
7
|
const viem_1 = require("viem");
|
|
@@ -11,7 +10,11 @@ const index_js_1 = require("./policies/index.js");
|
|
|
11
10
|
const toECDSASigner_js_1 = require("./signers/toECDSASigner.js");
|
|
12
11
|
const toPermissionValidator_js_1 = require("./toPermissionValidator.js");
|
|
13
12
|
const utils_js_1 = require("./utils.js");
|
|
14
|
-
const deserializePermissionAccount = async (client, modularPermissionAccountParams, modularSigner
|
|
13
|
+
const deserializePermissionAccount = async (client, entryPointAddress, modularPermissionAccountParams, modularSigner) => {
|
|
14
|
+
const entryPointVersion = (0, permissionless_1.getEntryPointVersion)(entryPointAddress);
|
|
15
|
+
if (entryPointVersion !== "v0.7") {
|
|
16
|
+
throw new Error("Only EntryPoint 0.7 is supported");
|
|
17
|
+
}
|
|
15
18
|
const params = (0, utils_js_1.deserializePermissionAccountParams)(modularPermissionAccountParams);
|
|
16
19
|
let signer;
|
|
17
20
|
if (params.privateKey)
|
|
@@ -64,17 +67,17 @@ exports.createPolicyFromParams = createPolicyFromParams;
|
|
|
64
67
|
const decodeParamsFromInitCode = (initCode) => {
|
|
65
68
|
let index;
|
|
66
69
|
let validatorInitData;
|
|
67
|
-
const
|
|
68
|
-
abi:
|
|
70
|
+
const deployWithFactoryFunctionData = (0, viem_1.decodeFunctionData)({
|
|
71
|
+
abi: sdk_1.KernelFactoryStakerAbi,
|
|
69
72
|
data: `0x${initCode.slice(42)}`
|
|
70
73
|
});
|
|
71
|
-
if (!
|
|
74
|
+
if (!deployWithFactoryFunctionData)
|
|
72
75
|
throw new Error("Invalid initCode");
|
|
73
|
-
if (
|
|
74
|
-
index =
|
|
76
|
+
if (deployWithFactoryFunctionData.functionName === "deployWithFactory") {
|
|
77
|
+
index = BigInt(deployWithFactoryFunctionData.args[2]);
|
|
75
78
|
const initializeFunctionData = (0, viem_1.decodeFunctionData)({
|
|
76
79
|
abi: sdk_1.KernelV3AccountAbi,
|
|
77
|
-
data:
|
|
80
|
+
data: deployWithFactoryFunctionData.args[1]
|
|
78
81
|
});
|
|
79
82
|
if (!initializeFunctionData)
|
|
80
83
|
throw new Error("Invalid initCode");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deserializePermissionAccount.js","sourceRoot":"","sources":["../deserializePermissionAccount.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"deserializePermissionAccount.js","sourceRoot":"","sources":["../deserializePermissionAccount.ts"],"names":[],"mappings":"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"}
|
package/_cjs/policies/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.toSudoPolicy = exports.toPolicyId = exports.toCallPolicy = exports.toRateLimitPolicy = exports.toSignatureCallerPolicy = exports.toGasPolicy = void 0;
|
|
3
|
+
exports.ParamCondition = exports.CallType = exports.toSudoPolicy = exports.toPolicyId = exports.toCallPolicy = exports.toRateLimitPolicy = exports.toSignatureCallerPolicy = exports.toGasPolicy = void 0;
|
|
4
4
|
var toGasPolicy_js_1 = require("./toGasPolicy.js");
|
|
5
5
|
Object.defineProperty(exports, "toGasPolicy", { enumerable: true, get: function () { return toGasPolicy_js_1.toGasPolicy; } });
|
|
6
6
|
var toSignatureCallerPolicy_js_1 = require("./toSignatureCallerPolicy.js");
|
|
@@ -13,4 +13,7 @@ var toPolicyId_js_1 = require("./utils/toPolicyId.js");
|
|
|
13
13
|
Object.defineProperty(exports, "toPolicyId", { enumerable: true, get: function () { return toPolicyId_js_1.toPolicyId; } });
|
|
14
14
|
var toSudoPolicy_js_1 = require("./toSudoPolicy.js");
|
|
15
15
|
Object.defineProperty(exports, "toSudoPolicy", { enumerable: true, get: function () { return toSudoPolicy_js_1.toSudoPolicy; } });
|
|
16
|
+
var types_js_1 = require("./types.js");
|
|
17
|
+
Object.defineProperty(exports, "CallType", { enumerable: true, get: function () { return types_js_1.CallType; } });
|
|
18
|
+
Object.defineProperty(exports, "ParamCondition", { enumerable: true, get: function () { return types_js_1.ParamCondition; } });
|
|
16
19
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../policies/index.ts"],"names":[],"mappings":";;;AAAA,mDAAoE;AAA3D,6GAAA,WAAW,OAAA;AACpB,2EAGqC;AAFjC,qIAAA,uBAAuB,OAAA;AAG3B,+DAG+B;AAF3B,yHAAA,iBAAiB,OAAA;AAGrB,qDAAuE;AAA9D,+GAAA,YAAY,OAAA;AACrB,uDAAkD;AAAzC,2GAAA,UAAU,OAAA;AACnB,qDAAuE;AAA9D,+GAAA,YAAY,OAAA"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../policies/index.ts"],"names":[],"mappings":";;;AAAA,mDAAoE;AAA3D,6GAAA,WAAW,OAAA;AACpB,2EAGqC;AAFjC,qIAAA,uBAAuB,OAAA;AAG3B,+DAG+B;AAF3B,yHAAA,iBAAiB,OAAA;AAGrB,qDAAuE;AAA9D,+GAAA,YAAY,OAAA;AACrB,uDAAkD;AAAzC,2GAAA,UAAU,OAAA;AACnB,qDAAuE;AAA9D,+GAAA,YAAY,OAAA;AACrB,uCAAqD;AAA5C,oGAAA,QAAQ,OAAA;AAAE,0GAAA,cAAc,OAAA"}
|
|
@@ -6,7 +6,7 @@ const constants_js_1 = require("../constants.js");
|
|
|
6
6
|
const constants_js_2 = require("../constants.js");
|
|
7
7
|
const callPolicyUtils_js_1 = require("./callPolicyUtils.js");
|
|
8
8
|
const types_js_1 = require("./types.js");
|
|
9
|
-
|
|
9
|
+
function toCallPolicy({ policyAddress = constants_js_2.CALL_POLICY_CONTRACT, policyFlag = constants_js_1.PolicyFlags.FOR_ALL_VALIDATION, permissions = [], type = "call" }) {
|
|
10
10
|
const generatedPermissionParams = permissions?.map((perm) => (0, callPolicyUtils_js_1.getPermissionFromABI)({
|
|
11
11
|
abi: perm.abi,
|
|
12
12
|
functionName: perm.functionName,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"toCallPolicy.js","sourceRoot":"","sources":["../../policies/toCallPolicy.ts"],"names":[],"mappings":";;;AACA,+BAAqC;AACrC,kDAA6C;AAC7C,kDAAsD;AAEtD,6DAG6B;AAC7B,yCAAsD;
|
|
1
|
+
{"version":3,"file":"toCallPolicy.js","sourceRoot":"","sources":["../../policies/toCallPolicy.ts"],"names":[],"mappings":";;;AACA,+BAAqC;AACrC,kDAA6C;AAC7C,kDAAsD;AAEtD,6DAG6B;AAC7B,yCAAsD;AAUtD,SAAgB,YAAY,CAG1B,EACE,aAAa,GAAG,mCAAoB,EACpC,UAAU,GAAG,0BAAW,CAAC,kBAAkB,EAC3C,WAAW,GAAG,EAAE,EAChB,IAAI,GAAG,MAAM,EACuB;IACpC,MAAM,yBAAyB,GAAG,WAAW,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CACxD,IAAA,yCAAoB,EAAC;QACjB,GAAG,EAAE,IAAI,CAAC,GAAU;QACpB,YAAY,EAAE,IAAI,CAAC,YAAsB;QACzC,IAAI,EAAE,IAAI,CAAC,IAAU;KACxB,CAAC,CACL,CAAA;IAED,WAAW;QACP,WAAW,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;YAC/B,GAAG,IAAI;YACP,QAAQ,EAAE,IAAI,CAAC,QAAQ,IAAI,mBAAQ,CAAC,IAAI;YACxC,QAAQ,EACJ,IAAI,CAAC,QAAQ;gBACb,yBAAyB,EAAE,CAAC,KAAK,CAAC,EAAE,QAAQ;gBAC5C,IAAA,UAAG,EAAC,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;YAC1B,UAAU,EAAE,IAAI,CAAC,UAAU,IAAI,EAAE;YACjC,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,yBAAyB,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,IAAI,EAAE;SACvE,CAAC,CAAC,IAAI,EAAE,CAAA;IAEb,MAAM,qBAAqB,GAAG,IAAA,yCAAoB,EAAC,WAAW,CAAC,CAAA;IAE/D,OAAO;QACH,aAAa,EAAE,GAAG,EAAE;YAChB,OAAO,qBAAqB,CAAA;QAChC,CAAC;QACD,oBAAoB,EAAE,GAAG,EAAE;YACvB,OAAO,IAAA,gBAAS,EAAC,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC,CAAA;QACjD,CAAC;QACD,YAAY,EAAE;YACV,IAAI;YACJ,aAAa;YACb,UAAU;YACV,WAAW;SACmD;KACrE,CAAA;AACL,CAAC;AA7CD,oCA6CC"}
|
|
@@ -4,7 +4,7 @@ exports.toGasPolicy = void 0;
|
|
|
4
4
|
const viem_1 = require("viem");
|
|
5
5
|
const constants_js_1 = require("../constants.js");
|
|
6
6
|
const constants_js_2 = require("../constants.js");
|
|
7
|
-
|
|
7
|
+
function toGasPolicy({ policyAddress = constants_js_2.GAS_POLICY_CONTRACT, policyFlag = constants_js_1.PolicyFlags.FOR_ALL_VALIDATION, allowed = 0n, enforcePaymaster = false, allowedPaymaster = viem_1.zeroAddress, type = "gas" }) {
|
|
8
8
|
return {
|
|
9
9
|
getPolicyData: () => {
|
|
10
10
|
return (0, viem_1.encodeAbiParameters)([
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"toGasPolicy.js","sourceRoot":"","sources":["../../policies/toGasPolicy.ts"],"names":[],"mappings":";;;AAAA,+BAAgF;AAChF,kDAA6C;AAC7C,kDAAqD;
|
|
1
|
+
{"version":3,"file":"toGasPolicy.js","sourceRoot":"","sources":["../../policies/toGasPolicy.ts"],"names":[],"mappings":";;;AAAA,+BAAgF;AAChF,kDAA6C;AAC7C,kDAAqD;AAUrD,SAAgB,WAAW,CAAC,EACxB,aAAa,GAAG,kCAAmB,EACnC,UAAU,GAAG,0BAAW,CAAC,kBAAkB,EAC3C,OAAO,GAAG,EAAE,EACZ,gBAAgB,GAAG,KAAK,EACxB,gBAAgB,GAAG,kBAAW,EAC9B,IAAI,GAAG,KAAK,EACE;IACd,OAAO;QACH,aAAa,EAAE,GAAG,EAAE;YAChB,OAAO,IAAA,0BAAmB,EACtB;gBACI,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE;gBACpC,EAAE,IAAI,EAAE,kBAAkB,EAAE,IAAI,EAAE,MAAM,EAAE;gBAC1C,EAAE,IAAI,EAAE,kBAAkB,EAAE,IAAI,EAAE,SAAS,EAAE;aAChD,EACD,CAAC,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,CAAC,CAChD,CAAA;QACL,CAAC;QACD,oBAAoB,EAAE,GAAG,EAAE;YACvB,OAAO,IAAA,gBAAS,EAAC,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC,CAAA;QACjD,CAAC;QACD,YAAY,EAAE;YACV,IAAI;YACJ,aAAa;YACb,UAAU;YACV,OAAO;YACP,gBAAgB;YAChB,gBAAgB;SACnB;KACJ,CAAA;AACL,CAAC;AA/BD,kCA+BC"}
|
|
@@ -4,7 +4,7 @@ exports.toRateLimitPolicy = void 0;
|
|
|
4
4
|
const viem_1 = require("viem");
|
|
5
5
|
const constants_js_1 = require("../constants.js");
|
|
6
6
|
const constants_js_2 = require("../constants.js");
|
|
7
|
-
|
|
7
|
+
function toRateLimitPolicy({ policyAddress = constants_js_2.RATE_LIMIT_POLICY_CONTRACT, policyFlag = constants_js_1.PolicyFlags.FOR_ALL_VALIDATION, interval = 0, count, startAt = 0, type = "rate-limit" }) {
|
|
8
8
|
return {
|
|
9
9
|
getPolicyData: () => {
|
|
10
10
|
const intervalHex = interval.toString(16).padStart(12, "0");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"toRateLimitPolicy.js","sourceRoot":"","sources":["../../policies/toRateLimitPolicy.ts"],"names":[],"mappings":";;;AAAA,+BAAgC;AAChC,kDAA6C;AAC7C,kDAA4D;
|
|
1
|
+
{"version":3,"file":"toRateLimitPolicy.js","sourceRoot":"","sources":["../../policies/toRateLimitPolicy.ts"],"names":[],"mappings":";;;AAAA,+BAAgC;AAChC,kDAA6C;AAC7C,kDAA4D;AAU5D,SAAgB,iBAAiB,CAAC,EAC9B,aAAa,GAAG,yCAA0B,EAC1C,UAAU,GAAG,0BAAW,CAAC,kBAAkB,EAC3C,QAAQ,GAAG,CAAC,EACZ,KAAK,EACL,OAAO,GAAG,CAAC,EACX,IAAI,GAAG,YAAY,EACC;IACpB,OAAO;QACH,aAAa,EAAE,GAAG,EAAE;YAChB,MAAM,WAAW,GAAG,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,EAAE,EAAE,GAAG,CAAC,CAAA;YAC3D,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,EAAE,EAAE,GAAG,CAAC,CAAA;YACrD,MAAM,UAAU,GAAG,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,EAAE,EAAE,GAAG,CAAC,CAAA;YAEzD,MAAM,IAAI,GAAG,WAAW,GAAG,QAAQ,GAAG,UAAU,CAAA;YAEhD,OAAO,KAAK,IAAI,EAAE,CAAA;QACtB,CAAC;QACD,oBAAoB,EAAE,GAAG,EAAE;YACvB,OAAO,IAAA,gBAAS,EAAC,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC,CAAA;QACjD,CAAC;QACD,YAAY,EAAE;YACV,IAAI;YACJ,aAAa;YACb,UAAU;YACV,QAAQ;YACR,KAAK;YACL,OAAO;SACV;KACJ,CAAA;AACL,CAAC;AA9BD,8CA8BC"}
|
|
@@ -4,7 +4,7 @@ exports.toSignatureCallerPolicy = void 0;
|
|
|
4
4
|
const viem_1 = require("viem");
|
|
5
5
|
const constants_js_1 = require("../constants.js");
|
|
6
6
|
const constants_js_2 = require("../constants.js");
|
|
7
|
-
|
|
7
|
+
function toSignatureCallerPolicy({ policyAddress = constants_js_2.SIGNATURE_POLICY_CONTRACT, policyFlag = constants_js_1.PolicyFlags.FOR_ALL_VALIDATION, allowedCallers, type = "signature-caller" }) {
|
|
8
8
|
return {
|
|
9
9
|
getPolicyData: () => {
|
|
10
10
|
return (0, viem_1.encodeAbiParameters)([{ name: "allowedCallers", type: "address[]" }], [allowedCallers]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"toSignatureCallerPolicy.js","sourceRoot":"","sources":["../../policies/toSignatureCallerPolicy.ts"],"names":[],"mappings":";;;AAAA,+BAAmE;AACnE,kDAA6C;AAC7C,kDAA2D;
|
|
1
|
+
{"version":3,"file":"toSignatureCallerPolicy.js","sourceRoot":"","sources":["../../policies/toSignatureCallerPolicy.ts"],"names":[],"mappings":";;;AAAA,+BAAmE;AACnE,kDAA6C;AAC7C,kDAA2D;AAQ3D,SAAgB,uBAAuB,CAAC,EACpC,aAAa,GAAG,wCAAyB,EACzC,UAAU,GAAG,0BAAW,CAAC,kBAAkB,EAC3C,cAAc,EACd,IAAI,GAAG,kBAAkB,EACC;IAC1B,OAAO;QACH,aAAa,EAAE,GAAG,EAAE;YAChB,OAAO,IAAA,0BAAmB,EACtB,CAAC,EAAE,IAAI,EAAE,gBAAgB,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC,EAC/C,CAAC,cAAc,CAAC,CACnB,CAAA;QACL,CAAC;QACD,oBAAoB,EAAE,GAAG,EAAE;YACvB,OAAO,IAAA,gBAAS,EAAC,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC,CAAA;QACjD,CAAC;QACD,YAAY,EAAE;YACV,IAAI;YACJ,aAAa;YACb,UAAU;YACV,cAAc;SACjB;KACJ,CAAA;AACL,CAAC;AAvBD,0DAuBC"}
|
|
@@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.toSudoPolicy = void 0;
|
|
4
4
|
const viem_1 = require("viem");
|
|
5
5
|
const constants_js_1 = require("../constants.js");
|
|
6
|
-
|
|
6
|
+
function toSudoPolicy({ policyAddress = constants_js_1.SUDO_POLICY_CONTRACT, policyFlag = constants_js_1.PolicyFlags.FOR_ALL_VALIDATION, type = "sudo" }) {
|
|
7
7
|
return {
|
|
8
8
|
getPolicyData: () => {
|
|
9
9
|
return "0x";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"toSudoPolicy.js","sourceRoot":"","sources":["../../policies/toSudoPolicy.ts"],"names":[],"mappings":";;;AAAA,+BAAgC;AAChC,kDAAmE;
|
|
1
|
+
{"version":3,"file":"toSudoPolicy.js","sourceRoot":"","sources":["../../policies/toSudoPolicy.ts"],"names":[],"mappings":";;;AAAA,+BAAgC;AAChC,kDAAmE;AAOnE,SAAgB,YAAY,CAAC,EACzB,aAAa,GAAG,mCAAoB,EACpC,UAAU,GAAG,0BAAW,CAAC,kBAAkB,EAC3C,IAAI,GAAG,MAAM,EACE;IACf,OAAO;QACH,aAAa,EAAE,GAAG,EAAE;YAChB,OAAO,IAAI,CAAA;QACf,CAAC;QACD,oBAAoB,EAAE,GAAG,EAAE;YACvB,OAAO,IAAA,gBAAS,EAAC,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC,CAAA;QACjD,CAAC;QACD,YAAY,EAAE;YACV,IAAI;YACJ,aAAa;YACb,UAAU;SACb;KACJ,CAAA;AACL,CAAC;AAlBD,oCAkBC"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.toEmptyECDSASigner = void 0;
|
|
4
|
+
const sdk_1 = require("@zerodev/sdk");
|
|
5
|
+
const accounts_1 = require("viem/accounts");
|
|
6
|
+
const constants_js_1 = require("../constants.js");
|
|
7
|
+
function toEmptyECDSASigner(address) {
|
|
8
|
+
const account = (0, accounts_1.toAccount)({
|
|
9
|
+
address,
|
|
10
|
+
async signMessage() {
|
|
11
|
+
throw new Error("Method not supported");
|
|
12
|
+
},
|
|
13
|
+
async signTransaction(_, __) {
|
|
14
|
+
throw new Error("Method not supported");
|
|
15
|
+
},
|
|
16
|
+
async signTypedData(_typedData) {
|
|
17
|
+
throw new Error("Method not supported");
|
|
18
|
+
}
|
|
19
|
+
});
|
|
20
|
+
return {
|
|
21
|
+
account,
|
|
22
|
+
signerContractAddress: constants_js_1.ECDSA_SIGNER_CONTRACT,
|
|
23
|
+
getSignerData: () => {
|
|
24
|
+
return address;
|
|
25
|
+
},
|
|
26
|
+
getDummySignature: () => sdk_1.constants.DUMMY_ECDSA_SIG
|
|
27
|
+
};
|
|
28
|
+
}
|
|
29
|
+
exports.toEmptyECDSASigner = toEmptyECDSASigner;
|
|
30
|
+
//# sourceMappingURL=toEmptyECDSASigner.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"toEmptyECDSASigner.js","sourceRoot":"","sources":["../../signers/toEmptyECDSASigner.ts"],"names":[],"mappings":";;;AAAA,sCAAwC;AAGxC,4CAAyC;AACzC,kDAAuD;AAGvD,SAAgB,kBAAkB,CAAC,OAAgB;IAC/C,MAAM,OAAO,GAAG,IAAA,oBAAS,EAAC;QACtB,OAAO;QACP,KAAK,CAAC,WAAW;YACb,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAA;QAC3C,CAAC;QACD,KAAK,CAAC,eAAe,CAAC,CAAC,EAAE,EAAE;YACvB,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAA;QAC3C,CAAC;QACD,KAAK,CAAC,aAAa,CAKjB,UAAyD;YACvD,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAA;QAC3C,CAAC;KACJ,CAAC,CAAA;IACF,OAAO;QACH,OAAO;QACP,qBAAqB,EAAE,oCAAqB;QAC5C,aAAa,EAAE,GAAG,EAAE;YAChB,OAAO,OAAO,CAAA;QAClB,CAAC;QACD,iBAAiB,EAAE,GAAG,EAAE,CAAC,eAAS,CAAC,eAAe;KACrD,CAAA;AACL,CAAC;AA1BD,gDA0BC"}
|
|
@@ -2,7 +2,6 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.toWebAuthnPubKey = exports.WebAuthnMode = void 0;
|
|
4
4
|
const buffer_1 = require("buffer");
|
|
5
|
-
const browser_1 = require("@simplewebauthn/browser");
|
|
6
5
|
const viem_1 = require("viem");
|
|
7
6
|
const webAuthnUtils_js_1 = require("./webAuthnUtils.js");
|
|
8
7
|
var WebAuthnMode;
|
|
@@ -20,7 +19,8 @@ const toWebAuthnPubKey = async ({ passkeyName, passkeyServerUrl, mode = WebAuthn
|
|
|
20
19
|
credentials: "include"
|
|
21
20
|
});
|
|
22
21
|
const loginOptions = await loginOptionsResponse.json();
|
|
23
|
-
const
|
|
22
|
+
const { startAuthentication } = await Promise.resolve().then(() => require("@simplewebauthn/browser"));
|
|
23
|
+
const loginCred = await startAuthentication(loginOptions);
|
|
24
24
|
authenticatorIdHash = (0, viem_1.keccak256)((0, webAuthnUtils_js_1.uint8ArrayToHexString)((0, webAuthnUtils_js_1.b64ToBytes)(loginCred.id)));
|
|
25
25
|
const loginVerifyResponse = await fetch(`${passkeyServerUrl}/login/verify`, {
|
|
26
26
|
method: "POST",
|
|
@@ -55,7 +55,8 @@ const toWebAuthnPubKey = async ({ passkeyName, passkeyServerUrl, mode = WebAuthn
|
|
|
55
55
|
throw new Error("sessionStorage is not available");
|
|
56
56
|
}
|
|
57
57
|
sessionStorage.setItem("userId", registerOptions.userId);
|
|
58
|
-
const
|
|
58
|
+
const { startRegistration } = await Promise.resolve().then(() => require("@simplewebauthn/browser"));
|
|
59
|
+
const registerCred = await startRegistration(registerOptions.options);
|
|
59
60
|
authenticatorIdHash = (0, viem_1.keccak256)((0, webAuthnUtils_js_1.uint8ArrayToHexString)((0, webAuthnUtils_js_1.b64ToBytes)(registerCred.id)));
|
|
60
61
|
const registerVerifyResponse = await fetch(`${passkeyServerUrl}/register/verify`, {
|
|
61
62
|
method: "POST",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"toWebAuthnPubKey.js","sourceRoot":"","sources":["../../signers/toWebAuthnPubKey.ts"],"names":[],"mappings":";;;AAAA,mCAA+B;AAC/B
|
|
1
|
+
{"version":3,"file":"toWebAuthnPubKey.js","sourceRoot":"","sources":["../../signers/toWebAuthnPubKey.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.toWebAuthnSigner = void 0;
|
|
4
|
-
const browser_1 = require("@simplewebauthn/browser");
|
|
5
4
|
const accounts_1 = require("permissionless/accounts");
|
|
6
5
|
const viem_1 = require("viem");
|
|
7
6
|
const viem_2 = require("viem");
|
|
@@ -55,7 +54,8 @@ const toWebAuthnSigner = async (client, { signerContractAddress = constants_js_1
|
|
|
55
54
|
allowCredentials: signInitiateResult.allowCredentials,
|
|
56
55
|
userVerification: "required"
|
|
57
56
|
};
|
|
58
|
-
const
|
|
57
|
+
const { startAuthentication } = await Promise.resolve().then(() => require("@simplewebauthn/browser"));
|
|
58
|
+
const cred = await startAuthentication(assertionOptions);
|
|
59
59
|
const verifyResponse = await fetch(`${passkeyServerUrl}/sign-verify`, {
|
|
60
60
|
method: "POST",
|
|
61
61
|
headers: { "Content-Type": "application/json" },
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"toWebAuthnSigner.js","sourceRoot":"","sources":["../../signers/toWebAuthnSigner.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"toWebAuthnSigner.js","sourceRoot":"","sources":["../../signers/toWebAuthnSigner.ts"],"names":[],"mappings":"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"}
|
|
@@ -10,17 +10,21 @@ const index_js_1 = require("./policies/index.js");
|
|
|
10
10
|
const index_js_2 = require("./signers/index.js");
|
|
11
11
|
async function toPermissionValidator(client, { signer, policies, entryPoint: entryPointAddress, flag = constants_js_1.PolicyFlags.FOR_ALL_VALIDATION }) {
|
|
12
12
|
const chainId = await (0, actions_1.getChainId)(client);
|
|
13
|
+
const entryPointVersion = (0, permissionless_1.getEntryPointVersion)(entryPointAddress);
|
|
14
|
+
if (entryPointVersion !== "v0.7") {
|
|
15
|
+
throw new Error("Only EntryPoint 0.7 is supported");
|
|
16
|
+
}
|
|
13
17
|
const getEnableData = async (_kernelAccountAddress) => {
|
|
14
18
|
const enableData = (0, viem_1.encodeAbiParameters)([{ name: "policyAndSignerData", type: "bytes[]" }], [
|
|
15
19
|
[
|
|
16
20
|
...policies.map((policy) => (0, viem_1.concat)([
|
|
17
21
|
policy.getPolicyInfoInBytes(),
|
|
18
|
-
policy.getPolicyData(
|
|
22
|
+
policy.getPolicyData()
|
|
19
23
|
])),
|
|
20
24
|
(0, viem_1.concat)([
|
|
21
25
|
flag,
|
|
22
26
|
signer.signerContractAddress,
|
|
23
|
-
signer.getSignerData(
|
|
27
|
+
signer.getSignerData()
|
|
24
28
|
])
|
|
25
29
|
]
|
|
26
30
|
]);
|
|
@@ -28,7 +32,7 @@ async function toPermissionValidator(client, { signer, policies, entryPoint: ent
|
|
|
28
32
|
};
|
|
29
33
|
const getPermissionId = () => {
|
|
30
34
|
const pIdData = (0, viem_1.encodeAbiParameters)([{ name: "policyAndSignerData", type: "bytes[]" }], [[(0, index_js_1.toPolicyId)(policies), flag, (0, index_js_2.toSignerId)(signer)]]);
|
|
31
|
-
return (0, viem_1.slice)((0, viem_1.keccak256)(pIdData), 0,
|
|
35
|
+
return (0, viem_1.slice)((0, viem_1.keccak256)(pIdData), 0, 4);
|
|
32
36
|
};
|
|
33
37
|
return {
|
|
34
38
|
...signer.account,
|
|
@@ -36,10 +40,7 @@ async function toPermissionValidator(client, { signer, policies, entryPoint: ent
|
|
|
36
40
|
address: viem_1.zeroAddress,
|
|
37
41
|
source: "PermissionValidator",
|
|
38
42
|
getEnableData,
|
|
39
|
-
getIdentifier:
|
|
40
|
-
size: 20,
|
|
41
|
-
dir: "right"
|
|
42
|
-
}),
|
|
43
|
+
getIdentifier: getPermissionId,
|
|
43
44
|
signMessage: async ({ message }) => {
|
|
44
45
|
return (0, viem_1.concat)([
|
|
45
46
|
"0xff",
|
|
@@ -56,14 +57,17 @@ async function toPermissionValidator(client, { signer, policies, entryPoint: ent
|
|
|
56
57
|
const userOpHash = (0, permissionless_1.getUserOperationHash)({
|
|
57
58
|
userOperation: { ...userOperation, signature: "0x" },
|
|
58
59
|
entryPoint: entryPointAddress,
|
|
59
|
-
chainId
|
|
60
|
+
chainId
|
|
60
61
|
});
|
|
61
62
|
const signature = await signer.account.signMessage({
|
|
62
63
|
message: { raw: userOpHash }
|
|
63
64
|
});
|
|
64
65
|
return (0, viem_1.concat)(["0xff", signature]);
|
|
65
66
|
},
|
|
66
|
-
|
|
67
|
+
async getNonceKey(_accountAddress, customNonceKey) {
|
|
68
|
+
if (customNonceKey) {
|
|
69
|
+
return customNonceKey;
|
|
70
|
+
}
|
|
67
71
|
return 0n;
|
|
68
72
|
},
|
|
69
73
|
async getDummySignature(_userOperation) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"toPermissionValidator.js","sourceRoot":"","sources":["../toPermissionValidator.ts"],"names":[],"mappings":";;;AAAA,sCAAiD;AACjD,
|
|
1
|
+
{"version":3,"file":"toPermissionValidator.js","sourceRoot":"","sources":["../toPermissionValidator.ts"],"names":[],"mappings":";;;AAAA,sCAAiD;AACjD,mDAIuB;AAEvB,+BAYa;AACb,0CAAuD;AACvD,iDAA4C;AAC5C,kDAAgD;AAChD,iDAA+C;AAOxC,KAAK,UAAU,qBAAqB,CAKvC,MAA6C,EAC7C,EACI,MAAM,EACN,QAAQ,EACR,UAAU,EAAE,iBAAiB,EAC7B,IAAI,GAAG,0BAAW,CAAC,kBAAkB,EAChB;IAEzB,MAAM,OAAO,GAAG,MAAM,IAAA,oBAAU,EAAC,MAAM,CAAC,CAAA;IACxC,MAAM,iBAAiB,GAAG,IAAA,qCAAoB,EAAC,iBAAiB,CAAC,CAAA;IAEjE,IAAI,iBAAiB,KAAK,MAAM,EAAE,CAAC;QAC/B,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAA;IACvD,CAAC;IAED,MAAM,aAAa,GAAG,KAAK,EACvB,qBAA+B,EACnB,EAAE;QACd,MAAM,UAAU,GAAG,IAAA,0BAAmB,EAClC,CAAC,EAAE,IAAI,EAAE,qBAAqB,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,EAClD;YACI;gBACI,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CACvB,IAAA,aAAM,EAAC;oBACH,MAAM,CAAC,oBAAoB,EAAE;oBAC7B,MAAM,CAAC,aAAa,EAAE;iBACzB,CAAC,CACL;gBACD,IAAA,aAAM,EAAC;oBACH,IAAI;oBACJ,MAAM,CAAC,qBAAqB;oBAC5B,MAAM,CAAC,aAAa,EAAE;iBACzB,CAAC;aACL;SACJ,CACJ,CAAA;QACD,OAAO,UAAU,CAAA;IACrB,CAAC,CAAA;IAED,MAAM,eAAe,GAAG,GAAQ,EAAE;QAC9B,MAAM,OAAO,GAAG,IAAA,0BAAmB,EAC/B,CAAC,EAAE,IAAI,EAAE,qBAAqB,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,EAClD,CAAC,CAAC,IAAA,qBAAU,EAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,IAAA,qBAAU,EAAC,MAAM,CAAC,CAAC,CAAC,CACrD,CAAA;QACD,OAAO,IAAA,YAAK,EAAC,IAAA,gBAAS,EAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;IAC1C,CAAC,CAAA;IAED,OAAO;QACH,GAAG,MAAM,CAAC,OAAO;QACjB,aAAa,EAAE,YAAY;QAC3B,OAAO,EAAE,kBAAW;QACpB,MAAM,EAAE,qBAAqB;QAC7B,aAAa;QACb,aAAa,EAAE,eAAe;QAE9B,WAAW,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE;YAC/B,OAAO,IAAA,aAAM,EAAC;gBACV,MAAM;gBACN,MAAM,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,OAAO,EAAE,CAAC;aAChD,CAAC,CAAA;QACN,CAAC;QACD,aAAa,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE;YAC/B,OAAO,IAAA,aAAM,EAAC;gBACV,MAAM;gBACN,MAAM,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,SAAS,CAAC;aAChD,CAAC,CAAA;QACN,CAAC;QAED,iBAAiB,EAAE,KAAK,EAAE,aAAa,EAAgB,EAAE;YACrD,MAAM,UAAU,GAAG,IAAA,qCAAoB,EAAC;gBACpC,aAAa,EAAE,EAAE,GAAG,aAAa,EAAE,SAAS,EAAE,IAAI,EAAE;gBACpD,UAAU,EAAE,iBAAiB;gBAC7B,OAAO;aACV,CAAC,CAAA;YAEF,MAAM,SAAS,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC;gBAC/C,OAAO,EAAE,EAAE,GAAG,EAAE,UAAU,EAAE;aAC/B,CAAC,CAAA;YACF,OAAO,IAAA,aAAM,EAAC,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,CAAA;QACtC,CAAC;QAED,KAAK,CAAC,WAAW,CAAC,eAAyB,EAAE,cAAuB;YAChE,IAAI,cAAc,EAAE,CAAC;gBACjB,OAAO,cAAc,CAAA;YACzB,CAAC;YACD,OAAO,EAAE,CAAA;QACb,CAAC;QAED,KAAK,CAAC,iBAAiB,CAAC,cAAc;YAClC,OAAO,IAAA,aAAM,EAAC,CAAC,MAAM,EAAE,MAAM,CAAC,iBAAiB,EAAE,CAAC,CAAC,CAAA;QACvD,CAAC;QACD,4BAA4B,EAAE,GAAmB,EAAE;YAC/C,OAAO;gBACH,QAAQ;aACX,CAAA;QACL,CAAC;QACD,SAAS,EAAE,KAAK,EACZ,oBAA6B,EAC7B,SAAc,EACE,EAAE;YAClB,IAAI,CAAC;gBACD,MAAM,gBAAgB,GAAG,MAAM,IAAA,0BAAS,EACpC,MAAM,EACN,sBAAY,CACf,CAAC;oBACE,GAAG,EAAE,wBAAkB;oBACvB,OAAO,EAAE,oBAAoB;oBAC7B,YAAY,EAAE,kBAAkB;oBAChC,IAAI,EAAE;wBACF,IAAA,aAAM,EAAC;4BACH,MAAM;4BACN,IAAA,UAAG,EAAC,eAAe,EAAE,EAAE;gCACnB,IAAI,EAAE,EAAE;gCACR,GAAG,EAAE,OAAO;6BACf,CAAC;yBACL,CAAC;qBACL;iBACJ,CAAC,CAAA;gBACF,OAAO,gBAAgB,CAAC,MAAM,KAAK,MAAM,CAAC,qBAAqB,CAAA;YACnE,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACb,OAAO,KAAK,CAAA;YAChB,CAAC;QACL,CAAC;KACJ,CAAA;AACL,CAAC;AAjID,sDAiIC"}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
|
-
import { KernelV3AccountAbi, createKernelAccount } from "@zerodev/sdk";
|
|
2
|
-
import { KernelFactoryAbi } from "@zerodev/sdk";
|
|
1
|
+
import { KernelFactoryStakerAbi, KernelV3AccountAbi, createKernelAccount } from "@zerodev/sdk";
|
|
3
2
|
import { toKernelPluginManager } from "@zerodev/sdk/accounts";
|
|
4
|
-
import {
|
|
3
|
+
import { getEntryPointVersion } from "permissionless";
|
|
5
4
|
import { decodeFunctionData } from "viem";
|
|
6
5
|
import { privateKeyToAccount } from "viem/accounts";
|
|
7
6
|
import { toCallPolicy, toGasPolicy, toRateLimitPolicy, toSignatureCallerPolicy, toSudoPolicy } from "./policies/index.js";
|
|
@@ -9,7 +8,11 @@ import { toECDSASigner } from "./signers/toECDSASigner.js";
|
|
|
9
8
|
import { toPermissionValidator } from "./toPermissionValidator.js";
|
|
10
9
|
import {} from "./types.js";
|
|
11
10
|
import { deserializePermissionAccountParams } from "./utils.js";
|
|
12
|
-
export const deserializePermissionAccount = async (client, modularPermissionAccountParams, modularSigner
|
|
11
|
+
export const deserializePermissionAccount = async (client, entryPointAddress, modularPermissionAccountParams, modularSigner) => {
|
|
12
|
+
const entryPointVersion = getEntryPointVersion(entryPointAddress);
|
|
13
|
+
if (entryPointVersion !== "v0.7") {
|
|
14
|
+
throw new Error("Only EntryPoint 0.7 is supported");
|
|
15
|
+
}
|
|
13
16
|
const params = deserializePermissionAccountParams(modularPermissionAccountParams);
|
|
14
17
|
let signer;
|
|
15
18
|
if (params.privateKey)
|
|
@@ -60,17 +63,17 @@ export const createPolicyFromParams = async (policy) => {
|
|
|
60
63
|
export const decodeParamsFromInitCode = (initCode) => {
|
|
61
64
|
let index;
|
|
62
65
|
let validatorInitData;
|
|
63
|
-
const
|
|
64
|
-
abi:
|
|
66
|
+
const deployWithFactoryFunctionData = decodeFunctionData({
|
|
67
|
+
abi: KernelFactoryStakerAbi,
|
|
65
68
|
data: `0x${initCode.slice(42)}`
|
|
66
69
|
});
|
|
67
|
-
if (!
|
|
70
|
+
if (!deployWithFactoryFunctionData)
|
|
68
71
|
throw new Error("Invalid initCode");
|
|
69
|
-
if (
|
|
70
|
-
index =
|
|
72
|
+
if (deployWithFactoryFunctionData.functionName === "deployWithFactory") {
|
|
73
|
+
index = BigInt(deployWithFactoryFunctionData.args[2]);
|
|
71
74
|
const initializeFunctionData = decodeFunctionData({
|
|
72
75
|
abi: KernelV3AccountAbi,
|
|
73
|
-
data:
|
|
76
|
+
data: deployWithFactoryFunctionData.args[1]
|
|
74
77
|
});
|
|
75
78
|
if (!initializeFunctionData)
|
|
76
79
|
throw new Error("Invalid initCode");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deserializePermissionAccount.js","sourceRoot":"","sources":["../deserializePermissionAccount.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"deserializePermissionAccount.js","sourceRoot":"","sources":["../deserializePermissionAccount.ts"],"names":[],"mappings":"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"}
|
package/_esm/policies/index.js
CHANGED
|
@@ -4,5 +4,5 @@ export { toRateLimitPolicy } from "./toRateLimitPolicy.js";
|
|
|
4
4
|
export { toCallPolicy } from "./toCallPolicy.js";
|
|
5
5
|
export { toPolicyId } from "./utils/toPolicyId.js";
|
|
6
6
|
export { toSudoPolicy } from "./toSudoPolicy.js";
|
|
7
|
-
export {} from "./types.js";
|
|
7
|
+
export { CallType, ParamCondition } from "./types.js";
|
|
8
8
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../policies/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAwB,MAAM,kBAAkB,CAAA;AACpE,OAAO,EACH,uBAAuB,EAE1B,MAAM,8BAA8B,CAAA;AACrC,OAAO,EACH,iBAAiB,EAEpB,MAAM,wBAAwB,CAAA;AAC/B,OAAO,EAAE,YAAY,EAAyB,MAAM,mBAAmB,CAAA;AACvE,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAA;AAClD,OAAO,EAAE,YAAY,EAAyB,MAAM,mBAAmB,CAAA;AACvE,OAAO,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../policies/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAwB,MAAM,kBAAkB,CAAA;AACpE,OAAO,EACH,uBAAuB,EAE1B,MAAM,8BAA8B,CAAA;AACrC,OAAO,EACH,iBAAiB,EAEpB,MAAM,wBAAwB,CAAA;AAC/B,OAAO,EAAE,YAAY,EAAyB,MAAM,mBAAmB,CAAA;AACvE,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAA;AAClD,OAAO,EAAE,YAAY,EAAyB,MAAM,mBAAmB,CAAA;AACvE,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA"}
|
|
@@ -3,7 +3,7 @@ import { PolicyFlags } from "../constants.js";
|
|
|
3
3
|
import { CALL_POLICY_CONTRACT } from "../constants.js";
|
|
4
4
|
import { encodePermissionData, getPermissionFromABI } from "./callPolicyUtils.js";
|
|
5
5
|
import { CallType } from "./types.js";
|
|
6
|
-
export
|
|
6
|
+
export function toCallPolicy({ policyAddress = CALL_POLICY_CONTRACT, policyFlag = PolicyFlags.FOR_ALL_VALIDATION, permissions = [], type = "call" }) {
|
|
7
7
|
const generatedPermissionParams = permissions?.map((perm) => getPermissionFromABI({
|
|
8
8
|
abi: perm.abi,
|
|
9
9
|
functionName: perm.functionName,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"toCallPolicy.js","sourceRoot":"","sources":["../../policies/toCallPolicy.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM,MAAM,CAAA;AACrC,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAA;AAC7C,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAA;AAEtD,OAAO,EACH,oBAAoB,EACpB,oBAAoB,EACvB,MAAM,sBAAsB,CAAA;AAC7B,OAAO,EAAE,QAAQ,EAAmB,MAAM,YAAY,CAAA;AAUtD,MAAM,
|
|
1
|
+
{"version":3,"file":"toCallPolicy.js","sourceRoot":"","sources":["../../policies/toCallPolicy.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM,MAAM,CAAA;AACrC,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAA;AAC7C,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAA;AAEtD,OAAO,EACH,oBAAoB,EACpB,oBAAoB,EACvB,MAAM,sBAAsB,CAAA;AAC7B,OAAO,EAAE,QAAQ,EAAmB,MAAM,YAAY,CAAA;AAUtD,MAAM,UAAU,YAAY,CAG1B,EACE,aAAa,GAAG,oBAAoB,EACpC,UAAU,GAAG,WAAW,CAAC,kBAAkB,EAC3C,WAAW,GAAG,EAAE,EAChB,IAAI,GAAG,MAAM,EACuB;IACpC,MAAM,yBAAyB,GAAG,WAAW,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CACxD,oBAAoB,CAAC;QACjB,GAAG,EAAE,IAAI,CAAC,GAAU;QACpB,YAAY,EAAE,IAAI,CAAC,YAAsB;QACzC,IAAI,EAAE,IAAI,CAAC,IAAU;KACxB,CAAC,CACL,CAAA;IAED,WAAW;QACP,WAAW,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;YAC/B,GAAG,IAAI;YACP,QAAQ,EAAE,IAAI,CAAC,QAAQ,IAAI,QAAQ,CAAC,IAAI;YACxC,QAAQ,EACJ,IAAI,CAAC,QAAQ;gBACb,yBAAyB,EAAE,CAAC,KAAK,CAAC,EAAE,QAAQ;gBAC5C,GAAG,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;YAC1B,UAAU,EAAE,IAAI,CAAC,UAAU,IAAI,EAAE;YACjC,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,yBAAyB,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,IAAI,EAAE;SACvE,CAAC,CAAC,IAAI,EAAE,CAAA;IAEb,MAAM,qBAAqB,GAAG,oBAAoB,CAAC,WAAW,CAAC,CAAA;IAE/D,OAAO;QACH,aAAa,EAAE,GAAG,EAAE;YAChB,OAAO,qBAAqB,CAAA;QAChC,CAAC;QACD,oBAAoB,EAAE,GAAG,EAAE;YACvB,OAAO,SAAS,CAAC,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC,CAAA;QACjD,CAAC;QACD,YAAY,EAAE;YACV,IAAI;YACJ,aAAa;YACb,UAAU;YACV,WAAW;SACmD;KACrE,CAAA;AACL,CAAC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { concatHex, encodeAbiParameters, zeroAddress } from "viem";
|
|
2
2
|
import { PolicyFlags } from "../constants.js";
|
|
3
3
|
import { GAS_POLICY_CONTRACT } from "../constants.js";
|
|
4
|
-
export
|
|
4
|
+
export function toGasPolicy({ policyAddress = GAS_POLICY_CONTRACT, policyFlag = PolicyFlags.FOR_ALL_VALIDATION, allowed = 0n, enforcePaymaster = false, allowedPaymaster = zeroAddress, type = "gas" }) {
|
|
5
5
|
return {
|
|
6
6
|
getPolicyData: () => {
|
|
7
7
|
return encodeAbiParameters([
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"toGasPolicy.js","sourceRoot":"","sources":["../../policies/toGasPolicy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgB,SAAS,EAAE,mBAAmB,EAAE,WAAW,EAAE,MAAM,MAAM,CAAA;AAChF,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAA;AAC7C,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAA;AAUrD,MAAM,
|
|
1
|
+
{"version":3,"file":"toGasPolicy.js","sourceRoot":"","sources":["../../policies/toGasPolicy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgB,SAAS,EAAE,mBAAmB,EAAE,WAAW,EAAE,MAAM,MAAM,CAAA;AAChF,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAA;AAC7C,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAA;AAUrD,MAAM,UAAU,WAAW,CAAC,EACxB,aAAa,GAAG,mBAAmB,EACnC,UAAU,GAAG,WAAW,CAAC,kBAAkB,EAC3C,OAAO,GAAG,EAAE,EACZ,gBAAgB,GAAG,KAAK,EACxB,gBAAgB,GAAG,WAAW,EAC9B,IAAI,GAAG,KAAK,EACE;IACd,OAAO;QACH,aAAa,EAAE,GAAG,EAAE;YAChB,OAAO,mBAAmB,CACtB;gBACI,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE;gBACpC,EAAE,IAAI,EAAE,kBAAkB,EAAE,IAAI,EAAE,MAAM,EAAE;gBAC1C,EAAE,IAAI,EAAE,kBAAkB,EAAE,IAAI,EAAE,SAAS,EAAE;aAChD,EACD,CAAC,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,CAAC,CAChD,CAAA;QACL,CAAC;QACD,oBAAoB,EAAE,GAAG,EAAE;YACvB,OAAO,SAAS,CAAC,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC,CAAA;QACjD,CAAC;QACD,YAAY,EAAE;YACV,IAAI;YACJ,aAAa;YACb,UAAU;YACV,OAAO;YACP,gBAAgB;YAChB,gBAAgB;SACnB;KACJ,CAAA;AACL,CAAC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { concatHex } from "viem";
|
|
2
2
|
import { PolicyFlags } from "../constants.js";
|
|
3
3
|
import { RATE_LIMIT_POLICY_CONTRACT } from "../constants.js";
|
|
4
|
-
export
|
|
4
|
+
export function toRateLimitPolicy({ policyAddress = RATE_LIMIT_POLICY_CONTRACT, policyFlag = PolicyFlags.FOR_ALL_VALIDATION, interval = 0, count, startAt = 0, type = "rate-limit" }) {
|
|
5
5
|
return {
|
|
6
6
|
getPolicyData: () => {
|
|
7
7
|
const intervalHex = interval.toString(16).padStart(12, "0");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"toRateLimitPolicy.js","sourceRoot":"","sources":["../../policies/toRateLimitPolicy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,MAAM,CAAA;AAChC,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAA;AAC7C,OAAO,EAAE,0BAA0B,EAAE,MAAM,iBAAiB,CAAA;AAU5D,MAAM,
|
|
1
|
+
{"version":3,"file":"toRateLimitPolicy.js","sourceRoot":"","sources":["../../policies/toRateLimitPolicy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,MAAM,CAAA;AAChC,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAA;AAC7C,OAAO,EAAE,0BAA0B,EAAE,MAAM,iBAAiB,CAAA;AAU5D,MAAM,UAAU,iBAAiB,CAAC,EAC9B,aAAa,GAAG,0BAA0B,EAC1C,UAAU,GAAG,WAAW,CAAC,kBAAkB,EAC3C,QAAQ,GAAG,CAAC,EACZ,KAAK,EACL,OAAO,GAAG,CAAC,EACX,IAAI,GAAG,YAAY,EACC;IACpB,OAAO;QACH,aAAa,EAAE,GAAG,EAAE;YAChB,MAAM,WAAW,GAAG,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,EAAE,EAAE,GAAG,CAAC,CAAA;YAC3D,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,EAAE,EAAE,GAAG,CAAC,CAAA;YACrD,MAAM,UAAU,GAAG,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,EAAE,EAAE,GAAG,CAAC,CAAA;YAEzD,MAAM,IAAI,GAAG,WAAW,GAAG,QAAQ,GAAG,UAAU,CAAA;YAEhD,OAAO,KAAK,IAAI,EAAE,CAAA;QACtB,CAAC;QACD,oBAAoB,EAAE,GAAG,EAAE;YACvB,OAAO,SAAS,CAAC,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC,CAAA;QACjD,CAAC;QACD,YAAY,EAAE;YACV,IAAI;YACJ,aAAa;YACb,UAAU;YACV,QAAQ;YACR,KAAK;YACL,OAAO;SACV;KACJ,CAAA;AACL,CAAC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { concatHex, encodeAbiParameters } from "viem";
|
|
2
2
|
import { PolicyFlags } from "../constants.js";
|
|
3
3
|
import { SIGNATURE_POLICY_CONTRACT } from "../constants.js";
|
|
4
|
-
export
|
|
4
|
+
export function toSignatureCallerPolicy({ policyAddress = SIGNATURE_POLICY_CONTRACT, policyFlag = PolicyFlags.FOR_ALL_VALIDATION, allowedCallers, type = "signature-caller" }) {
|
|
5
5
|
return {
|
|
6
6
|
getPolicyData: () => {
|
|
7
7
|
return encodeAbiParameters([{ name: "allowedCallers", type: "address[]" }], [allowedCallers]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"toSignatureCallerPolicy.js","sourceRoot":"","sources":["../../policies/toSignatureCallerPolicy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgB,SAAS,EAAE,mBAAmB,EAAE,MAAM,MAAM,CAAA;AACnE,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAA;AAC7C,OAAO,EAAE,yBAAyB,EAAE,MAAM,iBAAiB,CAAA;AAQ3D,MAAM,
|
|
1
|
+
{"version":3,"file":"toSignatureCallerPolicy.js","sourceRoot":"","sources":["../../policies/toSignatureCallerPolicy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgB,SAAS,EAAE,mBAAmB,EAAE,MAAM,MAAM,CAAA;AACnE,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAA;AAC7C,OAAO,EAAE,yBAAyB,EAAE,MAAM,iBAAiB,CAAA;AAQ3D,MAAM,UAAU,uBAAuB,CAAC,EACpC,aAAa,GAAG,yBAAyB,EACzC,UAAU,GAAG,WAAW,CAAC,kBAAkB,EAC3C,cAAc,EACd,IAAI,GAAG,kBAAkB,EACC;IAC1B,OAAO;QACH,aAAa,EAAE,GAAG,EAAE;YAChB,OAAO,mBAAmB,CACtB,CAAC,EAAE,IAAI,EAAE,gBAAgB,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC,EAC/C,CAAC,cAAc,CAAC,CACnB,CAAA;QACL,CAAC;QACD,oBAAoB,EAAE,GAAG,EAAE;YACvB,OAAO,SAAS,CAAC,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC,CAAA;QACjD,CAAC;QACD,YAAY,EAAE;YACV,IAAI;YACJ,aAAa;YACb,UAAU;YACV,cAAc;SACjB;KACJ,CAAA;AACL,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { concatHex } from "viem";
|
|
2
2
|
import { PolicyFlags, SUDO_POLICY_CONTRACT } from "../constants.js";
|
|
3
|
-
export
|
|
3
|
+
export function toSudoPolicy({ policyAddress = SUDO_POLICY_CONTRACT, policyFlag = PolicyFlags.FOR_ALL_VALIDATION, type = "sudo" }) {
|
|
4
4
|
return {
|
|
5
5
|
getPolicyData: () => {
|
|
6
6
|
return "0x";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"toSudoPolicy.js","sourceRoot":"","sources":["../../policies/toSudoPolicy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,MAAM,CAAA;AAChC,OAAO,EAAE,WAAW,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAA;AAOnE,MAAM,
|
|
1
|
+
{"version":3,"file":"toSudoPolicy.js","sourceRoot":"","sources":["../../policies/toSudoPolicy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,MAAM,CAAA;AAChC,OAAO,EAAE,WAAW,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAA;AAOnE,MAAM,UAAU,YAAY,CAAC,EACzB,aAAa,GAAG,oBAAoB,EACpC,UAAU,GAAG,WAAW,CAAC,kBAAkB,EAC3C,IAAI,GAAG,MAAM,EACE;IACf,OAAO;QACH,aAAa,EAAE,GAAG,EAAE;YAChB,OAAO,IAAI,CAAA;QACf,CAAC;QACD,oBAAoB,EAAE,GAAG,EAAE;YACvB,OAAO,SAAS,CAAC,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC,CAAA;QACjD,CAAC;QACD,YAAY,EAAE;YACV,IAAI;YACJ,aAAa;YACb,UAAU;SACb;KACJ,CAAA;AACL,CAAC"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { constants } from "@zerodev/sdk";
|
|
2
|
+
import {} from "viem";
|
|
3
|
+
import { toAccount } from "viem/accounts";
|
|
4
|
+
import { ECDSA_SIGNER_CONTRACT } from "../constants.js";
|
|
5
|
+
export function toEmptyECDSASigner(address) {
|
|
6
|
+
const account = toAccount({
|
|
7
|
+
address,
|
|
8
|
+
async signMessage() {
|
|
9
|
+
throw new Error("Method not supported");
|
|
10
|
+
},
|
|
11
|
+
async signTransaction(_, __) {
|
|
12
|
+
throw new Error("Method not supported");
|
|
13
|
+
},
|
|
14
|
+
async signTypedData(_typedData) {
|
|
15
|
+
throw new Error("Method not supported");
|
|
16
|
+
}
|
|
17
|
+
});
|
|
18
|
+
return {
|
|
19
|
+
account,
|
|
20
|
+
signerContractAddress: ECDSA_SIGNER_CONTRACT,
|
|
21
|
+
getSignerData: () => {
|
|
22
|
+
return address;
|
|
23
|
+
},
|
|
24
|
+
getDummySignature: () => constants.DUMMY_ECDSA_SIG
|
|
25
|
+
};
|
|
26
|
+
}
|
|
27
|
+
//# sourceMappingURL=toEmptyECDSASigner.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"toEmptyECDSASigner.js","sourceRoot":"","sources":["../../signers/toEmptyECDSASigner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AAExC,OAAO,EAA0C,MAAM,MAAM,CAAA;AAC7D,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AACzC,OAAO,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAA;AAGvD,MAAM,UAAU,kBAAkB,CAAC,OAAgB;IAC/C,MAAM,OAAO,GAAG,SAAS,CAAC;QACtB,OAAO;QACP,KAAK,CAAC,WAAW;YACb,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAA;QAC3C,CAAC;QACD,KAAK,CAAC,eAAe,CAAC,CAAC,EAAE,EAAE;YACvB,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAA;QAC3C,CAAC;QACD,KAAK,CAAC,aAAa,CAKjB,UAAyD;YACvD,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAA;QAC3C,CAAC;KACJ,CAAC,CAAA;IACF,OAAO;QACH,OAAO;QACP,qBAAqB,EAAE,qBAAqB;QAC5C,aAAa,EAAE,GAAG,EAAE;YAChB,OAAO,OAAO,CAAA;QAClB,CAAC;QACD,iBAAiB,EAAE,GAAG,EAAE,CAAC,SAAS,CAAC,eAAe;KACrD,CAAA;AACL,CAAC"}
|