@1upmonster/duel 0.2.1 → 0.2.3

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 (39) hide show
  1. package/README.md +120 -59
  2. package/dist/admin.d.ts +8 -1
  3. package/dist/admin.js +52 -9
  4. package/dist/generated/duel/errors/duel.d.ts +1 -3
  5. package/dist/generated/duel/errors/duel.js +2 -4
  6. package/dist/generated/duel/instructions/index.d.ts +2 -0
  7. package/dist/generated/duel/instructions/index.js +3 -1
  8. package/dist/generated/duel/instructions/joinQueue.d.ts +1 -1
  9. package/dist/generated/duel/instructions/joinQueue.js +3 -3
  10. package/dist/generated/duel/instructions/setupQueuePermission.d.ts +51 -0
  11. package/dist/generated/duel/instructions/setupQueuePermission.js +63 -0
  12. package/dist/generated/duel/instructions/setupTicketPermission.d.ts +54 -0
  13. package/dist/generated/duel/instructions/setupTicketPermission.js +63 -0
  14. package/dist/generated/duel/programs/duel.d.ts +11 -3
  15. package/dist/generated/duel/programs/duel.js +19 -3
  16. package/dist/player.d.ts +8 -1
  17. package/dist/player.js +56 -5
  18. package/dist/tee.d.ts +4 -3
  19. package/dist/tee.js +17 -23
  20. package/dist/transaction.d.ts +2 -0
  21. package/dist/transaction.js +30 -19
  22. package/dist/utils.d.ts +10 -0
  23. package/dist/utils.js +28 -1
  24. package/package.json +1 -1
  25. package/src/admin.ts +67 -7
  26. package/src/duel.json +57 -5
  27. package/src/generated/duel/errors/duel.ts +2 -4
  28. package/src/generated/duel/instructions/index.ts +3 -1
  29. package/src/generated/duel/instructions/joinQueue.ts +3 -3
  30. package/src/generated/duel/instructions/setupQueuePermission.ts +112 -0
  31. package/src/generated/duel/instructions/setupTicketPermission.ts +115 -0
  32. package/src/generated/duel/programs/duel.ts +12 -4
  33. package/src/player.ts +72 -1
  34. package/src/tee.ts +18 -22
  35. package/src/transaction.ts +33 -18
  36. package/src/utils.ts +34 -0
  37. package/src/encryption.ts +0 -154
  38. package/src/idl/private_matchmaking.json +0 -1027
  39. package/src/idl/private_matchmaking.ts +0 -1033
