@peeramid-labs/sdk 3.10.3 → 3.11.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 (152) hide show
  1. package/cli/cli/commands/blockchain/mine.js +1 -0
  2. package/cli/cli/commands/blockchain/mine.js.map +1 -1
  3. package/cli/cli/commands/distributions/add.js +7 -6
  4. package/cli/cli/commands/distributions/add.js.map +1 -1
  5. package/cli/cli/commands/distributions/list.js +7 -0
  6. package/cli/cli/commands/distributions/list.js.map +1 -1
  7. package/cli/cli/commands/distributions/remove.js +5 -0
  8. package/cli/cli/commands/distributions/remove.js.map +1 -1
  9. package/cli/cli/commands/distributions/state.js +5 -0
  10. package/cli/cli/commands/distributions/state.js.map +1 -1
  11. package/cli/cli/commands/fellowship/create.js +7 -1
  12. package/cli/cli/commands/fellowship/create.js.map +1 -1
  13. package/cli/cli/commands/fellowship/eip712.js +5 -0
  14. package/cli/cli/commands/fellowship/eip712.js.map +1 -1
  15. package/cli/cli/commands/fellowship/game/cancel.js +6 -0
  16. package/cli/cli/commands/fellowship/game/cancel.js.map +1 -1
  17. package/cli/cli/commands/fellowship/game/create.js +8 -1
  18. package/cli/cli/commands/fellowship/game/create.js.map +1 -1
  19. package/cli/cli/commands/fellowship/game/end-turn.js +12 -5
  20. package/cli/cli/commands/fellowship/game/end-turn.js.map +1 -1
  21. package/cli/cli/commands/fellowship/game/join.js +9 -1
  22. package/cli/cli/commands/fellowship/game/join.js.map +1 -1
  23. package/cli/cli/commands/fellowship/game/list.js +6 -0
  24. package/cli/cli/commands/fellowship/game/list.js.map +1 -1
  25. package/cli/cli/commands/fellowship/game/propose.js +10 -1
  26. package/cli/cli/commands/fellowship/game/propose.js.map +1 -1
  27. package/cli/cli/commands/fellowship/game/start.js +10 -1
  28. package/cli/cli/commands/fellowship/game/start.js.map +1 -1
  29. package/cli/cli/commands/fellowship/game/vote.js +10 -1
  30. package/cli/cli/commands/fellowship/game/vote.js.map +1 -1
  31. package/cli/cli/commands/fellowship/list.js +5 -0
  32. package/cli/cli/commands/fellowship/list.js.map +1 -1
  33. package/cli/cli/commands/fellowship/params.js +5 -0
  34. package/cli/cli/commands/fellowship/params.js.map +1 -1
  35. package/cli/cli/commands/instances/list.js +5 -0
  36. package/cli/cli/commands/instances/list.js.map +1 -1
  37. package/cli/cli/commands/rankify/games.js +5 -0
  38. package/cli/cli/commands/rankify/games.js.map +1 -1
  39. package/cli/cli/utils.js +3 -3
  40. package/cli/cli/utils.js.map +1 -1
  41. package/cli/eds/Distributor.js +18 -29
  42. package/cli/eds/Distributor.js.map +1 -1
  43. package/cli/rankify/GameMaster.js +42 -39
  44. package/cli/rankify/GameMaster.js.map +1 -1
  45. package/cli/rankify/InstanceBase.js +101 -130
  46. package/cli/rankify/InstanceBase.js.map +1 -1
  47. package/cli/rankify/MAODistributor.js +45 -54
  48. package/cli/rankify/MAODistributor.js.map +1 -1
  49. package/cli/rankify/Player.js +4 -6
  50. package/cli/rankify/Player.js.map +1 -1
  51. package/cli/utils/EnvioGraphQLClient.js +728 -0
  52. package/cli/utils/EnvioGraphQLClient.js.map +1 -0
  53. package/cli/utils/index.js.map +1 -1
  54. package/cli/utils/logger.js +12 -0
  55. package/cli/utils/logger.js.map +1 -0
  56. package/docs/classes/EnvioGraphQLClient.md +309 -0
  57. package/docs/classes/GameMaster.md +8 -0
  58. package/docs/classes/InstanceBase.md +16 -8
  59. package/docs/classes/InstancePlayer.md +22 -10
  60. package/docs/classes/MAODistributorClient.md +36 -27
  61. package/docs/docs/classes/EnvioGraphQLClient.md +309 -0
  62. package/docs/docs/classes/GameMaster.md +8 -0
  63. package/docs/docs/classes/InstanceBase.md +16 -8
  64. package/docs/docs/classes/InstancePlayer.md +22 -10
  65. package/docs/docs/classes/MAODistributorClient.md +36 -27
  66. package/docs/docs/index.md +5 -2
  67. package/docs/docs/interfaces/EnvioGraphQLClientConfig.md +41 -0
  68. package/docs/docs/interfaces/MAOInstanceArgs.md +29 -0
  69. package/docs/index.md +5 -2
  70. package/docs/interfaces/EnvioGraphQLClientConfig.md +41 -0
  71. package/docs/interfaces/MAOInstanceArgs.md +29 -0
  72. package/lib.commonjs/eds/Distributor.d.ts +5 -3
  73. package/lib.commonjs/eds/Distributor.d.ts.map +1 -1
  74. package/lib.commonjs/eds/Distributor.js +19 -29
  75. package/lib.commonjs/eds/Distributor.js.map +1 -1
  76. package/lib.commonjs/index.d.ts +1 -0
  77. package/lib.commonjs/index.d.ts.map +1 -1
  78. package/lib.commonjs/index.js +4 -1
  79. package/lib.commonjs/index.js.map +1 -1
  80. package/lib.commonjs/rankify/GameMaster.d.ts +6 -2
  81. package/lib.commonjs/rankify/GameMaster.d.ts.map +1 -1
  82. package/lib.commonjs/rankify/GameMaster.js +43 -39
  83. package/lib.commonjs/rankify/GameMaster.js.map +1 -1
  84. package/lib.commonjs/rankify/InstanceBase.d.ts +46 -9442
  85. package/lib.commonjs/rankify/InstanceBase.d.ts.map +1 -1
  86. package/lib.commonjs/rankify/InstanceBase.js +102 -130
  87. package/lib.commonjs/rankify/InstanceBase.js.map +1 -1
  88. package/lib.commonjs/rankify/MAODistributor.d.ts +24 -16
  89. package/lib.commonjs/rankify/MAODistributor.d.ts.map +1 -1
  90. package/lib.commonjs/rankify/MAODistributor.js +45 -54
  91. package/lib.commonjs/rankify/MAODistributor.js.map +1 -1
  92. package/lib.commonjs/rankify/Player.d.ts +4 -2
  93. package/lib.commonjs/rankify/Player.d.ts.map +1 -1
  94. package/lib.commonjs/rankify/Player.js +4 -6
  95. package/lib.commonjs/rankify/Player.js.map +1 -1
  96. package/lib.commonjs/utils/EnvioGraphQLClient.d.ts +273 -0
  97. package/lib.commonjs/utils/EnvioGraphQLClient.d.ts.map +1 -0
  98. package/lib.commonjs/utils/EnvioGraphQLClient.js +730 -0
  99. package/lib.commonjs/utils/EnvioGraphQLClient.js.map +1 -0
  100. package/lib.commonjs/utils/index.d.ts +1 -1
  101. package/lib.commonjs/utils/index.d.ts.map +1 -1
  102. package/lib.commonjs/utils/index.js.map +1 -1
  103. package/lib.commonjs/utils/logger.d.ts +12 -0
  104. package/lib.commonjs/utils/logger.d.ts.map +1 -0
  105. package/lib.commonjs/utils/logger.js +12 -0
  106. package/lib.commonjs/utils/logger.js.map +1 -0
  107. package/lib.commonjs/utils/mockUtils.d.ts +39 -0
  108. package/lib.commonjs/utils/mockUtils.d.ts.map +1 -0
  109. package/lib.commonjs/utils/mockUtils.js +103 -0
  110. package/lib.commonjs/utils/mockUtils.js.map +1 -0
  111. package/lib.esm/eds/Distributor.d.ts +5 -3
  112. package/lib.esm/eds/Distributor.d.ts.map +1 -1
  113. package/lib.esm/eds/Distributor.js +20 -30
  114. package/lib.esm/eds/Distributor.js.map +1 -1
  115. package/lib.esm/index.d.ts +1 -0
  116. package/lib.esm/index.d.ts.map +1 -1
  117. package/lib.esm/index.js +2 -0
  118. package/lib.esm/index.js.map +1 -1
  119. package/lib.esm/rankify/GameMaster.d.ts +6 -2
  120. package/lib.esm/rankify/GameMaster.d.ts.map +1 -1
  121. package/lib.esm/rankify/GameMaster.js +43 -39
  122. package/lib.esm/rankify/GameMaster.js.map +1 -1
  123. package/lib.esm/rankify/InstanceBase.d.ts +46 -9442
  124. package/lib.esm/rankify/InstanceBase.d.ts.map +1 -1
  125. package/lib.esm/rankify/InstanceBase.js +102 -130
  126. package/lib.esm/rankify/InstanceBase.js.map +1 -1
  127. package/lib.esm/rankify/MAODistributor.d.ts +24 -16
  128. package/lib.esm/rankify/MAODistributor.d.ts.map +1 -1
  129. package/lib.esm/rankify/MAODistributor.js +37 -46
  130. package/lib.esm/rankify/MAODistributor.js.map +1 -1
  131. package/lib.esm/rankify/Player.d.ts +4 -2
  132. package/lib.esm/rankify/Player.d.ts.map +1 -1
  133. package/lib.esm/rankify/Player.js +5 -7
  134. package/lib.esm/rankify/Player.js.map +1 -1
  135. package/lib.esm/utils/EnvioGraphQLClient.d.ts +273 -0
  136. package/lib.esm/utils/EnvioGraphQLClient.d.ts.map +1 -0
  137. package/lib.esm/utils/EnvioGraphQLClient.js +726 -0
  138. package/lib.esm/utils/EnvioGraphQLClient.js.map +1 -0
  139. package/lib.esm/utils/index.d.ts +1 -1
  140. package/lib.esm/utils/index.d.ts.map +1 -1
  141. package/lib.esm/utils/index.js.map +1 -1
  142. package/lib.esm/utils/logger.d.ts +12 -0
  143. package/lib.esm/utils/logger.d.ts.map +1 -0
  144. package/lib.esm/utils/logger.js +12 -0
  145. package/lib.esm/utils/logger.js.map +1 -0
  146. package/lib.esm/utils/mockUtils.d.ts +39 -0
  147. package/lib.esm/utils/mockUtils.d.ts.map +1 -0
  148. package/lib.esm/utils/mockUtils.js +96 -0
  149. package/lib.esm/utils/mockUtils.js.map +1 -0
  150. package/package.json +3 -1
  151. package/cli/cli/helpers.js +0 -64
  152. package/cli/cli/helpers.js.map +0 -1
