@peeramid-labs/sdk 3.0.2 → 3.1.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 (103) hide show
  1. package/cli/cli/client.js +6 -5
  2. package/cli/cli/client.js.map +1 -1
  3. package/cli/cli/commands/distributions/index.js +3 -1
  4. package/cli/cli/commands/distributions/index.js.map +1 -1
  5. package/cli/cli/commands/distributions/state.js +38 -0
  6. package/cli/cli/commands/distributions/state.js.map +1 -0
  7. package/cli/cli/commands/eds/index.js +59 -0
  8. package/cli/cli/commands/eds/index.js.map +1 -0
  9. package/cli/eds/Distributor.js +11 -1
  10. package/cli/eds/Distributor.js.map +1 -1
  11. package/cli/multipass/MultipassBase.js +14 -7
  12. package/cli/multipass/MultipassBase.js.map +1 -1
  13. package/cli/rankify/MAODistributor.js +117 -73
  14. package/cli/rankify/MAODistributor.js.map +1 -1
  15. package/cli/rankify/RankToken.js +24 -13
  16. package/cli/rankify/RankToken.js.map +1 -1
  17. package/cli/utils/ApiError.js +33 -0
  18. package/cli/utils/ApiError.js.map +1 -1
  19. package/cli/utils/artifacts.js +31 -2
  20. package/cli/utils/artifacts.js.map +1 -1
  21. package/docs/classes/GameMaster.md +31 -5
  22. package/docs/classes/InstanceBase.md +24 -5
  23. package/docs/classes/InstancePlayer.md +47 -19
  24. package/docs/classes/MAODistributorClient.md +44 -11
  25. package/docs/classes/Multipass.md +11 -0
  26. package/docs/classes/MultipassBase.md +7 -0
  27. package/docs/docs/classes/GameMaster.md +31 -5
  28. package/docs/docs/classes/InstanceBase.md +24 -5
  29. package/docs/docs/classes/InstancePlayer.md +47 -19
  30. package/docs/docs/classes/MAODistributorClient.md +44 -11
  31. package/docs/docs/classes/Multipass.md +11 -0
  32. package/docs/docs/classes/MultipassBase.md +7 -0
  33. package/docs/docs/index.md +42 -1
  34. package/docs/index.md +42 -1
  35. package/lib.commonjs/eds/Distributor.d.ts +4 -1
  36. package/lib.commonjs/eds/Distributor.d.ts.map +1 -1
  37. package/lib.commonjs/eds/Distributor.js +12 -1
  38. package/lib.commonjs/eds/Distributor.js.map +1 -1
  39. package/lib.commonjs/multipass/MultipassBase.d.ts +1 -0
  40. package/lib.commonjs/multipass/MultipassBase.d.ts.map +1 -1
  41. package/lib.commonjs/multipass/MultipassBase.js +15 -7
  42. package/lib.commonjs/multipass/MultipassBase.js.map +1 -1
  43. package/lib.commonjs/rankify/GameMaster.d.ts.map +1 -1
  44. package/lib.commonjs/rankify/GameMaster.js +137 -111
  45. package/lib.commonjs/rankify/GameMaster.js.map +1 -1
  46. package/lib.commonjs/rankify/InstanceBase.d.ts +10 -7
  47. package/lib.commonjs/rankify/InstanceBase.d.ts.map +1 -1
  48. package/lib.commonjs/rankify/InstanceBase.js +222 -169
  49. package/lib.commonjs/rankify/InstanceBase.js.map +1 -1
  50. package/lib.commonjs/rankify/MAODistributor.d.ts +22 -3
  51. package/lib.commonjs/rankify/MAODistributor.d.ts.map +1 -1
  52. package/lib.commonjs/rankify/MAODistributor.js +117 -73
  53. package/lib.commonjs/rankify/MAODistributor.js.map +1 -1
  54. package/lib.commonjs/rankify/Player.d.ts +13 -9
  55. package/lib.commonjs/rankify/Player.d.ts.map +1 -1
  56. package/lib.commonjs/rankify/Player.js +173 -125
  57. package/lib.commonjs/rankify/Player.js.map +1 -1
  58. package/lib.commonjs/rankify/RankToken.d.ts.map +1 -1
  59. package/lib.commonjs/rankify/RankToken.js +24 -13
  60. package/lib.commonjs/rankify/RankToken.js.map +1 -1
  61. package/lib.commonjs/utils/ApiError.d.ts +1 -0
  62. package/lib.commonjs/utils/ApiError.d.ts.map +1 -1
  63. package/lib.commonjs/utils/ApiError.js +33 -0
  64. package/lib.commonjs/utils/ApiError.js.map +1 -1
  65. package/lib.commonjs/utils/artifacts.d.ts +9 -0
  66. package/lib.commonjs/utils/artifacts.d.ts.map +1 -1
  67. package/lib.commonjs/utils/artifacts.js +31 -2
  68. package/lib.commonjs/utils/artifacts.js.map +1 -1
  69. package/lib.esm/eds/Distributor.d.ts +4 -1
  70. package/lib.esm/eds/Distributor.d.ts.map +1 -1
  71. package/lib.esm/eds/Distributor.js +12 -1
  72. package/lib.esm/eds/Distributor.js.map +1 -1
  73. package/lib.esm/multipass/MultipassBase.d.ts +1 -0
  74. package/lib.esm/multipass/MultipassBase.d.ts.map +1 -1
  75. package/lib.esm/multipass/MultipassBase.js +15 -7
  76. package/lib.esm/multipass/MultipassBase.js.map +1 -1
  77. package/lib.esm/rankify/GameMaster.d.ts.map +1 -1
  78. package/lib.esm/rankify/GameMaster.js +137 -111
  79. package/lib.esm/rankify/GameMaster.js.map +1 -1
  80. package/lib.esm/rankify/InstanceBase.d.ts +10 -7
  81. package/lib.esm/rankify/InstanceBase.d.ts.map +1 -1
  82. package/lib.esm/rankify/InstanceBase.js +223 -170
  83. package/lib.esm/rankify/InstanceBase.js.map +1 -1
  84. package/lib.esm/rankify/MAODistributor.d.ts +22 -3
  85. package/lib.esm/rankify/MAODistributor.d.ts.map +1 -1
  86. package/lib.esm/rankify/MAODistributor.js +119 -75
  87. package/lib.esm/rankify/MAODistributor.js.map +1 -1
  88. package/lib.esm/rankify/Player.d.ts +13 -9
  89. package/lib.esm/rankify/Player.d.ts.map +1 -1
  90. package/lib.esm/rankify/Player.js +173 -125
  91. package/lib.esm/rankify/Player.js.map +1 -1
  92. package/lib.esm/rankify/RankToken.d.ts.map +1 -1
  93. package/lib.esm/rankify/RankToken.js +24 -13
  94. package/lib.esm/rankify/RankToken.js.map +1 -1
  95. package/lib.esm/utils/ApiError.d.ts +1 -0
  96. package/lib.esm/utils/ApiError.d.ts.map +1 -1
  97. package/lib.esm/utils/ApiError.js +32 -0
  98. package/lib.esm/utils/ApiError.js.map +1 -1
  99. package/lib.esm/utils/artifacts.d.ts +9 -0
  100. package/lib.esm/utils/artifacts.d.ts.map +1 -1
  101. package/lib.esm/utils/artifacts.js +29 -1
  102. package/lib.esm/utils/artifacts.js.map +1 -1
  103. package/package.json +3 -3
