@zerodev/permissions 5.5.8 → 5.5.9

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.
@@ -0,0 +1,45 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.toInitConfig = void 0;
4
+ const sdk_1 = require("@zerodev/sdk");
5
+ const constants_1 = require("@zerodev/sdk/constants");
6
+ const viem_1 = require("viem");
7
+ async function toInitConfig(permissionPlugin) {
8
+ const permissionInstallFunctionData = (0, viem_1.encodeFunctionData)({
9
+ abi: sdk_1.KernelV3_3AccountAbi,
10
+ functionName: "installValidations",
11
+ args: [
12
+ [
13
+ (0, viem_1.pad)((0, viem_1.concat)([
14
+ constants_1.VALIDATOR_TYPE.PERMISSION,
15
+ permissionPlugin.getIdentifier()
16
+ ]), { size: 21, dir: "right" })
17
+ ],
18
+ [{ nonce: 1, hook: viem_1.zeroAddress }],
19
+ [await permissionPlugin.getEnableData()],
20
+ ["0x"]
21
+ ]
22
+ });
23
+ const grantAccessFunctionData = (0, viem_1.encodeFunctionData)({
24
+ abi: sdk_1.KernelV3_3AccountAbi,
25
+ functionName: "grantAccess",
26
+ args: [
27
+ (0, viem_1.pad)((0, viem_1.concat)([
28
+ constants_1.VALIDATOR_TYPE.PERMISSION,
29
+ permissionPlugin.getIdentifier()
30
+ ]), { size: 21, dir: "right" }),
31
+ (0, viem_1.toFunctionSelector)((0, viem_1.getAbiItem)({ abi: sdk_1.KernelV3_3AccountAbi, name: "execute" })),
32
+ true
33
+ ]
34
+ });
35
+ const delegateCall = await (0, sdk_1.encodeCallDataEpV07)([
36
+ {
37
+ to: constants_1.KernelVersionToAddressesMap["0.3.3"]
38
+ .accountImplementationAddress,
39
+ data: grantAccessFunctionData
40
+ }
41
+ ], "delegatecall");
42
+ return [permissionInstallFunctionData, delegateCall];
43
+ }
44
+ exports.toInitConfig = toInitConfig;
45
+ //# sourceMappingURL=toInitConfig.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"toInitConfig.js","sourceRoot":"","sources":["../toInitConfig.ts"],"names":[],"mappings":";;;AAAA,sCAAwE;AACxE,sDAG+B;AAC/B,+BAQa;AAGN,KAAK,UAAU,YAAY,CAC9B,gBAAkC;IAElC,MAAM,6BAA6B,GAAG,IAAA,yBAAkB,EAAC;QACrD,GAAG,EAAE,0BAAoB;QACzB,YAAY,EAAE,oBAAoB;QAClC,IAAI,EAAE;YACF;gBACI,IAAA,UAAG,EACC,IAAA,aAAM,EAAC;oBACH,0BAAc,CAAC,UAAU;oBACzB,gBAAgB,CAAC,aAAa,EAAE;iBACnC,CAAC,EACF,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,EAAE,OAAO,EAAE,CAC7B;aACJ;YACD,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,kBAAW,EAAE,CAAC;YACjC,CAAC,MAAM,gBAAgB,CAAC,aAAa,EAAE,CAAC;YACxC,CAAC,IAAI,CAAC;SACT;KACJ,CAAC,CAAA;IACF,MAAM,uBAAuB,GAAG,IAAA,yBAAkB,EAAC;QAC/C,GAAG,EAAE,0BAAoB;QACzB,YAAY,EAAE,aAAa;QAC3B,IAAI,EAAE;YACF,IAAA,UAAG,EACC,IAAA,aAAM,EAAC;gBACH,0BAAc,CAAC,UAAU;gBACzB,gBAAgB,CAAC,aAAa,EAAE;aACnC,CAAC,EACF,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,EAAE,OAAO,EAAE,CAC7B;YACD,IAAA,yBAAkB,EACd,IAAA,iBAAU,EAAC,EAAE,GAAG,EAAE,0BAAoB,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAC7D;YACD,IAAI;SACP;KACJ,CAAC,CAAA;IACF,MAAM,YAAY,GAAG,MAAM,IAAA,yBAAmB,EAC1C;QACI;YACI,EAAE,EAAE,uCAA2B,CAAC,OAAO,CAAC;iBACnC,4BAA4B;YACjC,IAAI,EAAE,uBAAuB;SAChC;KACJ,EACD,cAAc,CACjB,CAAA;IACD,OAAO,CAAC,6BAA6B,EAAE,YAAY,CAAC,CAAA;AACxD,CAAC;AAjDD,oCAiDC"}
@@ -0,0 +1,41 @@
1
+ import { KernelV3_3AccountAbi, encodeCallDataEpV07 } from "@zerodev/sdk";
2
+ import { KernelVersionToAddressesMap, VALIDATOR_TYPE } from "@zerodev/sdk/constants";
3
+ import { concat, encodeFunctionData, getAbiItem, pad, toFunctionSelector, zeroAddress } from "viem";
4
+ export async function toInitConfig(permissionPlugin) {
5
+ const permissionInstallFunctionData = encodeFunctionData({
6
+ abi: KernelV3_3AccountAbi,
7
+ functionName: "installValidations",
8
+ args: [
9
+ [
10
+ pad(concat([
11
+ VALIDATOR_TYPE.PERMISSION,
12
+ permissionPlugin.getIdentifier()
13
+ ]), { size: 21, dir: "right" })
14
+ ],
15
+ [{ nonce: 1, hook: zeroAddress }],
16
+ [await permissionPlugin.getEnableData()],
17
+ ["0x"]
18
+ ]
19
+ });
20
+ const grantAccessFunctionData = encodeFunctionData({
21
+ abi: KernelV3_3AccountAbi,
22
+ functionName: "grantAccess",
23
+ args: [
24
+ pad(concat([
25
+ VALIDATOR_TYPE.PERMISSION,
26
+ permissionPlugin.getIdentifier()
27
+ ]), { size: 21, dir: "right" }),
28
+ toFunctionSelector(getAbiItem({ abi: KernelV3_3AccountAbi, name: "execute" })),
29
+ true
30
+ ]
31
+ });
32
+ const delegateCall = await encodeCallDataEpV07([
33
+ {
34
+ to: KernelVersionToAddressesMap["0.3.3"]
35
+ .accountImplementationAddress,
36
+ data: grantAccessFunctionData
37
+ }
38
+ ], "delegatecall");
39
+ return [permissionInstallFunctionData, delegateCall];
40
+ }
41
+ //# sourceMappingURL=toInitConfig.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"toInitConfig.js","sourceRoot":"","sources":["../toInitConfig.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAA;AACxE,OAAO,EACH,2BAA2B,EAC3B,cAAc,EACjB,MAAM,wBAAwB,CAAA;AAC/B,OAAO,EAEH,MAAM,EACN,kBAAkB,EAClB,UAAU,EACV,GAAG,EACH,kBAAkB,EAClB,WAAW,EACd,MAAM,MAAM,CAAA;AAGb,MAAM,CAAC,KAAK,UAAU,YAAY,CAC9B,gBAAkC;IAElC,MAAM,6BAA6B,GAAG,kBAAkB,CAAC;QACrD,GAAG,EAAE,oBAAoB;QACzB,YAAY,EAAE,oBAAoB;QAClC,IAAI,EAAE;YACF;gBACI,GAAG,CACC,MAAM,CAAC;oBACH,cAAc,CAAC,UAAU;oBACzB,gBAAgB,CAAC,aAAa,EAAE;iBACnC,CAAC,EACF,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,EAAE,OAAO,EAAE,CAC7B;aACJ;YACD,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC;YACjC,CAAC,MAAM,gBAAgB,CAAC,aAAa,EAAE,CAAC;YACxC,CAAC,IAAI,CAAC;SACT;KACJ,CAAC,CAAA;IACF,MAAM,uBAAuB,GAAG,kBAAkB,CAAC;QAC/C,GAAG,EAAE,oBAAoB;QACzB,YAAY,EAAE,aAAa;QAC3B,IAAI,EAAE;YACF,GAAG,CACC,MAAM,CAAC;gBACH,cAAc,CAAC,UAAU;gBACzB,gBAAgB,CAAC,aAAa,EAAE;aACnC,CAAC,EACF,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,EAAE,OAAO,EAAE,CAC7B;YACD,kBAAkB,CACd,UAAU,CAAC,EAAE,GAAG,EAAE,oBAAoB,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAC7D;YACD,IAAI;SACP;KACJ,CAAC,CAAA;IACF,MAAM,YAAY,GAAG,MAAM,mBAAmB,CAC1C;QACI;YACI,EAAE,EAAE,2BAA2B,CAAC,OAAO,CAAC;iBACnC,4BAA4B;YACjC,IAAI,EAAE,uBAAuB;SAChC;KACJ,EACD,cAAc,CACjB,CAAA;IACD,OAAO,CAAC,6BAA6B,EAAE,YAAY,CAAC,CAAA;AACxD,CAAC"}
@@ -0,0 +1,4 @@
1
+ import { type Hex } from "viem";
2
+ import type { PermissionPlugin } from "./types.js";
3
+ export declare function toInitConfig(permissionPlugin: PermissionPlugin): Promise<Hex[]>;
4
+ //# sourceMappingURL=toInitConfig.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"toInitConfig.d.ts","sourceRoot":"","sources":["../toInitConfig.ts"],"names":[],"mappings":"AAKA,OAAO,EACH,KAAK,GAAG,EAOX,MAAM,MAAM,CAAA;AACb,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAA;AAElD,wBAAsB,YAAY,CAC9B,gBAAgB,EAAE,gBAAgB,GACnC,OAAO,CAAC,GAAG,EAAE,CAAC,CA+ChB"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zerodev/permissions",
3
- "version": "5.5.8",
3
+ "version": "5.5.9",
4
4
  "author": "ZeroDev",