@@ -11,6 +11,7 @@ const RankifyDiamondInstance_1 = __importDefault(require("../abis/RankifyDiamond
11
11
  const permutations_1 = require("../utils/permutations");
12
12
  const MAODistributor_1 = require("./MAODistributor");
13
13
  const RankToken_1 = __importDefault(require("./RankToken"));
14
+ const logger_1 = require("../utils/logger");
14
15
  /**
15
16
  * Base class for interacting with a Rankify game instance
16
17
  * Provides core functionality for managing game state and interactions
@@ -22,45 +23,29 @@ class InstanceBase {
22
23
  * @param {PublicClient} params.publicClient - Public client for blockchain interactions
23
24
  * @param {number} params.chainId - Chain ID of the network
24
25
  * @param {Address} params.instanceAddress - Address of the Rankify instance contract
26
+ * @param {EnvioGraphQLClient} [params.envioClient] - Optional Envio GraphQL client
25
27
  */
26
- constructor({ publicClient, chainId, instanceAddress, creationBlock = 0n, }) {
28
+ constructor({ publicClient, chainId, instanceAddress, creationBlock = 0n, envioClient, }) {
27
29
  /**
28
30
  * Retrieves the historic turn information for a specific game and turn ID.
29
31
  * @returns The historic turn event object.
30
32
  * @throws {ApiError} If the game or turn is not found.
31
33
  */
32
34
  this.getHistoricTurn = async (gameId, turnId) => {
33
- const logsWithProposals = await this.publicClient.getContractEvents({
34
- address: this.instanceAddress,
35
- abi: RankifyDiamondInstance_1.default,
36
- fromBlock: await this.getCreationBlock(),
37
- eventName: "TurnEnded",
38
- args: {
39
- gameId,
40
- turn: turnId,
41
- },
42
- });
43
- const logsWithVotesAndPermutation = await this.publicClient.getContractEvents({
44
- address: this.instanceAddress,
45
- abi: RankifyDiamondInstance_1.default,
46
- fromBlock: await this.getCreationBlock(),
47
- eventName: "TurnEnded",
48
- args: {
49
- gameId,
50
- turn: turnId + 1n,
51
- },
52
- });
53
- if (logsWithProposals.length !== 1 || logsWithVotesAndPermutation.length !== 1) {
54
- console.error("getHistoricTurn", gameId, turnId, "failed! length: ", logsWithProposals.length, logsWithVotesAndPermutation.length);
55
- throw new index_1.ApiError("Data not found", { status: 404 });
35
+ const [logsWithProposals, logsWithVotesAndPermutation] = await Promise.all([
36
+ this.envioClient.getTurnEndedEvents({ gameId, turn: turnId, contractAddress: this.instanceAddress }),
37
+ this.envioClient.getTurnEndedEvents({ gameId, turn: turnId + 1n, contractAddress: this.instanceAddress }),
38
+ ]);
39
+ if (logsWithProposals.length === 0 || logsWithVotesAndPermutation.length === 0) {
40
+ return [];
56
41
  }
57
42
  const gameState = await this.getGameState(gameId);
58
- const players = logsWithProposals[0].args?.players || [];
59
- const permutation = logsWithVotesAndPermutation[0].args?.proposerIndices || [];
60
- const proposalsPermuted = { ...logsWithProposals[0] }.args?.newProposals?.slice(0, logsWithProposals[0].args?.players?.length);
43
+ const players = logsWithProposals[0]?.players || [];
44
+ const permutation = logsWithVotesAndPermutation[0]?.proposerIndices || [];
45
+ const proposalsPermuted = { ...logsWithProposals[0] }?.newProposals?.slice(0, logsWithProposals[0]?.players?.length);
61
46
  const proposalsOrdered = (0, permutations_1.reversePermutation)({ array: proposalsPermuted || [], permutation });
62
- const votesPermuted = { ...logsWithVotesAndPermutation[0] }.args?.votes || [];
63
- const votesOrdered = votesPermuted.map(vote => (0, permutations_1.reversePermutation)({ array: vote, permutation }));
47
+ const votesPermuted = { ...logsWithVotesAndPermutation[0] }?.votes || [];
48
+ const votesOrdered = votesPermuted.map((vote) => (0, permutations_1.reversePermutation)({ array: vote, permutation }));
64
49
  const maxVotes = BigInt(Math.floor(Math.sqrt(Number(gameState.voteCredits))));
65
50
  const blockNumber = logsWithProposals[0].blockNumber;
66
51
  const blockTimestamp = await this.getBlockTimestamp(blockNumber);
@@ -68,16 +53,21 @@ class InstanceBase {
68
53
  const proposer = players[proposersIndex];
69
54
  if (proposal === "") {
70
55
  return {
71
- player: proposer, proposal: "", score: 0n, scoreList: []
56
+ player: proposer,
57
+ proposal: "",
58
+ score: 0n,
59
+ scoreList: [],
72
60
  };
73
61
  }
74
- const scoreList = votesOrdered.map((playersVote, votersIndex) => {
62
+ const scoreList = votesOrdered
63
+ .map((playersVote, votersIndex) => {
75
64
  const isIdleVoter = playersVote.reduce((acc, vote) => acc + vote, 0n) === 0n;
76
65
  if (votersIndex === proposersIndex) {
77
66
  return { score: 0n, player: proposer };
78
67
  }
79
68
  return { score: isIdleVoter ? maxVotes : playersVote[proposersIndex], player: players[votersIndex] };
80
- }).filter(score => score.score > 0n);
69
+ })
70
+ .filter((score) => score.score > 0n);
81
71
  return {
82
72
  player: proposer,
83
73
  proposal,
@@ -142,31 +132,32 @@ class InstanceBase {
142
132
  * @returns The voting information for the specified game and turn.
143
133
  */
144
134
  this.getVoting = async (gameId, turnId) => {
145
- if (!gameId)
146
- throw new Error("gameId not set");
147
- if (!turnId)
148
- throw new Error("turnId not set");
149
- const voteEvents = await this.publicClient.getContractEvents({
150
- address: this.instanceAddress,
151
- abi: RankifyDiamondInstance_1.default,
152
- fromBlock: await this.getCreationBlock(),
153
- eventName: "VoteSubmitted",
154
- args: {
155
- gameId,
156
- turn: turnId,
157
- },
135
+ const voteEvents = await this.envioClient.getVoteSubmittedEvents({
136
+ gameId,
137
+ turn: turnId,
138
+ contractAddress: this.instanceAddress,
158
139
  });
159
- const proposalEvents = await this.publicClient.getContractEvents({
160
- address: this.instanceAddress,
161
- abi: RankifyDiamondInstance_1.default,
162
- fromBlock: await this.getCreationBlock(),
163
- eventName: "ProposalSubmitted",
164
- args: {
165
- gameId,
166
- turn: turnId,
167
- },
140
+ const proposalEvents = await this.envioClient.getProposalSubmittedEvents({
141
+ gameId,
142
+ turn: turnId,
143
+ contractAddress: this.instanceAddress,
168
144
  });
169
- return { voteEvents, proposalEvents };
145
+ return {
146
+ voteEvents: voteEvents.map((event) => ({
147
+ player: event.player,
148
+ sealedBallotId: event.sealedBallotId,
149
+ gmSignature: event.gmSignature,
150
+ voterSignature: event.voterSignature,
151
+ ballotHash: event.ballotHash,
152
+ })),
153
+ proposalEvents: proposalEvents.map((event) => ({
154
+ proposer: event.proposer,
155
+ encryptedProposal: event.encryptedProposal,
156
+ commitment: event.commitment,
157
+ gmSignature: event.gmSignature,
158
+ proposerSignature: event.proposerSignature
159
+ })),
160
+ };
170
161
  };
171
162
  /**
172
163
  * Retrieves the ongoing voting for a specific game.
@@ -199,19 +190,17 @@ class InstanceBase {
199
190
  functionName: "getTurn",
200
191
  args: [gameId],
201
192
  });
202
- const lastTurnEndedEvent = await this.publicClient.getContractEvents({
203
- address: this.instanceAddress,
204
- abi: RankifyDiamondInstance_1.default,
205
- fromBlock: await this.getCreationBlock(),
206
- eventName: "TurnEnded",
207
- args: { turn: currentTurn - 1n, gameId },
193
+ const lastTurnEndedEvent = await this.envioClient.getTurnEndedEvents({
194
+ gameId,
195
+ turn: currentTurn - 1n,
196
+ contractAddress: this.instanceAddress,
208
197
  });
209
- lastTurnEndedEvent[0].args.newProposals = lastTurnEndedEvent[0]?.args?.newProposals?.slice(0, lastTurnEndedEvent[0]?.args?.players?.length);
198
+ lastTurnEndedEvent[0].newProposals = lastTurnEndedEvent[0]?.newProposals?.slice(0, lastTurnEndedEvent[0]?.players?.length);
210
199
  if (lastTurnEndedEvent.length !== 1) {
211
200
  console.error("getOngoingProposals", gameId, "failed:", lastTurnEndedEvent.length);
212
201
  throw new index_1.ApiError("Game not found", { status: 404 });
213
202
  }
214
- const args = lastTurnEndedEvent[0].args;
203
+ const args = lastTurnEndedEvent[0];
215
204
  return { currentTurn, proposals: args.newProposals };
216
205
  }
217
206
  catch (error) {
@@ -225,34 +214,29 @@ class InstanceBase {
225
214
  * @returns A Promise that resolves to the registration deadline timestamp.
226
215
  */
227
216
  this.getRegistrationDeadline = async (gameId, timeToJoin) => {
228
- const log = await this.publicClient.getContractEvents({
229
- address: this.instanceAddress,
230
- abi: RankifyDiamondInstance_1.default,
231
- fromBlock: await this.getCreationBlock(),
232
- eventName: "RegistrationOpen",
233
- args: {
234
- gameId: gameId,
235
- },
236
- });
237
- if (log.length !== 1) {
238
- console.error("getRegistrationDeadline", gameId, "failed:", log.length);
239
- throw new index_1.ApiError("Game not found", { status: 404 });
240
- }
241
- const block = await this.publicClient.getBlock({ blockNumber: log[0].blockNumber });
242
- if (timeToJoin) {
243
- return Number(block.timestamp) + timeToJoin;
244
- }
245
217
  try {
246
- const gameState = await this.publicClient.readContract({
247
- address: this.instanceAddress,
248
- abi: RankifyDiamondInstance_1.default,
249
- functionName: "getGameState",
250
- args: [gameId],
218
+ const registrationEvents = await this.envioClient.getRegistrationOpenEvents({
219
+ gameId,
220
+ contractAddress: this.instanceAddress,
251
221
  });
252
- return Number(block.timestamp) + Number(gameState.timeToJoin);
222
+ if (timeToJoin) {
223
+ return Number(registrationEvents[0].blockTimestamp) + timeToJoin;
224
+ }
225
+ try {
226
+ const gameState = await this.publicClient.readContract({
227
+ address: this.instanceAddress,
228
+ abi: RankifyDiamondInstance_1.default,
229
+ functionName: "getGameState",
230
+ args: [gameId],
231
+ });
232
+ return Number(registrationEvents[0].blockTimestamp) + Number(gameState.timeToJoin);
233
+ }
234
+ catch (e) {
235
+ throw await (0, index_1.handleRPCError)(e);
236
+ }
253
237
  }
254
- catch (e) {
255
- throw await (0, index_1.handleRPCError)(e);
238
+ catch (err) {
239
+ (0, logger_1.logger)(`Error fetching events from Envio: ${err}`);
256
240
  }
257
241
  };
258
242
  /**
@@ -295,14 +279,13 @@ class InstanceBase {
295
279
  });
296
280
  if (currentTurn === 0n)
297
281
  return 0;
298
- const eventName = currentTurn === 1n ? "GameStarted" : "TurnEnded";
299
- const args = currentTurn === 1n ? { gameId } : { gameId, turnId: currentTurn - 1n };
300
- const logs = await this.publicClient.getContractEvents({
301
- address: this.instanceAddress,
302
- abi: RankifyDiamondInstance_1.default,
303
- fromBlock: await this.getCreationBlock(),
304
- eventName: eventName,
305
- args: args,
282
+ const logs = currentTurn === 1n ? await this.envioClient.getGameStartedEvents({
283
+ gameId,
284
+ contractAddress: this.instanceAddress,
285
+ }) : await this.envioClient.getTurnEndedEvents({
286
+ turn: currentTurn - 1n,
287
+ gameId,
288
+ contractAddress: this.instanceAddress,
306
289
  });
307
290
  if (logs.length !== 1) {
308
291
  console.error("getTurnDeadline", gameId, "failed:", logs.length);
@@ -350,21 +333,10 @@ class InstanceBase {
350
333
  * @returns A Promise that resolves to the list of proposal scores.
351
334
  */
352
335
  this.getProposalScoresList = async (gameId) => {
353
- if (!gameId)
354
- throw new Error("gameId not set");
355
- try {
356
- const logs = await this.publicClient.getContractEvents({
357
- address: this.instanceAddress,
358
- abi: RankifyDiamondInstance_1.default,
359
- eventName: "ProposalScore",
360
- fromBlock: await this.getCreationBlock(),
361
- args: { gameId },
362
- });
363
- return logs;
364
- }
365
- catch (e) {
366
- throw await (0, index_1.handleRPCError)(e);
367
- }
336
+ return this.envioClient.getProposalScoreEvents({
337
+ gameId,
338
+ contractAddress: this.instanceAddress,
339
+ });
368
340
  };
369
341
  /**
370
342
  * Retrieve s the current turn of a game.
@@ -472,17 +444,14 @@ class InstanceBase {
472
444
  let scores = ongoingScores;
473
445
  let returnPlayers = players;
474
446
  if (state.hasEnded) {
475
- const GameOverEvents = await this.publicClient.getContractEvents({
476
- address: this.instanceAddress,
477
- abi: RankifyDiamondInstance_1.default,
478
- eventName: "GameOver",
479
- args: { gameId },
480
- fromBlock: await this.getCreationBlock(),
447
+ const GameOverEvents = await this.envioClient.getGameOverEvents({
448
+ gameId,
449
+ contractAddress: this.instanceAddress
481
450
  });
482
451
  const evt = GameOverEvents[0];
483
- if (evt.args?.scores && evt.args?.players) {
484
- returnPlayers = evt.args.players;
485
- scores = [returnPlayers, evt.args.scores];
452
+ if (evt?.scores && evt?.players) {
453
+ returnPlayers = evt.players;
454
+ scores = [returnPlayers, evt.scores];
486
455
  }
487
456
  }
488
457
  const gamePhase = state.hasEnded
@@ -608,22 +577,20 @@ class InstanceBase {
608
577
  return derivedPrivateKey;
609
578
  };
610
579
  this.getPlayerPubKey = async ({ instanceAddress, gameId, player, }) => {
611
- const playerJoinedEvt = await this.publicClient.getContractEvents({
612
- address: instanceAddress,
613
- abi: RankifyDiamondInstance_1.default,
614
- eventName: "PlayerJoined",
615
- args: { gameId, participant: player },
616
- fromBlock: await this.getCreationBlock(),
580
+ const playerJoinedEvents = await this.envioClient.getPlayerJoinedEvents({
581
+ gameId,
582
+ participant: player,
583
+ contractAddress: instanceAddress,
617
584
  });
618
- const latestEvent = playerJoinedEvt
585
+ const latestEvent = playerJoinedEvents
619
586
  .sort((a, b) => Number(a.blockNumber) - Number(b.blockNumber))
620
587
  .sort((a, b) => a.transactionIndex - b.transactionIndex)
621
588
  .sort((a, b) => a.logIndex - b.logIndex)[0];
622
- if (!latestEvent.args.voterPubKey)
589
+ if (!latestEvent.voterPubKey)
623
590
  throw new Error("No voterPubKey found in event data, that is unexpected");
624
591
  if (!player)
625
592
  throw new Error("No player found in event data, that is unexpected");
626
- return latestEvent.args.voterPubKey;
593
+ return latestEvent.voterPubKey;
627
594
  };
628
595
  this.getBlockTimestamp = async (blockNumber) => {
629
596
  const block = await this.publicClient.getBlock({ blockNumber });
@@ -633,6 +600,7 @@ class InstanceBase {
633
600
  if (!this.instanceContracts) {
634
601
  const distributor = new MAODistributor_1.MAODistributorClient(this.chainId, {
635
602
  publicClient: this.publicClient,
603
+ envioClient: this.envioClient,
636
604
  });
637
605
  const instanceId = await distributor.getInstanceFromAddress(this.instanceAddress);
638
606
  this.instanceContracts = await distributor.getMAOInstance({ instanceId: instanceId });
@@ -647,7 +615,9 @@ class InstanceBase {
647
615
  });
648
616
  return await rankTokenClient.getMetadata(ipfsGateway);
649
617
  };
650
- this.getGameMetadata = async (ipfsGateway, gameId) => {
618
+ this.getGameMetadata = async (ipfsGateway, gameId
619
+ //fellowshipMetadata?: FellowshipMetadata
620
+ ) => {
651
621
  try {
652
622
  const { metadata } = await this.getGameStateDetails(gameId);
653
623
  // Handle different URI formats
@@ -680,6 +650,7 @@ class InstanceBase {
680
650
  this.chainId = chainId;
681
651
  this.instanceAddress = instanceAddress;
682
652
  this.creationBlock = creationBlock;
653
+ this.envioClient = envioClient;
683
654
  }
684
655
  // Type guard for FellowshipMetadata
685
656
  isGameMetadata(data, fellowshipMetadata) {
@@ -1 +1 @@
1
- {"version":3,"file":"InstanceBase.js","sourceRoot":"","sources":["../../../src/rankify/InstanceBase.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"InstanceBase.js","sourceRoot":"","sources":["../../../src/rankify/InstanceBase.ts"],"names":[],"mappings":"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"}
@@ -18,7 +18,7 @@ const viem_1 = require("viem");
18
18
  const MAODistribution_1 = __importDefault(require("../abis/MAODistribution"));
19
19
  const DAODistributor_1 = __importDefault(require("../abis/DAODistributor"));
20
20
  const abis_1 = require("../abis");
21
- const log_1 = require("../utils/log");
21
+ const logger_1 = require("../utils/logger");
22
22
  /**
23
23
  * Client for managing MAO Distribution operations
24
24
  * Handles creation, management and interaction with MAO instances
@@ -30,13 +30,16 @@ class MAODistributorClient extends Distributor_1.DistributorClient {
30
30
  * @param client - Object containing public and wallet clients
31
31
  */
32
32
  constructor(chainId, client) {
33
- const { address, receipt } = (0, utils_1.getArtifact)(chainId, "DAODistributor");
33
+ const { address } = (0, utils_1.getArtifact)(chainId, "DAODistributor");
34
34
  super({
35
35
  address: client.address ?? (0, viem_1.getAddress)(address),
36
36
  publicClient: client.publicClient,
37
- creationBlock: BigInt(receipt.blockNumber),
37
+ envioClient: client.envioClient,
38
38
  });
39
39
  this.walletClient = client.walletClient;
40
+ if (!this.envioClient) {
41
+ throw new Error("EnvioGraphQLClient is required for MAODistributorClient");
42
+ }
40
43
  }
41
44
  /**
42
45
  * Converts MAOInstances addresses to their respective contract instances
@@ -72,34 +75,6 @@ class MAODistributorClient extends Distributor_1.DistributorClient {
72
75
  });
73
76
  return { rankToken, instance, govtToken, govTokenAccessManager, ACIDAccessManager };
74
77
  }
75
- /**
76
- * Get MAOInstances instances by distribution name
77
- * @param params.namedDistribution Distribution name (defaults to "MAO Distribution")
78
- * @param params.fromBlock Block to start searching from (defaults to contract creation block)
79
- * @returns Array of MAOInstances contract instances
80
- */
81
- async getMAOInstances({ namedDistribution = MAODistributorClient.DEFAULT_NAME, fromBlock, } = {}) {
82
- const logs = await this.publicClient.getContractEvents({
83
- address: this.address,
84
- abi: DAODistributor_1.default,
85
- eventName: "Instantiated",
86
- args: {
87
- distributionId: (0, viem_1.stringToHex)(namedDistribution, { size: 32 }),
88
- },
89
- fromBlock: fromBlock ?? this.createdAtBlock ?? (await this.getCreationBlock()),
90
- toBlock: "latest",
91
- });
92
- const instances = logs
93
- .map((l) => ({
94
- instances: (0, utils_1.parseInstantiated)(l.args.instances),
95
- maoInstanceId: l.args.newInstanceId,
96
- }))
97
- .map((ip) => ({
98
- instances: this.addressesToContracts(ip.instances),
99
- maoInstanceId: ip.maoInstanceId,
100
- }));
101
- return instances;
102
- }
103
78
  parseToContracts(instances) {
104
79
  return this.addressesToContracts((0, utils_1.parseInstantiated)(instances));
105
80
  }
@@ -129,7 +104,7 @@ class MAODistributorClient extends Distributor_1.DistributorClient {
129
104
  functionName: "get",
130
105
  args: [hashCode],
131
106
  });
132
- (0, log_1.logger)(`Distribution address ${distrAddress}`);
107
+ (0, logger_1.logger)(`Distribution address ${distrAddress}`);
133
108
  if (distrAddress == "0x0000000000000000000000000000000000000000") {
134
109
  try {
135
110
  const { request } = await this.publicClient.simulateContract({
@@ -165,8 +140,8 @@ class MAODistributorClient extends Distributor_1.DistributorClient {
165
140
  logs: receipt.logs,
166
141
  eventName: "DistributionAdded",
167
142
  });
168
- (0, log_1.logger)(`Distribution added event`);
169
- (0, log_1.logger)(distributionAddedEvent);
143
+ (0, logger_1.logger)(`Distribution added event`);
144
+ (0, logger_1.logger)(distributionAddedEvent);
170
145
  return { receipt, distributionAddedEvent: distributionAddedEvent[0] };
171
146
  }
172
147
  catch (e) {
@@ -193,8 +168,8 @@ class MAODistributorClient extends Distributor_1.DistributorClient {
193
168
  logs: receipt.logs,
194
169
  eventName: "DistributionRemoved",
195
170
  });
196
- (0, log_1.logger)(`Distribution removed event`);
197
- (0, log_1.logger)(distributionRemovedEvent);
171
+ (0, logger_1.logger)(`Distribution removed event`);
172
+ (0, logger_1.logger)(distributionRemovedEvent);
198
173
  return { receipt, distributionRemovedEvent: distributionRemovedEvent[0] };
199
174
  }
200
175
  catch (e) {
@@ -209,17 +184,12 @@ class MAODistributorClient extends Distributor_1.DistributorClient {
209
184
  * @param params.fromBlock Optional block to start searching from (defaults to contract creation block)
210
185
  * @returns The MAO instance contracts
211
186
  */
212
- async getMAOInstance({ name = MAODistributorClient.DEFAULT_NAME, instanceId, fromBlock, }) {
213
- const logs = await this.publicClient.getContractEvents({
214
- address: this.address,
215
- abi: DAODistributor_1.default,
216
- eventName: "Instantiated",
217
- args: {
218
- distributionId: (0, viem_1.stringToHex)(name, { size: 32 }),
219
- newInstanceId: instanceId,
220
- },
221
- fromBlock: fromBlock ?? this.createdAtBlock ?? (await this.getCreationBlock()),
222
- toBlock: "latest",
187
+ async getMAOInstance({ name = MAODistributorClient.DEFAULT_NAME, instanceId, }) {
188
+ // Convert instanceId to string before passing to queryInstances
189
+ const instanceIdStr = instanceId.toString();
190
+ const logs = await this.envioClient.queryInstances({
191
+ distributionId: (0, viem_1.stringToHex)(name, { size: 32 }),
192
+ instanceId: instanceIdStr,
223
193
  });
224
194
  if (logs.length === 0) {
225
195
  console.error("No instance found");
@@ -229,11 +199,32 @@ class MAODistributorClient extends Distributor_1.DistributorClient {
229
199
  console.error("Multiple instances found");
230
200
  throw new Error(`Multiple instances found for distribution ${name} and id ${instanceId}`);
231
201
  }
232
- const { instances } = logs[0].args;
202
+ const { instances } = logs[0];
233
203
  if (!instances)
234
204
  throw new Error(`No instances found for distribution ${name} and id ${instanceId}`);
235
205
  return this.addressesToContracts((0, utils_1.parseInstantiated)(instances));
236
206
  }
207
+ /**
208
+ * Get MAOInstances instances by distribution name
209
+ * @param params.namedDistribution Distribution name (defaults to "MAO Distribution")
210
+ * @param params.fromBlock Block to start searching from (defaults to contract creation block)
211
+ * @returns Array of MAOInstances contract instances
212
+ */
213
+ async getMAOInstances({ namedDistribution = MAODistributorClient.DEFAULT_NAME, } = {}) {
214
+ const logs = await this.envioClient.queryInstances({
215
+ distributionId: (0, viem_1.stringToHex)(namedDistribution, { size: 32 }),
216
+ });
217
+ const instances = logs
218
+ .map((l) => ({
219
+ instances: (0, utils_1.parseInstantiated)(l.instances),
220
+ maoInstanceId: BigInt(l.newInstanceId),
221
+ }))
222
+ .map((ip) => ({
223
+ instances: this.addressesToContracts(ip.instances),
224
+ maoInstanceId: ip.maoInstanceId,
225
+ }));
226
+ return instances;
227
+ }
237
228
  async getInstantiatePrice(distributorsId) {
238
229
  try {
239
230
  return this.publicClient.readContract({
@@ -248,7 +239,7 @@ class MAODistributorClient extends Distributor_1.DistributorClient {
248
239
  }
249
240
  }
250
241
  async setInstantiationAllowance(amount) {
251
- (0, log_1.logger)(`Setting instantiation allowance ${amount?.toString ? amount : viem_1.maxUint256}`);
242
+ (0, logger_1.logger)(`Setting instantiation allowance ${amount?.toString ? amount : viem_1.maxUint256}`);
252
243
  if (!this.walletClient)
253
244
  throw new Error("walletClient is required, use constructor with walletClient");
254
245
  if (!this.walletClient.account?.address)
@@ -299,8 +290,8 @@ class MAODistributorClient extends Distributor_1.DistributorClient {
299
290
  address: (0, utils_1.getArtifact)(chainid, "Rankify").address,
300
291
  args: [this.walletClient.account?.address],
301
292
  });
302
- (0, log_1.logger)(`Rankify Token Balance ${RankifyTokenBalance.toString()}`);
303
- (0, log_1.logger)(`Allowance ${allowance.toString()} for ${this.walletClient.account?.address} on ${this.address}`);
293
+ (0, logger_1.logger)(`Rankify Token Balance ${RankifyTokenBalance.toString()}`);
294
+ (0, logger_1.logger)(`Allowance ${allowance.toString()} for ${this.walletClient.account?.address} on ${this.address}`);
304
295
  return allowance < (await this.getInstantiatePrice(distributorsId));
305
296
  }
306
297
  catch (e) {
@@ -310,11 +301,11 @@ class MAODistributorClient extends Distributor_1.DistributorClient {
310
301
  /**
311
302
  * Create a new MAODistribution instance
312
303
  * @param args Distribution arguments (encoded as bytes)
313
- * @param name Distributor name (defaults to "MAO Distribution")
304
+ * @param name Distributor name (defaults to "MAO-v1.3")
314
305
  * @returns Array of created contract addresses
315
306
  */
316
307
  async instantiate(args, name = MAODistributorClient.DEFAULT_NAME, chain) {
317
- (0, log_1.logger)("Instantiating MAO Distribution");
308
+ (0, logger_1.logger)(`Instantiating ${name}`);
318
309
  if (!args)
319
310
  throw new Error("args is required");
320
311
  if (!this.walletClient)
@@ -362,5 +353,5 @@ class MAODistributorClient extends Distributor_1.DistributorClient {
362
353
  }
363
354
  }
364
355
  exports.MAODistributorClient = MAODistributorClient;
365
- MAODistributorClient.DEFAULT_NAME = "MAO-V1.3";
356
+ MAODistributorClient.DEFAULT_NAME = "MAO-v1.3";
366
357
  //# sourceMappingURL=MAODistributor.js.map