@peeramid-labs/sdk 3.0.3 → 3.2.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 (107) hide show
  1. package/cli/cli/client.js +29 -6
  2. package/cli/cli/client.js.map +1 -1
  3. package/cli/cli/commands/distributions/add.js +1 -1
  4. package/cli/cli/commands/distributions/add.js.map +1 -1
  5. package/cli/cli/commands/distributions/index.js +3 -1
  6. package/cli/cli/commands/distributions/index.js.map +1 -1
  7. package/cli/cli/commands/distributions/list.js +1 -1
  8. package/cli/cli/commands/distributions/list.js.map +1 -1
  9. package/cli/cli/commands/distributions/state.js +38 -0
  10. package/cli/cli/commands/distributions/state.js.map +1 -0
  11. package/cli/cli/commands/eds/index.js +59 -0
  12. package/cli/cli/commands/eds/index.js.map +1 -0
  13. package/cli/cli/commands/fellowship/create.js +1 -1
  14. package/cli/cli/commands/fellowship/create.js.map +1 -1
  15. package/cli/cli/commands/fellowship/index.js +3 -1
  16. package/cli/cli/commands/fellowship/index.js.map +1 -1
  17. package/cli/cli/commands/fellowship/list.js +36 -0
  18. package/cli/cli/commands/fellowship/list.js.map +1 -0
  19. package/cli/cli/commands/fellowship/metadata.js +1 -1
  20. package/cli/cli/commands/fellowship/metadata.js.map +1 -1
  21. package/cli/cli/commands/instances/list.js +5 -1
  22. package/cli/cli/commands/instances/list.js.map +1 -1
  23. package/cli/cli/commands/multipass/contract.js +1 -1
  24. package/cli/cli/commands/multipass/contract.js.map +1 -1
  25. package/cli/cli/commands/multipass/domain.js +6 -6
  26. package/cli/cli/commands/multipass/domain.js.map +1 -1
  27. package/cli/cli/commands/multipass/domains.js +2 -2
  28. package/cli/cli/commands/multipass/domains.js.map +1 -1
  29. package/cli/eds/Distributor.js +10 -2
  30. package/cli/eds/Distributor.js.map +1 -1
  31. package/cli/rankify/InstanceBase.js +502 -0
  32. package/cli/rankify/InstanceBase.js.map +1 -0
  33. package/cli/rankify/MAODistributor.js +117 -73
  34. package/cli/rankify/MAODistributor.js.map +1 -1
  35. package/cli/rankify/RankToken.js +24 -13
  36. package/cli/rankify/RankToken.js.map +1 -1
  37. package/cli/utils/ApiError.js +33 -0
  38. package/cli/utils/ApiError.js.map +1 -1
  39. package/cli/utils/artifacts.js +2 -2
  40. package/cli/utils/artifacts.js.map +1 -1
  41. package/docs/classes/GameMaster.md +31 -8
  42. package/docs/classes/InstanceBase.md +26 -7
  43. package/docs/classes/InstancePlayer.md +47 -22
  44. package/docs/classes/MAODistributorClient.md +45 -11
  45. package/docs/docs/classes/GameMaster.md +31 -8
  46. package/docs/docs/classes/InstanceBase.md +26 -7
  47. package/docs/docs/classes/InstancePlayer.md +47 -22
  48. package/docs/docs/classes/MAODistributorClient.md +45 -11
  49. package/docs/docs/index.md +18 -1
  50. package/docs/index.md +18 -1
  51. package/lib.commonjs/eds/Distributor.d.ts +4 -1
  52. package/lib.commonjs/eds/Distributor.d.ts.map +1 -1
  53. package/lib.commonjs/eds/Distributor.js +11 -2
  54. package/lib.commonjs/eds/Distributor.js.map +1 -1
  55. package/lib.commonjs/rankify/GameMaster.d.ts.map +1 -1
  56. package/lib.commonjs/rankify/GameMaster.js +137 -111
  57. package/lib.commonjs/rankify/GameMaster.js.map +1 -1
  58. package/lib.commonjs/rankify/InstanceBase.d.ts +24 -54
  59. package/lib.commonjs/rankify/InstanceBase.d.ts.map +1 -1
  60. package/lib.commonjs/rankify/InstanceBase.js +227 -163
  61. package/lib.commonjs/rankify/InstanceBase.js.map +1 -1
  62. package/lib.commonjs/rankify/MAODistributor.d.ts +23 -3
  63. package/lib.commonjs/rankify/MAODistributor.d.ts.map +1 -1
  64. package/lib.commonjs/rankify/MAODistributor.js +117 -73
  65. package/lib.commonjs/rankify/MAODistributor.js.map +1 -1
  66. package/lib.commonjs/rankify/Player.d.ts +13 -9
  67. package/lib.commonjs/rankify/Player.d.ts.map +1 -1
  68. package/lib.commonjs/rankify/Player.js +173 -125
  69. package/lib.commonjs/rankify/Player.js.map +1 -1
  70. package/lib.commonjs/rankify/RankToken.d.ts.map +1 -1
  71. package/lib.commonjs/rankify/RankToken.js +24 -13
  72. package/lib.commonjs/rankify/RankToken.js.map +1 -1
  73. package/lib.commonjs/utils/ApiError.d.ts +1 -0
  74. package/lib.commonjs/utils/ApiError.d.ts.map +1 -1
  75. package/lib.commonjs/utils/ApiError.js +33 -0
  76. package/lib.commonjs/utils/ApiError.js.map +1 -1
  77. package/lib.commonjs/utils/artifacts.js +2 -2
  78. package/lib.commonjs/utils/artifacts.js.map +1 -1
  79. package/lib.esm/eds/Distributor.d.ts +4 -1
  80. package/lib.esm/eds/Distributor.d.ts.map +1 -1
  81. package/lib.esm/eds/Distributor.js +11 -2
  82. package/lib.esm/eds/Distributor.js.map +1 -1
  83. package/lib.esm/rankify/GameMaster.d.ts.map +1 -1
  84. package/lib.esm/rankify/GameMaster.js +137 -111
  85. package/lib.esm/rankify/GameMaster.js.map +1 -1
  86. package/lib.esm/rankify/InstanceBase.d.ts +24 -54
  87. package/lib.esm/rankify/InstanceBase.d.ts.map +1 -1
  88. package/lib.esm/rankify/InstanceBase.js +228 -164
  89. package/lib.esm/rankify/InstanceBase.js.map +1 -1
  90. package/lib.esm/rankify/MAODistributor.d.ts +23 -3
  91. package/lib.esm/rankify/MAODistributor.d.ts.map +1 -1
  92. package/lib.esm/rankify/MAODistributor.js +119 -75
  93. package/lib.esm/rankify/MAODistributor.js.map +1 -1
  94. package/lib.esm/rankify/Player.d.ts +13 -9
  95. package/lib.esm/rankify/Player.d.ts.map +1 -1
  96. package/lib.esm/rankify/Player.js +173 -125
  97. package/lib.esm/rankify/Player.js.map +1 -1
  98. package/lib.esm/rankify/RankToken.d.ts.map +1 -1
  99. package/lib.esm/rankify/RankToken.js +24 -13
  100. package/lib.esm/rankify/RankToken.js.map +1 -1
  101. package/lib.esm/utils/ApiError.d.ts +1 -0
  102. package/lib.esm/utils/ApiError.d.ts.map +1 -1
  103. package/lib.esm/utils/ApiError.js +32 -0
  104. package/lib.esm/utils/ApiError.js.map +1 -1
  105. package/lib.esm/utils/artifacts.js +2 -2
  106. package/lib.esm/utils/artifacts.js.map +1 -1
  107. package/package.json +2 -2