5
5
  "main": "./_cjs/index.js",
6
6
  "module": "./_esm/index.js",
@@ -0,0 +1,66 @@
1
+ import { KernelV3_3AccountAbi, encodeCallDataEpV07 } from "@zerodev/sdk"
2
+ import {
3
+ KernelVersionToAddressesMap,
4
+ VALIDATOR_TYPE
5
+ } from "@zerodev/sdk/constants"
6
+ import {
7
+ type Hex,
8
+ concat,
9
+ encodeFunctionData,
10
+ getAbiItem,
11
+ pad,
12
+ toFunctionSelector,
13
+ zeroAddress
14
+ } from "viem"
15
+ import type { PermissionPlugin } from "./types.js"
16
+
17
+ export async function toInitConfig(
18
+ permissionPlugin: PermissionPlugin
19
+ ): Promise<Hex[]> {
20
+ const permissionInstallFunctionData = encodeFunctionData({
21
+ abi: KernelV3_3AccountAbi,
22
+ functionName: "installValidations",
23
+ args: [
24
+ [
25
+ pad(
26
+ concat([
27
+ VALIDATOR_TYPE.PERMISSION,
28
+ permissionPlugin.getIdentifier()
29
+ ]),
30
+ { size: 21, dir: "right" }
31
+ )
32
+ ],
33
+ [{ nonce: 1, hook: zeroAddress }],
34
+ [await permissionPlugin.getEnableData()],
35
+ ["0x"]
36
+ ]
37
+ })
38
+ const grantAccessFunctionData = encodeFunctionData({
39
+ abi: KernelV3_3AccountAbi,
40
+ functionName: "grantAccess",
41
+ args: [
42
+ pad(
43
+ concat([
44
+ VALIDATOR_TYPE.PERMISSION,
45
+ permissionPlugin.getIdentifier()
46
+ ]),
47
+ { size: 21, dir: "right" }
48
+ ),
49
+ toFunctionSelector(
50
+ getAbiItem({ abi: KernelV3_3AccountAbi, name: "execute" })
51
+ ),
52
+ true
53
+ ]
54
+ })
55
+ const delegateCall = await encodeCallDataEpV07(
56
+ [
57
+ {
58
+ to: KernelVersionToAddressesMap["0.3.3"]
59
+ .accountImplementationAddress,
60
+ data: grantAccessFunctionData
61
+ }
62
+ ],
63
+ "delegatecall"
64
+ )
65
+ return [permissionInstallFunctionData, delegateCall]
66
+ }