@1upmonster/duel 0.1.8 → 0.2.2

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 (186) hide show
  1. package/README.md +110 -59
  2. package/dist/admin.d.ts +25 -40
  3. package/dist/admin.js +93 -114
  4. package/dist/encryption.js +1 -2
  5. package/dist/generated/duel/accounts/index.d.ts +10 -0
  6. package/dist/generated/duel/accounts/index.js +11 -0
  7. package/dist/generated/duel/accounts/matchTicket.d.ts +38 -0
  8. package/dist/generated/duel/accounts/matchTicket.js +45 -0
  9. package/dist/generated/duel/accounts/queue.d.ts +42 -0
  10. package/dist/generated/duel/accounts/queue.js +45 -0
  11. package/dist/generated/duel/accounts/tenant.d.ts +41 -0
  12. package/dist/generated/duel/accounts/tenant.js +44 -0
  13. package/dist/generated/duel/errors/duel.d.ts +31 -0
  14. package/dist/generated/duel/errors/duel.js +35 -0
  15. package/dist/generated/duel/errors/index.d.ts +8 -0
  16. package/dist/generated/duel/errors/index.js +9 -0
  17. package/dist/generated/duel/index.d.ts +12 -0
  18. package/dist/generated/duel/index.js +13 -0
  19. package/dist/generated/duel/instructions/cancelTicket.d.ts +45 -0
  20. package/dist/generated/duel/instructions/cancelTicket.js +56 -0
  21. package/dist/generated/duel/instructions/closeTicket.d.ts +45 -0
  22. package/dist/generated/duel/instructions/closeTicket.js +56 -0
  23. package/dist/generated/duel/instructions/commitTickets.d.ts +39 -0
  24. package/dist/generated/duel/instructions/commitTickets.js +50 -0
  25. package/dist/generated/duel/instructions/createTicket.d.ts +48 -0
  26. package/dist/generated/duel/instructions/createTicket.js +63 -0
  27. package/dist/generated/duel/instructions/delegateQueue.d.ts +69 -0
  28. package/dist/generated/duel/instructions/delegateQueue.js +90 -0
  29. package/dist/generated/duel/instructions/delegateTicket.d.ts +69 -0
  30. package/dist/generated/duel/instructions/delegateTicket.js +90 -0
  31. package/dist/generated/duel/instructions/flushMatches.d.ts +37 -0
  32. package/dist/generated/duel/instructions/flushMatches.js +43 -0
  33. package/dist/generated/duel/instructions/index.d.ts +19 -0
  34. package/dist/generated/duel/instructions/index.js +20 -0
  35. package/dist/generated/duel/instructions/initializeQueue.d.ts +48 -0
  36. package/dist/generated/duel/instructions/initializeQueue.js +63 -0
  37. package/dist/generated/duel/instructions/initializeTenant.d.ts +70 -0
  38. package/dist/generated/duel/instructions/initializeTenant.js +67 -0
  39. package/dist/generated/duel/instructions/joinQueue.d.ts +51 -0
  40. package/dist/generated/duel/instructions/joinQueue.js +56 -0
  41. package/dist/generated/duel/instructions/processUndelegation.d.ts +43 -0
  42. package/dist/generated/duel/instructions/processUndelegation.js +49 -0
  43. package/dist/generated/duel/instructions/setupTicketPermission.d.ts +54 -0
  44. package/dist/generated/duel/instructions/setupTicketPermission.js +63 -0
  45. package/dist/generated/duel/programs/duel.d.ts +92 -0
  46. package/dist/generated/duel/programs/duel.js +146 -0
  47. package/dist/generated/duel/programs/index.d.ts +8 -0
  48. package/dist/generated/duel/programs/index.js +9 -0
  49. package/dist/generated/duel/types/accountType.d.ts +25 -0
  50. package/dist/generated/duel/types/accountType.js +25 -0
  51. package/dist/generated/duel/types/index.d.ts +13 -0
  52. package/dist/generated/duel/types/index.js +14 -0
  53. package/dist/generated/duel/types/matchEntry.d.ts +23 -0
  54. package/dist/generated/duel/types/matchEntry.js +18 -0
  55. package/dist/generated/duel/types/matchFound.d.ts +23 -0
  56. package/dist/generated/duel/types/matchFound.js +18 -0
  57. package/dist/generated/duel/types/pendingMatch.d.ts +21 -0
  58. package/dist/generated/duel/types/pendingMatch.js +18 -0
  59. package/dist/generated/duel/types/queueEntry.d.ts +19 -0
  60. package/dist/generated/duel/types/queueEntry.js +18 -0
  61. package/dist/generated/duel/types/ticketStatus.d.ts +40 -0
  62. package/dist/generated/duel/types/ticketStatus.js +25 -0
  63. package/dist/generated/rps-game/accounts/gameSession.d.ts +40 -0
  64. package/dist/generated/rps-game/accounts/gameSession.js +45 -0
  65. package/dist/generated/rps-game/accounts/index.d.ts +9 -0
  66. package/dist/generated/rps-game/accounts/index.js +10 -0
  67. package/dist/generated/rps-game/accounts/playerProfile.d.ts +36 -0
  68. package/dist/generated/rps-game/accounts/playerProfile.js +47 -0
  69. package/dist/generated/rps-game/errors/index.d.ts +8 -0
  70. package/dist/generated/rps-game/errors/index.js +9 -0
  71. package/dist/generated/rps-game/errors/rpsGame.d.ts +25 -0
  72. package/dist/generated/rps-game/errors/rpsGame.js +29 -0
  73. package/dist/generated/rps-game/index.d.ts +12 -0
  74. package/dist/generated/rps-game/index.js +13 -0
  75. package/dist/generated/rps-game/instructions/closePlayer.d.ts +45 -0
  76. package/dist/generated/rps-game/instructions/closePlayer.js +56 -0
  77. package/dist/generated/rps-game/instructions/delegatePda.d.ts +69 -0
  78. package/dist/generated/rps-game/instructions/delegatePda.js +90 -0
  79. package/dist/generated/rps-game/instructions/index.d.ts +16 -0
  80. package/dist/generated/rps-game/instructions/index.js +17 -0
  81. package/dist/generated/rps-game/instructions/initializePlayer.d.ts +48 -0
  82. package/dist/generated/rps-game/instructions/initializePlayer.js +63 -0
  83. package/dist/generated/rps-game/instructions/makeChoice.d.ts +44 -0
  84. package/dist/generated/rps-game/instructions/makeChoice.js +46 -0
  85. package/dist/generated/rps-game/instructions/onMatchFound.d.ts +43 -0
  86. package/dist/generated/rps-game/instructions/onMatchFound.js +45 -0
  87. package/dist/generated/rps-game/instructions/persistResults.d.ts +43 -0
  88. package/dist/generated/rps-game/instructions/persistResults.js +50 -0
  89. package/dist/generated/rps-game/instructions/processUndelegation.d.ts +43 -0
  90. package/dist/generated/rps-game/instructions/processUndelegation.js +49 -0
  91. package/dist/generated/rps-game/instructions/startGame.d.ts +54 -0
  92. package/dist/generated/rps-game/instructions/startGame.js +67 -0
  93. package/dist/generated/rps-game/instructions/startGameWithTicket.d.ts +57 -0
  94. package/dist/generated/rps-game/instructions/startGameWithTicket.js +67 -0
  95. package/dist/generated/rps-game/programs/index.d.ts +8 -0
  96. package/dist/generated/rps-game/programs/index.js +9 -0
  97. package/dist/generated/rps-game/programs/rpsGame.d.ts +78 -0
  98. package/dist/generated/rps-game/programs/rpsGame.js +118 -0
  99. package/dist/generated/rps-game/types/accountType.d.ts +34 -0
  100. package/dist/generated/rps-game/types/accountType.js +25 -0
  101. package/dist/generated/rps-game/types/choice.d.ts +17 -0
  102. package/dist/generated/rps-game/types/choice.js +25 -0
  103. package/dist/generated/rps-game/types/gameResult.d.ts +26 -0
  104. package/dist/generated/rps-game/types/gameResult.js +25 -0
  105. package/dist/generated/rps-game/types/index.d.ts +10 -0
  106. package/dist/generated/rps-game/types/index.js +11 -0
  107. package/dist/index.d.ts +2 -1
  108. package/dist/index.js +3 -2
  109. package/dist/player.d.ts +25 -46
  110. package/dist/player.js +81 -140
  111. package/dist/tee.d.ts +14 -0
  112. package/dist/tee.js +62 -0
  113. package/dist/transaction.d.ts +11 -0
  114. package/dist/transaction.js +50 -0
  115. package/dist/utils.d.ts +4 -4
  116. package/dist/utils.js +23 -8
  117. package/package.json +3 -6
  118. package/src/admin.ts +151 -161
  119. package/src/duel.json +66 -7
  120. package/src/encryption.ts +0 -3
  121. package/src/generated/duel/accounts/index.ts +11 -0
  122. package/src/generated/duel/accounts/matchTicket.ts +77 -0
  123. package/src/generated/duel/accounts/queue.ts +77 -0
  124. package/src/generated/duel/accounts/tenant.ts +76 -0
  125. package/src/generated/duel/errors/duel.ts +46 -0
  126. package/src/generated/duel/errors/index.ts +9 -0
  127. package/src/generated/duel/index.ts +13 -0
  128. package/src/generated/duel/instructions/cancelTicket.ts +100 -0
  129. package/src/generated/duel/instructions/closeTicket.ts +100 -0
  130. package/src/generated/duel/instructions/commitTickets.ts +84 -0
  131. package/src/generated/duel/instructions/createTicket.ts +109 -0
  132. package/src/generated/duel/instructions/delegateQueue.ts +157 -0
  133. package/src/generated/duel/instructions/delegateTicket.ts +157 -0
  134. package/src/generated/duel/instructions/flushMatches.ts +76 -0
  135. package/src/generated/duel/instructions/index.ts +20 -0
  136. package/src/generated/duel/instructions/initializeQueue.ts +109 -0
  137. package/src/generated/duel/instructions/initializeTenant.ts +126 -0
  138. package/src/generated/duel/instructions/joinQueue.ts +106 -0
  139. package/src/generated/duel/instructions/processUndelegation.ts +86 -0
  140. package/src/generated/duel/instructions/setupTicketPermission.ts +115 -0
  141. package/src/generated/duel/programs/duel.ts +108 -0
  142. package/src/generated/duel/programs/index.ts +9 -0
  143. package/src/generated/duel/types/accountType.ts +36 -0
  144. package/src/generated/duel/types/index.ts +14 -0
  145. package/src/generated/duel/types/matchEntry.ts +25 -0
  146. package/src/generated/duel/types/matchFound.ts +25 -0
  147. package/src/generated/duel/types/pendingMatch.ts +25 -0
  148. package/src/generated/duel/types/queueEntry.ts +25 -0
  149. package/src/generated/duel/types/ticketStatus.ts +38 -0
  150. package/src/generated/rps-game/accounts/gameSession.ts +77 -0
  151. package/src/generated/rps-game/accounts/index.ts +10 -0
  152. package/src/generated/rps-game/accounts/playerProfile.ts +80 -0
  153. package/src/generated/rps-game/errors/index.ts +9 -0
  154. package/src/generated/rps-game/errors/rpsGame.ts +40 -0
  155. package/src/generated/rps-game/index.ts +13 -0
  156. package/src/generated/rps-game/instructions/closePlayer.ts +100 -0
  157. package/src/generated/rps-game/instructions/delegatePda.ts +157 -0
  158. package/src/generated/rps-game/instructions/index.ts +17 -0
  159. package/src/generated/rps-game/instructions/initializePlayer.ts +109 -0
  160. package/src/generated/rps-game/instructions/makeChoice.ts +84 -0
  161. package/src/generated/rps-game/instructions/onMatchFound.ts +79 -0
  162. package/src/generated/rps-game/instructions/persistResults.ts +88 -0
  163. package/src/generated/rps-game/instructions/processUndelegation.ts +86 -0
  164. package/src/generated/rps-game/instructions/startGame.ts +118 -0
  165. package/src/generated/rps-game/instructions/startGameWithTicket.ts +121 -0
  166. package/src/generated/rps-game/programs/index.ts +9 -0
  167. package/src/generated/rps-game/programs/rpsGame.ts +95 -0
  168. package/src/generated/rps-game/types/accountType.ts +36 -0
  169. package/src/generated/rps-game/types/choice.ts +25 -0
  170. package/src/generated/rps-game/types/gameResult.ts +37 -0
  171. package/src/generated/rps-game/types/index.ts +11 -0
  172. package/src/index.ts +2 -1
  173. package/src/player.ts +129 -192
  174. package/src/{idl/private_matchmaking.json → rps_game.json} +547 -583
  175. package/src/tee.ts +79 -0
  176. package/src/transaction.ts +90 -0
  177. package/src/utils.ts +35 -20
  178. package/tsconfig.json +2 -2
  179. package/dist/client.d.ts +0 -54
  180. package/dist/client.js +0 -265
  181. package/dist/duel.json +0 -1207
  182. package/dist/private_matchmaking.json +0 -534
  183. package/dist/types.d.ts +0 -635
  184. package/dist/types.js +0 -2
  185. package/src/idl/private_matchmaking.ts +0 -1033
  186. package/src/types.ts +0 -300
