@peeramid-labs/sdk 3.10.4 → 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 +99 -127
  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 +100 -127
  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 +100 -127
  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,44 +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
- });
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
+ ]);
53
39
  if (logsWithProposals.length === 0 || logsWithVotesAndPermutation.length === 0) {
54
40
  return [];
55
41
  }
56
42
  const gameState = await this.getGameState(gameId);
57
- const players = logsWithProposals[0].args?.players || [];
58
- const permutation = logsWithVotesAndPermutation[0].args?.proposerIndices || [];
59
- 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);
60
46
  const proposalsOrdered = (0, permutations_1.reversePermutation)({ array: proposalsPermuted || [], permutation });
61
- const votesPermuted = { ...logsWithVotesAndPermutation[0] }.args?.votes || [];
62
- 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 }));
63
49
  const maxVotes = BigInt(Math.floor(Math.sqrt(Number(gameState.voteCredits))));
64
50
  const blockNumber = logsWithProposals[0].blockNumber;
65
51
  const blockTimestamp = await this.getBlockTimestamp(blockNumber);
@@ -67,16 +53,21 @@ class InstanceBase {
67
53
  const proposer = players[proposersIndex];
68
54
  if (proposal === "") {
69
55
  return {
70
- player: proposer, proposal: "", score: 0n, scoreList: []
56
+ player: proposer,
57
+ proposal: "",
58
+ score: 0n,
59
+ scoreList: [],
71
60
  };
72
61
  }
73
- const scoreList = votesOrdered.map((playersVote, votersIndex) => {
62
+ const scoreList = votesOrdered
63
+ .map((playersVote, votersIndex) => {
74
64
  const isIdleVoter = playersVote.reduce((acc, vote) => acc + vote, 0n) === 0n;
75
65
  if (votersIndex === proposersIndex) {
76
66
  return { score: 0n, player: proposer };
77
67
  }
78
68
  return { score: isIdleVoter ? maxVotes : playersVote[proposersIndex], player: players[votersIndex] };
79
- }).filter(score => score.score > 0n);
69
+ })
70
+ .filter((score) => score.score > 0n);
80
71
  return {
81
72
  player: proposer,
82
73
  proposal,
@@ -141,31 +132,32 @@ class InstanceBase {
141
132
  * @returns The voting information for the specified game and turn.
142
133
  */
143
134
  this.getVoting = async (gameId, turnId) => {
144
- if (!gameId)
145
- throw new Error("gameId not set");
146
- if (!turnId)
147
- throw new Error("turnId not set");
148
- const voteEvents = await this.publicClient.getContractEvents({
149
- address: this.instanceAddress,
150
- abi: RankifyDiamondInstance_1.default,
151
- fromBlock: await this.getCreationBlock(),
152
- eventName: "VoteSubmitted",
153
- args: {
154
- gameId,
155
- turn: turnId,
156
- },
135
+ const voteEvents = await this.envioClient.getVoteSubmittedEvents({
136
+ gameId,
137
+ turn: turnId,
138
+ contractAddress: this.instanceAddress,
157
139
  });
158
- const proposalEvents = await this.publicClient.getContractEvents({
159
- address: this.instanceAddress,
160
- abi: RankifyDiamondInstance_1.default,
161
- fromBlock: await this.getCreationBlock(),
162
- eventName: "ProposalSubmitted",
163
- args: {
164
- gameId,
165
- turn: turnId,
166
- },
140
+ const proposalEvents = await this.envioClient.getProposalSubmittedEvents({
141
+ gameId,
142
+ turn: turnId,
143
+ contractAddress: this.instanceAddress,
167
144
  });
168
- 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
+ };
169
161
  };
170
162
  /**
171
163
  * Retrieves the ongoing voting for a specific game.
@@ -198,19 +190,17 @@ class InstanceBase {
198
190
  functionName: "getTurn",
199
191
  args: [gameId],
200
192
  });
201
- const lastTurnEndedEvent = await this.publicClient.getContractEvents({
202
- address: this.instanceAddress,
203
- abi: RankifyDiamondInstance_1.default,
204
- fromBlock: await this.getCreationBlock(),
205
- eventName: "TurnEnded",
206
- args: { turn: currentTurn - 1n, gameId },
193
+ const lastTurnEndedEvent = await this.envioClient.getTurnEndedEvents({
194
+ gameId,
195
+ turn: currentTurn - 1n,
196
+ contractAddress: this.instanceAddress,
207
197
  });
208
- 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);
209
199
  if (lastTurnEndedEvent.length !== 1) {
210
200
  console.error("getOngoingProposals", gameId, "failed:", lastTurnEndedEvent.length);
211
201
  throw new index_1.ApiError("Game not found", { status: 404 });
212
202
  }
213
- const args = lastTurnEndedEvent[0].args;
203
+ const args = lastTurnEndedEvent[0];
214
204
  return { currentTurn, proposals: args.newProposals };
215
205
  }
216
206
  catch (error) {
@@ -224,34 +214,29 @@ class InstanceBase {
224
214
  * @returns A Promise that resolves to the registration deadline timestamp.
225
215
  */
226
216
  this.getRegistrationDeadline = async (gameId, timeToJoin) => {
227
- const log = await this.publicClient.getContractEvents({
228
- address: this.instanceAddress,
229
- abi: RankifyDiamondInstance_1.default,
230
- fromBlock: await this.getCreationBlock(),
231
- eventName: "RegistrationOpen",
232
- args: {
233
- gameId: gameId,
234
- },
235
- });
236
- if (log.length !== 1) {
237
- console.error("getRegistrationDeadline", gameId, "failed:", log.length);
238
- throw new index_1.ApiError("Game not found", { status: 404 });
239
- }
240
- const block = await this.publicClient.getBlock({ blockNumber: log[0].blockNumber });
241
- if (timeToJoin) {
242
- return Number(block.timestamp) + timeToJoin;
243
- }
244
217
  try {
245
- const gameState = await this.publicClient.readContract({
246
- address: this.instanceAddress,
247
- abi: RankifyDiamondInstance_1.default,
248
- functionName: "getGameState",
249
- args: [gameId],
218
+ const registrationEvents = await this.envioClient.getRegistrationOpenEvents({
219
+ gameId,
220
+ contractAddress: this.instanceAddress,
250
221
  });
251
- 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
+ }
252
237
  }
253
- catch (e) {
254
- throw await (0, index_1.handleRPCError)(e);
238
+ catch (err) {
239
+ (0, logger_1.logger)(`Error fetching events from Envio: ${err}`);
255
240
  }
256
241
  };
257
242
  /**
@@ -294,14 +279,13 @@ class InstanceBase {
294
279
  });
295
280
  if (currentTurn === 0n)
296
281
  return 0;
297
- const eventName = currentTurn === 1n ? "GameStarted" : "TurnEnded";
298
- const args = currentTurn === 1n ? { gameId } : { gameId, turnId: currentTurn - 1n };
299
- const logs = await this.publicClient.getContractEvents({
300
- address: this.instanceAddress,
301
- abi: RankifyDiamondInstance_1.default,
302
- fromBlock: await this.getCreationBlock(),
303
- eventName: eventName,
304
- 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,
305
289
  });
306
290
  if (logs.length !== 1) {
307
291
  console.error("getTurnDeadline", gameId, "failed:", logs.length);
@@ -349,21 +333,10 @@ class InstanceBase {
349
333
  * @returns A Promise that resolves to the list of proposal scores.
350
334
  */
351
335
  this.getProposalScoresList = async (gameId) => {
352
- if (!gameId)
353
- throw new Error("gameId not set");
354
- try {
355
- const logs = await this.publicClient.getContractEvents({
356
- address: this.instanceAddress,
357
- abi: RankifyDiamondInstance_1.default,
358
- eventName: "ProposalScore",
359
- fromBlock: await this.getCreationBlock(),
360
- args: { gameId },
361
- });
362
- return logs;
363
- }
364
- catch (e) {
365
- throw await (0, index_1.handleRPCError)(e);
366
- }
336
+ return this.envioClient.getProposalScoreEvents({
337
+ gameId,
338
+ contractAddress: this.instanceAddress,
339
+ });
367
340
  };
368
341
  /**
369
342
  * Retrieve s the current turn of a game.
@@ -471,17 +444,14 @@ class InstanceBase {
471
444
  let scores = ongoingScores;
472
445
  let returnPlayers = players;
473
446
  if (state.hasEnded) {
474
- const GameOverEvents = await this.publicClient.getContractEvents({
475
- address: this.instanceAddress,
476
- abi: RankifyDiamondInstance_1.default,
477
- eventName: "GameOver",
478
- args: { gameId },
479
- fromBlock: await this.getCreationBlock(),
447
+ const GameOverEvents = await this.envioClient.getGameOverEvents({
448
+ gameId,
449
+ contractAddress: this.instanceAddress
480
450
  });
481
451
  const evt = GameOverEvents[0];
482
- if (evt.args?.scores && evt.args?.players) {
483
- returnPlayers = evt.args.players;
484
- scores = [returnPlayers, evt.args.scores];
452
+ if (evt?.scores && evt?.players) {
453
+ returnPlayers = evt.players;
454
+ scores = [returnPlayers, evt.scores];
485
455
  }
486
456
  }
487
457
  const gamePhase = state.hasEnded
@@ -607,22 +577,20 @@ class InstanceBase {
607
577
  return derivedPrivateKey;
608
578
  };
609
579
  this.getPlayerPubKey = async ({ instanceAddress, gameId, player, }) => {
610
- const playerJoinedEvt = await this.publicClient.getContractEvents({
611
- address: instanceAddress,
612
- abi: RankifyDiamondInstance_1.default,
613
- eventName: "PlayerJoined",
614
- args: { gameId, participant: player },
615
- fromBlock: await this.getCreationBlock(),
580
+ const playerJoinedEvents = await this.envioClient.getPlayerJoinedEvents({
581
+ gameId,
582
+ participant: player,
583
+ contractAddress: instanceAddress,
616
584
  });
617
- const latestEvent = playerJoinedEvt
585
+ const latestEvent = playerJoinedEvents
618
586
  .sort((a, b) => Number(a.blockNumber) - Number(b.blockNumber))
619
587
  .sort((a, b) => a.transactionIndex - b.transactionIndex)
620
588
  .sort((a, b) => a.logIndex - b.logIndex)[0];
621
- if (!latestEvent.args.voterPubKey)
589
+ if (!latestEvent.voterPubKey)
622
590
  throw new Error("No voterPubKey found in event data, that is unexpected");
623
591
  if (!player)
624
592
  throw new Error("No player found in event data, that is unexpected");
625
- return latestEvent.args.voterPubKey;
593
+ return latestEvent.voterPubKey;
626
594
  };
627
595
  this.getBlockTimestamp = async (blockNumber) => {
628
596
  const block = await this.publicClient.getBlock({ blockNumber });
@@ -632,6 +600,7 @@ class InstanceBase {
632
600
  if (!this.instanceContracts) {
633
601
  const distributor = new MAODistributor_1.MAODistributorClient(this.chainId, {
634
602
  publicClient: this.publicClient,
603
+ envioClient: this.envioClient,
635
604
  });
636
605
  const instanceId = await distributor.getInstanceFromAddress(this.instanceAddress);
637
606
  this.instanceContracts = await distributor.getMAOInstance({ instanceId: instanceId });
@@ -646,7 +615,9 @@ class InstanceBase {
646
615
  });
647
616
  return await rankTokenClient.getMetadata(ipfsGateway);
648
617
  };
649
- this.getGameMetadata = async (ipfsGateway, gameId) => {
618
+ this.getGameMetadata = async (ipfsGateway, gameId
619
+ //fellowshipMetadata?: FellowshipMetadata
620
+ ) => {
650
621
  try {
651
622
  const { metadata } = await this.getGameStateDetails(gameId);
652
623
  // Handle different URI formats
@@ -679,6 +650,7 @@ class InstanceBase {
679
650
  this.chainId = chainId;
680
651
  this.instanceAddress = instanceAddress;
681
652
  this.creationBlock = creationBlock;
653
+ this.envioClient = envioClient;
682
654
  }
683
655
  // Type guard for FellowshipMetadata
684
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