@lit-protocol/vincent-e2e-test-utils 1.2.0 → 1.2.1

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.
Files changed (55) hide show
  1. package/CHANGELOG.md +7 -1
  2. package/dist/package.json +14 -1
  3. package/dist/src/index.d.ts +2 -3
  4. package/dist/src/index.d.ts.map +1 -1
  5. package/dist/src/index.js +4 -1
  6. package/dist/src/index.js.map +1 -1
  7. package/dist/src/lib/env.d.ts +4 -0
  8. package/dist/src/lib/env.d.ts.map +1 -1
  9. package/dist/src/lib/env.js +3 -0
  10. package/dist/src/lib/env.js.map +1 -1
  11. package/dist/src/lib/environment/crossmint.d.ts +3 -0
  12. package/dist/src/lib/environment/crossmint.d.ts.map +1 -0
  13. package/dist/src/lib/environment/crossmint.js +23 -0
  14. package/dist/src/lib/environment/crossmint.js.map +1 -0
  15. package/dist/src/lib/environment/safe.d.ts +567 -0
  16. package/dist/src/lib/environment/safe.d.ts.map +1 -0
  17. package/dist/src/lib/environment/safe.js +41 -0
  18. package/dist/src/lib/environment/safe.js.map +1 -0
  19. package/dist/src/lib/environment/zerodev.d.ts +49 -0
  20. package/dist/src/lib/environment/zerodev.d.ts.map +1 -0
  21. package/dist/src/lib/environment/zerodev.js +32 -0
  22. package/dist/src/lib/environment/zerodev.js.map +1 -0
  23. package/dist/src/lib/index.d.ts +2 -1
  24. package/dist/src/lib/index.d.ts.map +1 -1
  25. package/dist/src/lib/index.js +5 -1
  26. package/dist/src/lib/index.js.map +1 -1
  27. package/dist/src/lib/setup-vincent-development-environment.d.ts +26 -2
  28. package/dist/src/lib/setup-vincent-development-environment.d.ts.map +1 -1
  29. package/dist/src/lib/setup-vincent-development-environment.js +70 -2
  30. package/dist/src/lib/setup-vincent-development-environment.js.map +1 -1
  31. package/dist/src/lib/smartAccount/crossmint/setup-crossmint-account.d.ts +3 -0
  32. package/dist/src/lib/smartAccount/crossmint/setup-crossmint-account.d.ts.map +1 -0
  33. package/dist/src/lib/smartAccount/crossmint/setup-crossmint-account.js +95 -0
  34. package/dist/src/lib/smartAccount/crossmint/setup-crossmint-account.js.map +1 -0
  35. package/dist/src/lib/smartAccount/index.d.ts +5 -0
  36. package/dist/src/lib/smartAccount/index.d.ts.map +1 -0
  37. package/dist/src/lib/smartAccount/index.js +10 -0
  38. package/dist/src/lib/smartAccount/index.js.map +1 -0
  39. package/dist/src/lib/smartAccount/safe/setup-safe-account.d.ts +15 -0
  40. package/dist/src/lib/smartAccount/safe/setup-safe-account.d.ts.map +1 -0
  41. package/dist/src/lib/smartAccount/safe/setup-safe-account.js +92 -0
  42. package/dist/src/lib/smartAccount/safe/setup-safe-account.js.map +1 -0
  43. package/dist/src/lib/smartAccount/types.d.ts +26 -0
  44. package/dist/src/lib/smartAccount/types.d.ts.map +1 -0
  45. package/dist/src/lib/smartAccount/types.js +3 -0
  46. package/dist/src/lib/smartAccount/types.js.map +1 -0
  47. package/dist/src/lib/smartAccount/zerodev/get-permission-empty-validator.d.ts +3 -0
  48. package/dist/src/lib/smartAccount/zerodev/get-permission-empty-validator.d.ts.map +1 -0
  49. package/dist/src/lib/smartAccount/zerodev/get-permission-empty-validator.js +24 -0
  50. package/dist/src/lib/smartAccount/zerodev/get-permission-empty-validator.js.map +1 -0
  51. package/dist/src/lib/smartAccount/zerodev/setup-zerodev-account.d.ts +15 -0
  52. package/dist/src/lib/smartAccount/zerodev/setup-zerodev-account.d.ts.map +1 -0
  53. package/dist/src/lib/smartAccount/zerodev/setup-zerodev-account.js +107 -0
  54. package/dist/src/lib/smartAccount/zerodev/setup-zerodev-account.js.map +1 -0
  55. package/package.json +14 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setup-safe-account.js","sourceRoot":"","sources":["../../../../../src/lib/smartAccount/safe/setup-safe-account.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,26 @@