@@ -1,6 +1,7 @@
1
1
  import { getContract } from "../utils/artifacts";
2
2
  import instanceAbi from "../abis/RankifyDiamondInstance";
3
3
  import InstanceBase from "./InstanceBase";
4
+ import { handleRPCError } from "../utils";
4
5
  export default class RankifyPlayer extends InstanceBase {
5
6
  walletClient;
6
7
  account;
@@ -18,152 +19,199 @@ export default class RankifyPlayer extends InstanceBase {
18
19
  if (!this.walletClient.account?.address)
19
20
  throw new Error("Account not found");
20
21
  if (value > 0n) {
21
- const { request } = await this.publicClient.simulateContract({
22
- address: tokenContract.address,
23
- abi: tokenContract.abi,
24
- functionName: "approve",
25
- args: [this.instanceAddress, value],
26
- account: this.walletClient.account,
27
- });
28
- const hash = await this.walletClient.writeContract(request);
29
- await this.publicClient.waitForTransactionReceipt({ hash });
22
+ try {
23
+ const { request } = await this.publicClient.simulateContract({
24
+ address: tokenContract.address,
25
+ abi: tokenContract.abi,
26
+ functionName: "approve",
27
+ args: [this.instanceAddress, value],
28
+ account: this.walletClient.account,
29
+ });
30
+ const hash = await this.walletClient.writeContract(request);
31
+ await this.publicClient.waitForTransactionReceipt({ hash });
32
+ }
33
+ catch (e) {
34
+ throw await handleRPCError(e);
35
+ }
30
36
  }
31
37
  };
32
- createGame = async (creationArgs) => {
38
+ createGame = async ({ creationArgs, openNow, }) => {
33
39
  // if (!creationArgs) throw new Error("args is required");
34
- const estimationArgs = [
35
- creationArgs.minGameTime,
36
- ];
37
- const price = await this.publicClient.readContract({
38
- address: this.instanceAddress,
39
- abi: instanceAbi,
40
- functionName: "estimateGamePrice",
41
- args: estimationArgs,
42
- });
43
- await this.approveTokensIfNeeded(price);
44
- if (!this.walletClient.account?.address)
45
- throw new Error("Account not found");
46
- const { request } = await this.publicClient.simulateContract({
47
- address: this.instanceAddress,
48
- abi: instanceAbi,
49
- functionName: "createGame",
50
- args: [creationArgs],
51
- account: this.walletClient.account.address,
52
- });
53
- const hash = await this.walletClient.writeContract(request);
54
- const receipt = await this.publicClient.waitForTransactionReceipt({ hash });
55
- const events = await this.publicClient.getContractEvents({
56
- address: this.instanceAddress,
57
- abi: instanceAbi,
58
- eventName: "gameCreated",
59
- args: {},
60
- fromBlock: receipt.blockNumber,
61
- toBlock: receipt.blockNumber,
62
- });
63
- if (events.length > 1) {
64
- throw new Error("Failed to create game: Multiple GameCreated events found");
40
+ try {
41
+ const estimationArgs = [
42
+ creationArgs.minGameTime,
43
+ ];
44
+ const price = await this.publicClient.readContract({
45
+ address: this.instanceAddress,
46
+ abi: instanceAbi,
47
+ functionName: "estimateGamePrice",
48
+ args: estimationArgs,
49
+ });
50
+ await this.approveTokensIfNeeded(price);
51
+ if (!this.walletClient.account?.address)
52
+ throw new Error("Account not found");
53
+ const { request } = await this.publicClient.simulateContract({
54
+ address: this.instanceAddress,
55
+ abi: instanceAbi,
56
+ functionName: "createGame",
57
+ args: [creationArgs],
58
+ account: this.walletClient.account.address,
59
+ });
60
+ const hash = await this.walletClient.writeContract(request);
61
+ const receipt = await this.publicClient.waitForTransactionReceipt({ hash });
62
+ const events = await this.publicClient.getContractEvents({
63
+ address: this.instanceAddress,
64
+ abi: instanceAbi,
65
+ eventName: "gameCreated",
66
+ args: {},
67
+ fromBlock: receipt.blockNumber,
68
+ toBlock: receipt.blockNumber,
69
+ });
70
+ if (events.length > 1) {
71
+ throw new Error("Failed to create game: Multiple GameCreated events found");
72
+ }
73
+ if (events.length === 0) {
74
+ throw new Error("Failed to create game: GameCreated event not found");
75
+ }
76
+ if (!events[0].args)
77
+ throw new Error("Failed to create game: Event args not found");
78
+ if (!("gameId" in events[0].args))
79
+ throw new Error("Failed to create game: GameId not found");
80
+ const { gameId } = events[0].args;
81
+ let openingReceipt;
82
+ if (openNow) {
83
+ if (!gameId)
84
+ throw new Error("Failed to create game: GameId not found");
85
+ openingReceipt = await this.openRegistration(gameId);
86
+ }
87
+ return {
88
+ gameId,
89
+ receipt,
90
+ openingReceipt,
91
+ };
65
92
  }
66
- if (events.length === 0) {
67
- throw new Error("Failed to create game: GameCreated event not found");
93
+ catch (e) {
94
+ throw await handleRPCError(e);
68
95
  }
69
- if (!events[0].args)
70
- throw new Error("Failed to create game: Event args not found");
71
- if (!("gameId" in events[0].args))
72
- throw new Error("Failed to create game: GameId not found");
73
- const { gameId } = events[0].args;
74
- return {
75
- gameId,
76
- receipt,
77
- };
78
96
  };
79
97
  joinGame = async (gameId) => {
80
- const reqs = (await this.publicClient.readContract({
81
- address: this.instanceAddress,
82
- abi: instanceAbi,
83
- functionName: "getJoinRequirements",
84
- args: [gameId],
85
- }));
86
- const values = reqs.ethValues;
87
- const value = values.bet + values.burn + values.pay;
88
- if (this.walletClient.account?.address)
89
- throw new Error("Account not found");
90
- const { request } = await this.publicClient.simulateContract({
91
- address: this.instanceAddress,
92
- abi: instanceAbi,
93
- functionName: "joinGame",
94
- args: [gameId],
95
- value,
96
- account: this.walletClient.account,
97
- });
98
- const hash = await this.walletClient.writeContract(request);
99
- return this.publicClient.waitForTransactionReceipt({ hash });
98
+ try {
99
+ const reqs = (await this.publicClient.readContract({
100
+ address: this.instanceAddress,
101
+ abi: instanceAbi,
102
+ functionName: "getJoinRequirements",
103
+ args: [gameId],
104
+ }));
105
+ const values = reqs.ethValues;
106
+ const value = values.bet + values.burn + values.pay;
107
+ if (this.walletClient.account?.address)
108
+ throw new Error("Account not found");
109
+ const { request } = await this.publicClient.simulateContract({
110
+ address: this.instanceAddress,
111
+ abi: instanceAbi,
112
+ functionName: "joinGame",
113
+ args: [gameId],
114
+ value,
115
+ account: this.walletClient.account,
116
+ });
117
+ const hash = await this.walletClient.writeContract(request);
118
+ return this.publicClient.waitForTransactionReceipt({ hash });
119
+ }
120
+ catch (e) {
121
+ throw await handleRPCError(e);
122
+ }
100
123
  };
101
124
  startGame = async (gameId) => {
102
- if (!this.walletClient.account?.address)
103
- throw new Error("Account not found");
104
- const { request } = await this.publicClient.simulateContract({
105
- address: this.instanceAddress,
106
- abi: instanceAbi,
107
- functionName: "startGame",
108
- args: [gameId],
109
- account: this.walletClient.account,
110
- });
111
- const hash = await this.walletClient.writeContract(request);
112
- return this.publicClient.waitForTransactionReceipt({ hash });
125
+ try {
126
+ if (!this.walletClient.account?.address)
127
+ throw new Error("Account not found");
128
+ const { request } = await this.publicClient.simulateContract({
129
+ address: this.instanceAddress,
130
+ abi: instanceAbi,
131
+ functionName: "startGame",
132
+ args: [gameId],
133
+ account: this.walletClient.account,
134
+ });
135
+ const hash = await this.walletClient.writeContract(request);
136
+ return this.publicClient.waitForTransactionReceipt({ hash });
137
+ }
138
+ catch (e) {
139
+ throw await handleRPCError(e);
140
+ }
113
141
  };
114
142
  cancelGame = async (gameId) => {
115
- if (!this.walletClient.account?.address)
116
- throw new Error("Account not found");
117
- const { request } = await this.publicClient.simulateContract({
118
- address: this.instanceAddress,
119
- abi: instanceAbi,
120
- functionName: "cancelGame",
121
- args: [gameId],
122
- account: this.walletClient.account,
123
- });
124
- const hash = await this.walletClient.writeContract(request);
125
- return this.publicClient.waitForTransactionReceipt({ hash });
143
+ try {
144
+ if (!this.walletClient.account?.address)
145
+ throw new Error("Account not found");
146
+ const { request } = await this.publicClient.simulateContract({
147
+ address: this.instanceAddress,
148
+ abi: instanceAbi,
149
+ functionName: "cancelGame",
150
+ args: [gameId],
151
+ account: this.walletClient.account,
152
+ });
153
+ const hash = await this.walletClient.writeContract(request);
154
+ return this.publicClient.waitForTransactionReceipt({ hash });
155
+ }
156
+ catch (e) {
157
+ throw await handleRPCError(e);
158
+ }
126
159
  };
127
160
  leaveGame = async (gameId) => {
128
- if (!this.walletClient.account?.address)
129
- throw new Error("Account not found");
130
- const { request } = await this.publicClient.simulateContract({
131
- address: this.instanceAddress,
132
- abi: instanceAbi,
133
- functionName: "leaveGame",
134
- args: [gameId],
135
- account: this.walletClient.account,
136
- });
137
- const hash = await this.walletClient.writeContract(request);
138
- return this.publicClient.waitForTransactionReceipt({ hash });
161
+ try {
162
+ if (!this.walletClient.account?.address)
163
+ throw new Error("Account not found");
164
+ const { request } = await this.publicClient.simulateContract({
165
+ address: this.instanceAddress,
166
+ abi: instanceAbi,
167
+ functionName: "leaveGame",
168
+ args: [gameId],
169
+ account: this.walletClient.account,
170
+ });
171
+ const hash = await this.walletClient.writeContract(request);
172
+ return this.publicClient.waitForTransactionReceipt({ hash });
173
+ }
174
+ catch (e) {
175
+ throw await handleRPCError(e);
176
+ }
139
177
  };
140
178
  openRegistration = async (gameId) => {
141
- if (!this.walletClient.account?.address)
142
- throw new Error("Account not found");
143
- const { request } = await this.publicClient.simulateContract({
144
- address: this.instanceAddress,
145
- abi: instanceAbi,
146
- functionName: "openRegistration",
147
- args: [gameId],
148
- account: this.walletClient.account,
149
- });
150
- const hash = await this.walletClient.writeContract(request);
151
- return this.publicClient.waitForTransactionReceipt({ hash });
179
+ try {
180
+ if (!this.walletClient.account?.address)
181
+ throw new Error("Account not found");
182
+ const { request } = await this.publicClient.simulateContract({
183
+ address: this.instanceAddress,
184
+ abi: instanceAbi,
185
+ functionName: "openRegistration",
186
+ args: [gameId],
187
+ account: this.walletClient.account,
188
+ });
189
+ const hash = await this.walletClient.writeContract(request);
190
+ return this.publicClient.waitForTransactionReceipt({ hash });
191
+ }
192
+ catch (e) {
193
+ throw await handleRPCError(e);
194
+ }
152
195
  };
153
196
  setJoinRequirements = async (params) => {
154
197
  if (!this.walletClient.account?.address)
155
198
  throw new Error("Account not found");
156
199
  if (!params)
157
200
  throw new Error("params is required");
158
- const { request } = await this.publicClient.simulateContract({
159
- address: this.instanceAddress,
160
- abi: instanceAbi,
161
- functionName: "setJoinRequirements",
162
- args: params,
163
- account: this.walletClient.account,
164
- });
165
- const hash = await this.walletClient.writeContract(request);
166
- return this.publicClient.waitForTransactionReceipt({ hash });
201
+ try {
202
+ const { request } = await this.publicClient.simulateContract({
203
+ address: this.instanceAddress,
204
+ abi: instanceAbi,
205
+ functionName: "setJoinRequirements",
206
+ args: params,
207
+ account: this.walletClient.account,
208
+ });
209
+ const hash = await this.walletClient.writeContract(request);
210
+ return this.publicClient.waitForTransactionReceipt({ hash });
211
+ }
212
+ catch (e) {
213
+ await handleRPCError(e);
214
+ }
167
215
  };
168
216
  }
169
217
  //# sourceMappingURL=Player.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Player.js","sourceRoot":"","sources":["../../../src/rankify/Player.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Player.js","sourceRoot":"","sources":["../../../src/rankify/Player.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"RankToken.d.ts","sourceRoot":"","sources":["../../../src/rankify/RankToken.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,YAAY,EAAe,MAAM,MAAM,CAAC;AAE1D,OAAO,EAAE,kBAAkB,EAAqC,MAAM,UAAU,CAAC;AAEjF,MAAM,CAAC,OAAO,OAAO,eAAe;IAClC,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,YAAY,CAAC;IAC3B,gBAAgB,EAAE,OAAO,CAAC;gBAEd,EAAE,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,EAAE;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,YAAY,CAAA;KAAE;IAMjH,eAAe,wBAOb;IAGF,oBAAoB,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI,IAAI,kBAAkB;IAyC/D,WAAW,gBAAuB,MAAM,KAAG,OAAO,CAAC,kBAAkB,CAAC,CAgCpE;IAEF,mBAAmB,YAAmB,MAAM,WAAW,OAAO,qBAO5D;CACH"}
1
+ {"version":3,"file":"RankToken.d.ts","sourceRoot":"","sources":["../../../src/rankify/RankToken.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,YAAY,EAAe,MAAM,MAAM,CAAC;AAE1D,OAAO,EAAE,kBAAkB,EAAqC,MAAM,UAAU,CAAC;AAGjF,MAAM,CAAC,OAAO,OAAO,eAAe;IAClC,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,YAAY,CAAC;IAC3B,gBAAgB,EAAE,OAAO,CAAC;gBAEd,EAAE,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,EAAE;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,YAAY,CAAA;KAAE;IAMjH,eAAe,wBAWb;IAGF,oBAAoB,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI,IAAI,kBAAkB;IAyC/D,WAAW,gBAAuB,MAAM,KAAG,OAAO,CAAC,kBAAkB,CAAC,CAgCpE;IAEF,mBAAmB,YAAmB,MAAM,WAAW,OAAO,qBAW5D;CACH"}
@@ -1,6 +1,7 @@
1
1
  import { getContract } from "viem";
2
2
  import RankTokenAbi from "../abis/RankToken";
3
3
  import { SUBMISSION_TYPES, CONTENT_STORAGE } from "../types";
4
+ import { handleRPCError } from "../utils";
4
5
  export default class RankTokenClient {
5
6
  chainId;
6
7
  publicClient;
@@ -10,13 +11,18 @@ export default class RankTokenClient {
10
11
  this.publicClient = publicClient;
11
12
  this.rankTokenAddress = address;
12
13
  }
13
- getRankTokenURI = () => {
14
- const rankToken = getContract({
15
- address: this.rankTokenAddress,
16
- abi: RankTokenAbi,
17
- client: this.publicClient,
18
- });
19
- return rankToken.read.contractURI();
14
+ getRankTokenURI = async () => {
15
+ try {
16
+ const rankToken = getContract({
17
+ address: this.rankTokenAddress,
18
+ abi: RankTokenAbi,
19
+ client: this.publicClient,
20
+ });
21
+ return rankToken.read.contractURI();
22
+ }
23
+ catch (e) {
24
+ throw await handleRPCError(e);
25
+ }
20
26
  };
21
27
  // Type guard for FellowshipMetadata
22
28
  isFellowshipMetadata(data) {
@@ -92,12 +98,17 @@ export default class RankTokenClient {
92
98
  }
93
99
  };
94
100
  getRankTokenBalance = async (tokenId, account) => {
95
- const rankToken = getContract({
96
- address: this.rankTokenAddress,
97
- abi: RankTokenAbi,
98
- client: this.publicClient,
99
- });
100
- return rankToken.read.balanceOf([account, tokenId]);
101
+ try {
102
+ const rankToken = getContract({
103
+ address: this.rankTokenAddress,
104
+ abi: RankTokenAbi,
105
+ client: this.publicClient,
106
+ });
107
+ return rankToken.read.balanceOf([account, tokenId]);
108
+ }
109
+ catch (e) {
110
+ throw await handleRPCError(e);
111
+ }
101
112
  };
102
113
  }
103
114
  //# sourceMappingURL=RankToken.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"RankToken.js","sourceRoot":"","sources":["../../../src/rankify/RankToken.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"RankToken.js","sourceRoot":"","sources":["../../../src/rankify/RankToken.ts"],"names":[],"mappings":"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"}
@@ -9,5 +9,6 @@ export declare class ApiError extends Error {
9
9
  constructor(message: string, options?: ApiErrorOptions);
10
10
  }
11
11
  export declare function getApiError(response: any): Promise<ApiError>;
12
+ export declare function handleRPCError(e: unknown): Promise<Error>;
12
13
  export {};
13
14
  //# sourceMappingURL=ApiError.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ApiError.d.ts","sourceRoot":"","sources":["../../../src/utils/ApiError.ts"],"names":[],"mappings":"AAAA,UAAU,YAAY;IACpB,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED,MAAM,WAAW,eAAgB,SAAQ,YAAY;IACnD,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAOD,qBAAa,QAAS,SAAQ,KAAK;IACjC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC;gBACf,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,eAAe;CAIvD;AAGD,wBAAsB,WAAW,CAAC,QAAQ,EAAE,GAAG,GAAG,OAAO,CAAC,QAAQ,CAAC,CAMlE"}
1
+ {"version":3,"file":"ApiError.d.ts","sourceRoot":"","sources":["../../../src/utils/ApiError.ts"],"names":[],"mappings":"AAEA,UAAU,YAAY;IACpB,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED,MAAM,WAAW,eAAgB,SAAQ,YAAY;IACnD,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAOD,qBAAa,QAAS,SAAQ,KAAK;IACjC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC;gBACf,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,eAAe;CAIvD;AAGD,wBAAsB,WAAW,CAAC,QAAQ,EAAE,GAAG,GAAG,OAAO,CAAC,QAAQ,CAAC,CAMlE;AAED,wBAAsB,cAAc,CAAC,CAAC,EAAE,OAAO,kBAgC9C"}
@@ -1,3 +1,4 @@
1
+ import { BaseError, CallExecutionError, ContractFunctionRevertedError } from "viem";
1
2
  export class ApiError extends Error {
2
3
  status;
3
4
  constructor(message, options) {
@@ -13,4 +14,35 @@ export async function getApiError(response) {
13
14
  status: body?.status,
14
15
  });
15
16
  }
17
+ export async function handleRPCError(e) {
18
+ if (e instanceof BaseError) {
19
+ const revertError = e.walk((err) => err instanceof ContractFunctionRevertedError);
20
+ if (revertError instanceof ContractFunctionRevertedError) {
21
+ const errorName = revertError.data?.errorName;
22
+ if (!errorName) {
23
+ const cause = revertError.cause;
24
+ if (cause?.signature) {
25
+ const remoteAttempt = fetch(`https://www.4byte.directory/api/v1/signatures/?hex_signature=${cause.signature}`);
26
+ const response = await remoteAttempt;
27
+ const data = await response.json();
28
+ return new Error(`error: ${e?.shortMessage} | 4byte resolved this as: ${JSON.stringify(data.results, null, 2)}`);
29
+ }
30
+ else
31
+ return e;
32
+ }
33
+ console.error(e);
34
+ return new Error(`error: ${errorName}: ${revertError.shortMessage}`);
35
+ }
36
+ if (revertError instanceof CallExecutionError) {
37
+ const cause = revertError.cause.cause;
38
+ if (cause?.signature) {
39
+ const remoteAttempt = fetch(`https://www.4byte.directory/api/v1/signatures/?hex_signature=${cause.signature}`);
40
+ const response = await remoteAttempt;
41
+ const data = await response.json();
42
+ return new Error(`error: ${e?.message} | 4byte: ${JSON.stringify(data.results, null, 2)}`);
43
+ }
44
+ }
45
+ }
46
+ throw e;
47
+ }
16
48
  //# sourceMappingURL=ApiError.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ApiError.js","sourceRoot":"","sources":["../../../src/utils/ApiError.ts"],"names":[],"mappings":"AAaA,MAAM,OAAO,QAAS,SAAQ,KAAK;IACjC,MAAM,CAAqB;IAC3B,YAAY,OAAe,EAAE,OAAyB;QACpD,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,MAAM,GAAG,OAAO,EAAE,MAAM,CAAC;IAChC,CAAC;CACF;AAED,8DAA8D;AAC9D,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,QAAa;IAC7C,yGAAyG;IACzG,MAAM,IAAI,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAqB,CAAC;IACzD,OAAO,IAAI,QAAQ,CAAC,IAAI,CAAC,GAAG,IAAI,cAAc,EAAE;QAC9C,MAAM,EAAE,IAAI,EAAE,MAAM;KACrB,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"ApiError.js","sourceRoot":"","sources":["../../../src/utils/ApiError.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,kBAAkB,EAAE,6BAA6B,EAAE,MAAM,MAAM,CAAC;AAepF,MAAM,OAAO,QAAS,SAAQ,KAAK;IACjC,MAAM,CAAqB;IAC3B,YAAY,OAAe,EAAE,OAAyB;QACpD,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,MAAM,GAAG,OAAO,EAAE,MAAM,CAAC;IAChC,CAAC;CACF;AAED,8DAA8D;AAC9D,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,QAAa;IAC7C,yGAAyG;IACzG,MAAM,IAAI,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAqB,CAAC;IACzD,OAAO,IAAI,QAAQ,CAAC,IAAI,CAAC,GAAG,IAAI,cAAc,EAAE;QAC9C,MAAM,EAAE,IAAI,EAAE,MAAM;KACrB,CAAC,CAAC;AACL,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,CAAU;IAC7C,IAAI,CAAC,YAAY,SAAS,EAAE,CAAC;QAC3B,MAAM,WAAW,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,YAAY,6BAA6B,CAAC,CAAC;QAClF,IAAI,WAAW,YAAY,6BAA6B,EAAE,CAAC;YACzD,MAAM,SAAS,GAAG,WAAW,CAAC,IAAI,EAAE,SAAS,CAAC;YAC9C,IAAI,CAAC,SAAS,EAAE,CAAC;gBACf,MAAM,KAAK,GAAG,WAAW,CAAC,KAA+B,CAAC;gBAC1D,IAAI,KAAK,EAAE,SAAS,EAAE,CAAC;oBACrB,MAAM,aAAa,GAAG,KAAK,CACzB,gEAAgE,KAAK,CAAC,SAAS,EAAE,CAClF,CAAC;oBACF,MAAM,QAAQ,GAAG,MAAM,aAAa,CAAC;oBACrC,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;oBACnC,OAAO,IAAI,KAAK,CACd,UAAU,CAAC,EAAE,YAAY,8BAA8B,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAC/F,CAAC;gBACJ,CAAC;;oBAAM,OAAO,CAAC,CAAC;YAClB,CAAC;YACD,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YACjB,OAAO,IAAI,KAAK,CAAC,UAAU,SAAS,KAAK,WAAW,CAAC,YAAY,EAAE,CAAC,CAAC;QACvE,CAAC;QACD,IAAI,WAAW,YAAY,kBAAkB,EAAE,CAAC;YAC9C,MAAM,KAAK,GAAG,WAAW,CAAC,KAAK,CAAC,KAA+B,CAAC;YAChE,IAAI,KAAK,EAAE,SAAS,EAAE,CAAC;gBACrB,MAAM,aAAa,GAAG,KAAK,CAAC,gEAAgE,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC;gBAC/G,MAAM,QAAQ,GAAG,MAAM,aAAa,CAAC;gBACrC,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;gBACnC,OAAO,IAAI,KAAK,CAAC,UAAU,CAAC,EAAE,OAAO,aAAa,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;YAC7F,CAAC;QACH,CAAC;IACH,CAAC;IACD,MAAM,CAAC,CAAC;AACV,CAAC"}
@@ -25,7 +25,7 @@ export const getArtifact = (chainId, artifactName, overrideChainName) => {
25
25
  address: artifact.address,
26
26
  execute: artifact.execute,
27
27
  abi: artifact.abi,
28
- receipt: { ...artifact.receipt, logs: parseEventLogs({ abi: artifact.abi, logs: artifact.receipt.logs }) },
28
+ receipt: { ...artifact.receipt, logs: parseEventLogs({ abi: artifact.abi, logs: artifact.receipt?.logs ?? [] }) },
29
29
  };
30
30
  };
31
31
  /**
@@ -58,7 +58,7 @@ export const findContractDeploymentBlock = async (client, address, startBlock =
58
58
  let result = 0n;
59
59
  while (left <= right) {
60
60
  const mid = left + (right - left) / 2n;
61
- const code = await client.getBytecode({ address, blockNumber: mid });
61
+ const code = await client.getCode({ address, blockNumber: mid });
62
62
  if (code && code !== "0x") {
63
63
  // Contract exists at this block, try earlier
64
64
  result = mid;
@@ -1 +1 @@
1
- {"version":3,"file":"artifacts.js","sourceRoot":"","sources":["../../../src/utils/artifacts.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,WAAW,IAAI,eAAe,EAK9B,cAAc,GACf,MAAM,MAAM,CAAC;AAOd,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAK9C,MAAM,CAAC,MAAM,cAAc,GAAyC;IAClE,KAAK,EAAE,OAAO;IACd,SAAS,EAAE,OAAO;CACnB,CAAC;AAYF;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,CACzB,OAAe,EACf,YAA2B,EAC3B,iBAA0B,EAY1B,EAAE;IACF,MAAM,SAAS,GAAG,iBAAiB,IAAI,YAAY,CAAC,OAAO,CAAC,CAAC;IAC7D,MAAM,QAAQ,GAAG,CACf,YAAY,KAAK,WAAW;QAC1B,CAAC,CAAC,OAAO,CAAC,wCAAwC,SAAS,IAAI,YAAY,OAAO,CAAC;QACnF,CAAC,CAAC,YAAY,KAAK,WAAW;YAC5B,CAAC,CAAC,OAAO,CAAC,kCAAkC,SAAS,IAAI,YAAY,OAAO,CAAC;YAC7E,CAAC,CAAC,OAAO,CAAC,iCAAiC,SAAS,IAAI,YAAY,OAAO,CAAC,CAYjF,CAAC;IAEF,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;IACnD,CAAC;IAED,OAAO;QACL,OAAO,EAAE,QAAQ,CAAC,OAAO;QACzB,OAAO,EAAE,QAAQ,CAAC,OAAO;QACzB,GAAG,EAAE,QAAQ,CAAC,GAAG;QACjB,OAAO,EAAE,EAAE,GAAG,QAAQ,CAAC,OAAO,EAAE,IAAI,EAAE,cAAc,CAAC,EAAE,GAAG,EAAE,QAAQ,CAAC,GAAG,EAAE,IAAI,EAAE,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,EAAE;KAC3G,CAAC;AACJ,CAAC,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,CACzB,OAAe,EACf,YAA2B,EAC3B,MAAe,EAC6C,EAAE;IAC9D,MAAM,QAAQ,GAAG,WAAW,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;IACpD,OAAO,eAAe,CAAC;QACrB,OAAO,EAAE,QAAQ,CAAC,OAAO;QACzB,GAAG,EAAE,QAAQ,CAAC,GAAG;QACjB,MAAM;KACP,CAA+D,CAAC;AACnE,CAAC,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,2BAA2B,GAAG,KAAK,EAC9C,MAAoB,EACpB,OAAgB,EAChB,aAAqB,EAAE,EACvB,QAAiB,EACA,EAAE;IACnB,MAAM,WAAW,GAAG,QAAQ,IAAI,CAAC,MAAM,MAAM,CAAC,cAAc,EAAE,CAAC,CAAC;IAChE,IAAI,IAAI,GAAG,UAAU,CAAC;IACtB,IAAI,KAAK,GAAG,WAAW,CAAC;IACxB,IAAI,MAAM,GAAG,EAAE,CAAC;IAEhB,OAAO,IAAI,IAAI,KAAK,EAAE,CAAC;QACrB,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvC,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,WAAW,CAAC,EAAE,OAAO,EAAE,WAAW,EAAE,GAAG,EAAE,CAAC,CAAC;QAErE,IAAI,IAAI,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;YAC1B,6CAA6C;YAC7C,MAAM,GAAG,GAAG,CAAC;YACb,KAAK,GAAG,GAAG,GAAG,EAAE,CAAC;QACnB,CAAC;aAAM,CAAC;YACN,2CAA2C;YAC3C,IAAI,GAAG,GAAG,GAAG,EAAE,CAAC;QAClB,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC"}
1
+ {"version":3,"file":"artifacts.js","sourceRoot":"","sources":["../../../src/utils/artifacts.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,WAAW,IAAI,eAAe,EAK9B,cAAc,GACf,MAAM,MAAM,CAAC;AAOd,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAK9C,MAAM,CAAC,MAAM,cAAc,GAAyC;IAClE,KAAK,EAAE,OAAO;IACd,SAAS,EAAE,OAAO;CACnB,CAAC;AAYF;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,CACzB,OAAe,EACf,YAA2B,EAC3B,iBAA0B,EAY1B,EAAE;IACF,MAAM,SAAS,GAAG,iBAAiB,IAAI,YAAY,CAAC,OAAO,CAAC,CAAC;IAC7D,MAAM,QAAQ,GAAG,CACf,YAAY,KAAK,WAAW;QAC1B,CAAC,CAAC,OAAO,CAAC,wCAAwC,SAAS,IAAI,YAAY,OAAO,CAAC;QACnF,CAAC,CAAC,YAAY,KAAK,WAAW;YAC5B,CAAC,CAAC,OAAO,CAAC,kCAAkC,SAAS,IAAI,YAAY,OAAO,CAAC;YAC7E,CAAC,CAAC,OAAO,CAAC,iCAAiC,SAAS,IAAI,YAAY,OAAO,CAAC,CAYjF,CAAC;IAEF,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;IACnD,CAAC;IAED,OAAO;QACL,OAAO,EAAE,QAAQ,CAAC,OAAO;QACzB,OAAO,EAAE,QAAQ,CAAC,OAAO;QACzB,GAAG,EAAE,QAAQ,CAAC,GAAG;QACjB,OAAO,EAAE,EAAE,GAAG,QAAQ,CAAC,OAAO,EAAE,IAAI,EAAE,cAAc,CAAC,EAAE,GAAG,EAAE,QAAQ,CAAC,GAAG,EAAE,IAAI,EAAE,QAAQ,CAAC,OAAO,EAAE,IAAI,IAAI,EAAE,EAAE,CAAC,EAAE;KAClH,CAAC;AACJ,CAAC,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,CACzB,OAAe,EACf,YAA2B,EAC3B,MAAe,EAC6C,EAAE;IAC9D,MAAM,QAAQ,GAAG,WAAW,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;IACpD,OAAO,eAAe,CAAC;QACrB,OAAO,EAAE,QAAQ,CAAC,OAAO;QACzB,GAAG,EAAE,QAAQ,CAAC,GAAG;QACjB,MAAM;KACP,CAA+D,CAAC;AACnE,CAAC,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,2BAA2B,GAAG,KAAK,EAC9C,MAAoB,EACpB,OAAgB,EAChB,aAAqB,EAAE,EACvB,QAAiB,EACA,EAAE;IACnB,MAAM,WAAW,GAAG,QAAQ,IAAI,CAAC,MAAM,MAAM,CAAC,cAAc,EAAE,CAAC,CAAC;IAChE,IAAI,IAAI,GAAG,UAAU,CAAC;IACtB,IAAI,KAAK,GAAG,WAAW,CAAC;IACxB,IAAI,MAAM,GAAG,EAAE,CAAC;IAEhB,OAAO,IAAI,IAAI,KAAK,EAAE,CAAC;QACrB,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvC,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,WAAW,EAAE,GAAG,EAAE,CAAC,CAAC;QAEjE,IAAI,IAAI,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;YAC1B,6CAA6C;YAC7C,MAAM,GAAG,GAAG,CAAC;YACb,KAAK,GAAG,GAAG,GAAG,EAAE,CAAC;QACnB,CAAC;aAAM,CAAC;YACN,2CAA2C;YAC3C,IAAI,GAAG,GAAG,GAAG,EAAE,CAAC;QAClB,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@peeramid-labs/sdk",
3
3
  "description": "Peeramid Labs JavaScript SDK and CLI tools for building your community",
4
- "version": "3.0.3",
4
+ "version": "3.2.0",
5
5
  "type": "commonjs",
6
6
  "main": "./lib.commonjs/index.js",
7
7
  "module": "./lib.esm/index.js",
@@ -79,7 +79,7 @@
79
79
  "test": "jest",
80
80
  "test:ci": "pnpm generate-chain-mapping && node scripts/copyAbi.cjs && pnpm jest",
81
81
  "test:watch": "jest --watch",
82
- "lint:ci": "pnpm generate-chain-mapping && node scripts/copyAbi.cjs && pnpm lint",
82
+ "lint:ci": "pnpm generate-chain-mapping && node scripts/copyAbi.cjs && pnpm lint --max-warnings 0",
83
83
  "docs": "typedoc",
84
84
  "docs:watch": "typedoc --watch"
85
85
  }