@@ -1,1027 +0,0 @@
1
- {
2
- "address": "DdBj92msRBH5yC22AjbBo86AdvAJSTFvCXU4nAf2mGZm",
3
- "metadata": {
4
- "name": "private_matchmaking",
5
- "version": "0.1.0",
6
- "spec": "0.1.0",
7
- "description": "Created with Anchor"
8
- },
9
- "instructions": [
10
- {
11
- "name": "close_page",
12
- "discriminator": [
13
- 205,
14
- 141,
15
- 25,
16
- 179,
17
- 31,
18
- 1,
19
- 103,
20
- 43
21
- ],
22
- "accounts": [
23
- {
24
- "name": "queue",
25
- "writable": true
26
- },
27
- {
28
- "name": "page",
29
- "writable": true,
30
- "pda": {
31
- "seeds": [
32
- {
33
- "kind": "const",
34
- "value": [
35
- 112,
36
- 97,
37
- 103,
38
- 101
39
- ]
40
- },
41
- {
42
- "kind": "account",
43
- "path": "queue"
44
- },
45
- {
46
- "kind": "arg",
47
- "path": "page_index"
48
- }
49
- ]
50
- }
51
- },
52
- {
53
- "name": "authority",
54
- "writable": true,
55
- "signer": true
56
- }
57
- ],
58
- "args": [
59
- {
60
- "name": "_page_index",
61
- "type": "u64"
62
- }
63
- ]
64
- },
65
- {
66
- "name": "close_queue",
67
- "discriminator": [
68
- 199,
69
- 20,
70
- 99,
71
- 205,
72
- 82,
73
- 40,
74
- 134,
75
- 109
76
- ],
77
- "accounts": [
78
- {
79
- "name": "queue",
80
- "writable": true,
81
- "pda": {
82
- "seeds": [
83
- {
84
- "kind": "const",
85
- "value": [
86
- 113,
87
- 117,
88
- 101,
89
- 117,
90
- 101,
91
- 45,
92
- 104,
93
- 101,
94
- 97,
95
- 100
96
- ]
97
- },
98
- {
99
- "kind": "account",
100
- "path": "authority"
101
- },
102
- {
103
- "kind": "arg",
104
- "path": "queue_id"
105
- }
106
- ]
107
- }
108
- },
109
- {
110
- "name": "authority",
111
- "writable": true,
112
- "signer": true
113
- }
114
- ],
115
- "args": [
116
- {
117
- "name": "_queue_id",
118
- "type": "string"
119
- }
120
- ]
121
- },
122
- {
123
- "name": "create_mock_player",
124
- "discriminator": [
125
- 168,
126
- 23,
127
- 255,
128
- 112,
129
- 93,
130
- 42,
131
- 58,
132
- 223
133
- ],
134
- "accounts": [
135
- {
136
- "name": "player_account",
137
- "writable": true,
138
- "signer": true
139
- },
140
- {
141
- "name": "authority",
142
- "writable": true,
143
- "signer": true
144
- },
145
- {
146
- "name": "system_program",
147
- "address": "11111111111111111111111111111111"
148
- }
149
- ],
150
- "args": [
151
- {
152
- "name": "elo",
153
- "type": "u64"
154
- }
155
- ]
156
- },
157
- {
158
- "name": "delegate_queue",
159
- "discriminator": [
160
- 31,
161
- 200,
162
- 139,
163
- 125,
164
- 93,
165
- 239,
166
- 83,
167
- 87
168
- ],
169
- "accounts": [
170
- {
171
- "name": "buffer_pda",
172
- "writable": true,
173
- "pda": {
174
- "seeds": [
175
- {
176
- "kind": "const",
177
- "value": [
178
- 98,
179
- 117,
180
- 102,
181
- 102,
182
- 101,
183
- 114
184
- ]
185
- },
186
- {
187
- "kind": "account",
188
- "path": "pda"
189
- }
190
- ],
191
- "program": {
192
- "kind": "const",
193
- "value": [
194
- 187,
195
- 145,
196
- 71,
197
- 224,
198
- 31,
199
- 36,
200
- 128,
201
- 147,
202
- 29,
203
- 187,
204
- 82,
205
- 52,
206
- 119,
207
- 101,
208
- 210,
209
- 112,
210
- 67,
211
- 137,
212
- 5,
213
- 133,
214
- 51,
215
- 149,
216
- 134,
217
- 253,
218
- 182,
219
- 36,
220
- 207,
221
- 205,
222
- 109,
223
- 77,
224
- 127,
225
- 248
226
- ]
227
- }
228
- }
229
- },
230
- {
231
- "name": "delegation_record_pda",
232
- "writable": true,
233
- "pda": {
234
- "seeds": [
235
- {
236
- "kind": "const",
237
- "value": [
238
- 100,
239
- 101,
240
- 108,
241
- 101,
242
- 103,
243
- 97,
244
- 116,
245
- 105,
246
- 111,
247
- 110
248
- ]
249
- },
250
- {
251
- "kind": "account",
252
- "path": "pda"
253
- }
254
- ],
255
- "program": {
256
- "kind": "account",
257
- "path": "delegation_program"
258
- }
259
- }
260
- },
261
- {
262
- "name": "delegation_metadata_pda",
263
- "writable": true,
264
- "pda": {
265
- "seeds": [
266
- {
267
- "kind": "const",
268
- "value": [
269
- 100,
270
- 101,
271
- 108,
272
- 101,
273
- 103,
274
- 97,
275
- 116,
276
- 105,
277
- 111,
278
- 110,
279
- 45,
280
- 109,
281
- 101,
282
- 116,
283
- 97,
284
- 100,
285
- 97,
286
- 116,
287
- 97
288
- ]
289
- },
290
- {
291
- "kind": "account",
292
- "path": "pda"
293
- }
294
- ],
295
- "program": {
296
- "kind": "account",
297
- "path": "delegation_program"
298
- }
299
- }
300
- },
301
- {
302
- "name": "pda",
303
- "writable": true,
304
- "pda": {
305
- "seeds": [
306
- {
307
- "kind": "const",
308
- "value": [
309
- 113,
310
- 117,
311
- 101,
312
- 117,
313
- 101,
314
- 45,
315
- 104,
316
- 101,
317
- 97,
318
- 100
319
- ]
320
- },
321
- {
322
- "kind": "account",
323
- "path": "authority"
324
- },
325
- {
326
- "kind": "arg",
327
- "path": "queue_id"
328
- }
329
- ]
330
- }
331
- },
332
- {
333
- "name": "authority",
334
- "signer": true
335
- },
336
- {
337
- "name": "payer",
338
- "writable": true,
339
- "signer": true
340
- },
341
- {
342
- "name": "validator",
343
- "optional": true
344
- },
345
- {
346
- "name": "owner_program",
347
- "address": "DdBj92msRBH5yC22AjbBo86AdvAJSTFvCXU4nAf2mGZm"
348
- },
349
- {
350
- "name": "delegation_program",
351
- "address": "DELeGGvXpWV2fqJUhqcF5ZSYMS4JTLjteaAMARRSaeSh"
352
- },
353
- {
354
- "name": "system_program",
355
- "address": "11111111111111111111111111111111"
356
- }
357
- ],
358
- "args": [
359
- {
360
- "name": "queue_id",
361
- "type": "string"
362
- }
363
- ]
364
- },
365
- {
366
- "name": "initialize_page",
367
- "discriminator": [
368
- 26,
369
- 128,
370
- 8,
371
- 201,
372
- 196,
373
- 58,
374
- 74,
375
- 74
376
- ],
377
- "accounts": [
378
- {
379
- "name": "queue",
380
- "writable": true
381
- },
382
- {
383
- "name": "page",
384
- "writable": true,
385
- "pda": {
386
- "seeds": [
387
- {
388
- "kind": "const",
389
- "value": [
390
- 112,
391
- 97,
392
- 103,
393
- 101
394
- ]
395
- },
396
- {
397
- "kind": "account",
398
- "path": "queue"
399
- },
400
- {
401
- "kind": "arg",
402
- "path": "page_index"
403
- }
404
- ]
405
- }
406
- },
407
- {
408
- "name": "authority",
409
- "writable": true,
410
- "signer": true
411
- },
412
- {
413
- "name": "system_program",
414
- "address": "11111111111111111111111111111111"
415
- }
416
- ],
417
- "args": [
418
- {
419
- "name": "page_index",
420
- "type": "u64"
421
- }
422
- ]
423
- },
424
- {
425
- "name": "initialize_queue",
426
- "discriminator": [
427
- 174,
428
- 102,
429
- 132,
430
- 232,
431
- 90,
432
- 202,
433
- 27,
434
- 20
435
- ],
436
- "accounts": [
437
- {
438
- "name": "queue",
439
- "writable": true,
440
- "pda": {
441
- "seeds": [
442
- {
443
- "kind": "const",
444
- "value": [
445
- 113,
446
- 117,
447
- 101,
448
- 117,
449
- 101,
450
- 45,
451
- 104,
452
- 101,
453
- 97,
454
- 100
455
- ]
456
- },
457
- {
458
- "kind": "account",
459
- "path": "authority"
460
- },
461
- {
462
- "kind": "arg",
463
- "path": "queue_id"
464
- }
465
- ]
466
- }
467
- },
468
- {
469
- "name": "tenant_program_id"
470
- },
471
- {
472
- "name": "authority",
473
- "writable": true,
474
- "signer": true
475
- },
476
- {
477
- "name": "system_program",
478
- "address": "11111111111111111111111111111111"
479
- }
480
- ],
481
- "args": [
482
- {
483
- "name": "_queue_id",
484
- "type": "string"
485
- },
486
- {
487
- "name": "config",
488
- "type": {
489
- "defined": {
490
- "name": "QueueConfig"
491
- }
492
- }
493
- },
494
- {
495
- "name": "capacity",
496
- "type": "u16"
497
- },
498
- {
499
- "name": "page_size",
500
- "type": "u8"
501
- }
502
- ]
503
- },
504
- {
505
- "name": "join_queue",
506
- "discriminator": [
507
- 157,
508
- 115,
509
- 48,
510
- 109,
511
- 65,
512
- 86,
513
- 203,
514
- 238
515
- ],
516
- "accounts": [
517
- {
518
- "name": "queue",
519
- "writable": true
520
- },
521
- {
522
- "name": "page",
523
- "writable": true
524
- },
525
- {
526
- "name": "player_status",
527
- "writable": true,
528
- "pda": {
529
- "seeds": [
530
- {
531
- "kind": "const",
532
- "value": [
533
- 115,
534
- 116,
535
- 97,
536
- 116,
537
- 117,
538
- 115
539
- ]
540
- },
541
- {
542
- "kind": "account",
543
- "path": "player_game_account"
544
- }
545
- ]
546
- }
547
- },
548
- {
549
- "name": "player_authority",
550
- "writable": true,
551
- "signer": true
552
- },
553
- {
554
- "name": "player_game_account",
555
- "docs": [
556
- "The account containing ELO data"
557
- ]
558
- },
559
- {
560
- "name": "tenant_program",
561
- "docs": [
562
- "MUST match the queue.tenant_program_id (Checked manually)."
563
- ]
564
- },
565
- {
566
- "name": "system_program",
567
- "address": "11111111111111111111111111111111"
568
- }
569
- ],
570
- "args": []
571
- },
572
- {
573
- "name": "process_match",
574
- "discriminator": [
575
- 139,
576
- 58,
577
- 77,
578
- 101,
579
- 46,
580
- 54,
581
- 202,
582
- 140
583
- ],
584
- "accounts": [
585
- {
586
- "name": "queue_account",
587
- "writable": true
588
- },
589
- {
590
- "name": "page",
591
- "writable": true,
592
- "pda": {
593
- "seeds": [
594
- {
595
- "kind": "const",
596
- "value": [
597
- 112,
598
- 97,
599
- 103,
600
- 101
601
- ]
602
- },
603
- {
604
- "kind": "account",
605
- "path": "queue_account"
606
- },
607
- {
608
- "kind": "arg",
609
- "path": "page_index"
610
- }
611
- ]
612
- }
613
- }
614
- ],
615
- "args": [
616
- {
617
- "name": "_page_index",
618
- "type": "u64"
619
- }
620
- ]
621
- },
622
- {
623
- "name": "process_undelegation",
624
- "discriminator": [
625
- 196,
626
- 28,
627
- 41,
628
- 206,
629
- 48,
630
- 37,
631
- 51,
632
- 167
633
- ],
634
- "accounts": [
635
- {
636
- "name": "base_account",
637
- "writable": true
638
- },
639
- {
640
- "name": "buffer"
641
- },
642
- {
643
- "name": "payer",
644
- "writable": true
645
- },
646
- {
647
- "name": "system_program"
648
- }
649
- ],
650
- "args": [
651
- {
652
- "name": "account_seeds",
653
- "type": {
654
- "vec": "bytes"
655
- }
656
- }
657
- ]
658
- },
659
- {
660
- "name": "resize_queue",
661
- "discriminator": [
662
- 140,
663
- 145,
664
- 226,
665
- 236,
666
- 71,
667
- 103,
668
- 230,
669
- 105
670
- ],
671
- "accounts": [
672
- {
673
- "name": "queue",
674
- "writable": true
675
- },
676
- {
677
- "name": "authority",
678
- "signer": true,
679
- "relations": [
680
- "queue"
681
- ]
682
- }
683
- ],
684
- "args": [
685
- {
686
- "name": "new_capacity",
687
- "type": "u16"
688
- }
689
- ]
690
- },
691
- {
692
- "name": "unlock_player",
693
- "discriminator": [
694
- 226,
695
- 41,
696
- 76,
697
- 17,
698
- 253,
699
- 9,
700
- 82,
701
- 188
702
- ],
703
- "accounts": [
704
- {
705
- "name": "queue"
706
- },
707
- {
708
- "name": "authority",
709
- "writable": true,
710
- "signer": true
711
- },
712
- {
713
- "name": "player_status",
714
- "writable": true,
715
- "pda": {
716
- "seeds": [
717
- {
718
- "kind": "const",
719
- "value": [
720
- 115,
721
- 116,
722
- 97,
723
- 116,
724
- 117,
725
- 115
726
- ]
727
- },
728
- {
729
- "kind": "account",
730
- "path": "player_game_account"
731
- }
732
- ]
733
- }
734
- },
735
- {
736
- "name": "player",
737
- "writable": true
738
- },
739
- {
740
- "name": "player_game_account"
741
- }
742
- ],
743
- "args": []
744
- }
745
- ],
746
- "accounts": [
747
- {
748
- "name": "MockPlayer",
749
- "discriminator": [
750
- 128,
751
- 205,
752
- 19,
753
- 217,
754
- 238,
755
- 150,
756
- 18,
757
- 255
758
- ]
759
- },
760
- {
761
- "name": "PlayerStatus",
762
- "discriminator": [
763
- 28,
764
- 122,
765
- 125,
766
- 124,
767
- 167,
768
- 143,
769
- 216,
770
- 176
771
- ]
772
- },
773
- {
774
- "name": "QueueHead",
775
- "discriminator": [
776
- 252,
777
- 245,
778
- 9,
779
- 149,
780
- 18,
781
- 35,
782
- 210,
783
- 142
784
- ]
785
- },
786
- {
787
- "name": "QueuePage",
788
- "discriminator": [
789
- 44,
790
- 9,
791
- 254,
792
- 108,
793
- 121,
794
- 225,
795
- 80,
796
- 69
797
- ]
798
- }
799
- ],
800
- "events": [
801
- {
802
- "name": "MatchFound",
803
- "discriminator": [
804
- 73,
805
- 161,
806
- 70,
807
- 145,
808
- 232,
809
- 249,
810
- 72,
811
- 211
812
- ]
813
- }
814
- ],
815
- "errors": [
816
- {
817
- "code": 6000,
818
- "name": "InvalidAccountOwner",
819
- "msg": "Account owner is invalid"
820
- },
821
- {
822
- "code": 6001,
823
- "name": "QueueFull",
824
- "msg": "Queue is full"
825
- },
826
- {
827
- "code": 6002,
828
- "name": "AccountTooSmall",
829
- "msg": "Account data too small for ELO offset"
830
- },
831
- {
832
- "code": 6003,
833
- "name": "InvalidEloType",
834
- "msg": "Invalid ELO type configuration"
835
- },
836
- {
837
- "code": 6004,
838
- "name": "IndexOutOfBounds",
839
- "msg": "Page index out of bounds"
840
- }
841
- ],
842
- "types": [
843
- {
844
- "name": "MatchFound",
845
- "type": {
846
- "kind": "struct",
847
- "fields": [
848
- {
849
- "name": "queue",
850
- "type": "pubkey"
851
- },
852
- {
853
- "name": "player_a",
854
- "type": "pubkey"
855
- },
856
- {
857
- "name": "player_b",
858
- "type": "pubkey"
859
- },
860
- {
861
- "name": "elo_a",
862
- "type": "u64"
863
- },
864
- {
865
- "name": "elo_b",
866
- "type": "u64"
867
- },
868
- {
869
- "name": "timestamp",
870
- "type": "i64"
871
- }
872
- ]
873
- }
874
- },
875
- {
876
- "name": "MockPlayer",
877
- "type": {
878
- "kind": "struct",
879
- "fields": [
880
- {
881
- "name": "elo",
882
- "type": "u64"
883
- }
884
- ]
885
- }
886
- },
887
- {
888
- "name": "PlayerEntry",
889
- "type": {
890
- "kind": "struct",
891
- "fields": [
892
- {
893
- "name": "authority",
894
- "type": "pubkey"
895
- },
896
- {
897
- "name": "account",
898
- "type": "pubkey"
899
- },
900
- {
901
- "name": "elo",
902
- "type": "u64"
903
- },
904
- {
905
- "name": "joined_at",
906
- "type": "i64"
907
- }
908
- ]
909
- }
910
- },
911
- {
912
- "name": "PlayerStatus",
913
- "type": {
914
- "kind": "struct",
915
- "fields": [
916
- {
917
- "name": "player",
918
- "type": "pubkey"
919
- },
920
- {
921
- "name": "queue",
922
- "type": "pubkey"
923
- },
924
- {
925
- "name": "in_match",
926
- "type": "bool"
927
- },
928
- {
929
- "name": "joined_at",
930
- "type": "i64"
931
- },
932
- {
933
- "name": "bump",
934
- "type": "u8"
935
- }
936
- ]
937
- }
938
- },
939
- {
940
- "name": "QueueConfig",
941
- "type": {
942
- "kind": "struct",
943
- "fields": [
944
- {
945
- "name": "match_threshold",
946
- "type": "u32"
947
- },
948
- {
949
- "name": "search_window",
950
- "type": "u32"
951
- },
952
- {
953
- "name": "reserved",
954
- "type": {
955
- "array": [
956
- "u8",
957
- 64
958
- ]
959
- }
960
- }
961
- ]
962
- }
963
- },
964
- {
965
- "name": "QueueHead",
966
- "type": {
967
- "kind": "struct",
968
- "fields": [
969
- {
970
- "name": "authority",
971
- "type": "pubkey"
972
- },
973
- {
974
- "name": "tenant_program_id",
975
- "type": "pubkey"
976
- },
977
- {
978
- "name": "config",
979
- "type": {
980
- "defined": {
981
- "name": "QueueConfig"
982
- }
983
- }
984
- },
985
- {
986
- "name": "capacity",
987
- "type": "u16"
988
- },
989
- {
990
- "name": "page_size",
991
- "type": "u8"
992
- },
993
- {
994
- "name": "write_page_index",
995
- "type": "u64"
996
- },
997
- {
998
- "name": "read_page_index",
999
- "type": "u64"
1000
- },
1001
- {
1002
- "name": "bump",
1003
- "type": "u8"
1004
- }
1005
- ]
1006
- }
1007
- },
1008
- {
1009
- "name": "QueuePage",
1010
- "type": {
1011
- "kind": "struct",
1012
- "fields": [
1013
- {
1014
- "name": "players",
1015
- "type": {
1016
- "vec": {
1017
- "defined": {
1018
- "name": "PlayerEntry"
1019
- }
1020
- }
1021
- }
1022
- }
1023
- ]
1024
- }
1025
- }
1026
- ]
1027
- }