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

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 (73) hide show
  1. package/CHANGELOG.md +18 -6
  2. package/dist/CHANGELOG.md +35 -0
  3. package/dist/CONTRIBUTING.md +0 -0
  4. package/dist/README.md +59 -0
  5. package/dist/package.json +6 -2
  6. package/dist/src/index.d.ts +1 -1
  7. package/dist/src/index.d.ts.map +1 -1
  8. package/dist/src/lib/chain.d.ts +1 -2
  9. package/dist/src/lib/chain.d.ts.map +1 -1
  10. package/dist/src/lib/chain.js +2 -4
  11. package/dist/src/lib/chain.js.map +1 -1
  12. package/dist/src/lib/create-random-vincent-wallets.d.ts +1 -1
  13. package/dist/src/lib/create-random-vincent-wallets.js +1 -1
  14. package/dist/src/lib/create-random-vincent-wallets.js.map +1 -1
  15. package/dist/src/lib/delegator/add-permission-for-abilities.d.ts +2 -1
  16. package/dist/src/lib/delegator/add-permission-for-abilities.d.ts.map +1 -1
  17. package/dist/src/lib/delegator/add-permission-for-abilities.js +4 -3
  18. package/dist/src/lib/delegator/add-permission-for-abilities.js.map +1 -1
  19. package/dist/src/lib/delegator/agent-pkp.d.ts +18 -3
  20. package/dist/src/lib/delegator/agent-pkp.d.ts.map +1 -1
  21. package/dist/src/lib/delegator/agent-pkp.js +77 -26
  22. package/dist/src/lib/delegator/agent-pkp.js.map +1 -1
  23. package/dist/src/lib/delegator/get-platform-user-pkp-wallet.d.ts +8 -0
  24. package/dist/src/lib/delegator/get-platform-user-pkp-wallet.d.ts.map +1 -0
  25. package/dist/src/lib/delegator/get-platform-user-pkp-wallet.js +77 -0
  26. package/dist/src/lib/delegator/get-platform-user-pkp-wallet.js.map +1 -0
  27. package/dist/src/lib/delegator/index.d.ts +2 -0
  28. package/dist/src/lib/delegator/index.d.ts.map +1 -1
  29. package/dist/src/lib/delegator/index.js +7 -1
  30. package/dist/src/lib/delegator/index.js.map +1 -1
  31. package/dist/src/lib/delegator/permit-vincent-app-version.d.ts +4 -2
  32. package/dist/src/lib/delegator/permit-vincent-app-version.d.ts.map +1 -1
  33. package/dist/src/lib/delegator/permit-vincent-app-version.js +5 -7
  34. package/dist/src/lib/delegator/permit-vincent-app-version.js.map +1 -1
  35. package/dist/src/lib/delegator/platform-user-pkp.d.ts +10 -0
  36. package/dist/src/lib/delegator/platform-user-pkp.d.ts.map +1 -0
  37. package/dist/src/lib/delegator/platform-user-pkp.js +48 -0
  38. package/dist/src/lib/delegator/platform-user-pkp.js.map +1 -0
  39. package/dist/src/lib/ensure-capacity-credit.d.ts +2 -1
  40. package/dist/src/lib/ensure-capacity-credit.d.ts.map +1 -1
  41. package/dist/src/lib/ensure-capacity-credit.js +7 -4
  42. package/dist/src/lib/ensure-capacity-credit.js.map +1 -1
  43. package/dist/src/lib/env.d.ts +8 -2
  44. package/dist/src/lib/env.d.ts.map +1 -1
  45. package/dist/src/lib/env.js +7 -1
  46. package/dist/src/lib/env.js.map +1 -1
  47. package/dist/src/lib/funder/ensure-wallet-has-test-tokens.d.ts +2 -1
  48. package/dist/src/lib/funder/ensure-wallet-has-test-tokens.d.ts.map +1 -1
  49. package/dist/src/lib/funder/ensure-wallet-has-test-tokens.js +9 -7
  50. package/dist/src/lib/funder/ensure-wallet-has-test-tokens.js.map +1 -1
  51. package/dist/src/lib/index.d.ts +1 -1
  52. package/dist/src/lib/index.d.ts.map +1 -1
  53. package/dist/src/lib/index.js.map +1 -1
  54. package/dist/src/lib/litContractsClient/LitContractsInstance.d.ts +2 -1
  55. package/dist/src/lib/litContractsClient/LitContractsInstance.d.ts.map +1 -1
  56. package/dist/src/lib/litContractsClient/LitContractsInstance.js.map +1 -1
  57. package/dist/src/lib/litContractsClient/get-lit-contract-client.d.ts +2 -1
  58. package/dist/src/lib/litContractsClient/get-lit-contract-client.d.ts.map +1 -1
  59. package/dist/src/lib/litContractsClient/get-lit-contract-client.js.map +1 -1
  60. package/dist/src/lib/mint-new-pkp.d.ts +5 -3
  61. package/dist/src/lib/mint-new-pkp.d.ts.map +1 -1
  62. package/dist/src/lib/mint-new-pkp.js +10 -4
  63. package/dist/src/lib/mint-new-pkp.js.map +1 -1
  64. package/dist/src/lib/setup-vincent-development-environment.d.ts +10 -4
  65. package/dist/src/lib/setup-vincent-development-environment.d.ts.map +1 -1
  66. package/dist/src/lib/setup-vincent-development-environment.js +28 -7
  67. package/dist/src/lib/setup-vincent-development-environment.js.map +1 -1
  68. package/dist/src/lib/smartAccount/crossmint/setup-crossmint-account.d.ts.map +1 -1
  69. package/dist/src/lib/smartAccount/crossmint/setup-crossmint-account.js +1 -0
  70. package/dist/src/lib/smartAccount/crossmint/setup-crossmint-account.js.map +1 -1
  71. package/dist/src/lib/smartAccount/types.d.ts +1 -0
  72. package/dist/src/lib/smartAccount/types.d.ts.map +1 -1
  73. package/package.json +7 -3
@@ -1,16 +1,18 @@
1
+ import type { PKPEthersWallet } from '@lit-protocol/pkp-ethers';
1
2
  import type { PermissionData } from '@lit-protocol/vincent-contracts-sdk';
2
3
  import type { PkpInfo } from '../mint-new-pkp';
3
4
  /**
4
- * Adds Vincent delegation permission for a specific app version for the user's Agent Wallet PKP.
5
+ * Adds Vincent delegation permission for a specific app version for the Agent PKP.
5
6
  *
6
7
  * This function will check if the requested app version is already permitted. If it is,
7
8
  * it will skip the permission step and return early. If a different version is permitted,
8
9
  * it will remove the old permission before adding the new one.
9
10
  */