package/src/types.ts DELETED
@@ -1,300 +0,0 @@
1
- /**
2
- * Program IDL in camelCase format in order to be used in JS/TS.
3
- *
4
- * Note that this is only a type helper and is not the actual IDL. The original
5
- * IDL can be found at `target/idl/duel.json`.
6
- */
7
- export type Duel = {
8
- "address": "EdZzUwKd1X2ZWjxLPpz1cpEzMF7RUZC43Pq64v1VcK5X",
9
- "metadata": {
10
- "name": "duel",
11
- "version": "0.1.0",
12
- "spec": "0.1.0"
13
- },
14
- "instructions": [
15
- {
16
- "name": "cancelTicket",
17
- "discriminator": number[],
18
- "accounts": [
19
- { "name": "ticket", "writable": true },
20
- { "name": "tenant" },
21
- { "name": "player", "signer": true }
22
- ],
23
- "args": []
24
- },
25
- {
26
- "name": "closeTicket",
27
- "discriminator": number[],
28
- "accounts": [
29
- { "name": "ticket", "writable": true },
30
- { "name": "tenant" },
31
- { "name": "player", "writable": true, "signer": true }
32
- ],
33
- "args": []
34
- },
35
- {
36
- "name": "commitTickets",
37
- "discriminator": number[],
38
- "accounts": [
39
- { "name": "tenant" },
40
- { "name": "payer", "writable": true, "signer": true }
41
- ],
42
- "args": []
43
- },
44
- {
45
- "name": "createTicket",
46
- "discriminator": number[],
47
- "accounts": [
48
- { "name": "ticket", "writable": true },
49
- { "name": "tenant" },
50
- { "name": "player", "writable": true, "signer": true },
51
- { "name": "systemProgram", "address": "11111111111111111111111111111111" }
52
- ],
53
- "args": []
54
- },
55
- {
56
- "name": "delegateQueue",
57
- "discriminator": number[],
58
- "accounts": [
59
- { "name": "bufferPda", "writable": true },
60
- { "name": "delegationRecordPda", "writable": true },
61
- { "name": "delegationMetadataPda", "writable": true },
62
- { "name": "pda", "writable": true },
63
- { "name": "payer", "writable": true, "signer": true },
64
- { "name": "validator", "optional": true },
65
- { "name": "ownerProgram" },
66
- { "name": "delegationProgram" },
67
- { "name": "systemProgram", "address": "11111111111111111111111111111111" }
68
- ],
69
- "args": [
70
- {
71
- "name": "accountType",
72
- "type": { "defined": { "name": "accountType" } }
73
- }
74
- ]
75
- },
76
- {
77
- "name": "delegateTicket",
78
- "discriminator": number[],
79
- "accounts": [
80
- { "name": "bufferPda", "writable": true },
81
- { "name": "delegationRecordPda", "writable": true },
82
- { "name": "delegationMetadataPda", "writable": true },
83
- { "name": "pda", "writable": true },
84
- { "name": "payer", "writable": true, "signer": true },
85
- { "name": "validator", "optional": true },
86
- { "name": "ownerProgram" },
87
- { "name": "delegationProgram" },
88
- { "name": "systemProgram", "address": "11111111111111111111111111111111" }
89
- ],
90
- "args": [
91
- {
92
- "name": "accountType",
93
- "type": { "defined": { "name": "accountType" } }
94
- }
95
- ]
96
- },
97
- {
98
- "name": "flushMatches",
99
- "discriminator": number[],
100
- "accounts": [
101
- { "name": "queue", "writable": true },
102
- { "name": "tenant" },
103
- { "name": "signer", "signer": true }
104
- ],
105
- "args": []
106
- },
107
- {
108
- "name": "initializeQueue",
109
- "discriminator": number[],
110
- "accounts": [
111
- { "name": "queue", "writable": true },
112
- { "name": "tenant" },
113
- { "name": "authority", "writable": true, "signer": true },
114
- { "name": "systemProgram", "address": "11111111111111111111111111111111" }
115
- ],
116
- "args": []
117
- },
118
- {
119
- "name": "initializeTenant",
120
- "discriminator": number[],
121
- "accounts": [
122
- { "name": "tenant", "writable": true },
123
- { "name": "authority", "writable": true, "signer": true },
124
- { "name": "systemProgram", "address": "11111111111111111111111111111111" }
125
- ],
126
- "args": [
127
- { "name": "tenantProgramId", "type": "pubkey" },
128
- { "name": "eloOffset", "type": "u32" },
129
- { "name": "eloSize", "type": "u8" },
130
- { "name": "eloWindow", "type": "u64" },
131
- { "name": "callbackProgramId", "type": { "option": "pubkey" } },
132
- { "name": "callbackDiscriminator", "type": { "option": { "array": ["u8", 8] } } }
133
- ]
134
- },
135
- {
136
- "name": "joinQueue",
137
- "discriminator": number[],
138
- "accounts": [
139
- { "name": "queue", "writable": true },
140
- { "name": "tenant" },
141
- { "name": "playerData", "writable": true },
142
- { "name": "playerTicket", "writable": true },
143
- { "name": "signer", "signer": true }
144
- ],
145
- "args": []
146
- },
147
- {
148
- "name": "processUndelegation",
149
- "discriminator": number[],
150
- "accounts": [
151
- { "name": "baseAccount", "writable": true },
152
- { "name": "buffer" },
153
- { "name": "payer", "writable": true },
154
- { "name": "systemProgram" }
155
- ],
156
- "args": [
157
- { "name": "accountSeeds", "type": { "vec": "bytes" } }
158
- ]
159
- }
160
- ],
161
- "accounts": [
162
- {
163
- "name": "matchTicket",
164
- "discriminator": number[]
165
- },
166
- {
167
- "name": "queue",
168
- "discriminator": number[]
169
- },
170
- {
171
- "name": "tenant",
172
- "discriminator": number[]
173
- }
174
- ],
175
- "errors": [
176
- { "code": 6000, "name": "invalidTenant", "msg": "Account does not belong to the specified Tenant Program" },
177
- { "code": 6001, "name": "dataTooSmall", "msg": "Account data too small for ELO read" },
178
- { "code": 6002, "name": "unauthorized", "msg": "Unauthorized access" },
179
- { "code": 6003, "name": "invalidEloSize", "msg": "Invalid ELO size (must be 1, 2, 4, or 8 bytes)" },
180
- { "code": 6004, "name": "invalidTicketStatus", "msg": "Invalid ticket status for this operation" },
181
- { "code": 6005, "name": "invalidTicketAccount", "msg": "Invalid ticket account" }
182
- ],
183
- "types": [
184
- {
185
- "name": "accountType",
186
- "type": {
187
- "kind": "enum",
188
- "variants": [
189
- {
190
- "name": "queue",
191
- "fields": [
192
- { "name": "authority", "type": "pubkey" }
193
- ]
194
- },
195
- {
196
- "name": "ticket",
197
- "fields": [
198
- { "name": "player", "type": "pubkey" },
199
- { "name": "tenant", "type": "pubkey" }
200
- ]
201
- }
202
- ]
203
- }
204
- },
205
- {
206
- "name": "matchTicket",
207
- "type": {
208
- "kind": "struct",
209
- "fields": [
210
- { "name": "player", "type": "pubkey" },
211
- { "name": "tenant", "type": "pubkey" },
212
- { "name": "status", "type": { "defined": { "name": "ticketStatus" } } },
213
- { "name": "createdAt", "type": "i64" },
214
- { "name": "bump", "type": "u8" }
215
- ]
216
- }
217
- },
218
- {
219
- "name": "pendingMatch",
220
- "type": {
221
- "kind": "struct",
222
- "fields": [
223
- { "name": "player", "type": "pubkey" },
224
- { "name": "opponent", "type": "pubkey" },
225
- { "name": "matchId", "type": "u64" }
226
- ]
227
- }
228
- },
229
- {
230
- "name": "queue",
231
- "type": {
232
- "kind": "struct",
233
- "fields": [
234
- { "name": "authority", "type": "pubkey" },
235
- { "name": "tenant", "type": "pubkey" },
236
- { "name": "bump", "type": "u8" },
237
- { "name": "matchCounter", "type": "u64" },
238
- { "name": "entries", "type": { "vec": { "defined": { "name": "queueEntry" } } } },
239
- { "name": "matches", "type": { "vec": { "defined": { "name": "matchEntry" } } } },
240
- { "name": "pendingMatches", "type": { "vec": { "defined": { "name": "pendingMatch" } } } }
241
- ]
242
- }
243
- },
244
- {
245
- "name": "queueEntry",
246
- "type": {
247
- "kind": "struct",
248
- "fields": [
249
- { "name": "player", "type": "pubkey" },
250
- { "name": "elo", "type": "u64" }
251
- ]
252
- }
253
- },
254
- {
255
- "name": "matchEntry",
256
- "type": {
257
- "kind": "struct",
258
- "fields": [
259
- { "name": "player1", "type": "pubkey" },
260
- { "name": "player2", "type": "pubkey" },
261
- { "name": "matchId", "type": "u64" },
262
- { "name": "timestamp", "type": "i64" }
263
- ]
264
- }
265
- },
266
- {
267
- "name": "tenant",
268
- "type": {
269
- "kind": "struct",
270
- "fields": [
271
- { "name": "authority", "type": "pubkey" },
272
- { "name": "tenantProgramId", "type": "pubkey" },
273
- { "name": "eloOffset", "type": "u32" },
274
- { "name": "eloSize", "type": "u8" },
275
- { "name": "eloWindow", "type": "u64" },
276
- { "name": "callbackProgramId", "type": { "option": "pubkey" } },
277
- { "name": "callbackDiscriminator", "type": { "option": { "array": ["u8", 8] } } }
278
- ]
279
- }
280
- },
281
- {
282
- "name": "ticketStatus",
283
- "type": {
284
- "kind": "enum",
285
- "variants": [
286
- { "name": "searching" },
287
- {
288
- "name": "matched",
289
- "fields": [
290
- { "name": "opponent", "type": "pubkey" },
291
- { "name": "matchId", "type": "u64" }
292
- ]
293
- },
294
- { "name": "expired" },
295
- { "name": "cancelled" }
296
- ]
297
- }
298
- }
299
- ]
300
- };