1
+ import type { WalletsApiClient } from '@crossmint/wallets-sdk';
2
+ import type { CreateKernelAccountReturnType } from '@zerodev/sdk';
3
+ import type { SmartAccountClient } from 'permissionless';
4
+ import type { toSafeSmartAccount } from 'permissionless/accounts';
5
+ import type { Address, Chain } from 'viem';
6
+ import type { PrivateKeyAccount } from 'viem/accounts';
7
+ export interface SetupSmartAccountParams {
8
+ ownerAccount: PrivateKeyAccount;
9
+ permittedAddress: Address;
10
+ chain: Chain;
11
+ }
12
+ export interface ZerodevSmartAccountInfo {
13
+ account: CreateKernelAccountReturnType;
14
+ serializedPermissionAccount: string;
15
+ }
16
+ export interface CrossmintSmartAccountInfo {
17
+ account: Exclude<Awaited<ReturnType<WalletsApiClient['createWallet']>>, {
18
+ error: unknown;
19
+ }>;
20
+ }
21
+ export interface SafeSmartAccountInfo {
22
+ account: Awaited<ReturnType<typeof toSafeSmartAccount>>;
23
+ client: SmartAccountClient;
24
+ }
25
+ export type SmartAccountInfo = ZerodevSmartAccountInfo | CrossmintSmartAccountInfo | SafeSmartAccountInfo;
26
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/lib/smartAccount/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,cAAc,CAAC;AAClE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AACzD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAClE,OAAO,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,MAAM,CAAC;AAC3C,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAEvD,MAAM,WAAW,uBAAuB;IACtC,YAAY,EAAE,iBAAiB,CAAC;IAChC,gBAAgB,EAAE,OAAO,CAAC;IAC1B,KAAK,EAAE,KAAK,CAAC;CACd;AAED,MAAM,WAAW,uBAAuB;IACtC,OAAO,EAAE,6BAA6B,CAAC;IACvC,2BAA2B,EAAE,MAAM,CAAC;CACrC;AAED,MAAM,WAAW,yBAAyB;IACxC,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,gBAAgB,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE;QAAE,KAAK,EAAE,OAAO,CAAA;KAAE,CAAC,CAAC;CAC7F;AAED,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,OAAO,CAAC,UAAU,CAAC,OAAO,kBAAkB,CAAC,CAAC,CAAC;IACxD,MAAM,EAAE,kBAAkB,CAAC;CAC5B;AAED,MAAM,MAAM,gBAAgB,GACxB,uBAAuB,GACvB,yBAAyB,GACzB,oBAAoB,CAAC"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/lib/smartAccount/types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,3 @@
1
+ import type { Address, PublicClient } from 'viem';
2
+ export declare function getPermissionEmptyValidator(publicClient: PublicClient, permittedAddress: Address): Promise<import("@zerodev/permissions").PermissionPlugin>;
3
+ //# sourceMappingURL=get-permission-empty-validator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-permission-empty-validator.d.ts","sourceRoot":"","sources":["../../../../../src/lib/smartAccount/zerodev/get-permission-empty-validator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,MAAM,CAAC;AASlD,wBAAsB,2BAA2B,CAC/C,YAAY,EAAE,YAAY,EAC1B,gBAAgB,EAAE,OAAO,4DAe1B"}
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getPermissionEmptyValidator = getPermissionEmptyValidator;
4
+ const permissions_1 = require("@zerodev/permissions");
5
+ const policies_1 = require("@zerodev/permissions/policies");
6
+ const signers_1 = require("@zerodev/permissions/signers");
7
+ const sdk_1 = require("@zerodev/sdk");
8
+ const zerodev_1 = require("../../environment/zerodev");
9
+ async function getPermissionEmptyValidator(publicClient, permittedAddress) {
10
+ const permittedEmptyAccount = (0, sdk_1.addressToEmptyAccount)(permittedAddress);
11
+ const permittedEmptySigner = await (0, signers_1.toECDSASigner)({
12
+ signer: permittedEmptyAccount,
13
+ });
14
+ return await (0, permissions_1.toPermissionValidator)(publicClient, {
15
+ entryPoint: zerodev_1.entryPoint,
16
+ kernelVersion: zerodev_1.kernelVersion,
17
+ signer: permittedEmptySigner,
18
+ policies: [
19
+ // This is kept simple since this is a simple development environment file.
20
+ (0, policies_1.toSudoPolicy)({}),
21
+ ],
22
+ });
23
+ }
24
+ //# sourceMappingURL=get-permission-empty-validator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-permission-empty-validator.js","sourceRoot":"","sources":["../../../../../src/lib/smartAccount/zerodev/get-permission-empty-validator.ts"],"names":[],"mappings":";;AASA,kEAiBC;AAxBD,sDAA6D;AAC7D,4DAA6D;AAC7D,0DAA6D;AAC7D,sCAAqD;AAErD,uDAAsE;AAE/D,KAAK,UAAU,2BAA2B,CAC/C,YAA0B,EAC1B,gBAAyB;IAEzB,MAAM,qBAAqB,GAAG,IAAA,2BAAqB,EAAC,gBAAgB,CAAC,CAAC;IACtE,MAAM,oBAAoB,GAAG,MAAM,IAAA,uBAAa,EAAC;QAC/C,MAAM,EAAE,qBAAqB;KAC9B,CAAC,CAAC;IACH,OAAO,MAAM,IAAA,mCAAqB,EAAC,YAAY,EAAE;QAC/C,UAAU,EAAV,oBAAU;QACV,aAAa,EAAb,uBAAa;QACb,MAAM,EAAE,oBAAoB;QAC5B,QAAQ,EAAE;YACR,2EAA2E;YAC3E,IAAA,uBAAY,EAAC,EAAE,CAAC;SACjB;KACF,CAAC,CAAC;AACL,CAAC"}
@@ -0,0 +1,15 @@
1
+ import type { SetupSmartAccountParams, ZerodevSmartAccountInfo } from '../types';
2
+ /**
3
+ * Set up a ZeroDev Kernel smart account for testing with Vincent abilities.
4
+ *
5
+ * This function:
6
+ * 1. Creates an owner validator using the owner's private key
7
+ * 2. Creates a permission validator for the PKP address (empty validator)
8
+ * 3. Deploys the Kernel smart account on-chain
9
+ * 4. Generates a serialized permission account for signing UserOps
10
+ *
11
+ * @param params - Configuration parameters
12
+ * @returns Smart account address and serialized permission account
13
+ */
14
+ export declare function setupZerodevAccount({ ownerAccount, permittedAddress, chain, }: SetupSmartAccountParams): Promise<ZerodevSmartAccountInfo>;
15
+ //# sourceMappingURL=setup-zerodev-account.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setup-zerodev-account.d.ts","sourceRoot":"","sources":["../../../../../src/lib/smartAccount/zerodev/setup-zerodev-account.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,uBAAuB,EAAE,uBAAuB,EAAE,MAAM,UAAU,CAAC;AAUjF;;;;;;;;;;;GAWG;AACH,wBAAsB,mBAAmB,CAAC,EACxC,YAAY,EACZ,gBAAgB,EAChB,KAAK,GACN,EAAE,uBAAuB,GAAG,OAAO,CAAC,uBAAuB,CAAC,CA2G5D"}
@@ -0,0 +1,107 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.setupZerodevAccount = setupZerodevAccount;
4
+ const ecdsa_validator_1 = require("@zerodev/ecdsa-validator");
5
+ const permissions_1 = require("@zerodev/permissions");
6
+ const sdk_1 = require("@zerodev/sdk");
7
+ const viem_1 = require("viem");
8
+ const zerodev_1 = require("../../environment/zerodev");
9
+ const get_permission_empty_validator_1 = require("./get-permission-empty-validator");
10
+ /**
11
+ * Set up a ZeroDev Kernel smart account for testing with Vincent abilities.
12
+ *
13
+ * This function:
14
+ * 1. Creates an owner validator using the owner's private key
15
+ * 2. Creates a permission validator for the PKP address (empty validator)
16
+ * 3. Deploys the Kernel smart account on-chain
17
+ * 4. Generates a serialized permission account for signing UserOps
18
+ *
19
+ * @param params - Configuration parameters
20
+ * @returns Smart account address and serialized permission account
21
+ */
22
+ async function setupZerodevAccount({ ownerAccount, permittedAddress, chain, }) {
23
+ // Create public client for the chain using ZeroDev RPC
24
+ // This ensures validator configuration is consistent with the bundler
25
+ const zerodevTransport = (0, zerodev_1.getZerodevTransport)();
26
+ const publicClient = (0, viem_1.createPublicClient)({
27
+ chain,
28
+ transport: zerodevTransport,
29
+ });
30
+ // Create ZeroDev paymaster using centralized factory
31
+ const zerodevPaymaster = (0, zerodev_1.createZeroDevPaymaster)(chain);
32
+ console.log('[setupZerodevAccount] Creating validators...');
33
+ // Owner validator (actual signer)
34
+ const ownerValidator = await (0, ecdsa_validator_1.signerToEcdsaValidator)(publicClient, {
35
+ entryPoint: zerodev_1.entryPoint,
36
+ kernelVersion: zerodev_1.kernelVersion,
37
+ signer: ownerAccount,
38
+ });
39
+ // Permission validator (empty validator for PKP address)
40
+ const permissionValidator = await (0, get_permission_empty_validator_1.getPermissionEmptyValidator)(publicClient, permittedAddress);
41
+ console.log('[setupZerodevAccount] Creating Kernel account...');
42
+ // Create smart account with both validators (matching reference implementation)
43
+ const ownerKernelAccount = await (0, sdk_1.createKernelAccount)(publicClient, {
44
+ entryPoint: zerodev_1.entryPoint,
45
+ kernelVersion: zerodev_1.kernelVersion,
46
+ plugins: {
47
+ sudo: ownerValidator,
48
+ },
49
+ initConfig: await (0, permissions_1.toInitConfig)(permissionValidator),
50
+ });
51
+ console.log(`[setupZerodevAccount] Smart account address: ${ownerKernelAccount.address}`);
52
+ // Check if account is already deployed
53
+ const accountCode = await publicClient.getCode({
54
+ address: ownerKernelAccount.address,
55
+ });
56
+ const isDeployed = accountCode && accountCode !== '0x';
57
+ // Create kernel client with paymaster
58
+ const ownerKernelClient = (0, sdk_1.createKernelAccountClient)({
59
+ chain,
60
+ account: ownerKernelAccount,
61
+ bundlerTransport: zerodevTransport,
62
+ client: publicClient,
63
+ paymaster: {
64
+ getPaymasterData(userOperation) {
65
+ return zerodevPaymaster.sponsorUserOperation({ userOperation });
66
+ },
67
+ },
68
+ });
69
+ if (isDeployed) {
70
+ console.log('[setupZerodevAccount] ✅ Smart account already deployed');
71
+ }
72
+ else {
73
+ console.log('[setupZerodevAccount] Deploying Smart Account with empty UserOp...');
74
+ // Deploy smart account with an empty user operation
75
+ const deployUserOpHash = await ownerKernelClient.sendUserOperation({
76
+ callData: await ownerKernelAccount.encodeCalls([
77
+ {
78
+ to: viem_1.zeroAddress,
79
+ value: BigInt(0),
80
+ data: '0x',
81
+ },
82
+ ]),
83
+ });
84
+ console.log(`[setupZerodevAccount] Deployment UserOp hash: ${deployUserOpHash}`);
85
+ // Wait for deployment
86
+ const deployUserOpReceipt = await ownerKernelClient.waitForUserOperationReceipt({
87
+ hash: deployUserOpHash,
88
+ });
89
+ console.log(`[setupZerodevAccount] ✅ Smart Account deployed at tx: ${deployUserOpReceipt.receipt.transactionHash}`);
90
+ }
91
+ const permissionKernelAccountToSerialize = await (0, sdk_1.createKernelAccount)(publicClient, {
92
+ entryPoint: zerodev_1.entryPoint,
93
+ kernelVersion: zerodev_1.kernelVersion,
94
+ address: ownerKernelAccount.address,
95
+ plugins: {
96
+ sudo: ownerValidator,
97
+ regular: permissionValidator,
98
+ },
99
+ });
100
+ const serializedPermissionAccount = await (0, permissions_1.serializePermissionAccount)(permissionKernelAccountToSerialize);
101
+ console.log(`[setupZerodevAccount] ✅ Smart account setup complete: ${ownerKernelAccount.address}\n`);
102
+ return {
103
+ account: ownerKernelAccount,
104
+ serializedPermissionAccount,
105
+ };
106
+ }
107
+ //# sourceMappingURL=setup-zerodev-account.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setup-zerodev-account.js","sourceRoot":"","sources":["../../../../../src/lib/smartAccount/zerodev/setup-zerodev-account.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,15 +1,21 @@
1
1
  {
2
2
  "name": "@lit-protocol/vincent-e2e-test-utils",
3
- "version": "1.2.0",
3
+ "version": "1.2.1",
4
4
  "publishConfig": {
5
5
  "access": "public"
6
6
  },
7
7
  "dependencies": {
8
+ "@crossmint/wallets-sdk": "^0.18.7",
8
9
  "@lit-protocol/constants": "^8.0.4",
9
10
  "@lit-protocol/contracts-sdk": "^7.2.3",
10
11
  "@t3-oss/env-core": "^0.13.8",
12
+ "@zerodev/ecdsa-validator": "^5.4.9",
13
+ "@zerodev/permissions": "^5.6.2",
14
+ "@zerodev/sdk": "^5.5.3",
11
15
  "ethers": "^5.7.2",
16
+ "permissionless": "^0.2.57",
12
17
  "tslib": "^2.8.1",
18
+ "viem": "^2.38.3",
13
19
  "zod": "^3.25.64",
14
20
  "@lit-protocol/vincent-contracts-sdk": "5.0.0"
15
21
  },
@@ -28,11 +34,18 @@
28
34
  "devDependencies": {
29
35
  "@types/semver": "^7.7.0",
30
36
  "chokidar-cli": "^3.0.0",
37
+ "dotenv-cli": "^7.4.2",
31
38
  "ipfs-only-hash": "^4.0.0",
32
39
  "jsonc-eslint-parser": "^2.4.0",
33
40
  "typedoc": "0.27.9",
34
41
  "typedoc-material-theme": "1.3.0",
35
42
  "typedoc-plugin-extras": "^4.0.0",
36
43
  "typedoc-plugin-zod": "^1.4.1"
44
+ },
45
+ "scripts": {
46
+ "test:smartAccount": "NODE_OPTIONS=--experimental-vm-modules dotenv -e .env jest test/smartAccount/all.spec.ts",
47
+ "test:crossmint": "NODE_OPTIONS=--experimental-vm-modules dotenv -e .env jest test/smartAccount/crossmint.spec.ts",
48
+ "test:zerodev": "NODE_OPTIONS=--experimental-vm-modules dotenv -e .env jest test/smartAccount/zerodev.spec.ts",
49
+ "test:safe": "NODE_OPTIONS=--experimental-vm-modules dotenv -e .env jest test/smartAccount/safe.spec.ts"
37
50
  }
38
51
  }