10
- export declare function permitAppVersionForAgentWalletPkp({ permissionData, appId, appVersion, agentPkpInfo, }: {
11
+ export declare function permitAppVersionForAgentWalletPkp({ permissionData, appId, appVersion, agentPkpInfo, platformUserPkpWallet, }: {
11
12
  permissionData: PermissionData;
12
13
  appId: number;
13
14
  appVersion: number;
14
15
  agentPkpInfo: PkpInfo;
16
+ platformUserPkpWallet: PKPEthersWallet;
15
17
  }): Promise<void>;
16
18
  //# sourceMappingURL=permit-vincent-app-version.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"permit-vincent-app-version.d.ts","sourceRoot":"","sources":["../../../../src/lib/delegator/permit-vincent-app-version.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qCAAqC,CAAC;AAI1E,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAI/C;;;;;;GAMG;AACH,wBAAsB,iCAAiC,CAAC,EACtD,cAAc,EACd,KAAK,EACL,UAAU,EACV,YAAY,GACb,EAAE;IACD,cAAc,EAAE,cAAc,CAAC;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,OAAO,CAAC;CACvB,GAAG,OAAO,CAAC,IAAI,CAAC,CA2ChB"}
1
+ {"version":3,"file":"permit-vincent-app-version.d.ts","sourceRoot":"","sources":["../../../../src/lib/delegator/permit-vincent-app-version.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qCAAqC,CAAC;AAI1E,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAE/C;;;;;;GAMG;AACH,wBAAsB,iCAAiC,CAAC,EACtD,cAAc,EACd,KAAK,EACL,UAAU,EACV,YAAY,EACZ,qBAAqB,GACtB,EAAE;IACD,cAAc,EAAE,cAAc,CAAC;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,OAAO,CAAC;IACtB,qBAAqB,EAAE,eAAe,CAAC;CACxC,GAAG,OAAO,CAAC,IAAI,CAAC,CAuChB"}
@@ -2,18 +2,16 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.permitAppVersionForAgentWalletPkp = permitAppVersionForAgentWalletPkp;
4
4
  const vincent_contracts_sdk_1 = require("@lit-protocol/vincent-contracts-sdk");
5
- const chain_1 = require("../chain");
6
5
  /**
7
- * Adds Vincent delegation permission for a specific app version for the user's Agent Wallet PKP.
6
+ * Adds Vincent delegation permission for a specific app version for the Agent PKP.
8
7
  *
9
8
  * This function will check if the requested app version is already permitted. If it is,
10
9
  * it will skip the permission step and return early. If a different version is permitted,
11
10
  * it will remove the old permission before adding the new one.
12
11
  */
13
- async function permitAppVersionForAgentWalletPkp({ permissionData, appId, appVersion, agentPkpInfo, }) {
14
- const { wallets: { agentWalletOwner }, } = await (0, chain_1.getChainHelpers)();
12
+ async function permitAppVersionForAgentWalletPkp({ permissionData, appId, appVersion, agentPkpInfo, platformUserPkpWallet, }) {
15
13
  const client = (0, vincent_contracts_sdk_1.getClient)({
16
- signer: agentWalletOwner,
14
+ signer: platformUserPkpWallet,
17
15
  });
18
16
  const existingPermittedAppVersion = await client.getPermittedAppVersionForPkp({
19
17
  pkpEthAddress: agentPkpInfo.ethAddress,
@@ -21,7 +19,7 @@ async function permitAppVersionForAgentWalletPkp({ permissionData, appId, appVer
21
19
  });
22
20
  // Check if the requested version is already permitted
23
21
  if (existingPermittedAppVersion === appVersion) {
24
- console.log(`App version ${appVersion} is already permitted for Agent Wallet PKP ${agentPkpInfo.ethAddress}. Skipping permission.`);
22
+ console.log(`App version ${appVersion} is already permitted for Agent PKP ${agentPkpInfo.ethAddress}. Skipping permission.`);
25
23
  return;
26
24
  }
27
25
  // If a different version is permitted, remove it first
@@ -40,6 +38,6 @@ async function permitAppVersionForAgentWalletPkp({ permissionData, appId, appVer
40
38
  appVersion,
41
39
  permissionData: permissionData,
42
40
  });
43
- console.log(`Permitted App with ID ${appId} and version ${appVersion} for Agent Wallet PKP ${agentPkpInfo.ethAddress}\nTx hash: ${result.txHash}`);
41
+ console.log(`Permitted App with ID ${appId} and version ${appVersion} for Agent PKP ${agentPkpInfo.ethAddress}\nTx hash: ${result.txHash}`);
44
42
  }
45
43
  //# sourceMappingURL=permit-vincent-app-version.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"permit-vincent-app-version.js","sourceRoot":"","sources":["../../../../src/lib/delegator/permit-vincent-app-version.ts"],"names":[],"mappings":";;AAeA,8EAqDC;AAlED,+EAAgE;AAIhE,oCAA2C;AAE3C;;;;;;GAMG;AACI,KAAK,UAAU,iCAAiC,CAAC,EACtD,cAAc,EACd,KAAK,EACL,UAAU,EACV,YAAY,GAMb;IACC,MAAM,EACJ,OAAO,EAAE,EAAE,gBAAgB,EAAE,GAC9B,GAAG,MAAM,IAAA,uBAAe,GAAE,CAAC;IAE5B,MAAM,MAAM,GAAG,IAAA,iCAAS,EAAC;QACvB,MAAM,EAAE,gBAAgB;KACzB,CAAC,CAAC;IAEH,MAAM,2BAA2B,GAAG,MAAM,MAAM,CAAC,4BAA4B,CAAC;QAC5E,aAAa,EAAE,YAAY,CAAC,UAAU;QACtC,KAAK;KACN,CAAC,CAAC;IAEH,sDAAsD;IACtD,IAAI,2BAA2B,KAAK,UAAU,EAAE,CAAC;QAC/C,OAAO,CAAC,GAAG,CACT,eAAe,UAAU,8CAA8C,YAAY,CAAC,UAAU,wBAAwB,CACvH,CAAC;QACF,OAAO;IACT,CAAC;IAED,uDAAuD;IACvD,IAAI,2BAA2B,EAAE,CAAC;QAChC,OAAO,CAAC,GAAG,CAAC,gDAAgD,2BAA2B,EAAE,CAAC,CAAC;QAC3F,MAAM,MAAM,CAAC,WAAW,CAAC;YACvB,aAAa,EAAE,YAAY,CAAC,UAAU;YACtC,KAAK;YACL,UAAU,EAAE,2BAA2B;SACxC,CAAC,CAAC;IACL,CAAC;IAED,yBAAyB;IACzB,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,SAAS,CAAC;QACpC,aAAa,EAAE,YAAY,CAAC,UAAU;QACtC,KAAK;QACL,UAAU;QACV,cAAc,EAAE,cAAc;KAC/B,CAAC,CAAC;IAEH,OAAO,CAAC,GAAG,CACT,yBAAyB,KAAK,gBAAgB,UAAU,yBAAyB,YAAY,CAAC,UAAU,cAAc,MAAM,CAAC,MAAM,EAAE,CACtI,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"permit-vincent-app-version.js","sourceRoot":"","sources":["../../../../src/lib/delegator/permit-vincent-app-version.ts"],"names":[],"mappings":";;AAcA,8EAmDC;AA9DD,+EAAgE;AAIhE;;;;;;GAMG;AACI,KAAK,UAAU,iCAAiC,CAAC,EACtD,cAAc,EACd,KAAK,EACL,UAAU,EACV,YAAY,EACZ,qBAAqB,GAOtB;IACC,MAAM,MAAM,GAAG,IAAA,iCAAS,EAAC;QACvB,MAAM,EAAE,qBAAqB;KAC9B,CAAC,CAAC;IAEH,MAAM,2BAA2B,GAAG,MAAM,MAAM,CAAC,4BAA4B,CAAC;QAC5E,aAAa,EAAE,YAAY,CAAC,UAAU;QACtC,KAAK;KACN,CAAC,CAAC;IAEH,sDAAsD;IACtD,IAAI,2BAA2B,KAAK,UAAU,EAAE,CAAC;QAC/C,OAAO,CAAC,GAAG,CACT,eAAe,UAAU,uCAAuC,YAAY,CAAC,UAAU,wBAAwB,CAChH,CAAC;QACF,OAAO;IACT,CAAC;IAED,uDAAuD;IACvD,IAAI,2BAA2B,EAAE,CAAC;QAChC,OAAO,CAAC,GAAG,CAAC,gDAAgD,2BAA2B,EAAE,CAAC,CAAC;QAC3F,MAAM,MAAM,CAAC,WAAW,CAAC;YACvB,aAAa,EAAE,YAAY,CAAC,UAAU;YACtC,KAAK;YACL,UAAU,EAAE,2BAA2B;SACxC,CAAC,CAAC;IACL,CAAC;IAED,yBAAyB;IACzB,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,SAAS,CAAC;QACpC,aAAa,EAAE,YAAY,CAAC,UAAU;QACtC,KAAK;QACL,UAAU;QACV,cAAc,EAAE,cAAc;KAC/B,CAAC,CAAC;IAEH,OAAO,CAAC,GAAG,CACT,yBAAyB,KAAK,gBAAgB,UAAU,kBAAkB,YAAY,CAAC,UAAU,cAAc,MAAM,CAAC,MAAM,EAAE,CAC/H,CAAC;AACJ,CAAC"}
@@ -0,0 +1,10 @@
1
+ import type { PkpInfo } from '../mint-new-pkp';
2
+ export declare const ensurePlatformUserPkpExists: () => Promise<PkpInfo>;
3
+ export declare const ensureFundedPlatformUserPkpExists: () => Promise<PkpInfo>;
4
+ /**
5
+ * Returns platform user Pkp info for this run.
6
+ * This method will mint a new platform user Pkp if none exists for the current platform user wallet owner.
7
+ * This method will also fund the platform user Pkp if it is not already funded.
8
+ */
9
+ export declare const getFundedPlatformUserPkp: () => Promise<PkpInfo>;
10
+ //# sourceMappingURL=platform-user-pkp.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"platform-user-pkp.d.ts","sourceRoot":"","sources":["../../../../src/lib/delegator/platform-user-pkp.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAO/C,eAAO,MAAM,2BAA2B,QAAa,OAAO,CAAC,OAAO,CAqCnE,CAAC;AAEF,eAAO,MAAM,iCAAiC,QAAa,OAAO,CAAC,OAAO,CAMzE,CAAC;AAIF;;;;GAIG;AACH,eAAO,MAAM,wBAAwB,QAAa,OAAO,CAAC,OAAO,CAOhE,CAAC"}
@@ -0,0 +1,48 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getFundedPlatformUserPkp = exports.ensureFundedPlatformUserPkpExists = exports.ensurePlatformUserPkpExists = void 0;
4
+ const chain_1 = require("../chain");
5
+ const ensure_wallet_has_test_tokens_1 = require("../funder/ensure-wallet-has-test-tokens");
6
+ const get_lit_contract_client_1 = require("../litContractsClient/get-lit-contract-client");
7
+ const mint_new_pkp_1 = require("../mint-new-pkp");
8
+ const ensurePlatformUserPkpExists = async () => {
9
+ const { wallets: { platformUserWalletOwner }, } = await (0, chain_1.getChainHelpers)();
10
+ const litContractClient = await (0, get_lit_contract_client_1.getLitContractsClient)({ wallet: platformUserWalletOwner });
11
+ const ownedPkps = await litContractClient.pkpNftContractUtils.read.getTokensInfoByAddress(platformUserWalletOwner.address);
12
+ if (ownedPkps.length > 1) {
13
+ console.warn(`${ownedPkps.length} PKPs found for platform user wallet owner. When e2e testing, we recommend that you use a _dedicated platform user wallet owner account_ which always only has a single platform user PKP. Using the first PKP found.`, ownedPkps);
14
+ }
15
+ if (ownedPkps.length > 0) {
16
+ console.log(`${platformUserWalletOwner.address} has a PKP -- using existing PKP with ethAddress: ${ownedPkps[0].ethAddress}, tokenId: ${ownedPkps[0].tokenId}`);
17
+ const { tokenId, ethAddress } = ownedPkps[0];
18
+ const publicKey = await litContractClient.pkpNftContract.read.getPubkey(tokenId);
19
+ return { tokenId, ethAddress, publicKey };
20
+ }
21
+ console.log(`No platform user PKP found; minting a new platform user PKP for ${platformUserWalletOwner.address}...`);
22
+ // Be sure the platformUserWalletOwner has enough test tokens to mint a new PKP
23
+ await (0, ensure_wallet_has_test_tokens_1.ensureWalletHasTestTokens)({ address: await platformUserWalletOwner.getAddress() });
24
+ const { tokenId, ethAddress, publicKey } = await (0, mint_new_pkp_1.mintNewPkp)({ wallet: platformUserWalletOwner });
25
+ return { tokenId, ethAddress, publicKey };
26
+ };
27
+ exports.ensurePlatformUserPkpExists = ensurePlatformUserPkpExists;
28
+ const ensureFundedPlatformUserPkpExists = async () => {
29
+ const platformUserPkp = await (0, exports.ensurePlatformUserPkpExists)();
30
+ await (0, ensure_wallet_has_test_tokens_1.ensureWalletHasTestTokens)({ address: platformUserPkp.ethAddress });
31
+ return platformUserPkp;
32
+ };
33
+ exports.ensureFundedPlatformUserPkpExists = ensureFundedPlatformUserPkpExists;
34
+ let platformUserPkpInfo = null;
35
+ /**
36
+ * Returns platform user Pkp info for this run.
37
+ * This method will mint a new platform user Pkp if none exists for the current platform user wallet owner.
38
+ * This method will also fund the platform user Pkp if it is not already funded.
39
+ */
40
+ const getFundedPlatformUserPkp = async () => {
41
+ if (platformUserPkpInfo) {
42
+ return platformUserPkpInfo;
43
+ }
44
+ platformUserPkpInfo = await (0, exports.ensureFundedPlatformUserPkpExists)();
45
+ return platformUserPkpInfo;
46
+ };
47
+ exports.getFundedPlatformUserPkp = getFundedPlatformUserPkp;
48
+ //# sourceMappingURL=platform-user-pkp.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"platform-user-pkp.js","sourceRoot":"","sources":["../../../../src/lib/delegator/platform-user-pkp.ts"],"names":[],"mappings":";;;AAEA,oCAA2C;AAC3C,2FAAoF;AACpF,2FAAsF;AACtF,kDAA6C;AAEtC,MAAM,2BAA2B,GAAG,KAAK,IAAsB,EAAE;IACtE,MAAM,EACJ,OAAO,EAAE,EAAE,uBAAuB,EAAE,GACrC,GAAG,MAAM,IAAA,uBAAe,GAAE,CAAC;IAE5B,MAAM,iBAAiB,GAAG,MAAM,IAAA,+CAAqB,EAAC,EAAE,MAAM,EAAE,uBAAuB,EAAE,CAAC,CAAC;IAC3F,MAAM,SAAS,GAAG,MAAM,iBAAiB,CAAC,mBAAmB,CAAC,IAAI,CAAC,sBAAsB,CACvF,uBAAuB,CAAC,OAAO,CAChC,CAAC;IAEF,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACzB,OAAO,CAAC,IAAI,CACV,GAAG,SAAS,CAAC,MAAM,uNAAuN,EAC1O,SAAS,CACV,CAAC;IACJ,CAAC;IAED,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACzB,OAAO,CAAC,GAAG,CACT,GAAG,uBAAuB,CAAC,OAAO,qDAAqD,SAAS,CAAC,CAAC,CAAC,CAAC,UAAU,cAAc,SAAS,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,CACnJ,CAAC;QAEF,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;QAC7C,MAAM,SAAS,GAAG,MAAM,iBAAiB,CAAC,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QACjF,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,CAAC;IAC5C,CAAC;IAED,OAAO,CAAC,GAAG,CACT,mEAAmE,uBAAuB,CAAC,OAAO,KAAK,CACxG,CAAC;IAEF,+EAA+E;IAC/E,MAAM,IAAA,yDAAyB,EAAC,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;IAEzF,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,GAAG,MAAM,IAAA,yBAAU,EAAC,EAAE,MAAM,EAAE,uBAAuB,EAAE,CAAC,CAAC;IAEjG,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,CAAC;AAC5C,CAAC,CAAC;AArCW,QAAA,2BAA2B,+BAqCtC;AAEK,MAAM,iCAAiC,GAAG,KAAK,IAAsB,EAAE;IAC5E,MAAM,eAAe,GAAG,MAAM,IAAA,mCAA2B,GAAE,CAAC;IAE5D,MAAM,IAAA,yDAAyB,EAAC,EAAE,OAAO,EAAE,eAAe,CAAC,UAAU,EAAE,CAAC,CAAC;IAEzE,OAAO,eAAe,CAAC;AACzB,CAAC,CAAC;AANW,QAAA,iCAAiC,qCAM5C;AAEF,IAAI,mBAAmB,GAAmB,IAAI,CAAC;AAE/C;;;;GAIG;AACI,MAAM,wBAAwB,GAAG,KAAK,IAAsB,EAAE;IACnE,IAAI,mBAAmB,EAAE,CAAC;QACxB,OAAO,mBAAmB,CAAC;IAC7B,CAAC;IAED,mBAAmB,GAAG,MAAM,IAAA,yCAAiC,GAAE,CAAC;IAChE,OAAO,mBAAmB,CAAC;AAC7B,CAAC,CAAC;AAPW,QAAA,wBAAwB,4BAOnC"}
@@ -1,3 +1,4 @@
1
1
  import { ethers } from 'ethers';
2
- export declare const ensureUnexpiredCapacityToken: (targetWallet: ethers.Wallet) => Promise<void>;
2
+ import type { PKPEthersWallet } from '@lit-protocol/pkp-ethers';
3
+ export declare const ensureUnexpiredCapacityToken: (targetWallet: ethers.Wallet | PKPEthersWallet) => Promise<void>;
3
4
  //# sourceMappingURL=ensure-capacity-credit.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ensure-capacity-credit.d.ts","sourceRoot":"","sources":["../../../src/lib/ensure-capacity-credit.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAMhC,eAAO,MAAM,4BAA4B,GAAU,cAAc,MAAM,CAAC,MAAM,kBA4E7E,CAAC"}
1
+ {"version":3,"file":"ensure-capacity-credit.d.ts","sourceRoot":"","sources":["../../../src/lib/ensure-capacity-credit.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAMhE,eAAO,MAAM,4BAA4B,GACvC,cAAc,MAAM,CAAC,MAAM,GAAG,eAAe,kBAkF9C,CAAC"}
@@ -4,14 +4,17 @@ exports.ensureUnexpiredCapacityToken = void 0;
4
4
  const ethers_1 = require("ethers");
5
5
  const get_lit_contract_client_1 = require("./litContractsClient/get-lit-contract-client");
6
6
  const ensureUnexpiredCapacityToken = async (targetWallet) => {
7
- const litContractClient = await (0, get_lit_contract_client_1.getLitContractsClient)({ wallet: targetWallet });
7
+ const litContractClient = await (0, get_lit_contract_client_1.getLitContractsClient)({
8
+ wallet: targetWallet,
9
+ });
10
+ await litContractClient.connect();
8
11
  const existingTokens = await litContractClient.rateLimitNftContractUtils.read.getTokensByOwnerAddress(await targetWallet.getAddress());
9
12
  console.log(`Found ${existingTokens.length} capacity tokens`);
10
13
  if (existingTokens.length > 0 && existingTokens.some((token) => !token.isExpired)) {
11
14
  console.log('Capacity credit already exists; skipping minting');
12
15
  }
13
16
  else {
14
- console.log(`No unexpired capacity credit found; minting new capacity credit for ${targetWallet.address}`);
17
+ console.log(`No unexpired capacity credit found; minting new capacity credit for ${targetWallet.getAddress()}`);
15
18
  const daysUntilUTCMidnightExpiration = 3;
16
19
  const requestsPerKilosecond = 1000;
17
20
  const now = new Date();
@@ -20,7 +23,7 @@ const ensureUnexpiredCapacityToken = async (targetWallet) => {
20
23
  const mintCost = await litContractClient.rateLimitNftContract.read.calculateCost(requestsPerKilosecond, expiresAt);
21
24
  const balance = await targetWallet.getBalance();
22
25
  if (mintCost.gte(balance)) {
23
- throw new Error(`${targetWallet.address} has insufficient balance to mint capacity credit: ${ethers_1.ethers.utils.formatEther(balance)} <= ${ethers_1.ethers.utils.formatEther(mintCost)}`);
26
+ throw new Error(`${targetWallet.getAddress()} has insufficient balance to mint capacity credit: ${ethers_1.ethers.utils.formatEther(balance)} <= ${ethers_1.ethers.utils.formatEther(mintCost)}`);
24
27
  }
25
28
  const capacityCreditInfo = await litContractClient.mintCapacityCreditsNFT({
26
29
  requestsPerKilosecond,
@@ -42,7 +45,7 @@ const ensureUnexpiredCapacityToken = async (targetWallet) => {
42
45
  // Purge any existing but expired tokens for performance reasons
43
46
  // Listing a lot of tokens is expensive -- and we just need one, unexpired one!)
44
47
  try {
45
- await litContractClient.rateLimitNftContractUtils.write.pruneExpired(targetWallet.address);
48
+ await litContractClient.rateLimitNftContractUtils.write.pruneExpired(await targetWallet.getAddress());
46
49
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
47
50
  }
48
51
  catch (error) {
@@ -1 +1 @@
1
- {"version":3,"file":"ensure-capacity-credit.js","sourceRoot":"","sources":["../../../src/lib/ensure-capacity-credit.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ensure-capacity-credit.js","sourceRoot":"","sources":["../../../src/lib/ensure-capacity-credit.ts"],"names":[],"mappings":"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"}
@@ -6,9 +6,12 @@ declare const baseEnvSchema: {
6
6
  TEST_APP_DELEGATEE_PRIVATE_KEY: z.ZodString;
7
7
  TEST_AGENT_WALLET_PKP_OWNER_PRIVATE_KEY: z.ZodString;
8
8
  YELLOWSTONE_RPC_URL: z.ZodDefault<z.ZodOptional<z.ZodString>>;
9
- BASE_RPC_URL: z.ZodDefault<z.ZodOptional<z.ZodString>>;
10
9
  SMART_ACCOUNT_CHAIN_ID: z.ZodOptional<z.ZodString>;
10
+ ALCHEMY_RPC_URL: z.ZodOptional<z.ZodString>;
11
11
  ZERODEV_RPC_URL: z.ZodOptional<z.ZodString>;
12
+ CROSSMINT_API_KEY: z.ZodOptional<z.ZodString>;
13
+ SAFE_RPC_URL: z.ZodOptional<z.ZodString>;
14
+ PIMLICO_RPC_URL: z.ZodOptional<z.ZodString>;
12
15
  };
13
16
  export declare const getEnv: <T extends ZodRawShape = typeof baseEnvSchema>(additionalSchema?: T) => {
14
17
  TEST_FUNDER_PRIVATE_KEY: string;
@@ -16,9 +19,12 @@ export declare const getEnv: <T extends ZodRawShape = typeof baseEnvSchema>(addi
16
19
  TEST_APP_DELEGATEE_PRIVATE_KEY: string;
17
20
  TEST_AGENT_WALLET_PKP_OWNER_PRIVATE_KEY: string;
18
21
  YELLOWSTONE_RPC_URL: string;
19
- BASE_RPC_URL: string;
20
22
  SMART_ACCOUNT_CHAIN_ID?: string | undefined;
23
+ ALCHEMY_RPC_URL?: string | undefined;
21
24
  ZERODEV_RPC_URL?: string | undefined;
25
+ CROSSMINT_API_KEY?: string | undefined;
26
+ SAFE_RPC_URL?: string | undefined;
27
+ PIMLICO_RPC_URL?: string | undefined;
22
28
  } & (z.objectUtil.addQuestionMarks<z.baseObjectOutputType<T>, any> extends infer T_1 ? { [k in keyof T_1]: z.objectUtil.addQuestionMarks<z.baseObjectOutputType<T>, any>[k]; } : never);
23
29
  export {};
24
30
  //# sourceMappingURL=env.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"env.d.ts","sourceRoot":"","sources":["../../../src/lib/env.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,KAAK,CAAC;AAGvC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAoBxB,QAAA,MAAM,aAAa;;;;;;;;;CAUlB,CAAC;AAIF,eAAO,MAAM,MAAM,GAAI,CAAC,SAAS,WAAW,GAAG,OAAO,aAAa,EAAE,mBAAmB,CAAC;;;;;;;;;uLAaxF,CAAC"}
1
+ {"version":3,"file":"env.d.ts","sourceRoot":"","sources":["../../../src/lib/env.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,KAAK,CAAC;AAGvC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAoBxB,QAAA,MAAM,aAAa;;;;;;;;;;;;CAgBlB,CAAC;AAIF,eAAO,MAAM,MAAM,GAAI,CAAC,SAAS,WAAW,GAAG,OAAO,aAAa,EAAE,mBAAmB,CAAC;;;;;;;;;;;;uLAaxF,CAAC"}
@@ -29,10 +29,16 @@ const baseEnvSchema = {
29
29
  TEST_APP_DELEGATEE_PRIVATE_KEY: zod_1.z.string(),
30
30
  TEST_AGENT_WALLET_PKP_OWNER_PRIVATE_KEY: zod_1.z.string(),
31
31
  YELLOWSTONE_RPC_URL: zod_1.z.string().optional().default('https://yellowstone-rpc.litprotocol.com/'),
32
- BASE_RPC_URL: zod_1.z.string().optional().default('https://base.llamarpc.com'),
33
32
  // Smart Account (optional - only needed when enableSmartAccount=true)
34
33
  SMART_ACCOUNT_CHAIN_ID: zod_1.z.string().optional(),
34
+ ALCHEMY_RPC_URL: zod_1.z.string().optional(),
35
+ // ZeroDev
35
36
  ZERODEV_RPC_URL: zod_1.z.string().optional(),
37
+ // Crossmint
38
+ CROSSMINT_API_KEY: zod_1.z.string().optional(),
39
+ // Safe
40
+ SAFE_RPC_URL: zod_1.z.string().optional(),
41
+ PIMLICO_RPC_URL: zod_1.z.string().optional(),
36
42
  };
37
43
  const getEnv = (additionalSchema) => {
38
44
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"env.js","sourceRoot":"","sources":["../../../src/lib/env.ts"],"names":[],"mappings":";;;AAEA,+CAA6C;AAC7C,6BAAwB;AAExB,iDAAiD;AACjD,MAAM,cAAc,GAAG,CAAC,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;AACpG,6FAA6F;AAC7F,6DAA6D;AAC7D,MAAM,4BAA4B,GAAG,OAAC;KACnC,GAAG,EAAE;KACL,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,cAAc,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,EAAE,OAAO,EAAE,iBAAiB,EAAE,CAAC;KAC7E,SAAS,CAAC,CAAC,GAAG,EAAE,EAAE;IACjB,IAAI,OAAO,GAAG,KAAK,SAAS;QAAE,OAAO,GAAG,CAAC;IACzC,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;QAC5B,MAAM,UAAU,GAAG,GAAG,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,CAAC;QAC5C,IAAI,CAAC,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC;YAAE,OAAO,IAAI,CAAC;QACtE,IAAI,CAAC,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC;YAAE,OAAO,KAAK,CAAC;QACxE,MAAM,IAAI,KAAK,CAAC,4BAA4B,GAAG,GAAG,CAAC,CAAC;IACtD,CAAC;IACD,MAAM,IAAI,KAAK,CAAC,4CAA4C,OAAO,GAAG,EAAE,CAAC,CAAC;AAC5E,CAAC,CAAC,CAAC;AAEL,MAAM,aAAa,GAAG;IACpB,uBAAuB,EAAE,OAAC,CAAC,MAAM,EAAE;IACnC,4BAA4B,EAAE,OAAC,CAAC,MAAM,EAAE;IACxC,8BAA8B,EAAE,OAAC,CAAC,MAAM,EAAE;IAC1C,uCAAuC,EAAE,OAAC,CAAC,MAAM,EAAE;IACnD,mBAAmB,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,0CAA0C,CAAC;IAC9F,YAAY,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,2BAA2B,CAAC;IACxE,sEAAsE;IACtE,sBAAsB,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC7C,eAAe,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CACvC,CAAC;AAIK,MAAM,MAAM,GAAG,CAA+C,gBAAoB,EAAE,EAAE;IAC3F,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,gBAAgB,CAAC,CAAC,CAAC,EAAE,GAAG,aAAa,EAAE,GAAG,gBAAgB,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC;QAE5F,OAAO,IAAA,oBAAS,EAAC;YACf,sBAAsB,EAAE,IAAI;YAC5B,UAAU,EAAE,OAAO,CAAC,GAAG;YACvB,MAAM,EAAE,MAAM;SACf,CAAyD,CAAC;IAC7D,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO,CAAC,KAAK,CAAC,oDAAoD,CAAC,CAAC;QACpE,MAAM,CAAC,CAAC;IACV,CAAC;AACH,CAAC,CAAC;AAbW,QAAA,MAAM,UAajB"}
1
+ {"version":3,"file":"env.js","sourceRoot":"","sources":["../../../src/lib/env.ts"],"names":[],"mappings":";;;AAEA,+CAA6C;AAC7C,6BAAwB;AAExB,iDAAiD;AACjD,MAAM,cAAc,GAAG,CAAC,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;AACpG,6FAA6F;AAC7F,6DAA6D;AAC7D,MAAM,4BAA4B,GAAG,OAAC;KACnC,GAAG,EAAE;KACL,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,cAAc,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,EAAE,OAAO,EAAE,iBAAiB,EAAE,CAAC;KAC7E,SAAS,CAAC,CAAC,GAAG,EAAE,EAAE;IACjB,IAAI,OAAO,GAAG,KAAK,SAAS;QAAE,OAAO,GAAG,CAAC;IACzC,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;QAC5B,MAAM,UAAU,GAAG,GAAG,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,CAAC;QAC5C,IAAI,CAAC,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC;YAAE,OAAO,IAAI,CAAC;QACtE,IAAI,CAAC,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC;YAAE,OAAO,KAAK,CAAC;QACxE,MAAM,IAAI,KAAK,CAAC,4BAA4B,GAAG,GAAG,CAAC,CAAC;IACtD,CAAC;IACD,MAAM,IAAI,KAAK,CAAC,4CAA4C,OAAO,GAAG,EAAE,CAAC,CAAC;AAC5E,CAAC,CAAC,CAAC;AAEL,MAAM,aAAa,GAAG;IACpB,uBAAuB,EAAE,OAAC,CAAC,MAAM,EAAE;IACnC,4BAA4B,EAAE,OAAC,CAAC,MAAM,EAAE;IACxC,8BAA8B,EAAE,OAAC,CAAC,MAAM,EAAE;IAC1C,uCAAuC,EAAE,OAAC,CAAC,MAAM,EAAE;IACnD,mBAAmB,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,0CAA0C,CAAC;IAC9F,sEAAsE;IACtE,sBAAsB,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC7C,eAAe,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACtC,UAAU;IACV,eAAe,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACtC,YAAY;IACZ,iBAAiB,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACxC,OAAO;IACP,YAAY,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACnC,eAAe,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CACvC,CAAC;AAIK,MAAM,MAAM,GAAG,CAA+C,gBAAoB,EAAE,EAAE;IAC3F,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,gBAAgB,CAAC,CAAC,CAAC,EAAE,GAAG,aAAa,EAAE,GAAG,gBAAgB,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC;QAE5F,OAAO,IAAA,oBAAS,EAAC;YACf,sBAAsB,EAAE,IAAI;YAC5B,UAAU,EAAE,OAAO,CAAC,GAAG;YACvB,MAAM,EAAE,MAAM;SACf,CAAyD,CAAC;IAC7D,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO,CAAC,KAAK,CAAC,oDAAoD,CAAC,CAAC;QACpE,MAAM,CAAC,CAAC;IACV,CAAC;AACH,CAAC,CAAC;AAbW,QAAA,MAAM,UAajB"}
@@ -1,4 +1,5 @@
1
- export declare const ensureWalletHasTestTokens: ({ address }: {
1
+ export declare const ensureWalletHasTestTokens: ({ address, minAmountEther, }: {
2
2
  address: string;
3
+ minAmountEther?: string;
3
4
  }) => Promise<void>;
4
5
  //# sourceMappingURL=ensure-wallet-has-test-tokens.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ensure-wallet-has-test-tokens.d.ts","sourceRoot":"","sources":["../../../../src/lib/funder/ensure-wallet-has-test-tokens.ts"],"names":[],"mappings":"AASA,eAAO,MAAM,yBAAyB,GAAU,aAAa;IAAE,OAAO,EAAE,MAAM,CAAA;CAAE,kBAiC/E,CAAC"}
1
+ {"version":3,"file":"ensure-wallet-has-test-tokens.d.ts","sourceRoot":"","sources":["../../../../src/lib/funder/ensure-wallet-has-test-tokens.ts"],"names":[],"mappings":"AASA,eAAO,MAAM,yBAAyB,GAAU,8BAG7C;IACD,OAAO,EAAE,MAAM,CAAC;IAChB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB,kBAmCA,CAAC"}
@@ -7,26 +7,28 @@ const FUND_AMOUNT = ethers_1.ethers.utils.parseEther('0.01');
7
7
  const MIN_AMOUNT = ethers_1.ethers.utils.parseEther('0.005');
8
8
  // Note that _outside of this test framework_, the agent wallet owner will have funded their own wallet / agent wallets with test tokens,
9
9
  // but because we create the agent wallet owner, its agent PKP, and the appManager as part of this e2e test, this code is responsible for funding them with test tokens.
10
- const ensureWalletHasTestTokens = async ({ address }) => {
10
+ const ensureWalletHasTestTokens = async ({ address, minAmountEther, }) => {
11
+ const minAmount = minAmountEther ? ethers_1.ethers.utils.parseEther(minAmountEther) : MIN_AMOUNT;
11
12
  const { wallets: { funder }, } = await (0, chain_1.getChainHelpers)();
12
13
  const walletBalance = await funder.provider.getBalance(address);
13
- if (walletBalance.gt(MIN_AMOUNT)) {
14
+ const fundAmount = minAmount.gt(FUND_AMOUNT) ? minAmount.sub(walletBalance) : FUND_AMOUNT;
15
+ if (walletBalance.gte(minAmount)) {
14
16
  console.log(`ℹ️ ${address} has ${ethers_1.ethers.utils.formatEther(walletBalance)} Lit test tokens`);
15
17
  return;
16
18
  }
17
19
  else {
18
- console.log(`ℹ️ ${address} has less than ${ethers_1.ethers.utils.formatEther(MIN_AMOUNT)}`);
19
- console.log(`ℹ️ Minimum of ${ethers_1.ethers.utils.formatEther(MIN_AMOUNT)} Lit test tokens are required`);
20
- console.log(`ℹ️ Funding ${address} with ${ethers_1.ethers.utils.formatEther(FUND_AMOUNT)} Lit test tokens from funder account: ${funder.address}...`);
20
+ console.log(`ℹ️ ${address} has less than ${ethers_1.ethers.utils.formatEther(minAmount)}`);
21
+ console.log(`ℹ️ Minimum of ${ethers_1.ethers.utils.formatEther(minAmount)} Lit test tokens are required`);
22
+ console.log(`ℹ️ Funding ${address} with ${ethers_1.ethers.utils.formatEther(fundAmount)} Lit test tokens from funder account: ${funder.address}...`);
21
23
  const tx = await funder.sendTransaction({
22
24
  to: address,
23
- value: FUND_AMOUNT,
25
+ value: fundAmount,
24
26
  });
25
27
  const txReceipt = await tx.wait();
26
28
  if (txReceipt.status !== 1) {
27
29
  throw new Error(`Transaction failed. Tx hash: ${txReceipt.transactionHash}`);
28
30
  }
29
- console.log(`ℹ️ Funded ${address} with 0.01 Lit test tokens\nTx hash: ${txReceipt.transactionHash}`);
31
+ console.log(`ℹ️ Funded ${address} with ${ethers_1.ethers.utils.formatEther(fundAmount)} Lit test tokens\nTx hash: ${txReceipt.transactionHash}`);
30
32
  }
31
33
  };
32
34
  exports.ensureWalletHasTestTokens = ensureWalletHasTestTokens;
@@ -1 +1 @@
1
- {"version":3,"file":"ensure-wallet-has-test-tokens.js","sourceRoot":"","sources":["../../../../src/lib/funder/ensure-wallet-has-test-tokens.ts"],"names":[],"mappings":";;;AAAA,mCAAgC;AAEhC,oCAA2C;AAE3C,MAAM,WAAW,GAAG,eAAM,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;AACpD,MAAM,UAAU,GAAG,eAAM,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;AAEpD,yIAAyI;AACzI,wKAAwK;AACjK,MAAM,yBAAyB,GAAG,KAAK,EAAE,EAAE,OAAO,EAAuB,EAAE,EAAE;IAClF,MAAM,EACJ,OAAO,EAAE,EAAE,MAAM,EAAE,GACpB,GAAG,MAAM,IAAA,uBAAe,GAAE,CAAC;IAE5B,MAAM,aAAa,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;IAEhE,IAAI,aAAa,CAAC,EAAE,CAAC,UAAU,CAAC,EAAE,CAAC;QACjC,OAAO,CAAC,GAAG,CAAC,OAAO,OAAO,QAAQ,eAAM,CAAC,KAAK,CAAC,WAAW,CAAC,aAAa,CAAC,kBAAkB,CAAC,CAAC;QAC7F,OAAO;IACT,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,GAAG,CAAC,OAAO,OAAO,kBAAkB,eAAM,CAAC,KAAK,CAAC,WAAW,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;QACpF,OAAO,CAAC,GAAG,CACT,kBAAkB,eAAM,CAAC,KAAK,CAAC,WAAW,CAAC,UAAU,CAAC,+BAA+B,CACtF,CAAC;QACF,OAAO,CAAC,GAAG,CACT,eAAe,OAAO,SAAS,eAAM,CAAC,KAAK,CAAC,WAAW,CAAC,WAAW,CAAC,yCAAyC,MAAM,CAAC,OAAO,KAAK,CACjI,CAAC;QAEF,MAAM,EAAE,GAAG,MAAM,MAAM,CAAC,eAAe,CAAC;YACtC,EAAE,EAAE,OAAO;YACX,KAAK,EAAE,WAAW;SACnB,CAAC,CAAC;QAEH,MAAM,SAAS,GAAG,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC;QAClC,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC3B,MAAM,IAAI,KAAK,CAAC,gCAAgC,SAAS,CAAC,eAAe,EAAE,CAAC,CAAC;QAC/E,CAAC;QAED,OAAO,CAAC,GAAG,CACT,cAAc,OAAO,wCAAwC,SAAS,CAAC,eAAe,EAAE,CACzF,CAAC;IACJ,CAAC;AACH,CAAC,CAAC;AAjCW,QAAA,yBAAyB,6BAiCpC"}
1
+ {"version":3,"file":"ensure-wallet-has-test-tokens.js","sourceRoot":"","sources":["../../../../src/lib/funder/ensure-wallet-has-test-tokens.ts"],"names":[],"mappings":";;;AAAA,mCAAgC;AAEhC,oCAA2C;AAE3C,MAAM,WAAW,GAAG,eAAM,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;AACpD,MAAM,UAAU,GAAG,eAAM,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;AAEpD,yIAAyI;AACzI,wKAAwK;AACjK,MAAM,yBAAyB,GAAG,KAAK,EAAE,EAC9C,OAAO,EACP,cAAc,GAIf,EAAE,EAAE;IACH,MAAM,SAAS,GAAG,cAAc,CAAC,CAAC,CAAC,eAAM,CAAC,KAAK,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC;IACxF,MAAM,EACJ,OAAO,EAAE,EAAE,MAAM,EAAE,GACpB,GAAG,MAAM,IAAA,uBAAe,GAAE,CAAC;IAE5B,MAAM,aAAa,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;IAChE,MAAM,UAAU,GAAG,SAAS,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC;IAE1F,IAAI,aAAa,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;QACjC,OAAO,CAAC,GAAG,CAAC,OAAO,OAAO,QAAQ,eAAM,CAAC,KAAK,CAAC,WAAW,CAAC,aAAa,CAAC,kBAAkB,CAAC,CAAC;QAC7F,OAAO;IACT,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,GAAG,CAAC,OAAO,OAAO,kBAAkB,eAAM,CAAC,KAAK,CAAC,WAAW,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;QACnF,OAAO,CAAC,GAAG,CACT,kBAAkB,eAAM,CAAC,KAAK,CAAC,WAAW,CAAC,SAAS,CAAC,+BAA+B,CACrF,CAAC;QACF,OAAO,CAAC,GAAG,CACT,eAAe,OAAO,SAAS,eAAM,CAAC,KAAK,CAAC,WAAW,CAAC,UAAU,CAAC,yCAAyC,MAAM,CAAC,OAAO,KAAK,CAChI,CAAC;QAEF,MAAM,EAAE,GAAG,MAAM,MAAM,CAAC,eAAe,CAAC;YACtC,EAAE,EAAE,OAAO;YACX,KAAK,EAAE,UAAU;SAClB,CAAC,CAAC;QAEH,MAAM,SAAS,GAAG,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC;QAClC,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC3B,MAAM,IAAI,KAAK,CAAC,gCAAgC,SAAS,CAAC,eAAe,EAAE,CAAC,CAAC;QAC/E,CAAC;QAED,OAAO,CAAC,GAAG,CACT,cAAc,OAAO,SAAS,eAAM,CAAC,KAAK,CAAC,WAAW,CAAC,UAAU,CAAC,8BAA8B,SAAS,CAAC,eAAe,EAAE,CAC5H,CAAC;IACJ,CAAC;AACH,CAAC,CAAC;AAzCW,QAAA,yBAAyB,6BAyCpC"}
@@ -14,5 +14,5 @@ export { getEnv } from './env';
14
14
  export { getChainHelpers } from './chain';
15
15
  export { createRandomVincentWallets } from './create-random-vincent-wallets';
16
16
  export { setupVincentDevelopmentEnvironment, type VincentDevEnvironment, } from './setup-vincent-development-environment';
17
- export { setupZerodevAccount, setupCrossmintAccount, setupSafeAccount, type SmartAccountInfo } from './smartAccount';
17
+ export { setupZerodevAccount, setupCrossmintAccount, setupSafeAccount, type SmartAccountInfo, type ZerodevSmartAccountInfo, type CrossmintSmartAccountInfo, type SafeSmartAccountInfo, } from './smartAccount';
18
18
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/lib/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,SAAS,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,SAAS,EAAE,CAAC;AAErB,OAAO,KAAK,SAAS,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,SAAS,EAAE,CAAC;AAErB,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AACnC,OAAO,EAAE,MAAM,EAAE,CAAC;AAElB,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,EAAE,KAAK,EAAE,CAAC;AAEjB,OAAO,KAAK,UAAU,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,CAAC;AAEtB,OAAO,EAAE,UAAU,EAAE,KAAK,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAC1D,OAAO,EAAE,4BAA4B,EAAE,MAAM,0BAA0B,CAAC;AACxE,OAAO,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAC1C,OAAO,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;AAC7E,OAAO,EACL,kCAAkC,EAClC,KAAK,qBAAqB,GAC3B,MAAM,yCAAyC,CAAC;AAEjD,OAAO,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,KAAK,gBAAgB,EAAE,MAAM,gBAAgB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/lib/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,SAAS,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,SAAS,EAAE,CAAC;AAErB,OAAO,KAAK,SAAS,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,SAAS,EAAE,CAAC;AAErB,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AACnC,OAAO,EAAE,MAAM,EAAE,CAAC;AAElB,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,EAAE,KAAK,EAAE,CAAC;AAEjB,OAAO,KAAK,UAAU,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,CAAC;AAEtB,OAAO,EAAE,UAAU,EAAE,KAAK,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAC1D,OAAO,EAAE,4BAA4B,EAAE,MAAM,0BAA0B,CAAC;AACxE,OAAO,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAC1C,OAAO,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;AAC7E,OAAO,EACL,kCAAkC,EAClC,KAAK,qBAAqB,GAC3B,MAAM,yCAAyC,CAAC;AAEjD,OAAO,EACL,mBAAmB,EACnB,qBAAqB,EACrB,gBAAgB,EAChB,KAAK,gBAAgB,EACrB,KAAK,uBAAuB,EAC5B,KAAK,yBAAyB,EAC9B,KAAK,oBAAoB,GAC1B,MAAM,gBAAgB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lib/index.ts"],"names":[],"mappings":";;;;AAAA,+DAAyC;AAChC,8BAAS;AAElB,+DAAyC;AAChC,8BAAS;AAElB,yDAAmC;AAC1B,wBAAM;AAEf,uDAAiC;AACxB,sBAAK;AAEd,iEAA2C;AAClC,gCAAU;AAEnB,+CAA0D;AAAjD,0GAAA,UAAU,OAAA;AACnB,mEAAwE;AAA/D,sIAAA,4BAA4B,OAAA;AACrC,6BAA+B;AAAtB,6FAAA,MAAM,OAAA;AACf,iCAA0C;AAAjC,wGAAA,eAAe,OAAA;AACxB,iFAA6E;AAApE,2IAAA,0BAA0B,OAAA;AACnC,iGAGiD;AAF/C,2JAAA,kCAAkC,OAAA;AAIpC,+CAAqH;AAA5G,mHAAA,mBAAmB,OAAA;AAAE,qHAAA,qBAAqB,OAAA;AAAE,gHAAA,gBAAgB,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lib/index.ts"],"names":[],"mappings":";;;;AAAA,+DAAyC;AAChC,8BAAS;AAElB,+DAAyC;AAChC,8BAAS;AAElB,yDAAmC;AAC1B,wBAAM;AAEf,uDAAiC;AACxB,sBAAK;AAEd,iEAA2C;AAClC,gCAAU;AAEnB,+CAA0D;AAAjD,0GAAA,UAAU,OAAA;AACnB,mEAAwE;AAA/D,sIAAA,4BAA4B,OAAA;AACrC,6BAA+B;AAAtB,6FAAA,MAAM,OAAA;AACf,iCAA0C;AAAjC,wGAAA,eAAe,OAAA;AACxB,iFAA6E;AAApE,2IAAA,0BAA0B,OAAA;AACnC,iGAGiD;AAF/C,2JAAA,kCAAkC,OAAA;AAIpC,+CAQwB;AAPtB,mHAAA,mBAAmB,OAAA;AACnB,qHAAA,qBAAqB,OAAA;AACrB,gHAAA,gBAAgB,OAAA"}
@@ -1,11 +1,12 @@
1
1
  import type { ethers } from 'ethers';
2
+ import type { PKPEthersWallet } from '@lit-protocol/pkp-ethers';
2
3
  import { LitContracts } from '@lit-protocol/contracts-sdk';
3
4
  export declare class LitContractsInstance {
4
5
  private readonly contractsInstance;
5
6
  private isConnected;
6
7
  private connectHandle;
7
8
  constructor({ wallet }: {
8
- wallet: ethers.Wallet;
9
+ wallet: ethers.Wallet | PKPEthersWallet;
9
10
  });
10
11
  connect(): Promise<boolean>;
11
12
  get litContracts(): LitContracts;
@@ -1 +1 @@
1
- {"version":3,"file":"LitContractsInstance.d.ts","sourceRoot":"","sources":["../../../../src/lib/litContractsClient/LitContractsInstance.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAErC,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAE3D,qBAAa,oBAAoB;IAC/B,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAe;IAEjD,OAAO,CAAC,WAAW,CAAS;IAE5B,OAAO,CAAC,aAAa,CAAiC;gBAE1C,EAAE,MAAM,EAAE,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC,MAAM,CAAA;KAAE;IAS3C,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC;IA4BjC,IAAI,YAAY,IAAI,YAAY,CAE/B;CACF"}
1
+ {"version":3,"file":"LitContractsInstance.d.ts","sourceRoot":"","sources":["../../../../src/lib/litContractsClient/LitContractsInstance.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAErC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAEhE,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAE3D,qBAAa,oBAAoB;IAC/B,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAe;IAEjD,OAAO,CAAC,WAAW,CAAS;IAE5B,OAAO,CAAC,aAAa,CAAiC;gBAE1C,EAAE,MAAM,EAAE,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC,MAAM,GAAG,eAAe,CAAA;KAAE;IAS7D,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC;IA4BjC,IAAI,YAAY,IAAI,YAAY,CAE/B;CACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"LitContractsInstance.js","sourceRoot":"","sources":["../../../../src/lib/litContractsClient/LitContractsInstance.ts"],"names":[],"mappings":";;;AAEA,+DAA2D;AAE3D,MAAa,oBAAoB;IACd,iBAAiB,CAAe;IAEzC,WAAW,GAAG,KAAK,CAAC;IAEpB,aAAa,GAA4B,IAAI,CAAC;IAEtD,YAAY,EAAE,MAAM,EAA6B;QAC/C,IAAI,CAAC,iBAAiB,GAAG,IAAI,4BAAY,CAAC;YACxC,KAAK,EAAE,IAAI;YACX,OAAO,EAAE,OAAO;YAChB,MAAM,EAAE,MAAM;YACd,QAAQ,EAAE,MAAM,CAAC,QAAQ;SAC1B,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,OAAO;QACX,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;YACtB,4BAA4B;YAC5B,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;gBACvB,OAAO,IAAI,CAAC,aAAa,CAAC;YAC5B,CAAC;YAED,sEAAsE;YACtE,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,iBAAiB,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;YAEvE,IAAI,CAAC;gBACH,mEAAmE;gBACnE,MAAM,IAAI,CAAC,aAAa,CAAC;gBACzB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;YAC1B,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,wFAAwF;gBACxF,0DAA0D;gBAC1D,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;gBACzB,MAAM,CAAC,CAAC;YACV,CAAC;oBAAS,CAAC;gBACT,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;YAC5B,CAAC;YACD,OAAO,IAAI,CAAC,WAAW,CAAC;QAC1B,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,YAAY;QACd,OAAO,IAAI,CAAC,iBAAiB,CAAC;IAChC,CAAC;CACF;AA/CD,oDA+CC"}
1
+ {"version":3,"file":"LitContractsInstance.js","sourceRoot":"","sources":["../../../../src/lib/litContractsClient/LitContractsInstance.ts"],"names":[],"mappings":";;;AAIA,+DAA2D;AAE3D,MAAa,oBAAoB;IACd,iBAAiB,CAAe;IAEzC,WAAW,GAAG,KAAK,CAAC;IAEpB,aAAa,GAA4B,IAAI,CAAC;IAEtD,YAAY,EAAE,MAAM,EAA+C;QACjE,IAAI,CAAC,iBAAiB,GAAG,IAAI,4BAAY,CAAC;YACxC,KAAK,EAAE,IAAI;YACX,OAAO,EAAE,OAAO;YAChB,MAAM,EAAE,MAAM;YACd,QAAQ,EAAE,MAAM,CAAC,QAAQ;SAC1B,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,OAAO;QACX,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;YACtB,4BAA4B;YAC5B,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;gBACvB,OAAO,IAAI,CAAC,aAAa,CAAC;YAC5B,CAAC;YAED,sEAAsE;YACtE,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,iBAAiB,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;YAEvE,IAAI,CAAC;gBACH,mEAAmE;gBACnE,MAAM,IAAI,CAAC,aAAa,CAAC;gBACzB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;YAC1B,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,wFAAwF;gBACxF,0DAA0D;gBAC1D,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;gBACzB,MAAM,CAAC,CAAC;YACV,CAAC;oBAAS,CAAC;gBACT,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;YAC5B,CAAC;YACD,OAAO,IAAI,CAAC,WAAW,CAAC;QAC1B,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,YAAY;QACd,OAAO,IAAI,CAAC,iBAAiB,CAAC;IAChC,CAAC;CACF;AA/CD,oDA+CC"}
@@ -1,6 +1,7 @@
1
1
  import type { ethers } from 'ethers';
2
2
  import type { LitContracts } from '@lit-protocol/contracts-sdk';
3
+ import type { PKPEthersWallet } from '@lit-protocol/pkp-ethers';
3
4
  export declare function getLitContractsClient({ wallet, }: {
4
- wallet: ethers.Wallet;
5
+ wallet: ethers.Wallet | PKPEthersWallet;
5
6
  }): Promise<LitContracts>;
6
7
  //# sourceMappingURL=get-lit-contract-client.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"get-lit-contract-client.d.ts","sourceRoot":"","sources":["../../../../src/lib/litContractsClient/get-lit-contract-client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAErC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAMhE,wBAAsB,qBAAqB,CAAC,EAC1C,MAAM,GACP,EAAE;IACD,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC;CACvB,GAAG,OAAO,CAAC,YAAY,CAAC,CAcxB"}
1
+ {"version":3,"file":"get-lit-contract-client.d.ts","sourceRoot":"","sources":["../../../../src/lib/litContractsClient/get-lit-contract-client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAErC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAChE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAMhE,wBAAsB,qBAAqB,CAAC,EAC1C,MAAM,GACP,EAAE;IACD,MAAM,EAAE,MAAM,CAAC,MAAM,GAAG,eAAe,CAAC;CACzC,GAAG,OAAO,CAAC,YAAY,CAAC,CAcxB"}
@@ -1 +1 @@
1
- {"version":3,"file":"get-lit-contract-client.js","sourceRoot":"","sources":["../../../../src/lib/litContractsClient/get-lit-contract-client.ts"],"names":[],"mappings":";;AAQA,sDAkBC;AAtBD,iEAA8D;AAE9D,MAAM,iBAAiB,GAAG,IAAI,OAAO,EAAuC,CAAC;AAEtE,KAAK,UAAU,qBAAqB,CAAC,EAC1C,MAAM,GAGP;IACC,IAAI,QAAQ,GAAG,iBAAiB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAC7C,IAAI,QAAQ,EAAE,CAAC;QACb,oFAAoF;QACpF,yFAAyF;QACzF,MAAM,QAAQ,CAAC,OAAO,EAAE,CAAC;QACzB,OAAO,QAAQ,CAAC,YAAY,CAAC;IAC/B,CAAC;IAED,QAAQ,GAAG,IAAI,2CAAoB,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;IAChD,iBAAiB,CAAC,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IACxC,MAAM,QAAQ,CAAC,OAAO,EAAE,CAAC;IAEzB,OAAO,QAAQ,CAAC,YAAY,CAAC;AAC/B,CAAC"}
1
+ {"version":3,"file":"get-lit-contract-client.js","sourceRoot":"","sources":["../../../../src/lib/litContractsClient/get-lit-contract-client.ts"],"names":[],"mappings":";;AASA,sDAkBC;AAtBD,iEAA8D;AAE9D,MAAM,iBAAiB,GAAG,IAAI,OAAO,EAAyD,CAAC;AAExF,KAAK,UAAU,qBAAqB,CAAC,EAC1C,MAAM,GAGP;IACC,IAAI,QAAQ,GAAG,iBAAiB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAC7C,IAAI,QAAQ,EAAE,CAAC;QACb,oFAAoF;QACpF,yFAAyF;QACzF,MAAM,QAAQ,CAAC,OAAO,EAAE,CAAC;QACzB,OAAO,QAAQ,CAAC,YAAY,CAAC;IAC/B,CAAC;IAED,QAAQ,GAAG,IAAI,2CAAoB,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;IAChD,iBAAiB,CAAC,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IACxC,MAAM,QAAQ,CAAC,OAAO,EAAE,CAAC;IAEzB,OAAO,QAAQ,CAAC,YAAY,CAAC;AAC/B,CAAC"}
@@ -1,14 +1,16 @@
1
1
  import { ethers } from 'ethers';
2
+ import type { PKPEthersWallet } from '@lit-protocol/pkp-ethers';
2
3
  export type PkpInfo = {
3
4
  ethAddress: string;
4
5
  tokenId: string;
6
+ publicKey: string;
5
7
  };
6
8
  /**
7
9
  * Helper function to mint a new PKP and return its information
8
- * @param wallet wallet that will be the PKP owner
10
+ * @param wallet wallet that will be the PKP owner and permitted auth method
9
11
  * @returns the newly minted PKP's tokenId and ethAddress
10
12
  */
11
- export declare const mintNewPkp: ({ wallet }: {
12
- wallet: ethers.Wallet;
13
+ export declare const mintNewPkp: ({ wallet, }: {
14
+ wallet: ethers.Wallet | PKPEthersWallet;
13
15
  }) => Promise<PkpInfo>;
14
16
  //# sourceMappingURL=mint-new-pkp.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"mint-new-pkp.d.ts","sourceRoot":"","sources":["../../../src/lib/mint-new-pkp.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAMhC,MAAM,MAAM,OAAO,GAAG;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC;AAE9D;;;;GAIG;AACH,eAAO,MAAM,UAAU,GAAU,YAAY;IAAE,MAAM,EAAE,MAAM,CAAC,MAAM,CAAA;CAAE,KAAG,OAAO,CAAC,OAAO,CAwCvF,CAAC"}
1
+ {"version":3,"file":"mint-new-pkp.d.ts","sourceRoot":"","sources":["../../../src/lib/mint-new-pkp.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAMhE,MAAM,MAAM,OAAO,GAAG;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,UAAU,GAAU,aAE9B;IACD,MAAM,EAAE,MAAM,CAAC,MAAM,GAAG,eAAe,CAAC;CACzC,KAAG,OAAO,CAAC,OAAO,CAgDlB,CAAC"}
@@ -6,14 +6,18 @@ const constants_1 = require("@lit-protocol/constants");
6
6
  const get_lit_contract_client_1 = require("./litContractsClient/get-lit-contract-client");
7
7
  /**
8
8
  * Helper function to mint a new PKP and return its information
9
- * @param wallet wallet that will be the PKP owner
9
+ * @param wallet wallet that will be the PKP owner and permitted auth method
10
10
  * @returns the newly minted PKP's tokenId and ethAddress
11
11
  */
12
- const mintNewPkp = async ({ wallet }) => {
12
+ const mintNewPkp = async ({ wallet, }) => {
13
13
  const litContractClient = await (0, get_lit_contract_client_1.getLitContractsClient)({ wallet });
14
+ await litContractClient.connect();
14
15
  const mintPkpTx = await litContractClient.pkpHelperContract.write.mintNextAndAddAuthMethods(constants_1.AUTH_METHOD_TYPE.EthWallet, [constants_1.AUTH_METHOD_TYPE.EthWallet], [wallet.address], ['0x'], [[constants_1.AUTH_METHOD_SCOPE.SignAnything]], true, // addPkpEthAddressAsPermittedAddress
15
16
  false, // sendPkpToItself
16
- { value: await litContractClient.pkpNftContract.read.mintCost() });
17
+ {
18
+ value: await litContractClient.pkpNftContract.read.mintCost(),
19
+ gasLimit: 5_000_000,
20
+ });
17
21
  const mintPkpReceipt = await mintPkpTx.wait();
18
22
  if (!mintPkpReceipt.events) {
19
23
  throw new Error('Mint Pkp Receipt does not have events');
@@ -24,10 +28,12 @@ const mintNewPkp = async ({ wallet }) => {
24
28
  }
25
29
  const tokenId = ethers_1.ethers.utils.keccak256('0x' + pkpMintedEvent.data.slice(130, 260));
26
30
  const ethAddress = await litContractClient.pkpNftContract.read.getEthAddress(tokenId);
27
- console.log(`ℹ️ Minted new PKP owned by ${wallet.address} with ethAddress: ${ethAddress}`);
31
+ const publicKey = await litContractClient.pkpNftContract.read.getPubkey(tokenId);
32
+ console.log(`ℹ️ Minted new PKP owned by ${await wallet.getAddress()} with ethAddress: ${ethAddress}`);
28
33
  return {
29
34
  tokenId: ethers_1.ethers.BigNumber.from(tokenId).toString(),
30
35
  ethAddress,
36
+ publicKey,
31
37
  };
32
38
  };
33
39
  exports.mintNewPkp = mintNewPkp;
@@ -1 +1 @@
1
- {"version":3,"file":"mint-new-pkp.js","sourceRoot":"","sources":["../../../src/lib/mint-new-pkp.ts"],"names":[],"mappings":";;;AAAA,mCAAgC;AAEhC,uDAA8E;AAE9E,0FAAqF;AAIrF;;;;GAIG;AACI,MAAM,UAAU,GAAG,KAAK,EAAE,EAAE,MAAM,EAA6B,EAAoB,EAAE;IAC1F,MAAM,iBAAiB,GAAG,MAAM,IAAA,+CAAqB,EAAC,EAAE,MAAM,EAAE,CAAC,CAAC;IAElE,MAAM,SAAS,GAAG,MAAM,iBAAiB,CAAC,iBAAiB,CAAC,KAAK,CAAC,yBAAyB,CACzF,4BAAgB,CAAC,SAAS,EAC1B,CAAC,4BAAgB,CAAC,SAAS,CAAC,EAC5B,CAAC,MAAM,CAAC,OAAO,CAAC,EAChB,CAAC,IAAI,CAAC,EACN,CAAC,CAAC,6BAAiB,CAAC,YAAY,CAAC,CAAC,EAClC,IAAI,EAAE,qCAAqC;IAC3C,KAAK,EAAE,kBAAkB;IACzB,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC,cAAc,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,CAClE,CAAC;IAEF,MAAM,cAAc,GAAG,MAAM,SAAS,CAAC,IAAI,EAAE,CAAC;IAE9C,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,CAAC;QAC3B,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;IAC3D,CAAC;IAED,MAAM,cAAc,GAAG,cAAc,CAAC,MAAM,CAAC,IAAI,CAC/C,CAAC,KAAK,EAAE,EAAE,CACR,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,oEAAoE,CAC3F,CAAC;IAEF,IAAI,CAAC,cAAc,EAAE,CAAC;QACpB,MAAM,IAAI,KAAK,CACb,uFAAuF,CACxF,CAAC;IACJ,CAAC;IAED,MAAM,OAAO,GAAG,eAAM,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,GAAG,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;IACnF,MAAM,UAAU,GAAG,MAAM,iBAAiB,CAAC,cAAc,CAAC,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;IAEtF,OAAO,CAAC,GAAG,CAAC,+BAA+B,MAAM,CAAC,OAAO,qBAAqB,UAAU,EAAE,CAAC,CAAC;IAE5F,OAAO;QACL,OAAO,EAAE,eAAM,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE;QAClD,UAAU;KACX,CAAC;AACJ,CAAC,CAAC;AAxCW,QAAA,UAAU,cAwCrB"}
1
+ {"version":3,"file":"mint-new-pkp.js","sourceRoot":"","sources":["../../../src/lib/mint-new-pkp.ts"],"names":[],"mappings":";;;AAAA,mCAAgC;AAIhC,uDAA8E;AAE9E,0FAAqF;AAQrF;;;;GAIG;AACI,MAAM,UAAU,GAAG,KAAK,EAAE,EAC/B,MAAM,GAGP,EAAoB,EAAE;IACrB,MAAM,iBAAiB,GAAG,MAAM,IAAA,+CAAqB,EAAC,EAAE,MAAM,EAAE,CAAC,CAAC;IAClE,MAAM,iBAAiB,CAAC,OAAO,EAAE,CAAC;IAElC,MAAM,SAAS,GAAG,MAAM,iBAAiB,CAAC,iBAAiB,CAAC,KAAK,CAAC,yBAAyB,CACzF,4BAAgB,CAAC,SAAS,EAC1B,CAAC,4BAAgB,CAAC,SAAS,CAAC,EAC5B,CAAC,MAAM,CAAC,OAAO,CAAC,EAChB,CAAC,IAAI,CAAC,EACN,CAAC,CAAC,6BAAiB,CAAC,YAAY,CAAC,CAAC,EAClC,IAAI,EAAE,qCAAqC;IAC3C,KAAK,EAAE,kBAAkB;IACzB;QACE,KAAK,EAAE,MAAM,iBAAiB,CAAC,cAAc,CAAC,IAAI,CAAC,QAAQ,EAAE;QAC7D,QAAQ,EAAE,SAAS;KACpB,CACF,CAAC;IAEF,MAAM,cAAc,GAAG,MAAM,SAAS,CAAC,IAAI,EAAE,CAAC;IAE9C,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,CAAC;QAC3B,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;IAC3D,CAAC;IAED,MAAM,cAAc,GAAG,cAAc,CAAC,MAAM,CAAC,IAAI,CAC/C,CAAC,KAAK,EAAE,EAAE,CACR,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,oEAAoE,CAC3F,CAAC;IAEF,IAAI,CAAC,cAAc,EAAE,CAAC;QACpB,MAAM,IAAI,KAAK,CACb,uFAAuF,CACxF,CAAC;IACJ,CAAC;IAED,MAAM,OAAO,GAAG,eAAM,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,GAAG,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;IACnF,MAAM,UAAU,GAAG,MAAM,iBAAiB,CAAC,cAAc,CAAC,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;IACtF,MAAM,SAAS,GAAG,MAAM,iBAAiB,CAAC,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;IAEjF,OAAO,CAAC,GAAG,CACT,+BAA+B,MAAM,MAAM,CAAC,UAAU,EAAE,qBAAqB,UAAU,EAAE,CAC1F,CAAC;IAEF,OAAO;QACL,OAAO,EAAE,eAAM,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE;QAClD,UAAU;QACV,SAAS;KACV,CAAC;AACJ,CAAC,CAAC;AApDW,QAAA,UAAU,cAoDrB"}
@@ -1,29 +1,35 @@
1
1
  import type { Wallet } from 'ethers';
2
+ import type { PKPEthersWallet } from '@lit-protocol/pkp-ethers';
2
3
  import type { PermissionData } from '@lit-protocol/vincent-contracts-sdk';
3
4
  import type { PkpInfo } from './mint-new-pkp';
4
5
  import type { SmartAccountInfo } from './smartAccount';
5
6
  export interface VincentDevEnvironment {
6
7
  agentPkpInfo: PkpInfo;
8
+ platformUserPkpInfo: PkpInfo;
7
9
  wallets: {
8
10
  appDelegatee: Wallet;
9
11
  funder: Wallet;
10
12
  appManager: Wallet;
11
- agentWalletOwner: Wallet;
13
+ platformUserWalletOwner: Wallet;
14
+ platformUserPkpWallet: PKPEthersWallet;
12
15
  };
13
16
  appId: number;
14
17
  appVersion: number;
15
18
  smartAccount?: SmartAccountInfo;
16
19
  }
17
20
  /**
18
- * Helper function to set up a Vincent development environment.
21
+ * Helper function to set up a Vincent development environment with the new PKP hierarchy.
19
22
  * This function handles all the necessary setup steps including:
20
23
  * - Checking and funding all required accounts (funder, app delegatee, app manager)
21
24
  * - Registering or updating your app with abilities and policies
22
- * - Creating or using an existing agent PKP
23
- * - Setting up permissions for the agent PKP
25
+ * - Creating or using an existing Platform User PKP (owned by EOA)
26
+ * - Creating or using an existing Agent PKP for the app (owned by Platform User PKP)
27
+ * - Setting up permissions for the Agent PKP
24
28
  * - Ensuring a valid capacity token exists
25
29
  * - Optionally creating a smart account owned by agentWalletOwner with the PKP as a permitted signer
26
30
  *
31
+ * PKP Hierarchy: EOA → Platform User PKP → Agent PKP (per app)
32
+ *
27
33
  * @param permissionData permission data containing abilities and their policies
28
34
  * @param smartAccountType type of smart account to create: 'zerodev', 'crossmint', 'safe', or false to disable
29
35
  * @returns the setup result including agent PKP info, wallets, app ID, app version, and optional smart account info
@@ -1 +1 @@
1
- {"version":3,"file":"setup-vincent-development-environment.d.ts","sourceRoot":"","sources":["../../../src/lib/setup-vincent-development-environment.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAMrC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qCAAqC,CAAC;AAE1E,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAWvD,MAAM,WAAW,qBAAqB;IACpC,YAAY,EAAE,OAAO,CAAC;IACtB,OAAO,EAAE;QACP,YAAY,EAAE,MAAM,CAAC;QACrB,MAAM,EAAE,MAAM,CAAC;QACf,UAAU,EAAE,MAAM,CAAC;QACnB,gBAAgB,EAAE,MAAM,CAAC;KAC1B,CAAC;IACF,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,gBAAgB,CAAC;CACjC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmDG;AACH,eAAO,MAAM,kCAAkC,GAAU,uCAGtD;IACD,cAAc,EAAE,cAAc,CAAC;IAC/B,gBAAgB,CAAC,EAAE,SAAS,GAAG,WAAW,GAAG,MAAM,CAAC;CACrD,KAAG,OAAO,CAAC,qBAAqB,CAuGhC,CAAC"}
1
+ {"version":3,"file":"setup-vincent-development-environment.d.ts","sourceRoot":"","sources":["../../../src/lib/setup-vincent-development-environment.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAMrC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qCAAqC,CAAC;AAE1E,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAWvD,MAAM,WAAW,qBAAqB;IACpC,YAAY,EAAE,OAAO,CAAC;IACtB,mBAAmB,EAAE,OAAO,CAAC;IAC7B,OAAO,EAAE;QACP,YAAY,EAAE,MAAM,CAAC;QACrB,MAAM,EAAE,MAAM,CAAC;QACf,UAAU,EAAE,MAAM,CAAC;QACnB,uBAAuB,EAAE,MAAM,CAAC;QAChC,qBAAqB,EAAE,eAAe,CAAC;KACxC,CAAC;IACF,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,gBAAgB,CAAC;CACjC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsDG;AACH,eAAO,MAAM,kCAAkC,GAAU,uCAGtD;IACD,cAAc,EAAE,cAAc,CAAC;IAC/B,gBAAgB,CAAC,EAAE,SAAS,GAAG,WAAW,GAAG,MAAM,CAAC;CACrD,KAAG,OAAO,CAAC,qBAAqB,CAgIhC,CAAC"}