package/cli/cli/client.js CHANGED
@@ -24,11 +24,11 @@ const createWallet = async (rpcUrl, key) => {
24
24
  if (!signerKey) {
25
25
  throw new Error("Private key is required. Either pass it as a parameter or set PRIVATE_KEY environment variable");
26
26
  }
27
- const walletClient = (0, viem_1.createWalletClient)({
27
+ // Get chain ID using public client
28
+ const publicClient = (0, viem_1.createPublicClient)({
28
29
  transport: (0, viem_1.http)(endpoint),
29
- key: signerKey,
30
30
  });
31
- const chainId = await walletClient.getChainId();
31
+ const chainId = await publicClient.getChainId();
32
32
  const chain = {
33
33
  id: chainId,
34
34
  name: chainMapping_1.chainToPath[chainId.toString()],
@@ -46,11 +46,12 @@ const createWallet = async (rpcUrl, key) => {
46
46
  },
47
47
  },
48
48
  };
49
+ const account = (0, accounts_1.privateKeyToAccount)(signerKey);
49
50
  return (0, viem_1.createWalletClient)({
50
51
  transport: (0, viem_1.http)(endpoint),
51
- key: signerKey,
52
- account: (0, accounts_1.privateKeyToAccount)(signerKey),
52
+ account,
53
53
  chain,
54
+ cacheTime: 0,
54
55
  });
55
56
  };
56
57
  exports.createWallet = createWallet;
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../../../src/cli/client.ts"],"names":[],"mappings":";;;AAAA,+BAA8F;AAC9F,wDAAoD;AACpD,4CAAoD;AAE7C,MAAM,YAAY,GAAG,CAAC,MAAe,EAAE,EAAE;IAC9C,MAAM,QAAQ,GAAG,MAAM,IAAI,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC;IAC/C,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,IAAI,KAAK,CAAC,wFAAwF,CAAC,CAAC;IAC5G,CAAC;IAED,4CAA4C;IAC5C,OAAO,IAAA,yBAAkB,EAAC;QACxB,SAAS,EAAE,IAAA,WAAI,EAAC,QAAQ,CAAC;KAC1B,CAAC,CAAC;AACL,CAAC,CAAC;AAVW,QAAA,YAAY,gBAUvB;AAEK,MAAM,YAAY,GAAG,KAAK,EAAE,MAAe,EAAE,GAAY,EAAyB,EAAE;IACzF,MAAM,QAAQ,GAAG,MAAM,IAAI,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC;IAC/C,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,IAAI,KAAK,CAAC,wFAAwF,CAAC,CAAC;IAC5G,CAAC;IACD,MAAM,SAAS,GAAG,GAAG,IAAI,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC;IACjD,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,MAAM,IAAI,KAAK,CAAC,gGAAgG,CAAC,CAAC;IACpH,CAAC;IACD,MAAM,YAAY,GAAG,IAAA,yBAAkB,EAAC;QACtC,SAAS,EAAE,IAAA,WAAI,EAAC,QAAQ,CAAC;QACzB,GAAG,EAAE,SAAS;KACf,CAAC,CAAC;IACH,MAAM,OAAO,GAAG,MAAM,YAAY,CAAC,UAAU,EAAE,CAAC;IAChD,MAAM,KAAK,GAAU;QACnB,EAAE,EAAE,OAAO;QACX,IAAI,EAAE,0BAAW,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;QACrC,cAAc,EAAE;YACd,IAAI,EAAE,OAAO;YACb,MAAM,EAAE,KAAK;YACb,QAAQ,EAAE,EAAE;SACb;QACD,OAAO,EAAE;YACP,OAAO,EAAE;gBACP,IAAI,EAAE,CAAC,QAAQ,CAAC;aACjB;YACD,MAAM,EAAE;gBACN,IAAI,EAAE,CAAC,QAAQ,CAAC;aACjB;SACF;KACF,CAAC;IAEF,OAAO,IAAA,yBAAkB,EAAC;QACxB,SAAS,EAAE,IAAA,WAAI,EAAC,QAAQ,CAAC;QACzB,GAAG,EAAE,SAAS;QACd,OAAO,EAAE,IAAA,8BAAmB,EAAC,SAAgB,CAAC;QAC9C,KAAK;KACN,CAAC,CAAC;AACL,CAAC,CAAC;AAtCW,QAAA,YAAY,gBAsCvB"}
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../../../src/cli/client.ts"],"names":[],"mappings":";;;AAAA,+BAA8F;AAC9F,wDAAoD;AACpD,4CAAoD;AAE7C,MAAM,YAAY,GAAG,CAAC,MAAe,EAAE,EAAE;IAC9C,MAAM,QAAQ,GAAG,MAAM,IAAI,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC;IAC/C,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,IAAI,KAAK,CAAC,wFAAwF,CAAC,CAAC;IAC5G,CAAC;IAED,4CAA4C;IAC5C,OAAO,IAAA,yBAAkB,EAAC;QACxB,SAAS,EAAE,IAAA,WAAI,EAAC,QAAQ,CAAC;KAC1B,CAAC,CAAC;AACL,CAAC,CAAC;AAVW,QAAA,YAAY,gBAUvB;AAEK,MAAM,YAAY,GAAG,KAAK,EAAE,MAAe,EAAE,GAAY,EAAyB,EAAE;IACzF,MAAM,QAAQ,GAAG,MAAM,IAAI,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC;IAC/C,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,IAAI,KAAK,CAAC,wFAAwF,CAAC,CAAC;IAC5G,CAAC;IACD,MAAM,SAAS,GAAG,GAAG,IAAI,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC;IACjD,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,MAAM,IAAI,KAAK,CAAC,gGAAgG,CAAC,CAAC;IACpH,CAAC;IAED,mCAAmC;IACnC,MAAM,YAAY,GAAG,IAAA,yBAAkB,EAAC;QACtC,SAAS,EAAE,IAAA,WAAI,EAAC,QAAQ,CAAC;KAC1B,CAAC,CAAC;IACH,MAAM,OAAO,GAAG,MAAM,YAAY,CAAC,UAAU,EAAE,CAAC;IAChD,MAAM,KAAK,GAAU;QACnB,EAAE,EAAE,OAAO;QACX,IAAI,EAAE,0BAAW,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;QACrC,cAAc,EAAE;YACd,IAAI,EAAE,OAAO;YACb,MAAM,EAAE,KAAK;YACb,QAAQ,EAAE,EAAE;SACb;QACD,OAAO,EAAE;YACP,OAAO,EAAE;gBACP,IAAI,EAAE,CAAC,QAAQ,CAAC;aACjB;YACD,MAAM,EAAE;gBACN,IAAI,EAAE,CAAC,QAAQ,CAAC;aACjB;SACF;KACF,CAAC;IACF,MAAM,OAAO,GAAG,IAAA,8BAAmB,EAAC,SAAgB,CAAC,CAAC;IAEtD,OAAO,IAAA,yBAAkB,EAAC;QACxB,SAAS,EAAE,IAAA,WAAI,EAAC,QAAQ,CAAC;QACzB,OAAO;QACP,KAAK;QACL,SAAS,EAAE,CAAC;KACb,CAAC,CAAC;AACL,CAAC,CAAC;AAxCW,QAAA,YAAY,gBAwCvB"}
@@ -4,8 +4,10 @@ exports.distributionsCommand = void 0;
4
4
  const commander_1 = require("commander");
5
5
  const list_1 = require("./list");
6
6
  const add_1 = require("./add");
7
+ const state_1 = require("./state");
7
8
  exports.distributionsCommand = new commander_1.Command("distributions")
8
9
  .description("Manage distributions")
9
10
  .addCommand(list_1.listCommand)
10
- .addCommand(add_1.addCommand);
11
+ .addCommand(add_1.addCommand)
12
+ .addCommand(state_1.stateCommand);
11
13
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/cli/commands/distributions/index.ts"],"names":[],"mappings":";;;AAAA,yCAAoC;AACpC,iCAAqC;AACrC,+BAAmC;AAEtB,QAAA,oBAAoB,GAAG,IAAI,mBAAO,CAAC,eAAe,CAAC;KAC7D,WAAW,CAAC,sBAAsB,CAAC;KACnC,UAAU,CAAC,kBAAW,CAAC;KACvB,UAAU,CAAC,gBAAU,CAAC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/cli/commands/distributions/index.ts"],"names":[],"mappings":";;;AAAA,yCAAoC;AACpC,iCAAqC;AACrC,+BAAmC;AACnC,mCAAuC;AAC1B,QAAA,oBAAoB,GAAG,IAAI,mBAAO,CAAC,eAAe,CAAC;KAC7D,WAAW,CAAC,sBAAsB,CAAC;KACnC,UAAU,CAAC,kBAAW,CAAC;KACvB,UAAU,CAAC,gBAAU,CAAC;KACtB,UAAU,CAAC,oBAAY,CAAC,CAAC"}
@@ -0,0 +1,38 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.stateCommand = void 0;
7
+ const commander_1 = require("commander");
8
+ const chalk_1 = __importDefault(require("chalk"));
9
+ const ora_1 = __importDefault(require("ora"));
10
+ const MAODistributor_1 = require("../../../rankify/MAODistributor");
11
+ const client_1 = require("../../client");
12
+ const abis_1 = require("../../../abis");
13
+ exports.stateCommand = new commander_1.Command("state")
14
+ .description("Get the state of a distribution")
15
+ .option("-r, --rpc <url>", "RPC endpoint URL. If not provided, RPC_URL environment variable will be used")
16
+ .action(async (options) => {
17
+ const spinner = (0, ora_1.default)("Initializing clients...").start();
18
+ const publicClient = (0, client_1.createPublic)(options.rpc);
19
+ const walletClient = await (0, client_1.createWallet)(options.rpc, options.key);
20
+ const chainId = Number(await publicClient.getChainId());
21
+ const maoDistributor = new MAODistributor_1.MAODistributorClient(chainId, {
22
+ publicClient,
23
+ walletClient,
24
+ });
25
+ const owner = await publicClient.readContract({
26
+ address: maoDistributor.address,
27
+ abi: abis_1.DAODistributorAbi,
28
+ functionName: "owner",
29
+ });
30
+ spinner.stop();
31
+ console.log(chalk_1.default.green(`Owner: ${owner}`));
32
+ const you = walletClient.account?.address;
33
+ const isOwner = owner === you;
34
+ if (isOwner) {
35
+ console.log(chalk_1.default.green("You are the owner!"));
36
+ }
37
+ });
38
+ //# sourceMappingURL=state.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"state.js","sourceRoot":"","sources":["../../../../../src/cli/commands/distributions/state.ts"],"names":[],"mappings":";;;;;;AAAA,yCAAoC;AACpC,kDAA0B;AAC1B,8CAAsB;AACtB,oEAAuE;AACvE,yCAA0D;AAC1D,wCAAkD;AAErC,QAAA,YAAY,GAAG,IAAI,mBAAO,CAAC,OAAO,CAAC;KAC7C,WAAW,CAAC,iCAAiC,CAAC;KAC9C,MAAM,CAAC,iBAAiB,EAAE,8EAA8E,CAAC;KACzG,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;IACxB,MAAM,OAAO,GAAG,IAAA,aAAG,EAAC,yBAAyB,CAAC,CAAC,KAAK,EAAE,CAAC;IAEvD,MAAM,YAAY,GAAG,IAAA,qBAAY,EAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAC/C,MAAM,YAAY,GAAG,MAAM,IAAA,qBAAY,EAAC,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC;IAClE,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,YAAY,CAAC,UAAU,EAAE,CAAC,CAAC;IAExD,MAAM,cAAc,GAAG,IAAI,qCAAoB,CAAC,OAAO,EAAE;QACvD,YAAY;QACZ,YAAY;KACb,CAAC,CAAC;IAEH,MAAM,KAAK,GAAG,MAAM,YAAY,CAAC,YAAY,CAAC;QAC5C,OAAO,EAAE,cAAc,CAAC,OAAO;QAC/B,GAAG,EAAE,wBAAiB;QACtB,YAAY,EAAE,OAAO;KACtB,CAAC,CAAC;IAEH,OAAO,CAAC,IAAI,EAAE,CAAC;IACf,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,UAAU,KAAK,EAAE,CAAC,CAAC,CAAC;IAC5C,MAAM,GAAG,GAAG,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC;IAE1C,MAAM,OAAO,GAAG,KAAK,KAAK,GAAG,CAAC;IAC9B,IAAI,OAAO,EAAE,CAAC;QACZ,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC,CAAC;IACjD,CAAC;AACH,CAAC,CAAC,CAAC"}
@@ -0,0 +1,59 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.edsCommand = void 0;
7
+ const commander_1 = require("commander");
8
+ const client_1 = require("../../client");
9
+ const chalk_1 = __importDefault(require("chalk"));
10
+ const inquirer_1 = __importDefault(require("inquirer"));
11
+ const viem_1 = require("viem");
12
+ const abis_1 = require("../../../abis");
13
+ exports.edsCommand = new commander_1.Command("eds")
14
+ .description("Manage EDS")
15
+ .addCommand(new commander_1.Command("exists").description("Check if code index exists"))
16
+ .option("-r, --rpc <url>", "RPC endpoint URL. If not provided, RPC_URL environment variable will be used")
17
+ .action(async (options) => {
18
+ const publicClient = (0, client_1.createPublic)(options.rpc);
19
+ const code = await publicClient.getCode({
20
+ address: "0xc0d31d398c5ee86c5f8a23fa253ee8a586da03ce",
21
+ });
22
+ console.log(code ? chalk_1.default.green("Code index exists") : chalk_1.default.red("Code index does not exist"));
23
+ })
24
+ .addCommand(new commander_1.Command("indexed")
25
+ .description("Checks if contract is in the index")
26
+ .option("-r, --rpc <url>", "RPC endpoint URL. If not provided, RPC_URL environment variable will be used")
27
+ .option("-a, --address <address>", "Address of the contract to check")
28
+ .action(async (options) => {
29
+ const publicClient = (0, client_1.createPublic)(options.rpc);
30
+ let address = options.address;
31
+ if (!address) {
32
+ const response = await inquirer_1.default.prompt([
33
+ {
34
+ type: "input",
35
+ name: "address",
36
+ message: "Enter address of the contract to check",
37
+ },
38
+ ]);
39
+ address = response.address;
40
+ }
41
+ const code = await publicClient.getCode({
42
+ address: (0, viem_1.getAddress)(address),
43
+ });
44
+ if (code) {
45
+ const hashCode = (0, viem_1.keccak256)((0, viem_1.encodePacked)(["bytes"], [code]));
46
+ const distrAddress = await publicClient.readContract({
47
+ abi: abis_1.CodeIndexAbi,
48
+ address: "0xc0d31d398c5ee86c5f8a23fa253ee8a586da03ce",
49
+ functionName: "get",
50
+ args: [hashCode],
51
+ });
52
+ const indexed = distrAddress !== "0x0000000000000000000000000000000000000000";
53
+ console.log(indexed ? chalk_1.default.green("Contract is in the index") : chalk_1.default.red("Contract is not in the index"));
54
+ }
55
+ else {
56
+ console.log(chalk_1.default.red("Contract is not in the index"));
57
+ }
58
+ }));
59
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/cli/commands/eds/index.ts"],"names":[],"mappings":";;;;;;AAAA,yCAAoC;AACpC,yCAA4C;AAC5C,kDAA0B;AAC1B,wDAAgC;AAChC,+BAA2D;AAC3D,wCAA6C;AAEhC,QAAA,UAAU,GAAG,IAAI,mBAAO,CAAC,KAAK,CAAC;KACzC,WAAW,CAAC,YAAY,CAAC;KACzB,UAAU,CAAC,IAAI,mBAAO,CAAC,QAAQ,CAAC,CAAC,WAAW,CAAC,4BAA4B,CAAC,CAAC;KAC3E,MAAM,CAAC,iBAAiB,EAAE,8EAA8E,CAAC;KACzG,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;IACxB,MAAM,YAAY,GAAG,IAAA,qBAAY,EAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAC/C,MAAM,IAAI,GAAG,MAAM,YAAY,CAAC,OAAO,CAAC;QACtC,OAAO,EAAE,4CAA4C;KACtD,CAAC,CAAC;IACH,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,eAAK,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,eAAK,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAC,CAAC;AAChG,CAAC,CAAC;KACD,UAAU,CACT,IAAI,mBAAO,CAAC,SAAS,CAAC;KACnB,WAAW,CAAC,oCAAoC,CAAC;KACjD,MAAM,CAAC,iBAAiB,EAAE,8EAA8E,CAAC;KACzG,MAAM,CAAC,yBAAyB,EAAE,kCAAkC,CAAC;KACrE,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;IACxB,MAAM,YAAY,GAAG,IAAA,qBAAY,EAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAE/C,IAAI,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IAC9B,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,MAAM,QAAQ,GAAG,MAAM,kBAAQ,CAAC,MAAM,CAAC;YACrC;gBACE,IAAI,EAAE,OAAO;gBACb,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,wCAAwC;aAClD;SACF,CAAC,CAAC;QACH,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC;IAC7B,CAAC;IACD,MAAM,IAAI,GAAG,MAAM,YAAY,CAAC,OAAO,CAAC;QACtC,OAAO,EAAE,IAAA,iBAAU,EAAC,OAAO,CAAC;KAC7B,CAAC,CAAC;IACH,IAAI,IAAI,EAAE,CAAC;QACT,MAAM,QAAQ,GAAG,IAAA,gBAAS,EAAC,IAAA,mBAAY,EAAC,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC5D,MAAM,YAAY,GAAG,MAAM,YAAY,CAAC,YAAY,CAAC;YACnD,GAAG,EAAE,mBAAY;YACjB,OAAO,EAAE,4CAA4C;YACrD,YAAY,EAAE,KAAK;YACnB,IAAI,EAAE,CAAC,QAAQ,CAAC;SACjB,CAAC,CAAC;QACH,MAAM,OAAO,GAAG,YAAY,KAAK,4CAA4C,CAAC;QAC9E,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,eAAK,CAAC,KAAK,CAAC,0BAA0B,CAAC,CAAC,CAAC,CAAC,eAAK,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAC,CAAC;IAC7G,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAC,CAAC;IACzD,CAAC;AACH,CAAC,CAAC,CACL,CAAC"}
@@ -6,10 +6,12 @@ Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.DistributorClient = void 0;
7
7
  const viem_1 = require("viem");
8
8
  const Distributor_1 = __importDefault(require("../abis/Distributor"));
9
+ const utils_1 = require("../utils");
9
10
  class DistributorClient {
10
- constructor({ address, publicClient }) {
11
+ constructor({ address, publicClient, creationBlock, }) {
11
12
  this.address = (0, viem_1.getAddress)(address, publicClient?.chain?.id);
12
13
  this.publicClient = publicClient;
14
+ this.createdAtBlock = creationBlock;
13
15
  }
14
16
  async getDistributions() {
15
17
  const contract = (0, viem_1.getContract)({
@@ -19,12 +21,20 @@ class DistributorClient {
19
21
  });
20
22
  return contract.read.getDistributions();
21
23
  }
24
+ async getCreationBlock() {
25
+ if (!this.createdAtBlock) {
26
+ this.createdAtBlock = await (0, utils_1.findContractDeploymentBlock)(this.publicClient, this.address);
27
+ }
28
+ return this.createdAtBlock;
29
+ }
22
30
  async getInstances(distributorsId, fromBlock = 1n) {
23
31
  const contract = (0, viem_1.getContract)({
24
32
  address: this.address,
25
33
  abi: Distributor_1.default,
26
34
  client: this.publicClient,
27
35
  });
36
+ if (!this.publicClient.chain?.id)
37
+ throw new Error("Chain ID is not set");
28
38
  const events = await contract.getEvents.Instantiated({
29
39
  distributionId: distributorsId,
30
40
  }, { toBlock: "latest", fromBlock });
@@ -1 +1 @@
1
- {"version":3,"file":"Distributor.js","sourceRoot":"","sources":["../../../src/eds/Distributor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Distributor.js","sourceRoot":"","sources":["../../../src/eds/Distributor.ts"],"names":[],"mappings":"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"}
@@ -117,6 +117,8 @@ class MultipassBase {
117
117
  };
118
118
  this.chainId = chainId;
119
119
  this.publicClient = publicClient;
120
+ const { receipt } = (0, utils_1.getArtifact)(chainId, "Multipass");
121
+ this.creationBlock = BigInt(receipt.blockNumber);
120
122
  }
121
123
  /**
122
124
  * Generates a URL for a dapp
@@ -191,7 +193,7 @@ class MultipassBase {
191
193
  const initializedFilter = await this.publicClient.getContractEvents({
192
194
  address: this.getContractAddress(),
193
195
  abi: abis_1.MultipassAbi,
194
- fromBlock: 0n,
196
+ fromBlock: this.creationBlock,
195
197
  eventName: "InitializedDomain",
196
198
  });
197
199
  const activatedFilter = await this.publicClient.getContractEvents({
@@ -245,24 +247,29 @@ class MultipassBase {
245
247
  * @returns Array of records with their states
246
248
  */
247
249
  async listRecords(onlyActive) {
248
- const registeredFilter = await this.publicClient.getContractEvents({
250
+ const registeredFilterP = this.publicClient.getContractEvents({
249
251
  address: this.getContractAddress(),
250
252
  abi: abis_1.MultipassAbi,
251
- fromBlock: 0n,
253
+ fromBlock: this.creationBlock,
252
254
  eventName: "Registered",
253
255
  });
254
- const renewedFilter = await this.publicClient.getContractEvents({
256
+ const renewedFilterP = this.publicClient.getContractEvents({
255
257
  address: this.getContractAddress(),
256
258
  abi: abis_1.MultipassAbi,
257
- fromBlock: 0n,
259
+ fromBlock: this.creationBlock,
258
260
  eventName: "Renewed",
259
261
  });
260
- const deletedFilter = await this.publicClient.getContractEvents({
262
+ const deletedFilterP = this.publicClient.getContractEvents({
261
263
  address: this.getContractAddress(),
262
264
  abi: abis_1.MultipassAbi,
263
- fromBlock: 0n,
265
+ fromBlock: this.creationBlock,
264
266
  eventName: "nameDeleted",
265
267
  });
268
+ const [registeredFilter, renewedFilter, deletedFilter] = await Promise.all([
269
+ registeredFilterP,
270
+ renewedFilterP,
271
+ deletedFilterP,
272
+ ]);
266
273
  const records = new Map();
267
274
  // Process registered records
268
275
  for (const event of registeredFilter) {
@@ -1 +1 @@
1
- {"version":3,"file":"MultipassBase.js","sourceRoot":"","sources":["../../../src/multipass/MultipassBase.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MultipassBase.js","sourceRoot":"","sources":["../../../src/multipass/MultipassBase.ts"],"names":[],"mappings":"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"}
@@ -29,8 +29,12 @@ class MAODistributorClient extends Distributor_1.DistributorClient {
29
29
  * @param client - Object containing public and wallet clients
30
30
  */
31
31
  constructor(chainId, client) {
32
- const { address } = (0, utils_1.getArtifact)(chainId, "DAODistributor");
33
- super({ address: (0, viem_1.getAddress)(address), publicClient: client.publicClient });
32
+ const { address, receipt } = (0, utils_1.getArtifact)(chainId, "DAODistributor");
33
+ super({
34
+ address: (0, viem_1.getAddress)(address),
35
+ publicClient: client.publicClient,
36
+ creationBlock: BigInt(receipt.blockNumber),
37
+ });
34
38
  this.walletClient = client.walletClient;
35
39
  }
36
40
  /**
@@ -69,10 +73,11 @@ class MAODistributorClient extends Distributor_1.DistributorClient {
69
73
  }
70
74
  /**
71
75
  * Get MAOInstances instances by distribution name
72
- * @param namedDistribution Distribution name (defaults to "MAO Distribution")
76
+ * @param params.namedDistribution Distribution name (defaults to "MAO Distribution")
77
+ * @param params.fromBlock Block to start searching from (defaults to contract creation block)
73
78
  * @returns Array of MAOInstances contract instances
74
79
  */
75
- async getMAOInstances(namedDistribution = MAODistributorClient.DEFAULT_NAME, fromBlock = 1n) {
80
+ async getMAOInstances({ namedDistribution = MAODistributorClient.DEFAULT_NAME, fromBlock, } = {}) {
76
81
  const logs = await this.publicClient.getContractEvents({
77
82
  address: this.address,
78
83
  abi: DAODistributor_1.default,
@@ -80,23 +85,34 @@ class MAODistributorClient extends Distributor_1.DistributorClient {
80
85
  args: {
81
86
  distributionId: (0, viem_1.stringToHex)(namedDistribution, { size: 32 }),
82
87
  },
83
- fromBlock,
88
+ fromBlock: fromBlock ?? this.createdAtBlock ?? (await this.getCreationBlock()),
84
89
  toBlock: "latest",
85
90
  });
86
91
  const instances = logs
87
- .map((l) => (0, utils_1.parseInstantiated)(l.args.instances))
88
- .map((ip) => this.addressesToContracts(ip));
92
+ .map((l) => ({
93
+ instances: (0, utils_1.parseInstantiated)(l.args.instances),
94
+ maoInstanceId: l.args.newInstanceId,
95
+ }))
96
+ .map((ip) => ({
97
+ instances: this.addressesToContracts(ip.instances),
98
+ maoInstanceId: ip.maoInstanceId,
99
+ }));
89
100
  return instances;
90
101
  }
91
102
  parseToContracts(instances) {
92
103
  return this.addressesToContracts((0, utils_1.parseInstantiated)(instances));
93
104
  }
94
105
  async getDistributions() {
95
- return this.publicClient.readContract({
96
- abi: DAODistributor_1.default,
97
- functionName: "getDistributions",
98
- address: this.address,
99
- });
106
+ try {
107
+ return this.publicClient.readContract({
108
+ abi: DAODistributor_1.default,
109
+ functionName: "getDistributions",
110
+ address: this.address,
111
+ });
112
+ }
113
+ catch (e) {
114
+ throw await (0, utils_1.handleRPCError)(e);
115
+ }
100
116
  }
101
117
  async addNamedDistribution(chain, name, address, initializer = "0x0000000000000000000000000000000000000000") {
102
118
  if (!this.walletClient) {
@@ -105,46 +121,63 @@ class MAODistributorClient extends Distributor_1.DistributorClient {
105
121
  const code = await this.publicClient.getCode({ address });
106
122
  if (!code)
107
123
  throw new Error(`Code not found on ${address} address`);
108
- const hashCode = (0, viem_1.keccak256)(code);
124
+ const hashCode = (0, viem_1.keccak256)((0, viem_1.encodePacked)(["bytes"], [code]));
109
125
  const distrAddress = await this.publicClient.readContract({
110
126
  abi: abis_1.CodeIndexAbi,
111
127
  address: (0, utils_1.getArtifact)(chain.id, "CodeIndex").address,
112
128
  functionName: "get",
113
129
  args: [hashCode],
114
130
  });
115
- const [account] = await this.walletClient.getAddresses();
116
131
  if (distrAddress == "0x0000000000000000000000000000000000000000") {
132
+ try {
133
+ const { request } = await this.publicClient.simulateContract({
134
+ abi: abis_1.CodeIndexAbi,
135
+ address: (0, utils_1.getArtifact)(chain.id, "CodeIndex").address,
136
+ functionName: "register",
137
+ args: [address],
138
+ account: this.walletClient.account,
139
+ chain: this.walletClient.chain,
140
+ });
141
+ await this.walletClient
142
+ .writeContract(request)
143
+ .then((h) => this.publicClient.waitForTransactionReceipt({ hash: h }));
144
+ }
145
+ catch (e) {
146
+ throw await (0, utils_1.handleRPCError)(e);
147
+ }
148
+ }
149
+ try {
117
150
  const { request } = await this.publicClient.simulateContract({
118
- abi: abis_1.CodeIndexAbi,
119
- address: (0, utils_1.getArtifact)(chain.id, "CodeIndex").address,
120
- functionName: "register",
121
- args: [address],
122
- account,
151
+ abi: DAODistributor_1.default,
152
+ address: this.address,
153
+ functionName: "addNamedDistribution",
154
+ args: [name, hashCode, initializer],
155
+ account: this.walletClient.account,
156
+ chain: this.walletClient.chain,
123
157
  });
124
- await this.walletClient
158
+ const receipt = await this.walletClient
125
159
  .writeContract(request)
126
160
  .then((h) => this.publicClient.waitForTransactionReceipt({ hash: h }));
161
+ const distributionAddedEvent = (0, viem_1.parseEventLogs)({
162
+ abi: DAODistributor_1.default,
163
+ logs: receipt.logs,
164
+ eventName: "DistributionAdded",
165
+ });
166
+ return { receipt, distributionAddedEvent: distributionAddedEvent[0] };
167
+ }
168
+ catch (e) {
169
+ throw await (0, utils_1.handleRPCError)(e);
127
170
  }
128
- const { request } = await this.publicClient.simulateContract({
129
- abi: DAODistributor_1.default,
130
- address: this.address,
131
- functionName: "addNamedDistribution",
132
- args: [name, hashCode, initializer],
133
- account,
134
- chain,
135
- });
136
- const receipt = await this.walletClient
137
- .writeContract(request)
138
- .then((h) => this.publicClient.waitForTransactionReceipt({ hash: h }));
139
- const distributionAddedEvent = (0, viem_1.parseEventLogs)({
140
- abi: DAODistributor_1.default,
141
- logs: receipt.logs,
142
- eventName: "DistributionAdded",
143
- // strict: false,
144
- });
145
- return { receipt, distributionAddedEvent: distributionAddedEvent[0] };
146
171
  }
147
- async getMAOInstance(name = MAODistributorClient.DEFAULT_NAME, instanceId) {
172
+ /**
173
+ * Gets a specific MAO instance by name and instance ID
174
+ * @param params Parameters for getting the instance
175
+ * @param params.name The name of the distribution (defaults to DEFAULT_NAME)
176
+ * @param params.instanceId The ID of the instance to retrieve
177
+ * @param params.fromBlock Optional block to start searching from (defaults to contract creation block)
178
+ * @returns The MAO instance contracts
179
+ */
180
+ async getMAOInstance({ name = MAODistributorClient.DEFAULT_NAME, instanceId, fromBlock, }) {
148
181
  const logs = await this.publicClient.getContractEvents({
149
182
  address: this.address,
150
183
  abi: DAODistributor_1.default,
@@ -153,6 +186,8 @@ class MAODistributorClient extends Distributor_1.DistributorClient {
153
186
  distributionId: (0, viem_1.stringToHex)(name, { size: 32 }),
154
187
  newInstanceId: instanceId,
155
188
  },
189
+ fromBlock: fromBlock ?? this.createdAtBlock ?? (await this.getCreationBlock()),
190
+ toBlock: "latest",
156
191
  });
157
192
  if (logs.length === 0) {
158
193
  console.error("No instance found");
@@ -168,12 +203,17 @@ class MAODistributorClient extends Distributor_1.DistributorClient {
168
203
  return this.addressesToContracts((0, utils_1.parseInstantiated)(instances));
169
204
  }
170
205
  async getInstantiatePrice(distributorsId) {
171
- return this.publicClient.readContract({
172
- abi: DAODistributor_1.default,
173
- functionName: "instantiationCosts",
174
- address: this.address,
175
- args: [distributorsId],
176
- });
206
+ try {
207
+ return this.publicClient.readContract({
208
+ abi: DAODistributor_1.default,
209
+ functionName: "instantiationCosts",
210
+ address: this.address,
211
+ args: [distributorsId],
212
+ });
213
+ }
214
+ catch (e) {
215
+ throw await (0, utils_1.handleRPCError)(e);
216
+ }
177
217
  }
178
218
  async setInstantiationAllowance(amount) {
179
219
  if (!this.walletClient)
@@ -185,32 +225,43 @@ class MAODistributorClient extends Distributor_1.DistributorClient {
185
225
  functionName: "paymentToken",
186
226
  address: this.address,
187
227
  });
188
- await this.walletClient.writeContract({
189
- chain: this.walletClient.chain,
190
- account: this.walletClient.account,
191
- abi: viem_1.erc20Abi,
192
- functionName: "approve",
193
- address: paymentToken,
194
- args: [this.address, amount ? amount : viem_1.maxUint256],
195
- });
228
+ try {
229
+ const { request } = await this.publicClient.simulateContract({
230
+ abi: viem_1.erc20Abi,
231
+ functionName: "approve",
232
+ address: paymentToken,
233
+ args: [this.address, amount ? amount : viem_1.maxUint256],
234
+ account: this.walletClient.account,
235
+ chain: this.walletClient.chain,
236
+ });
237
+ await this.walletClient.writeContract(request);
238
+ }
239
+ catch (err) {
240
+ throw await (0, utils_1.handleRPCError)(err);
241
+ }
196
242
  }
197
243
  async needsAllowance(distributorsId) {
198
244
  if (!this.walletClient)
199
245
  throw new Error("walletClient is required, use constructor with walletClient");
200
246
  if (!this.walletClient.account?.address)
201
247
  throw new Error("No account address found");
202
- const paymentToken = await this.publicClient.readContract({
203
- abi: DAODistributor_1.default,
204
- functionName: "paymentToken",
205
- address: this.address,
206
- });
207
- const allowance = await this.publicClient.readContract({
208
- abi: viem_1.erc20Abi,
209
- functionName: "allowance",
210
- address: paymentToken,
211
- args: [this.walletClient.account?.address, this.address],
212
- });
213
- return allowance < (await this.getInstantiatePrice(distributorsId));
248
+ try {
249
+ const paymentToken = await this.publicClient.readContract({
250
+ abi: DAODistributor_1.default,
251
+ functionName: "paymentToken",
252
+ address: this.address,
253
+ });
254
+ const allowance = await this.publicClient.readContract({
255
+ abi: viem_1.erc20Abi,
256
+ functionName: "allowance",
257
+ address: paymentToken,
258
+ args: [this.walletClient.account?.address, this.address],
259
+ });
260
+ return allowance < (await this.getInstantiatePrice(distributorsId));
261
+ }
262
+ catch (e) {
263
+ throw await (0, utils_1.handleRPCError)(e);
264
+ }
214
265
  }
215
266
  /**
216
267
  * Create a new MAODistribution instance
@@ -261,14 +312,7 @@ class MAODistributorClient extends Distributor_1.DistributorClient {
261
312
  // eslint-disable-next-line
262
313
  }
263
314
  catch (e) {
264
- if (e?.cause?.signature) {
265
- const remoteAttempt = fetch(`https://www.4byte.directory/api/v1/signatures/?hex_signature=${e?.cause?.signature}`);
266
- const response = await remoteAttempt;
267
- const data = await response.json();
268
- throw new Error(`error: ${e?.message} | 4byte: ${JSON.stringify(data.results, null, 2)}`);
269
- }
270
- else
271
- throw e;
315
+ throw await (0, utils_1.handleRPCError)(e);
272
316
  }
273
317
  }
274
318
  }