@opexa/portal-sdk 0.0.40 → 0.0.42
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.
- package/dist/index.js +61 -61
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +433 -520
- package/dist/index.mjs.map +1 -1
- package/dist/sdk/sdk.d.ts +11 -15
- package/dist/sdk/transformer.d.ts +3 -0
- package/dist/services/index.d.ts +3 -0
- package/dist/services/types.d.ts +1 -1
- package/dist/utils/mobile-number.d.ts +11 -0
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
(function(y,
|
|
1
|
+
(function(y,l){typeof exports=="object"&&typeof module<"u"?l(exports,require("@opexa/object-id")):typeof define=="function"&&define.amd?define(["exports","@opexa/object-id"],l):(y=typeof globalThis<"u"?globalThis:y||self,l(y.sdk={},y.objectId))})(this,function(y,l){"use strict";var $t=Object.defineProperty;var Ot=(y,l,g)=>l in y?$t(y,l,{enumerable:!0,configurable:!0,writable:!0,value:g}):y[l]=g;var m=(y,l,g)=>Ot(y,typeof l!="symbol"?l+"":l,g);const g={Account:8,Deposit:9,Withdrawal:14,Verification:15,File:16,Game:203,GameSession:204,MayaSession:230};function o(n,...e){let t="";for(const[r,a]of n.entries()){const s=e.at(r)??"";t=`${t}${a}${s}`}return t.trim()}const V=o`
|
|
2
2
|
fragment FileFragment on File {
|
|
3
3
|
id
|
|
4
4
|
url
|
|
5
5
|
status
|
|
6
6
|
dateTimeCreated
|
|
7
7
|
}
|
|
8
|
-
`,
|
|
9
|
-
${
|
|
8
|
+
`,ve=o`
|
|
9
|
+
${V}
|
|
10
10
|
|
|
11
11
|
query File($id: ObjectId!) {
|
|
12
12
|
node(id: $id) {
|
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
}
|
|
16
16
|
}
|
|
17
17
|
}
|
|
18
|
-
`,
|
|
18
|
+
`,Me=o`
|
|
19
19
|
mutation UploadPrivateImageFile($input: UploadFileInput!) {
|
|
20
20
|
uploadPrivateImageFile(input: $input) {
|
|
21
21
|
... on FileFormatNotSupportedError {
|
|
@@ -29,7 +29,7 @@
|
|
|
29
29
|
}
|
|
30
30
|
}
|
|
31
31
|
}
|
|
32
|
-
`,
|
|
32
|
+
`,Ne=o`
|
|
33
33
|
query Wallet {
|
|
34
34
|
wallet {
|
|
35
35
|
id
|
|
@@ -39,7 +39,7 @@
|
|
|
39
39
|
dateTimeLastUpdated
|
|
40
40
|
}
|
|
41
41
|
}
|
|
42
|
-
`,
|
|
42
|
+
`,Ie=o`
|
|
43
43
|
query PointsWallet {
|
|
44
44
|
pointsWallet {
|
|
45
45
|
id
|
|
@@ -48,7 +48,7 @@
|
|
|
48
48
|
dateTimeCreated
|
|
49
49
|
}
|
|
50
50
|
}
|
|
51
|
-
`,
|
|
51
|
+
`,De=o`
|
|
52
52
|
mutation PointsToCashConversion($input: PointsToCashConversionInput!) {
|
|
53
53
|
pointsToCashConversion(input: $input) {
|
|
54
54
|
... on InsufficientPointsError {
|
|
@@ -56,7 +56,7 @@
|
|
|
56
56
|
}
|
|
57
57
|
}
|
|
58
58
|
}
|
|
59
|
-
`,
|
|
59
|
+
`,Re=o`
|
|
60
60
|
query PointsWalletTransactions(
|
|
61
61
|
$first: Int
|
|
62
62
|
$after: Cursor
|
|
@@ -84,7 +84,7 @@
|
|
|
84
84
|
}
|
|
85
85
|
}
|
|
86
86
|
}
|
|
87
|
-
`,
|
|
87
|
+
`,K=o`
|
|
88
88
|
query Games($first: Int, $after: Cursor, $filter: GameFilterInput) {
|
|
89
89
|
games(first: $first, after: $after, filter: $filter) {
|
|
90
90
|
edges {
|
|
@@ -105,7 +105,7 @@
|
|
|
105
105
|
}
|
|
106
106
|
}
|
|
107
107
|
}
|
|
108
|
-
`,
|
|
108
|
+
`,z=o`
|
|
109
109
|
query GamesByName($first: Int, $search: String!, $filter: GameFilterInput) {
|
|
110
110
|
gamesByName(first: $first, search: $search, filter: $filter) {
|
|
111
111
|
... on Game {
|
|
@@ -116,7 +116,7 @@
|
|
|
116
116
|
}
|
|
117
117
|
}
|
|
118
118
|
}
|
|
119
|
-
`,
|
|
119
|
+
`,J=o`
|
|
120
120
|
query GameSession($id: ObjectId!) {
|
|
121
121
|
node(id: $id) {
|
|
122
122
|
... on GameSession {
|
|
@@ -128,7 +128,7 @@
|
|
|
128
128
|
}
|
|
129
129
|
}
|
|
130
130
|
}
|
|
131
|
-
`,
|
|
131
|
+
`,X=o`
|
|
132
132
|
mutation CreateGameSession($input: CreateGameSessionInput!) {
|
|
133
133
|
createGameSession(input: $input) {
|
|
134
134
|
... on GameDoesNotExistError {
|
|
@@ -136,11 +136,11 @@
|
|
|
136
136
|
}
|
|
137
137
|
}
|
|
138
138
|
}
|
|
139
|
-
`,
|
|
139
|
+
`,Pe=o`
|
|
140
140
|
mutation EndGameSession($input: EndGameSessionInput!) {
|
|
141
141
|
endGameSession(input: $input)
|
|
142
142
|
}
|
|
143
|
-
`,
|
|
143
|
+
`,Ge=o`
|
|
144
144
|
mutation EndGameSession($input: EndGameSessionInput!) {
|
|
145
145
|
endGameSession(input: $input) {
|
|
146
146
|
... on GameSessionDoesNotExistError {
|
|
@@ -154,7 +154,7 @@
|
|
|
154
154
|
}
|
|
155
155
|
}
|
|
156
156
|
}
|
|
157
|
-
`,
|
|
157
|
+
`,xe=o`
|
|
158
158
|
query Announcements($first: Int, $after: Cursor, $filter: AnnouncementFilterInput) {
|
|
159
159
|
announcements(first: $first, after: $after, filter: $filter) {
|
|
160
160
|
edges {
|
|
@@ -180,7 +180,7 @@
|
|
|
180
180
|
}
|
|
181
181
|
}
|
|
182
182
|
}
|
|
183
|
-
|
|
183
|
+
`,$e=o`
|
|
184
184
|
query WithdrawalRecords($first: Int, $after: Cursor, $filter: WithdrawalRecordFilterInput) {
|
|
185
185
|
member {
|
|
186
186
|
withdrawalRecords(first: $first, after: $after, filter: $filter) {
|
|
@@ -270,7 +270,7 @@
|
|
|
270
270
|
}
|
|
271
271
|
}
|
|
272
272
|
}
|
|
273
|
-
|
|
273
|
+
`,We=o`
|
|
274
274
|
mutation CreateMayaWithdrawal($input: CreateMayaWithdrawalInput!) {
|
|
275
275
|
createMayaWithdrawal(input: $input) {
|
|
276
276
|
... on AccountNotVerifiedError {
|
|
@@ -293,7 +293,7 @@
|
|
|
293
293
|
}
|
|
294
294
|
}
|
|
295
295
|
}
|
|
296
|
-
`,
|
|
296
|
+
`,Ue=o`
|
|
297
297
|
mutation CreateMayaAppWithdrawal($input: CreateMayaAppWithdrawalInput!) {
|
|
298
298
|
createMayaAppWithdrawal(input: $input) {
|
|
299
299
|
... on AccountNotVerifiedError {
|
|
@@ -336,11 +336,11 @@
|
|
|
336
336
|
}
|
|
337
337
|
}
|
|
338
338
|
}
|
|
339
|
-
`,
|
|
339
|
+
`,qe=o`
|
|
340
340
|
query RemainingDailyWithdrawalsCount {
|
|
341
341
|
remainingDailyWithdrawalsCount
|
|
342
342
|
}
|
|
343
|
-
`,
|
|
343
|
+
`,Fe=o`
|
|
344
344
|
query DepositRecords($after: Cursor, $first: Int, $filter: DepositRecordFilterInput) {
|
|
345
345
|
member {
|
|
346
346
|
depositRecords(after: $after, first: $first, filter: $filter) {
|
|
@@ -369,7 +369,7 @@
|
|
|
369
369
|
}
|
|
370
370
|
}
|
|
371
371
|
}
|
|
372
|
-
`,
|
|
372
|
+
`,Le=o`
|
|
373
373
|
mutation CreateGCashDeposit($input: CreateGCashDepositInput!) {
|
|
374
374
|
createGCashDeposit(input: $input) {
|
|
375
375
|
... on DepositPromoMaximumAmountExceededError {
|
|
@@ -398,7 +398,7 @@
|
|
|
398
398
|
}
|
|
399
399
|
}
|
|
400
400
|
}
|
|
401
|
-
`,
|
|
401
|
+
`,Ve=o`
|
|
402
402
|
mutation CreateMayaDeposit($input: CreateMayaDepositInput!) {
|
|
403
403
|
createMayaDeposit(input: $input) {
|
|
404
404
|
... on DepositPromoMaximumAmountExceededError {
|
|
@@ -427,7 +427,7 @@
|
|
|
427
427
|
}
|
|
428
428
|
}
|
|
429
429
|
}
|
|
430
|
-
`,
|
|
430
|
+
`,Ye=o`
|
|
431
431
|
mutation CreateMayaAppDeposit($input: CreateMayaAppDepositInput!) {
|
|
432
432
|
createMayaAppDeposit(input: $input) {
|
|
433
433
|
... on DepositPromoMaximumAmountExceededError {
|
|
@@ -456,7 +456,7 @@
|
|
|
456
456
|
}
|
|
457
457
|
}
|
|
458
458
|
}
|
|
459
|
-
`,
|
|
459
|
+
`,je=o`
|
|
460
460
|
query Deposit($id: ObjectId!) {
|
|
461
461
|
node(id: $id) {
|
|
462
462
|
... on GCashDeposit {
|
|
@@ -488,13 +488,13 @@
|
|
|
488
488
|
}
|
|
489
489
|
}
|
|
490
490
|
}
|
|
491
|
-
`,
|
|
491
|
+
`,He=o`
|
|
492
492
|
query DepositsCount {
|
|
493
493
|
member {
|
|
494
494
|
depositsCount
|
|
495
495
|
}
|
|
496
496
|
}
|
|
497
|
-
`,
|
|
497
|
+
`,Qe=o`
|
|
498
498
|
query BetRecords($first: Int, $after: Cursor, $filter: BetRecordFilterInput) {
|
|
499
499
|
member {
|
|
500
500
|
betRecords(first: $first, after: $after, filter: $filter) {
|
|
@@ -534,7 +534,7 @@
|
|
|
534
534
|
}
|
|
535
535
|
}
|
|
536
536
|
}
|
|
537
|
-
`,
|
|
537
|
+
`,Ke=o`
|
|
538
538
|
query LatestBetRecords {
|
|
539
539
|
latestBetRecords {
|
|
540
540
|
id
|
|
@@ -553,7 +553,7 @@
|
|
|
553
553
|
dateTimeCreated
|
|
554
554
|
}
|
|
555
555
|
}
|
|
556
|
-
`,
|
|
556
|
+
`,ze=o`
|
|
557
557
|
query TransactionRecords($first: Int, $after: Cursor, $filter: TransactionRecordFilter) {
|
|
558
558
|
member {
|
|
559
559
|
transactionRecords(first: $first, after: $after, filter: $filter) {
|
|
@@ -579,8 +579,8 @@
|
|
|
579
579
|
}
|
|
580
580
|
}
|
|
581
581
|
}
|
|
582
|
-
`,
|
|
583
|
-
${
|
|
582
|
+
`,Y=o`
|
|
583
|
+
${V}
|
|
584
584
|
|
|
585
585
|
fragment PromoFragment on Promo {
|
|
586
586
|
id
|
|
@@ -598,24 +598,24 @@
|
|
|
598
598
|
dateTimeCreated
|
|
599
599
|
dateTimeLastUpdated
|
|
600
600
|
}
|
|
601
|
-
`,
|
|
602
|
-
${
|
|
601
|
+
`,Je=o`
|
|
602
|
+
${Y}
|
|
603
603
|
|
|
604
604
|
query Promos {
|
|
605
605
|
promos {
|
|
606
606
|
...PromoFragment
|
|
607
607
|
}
|
|
608
608
|
}
|
|
609
|
-
`,
|
|
610
|
-
${
|
|
609
|
+
`,Xe=o`
|
|
610
|
+
${Y}
|
|
611
611
|
|
|
612
612
|
query AvailablePromos($filter: PromoFilterInput) {
|
|
613
613
|
availablePromos(filter: $filter) {
|
|
614
614
|
...PromoFragment
|
|
615
615
|
}
|
|
616
616
|
}
|
|
617
|
-
`,
|
|
618
|
-
${
|
|
617
|
+
`,Z=o`
|
|
618
|
+
${V}
|
|
619
619
|
|
|
620
620
|
fragment CashbackFragment on Cashback {
|
|
621
621
|
id
|
|
@@ -631,16 +631,16 @@
|
|
|
631
631
|
dateTimeCreated
|
|
632
632
|
dateTimeLastUpdated
|
|
633
633
|
}
|
|
634
|
-
`,
|
|
635
|
-
${
|
|
634
|
+
`,Ze=o`
|
|
635
|
+
${Z}
|
|
636
636
|
|
|
637
637
|
query Cashbacks {
|
|
638
638
|
cashbacks {
|
|
639
639
|
...CashbackFragment
|
|
640
640
|
}
|
|
641
641
|
}
|
|
642
|
-
`,
|
|
643
|
-
${
|
|
642
|
+
`,et=o`
|
|
643
|
+
${Y}
|
|
644
644
|
|
|
645
645
|
query Bonus {
|
|
646
646
|
bonus {
|
|
@@ -668,8 +668,8 @@
|
|
|
668
668
|
dateTimeLastUpdated
|
|
669
669
|
}
|
|
670
670
|
}
|
|
671
|
-
`,
|
|
672
|
-
${
|
|
671
|
+
`,tt=o`
|
|
672
|
+
${Z}
|
|
673
673
|
|
|
674
674
|
query CashbackBonuses {
|
|
675
675
|
cashbackBonuses {
|
|
@@ -682,7 +682,7 @@
|
|
|
682
682
|
dateTimeLastUpdated
|
|
683
683
|
}
|
|
684
684
|
}
|
|
685
|
-
`,
|
|
685
|
+
`,rt=o`
|
|
686
686
|
mutation ClaimCashbackBonus($input: ClaimCashbackBonusInput!) {
|
|
687
687
|
claimCashbackBonus(input: $input) {
|
|
688
688
|
... on CashbackBonusDoesNotExistError {
|
|
@@ -690,13 +690,13 @@
|
|
|
690
690
|
}
|
|
691
691
|
}
|
|
692
692
|
}
|
|
693
|
-
`,
|
|
693
|
+
`,at=o`
|
|
694
694
|
query Member {
|
|
695
695
|
member {
|
|
696
696
|
dateTimeLastActive
|
|
697
697
|
}
|
|
698
698
|
}
|
|
699
|
-
`,
|
|
699
|
+
`,nt=o`
|
|
700
700
|
query MemberAccount {
|
|
701
701
|
memberAccount: self {
|
|
702
702
|
... on MemberAccount {
|
|
@@ -720,8 +720,8 @@
|
|
|
720
720
|
}
|
|
721
721
|
}
|
|
722
722
|
}
|
|
723
|
-
`,
|
|
724
|
-
${
|
|
723
|
+
`,ot=o`
|
|
724
|
+
${V}
|
|
725
725
|
|
|
726
726
|
query MemberVerification {
|
|
727
727
|
memberAccount: self {
|
|
@@ -744,7 +744,7 @@
|
|
|
744
744
|
}
|
|
745
745
|
}
|
|
746
746
|
}
|
|
747
|
-
`,
|
|
747
|
+
`,it=o`
|
|
748
748
|
mutation RegisterMemberAccount(
|
|
749
749
|
$input: RegisterMemberAccountInput!
|
|
750
750
|
$referralCode: String
|
|
@@ -780,7 +780,7 @@
|
|
|
780
780
|
}
|
|
781
781
|
}
|
|
782
782
|
}
|
|
783
|
-
`,
|
|
783
|
+
`,st=o`
|
|
784
784
|
mutation RegisterMayaMemberAccount($input: RegisterMayaMemberAccountInput!) {
|
|
785
785
|
registerMayaMemberAccount(input: $input) {
|
|
786
786
|
... on AccountNameNotAvailableError {
|
|
@@ -788,7 +788,7 @@
|
|
|
788
788
|
}
|
|
789
789
|
}
|
|
790
790
|
}
|
|
791
|
-
`,
|
|
791
|
+
`,ct=o`
|
|
792
792
|
mutation UpdateMemberAccount($input: UpdateMemberAccountInput!) {
|
|
793
793
|
updateMemberAccount(input: $input) {
|
|
794
794
|
... on AccountNameNotAvailableError {
|
|
@@ -814,7 +814,7 @@
|
|
|
814
814
|
}
|
|
815
815
|
}
|
|
816
816
|
}
|
|
817
|
-
`,
|
|
817
|
+
`,mt=o`
|
|
818
818
|
mutation ResetPassword($input: ResetPasswordInput!, $verificationCode: String) {
|
|
819
819
|
resetPassword(input: $input, verificationCode: $verificationCode) {
|
|
820
820
|
... on AccountNotFoundError {
|
|
@@ -829,7 +829,7 @@
|
|
|
829
829
|
mutation DeleteMemberAccount($input: DeleteMemberAccountInput!) {
|
|
830
830
|
deleteMemberAccount(input: $input)
|
|
831
831
|
}
|
|
832
|
-
`,
|
|
832
|
+
`,ut=o`
|
|
833
833
|
mutation VerifyMobileNumber($input: VerifyMobileNumberInput!) {
|
|
834
834
|
verifyMobileNumber(input: $input) {
|
|
835
835
|
... on InvalidSMSVerificationCodeError {
|
|
@@ -840,7 +840,7 @@
|
|
|
840
840
|
}
|
|
841
841
|
}
|
|
842
842
|
}
|
|
843
|
-
`,
|
|
843
|
+
`,lt=o`
|
|
844
844
|
mutation CreateMemberVerification($input: CreateMemberVerificationInput!) {
|
|
845
845
|
createMemberVerification(input: $input) {
|
|
846
846
|
... on FileDoesNotExistError {
|
|
@@ -854,7 +854,7 @@
|
|
|
854
854
|
}
|
|
855
855
|
}
|
|
856
856
|
}
|
|
857
|
-
`,
|
|
857
|
+
`,pt=o`
|
|
858
858
|
mutation UpdateMemberVerification($input: UpdateMemberVerificationInput!) {
|
|
859
859
|
updateMemberVerification(input: $input) {
|
|
860
860
|
... on FileDoesNotExistError {
|
|
@@ -871,7 +871,7 @@
|
|
|
871
871
|
}
|
|
872
872
|
}
|
|
873
873
|
}
|
|
874
|
-
`,
|
|
874
|
+
`,ft=o`
|
|
875
875
|
query ProfileCompletion {
|
|
876
876
|
profileCompletion {
|
|
877
877
|
completionPercentage
|
|
@@ -882,7 +882,7 @@
|
|
|
882
882
|
accountPassword
|
|
883
883
|
}
|
|
884
884
|
}
|
|
885
|
-
`,
|
|
885
|
+
`,ht=o`
|
|
886
886
|
mutation SendVerificationCode($input: SendVerificationCodeInput!) {
|
|
887
887
|
sendVerificationCode(input: $input) {
|
|
888
888
|
... on InvalidPlatformError {
|
|
@@ -893,7 +893,7 @@
|
|
|
893
893
|
}
|
|
894
894
|
}
|
|
895
895
|
}
|
|
896
|
-
`,
|
|
896
|
+
`,wt=o`
|
|
897
897
|
fragment DepositGatewaySettingsCoreData on DepositGatewaySettings {
|
|
898
898
|
minimumAmount
|
|
899
899
|
maximumAmount
|
|
@@ -947,7 +947,7 @@
|
|
|
947
947
|
multiplier
|
|
948
948
|
}
|
|
949
949
|
}
|
|
950
|
-
`,
|
|
950
|
+
`,yt=o`
|
|
951
951
|
query MayaSession($id: ObjectId!) {
|
|
952
952
|
mayaSession(id: $id) {
|
|
953
953
|
id
|
|
@@ -955,11 +955,11 @@
|
|
|
955
955
|
dateTimeCreated
|
|
956
956
|
}
|
|
957
957
|
}
|
|
958
|
-
`,
|
|
958
|
+
`,gt=o`
|
|
959
959
|
mutation ValidateMayaSession {
|
|
960
960
|
validateMayaSession: validMayaSession
|
|
961
961
|
}
|
|
962
|
-
`,
|
|
962
|
+
`,St=o`
|
|
963
963
|
query ActivityRecords($after: Cursor, $first: Int, $filter: ActivityRecordsFilterInput) {
|
|
964
964
|
member {
|
|
965
965
|
activityRecords(after: $after, first: $first, filter: $filter) {
|
|
@@ -984,5 +984,5 @@
|
|
|
984
984
|
}
|
|
985
985
|
}
|
|
986
986
|
}
|
|
987
|
-
`;function d(n){return{name:n,message:{AccountNameNotAvailableError:"Username is no longer available",AccountNotFoundError:"Account does not exist",AccountNotVerifiedError:"Account is not verified",CashbackBonusDoesNotExistError:"Cashback bonus does not exists",DepositPromoMaximumAmountExceededError:"Deposit amount exceeds maximum amount",DepositPromoMinimumAmountNotMetError:"Deposit amount does not meet minimum amount",EmailAddressNotAvailableError:"Email is no longer available",FileDoesNotExistError:"File does not exist",FileFormatNotSupportedError:"File format is not supported",FileNameTooLongError:"File name is too long",FileNotReadyError:"File is not yet ready",FileSizeTooBigError:"File size is too big",GameDoesNotExistError:"Game does not exist",HasActiveBonusError:"Account has active bonus",InsufficientPointsError:"Insufficient points",InvalidPlatformError:"Invalid platform",InvalidReCAPTCHAResponseError:"Invalid reCAPTCHA",InvalidSMSVerificationCodeError:"Invalid SMS verification code",InvalidTransactionPasswordError:"Invalid transaction password",InvalidVerificationCodeError:"Invalid verification code",InvalidWithdrawalAmountError:"Invalid withdrawal amount",MaximumDepositAmountExceededError:"Maximum deposit amount exceeded",MemberVerificationAlreadyApprovedError:"Member verification is already approved",MemberVerificationAlreadyExistsError:"Member verification already exists",MemberVerificationDoesNotExistError:"Member verification does not exist",MinimumAgeRequirementError:"Minimum age requirement not met",MinimumDepositAmountNotMetError:"Minimum deposit amount not met",MinimumFirstDepositAmountNotMetError:"Minimum first deposit amount not met",MobileNumberAlreadyVerifiedError:"Mobile number is already verified",MobileNumberNotAvailableError:"Mobile number is no longer available",MobileNumberNotVerifiedError:"Mobile number is not verified",NickNameNotAvailableError:"Nickname is no longer available",NotEnoughBalanceError:"Insufficient balance",NotReadyToSendVerficationCodeError:"Not ready to send verification code",PromoNotEnabledError:"Promo is not enabled",RealNameAlreadySetError:"Real name is already set",ValidIdAlreadySetError:"Valid ID is already set",WalletDoesNotExistError:"Wallet does not exist",WithdrawalDailyLimitExceededError:"Daily withdrawal limit exceeded",GameProviderError:"Game provider error",GameSessionAlreadyClosedError:"Game session is already closed",GameSessionDoesNotExistError:"Game session does not exist",AccountBlacklisted:"Account is blacklisted",AccountNotFound:"Account not found",InvalidToken:"Invalid token",InvalidTokenOrSecretAnswer:"Invalid token or secret answer",SessionExpired:"Session expired"}[n]}}class Et{constructor(e){m(this,"client");this.client=e}async memberAccount(){const e=await this.client.request(at);return e.ok?{ok:!0,data:e.data.memberAccount}:e}async registerMemberAccount(e){const t=await this.client.request(ot,e);return t.ok?t.data.registerMemberAccount?{ok:!1,error:d(t.data.registerMemberAccount.__typename)}:{ok:!0}:t}async updateMemberAccount(e){const t=await this.client.request(st,e);return t.ok?t.data.updateMemberAccount?{ok:!1,error:d(t.data.updateMemberAccount.__typename)}:{ok:!0}:t}async deleteMemberAccount(e){const t=await this.client.request(dt,e);return t.ok?t.data.deleteMemberAccount?{ok:!0}:{ok:!1,error:{name:"UnknownError",message:"Something went wrong."}}:t}async resetPassword(e){const t=await this.client.request(ct,e);return t.ok?t.data.resetPassword?{ok:!1,error:d(t.data.resetPassword.__typename)}:{ok:!0}:t}async profileCompletion(){const e=await this.client.request(pt);return e.ok?{ok:!0,data:e.data.profileCompletion}:e}async platform(){return await this.client.request(ht)}async sendVerificationCode(e){const t=await this.client.request(ft,e);return t.ok?t.data.sendVerificationCode?{ok:!1,error:d(t.data.sendVerificationCode.__typename)}:{ok:!0}:t}async verifyMobileNumber(e){const t=await this.client.request(mt,e);return t.ok?t.data.verifyMobileNumber?{ok:!1,error:d(t.data.verifyMobileNumber.__typename)}:{ok:!0}:t}async createMemberVerification(e){const t=await this.client.request(ut,e);return t.ok?t.data.createMemberVerification?{ok:!1,error:d(t.data.createMemberVerification.__typename)}:{ok:!0}:t}async updateMemberVerification(e){const t=await this.client.request(lt,e);return t.ok?t.data.updateMemberVerification?{ok:!1,error:d(t.data.updateMemberVerification.__typename)}:{ok:!0}:t}async memberVerification(){const e=await this.client.request(nt);return e.ok?{ok:!0,data:e.data.memberAccount.verification}:e}async announcements(e){const t=await this.client.request(Ge,e);return t.ok?{ok:!0,data:t.data.announcements}:t}async registerMayaMemberAccount(e){const t=await this.client.request(it,e);return t.ok?t.data.registerMayaMemberAccount?{ok:!1,error:d(t.data.registerMayaMemberAccount.__typename)}:{ok:!0}:t}}function w(n,e){const t=Y[n]?Y[n]:Y[500];return{name:t.name,message:e??t.message}}const Y={400:{name:"HttpBadRequest",message:"Bad Request"},401:{name:"HttpUnauthorized",message:"Unauthorized"},403:{name:"HttpForbidden",message:"Forbidden"},404:{name:"HttpNotFound",message:"Not Found"},408:{name:"HttpRequestTimeout",message:"Request Timeout"},429:{name:"HttpTooManyRequests",message:"Too Many Requests"},500:{name:"HttpInternalServerError",message:"Internal Server Error"}};class St{constructor(e){m(this,"url");m(this,"platform");this.url=e.url,this.platform=e.platform}async createSession(e){const t=new Headers({"Content-Type":"application/json","Platform-Code":this.platform,Role:"MEMBER"});if(e.name){const r=`${e.name}:${e.password}`,a=Buffer.from(r).toString("base64");t.set("Authorization",`Basic ${a}`)}if(e.mobileNumber){const r=`${e.mobileNumber}:${e.verificationCode}`,a=Buffer.from(r).toString("base64");t.set("Authorization",`MobileNumberOTP ${a}`)}e.sessionId&&t.set("Authorization",`Maya ${e.sessionId}`);try{const r=await fetch(`${this.url}/sessions`,{method:"POST",headers:t}),a=await r.json();return r.ok?{ok:!0,data:a}:a.code==="ACCOUNT_BLACKLISTED"?{ok:!1,error:d("AccountBlacklisted")}:{ok:!1,error:w(r.status)}}catch{return{ok:!1,error:w(500)}}}async authenticate(e){const t=new Headers({"Content-Type":"application/json","Platform-Code":this.platform,Role:"MEMBER"});if(e.type==="SECURITY_QUESTION"){t.set("Authorization",`Bearer ${e.token}`);try{const r=await fetch(`${this.url}/session/${e.token}/authenticate`,{method:"POST",headers:t,body:JSON.stringify({secretAnswer:e.secretAnswer})}),a=await r.json();return r.ok?{ok:!0,data:a}:r.status===401||r.status===403?{ok:!1,error:d("InvalidTokenOrSecretAnswer")}:{ok:!1,error:w(r.status)}}catch{return{ok:!1,error:w(500)}}}throw new Error("Invalid input 'type'")}async refreshSession(e){try{const t=await fetch(`${this.url}/session:refresh`,{method:"POST",headers:{"Content-Type":"application/json","Platform-Code":this.platform,Role:"MEMBER",Authorization:`Bearer ${e}`}}),r=await t.json();return t.ok?{ok:!0,data:r}:r.code==="ACCOUNT_BLACKLISTED"?{ok:!1,error:d("AccountBlacklisted")}:t.status===403||t.status===401?{ok:!1,error:d("InvalidToken")}:{ok:!1,error:w(t.status)}}catch{return{ok:!1,error:w(500)}}}async destroySession(e){try{const t=await fetch(`${this.url}/session`,{method:"DELETE",headers:{"Content-Type":"application/json","Platform-Code":this.platform,Role:"MEMBER",Authorization:`Bearer ${e}`}});return t.ok?{ok:!0}:{ok:!1,error:w(t.status)}}catch{return{ok:!1,error:w(500)}}}async verifySession(e){try{return(await fetch(`${this.url}/session`,{method:"GET",headers:{"Content-Type":"application/json","Platform-Code":this.platform,Role:"MEMBER",Authorization:`Bearer ${e}`}})).ok}catch{return!0}}}class bt{constructor(e){m(this,"client");this.client=e}async file(e){const t=await this.client.request(Te,e);return t.ok?{ok:!0,data:t.data.node}:t}async uploadPrivateImageFile(e){const t=await this.client.upload(ve,e);return t.ok?t.data.uploadPrivateImageFile?{ok:!1,error:d(t.data.uploadPrivateImageFile.__typename)}:{ok:!0}:t}}class At{constructor(e){m(this,"client");this.client=e}async betRecords(e){const t=await this.client.request(He,e);return t.ok?{ok:t.ok,data:t.data.member.betRecords}:t}async transactionRecords(e){const t=await this.client.request(Ke,e);return t.ok?{ok:t.ok,data:t.data.member.transactionRecords}:t}async withdrawalRecords(e){const t=await this.client.request(xe,e);return t.ok?{ok:t.ok,data:t.data.member.withdrawalRecords}:t}async depositRecords(e){const t=await this.client.request(qe,e);return t.ok?{ok:t.ok,data:t.data.member.depositRecords}:t}async depositsCount(){const e=await this.client.request(je);return e.ok?{ok:e.ok,data:e.data.member.depositsCount}:e}async member(){const e=await this.client.request(rt);return e.ok?{ok:e.ok,data:e.data.member}:e}async pointsWalletTransactions(e){const t=await this.client.request(De,e);return t.ok?{ok:t.ok,data:t.data.member.pointsWalletTransactions}:t}async activityRecords(e){const t=await this.client.request(gt,e);return t.ok?{ok:t.ok,data:t.data.member.activityRecords}:t}}class kt{constructor(e){m(this,"url");this.url=e.url}gameThumbnails(e){return[`${this.url}/images/${e.provider.toLowerCase()}/thumbnail-${e.id}.webp`,`${this.url}/images/${e.provider.toLowerCase()}/thumbnail-${e.provider.toLowerCase()}.webp`]}}class Z{constructor(e){m(this,"client");this.client=e}async promos(){const e=await this.client.request(ze);return e.ok?{ok:e.ok,data:e.data.promos}:e}async cashbacks(){const e=await this.client.request(Xe);return e.ok?{ok:e.ok,data:e.data.cashbacks}:e}async availablePromos(e){const t=await this.client.request(Je,e);return t.ok?{ok:t.ok,data:t.data.availablePromos}:t}async cashbackBonuses(){const e=await this.client.request(et);return e.ok?{ok:e.ok,data:e.data.cashbackBonuses}:e}async claimCashbackBonus(e){const t=await this.client.request(tt,e);return t.ok?t.data.claimCashbackBonus?{ok:!1,error:d(t.data.claimCashbackBonus.__typename)}:{ok:!0}:{ok:t.ok,error:t.error}}async bonus(){const e=await this.client.request(Ze);return e.ok?{ok:e.ok,data:e.data.bonus}:e}async wallet(){const e=await this.client.request(Me);return e.ok?{ok:e.ok,data:e.data.wallet}:e}async deposit(e){const t=await this.client.request(Ye,e);return t.ok?{ok:t.ok,data:t.data.node}:t}async createGCashDeposit(e){const t=await this.client.request(Fe,e);return t.ok?t.data.createGCashDeposit?{ok:!1,error:d(t.data.createGCashDeposit.__typename)}:{ok:!0}:t}async createMayaDeposit(e){const t=await this.client.request(Le,e);return t.ok?t.data.createMayaDeposit?{ok:!1,error:d(t.data.createMayaDeposit.__typename)}:{ok:!0}:t}async createMayaAppDeposit(e){const t=await this.client.request(Ve,e);return t.ok?t.data.createMayaAppDeposit?{ok:!1,error:d(t.data.createMayaAppDeposit.__typename)}:{ok:!0}:t}async createGCashWithdrawal(e){const t=await this.client.request(Oe,e);return t.ok?t.data.createGCashWithdrawal?{ok:!1,error:d(t.data.createGCashWithdrawal.__typename)}:{ok:!0}:t}async createMayaWithdrawal(e){const t=await this.client.request($e,e);return t.ok?t.data.createMayaWithdrawal?{ok:!1,error:d(t.data.createMayaWithdrawal.__typename)}:{ok:!0}:t}async createMayaAppWithdrawal(e){const t=await this.client.request(We,e);return t.ok?t.data.createMayaAppWithdrawal?{ok:!1,error:d(t.data.createMayaAppWithdrawal.__typename)}:{ok:!0}:t}async createBankWithdrawal(e){const t=await this.client.request(Be,e);return t.ok?t.data.createBankWithdrawal?{ok:!1,error:d(t.data.createBankWithdrawal.__typename)}:{ok:!0}:t}async remainingDailyWithdrawalsCount(){const e=await this.client.request(Ue);return e.ok?{ok:e.ok,data:e.data.remainingDailyWithdrawalsCount}:e}async pointsWallet(){const e=await this.client.request(Ne);return e.ok?{ok:e.ok,data:e.data.pointsWallet}:e}async pointsToCashConversion(e){const t=await this.client.request(Ie,e);return t.ok?t.data.pointsToCashConversion?{ok:!1,error:d(t.data.pointsToCashConversion.__typename)}:{ok:!0}:t}async mayaSession(e){const t=await this.client.request(wt,e);return t.ok?{ok:t.ok,data:t.data.mayaSession}:t}async games(e){const t=await this.client.request(Q,e);return t.ok?{ok:t.ok,data:t.data.games}:t}async gamesByName(e){const t=await this.client.request(K,e);return t.ok?{ok:t.ok,data:t.data.gamesByName}:t}async gameSession(e){const t=await this.client.request(z,e);return t.ok?{ok:!0,data:t.data.node}:t}async createGameSession(e){const t=await this.client.request(J,e);return t.ok?t.data.createGameSession?{ok:!1,error:d(t.data.createGameSession.__typename)}:{ok:!0}:t}async endGameSession(e){const t=await this.client.request(Re,e);return t.ok?t.data.endGameSession?{ok:!0}:{ok:!1,error:{name:"UnknownError",message:"Something went wrong."}}:t}async validateMayaSession(){const e=await this.client.request(yt);return e.ok?e.data.validateMayaSession?{ok:!0}:{ok:!1,error:{name:"UnknownError",message:"Something went wrong."}}:e}}class _t{constructor(e){m(this,"url");m(this,"siteId");m(this,"platformId");this.url=e.url,this.siteId=e.site,this.platformId=e.platform}async self(){const e=await this.getJson(`/sites/${this.siteId}`);return e.ok?{ok:!0,data:e.data.data}:e}async games(e){var a,s,c,f,l,h,S,p,T,v,M,N,I,D,R,P,G,x,O,$,W,B,U,q;const t=new URLSearchParams;e!=null&&e.first&&t.set("first",e.first.toString()),e!=null&&e.after&&t.set("after",e.after),e!=null&&e.search&&t.set("search",e.search),(s=(a=e==null?void 0:e.filter)==null?void 0:a.type)!=null&&s.equal&&t.set("filter[type][eq]",e.filter.type.equal),(f=(c=e==null?void 0:e.filter)==null?void 0:c.type)!=null&&f.notEqual&&t.set("filter[type][neq]",e.filter.type.notEqual),(h=(l=e==null?void 0:e.filter)==null?void 0:l.type)!=null&&h.in&&t.set("filter[type][in]",e.filter.type.in.join(",")),(p=(S=e==null?void 0:e.filter)==null?void 0:S.type)!=null&&p.notIn&&t.set("filter[type][nin]",e.filter.type.notIn.join(",")),(v=(T=e==null?void 0:e.filter)==null?void 0:T.provider)!=null&&v.equal&&t.set("filter[provider][eq]",e.filter.provider.equal),(N=(M=e==null?void 0:e.filter)==null?void 0:M.provider)!=null&&N.notEqual&&t.set("filter[provider][neq]",e.filter.provider.notEqual),(D=(I=e==null?void 0:e.filter)==null?void 0:I.provider)!=null&&D.in&&t.set("filter[provider][in]",e.filter.provider.in.join(",")),(P=(R=e==null?void 0:e.filter)==null?void 0:R.provider)!=null&&P.notIn&&t.set("filter[provider][nin]",e.filter.provider.notIn.join(",")),(x=(G=e==null?void 0:e.filter)==null?void 0:G.tags)!=null&&x.equal&&t.set("filter[tags][eq]",e.filter.tags.equal),($=(O=e==null?void 0:e.filter)==null?void 0:O.tags)!=null&&$.notEqual&&t.set("filter[tags][neq]",e.filter.tags.notEqual),(B=(W=e==null?void 0:e.filter)==null?void 0:W.tags)!=null&&B.in&&t.set("filter[tags][in]",e.filter.tags.in.join(",")),(q=(U=e==null?void 0:e.filter)==null?void 0:U.tags)!=null&&q.notIn&&t.set("filter[tags][nin]",e.filter.tags.notIn.join(","));const r=await this.getJson("/games",t);return r.ok?{ok:!0,data:{edges:r.data.data.map(F=>({node:F,cursor:F.cursor})),totalCount:r.data.totalCount??0,pageInfo:{hasNextPage:!!r.data.next,endCursor:r.data.next}}}:r}async game(e){var r;const t=await this.getJson(`/games/${e}`);return((r=t.error)==null?void 0:r.name)==="HttpNotFound"?{ok:!0,data:null}:t.ok?{ok:!0,data:t.data.data}:t}async getJson(e,t){const r=new Request(`${this.url}${e}?${(t==null?void 0:t.toString())??""}`,{method:"GET",headers:{Accept:"application/json","Content-Type":"application/json","Site-ID":this.siteId,"Platform-ID":this.platformId}});try{const a=await fetch(r);return a.ok?{ok:!0,data:await a.json()}:{ok:!1,error:w(a.status)}}catch{return{ok:!1,error:w(500)}}}}class Ct{constructor(e){m(this,"client");this.client=e}async games(e){const t=await this.client.request(Q,e);return t.ok?{ok:t.ok,data:t.data.games}:t}async gamesByName(e){const t=await this.client.request(K,e);return t.ok?{ok:t.ok,data:t.data.gamesByName}:t}async gameSession(e){const t=await this.client.request(z,e);return t.ok?{ok:!0,data:t.data.node}:t}async createGameSession(e){const t=await this.client.request(J,e);return t.ok?t.data.createGameSession?{ok:!1,error:d(t.data.createGameSession.__typename)}:{ok:!0}:t}async endGameSession(e){const t=await this.client.request(Pe,e);return t.ok?t.data.endGameSession?{ok:!1,error:d(t.data.endGameSession.__typename)}:{ok:!0}:t}}class Tt{constructor(e){m(this,"client");this.client=e}async latestBetRecords(){const e=await this.client.request(Qe);return e.ok?{ok:!0,data:e.data.latestBetRecords}:e}}function vt(n,e,t){return n<e?e:n>t?t:n}function j(n){return Object.prototype.toString.call(n)==="[object Object]"&&Object(n)===n}function Mt(n){const e=[];function t(r,a=[]){for(const s in r){const c=r[s];j(c)?t(c,[...a,s]):Array.isArray(c)?t(Nt(c),[...a,s]):e.push({key:[...a,s],value:c})}}return t(n),e}function Nt(n){return n.reduce((e,t,r)=>(e[r]=t,e),{})}class A{constructor(e,t){m(this,"url");m(this,"options");m(this,"middlewares");var a;const r=new Headers((a=t==null?void 0:t.fetchOptions)==null?void 0:a.headers);this.url=e,this.options={...t==null?void 0:t.fetchOptions,headers:r},this.middlewares=(t==null?void 0:t.middlewares)??[]}async request(e,t){const r=JSON.stringify({query:e,variables:t}),a=new Headers(this.options.headers);a.set("Content-Type","application/json"),a.set("Accept","application/json");const s=await this.runMiddlewares(new Request(this.url,{...this.options,body:r,headers:a,method:"POST"}));return await this.exec(s)}async upload(e,t){const r=this.createUploadBody(e,t),a=new Headers(this.options.headers);a.delete("Content-Type");const s=await this.runMiddlewares(new Request(this.url,{...this.options,body:r,headers:a,method:"POST"}));return await this.exec(s)}async exec(e){var t,r,a,s,c,f;try{const l=await fetch(e);if(!l.ok)return{ok:!1,error:w(l.status)};const h=await l.json(),S=h.data,p=(t=h.errors)==null?void 0:t.at(0);return p?((r=p.extensions)==null?void 0:r.code)==="FORBIDDEN"||((a=p.extensions)==null?void 0:a.code)==="ACCESS_TOKEN_EXPIRED"?{ok:!1,error:w(403,p.message)}:((s=p.extensions)==null?void 0:s.code)==="UNAUTHORIZED"?{ok:!1,error:w(401,p.message)}:((c=p.extensions)==null?void 0:c.code)==="BAD_USER_INPUT"||((f=p.extensions)==null?void 0:f.code)==="BAD_REQUEST"?{ok:!1,error:w(400,p.message)}:{ok:!1,error:w(500,p.message)}:{ok:!0,data:S}}catch{return{ok:!1,error:w(500)}}}async runMiddlewares(e){let t=e.clone();for(const r of this.middlewares)t=await r(t);return t}createUploadBody(e,t){const r=Mt(t).filter(c=>c.value instanceof File||c.value instanceof Blob),a=new FormData;a.append("operations",JSON.stringify({query:e,variables:t}));const s={};return r.forEach((c,f)=>{s[f.toString()]=[`variables.${c.key.join(".")}`]}),a.append("map",JSON.stringify(s)),r.forEach((c,f)=>{a.append(f.toString(),c.value)}),a}}async function b(n){const e=new TextEncoder().encode(n),t=await crypto.subtle.digest("SHA-256",e);return Array.from(new Uint8Array(t)).map(s=>s.toString(16).padStart(2,"0")).join("")}class ee{constructor(e){m(this,"enabled");this.enabled=(e==null?void 0:e.enabled)??!0}info(e){this.enabled&&console.log(`\x1B[34m[info] ${e}`)}warn(e){this.enabled&&console.log(`\x1B[33m[warn] ${e}`)}error(e){this.enabled&&console.log(`\x1B[31m[error] ${e}`)}success(e){this.enabled&&console.log(`\x1B[32m[success] ${e}`)}}function H(n){return new Date(n.getTime())}function k(n,e){const t=H(n);return t.setDate(t.getDate()+e),t}function _(n,e){const t=H(n);return t.setMinutes(t.getMinutes()+e),t}function te(n,e){return n.getTime()>e.getTime()}function re(n){return new Promise(e=>{setTimeout(e,n)})}function ae(n,e){const{until:t,interval:r=1e3,maxAttempt:a=3}=e;async function s(c,f){const l=f??a,h=await n(...c);return t(h)?h:l>1?(await re(r*((a-l)/2)),s(c,l-1)):h}return async(...c)=>await s(c)}function C(n,e){const t=H(n);return t.setMinutes(t.getMinutes()-e),t}class It{constructor(e){m(this,"logger");m(this,"storageKey","session");m(this,"authService");m(this,"walletService");m(this,"_refreshing",!1);this.authService=new St({url:e.authUrl,platform:e.platform}),this.walletService=new Z(new A(e.walletUrl,{middlewares:[t=>(t.headers.set("Platform",e.platform),t.headers.set("Role","MEMBER"),t)]})),this.logger=new ee({enabled:e.logs??!1})}get refreshing(){return this._refreshing}set refreshing(e){this._refreshing=e}async create(e){var a;if(this.isServer)return this.logger.warn("'localStorage' is not available on the server."),{ok:!1,error:{name:"UnknownError",message:"Server sign in is not supported."}};if(e.type==="MAYA"){const c=await ae(()=>this.walletService.mayaSession({id:e.sessionId}),{until:S=>{var p;return S.ok&&((p=S.data)==null?void 0:p.member)!=null},interval:1e3,maxAttempt:5})();if(!c.ok)return c;if(!((a=c.data)!=null&&a.member))return{ok:!1,error:{name:"HttpForbidden",message:"Forbidden"}};const l=await ae(()=>this.authService.createSession(e),{until:S=>S.ok,interval:1e3,maxAttempt:5})();if(!l.ok)return l;const h=new Date;return window.localStorage.setItem(this.storageKey,JSON.stringify({...l.data,accessTokenExpiresAt:_(h,8).getTime(),refreshTokenExpiresAt:C(k(h,30),2).getTime()})),{ok:!0,data:null}}if(e.type==="MOBILE_NUMBER"){const s=await this.authService.createSession(e);if(s.ok){const c=new Date;return window.localStorage.setItem(this.storageKey,JSON.stringify({...s.data,accessTokenExpiresAt:_(c,8).getTime(),refreshTokenExpiresAt:C(k(c,30),2).getTime()})),{ok:!0,data:null}}return s}const t=await this.authService.createSession(e);if(!t.ok)return t;if(t.data.authenticator)return{ok:!0,data:{authenticator:t.data.authenticator}};const r=new Date;return window.localStorage.setItem(this.storageKey,JSON.stringify({...t.data,accessTokenExpiresAt:_(r,8).getTime(),refreshTokenExpiresAt:C(k(r,30),2).getTime()})),{ok:!0,data:null}}async createFromAuthenticator(e){const t=await this.authService.authenticate(e);if(t.ok){const r=new Date;return this.isServer?this.logger.warn("'localStorage' is not available on the server."):window.localStorage.setItem(this.storageKey,JSON.stringify({...t.data,accessTokenExpiresAt:_(r,8).getTime(),refreshTokenExpiresAt:C(k(r,30),2).getTime()})),{ok:!0}}else return t}async get(){if(this.isServer)return this.logger.warn("'localStorage' is not available on the server."),{ok:!0,data:null};if(this.refreshing)return await re(1e3),await this.get();const e=window.localStorage.getItem(this.storageKey);if(!e)return{ok:!0,data:null};try{let t=JSON.parse(e),r=new Date;const a=new Date(t.accessTokenExpiresAt),s=new Date(t.refreshTokenExpiresAt);if(te(r,s))return this.logger.warn("Session expired. Logging out.."),window.localStorage.removeItem(this.storageKey),{ok:!1,error:{name:"SessionExpired",message:"Session expired."}};if(te(r,a)){this.logger.info("Refreshing session..."),this.refreshing=!0;const c=await this.authService.refreshSession(t.refreshToken);if(this.refreshing=!1,!c.ok)return this.logger.error(`Failed to refresh session: ${c.error.message}`),c.error.name==="InvalidToken"||c.error.name==="AccountBlacklisted"?(window.localStorage.removeItem(this.storageKey),{ok:!1,error:c.error}):(this.logger.warn("Old session returned."),{ok:!0,data:t});this.logger.success("Session refreshed!"),r=new Date,t={...t,...c.data,accessTokenExpiresAt:_(r,8).getTime(),refreshTokenExpiresAt:C(k(r,30),2).getTime()},window.localStorage.setItem(this.storageKey,JSON.stringify(t))}return{ok:!0,data:t}}catch{return{ok:!1,error:{name:"UnknownError",message:"Something went wrong."}}}}async destroy(){var t;if(this.isServer){this.logger.warn("'localStorage' is not available on the server.");return}const e=await this.get();(t=e.data)!=null&&t.accessToken&&await this.authService.destroySession(e.data.accessToken),window.localStorage.removeItem(this.storageKey)}async verify(){var r,a,s;if(this.isServer)return this.logger.warn("'localStorage' is not available on the server."),!0;const e=await this.get();if(((r=e.error)==null?void 0:r.name)==="InvalidToken"||((a=e.error)==null?void 0:a.name)==="SessionExpired"||((s=e.error)==null?void 0:s.name)==="AccountBlacklisted")return!1;if(!e.data)return!0;const t=await this.authService.verifySession(e.data.accessToken);return t||window.localStorage.removeItem(this.storageKey),t}get isServer(){return typeof window>"u"}}function E(n){const e={};for(const t in n){const r=n[t];if(r!==null&&r!==void 0){if(j(r)){e[t]=E(r);continue}if(Array.isArray(r)){e[t]=r.map(a=>j(a)?E(a):a);continue}e[t]=r}}return e}function i(n,e){if(typeof n=="number"&&!Number.isNaN(n))return n;if(typeof n=="string"){const t=Number.parseFloat(n);if(!Number.isNaN(t))return t}return e}class Dt{constructor(e){m(this,"staticService");const t=(e==null?void 0:e.environment)==="development";this.staticService=new kt({url:t?"https://static.development.opexa.io":"https://static.opexa.io"})}get transform(){return{site:this.site.bind(this),platform:this.platform.bind(this),account:this.account.bind(this),wallet:this.wallet.bind(this),verificationDetails:this.verificationDetails.bind(this),profileCompletion:this.profileCompletion.bind(this),announcement:this.announcement.bind(this),withdrawalRecord:this.withdrawalRecord.bind(this),deposit:this.deposit.bind(this),depositRecord:this.depositRecord.bind(this),betRecord:this.betRecord.bind(this),latestBetRecord:this.latestBetRecord.bind(this),transactionRecord:this.transactionRecord.bind(this),game:this.game.bind(this),game__next:this.game__next.bind(this),gameSession:this.gameSession.bind(this),promo:this.promo.bind(this),cashback:this.cashback.bind(this),bonus:this.bonus.bind(this),cashbackBonus:this.cashbackBonus.bind(this),file:this.file.bind(this),pointsWallet:this.pointsWallet.bind(this),pointsWalletTransaction:this.pointsWalletTransaction.bind(this),activityRecord:this.activityRecord.bind(this)}}site(e){const t={id:e.id,name:e.name,logo:e.logo??void 0};return E(t)}platform(e){var t,r,a,s,c,f,l,h,S,p,T,v,M,N,I,D,R,P,G,x,O,$,W,B,U,q,F,ne,oe,ie,se,ce,de,me,ue,le,pe,fe,he,we,ye,ge,Ee,Se,be,Ae,ke,_e,Ce;return{paymentSettings:{minimumFirstDepositAmount:i(e.minimumFirstDepositAmount),restrictWithdrawalsToVerifiedMembers:e.restrictWithdrawalsToVerifiedMembers,depositGateway:{bank:{androidEnabled:((t=e.bankDepositGatewaySettings)==null?void 0:t.androidEnabled)??!1,iosEnabled:((r=e.bankDepositGatewaySettings)==null?void 0:r.iosEnabled)??!1,webEnabled:((a=e.bankDepositGatewaySettings)==null?void 0:a.webEnabled)??!1,mobileWebEnabled:((s=e.bankDepositGatewaySettings)==null?void 0:s.mobileWebEnabled)??!1,minimumAmount:i((c=e.bankDepositGatewaySettings)==null?void 0:c.minimumAmount),maximumAmount:i((f=e.bankDepositGatewaySettings)==null?void 0:f.maximumAmount)},gcash:{androidEnabled:((l=e.gcashDepositGatewaySettings)==null?void 0:l.androidEnabled)??!1,iosEnabled:((h=e.gcashDepositGatewaySettings)==null?void 0:h.iosEnabled)??!1,webEnabled:((S=e.gcashDepositGatewaySettings)==null?void 0:S.webEnabled)??!1,mobileWebEnabled:((p=e.gcashDepositGatewaySettings)==null?void 0:p.mobileWebEnabled)??!1,minimumAmount:i((T=e.gcashDepositGatewaySettings)==null?void 0:T.minimumAmount),maximumAmount:i((v=e.gcashDepositGatewaySettings)==null?void 0:v.maximumAmount)},maya:{androidEnabled:((M=e.mayaDepositGatewaySettings)==null?void 0:M.androidEnabled)??!1,iosEnabled:((N=e.mayaDepositGatewaySettings)==null?void 0:N.iosEnabled)??!1,webEnabled:((I=e.mayaDepositGatewaySettings)==null?void 0:I.webEnabled)??!1,mobileWebEnabled:((D=e.mayaDepositGatewaySettings)==null?void 0:D.mobileWebEnabled)??!1,minimumAmount:i((R=e.mayaDepositGatewaySettings)==null?void 0:R.minimumAmount),maximumAmount:i((P=e.mayaDepositGatewaySettings)==null?void 0:P.maximumAmount)},mayaApp:{androidEnabled:((G=e.mayaAppDepositGatewaySettings)==null?void 0:G.androidEnabled)??!1,iosEnabled:((x=e.mayaAppDepositGatewaySettings)==null?void 0:x.iosEnabled)??!1,webEnabled:((O=e.mayaAppDepositGatewaySettings)==null?void 0:O.webEnabled)??!1,mobileWebEnabled:(($=e.mayaAppDepositGatewaySettings)==null?void 0:$.mobileWebEnabled)??!1,minimumAmount:i((W=e.mayaAppDepositGatewaySettings)==null?void 0:W.minimumAmount),maximumAmount:i((B=e.mayaAppDepositGatewaySettings)==null?void 0:B.maximumAmount)}},withdrawalGateway:{bank:{androidEnabled:((U=e.bankWithdrawalGatewaySettings)==null?void 0:U.androidEnabled)??!1,iosEnabled:((q=e.bankWithdrawalGatewaySettings)==null?void 0:q.iosEnabled)??!1,webEnabled:((F=e.bankWithdrawalGatewaySettings)==null?void 0:F.webEnabled)??!1,mobileWebEnabled:((ne=e.bankWithdrawalGatewaySettings)==null?void 0:ne.mobileWebEnabled)??!1,minimumAmount:i((oe=e.bankWithdrawalGatewaySettings)==null?void 0:oe.minimumAmount),maximumAmount:i((ie=e.bankWithdrawalGatewaySettings)==null?void 0:ie.maximumAmount)},gcash:{androidEnabled:((se=e.gcashWithdrawalGatewaySettings)==null?void 0:se.androidEnabled)??!1,iosEnabled:((ce=e.gcashWithdrawalGatewaySettings)==null?void 0:ce.iosEnabled)??!1,webEnabled:((de=e.gcashWithdrawalGatewaySettings)==null?void 0:de.webEnabled)??!1,mobileWebEnabled:((me=e.gcashWithdrawalGatewaySettings)==null?void 0:me.mobileWebEnabled)??!1,minimumAmount:i((ue=e.gcashWithdrawalGatewaySettings)==null?void 0:ue.minimumAmount),maximumAmount:i((le=e.gcashWithdrawalGatewaySettings)==null?void 0:le.maximumAmount,1e6)},maya:{androidEnabled:((pe=e.mayaWithdrawalGatewaySettings)==null?void 0:pe.androidEnabled)??!1,iosEnabled:((fe=e.mayaWithdrawalGatewaySettings)==null?void 0:fe.iosEnabled)??!1,webEnabled:((he=e.mayaWithdrawalGatewaySettings)==null?void 0:he.webEnabled)??!1,mobileWebEnabled:((we=e.mayaWithdrawalGatewaySettings)==null?void 0:we.mobileWebEnabled)??!1,minimumAmount:i((ye=e.mayaWithdrawalGatewaySettings)==null?void 0:ye.minimumAmount),maximumAmount:i((ge=e.mayaWithdrawalGatewaySettings)==null?void 0:ge.maximumAmount)},mayaApp:{androidEnabled:((Ee=e.mayaAppWithdrawalGatewaySettings)==null?void 0:Ee.androidEnabled)??!1,iosEnabled:((Se=e.mayaAppWithdrawalGatewaySettings)==null?void 0:Se.iosEnabled)??!1,webEnabled:((be=e.mayaAppWithdrawalGatewaySettings)==null?void 0:be.webEnabled)??!1,mobileWebEnabled:((Ae=e.mayaAppWithdrawalGatewaySettings)==null?void 0:Ae.mobileWebEnabled)??!1,minimumAmount:i((ke=e.mayaAppWithdrawalGatewaySettings)==null?void 0:ke.minimumAmount),maximumAmount:i((_e=e.mayaAppWithdrawalGatewaySettings)==null?void 0:_e.maximumAmount,1e6)}}},pointsClubSettings:{multiplier:i((Ce=e.pointsClubSettings)==null?void 0:Ce.multiplier,0)}}}account(e){const t={id:e.id,name:e.name,status:e.status,verified:e.verified,nickName:e.nickName??void 0,realName:e.realName??void 0,dateOfBirth:e.birthDay?new Date(e.birthDay):void 0,emailAddress:e.emailAddress??void 0,mobileNumber:e.mobileNumber??void 0,mobileNumberVerified:e.mobileNumberVerified??!1,mobileNumberVerificationRequired:e.mobileNumberVerificationRequired??!1,validId:e.validId||void 0,verificationStatus:e.verificationStatus,transactionPassword:e.transactionPassword,secretAnswerSubmitted:e.secretAnswerSubmitted??!1,dateTimeLastActive:e.dateTimeLastActive?new Date(e.dateTimeLastActive):void 0,dateTimeCreated:new Date(e.dateTimeCreated),dateTimeLastUpdated:new Date(e.dateTimeLastUpdated)};return E(t)}wallet(e){return{id:e.id,balance:i(e.balance,0),currency:e.currency,dateTimeCreated:new Date(e.dateTimeCreated),dateTimeLastUpdated:new Date(e.dateTimeLastUpdated)}}verificationDetails(e){return{id:e.id,status:e.status,address:e.address,nationality:e.nationality,natureOfWork:e.natureOfWork,placeOfBirth:e.placeOfBirth,sourceOfIncome:e.sourceOfIncome,selfieImage:this.file(e.selfieImage),idFrontImage:this.file(e.idFrontImage)}}profileCompletion(e){return{accountPassword:e.accountPassword??!1,accountVerification:e.accountVerification??!1,mobileNumberVerification:e.mobileNumberVerification??!1,personalInformation:e.personalInformation??!1,transactionPassword:e.transactionPassword??!1,completionPercentage:i(e,0)}}announcement(e){return{id:e.id,type:e.type,title:e.title,status:e.status,message:e.message,activationEndDateTime:new Date(e.activationEndDateTime),activationStartDateTime:new Date(e.activationStartDateTime),dateTimeCreated:new Date(e.dateTimeCreated),dateTimeLastUpdated:new Date(e.dateTimeLastUpdated)}}withdrawalRecord(e){const t={id:e.id,type:e.type,bank:e.bank,status:e.status,amount:i(e.amount,0),netAmount:i(e.netAmount,0),fee:i(e.fee,0),reference:e.reference??void 0,withdrawalNumber:e.withdrawalNumber,recipientMobileNumber:e.recipientMobileNumber??void 0,dateTimeConfirmed:e.dateTimeConfirmed?new Date(e.dateTimeConfirmed):void 0,dateTimeCreated:new Date(e.dateTimeCreated),dateTimeLastUpdated:new Date(e.dateTimeLastUpdated)};return E(t)}deposit(e){const t={id:e.id,type:e.type,status:e.status,checkoutUrl:e.checkoutUrl??void 0};return E(t)}depositRecord(e){const t={id:e.id,type:e.type,status:e.status,amount:i(e.amount,0),fee:i(e.fee,0),netAmount:i(e.netAmount,0),reference:e.reference??void 0,depositNumber:e.depositNumber,dateTimeCreated:new Date(e.dateTimeCreated),dateTimeLastUpdated:new Date(e.dateTimeLastUpdated)};return E(t)}betRecord(e){var r;const t={id:e.id,bet:i(e.bet,0),payout:i(e.payout,0),status:e.status,jackpotContribution:i(e.jackpotContribution,0),jackpotPayout:i(e.jackpotPayout,0),winloss:i(e.winloss),validBet:i(e.validBet,0),vendorRoundId:e.vendorRoundId??void 0,game:e.game,serialCode:e.serialCode,dateTimeSettled:e.dateTimeSettled?new Date(e.dateTimeSettled):void 0,dateTimeCreated:new Date(e.dateTimeCreated),dateTimeLastUpdated:new Date(e.dateTimeLastUpdated),betContent:e.betContent??void 0,contestName:e.contestName??void 0,externalCategory:e.externalCategory??void 0,metadata:{odds:((r=e.metadata)==null?void 0:r.odds)??void 0}};return E(t)}latestBetRecord(e){return{id:e.id,member:e.member,game:e.game,bet:i(e.bet,0),payout:i(e.payout,0),validBet:i(e.validBet,0),dateTimeSettled:new Date(e.dateTimeSettled),dateTimeCreated:new Date(e.dateTimeCreated)}}transactionRecord(e){const t={id:e.id,type:e.type,amount:i(e.amount,0),content:e.content??void 0,currentBalance:i(e.currentBalance,0),referenceNumber:e.referenceNumber,dateTimeCreated:new Date(e.dateTimeCreated)};return E(t)}game(e){return{id:e.id,type:e.type,name:e.name,images:this.staticService.gameThumbnails(e),provider:e.provider}}game__next(e){return{id:e.id,type:e.type,tags:e.tags??[],name:e.name,images:this.staticService.gameThumbnails({id:e.externalId,provider:e.provider}),provider:e.provider,externalId:e.externalId}}gameSession(e){const t={id:e.id,status:e.status,launchUrl:e.launchUrl??void 0,dateTimeCreated:new Date(e.dateTimeCreated),dateTimeLastUpdated:new Date(e.dateTimeLastUpdated)};return E(t)}promo(e){return{id:e.id,type:e.type,name:e.name,status:e.status,description:e.description,banner:this.file(e.banner),maximumBonusAmount:i(e.maximumBonusAmount),minimumBonusAmount:i(e.minimumBonusAmount),activationEndDateTime:new Date(e.activationEndDateTime),activationStartDateTime:new Date(e.activationStartDateTime),dateTimeCreated:new Date(e.dateTimeCreated),dateTimeLastUpdated:new Date(e.dateTimeLastUpdated)}}cashback(e){return{id:e.id,name:e.name,description:e.description,status:e.status,banner:this.file(e.banner),activationEndDateTime:new Date(e.activationEndDateTime),activationStartDateTime:new Date(e.activationStartDateTime),dateTimeCreated:new Date(e.dateTimeCreated),dateTimeLastUpdated:new Date(e.dateTimeLastUpdated),turnoverContributionPercentagePerGameProvider:Object.entries(e.turnoverContributionPercentagePerGameProvider).reduce((r,[a,s])=>(r[a]=i(s,0),r),{})}}bonus(e){const t={id:e.id,promo:this.promo(e.promo),deposit:e.deposit?{type:e.deposit.type,status:e.deposit.status,fee:i(e.deposit.fee,0),amount:i(e.deposit.amount,0),netAmount:i(e.deposit.netAmount,0),reference:e.deposit.reference??void 0,dateTimeCreated:new Date(e.deposit.dateTimeCreated),dateTimeLastUpdated:new Date(e.deposit.dateTimeLastUpdated)}:void 0,balance:i(e.balance,0),amount:i(e.amount,0),expiration:new Date(e.expiration),turnoverRequirement:i(e.turnoverRequirement,0),currentTurnoverRequirementContribution:i(e.currentTurnoverRequirementContribution,0),currentTurnoverRequirementContributionPercentage:i(e.currentTurnoverRequirementContributionPercentage,0),dateTimeCreated:new Date(e.dateTimeCreated),dateTimeLastUpdated:new Date(e.dateTimeLastUpdated)};return E(t)}cashbackBonus(e){return{id:e.id,balance:i(e.balance,0),cashback:this.cashback(e.cashback),dateTimeCreated:new Date(e.dateTimeCreated),dateTimeLastUpdated:new Date(e.dateTimeLastUpdated)}}file(e){const t={id:e.id,url:e.url??void 0,status:e.status,dateTimeCreated:new Date(e.dateTimeCreated)};return E(t)}pointsWallet(e){return{id:e.id,points:i(e.points,0),account:e.account,dateTimeCreated:new Date(e.dateTimeCreated)}}pointsWalletTransaction(e){return{id:e.id,type:e.type,amount:i(e.amount,0),balance:i(e.balance,0),dateTimeCreated:new Date(e.dateTimeCreated)}}activityRecord(e){const t={id:e.id,type:e.type,amount:e.amount?i(e.amount,0):void 0,domain:e.domain??void 0,details:e.details,dateTimeCreated:new Date(e.dateTimeCreated)};return E(t)}}class Rt{constructor(e){m(this,"_config");this._config={...e,logs:e.logs??!1,environment:e.environment??"development"}}get config(){return this._config}set config(e){this._config={...this._config,...e}}get logger(){return new ee({enabled:this.config.logs??!1})}get transformer(){return new Dt(this.config)}get cmsPortalService(){return new _t({url:this.config.environment==="development"?"https://portal-api.development.opexacms.io/v1":"https://portal-api.opexacms.io/v1",site:this.config.site,platform:this.config.sitePlatform})}get sessionManager(){return new It({authUrl:this.config.environment==="development"?"https://auth.development.opexa.io":"https://auth.opexa.io",walletUrl:this.config.environment==="development"?"https://wallet.development.opexa.io/graphql":"https://wallet.opexa.io/graphql",platform:this.config.platform,logs:this.config.environment==="development"})}get gameService(){return new Ct(new A(this.config.environment==="development"?"https://game.development.opexa.io/graphql":"https://game.opexa.io/graphql",{middlewares:[this.authMiddleware],fetchOptions:{headers:{Role:"MEMBER","Platform-Code":this.config.platform}}}))}get fileService(){return new bt(new A(this.config.environment==="development"?"https://file.development.opexa.io/graphql":"https://file.opexa.io/graphql",{middlewares:[this.authMiddleware],fetchOptions:{headers:{Role:"MEMBER","Platform-Code":this.config.platform}}}))}get walletService(){return new Z(new A(this.config.environment==="development"?"https://wallet.development.opexa.io/graphql":"https://wallet.opexa.io/graphql",{middlewares:[this.authMiddleware],fetchOptions:{headers:{Role:"MEMBER","Platform-Code":this.config.platform}}}))}get accountService(){return new Et(new A(this.config.environment==="development"?"https://account.development.opexa.io/graphql":"https://account.opexa.io/graphql",{middlewares:[this.authMiddleware],fetchOptions:{headers:{Role:"MEMBER","Platform-Code":this.config.platform}}}))}get reportService(){return new At(new A(this.config.environment==="development"?"https://report.development.opexa.io/graphql":"https://report.opexa.io/graphql",{middlewares:[this.authMiddleware],fetchOptions:{headers:{Role:"MEMBER","Platform-Code":this.config.platform}}}))}get portalService(){return new Tt(new A(this.config.environment==="development"?"https://portal.development.opexa.io/graphql":"https://portal.opexa.io/graphql",{middlewares:[this.authMiddleware],fetchOptions:{headers:{Role:"MEMBER","Platform-Code":this.config.platform}}}))}get authMiddleware(){return async e=>{this.logger.info("Checking for session");const t=await this.sessionManager.get();return t.data?(e.headers.append("Authorization",`Bearer ${t.data.accessToken}`),this.logger.info("Session found"),this.logger.success("Added 'Authorization' header")):this.logger.info("No session found"),e}}async signIn(e){switch(e.type){case"NAME_AND_PASSWORD":{const t=await this.sessionManager.create({...e,password:await b(e.password)});return t.ok?t.data?{ok:!0,data:{"2FAEnabled":!0,authenticator:t.data.authenticator}}:{ok:!0,data:{"2FAEnabled":!1}}:t}default:{const t=await this.sessionManager.create(e);return t.ok?{ok:!0}:t}}}async authenticate(e){switch(e.type){case"SECURITY_QUESTION":return await this.sessionManager.createFromAuthenticator({type:"SECURITY_QUESTION",token:e.token,secretAnswer:await b(e.secretAnswer)});default:return{ok:!1,error:{name:"HttpBadRequest",message:"Invalid input 'type'"}}}}async signOut(){await this.sessionManager.destroy()}watchSession(e){const t=vt(e.interval??3e4,3e4,6e4);let r=null;const a=()=>setTimeout(async()=>{await this.sessionManager.verify()||await e.onInvalid(),r=a()},t);return r=a(),function(){r&&clearTimeout(r)}}async session(){const e=await this.sessionManager.get();return e.ok?{ok:!0,data:e.data?{id:e.data.session.id,dateTimeCreated:new Date(e.data.session.dateTimeCreated)}:null}:e}async validateMayaSession(){return await this.walletService.validateMayaSession()}async site(){const e=await this.cmsPortalService.self();return e.ok?{ok:!0,data:this.transformer.transform.site(e.data)}:e}async platform(){const e=await this.accountService.platform();return e.ok?{ok:!0,data:this.transformer.transform.platform(e.data)}:e}async account(){const[e,t]=await Promise.all([this.accountService.memberAccount(),this.reportService.member()]);return e.ok?t.ok?{ok:!0,data:this.transformer.transform.account({...e.data,...t.data})}:{ok:!1,error:t.error}:{ok:!1,error:e.error}}async createAccount(e){const t=e.id??u.ObjectId.generate(g.Account).toString(),r=await this.accountService.registerMemberAccount({input:{id:t,name:e.name,birthDay:typeof e.dateOfBirth=="string"?e.dateOfBirth:e.dateOfBirth.toISOString(),password:await b(e.password),mobileNumber:this.addAreaCode(e.mobileNumber),domain:e.domain,btag:e.referralCode},verificationCode:e.verificationCode,reCAPTCHAResponse:e.reCAPTCHAResponse});return r.ok?{ok:!0,data:{id:t}}:r}async registerMayaAccount(e){return await this.accountService.registerMayaMemberAccount({input:{name:e.name,password:await b(e.password),domain:e.domain}})}async updateAccount(e,t){return await this.accountService.updateMemberAccount({input:{id:e,data:{...t,password:t.password?await b(t.password):void 0,transactionPassword:t.transactionPassword?await b(t.transactionPassword):void 0,...t.mobileNumber&&{mobileNumber:this.addAreaCode(t.mobileNumber)},secretAnswer:t.secretAnswer?await b(t.secretAnswer):void 0}}})}async deleteAccount(e){return await this.accountService.deleteMemberAccount({input:{id:e}})}async verificationDetails(){const e=await this.accountService.memberVerification();return e.ok?{ok:!0,data:e.data?this.transformer.transform.verificationDetails(e.data):null}:e}async submitVerificationDetails(e){const t=e.id??u.ObjectId.generate(g.Verification).toString(),r=await this.accountService.createMemberVerification({input:{id:t,...e}});return r.ok?{ok:!0,data:{id:t}}:r}async updateVerificationDetails(e,t){return await this.accountService.updateMemberVerification({input:{id:e,data:{...t}}})}async resetPassword(e){return await this.accountService.resetPassword({input:{mobileNumber:this.addAreaCode(e.mobileNumber),newPassword:await b(e.newPassword)},verificationCode:e.verificationCode})}async verifyMobileNumber(e){return await this.accountService.verifyMobileNumber({input:{verificationCode:e}})}async profileCompletion(){const e=await this.accountService.profileCompletion();return e.ok?{ok:!0,data:this.transformer.transform.profileCompletion(e.data)}:e}async sendVerificationCode(e){return await this.accountService.sendVerificationCode({input:{channel:"SMS",recipient:this.addAreaCode(e)}})}async wallet(){const e=await this.walletService.wallet();return e.ok?{ok:!0,data:e.data?this.transformer.transform.wallet(e.data):null}:e}async announcements(e){const t=await this.accountService.announcements({...e,filter:{visibility:{in:["MEMBER","GLOBAL"]},activationStartDateTime:{greaterThanOrEqual:new Date}}});return t.ok?{ok:!0,data:{announcements:t.data.edges.map(({cursor:r,node:a})=>({...this.transformer.transform.announcement(a),cursor:r})),totalCount:t.data.totalCount,endCursor:t.data.pageInfo.endCursor??void 0,hasNextPage:t.data.pageInfo.hasNextPage}}:t}async createWithdrawal(e){const t=e.id??u.ObjectId.generate(g.Withdrawal).toString();if(e.type==="BANK"){const r=await this.walletService.createBankWithdrawal({input:{id:t,amount:e.amount.toString(),transactionPassword:await b(e.transactionPassword)}});if(!r.ok)return r}if(e.type==="GCASH"){const r=await this.walletService.createGCashWithdrawal({input:{id:t,amount:e.amount.toString(),transactionPassword:await b(e.transactionPassword),recipientMobileNumber:this.addAreaCode(e.recipientMobileNumber)}});if(!r.ok)return r}if(e.type==="MAYA"){const r=await this.walletService.createMayaWithdrawal({input:{id:t,amount:e.amount.toString(),transactionPassword:await b(e.transactionPassword),recipientMobileNumber:this.addAreaCode(e.recipientMobileNumber)}});if(!r.ok)return r}if(e.type==="MAYA_APP"){const r=await this.walletService.createMayaAppWithdrawal({input:{id:t,amount:e.amount.toString(),transactionPassword:await b(e.transactionPassword)}});if(!r.ok)return r}return{ok:!0,data:{id:t}}}async withdrawalRecords(e){const t=await this.reportService.withdrawalRecords(e);return t.ok?{ok:!0,data:{withdrawalRecords:t.data.edges.map(({cursor:r,node:a})=>({...this.transformer.transform.withdrawalRecord(a),cursor:r})),totalCount:t.data.totalCount,endCursor:t.data.pageInfo.endCursor??void 0,hasNextPage:t.data.pageInfo.hasNextPage}}:t}async remainingDailyWithdrawalsCount(){return await this.walletService.remainingDailyWithdrawalsCount()}async createDeposit(e){const t=e.id??u.ObjectId.generate(g.Deposit).toString();if(e.type==="MAYA"){const r=await this.walletService.createMayaDeposit({input:{id:t,amount:e.amount.toString(),promo:e.promo}});if(!r.ok)return r}if(e.type==="MAYA_APP"){const r=await this.walletService.createMayaAppDeposit({input:{id:t,amount:e.amount.toString(),promo:e.promo}});if(!r.ok)return r}if(e.type==="GCASH"){const r=await this.walletService.createGCashDeposit({input:{id:t,amount:e.amount.toString(),promo:e.promo}});if(!r.ok)return r}return{ok:!0,data:{id:t}}}async deposit(e){const t=await this.walletService.deposit({id:e});return t.ok?{ok:!0,data:t.data?this.transformer.transform.deposit(t.data):null}:t}async depositRecords(e){const t=await this.reportService.depositRecords(e);return t.ok?{ok:!0,data:{depositRecords:t.data.edges.map(({cursor:r,node:a})=>({...this.transformer.transform.depositRecord(a),cursor:r})),totalCount:t.data.totalCount,endCursor:t.data.pageInfo.endCursor??void 0,hasNextPage:t.data.pageInfo.hasNextPage}}:t}async depositsCount(){return await this.reportService.depositsCount()}async betRecords(e){var r,a;const t=await this.reportService.betRecords({...e,...(e==null?void 0:e.filter)&&{filter:{...e.filter,...((r=e.filter)==null?void 0:r.gameType)&&{game__type:e.filter.gameType},...((a=e.filter)==null?void 0:a.gameProvider)&&{game__provider:e.filter.gameProvider}}}});return t.ok?{ok:!0,data:{betRecords:t.data.edges.map(({cursor:s,node:c})=>({...this.transformer.transform.betRecord(c),cursor:s})),totalCount:t.data.totalCount,endCursor:t.data.pageInfo.endCursor??void 0,hasNextPage:t.data.pageInfo.hasNextPage}}:t}async latestBetRecords(){const e=await this.portalService.latestBetRecords();return e.ok?{ok:!0,data:e.data.map(this.transformer.transform.latestBetRecord)}:e}async transactionRecords(e){const t=await this.reportService.transactionRecords(e);return t.ok?{ok:!0,data:{transactionRecords:t.data.edges.map(({cursor:r,node:a})=>({...this.transformer.transform.transactionRecord(a),cursor:r})),totalCount:t.data.totalCount,endCursor:t.data.pageInfo.endCursor??void 0,hasNextPage:t.data.pageInfo.hasNextPage}}:t}async promos(){const e=await this.walletService.promos();return e.ok?{ok:!0,data:e.data.map(this.transformer.transform.promo)}:e}async availablePromos(){const e=await this.walletService.availablePromos();return e.ok?{ok:!0,data:e.data.map(this.transformer.transform.promo)}:e}async cashbacks(){const e=await this.walletService.cashbacks();return e.ok?{ok:!0,data:e.data.map(this.transformer.transform.cashback)}:e}async bonus(){const e=await this.walletService.bonus();return e.ok?{ok:!0,data:e.data?this.transformer.transform.bonus(e.data):null}:e}async cashbackBonuses(){const e=await this.walletService.cashbackBonuses();return e.ok?{ok:!0,data:e.data.map(this.transformer.transform.cashbackBonus)}:e}async claimCashbackBonus(e){return await this.walletService.claimCashbackBonus({input:{id:e}})}async game(e){return this.game__next(e)}async game__next(e){const t=await this.cmsPortalService.game(e);return t.ok?{ok:!0,data:t.data?this.transformer.transform.game__next(t.data):null}:t}async games(e){const t=await this.walletService.games(e);return t.ok?{ok:!0,data:{games:t.data.edges.map(({cursor:r,node:a})=>({...this.transformer.transform.game(a),cursor:r})),totalCount:t.data.totalCount,hasNextPage:t.data.pageInfo.hasNextPage,endCursor:t.data.pageInfo.endCursor??void 0}}:t}async games__next(e){const t=await this.cmsPortalService.games(e);return t.ok?{ok:!0,data:{games:t.data.edges.map(({cursor:r,node:a})=>({...this.transformer.transform.game__next(a),cursor:r})),totalCount:t.data.totalCount,hasNextPage:t.data.pageInfo.hasNextPage,endCursor:t.data.pageInfo.endCursor??void 0}}:t}async games__legacy(e){const t=await this.gameService.games(e);return t.ok?{ok:!0,data:{games:t.data.edges.map(({cursor:r,node:a})=>({...this.transformer.transform.game(a),cursor:r})),totalCount:t.data.totalCount,hasNextPage:t.data.pageInfo.hasNextPage,endCursor:t.data.pageInfo.endCursor??void 0}}:t}async gamesByName(e){const t=await this.walletService.gamesByName(e);return t.ok?{ok:!0,data:t.data.map(this.transformer.transform.game)}:t}async gamesByName__legacy(e){const t=await this.gameService.gamesByName(e);return t.ok?{ok:!0,data:t.data.map(this.transformer.transform.game)}:t}async gameSession(e){const t=await this.walletService.gameSession({id:e});return t.ok?{ok:!0,data:t.data?this.transformer.transform.gameSession(t.data):null}:t}async gameSession__legacy(e){const t=await this.gameService.gameSession({id:e});return t.ok?{ok:!0,data:t.data?this.transformer.transform.gameSession(t.data):null}:t}async gameSession__next(e){const t=await this.walletService.gameSession({id:e});if(!t.ok)return t;if(t.data)return{ok:!0,data:this.transformer.transform.gameSession(t.data)};const r=await this.gameService.gameSession({id:e});return r.ok?{ok:!0,data:r.data?this.transformer.transform.gameSession(r.data):null}:r}async createGameSession(e){const t=e.id??u.ObjectId.generate(g.GameSession).toString(),r=await this.walletService.createGameSession({input:{id:t,game:e.game}});return r.ok?{ok:!0,data:{id:t}}:r}async createGameSession__legacy(e){const t=e.id??u.ObjectId.generate(g.GameSession).toString(),r=await this.gameService.createGameSession({input:{id:t,game:e.game}});return r.ok?{ok:!0,data:{id:t}}:r}async createGameSession__next(e){const t=e.id??u.ObjectId.generate(g.GameSession).toString();if(e.game.startsWith("SPORTS:")){const f=await u.ObjectId.generateFromKey(g.Game,e.game).then(h=>h.toString()),l=await this.gameService.createGameSession({input:{id:t,game:f}});return l.ok?{ok:!0,data:{id:t}}:l}const r=await this.game__next(e.game);if(!r.data)return{ok:!1,error:{name:"GameDoesNotExistError",message:"Game does not exist"}};const{provider:a,externalId:s}=r.data,c=Pt.includes(a)?await this.walletService.createGameSession({input:{id:t,game:s}}):await this.gameService.createGameSession({input:{id:t,game:s}});return c.ok?{ok:!0,data:{id:t}}:c}async endGameSession(e){return await this.walletService.endGameSession({input:{id:e}})}async endGameSession__legacy(e){return await this.gameService.endGameSession({input:{id:e}})}async endGameSession__next(e){const t=await this.walletService.endGameSession({input:{id:e}});return t.ok?t:await this.gameService.endGameSession({input:{id:e}})}async file(e){const t=await this.fileService.file({id:e});return t.ok?{ok:!0,data:t.data?this.transformer.transform.file(t.data):null}:t}async uploadImageFile(e){const t=e.id??u.ObjectId.generate(g.File).toString(),r=await this.fileService.uploadPrivateImageFile({input:{id:t,file:e.file}});return r.ok?{ok:!0,data:{id:t}}:r}async pointsWallet(){const e=await this.walletService.pointsWallet();return e.ok?{ok:!0,data:e.data?this.transformer.transform.pointsWallet(e.data):null}:e}async pointsToCashConversion(e){return await this.walletService.pointsToCashConversion({input:{amount:e.toString()}})}async pointsWalletTransactions(e){const t=await this.reportService.pointsWalletTransactions(e);return t.ok?{ok:!0,data:{pointsWalletTransactions:t.data.edges.map(({cursor:r,node:a})=>({...this.transformer.transform.pointsWalletTransaction(a),cursor:r})),totalCount:t.data.totalCount,hasNextPage:t.data.pageInfo.hasNextPage,endCursor:t.data.pageInfo.endCursor??void 0}}:t}async activityRecords(e){const t=await this.reportService.activityRecords(e);return t.ok?{ok:!0,data:{activityRecords:t.data.edges.map(({cursor:r,node:a})=>({...this.transformer.transform.activityRecord(a),cursor:r})),totalCount:t.data.totalCount,hasNextPage:t.data.pageInfo.hasNextPage,endCursor:t.data.pageInfo.endCursor??void 0}}:t}addAreaCode(e){return e.startsWith("+63")?e:e.startsWith("63")?`+${e}`:e.startsWith("0")?`+63${e.substring(1)}`:`+63${e}`}}const Pt=["RTG","DARWIN","DRBINGO","MEGABALL","EVOLUTION","EVOLUTION_NETENT","EVOLUTION_REDTIGER"];Object.defineProperty(y,"ObjectId",{enumerable:!0,get:()=>u.ObjectId}),y.ObjectType=g,y.Sdk=Rt,Object.defineProperty(y,Symbol.toStringTag,{value:"Module"})});
|
|
987
|
+
`;function u(n){return{name:n,message:{AccountNameNotAvailableError:"Username is no longer available",AccountNotFoundError:"Account does not exist",AccountNotVerifiedError:"Account is not verified",CashbackBonusDoesNotExistError:"Cashback bonus does not exists",DepositPromoMaximumAmountExceededError:"Deposit amount exceeds maximum amount",DepositPromoMinimumAmountNotMetError:"Deposit amount does not meet minimum amount",EmailAddressNotAvailableError:"Email is no longer available",FileDoesNotExistError:"File does not exist",FileFormatNotSupportedError:"File format is not supported",FileNameTooLongError:"File name is too long",FileNotReadyError:"File is not yet ready",FileSizeTooBigError:"File size is too big",GameDoesNotExistError:"Game does not exist",HasActiveBonusError:"Account has active bonus",InsufficientPointsError:"Insufficient points",InvalidPlatformError:"Invalid platform",InvalidReCAPTCHAResponseError:"Invalid reCAPTCHA",InvalidSMSVerificationCodeError:"Invalid SMS verification code",InvalidTransactionPasswordError:"Invalid transaction password",InvalidVerificationCodeError:"Invalid verification code",InvalidWithdrawalAmountError:"Invalid withdrawal amount",MaximumDepositAmountExceededError:"Maximum deposit amount exceeded",MemberVerificationAlreadyApprovedError:"Member verification is already approved",MemberVerificationAlreadyExistsError:"Member verification already exists",MemberVerificationDoesNotExistError:"Member verification does not exist",MinimumAgeRequirementError:"Minimum age requirement not met",MinimumDepositAmountNotMetError:"Minimum deposit amount not met",MinimumFirstDepositAmountNotMetError:"Minimum first deposit amount not met",MobileNumberAlreadyVerifiedError:"Mobile number is already verified",MobileNumberNotAvailableError:"Mobile number is no longer available",MobileNumberNotVerifiedError:"Mobile number is not verified",NickNameNotAvailableError:"Nickname is no longer available",NotEnoughBalanceError:"Insufficient balance",NotReadyToSendVerficationCodeError:"Not ready to send verification code",PromoNotEnabledError:"Promo is not enabled",RealNameAlreadySetError:"Real name is already set",ValidIdAlreadySetError:"Valid ID is already set",WalletDoesNotExistError:"Wallet does not exist",WithdrawalDailyLimitExceededError:"Daily withdrawal limit exceeded",GameProviderError:"Game provider error",GameSessionAlreadyClosedError:"Game session is already closed",GameSessionDoesNotExistError:"Game session does not exist",AccountBlacklisted:"Account is blacklisted",AccountNotFound:"Account not found",InvalidToken:"Invalid token",InvalidTokenOrSecretAnswer:"Invalid token or secret answer",SessionExpired:"Session expired"}[n]}}class Et{constructor(e){m(this,"client");this.client=e}async memberAccount(){const e=await this.client.request(nt);return e.ok?{ok:!0,data:e.data.memberAccount}:e}async registerMemberAccount(e){const t=await this.client.request(it,e);return t.ok?t.data.registerMemberAccount?{ok:!1,error:u(t.data.registerMemberAccount.__typename)}:{ok:!0}:t}async updateMemberAccount(e){const t=await this.client.request(ct,e);return t.ok?t.data.updateMemberAccount?{ok:!1,error:u(t.data.updateMemberAccount.__typename)}:{ok:!0}:t}async deleteMemberAccount(e){const t=await this.client.request(dt,e);return t.ok?t.data.deleteMemberAccount?{ok:!0}:{ok:!1,error:{name:"UnknownError",message:"Something went wrong."}}:t}async resetPassword(e){const t=await this.client.request(mt,e);return t.ok?t.data.resetPassword?{ok:!1,error:u(t.data.resetPassword.__typename)}:{ok:!0}:t}async profileCompletion(){const e=await this.client.request(ft);return e.ok?{ok:!0,data:e.data.profileCompletion}:e}async platform(){return await this.client.request(wt)}async sendVerificationCode(e){const t=await this.client.request(ht,e);return t.ok?t.data.sendVerificationCode?{ok:!1,error:u(t.data.sendVerificationCode.__typename)}:{ok:!0}:t}async verifyMobileNumber(e){const t=await this.client.request(ut,e);return t.ok?t.data.verifyMobileNumber?{ok:!1,error:u(t.data.verifyMobileNumber.__typename)}:{ok:!0}:t}async createMemberVerification(e){const t=await this.client.request(lt,e);return t.ok?t.data.createMemberVerification?{ok:!1,error:u(t.data.createMemberVerification.__typename)}:{ok:!0}:t}async updateMemberVerification(e){const t=await this.client.request(pt,e);return t.ok?t.data.updateMemberVerification?{ok:!1,error:u(t.data.updateMemberVerification.__typename)}:{ok:!0}:t}async memberVerification(){const e=await this.client.request(ot);return e.ok?{ok:!0,data:e.data.memberAccount.verification}:e}async announcements(e){const t=await this.client.request(xe,e);return t.ok?{ok:!0,data:t.data.announcements}:t}async registerMayaMemberAccount(e){const t=await this.client.request(st,e);return t.ok?t.data.registerMayaMemberAccount?{ok:!1,error:u(t.data.registerMayaMemberAccount.__typename)}:{ok:!0}:t}}function w(n,e){const t=j[n]?j[n]:j[500];return{name:t.name,message:e??t.message}}const j={400:{name:"HttpBadRequest",message:"Bad Request"},401:{name:"HttpUnauthorized",message:"Unauthorized"},403:{name:"HttpForbidden",message:"Forbidden"},404:{name:"HttpNotFound",message:"Not Found"},408:{name:"HttpRequestTimeout",message:"Request Timeout"},429:{name:"HttpTooManyRequests",message:"Too Many Requests"},500:{name:"HttpInternalServerError",message:"Internal Server Error"}};class bt{constructor(e){m(this,"url");m(this,"platform");this.url=e.url,this.platform=e.platform}async createSession(e){const t=new Headers({"Content-Type":"application/json","Platform-Code":this.platform,Role:"MEMBER"});if(e.name){const r=`${e.name}:${e.password}`,a=Buffer.from(r).toString("base64");t.set("Authorization",`Basic ${a}`)}if(e.mobileNumber){const r=`${e.mobileNumber}:${e.verificationCode}`,a=Buffer.from(r).toString("base64");t.set("Authorization",`MobileNumberOTP ${a}`)}e.sessionId&&t.set("Authorization",`Maya ${e.sessionId}`);try{const r=await fetch(`${this.url}/sessions`,{method:"POST",headers:t}),a=await r.json();return r.ok?{ok:!0,data:a}:a.code==="ACCOUNT_BLACKLISTED"?{ok:!1,error:u("AccountBlacklisted")}:{ok:!1,error:w(r.status)}}catch{return{ok:!1,error:w(500)}}}async authenticate(e){const t=new Headers({"Content-Type":"application/json","Platform-Code":this.platform,Role:"MEMBER"});if(e.type==="SECURITY_QUESTION"){t.set("Authorization",`Bearer ${e.token}`);try{const r=await fetch(`${this.url}/session/${e.token}/authenticate`,{method:"POST",headers:t,body:JSON.stringify({secretAnswer:e.secretAnswer})}),a=await r.json();return r.ok?{ok:!0,data:a}:r.status===401||r.status===403?{ok:!1,error:u("InvalidTokenOrSecretAnswer")}:{ok:!1,error:w(r.status)}}catch{return{ok:!1,error:w(500)}}}throw new Error("Invalid input 'type'")}async refreshSession(e){try{const t=await fetch(`${this.url}/session:refresh`,{method:"POST",headers:{"Content-Type":"application/json","Platform-Code":this.platform,Role:"MEMBER",Authorization:`Bearer ${e}`}}),r=await t.json();return t.ok?{ok:!0,data:r}:r.code==="ACCOUNT_BLACKLISTED"?{ok:!1,error:u("AccountBlacklisted")}:t.status===403||t.status===401?{ok:!1,error:u("InvalidToken")}:{ok:!1,error:w(t.status)}}catch{return{ok:!1,error:w(500)}}}async destroySession(e){try{const t=await fetch(`${this.url}/session`,{method:"DELETE",headers:{"Content-Type":"application/json","Platform-Code":this.platform,Role:"MEMBER",Authorization:`Bearer ${e}`}});return t.ok?{ok:!0}:{ok:!1,error:w(t.status)}}catch{return{ok:!1,error:w(500)}}}async verifySession(e){try{return(await fetch(`${this.url}/session`,{method:"GET",headers:{"Content-Type":"application/json","Platform-Code":this.platform,Role:"MEMBER",Authorization:`Bearer ${e}`}})).ok}catch{return!0}}}class At{constructor(e){m(this,"url");m(this,"siteId");m(this,"platformId");this.url=e.url,this.siteId=e.site,this.platformId=e.platform}async self(){const e=await this.getJson(`/sites/${this.siteId}`);return e.ok?{ok:!0,data:e.data.data}:e}async games(e){var a,s,c,f,p,h,S,d,M,N,I,D,R,P,G,x,$,O,W,U,B,q,F,L;const t=new URLSearchParams;e!=null&&e.first&&t.set("first",e.first.toString()),e!=null&&e.after&&t.set("after",e.after),e!=null&&e.search&&t.set("search",e.search),(s=(a=e==null?void 0:e.filter)==null?void 0:a.type)!=null&&s.equal&&t.set("filter[type][eq]",e.filter.type.equal),(f=(c=e==null?void 0:e.filter)==null?void 0:c.type)!=null&&f.notEqual&&t.set("filter[type][neq]",e.filter.type.notEqual),(h=(p=e==null?void 0:e.filter)==null?void 0:p.type)!=null&&h.in&&t.set("filter[type][in]",e.filter.type.in.join(",")),(d=(S=e==null?void 0:e.filter)==null?void 0:S.type)!=null&&d.notIn&&t.set("filter[type][nin]",e.filter.type.notIn.join(",")),(N=(M=e==null?void 0:e.filter)==null?void 0:M.provider)!=null&&N.equal&&t.set("filter[provider][eq]",e.filter.provider.equal),(D=(I=e==null?void 0:e.filter)==null?void 0:I.provider)!=null&&D.notEqual&&t.set("filter[provider][neq]",e.filter.provider.notEqual),(P=(R=e==null?void 0:e.filter)==null?void 0:R.provider)!=null&&P.in&&t.set("filter[provider][in]",e.filter.provider.in.join(",")),(x=(G=e==null?void 0:e.filter)==null?void 0:G.provider)!=null&&x.notIn&&t.set("filter[provider][nin]",e.filter.provider.notIn.join(",")),(O=($=e==null?void 0:e.filter)==null?void 0:$.tags)!=null&&O.equal&&t.set("filter[tags][eq]",e.filter.tags.equal.toLowerCase()),(U=(W=e==null?void 0:e.filter)==null?void 0:W.tags)!=null&&U.notEqual&&t.set("filter[tags][neq]",e.filter.tags.notEqual.toLowerCase()),(q=(B=e==null?void 0:e.filter)==null?void 0:B.tags)!=null&&q.in&&t.set("filter[tags][in]",e.filter.tags.in.map(A=>A.toLowerCase()).join(",")),(L=(F=e==null?void 0:e.filter)==null?void 0:F.tags)!=null&&L.notIn&&t.set("filter[tags][nin]",e.filter.tags.notIn.map(A=>A.toLowerCase()).join(","));const r=await this.getJson("/games",t);return r.ok?{ok:!0,data:{edges:r.data.data.map(A=>({node:A,cursor:A.cursor})),totalCount:r.data.totalCount??0,pageInfo:{hasNextPage:!!r.data.next,endCursor:r.data.next}}}:r}async game(e){var r;const t=await this.getJson(`/games/${e}`);return((r=t.error)==null?void 0:r.name)==="HttpNotFound"?{ok:!0,data:null}:t.ok?{ok:!0,data:t.data.data}:t}async getJson(e,t){const r=new Request(`${this.url}${e}?${(t==null?void 0:t.toString())??""}`,{method:"GET",headers:{Accept:"application/json","Content-Type":"application/json","Site-ID":this.siteId,"Platform-ID":this.platformId}});try{const a=await fetch(r);return a.ok?{ok:!0,data:await a.json()}:{ok:!1,error:w(a.status)}}catch{return{ok:!1,error:w(500)}}}}class kt{constructor(e){m(this,"client");this.client=e}async file(e){const t=await this.client.request(ve,e);return t.ok?{ok:!0,data:t.data.node}:t}async uploadPrivateImageFile(e){const t=await this.client.upload(Me,e);return t.ok?t.data.uploadPrivateImageFile?{ok:!1,error:u(t.data.uploadPrivateImageFile.__typename)}:{ok:!0}:t}}class _t{constructor(e){m(this,"client");this.client=e}async games(e){const t=await this.client.request(K,e);return t.ok?{ok:t.ok,data:t.data.games}:t}async gamesByName(e){const t=await this.client.request(z,e);return t.ok?{ok:t.ok,data:t.data.gamesByName}:t}async gameSession(e){const t=await this.client.request(J,e);return t.ok?{ok:!0,data:t.data.node}:t}async createGameSession(e){const t=await this.client.request(X,e);return t.ok?t.data.createGameSession?{ok:!1,error:u(t.data.createGameSession.__typename)}:{ok:!0}:t}async endGameSession(e){const t=await this.client.request(Ge,e);return t.ok?t.data.endGameSession?{ok:!1,error:u(t.data.endGameSession.__typename)}:{ok:!0}:t}}class Ct{constructor(e){m(this,"client");this.client=e}async latestBetRecords(){const e=await this.client.request(Ke);return e.ok?{ok:!0,data:e.data.latestBetRecords}:e}}class Tt{constructor(e){m(this,"client");this.client=e}async betRecords(e){const t=await this.client.request(Qe,e);return t.ok?{ok:t.ok,data:t.data.member.betRecords}:t}async transactionRecords(e){const t=await this.client.request(ze,e);return t.ok?{ok:t.ok,data:t.data.member.transactionRecords}:t}async withdrawalRecords(e){const t=await this.client.request($e,e);return t.ok?{ok:t.ok,data:t.data.member.withdrawalRecords}:t}async depositRecords(e){const t=await this.client.request(Fe,e);return t.ok?{ok:t.ok,data:t.data.member.depositRecords}:t}async depositsCount(){const e=await this.client.request(He);return e.ok?{ok:e.ok,data:e.data.member.depositsCount}:e}async member(){const e=await this.client.request(at);return e.ok?{ok:e.ok,data:e.data.member}:e}async pointsWalletTransactions(e){const t=await this.client.request(Re,e);return t.ok?{ok:t.ok,data:t.data.member.pointsWalletTransactions}:t}async activityRecords(e){const t=await this.client.request(St,e);return t.ok?{ok:t.ok,data:t.data.member.activityRecords}:t}}class vt{constructor(e){m(this,"url");this.url=e.url}gameThumbnails(e){return[`${this.url}/images/${e.provider.toLowerCase()}/thumbnail-${e.id}.webp`,`${this.url}/images/${e.provider.toLowerCase()}/thumbnail-${e.provider.toLowerCase()}.webp`]}}class ee{constructor(e){m(this,"client");this.client=e}async promos(){const e=await this.client.request(Je);return e.ok?{ok:e.ok,data:e.data.promos}:e}async cashbacks(){const e=await this.client.request(Ze);return e.ok?{ok:e.ok,data:e.data.cashbacks}:e}async availablePromos(e){const t=await this.client.request(Xe,e);return t.ok?{ok:t.ok,data:t.data.availablePromos}:t}async cashbackBonuses(){const e=await this.client.request(tt);return e.ok?{ok:e.ok,data:e.data.cashbackBonuses}:e}async claimCashbackBonus(e){const t=await this.client.request(rt,e);return t.ok?t.data.claimCashbackBonus?{ok:!1,error:u(t.data.claimCashbackBonus.__typename)}:{ok:!0}:{ok:t.ok,error:t.error}}async bonus(){const e=await this.client.request(et);return e.ok?{ok:e.ok,data:e.data.bonus}:e}async wallet(){const e=await this.client.request(Ne);return e.ok?{ok:e.ok,data:e.data.wallet}:e}async deposit(e){const t=await this.client.request(je,e);return t.ok?{ok:t.ok,data:t.data.node}:t}async createGCashDeposit(e){const t=await this.client.request(Le,e);return t.ok?t.data.createGCashDeposit?{ok:!1,error:u(t.data.createGCashDeposit.__typename)}:{ok:!0}:t}async createMayaDeposit(e){const t=await this.client.request(Ve,e);return t.ok?t.data.createMayaDeposit?{ok:!1,error:u(t.data.createMayaDeposit.__typename)}:{ok:!0}:t}async createMayaAppDeposit(e){const t=await this.client.request(Ye,e);return t.ok?t.data.createMayaAppDeposit?{ok:!1,error:u(t.data.createMayaAppDeposit.__typename)}:{ok:!0}:t}async createGCashWithdrawal(e){const t=await this.client.request(Oe,e);return t.ok?t.data.createGCashWithdrawal?{ok:!1,error:u(t.data.createGCashWithdrawal.__typename)}:{ok:!0}:t}async createMayaWithdrawal(e){const t=await this.client.request(We,e);return t.ok?t.data.createMayaWithdrawal?{ok:!1,error:u(t.data.createMayaWithdrawal.__typename)}:{ok:!0}:t}async createMayaAppWithdrawal(e){const t=await this.client.request(Ue,e);return t.ok?t.data.createMayaAppWithdrawal?{ok:!1,error:u(t.data.createMayaAppWithdrawal.__typename)}:{ok:!0}:t}async createBankWithdrawal(e){const t=await this.client.request(Be,e);return t.ok?t.data.createBankWithdrawal?{ok:!1,error:u(t.data.createBankWithdrawal.__typename)}:{ok:!0}:t}async remainingDailyWithdrawalsCount(){const e=await this.client.request(qe);return e.ok?{ok:e.ok,data:e.data.remainingDailyWithdrawalsCount}:e}async pointsWallet(){const e=await this.client.request(Ie);return e.ok?{ok:e.ok,data:e.data.pointsWallet}:e}async pointsToCashConversion(e){const t=await this.client.request(De,e);return t.ok?t.data.pointsToCashConversion?{ok:!1,error:u(t.data.pointsToCashConversion.__typename)}:{ok:!0}:t}async mayaSession(e){const t=await this.client.request(yt,e);return t.ok?{ok:t.ok,data:t.data.mayaSession}:t}async games(e){const t=await this.client.request(K,e);return t.ok?{ok:t.ok,data:t.data.games}:t}async gamesByName(e){const t=await this.client.request(z,e);return t.ok?{ok:t.ok,data:t.data.gamesByName}:t}async gameSession(e){const t=await this.client.request(J,e);return t.ok?{ok:!0,data:t.data.node}:t}async createGameSession(e){const t=await this.client.request(X,e);return t.ok?t.data.createGameSession?{ok:!1,error:u(t.data.createGameSession.__typename)}:{ok:!0}:t}async endGameSession(e){const t=await this.client.request(Pe,e);return t.ok?t.data.endGameSession?{ok:!0}:{ok:!1,error:{name:"UnknownError",message:"Something went wrong."}}:t}async validateMayaSession(){const e=await this.client.request(gt);return e.ok?e.data.validateMayaSession?{ok:!0}:{ok:!1,error:{name:"UnknownError",message:"Something went wrong."}}:e}}function Mt(n,e,t){return n<e?e:n>t?t:n}function H(n){return Object.prototype.toString.call(n)==="[object Object]"&&Object(n)===n}function Nt(n){const e=[];function t(r,a=[]){for(const s in r){const c=r[s];H(c)?t(c,[...a,s]):Array.isArray(c)?t(It(c),[...a,s]):e.push({key:[...a,s],value:c})}}return t(n),e}function It(n){return n.reduce((e,t,r)=>(e[r]=t,e),{})}class k{constructor(e,t){m(this,"url");m(this,"options");m(this,"middlewares");var a;const r=new Headers((a=t==null?void 0:t.fetchOptions)==null?void 0:a.headers);this.url=e,this.options={...t==null?void 0:t.fetchOptions,headers:r},this.middlewares=(t==null?void 0:t.middlewares)??[]}async request(e,t){const r=JSON.stringify({query:e,variables:t}),a=new Headers(this.options.headers);a.set("Content-Type","application/json"),a.set("Accept","application/json");const s=await this.runMiddlewares(new Request(this.url,{...this.options,body:r,headers:a,method:"POST"}));return await this.exec(s)}async upload(e,t){const r=this.createUploadBody(e,t),a=new Headers(this.options.headers);a.delete("Content-Type");const s=await this.runMiddlewares(new Request(this.url,{...this.options,body:r,headers:a,method:"POST"}));return await this.exec(s)}async exec(e){var t,r,a,s,c,f;try{const p=await fetch(e);if(!p.ok)return{ok:!1,error:w(p.status)};const h=await p.json(),S=h.data,d=(t=h.errors)==null?void 0:t.at(0);return d?((r=d.extensions)==null?void 0:r.code)==="FORBIDDEN"||((a=d.extensions)==null?void 0:a.code)==="ACCESS_TOKEN_EXPIRED"?{ok:!1,error:w(403,d.message)}:((s=d.extensions)==null?void 0:s.code)==="UNAUTHORIZED"?{ok:!1,error:w(401,d.message)}:((c=d.extensions)==null?void 0:c.code)==="BAD_USER_INPUT"||((f=d.extensions)==null?void 0:f.code)==="BAD_REQUEST"?{ok:!1,error:w(400,d.message)}:{ok:!1,error:w(500,d.message)}:{ok:!0,data:S}}catch{return{ok:!1,error:w(500)}}}async runMiddlewares(e){let t=e.clone();for(const r of this.middlewares)t=await r(t);return t}createUploadBody(e,t){const r=Nt(t).filter(c=>c.value instanceof File||c.value instanceof Blob),a=new FormData;a.append("operations",JSON.stringify({query:e,variables:t}));const s={};return r.forEach((c,f)=>{s[f.toString()]=[`variables.${c.key.join(".")}`]}),a.append("map",JSON.stringify(s)),r.forEach((c,f)=>{a.append(f.toString(),c.value)}),a}}function _(n){return n.startsWith("+63")?n:n.startsWith("63")?`+${n}`:n.startsWith("0")?`+63${n.substring(1)}`:`+63${n}`}async function b(n){const e=new TextEncoder().encode(n),t=await crypto.subtle.digest("SHA-256",e);return Array.from(new Uint8Array(t)).map(s=>s.toString(16).padStart(2,"0")).join("")}class te{constructor(e){m(this,"enabled");this.enabled=(e==null?void 0:e.enabled)??!0}info(e){this.enabled&&console.log(`\x1B[34m[info] ${e}`)}warn(e){this.enabled&&console.log(`\x1B[33m[warn] ${e}`)}error(e){this.enabled&&console.log(`\x1B[31m[error] ${e}`)}success(e){this.enabled&&console.log(`\x1B[32m[success] ${e}`)}}function Q(n){return new Date(n.getTime())}function C(n,e){const t=Q(n);return t.setDate(t.getDate()+e),t}function T(n,e){const t=Q(n);return t.setMinutes(t.getMinutes()+e),t}function re(n,e){return n.getTime()>e.getTime()}function ae(n){return new Promise(e=>{setTimeout(e,n)})}function ne(n,e){const{until:t,interval:r=1e3,maxAttempt:a=3}=e;async function s(c,f){const p=f??a,h=await n(...c);return t(h)?h:p>1?(await ae(r*((a-p)/2)),s(c,p-1)):h}return async(...c)=>await s(c)}function v(n,e){const t=Q(n);return t.setMinutes(t.getMinutes()-e),t}class Dt{constructor(e){m(this,"logger");m(this,"storageKey","session");m(this,"authService");m(this,"walletService");m(this,"_refreshing",!1);this.authService=new bt({url:e.authUrl,platform:e.platform}),this.walletService=new ee(new k(e.walletUrl,{middlewares:[t=>(t.headers.set("Platform",e.platform),t.headers.set("Role","MEMBER"),t)]})),this.logger=new te({enabled:e.logs??!1})}get refreshing(){return this._refreshing}set refreshing(e){this._refreshing=e}async create(e){var a;if(this.isServer)return this.logger.warn("'localStorage' is not available on the server."),{ok:!1,error:{name:"UnknownError",message:"Server sign in is not supported."}};if(e.type==="MAYA"){const c=await ne(()=>this.walletService.mayaSession({id:e.sessionId}),{until:S=>{var d;return S.ok&&((d=S.data)==null?void 0:d.member)!=null},interval:1e3,maxAttempt:5})();if(!c.ok)return c;if(!((a=c.data)!=null&&a.member))return{ok:!1,error:{name:"HttpForbidden",message:"Forbidden"}};const p=await ne(()=>this.authService.createSession(e),{until:S=>S.ok,interval:1e3,maxAttempt:5})();if(!p.ok)return p;const h=new Date;return window.localStorage.setItem(this.storageKey,JSON.stringify({...p.data,accessTokenExpiresAt:T(h,8).getTime(),refreshTokenExpiresAt:v(C(h,30),2).getTime()})),{ok:!0,data:null}}if(e.type==="MOBILE_NUMBER"){const s=await this.authService.createSession(e);if(s.ok){const c=new Date;return window.localStorage.setItem(this.storageKey,JSON.stringify({...s.data,accessTokenExpiresAt:T(c,8).getTime(),refreshTokenExpiresAt:v(C(c,30),2).getTime()})),{ok:!0,data:null}}return s}const t=await this.authService.createSession(e);if(!t.ok)return t;if(t.data.authenticator)return{ok:!0,data:{authenticator:t.data.authenticator}};const r=new Date;return window.localStorage.setItem(this.storageKey,JSON.stringify({...t.data,accessTokenExpiresAt:T(r,8).getTime(),refreshTokenExpiresAt:v(C(r,30),2).getTime()})),{ok:!0,data:null}}async createFromAuthenticator(e){const t=await this.authService.authenticate(e);if(t.ok){const r=new Date;return this.isServer?this.logger.warn("'localStorage' is not available on the server."):window.localStorage.setItem(this.storageKey,JSON.stringify({...t.data,accessTokenExpiresAt:T(r,8).getTime(),refreshTokenExpiresAt:v(C(r,30),2).getTime()})),{ok:!0}}else return t}async get(){if(this.isServer)return this.logger.warn("'localStorage' is not available on the server."),{ok:!0,data:null};if(this.refreshing)return await ae(1e3),await this.get();const e=window.localStorage.getItem(this.storageKey);if(!e)return{ok:!0,data:null};try{let t=JSON.parse(e),r=new Date;const a=new Date(t.accessTokenExpiresAt),s=new Date(t.refreshTokenExpiresAt);if(re(r,s))return this.logger.warn("Session expired. Logging out.."),window.localStorage.removeItem(this.storageKey),{ok:!1,error:{name:"SessionExpired",message:"Session expired."}};if(re(r,a)){this.logger.info("Refreshing session..."),this.refreshing=!0;const c=await this.authService.refreshSession(t.refreshToken);if(this.refreshing=!1,!c.ok)return this.logger.error(`Failed to refresh session: ${c.error.message}`),c.error.name==="InvalidToken"||c.error.name==="AccountBlacklisted"?(window.localStorage.removeItem(this.storageKey),{ok:!1,error:c.error}):(this.logger.warn("Old session returned."),{ok:!0,data:t});this.logger.success("Session refreshed!"),r=new Date,t={...t,...c.data,accessTokenExpiresAt:T(r,8).getTime(),refreshTokenExpiresAt:v(C(r,30),2).getTime()},window.localStorage.setItem(this.storageKey,JSON.stringify(t))}return{ok:!0,data:t}}catch{return{ok:!1,error:{name:"UnknownError",message:"Something went wrong."}}}}async destroy(){var t;if(this.isServer){this.logger.warn("'localStorage' is not available on the server.");return}const e=await this.get();(t=e.data)!=null&&t.accessToken&&await this.authService.destroySession(e.data.accessToken),window.localStorage.removeItem(this.storageKey)}async verify(){var r,a,s;if(this.isServer)return this.logger.warn("'localStorage' is not available on the server."),!0;const e=await this.get();if(((r=e.error)==null?void 0:r.name)==="InvalidToken"||((a=e.error)==null?void 0:a.name)==="SessionExpired"||((s=e.error)==null?void 0:s.name)==="AccountBlacklisted")return!1;if(!e.data)return!0;const t=await this.authService.verifySession(e.data.accessToken);return t||window.localStorage.removeItem(this.storageKey),t}get isServer(){return typeof window>"u"}}function E(n){const e={};for(const t in n){const r=n[t];if(r!==null&&r!==void 0){if(H(r)){e[t]=E(r);continue}if(Array.isArray(r)){e[t]=r.map(a=>H(a)?E(a):a);continue}e[t]=r}}return e}function i(n,e){if(typeof n=="number"&&!Number.isNaN(n))return n;if(typeof n=="string"){const t=Number.parseFloat(n);if(!Number.isNaN(t))return t}return e}class Rt{constructor(e){m(this,"staticService");const t=(e==null?void 0:e.environment)==="development";this.staticService=new vt({url:t?"https://static.development.opexa.io":"https://static.opexa.io"})}get transform(){return{site:this.site.bind(this),platform:this.platform.bind(this),account:this.account.bind(this),wallet:this.wallet.bind(this),verificationDetails:this.verificationDetails.bind(this),profileCompletion:this.profileCompletion.bind(this),announcement:this.announcement.bind(this),withdrawalRecord:this.withdrawalRecord.bind(this),deposit:this.deposit.bind(this),depositRecord:this.depositRecord.bind(this),betRecord:this.betRecord.bind(this),latestBetRecord:this.latestBetRecord.bind(this),transactionRecord:this.transactionRecord.bind(this),game:this.game.bind(this),game__next:this.game__next.bind(this),gameSession:this.gameSession.bind(this),promo:this.promo.bind(this),cashback:this.cashback.bind(this),bonus:this.bonus.bind(this),cashbackBonus:this.cashbackBonus.bind(this),file:this.file.bind(this),pointsWallet:this.pointsWallet.bind(this),pointsWalletTransaction:this.pointsWalletTransaction.bind(this),activityRecord:this.activityRecord.bind(this)}}site(e){const t={id:e.id,name:e.name,logo:e.logo??void 0};return E(t)}platform(e){var t,r,a,s,c,f,p,h,S,d,M,N,I,D,R,P,G,x,$,O,W,U,B,q,F,L,A,oe,ie,se,ce,me,de,ue,le,pe,fe,he,we,ye,ge,Se,Ee,be,Ae,ke,_e,Ce,Te;return{paymentSettings:{minimumFirstDepositAmount:i(e.minimumFirstDepositAmount),restrictWithdrawalsToVerifiedMembers:e.restrictWithdrawalsToVerifiedMembers,depositGateway:{bank:{androidEnabled:((t=e.bankDepositGatewaySettings)==null?void 0:t.androidEnabled)??!1,iosEnabled:((r=e.bankDepositGatewaySettings)==null?void 0:r.iosEnabled)??!1,webEnabled:((a=e.bankDepositGatewaySettings)==null?void 0:a.webEnabled)??!1,mobileWebEnabled:((s=e.bankDepositGatewaySettings)==null?void 0:s.mobileWebEnabled)??!1,minimumAmount:i((c=e.bankDepositGatewaySettings)==null?void 0:c.minimumAmount),maximumAmount:i((f=e.bankDepositGatewaySettings)==null?void 0:f.maximumAmount)},gcash:{androidEnabled:((p=e.gcashDepositGatewaySettings)==null?void 0:p.androidEnabled)??!1,iosEnabled:((h=e.gcashDepositGatewaySettings)==null?void 0:h.iosEnabled)??!1,webEnabled:((S=e.gcashDepositGatewaySettings)==null?void 0:S.webEnabled)??!1,mobileWebEnabled:((d=e.gcashDepositGatewaySettings)==null?void 0:d.mobileWebEnabled)??!1,minimumAmount:i((M=e.gcashDepositGatewaySettings)==null?void 0:M.minimumAmount),maximumAmount:i((N=e.gcashDepositGatewaySettings)==null?void 0:N.maximumAmount)},maya:{androidEnabled:((I=e.mayaDepositGatewaySettings)==null?void 0:I.androidEnabled)??!1,iosEnabled:((D=e.mayaDepositGatewaySettings)==null?void 0:D.iosEnabled)??!1,webEnabled:((R=e.mayaDepositGatewaySettings)==null?void 0:R.webEnabled)??!1,mobileWebEnabled:((P=e.mayaDepositGatewaySettings)==null?void 0:P.mobileWebEnabled)??!1,minimumAmount:i((G=e.mayaDepositGatewaySettings)==null?void 0:G.minimumAmount),maximumAmount:i((x=e.mayaDepositGatewaySettings)==null?void 0:x.maximumAmount)},mayaApp:{androidEnabled:(($=e.mayaAppDepositGatewaySettings)==null?void 0:$.androidEnabled)??!1,iosEnabled:((O=e.mayaAppDepositGatewaySettings)==null?void 0:O.iosEnabled)??!1,webEnabled:((W=e.mayaAppDepositGatewaySettings)==null?void 0:W.webEnabled)??!1,mobileWebEnabled:((U=e.mayaAppDepositGatewaySettings)==null?void 0:U.mobileWebEnabled)??!1,minimumAmount:i((B=e.mayaAppDepositGatewaySettings)==null?void 0:B.minimumAmount),maximumAmount:i((q=e.mayaAppDepositGatewaySettings)==null?void 0:q.maximumAmount)}},withdrawalGateway:{bank:{androidEnabled:((F=e.bankWithdrawalGatewaySettings)==null?void 0:F.androidEnabled)??!1,iosEnabled:((L=e.bankWithdrawalGatewaySettings)==null?void 0:L.iosEnabled)??!1,webEnabled:((A=e.bankWithdrawalGatewaySettings)==null?void 0:A.webEnabled)??!1,mobileWebEnabled:((oe=e.bankWithdrawalGatewaySettings)==null?void 0:oe.mobileWebEnabled)??!1,minimumAmount:i((ie=e.bankWithdrawalGatewaySettings)==null?void 0:ie.minimumAmount),maximumAmount:i((se=e.bankWithdrawalGatewaySettings)==null?void 0:se.maximumAmount)},gcash:{androidEnabled:((ce=e.gcashWithdrawalGatewaySettings)==null?void 0:ce.androidEnabled)??!1,iosEnabled:((me=e.gcashWithdrawalGatewaySettings)==null?void 0:me.iosEnabled)??!1,webEnabled:((de=e.gcashWithdrawalGatewaySettings)==null?void 0:de.webEnabled)??!1,mobileWebEnabled:((ue=e.gcashWithdrawalGatewaySettings)==null?void 0:ue.mobileWebEnabled)??!1,minimumAmount:i((le=e.gcashWithdrawalGatewaySettings)==null?void 0:le.minimumAmount),maximumAmount:i((pe=e.gcashWithdrawalGatewaySettings)==null?void 0:pe.maximumAmount,1e6)},maya:{androidEnabled:((fe=e.mayaWithdrawalGatewaySettings)==null?void 0:fe.androidEnabled)??!1,iosEnabled:((he=e.mayaWithdrawalGatewaySettings)==null?void 0:he.iosEnabled)??!1,webEnabled:((we=e.mayaWithdrawalGatewaySettings)==null?void 0:we.webEnabled)??!1,mobileWebEnabled:((ye=e.mayaWithdrawalGatewaySettings)==null?void 0:ye.mobileWebEnabled)??!1,minimumAmount:i((ge=e.mayaWithdrawalGatewaySettings)==null?void 0:ge.minimumAmount),maximumAmount:i((Se=e.mayaWithdrawalGatewaySettings)==null?void 0:Se.maximumAmount)},mayaApp:{androidEnabled:((Ee=e.mayaAppWithdrawalGatewaySettings)==null?void 0:Ee.androidEnabled)??!1,iosEnabled:((be=e.mayaAppWithdrawalGatewaySettings)==null?void 0:be.iosEnabled)??!1,webEnabled:((Ae=e.mayaAppWithdrawalGatewaySettings)==null?void 0:Ae.webEnabled)??!1,mobileWebEnabled:((ke=e.mayaAppWithdrawalGatewaySettings)==null?void 0:ke.mobileWebEnabled)??!1,minimumAmount:i((_e=e.mayaAppWithdrawalGatewaySettings)==null?void 0:_e.minimumAmount),maximumAmount:i((Ce=e.mayaAppWithdrawalGatewaySettings)==null?void 0:Ce.maximumAmount,1e6)}}},pointsClubSettings:{multiplier:i((Te=e.pointsClubSettings)==null?void 0:Te.multiplier,0)}}}account(e){const t={id:e.id,name:e.name,status:e.status,verified:e.verified,nickName:e.nickName??void 0,realName:e.realName??void 0,dateOfBirth:e.birthDay?new Date(e.birthDay):void 0,emailAddress:e.emailAddress??void 0,mobileNumber:e.mobileNumber??void 0,mobileNumberVerified:e.mobileNumberVerified??!1,mobileNumberVerificationRequired:e.mobileNumberVerificationRequired??!1,validId:e.validId||void 0,verificationStatus:e.verificationStatus,transactionPassword:e.transactionPassword,secretAnswerSubmitted:e.secretAnswerSubmitted??!1,dateTimeLastActive:e.dateTimeLastActive?new Date(e.dateTimeLastActive):void 0,dateTimeCreated:new Date(e.dateTimeCreated),dateTimeLastUpdated:new Date(e.dateTimeLastUpdated)};return E(t)}wallet(e){return{id:e.id,balance:i(e.balance,0),currency:e.currency,dateTimeCreated:new Date(e.dateTimeCreated),dateTimeLastUpdated:new Date(e.dateTimeLastUpdated)}}verificationDetails(e){return{id:e.id,status:e.status,address:e.address,nationality:e.nationality,natureOfWork:e.natureOfWork,placeOfBirth:e.placeOfBirth,sourceOfIncome:e.sourceOfIncome,selfieImage:this.file(e.selfieImage),idFrontImage:this.file(e.idFrontImage)}}profileCompletion(e){return{accountPassword:e.accountPassword??!1,accountVerification:e.accountVerification??!1,mobileNumberVerification:e.mobileNumberVerification??!1,personalInformation:e.personalInformation??!1,transactionPassword:e.transactionPassword??!1,completionPercentage:i(e,0)}}announcement(e){return{id:e.id,type:e.type,title:e.title,status:e.status,message:e.message,activationEndDateTime:new Date(e.activationEndDateTime),activationStartDateTime:new Date(e.activationStartDateTime),dateTimeCreated:new Date(e.dateTimeCreated),dateTimeLastUpdated:new Date(e.dateTimeLastUpdated)}}withdrawalRecord(e){const t={id:e.id,type:e.type,bank:e.bank,status:e.status,amount:i(e.amount,0),netAmount:i(e.netAmount,0),fee:i(e.fee,0),reference:e.reference??void 0,withdrawalNumber:e.withdrawalNumber,recipientMobileNumber:e.recipientMobileNumber??void 0,dateTimeConfirmed:e.dateTimeConfirmed?new Date(e.dateTimeConfirmed):void 0,dateTimeCreated:new Date(e.dateTimeCreated),dateTimeLastUpdated:new Date(e.dateTimeLastUpdated)};return E(t)}deposit(e){const t={id:e.id,type:e.type,status:e.status,checkoutUrl:e.checkoutUrl??void 0};return E(t)}depositRecord(e){const t={id:e.id,type:e.type,status:e.status,amount:i(e.amount,0),fee:i(e.fee,0),netAmount:i(e.netAmount,0),reference:e.reference??void 0,depositNumber:e.depositNumber,dateTimeCreated:new Date(e.dateTimeCreated),dateTimeLastUpdated:new Date(e.dateTimeLastUpdated)};return E(t)}betRecord(e){var r;const t={id:e.id,bet:i(e.bet,0),payout:i(e.payout,0),status:e.status,jackpotContribution:i(e.jackpotContribution,0),jackpotPayout:i(e.jackpotPayout,0),winloss:i(e.winloss),validBet:i(e.validBet,0),vendorRoundId:e.vendorRoundId??void 0,game:e.game,serialCode:e.serialCode,dateTimeSettled:e.dateTimeSettled?new Date(e.dateTimeSettled):void 0,dateTimeCreated:new Date(e.dateTimeCreated),dateTimeLastUpdated:new Date(e.dateTimeLastUpdated),betContent:e.betContent??void 0,contestName:e.contestName??void 0,externalCategory:e.externalCategory??void 0,metadata:{odds:((r=e.metadata)==null?void 0:r.odds)??void 0}};return E(t)}latestBetRecord(e){return{id:e.id,member:e.member,game:e.game,bet:i(e.bet,0),payout:i(e.payout,0),validBet:i(e.validBet,0),dateTimeSettled:new Date(e.dateTimeSettled),dateTimeCreated:new Date(e.dateTimeCreated)}}transactionRecord(e){const t={id:e.id,type:e.type,amount:i(e.amount,0),content:e.content??void 0,currentBalance:i(e.currentBalance,0),referenceNumber:e.referenceNumber,dateTimeCreated:new Date(e.dateTimeCreated)};return E(t)}game(e){return{id:e.id,type:e.type,name:e.name,images:this.staticService.gameThumbnails(e),provider:e.provider}}game__next(e){return{id:e.id,type:e.type,tags:e.tags??[],name:e.name,images:this.staticService.gameThumbnails({id:e.externalId,provider:e.provider}),provider:e.provider,externalId:e.externalId}}gameSession(e){const t={id:e.id,status:e.status,launchUrl:e.launchUrl??void 0,dateTimeCreated:new Date(e.dateTimeCreated),dateTimeLastUpdated:new Date(e.dateTimeLastUpdated)};return E(t)}promo(e){return{id:e.id,type:e.type,name:e.name,status:e.status,description:e.description,banner:this.file(e.banner),maximumBonusAmount:i(e.maximumBonusAmount),minimumBonusAmount:i(e.minimumBonusAmount),activationEndDateTime:new Date(e.activationEndDateTime),activationStartDateTime:new Date(e.activationStartDateTime),dateTimeCreated:new Date(e.dateTimeCreated),dateTimeLastUpdated:new Date(e.dateTimeLastUpdated)}}cashback(e){return{id:e.id,name:e.name,description:e.description,status:e.status,banner:this.file(e.banner),activationEndDateTime:new Date(e.activationEndDateTime),activationStartDateTime:new Date(e.activationStartDateTime),dateTimeCreated:new Date(e.dateTimeCreated),dateTimeLastUpdated:new Date(e.dateTimeLastUpdated),turnoverContributionPercentagePerGameProvider:Object.entries(e.turnoverContributionPercentagePerGameProvider).reduce((r,[a,s])=>(r[a]=i(s,0),r),{})}}bonus(e){const t={id:e.id,promo:this.promo(e.promo),deposit:e.deposit?{type:e.deposit.type,status:e.deposit.status,fee:i(e.deposit.fee,0),amount:i(e.deposit.amount,0),netAmount:i(e.deposit.netAmount,0),reference:e.deposit.reference??void 0,dateTimeCreated:new Date(e.deposit.dateTimeCreated),dateTimeLastUpdated:new Date(e.deposit.dateTimeLastUpdated)}:void 0,balance:i(e.balance,0),amount:i(e.amount,0),expiration:new Date(e.expiration),turnoverRequirement:i(e.turnoverRequirement,0),currentTurnoverRequirementContribution:i(e.currentTurnoverRequirementContribution,0),currentTurnoverRequirementContributionPercentage:i(e.currentTurnoverRequirementContributionPercentage,0),dateTimeCreated:new Date(e.dateTimeCreated),dateTimeLastUpdated:new Date(e.dateTimeLastUpdated)};return E(t)}cashbackBonus(e){return{id:e.id,balance:i(e.balance,0),cashback:this.cashback(e.cashback),dateTimeCreated:new Date(e.dateTimeCreated),dateTimeLastUpdated:new Date(e.dateTimeLastUpdated)}}file(e){const t={id:e.id,url:e.url??void 0,status:e.status,dateTimeCreated:new Date(e.dateTimeCreated)};return E(t)}pointsWallet(e){return{id:e.id,points:i(e.points,0),account:e.account,dateTimeCreated:new Date(e.dateTimeCreated)}}pointsWalletTransaction(e){return{id:e.id,type:e.type,amount:i(e.amount,0),balance:i(e.balance,0),dateTimeCreated:new Date(e.dateTimeCreated)}}activityRecord(e){const t={id:e.id,type:e.type,amount:e.amount?i(e.amount,0):void 0,domain:e.domain??void 0,details:e.details,dateTimeCreated:new Date(e.dateTimeCreated)};return E(t)}}class Pt{constructor(e){m(this,"cmsPortalService");m(this,"gameService");m(this,"fileService");m(this,"walletService");m(this,"accountService");m(this,"reportService");m(this,"portalService");m(this,"sessionManager");m(this,"transformer");m(this,"logger");const t=e.environment==="production";this.transformer=new Rt(e),this.logger=new te({enabled:e.logs??!1});const r=t?"https://auth.opexa.io":"https://auth.development.opexa.io",a=t?"https://wallet.opexa.io/graphql":"https://wallet.development.opexa.io/graphql",s=t?"https://report.opexa.io/graphql":"https://report.development.opexa.io/graphql",c=t?"https://account.opexa.io/graphql":"https://account.development.opexa.io/graphql",f=t?"https://portal.opexa.io/graphql":"https://portal.development.opexa.io/graphql",p=t?"https://file.opexa.io/graphql":"https://file.development.opexa.io/graphql",h=t?"https://game.opexa.io/graphql":"https://game.development.opexa.io/graphql",S=t?"https://portal-api.opexacms.io/v1":"https://portal-api.development.opexacms.io/v1";this.cmsPortalService=new At({url:S,site:e.site,platform:e.sitePlatform}),this.sessionManager=new Dt({authUrl:r,walletUrl:a,platform:e.platform,logs:e.logs});const d={middlewares:[this.authMiddleware],fetchOptions:{headers:{Role:"MEMBER","Platform-Code":e.platform}}};this.gameService=new _t(new k(h,d)),this.fileService=new kt(new k(p,d)),this.walletService=new ee(new k(a,d)),this.accountService=new Et(new k(c,d)),this.reportService=new Tt(new k(s,d)),this.portalService=new Ct(new k(f,d))}get authMiddleware(){return async e=>{this.logger.info("Checking for session");const t=await this.sessionManager.get();return t.data?(e.headers.append("Authorization",`Bearer ${t.data.accessToken}`),this.logger.info("Session found"),this.logger.success("Added 'Authorization' header")):this.logger.info("No session found"),e}}async signIn(e){switch(e.type){case"NAME_AND_PASSWORD":{const t=await this.sessionManager.create({...e,password:await b(e.password)});return t.ok?t.data?{ok:!0,data:{"2FAEnabled":!0,authenticator:t.data.authenticator}}:{ok:!0,data:{"2FAEnabled":!1}}:t}default:{const t=await this.sessionManager.create(e);return t.ok?{ok:!0}:t}}}async authenticate(e){switch(e.type){case"SECURITY_QUESTION":return await this.sessionManager.createFromAuthenticator({type:"SECURITY_QUESTION",token:e.token,secretAnswer:await b(e.secretAnswer)});default:return{ok:!1,error:{name:"HttpBadRequest",message:"Invalid input 'type'"}}}}async signOut(){await this.sessionManager.destroy()}watchSession(e){const t=Mt(e.interval??3e4,3e4,6e4);let r=null;const a=()=>setTimeout(async()=>{await this.sessionManager.verify()||await e.onInvalid(),r=a()},t);return r=a(),function(){r&&clearTimeout(r)}}async session(){const e=await this.sessionManager.get();return e.ok?{ok:!0,data:e.data?{id:e.data.session.id,dateTimeCreated:new Date(e.data.session.dateTimeCreated)}:null}:e}async validateMayaSession(){return await this.walletService.validateMayaSession()}async site(){const e=await this.cmsPortalService.self();return e.ok?{ok:!0,data:this.transformer.transform.site(e.data)}:e}async platform(){const e=await this.accountService.platform();return e.ok?{ok:!0,data:this.transformer.transform.platform(e.data)}:e}async account(){const[e,t]=await Promise.all([this.accountService.memberAccount(),this.reportService.member()]);return e.ok?t.ok?{ok:!0,data:this.transformer.transform.account({...e.data,...t.data})}:{ok:!1,error:t.error}:{ok:!1,error:e.error}}async createAccount(e){const t=e.id??l.ObjectId.generate(g.Account).toString(),r=await this.accountService.registerMemberAccount({input:{id:t,name:e.name,birthDay:typeof e.dateOfBirth=="string"?e.dateOfBirth:e.dateOfBirth.toISOString(),password:await b(e.password),mobileNumber:_(e.mobileNumber),domain:e.domain,btag:e.referralCode},verificationCode:e.verificationCode,reCAPTCHAResponse:e.reCAPTCHAResponse});return r.ok?{ok:!0,data:{id:t}}:r}async registerMayaAccount(e){return await this.accountService.registerMayaMemberAccount({input:{name:e.name,password:await b(e.password),domain:e.domain}})}async updateAccount(e,t){return await this.accountService.updateMemberAccount({input:{id:e,data:{...t,password:t.password?await b(t.password):void 0,transactionPassword:t.transactionPassword?await b(t.transactionPassword):void 0,...t.mobileNumber&&{mobileNumber:_(t.mobileNumber)},secretAnswer:t.secretAnswer?await b(t.secretAnswer):void 0}}})}async deleteAccount(e){return await this.accountService.deleteMemberAccount({input:{id:e}})}async verificationDetails(){const e=await this.accountService.memberVerification();return e.ok?{ok:!0,data:e.data?this.transformer.transform.verificationDetails(e.data):null}:e}async submitVerificationDetails(e){const t=e.id??l.ObjectId.generate(g.Verification).toString(),r=await this.accountService.createMemberVerification({input:{id:t,...e}});return r.ok?{ok:!0,data:{id:t}}:r}async updateVerificationDetails(e,t){return await this.accountService.updateMemberVerification({input:{id:e,data:{...t}}})}async resetPassword(e){return await this.accountService.resetPassword({input:{mobileNumber:_(e.mobileNumber),newPassword:await b(e.newPassword)},verificationCode:e.verificationCode})}async verifyMobileNumber(e){return await this.accountService.verifyMobileNumber({input:{verificationCode:e}})}async profileCompletion(){const e=await this.accountService.profileCompletion();return e.ok?{ok:!0,data:this.transformer.transform.profileCompletion(e.data)}:e}async sendVerificationCode(e){return await this.accountService.sendVerificationCode({input:{channel:"SMS",recipient:_(e)}})}async wallet(){const e=await this.walletService.wallet();return e.ok?{ok:!0,data:e.data?this.transformer.transform.wallet(e.data):null}:e}async announcements(e){const t=await this.accountService.announcements({...e,filter:{visibility:{in:["MEMBER","GLOBAL"]},activationStartDateTime:{greaterThanOrEqual:new Date}}});return t.ok?{ok:!0,data:{announcements:t.data.edges.map(({cursor:r,node:a})=>({...this.transformer.transform.announcement(a),cursor:r})),totalCount:t.data.totalCount,endCursor:t.data.pageInfo.endCursor??void 0,hasNextPage:t.data.pageInfo.hasNextPage}}:t}async createWithdrawal(e){const t=e.id??l.ObjectId.generate(g.Withdrawal).toString();if(e.type==="BANK"){const r=await this.walletService.createBankWithdrawal({input:{id:t,amount:e.amount.toString(),transactionPassword:await b(e.transactionPassword)}});if(!r.ok)return r}if(e.type==="GCASH"){const r=await this.walletService.createGCashWithdrawal({input:{id:t,amount:e.amount.toString(),transactionPassword:await b(e.transactionPassword),recipientMobileNumber:_(e.recipientMobileNumber)}});if(!r.ok)return r}if(e.type==="MAYA"){const r=await this.walletService.createMayaWithdrawal({input:{id:t,amount:e.amount.toString(),transactionPassword:await b(e.transactionPassword),recipientMobileNumber:_(e.recipientMobileNumber)}});if(!r.ok)return r}if(e.type==="MAYA_APP"){const r=await this.walletService.createMayaAppWithdrawal({input:{id:t,amount:e.amount.toString(),transactionPassword:await b(e.transactionPassword)}});if(!r.ok)return r}return{ok:!0,data:{id:t}}}async withdrawalRecords(e){const t=await this.reportService.withdrawalRecords(e);return t.ok?{ok:!0,data:{withdrawalRecords:t.data.edges.map(({cursor:r,node:a})=>({...this.transformer.transform.withdrawalRecord(a),cursor:r})),totalCount:t.data.totalCount,endCursor:t.data.pageInfo.endCursor??void 0,hasNextPage:t.data.pageInfo.hasNextPage}}:t}async remainingDailyWithdrawalsCount(){return await this.walletService.remainingDailyWithdrawalsCount()}async createDeposit(e){const t=e.id??l.ObjectId.generate(g.Deposit).toString();if(e.type==="MAYA"){const r=await this.walletService.createMayaDeposit({input:{id:t,amount:e.amount.toString(),promo:e.promo}});if(!r.ok)return r}if(e.type==="MAYA_APP"){const r=await this.walletService.createMayaAppDeposit({input:{id:t,amount:e.amount.toString(),promo:e.promo}});if(!r.ok)return r}if(e.type==="GCASH"){const r=await this.walletService.createGCashDeposit({input:{id:t,amount:e.amount.toString(),promo:e.promo}});if(!r.ok)return r}return{ok:!0,data:{id:t}}}async deposit(e){const t=await this.walletService.deposit({id:e});return t.ok?{ok:!0,data:t.data?this.transformer.transform.deposit(t.data):null}:t}async depositRecords(e){const t=await this.reportService.depositRecords(e);return t.ok?{ok:!0,data:{depositRecords:t.data.edges.map(({cursor:r,node:a})=>({...this.transformer.transform.depositRecord(a),cursor:r})),totalCount:t.data.totalCount,endCursor:t.data.pageInfo.endCursor??void 0,hasNextPage:t.data.pageInfo.hasNextPage}}:t}async depositsCount(){return await this.reportService.depositsCount()}async betRecords(e){var r,a;const t=await this.reportService.betRecords({...e,...(e==null?void 0:e.filter)&&{filter:{...e.filter,...((r=e.filter)==null?void 0:r.gameType)&&{game__type:e.filter.gameType},...((a=e.filter)==null?void 0:a.gameProvider)&&{game__provider:e.filter.gameProvider}}}});return t.ok?{ok:!0,data:{betRecords:t.data.edges.map(({cursor:s,node:c})=>({...this.transformer.transform.betRecord(c),cursor:s})),totalCount:t.data.totalCount,endCursor:t.data.pageInfo.endCursor??void 0,hasNextPage:t.data.pageInfo.hasNextPage}}:t}async latestBetRecords(){const e=await this.portalService.latestBetRecords();return e.ok?{ok:!0,data:e.data.map(this.transformer.transform.latestBetRecord)}:e}async transactionRecords(e){const t=await this.reportService.transactionRecords(e);return t.ok?{ok:!0,data:{transactionRecords:t.data.edges.map(({cursor:r,node:a})=>({...this.transformer.transform.transactionRecord(a),cursor:r})),totalCount:t.data.totalCount,endCursor:t.data.pageInfo.endCursor??void 0,hasNextPage:t.data.pageInfo.hasNextPage}}:t}async promos(){const e=await this.walletService.promos();return e.ok?{ok:!0,data:e.data.map(this.transformer.transform.promo)}:e}async availablePromos(){const e=await this.walletService.availablePromos();return e.ok?{ok:!0,data:e.data.map(this.transformer.transform.promo)}:e}async cashbacks(){const e=await this.walletService.cashbacks();return e.ok?{ok:!0,data:e.data.map(this.transformer.transform.cashback)}:e}async bonus(){const e=await this.walletService.bonus();return e.ok?{ok:!0,data:e.data?this.transformer.transform.bonus(e.data):null}:e}async cashbackBonuses(){const e=await this.walletService.cashbackBonuses();return e.ok?{ok:!0,data:e.data.map(this.transformer.transform.cashbackBonus)}:e}async claimCashbackBonus(e){return await this.walletService.claimCashbackBonus({input:{id:e}})}async game(e){return this.game__next(e)}async game__next(e){const t=await this.cmsPortalService.game(e);return t.ok?{ok:!0,data:t.data?this.transformer.transform.game__next(t.data):null}:t}async games(e){const t=await this.walletService.games(e);return t.ok?{ok:!0,data:{games:t.data.edges.map(({cursor:r,node:a})=>({...this.transformer.transform.game(a),cursor:r})),totalCount:t.data.totalCount,hasNextPage:t.data.pageInfo.hasNextPage,endCursor:t.data.pageInfo.endCursor??void 0}}:t}async games__next(e){const t=await this.cmsPortalService.games(e);return t.ok?{ok:!0,data:{games:t.data.edges.map(({cursor:r,node:a})=>({...this.transformer.transform.game__next(a),cursor:r})),totalCount:t.data.totalCount,hasNextPage:t.data.pageInfo.hasNextPage,endCursor:t.data.pageInfo.endCursor??void 0}}:t}async games__legacy(e){const t=await this.gameService.games(e);return t.ok?{ok:!0,data:{games:t.data.edges.map(({cursor:r,node:a})=>({...this.transformer.transform.game(a),cursor:r})),totalCount:t.data.totalCount,hasNextPage:t.data.pageInfo.hasNextPage,endCursor:t.data.pageInfo.endCursor??void 0}}:t}async gamesByName(e){const t=await this.walletService.gamesByName(e);return t.ok?{ok:!0,data:t.data.map(this.transformer.transform.game)}:t}async gamesByName__legacy(e){const t=await this.gameService.gamesByName(e);return t.ok?{ok:!0,data:t.data.map(this.transformer.transform.game)}:t}async gameSession(e){const t=await this.walletService.gameSession({id:e});return t.ok?{ok:!0,data:t.data?this.transformer.transform.gameSession(t.data):null}:t}async gameSession__legacy(e){const t=await this.gameService.gameSession({id:e});return t.ok?{ok:!0,data:t.data?this.transformer.transform.gameSession(t.data):null}:t}async gameSession__next(e){const t=await this.walletService.gameSession({id:e});if(!t.ok)return t;if(t.data)return{ok:!0,data:this.transformer.transform.gameSession(t.data)};const r=await this.gameService.gameSession({id:e});return r.ok?{ok:!0,data:r.data?this.transformer.transform.gameSession(r.data):null}:r}async createGameSession(e){const t=e.id??l.ObjectId.generate(g.GameSession).toString(),r=await this.walletService.createGameSession({input:{id:t,game:e.game}});return r.ok?{ok:!0,data:{id:t}}:r}async createGameSession__legacy(e){const t=e.id??l.ObjectId.generate(g.GameSession).toString(),r=await this.gameService.createGameSession({input:{id:t,game:e.game}});return r.ok?{ok:!0,data:{id:t}}:r}async createGameSession__next(e){const t=e.id??l.ObjectId.generate(g.GameSession).toString();if(e.game.startsWith("SPORTS:")){const f=await l.ObjectId.generateFromKey(g.Game,e.game).then(h=>h.toString()),p=await this.gameService.createGameSession({input:{id:t,game:f}});return p.ok?{ok:!0,data:{id:t}}:p}const r=await this.game__next(e.game);if(!r.data)return{ok:!1,error:{name:"GameDoesNotExistError",message:"Game does not exist"}};const{provider:a,externalId:s}=r.data,c=xt(a)?await this.walletService.createGameSession({input:{id:t,game:s}}):await this.gameService.createGameSession({input:{id:t,game:s}});return c.ok?{ok:!0,data:{id:t}}:c}async endGameSession(e){return await this.walletService.endGameSession({input:{id:e}})}async endGameSession__legacy(e){return await this.gameService.endGameSession({input:{id:e}})}async endGameSession__next(e){const t=await this.walletService.endGameSession({input:{id:e}});return t.ok?t:await this.gameService.endGameSession({input:{id:e}})}async file(e){const t=await this.fileService.file({id:e});return t.ok?{ok:!0,data:t.data?this.transformer.transform.file(t.data):null}:t}async uploadImageFile(e){const t=e.id??l.ObjectId.generate(g.File).toString(),r=await this.fileService.uploadPrivateImageFile({input:{id:t,file:e.file}});return r.ok?{ok:!0,data:{id:t}}:r}async pointsWallet(){const e=await this.walletService.pointsWallet();return e.ok?{ok:!0,data:e.data?this.transformer.transform.pointsWallet(e.data):null}:e}async pointsToCashConversion(e){return await this.walletService.pointsToCashConversion({input:{amount:e.toString()}})}async pointsWalletTransactions(e){const t=await this.reportService.pointsWalletTransactions(e);return t.ok?{ok:!0,data:{pointsWalletTransactions:t.data.edges.map(({cursor:r,node:a})=>({...this.transformer.transform.pointsWalletTransaction(a),cursor:r})),totalCount:t.data.totalCount,hasNextPage:t.data.pageInfo.hasNextPage,endCursor:t.data.pageInfo.endCursor??void 0}}:t}async activityRecords(e){const t=await this.reportService.activityRecords(e);return t.ok?{ok:!0,data:{activityRecords:t.data.edges.map(({cursor:r,node:a})=>({...this.transformer.transform.activityRecord(a),cursor:r})),totalCount:t.data.totalCount,hasNextPage:t.data.pageInfo.hasNextPage,endCursor:t.data.pageInfo.endCursor??void 0}}:t}}const Gt=["RTG","DARWIN","DRBINGO","MEGABALL","EVOLUTION","EVOLUTION_NETENT","EVOLUTION_REDTIGER"];function xt(n){return Gt.some(e=>e===n)}Object.defineProperty(y,"ObjectId",{enumerable:!0,get:()=>l.ObjectId}),y.ObjectType=g,y.Sdk=Pt,Object.defineProperty(y,Symbol.toStringTag,{value:"Module"})});
|
|
988
988
|
//# sourceMappingURL=index.js.map
|