@opexa/portal-components 0.0.133 → 0.0.134

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (43) hide show
  1. package/dist/services/account.js +39 -13
  2. package/dist/services/file.js +6 -1
  3. package/dist/services/game.d.ts +2 -2
  4. package/dist/services/game.js +8 -2
  5. package/dist/services/portal.d.ts +1 -5
  6. package/dist/services/portal.js +1 -5
  7. package/dist/services/queries.d.ts +0 -1
  8. package/dist/services/queries.js +0 -21
  9. package/dist/services/trigger.js +5 -1
  10. package/dist/services/wallet.js +48 -19
  11. package/dist/ui/AlertDialog/AlertDialog.d.ts +55 -55
  12. package/dist/ui/AlertDialog/alertDialog.recipe.d.ts +5 -5
  13. package/dist/ui/Combobox/Combobox.d.ts +42 -42
  14. package/dist/ui/Combobox/combobox.recipe.d.ts +3 -3
  15. package/dist/ui/DatePicker/DatePicker.d.ts +72 -72
  16. package/dist/ui/DatePicker/datePicker.recipe.d.ts +3 -3
  17. package/dist/ui/Dialog/Dialog.d.ts +55 -55
  18. package/dist/ui/Dialog/dialog.recipe.d.ts +5 -5
  19. package/dist/ui/Drawer/Drawer.d.ts +33 -33
  20. package/dist/ui/Drawer/drawer.recipe.d.ts +3 -3
  21. package/dist/ui/Field/Field.d.ts +21 -21
  22. package/dist/ui/Field/field.recipe.d.ts +3 -3
  23. package/package.json +1 -1
  24. package/dist/components/Quests/CountdownTimer.d.ts +0 -15
  25. package/dist/components/Quests/CountdownTimer.js +0 -33
  26. package/dist/components/Quests/DailyCheckInQuest/DailyCheckInQuest.d.ts +0 -1
  27. package/dist/components/Quests/DailyCheckInQuest/DailyCheckInQuest.js +0 -81
  28. package/dist/components/Quests/DailyCheckInQuest/DailyCheckInQuestRules.d.ts +0 -6
  29. package/dist/components/Quests/DailyCheckInQuest/DailyCheckInQuestRules.js +0 -15
  30. package/dist/components/Quests/OnboardingQuest/OnboardingQuest.d.ts +0 -1
  31. package/dist/components/Quests/OnboardingQuest/OnboardingQuest.js +0 -28
  32. package/dist/components/Quests/OnboardingQuest/OnboardingQuestRules.d.ts +0 -6
  33. package/dist/components/Quests/OnboardingQuest/OnboardingQuestRules.js +0 -15
  34. package/dist/components/Quests/WageringQuest/WageringQuest.d.ts +0 -1
  35. package/dist/components/Quests/WageringQuest/WageringQuest.js +0 -23
  36. package/dist/components/Quests/WageringQuest/WageringQuestRules.d.ts +0 -7
  37. package/dist/components/Quests/WageringQuest/WageringQuestRules.js +0 -17
  38. package/dist/utils/createErrorFromCode.d.ts +0 -2
  39. package/dist/utils/createErrorFromCode.js +0 -11
  40. package/dist/utils/dataUrlToBlob.d.ts +0 -1
  41. package/dist/utils/dataUrlToBlob.js +0 -11
  42. package/dist/utils/resizeImageSize.d.ts +0 -1
  43. package/dist/utils/resizeImageSize.js +0 -6
@@ -20,7 +20,7 @@ export const registerMemberAccount = async (input, options) => {
20
20
  if (res.registerMemberAccount) {
21
21
  const error = new Error();
22
22
  error.name = res.registerMemberAccount.name;
23
- error.message = res.registerMemberAccount.message;
23
+ error.message = ERROR_CODES_MESSAGE_MAP[res.registerMemberAccount.name];
24
24
  Error.captureStackTrace?.(error, registerMemberAccount);
25
25
  throw error;
26
26
  }
@@ -37,7 +37,8 @@ export const registerMemberAccountViaMobile = async (input, options) => {
37
37
  if (res.registerMemberAccountViaMobile) {
38
38
  const error = new Error();
39
39
  error.name = res.registerMemberAccountViaMobile.name;
40
- error.message = res.registerMemberAccountViaMobile.message;
40
+ error.message =
41
+ ERROR_CODES_MESSAGE_MAP[res.registerMemberAccountViaMobile.name];
41
42
  Error.captureStackTrace?.(error, registerMemberAccountViaMobile);
42
43
  throw error;
43
44
  }
@@ -54,7 +55,8 @@ export const registerMemberAccountByMobileNumber = async (input, options) => {
54
55
  if (res.registerMemberAccountByMobileNumber) {
55
56
  const error = new Error();
56
57
  error.name = res.registerMemberAccountByMobileNumber.name;
57
- error.message = res.registerMemberAccountByMobileNumber.message;
58
+ error.message =
59
+ ERROR_CODES_MESSAGE_MAP[res.registerMemberAccountByMobileNumber.name];
58
60
  Error.captureStackTrace?.(error, registerMemberAccountByMobileNumber);
59
61
  throw error;
60
62
  }
@@ -70,7 +72,7 @@ export const registerMemberAccount__next = async (input, options) => {
70
72
  if (res.registerMemberAccount) {
71
73
  const error = new Error();
72
74
  error.name = res.registerMemberAccount.name;
73
- error.message = res.registerMemberAccount.message;
75
+ error.message = ERROR_CODES_MESSAGE_MAP[res.registerMemberAccount.name];
74
76
  Error.captureStackTrace?.(error, registerMemberAccount__next);
75
77
  throw error;
76
78
  }
@@ -86,7 +88,8 @@ export const registerMemberAccountByName = async (input, options) => {
86
88
  if (res.registerMemberAccountByName) {
87
89
  const error = new Error();
88
90
  error.name = res.registerMemberAccountByName.name;
89
- error.message = res.registerMemberAccountByName.message;
91
+ error.message =
92
+ ERROR_CODES_MESSAGE_MAP[res.registerMemberAccountByName.name];
90
93
  Error.captureStackTrace?.(error, registerMemberAccountByName);
91
94
  throw error;
92
95
  }
@@ -106,7 +109,7 @@ export const updateMemberAccount = async (id, data, options) => {
106
109
  if (res.updateMemberAccount) {
107
110
  const error = new Error();
108
111
  error.name = res.updateMemberAccount.name;
109
- error.message = res.updateMemberAccount.message;
112
+ error.message = ERROR_CODES_MESSAGE_MAP[res.updateMemberAccount.name];
110
113
  Error.captureStackTrace?.(error, updateMemberAccount);
111
114
  throw error;
112
115
  }
@@ -133,7 +136,7 @@ export const resetPassword = async (input, options) => {
133
136
  if (res.resetPassword) {
134
137
  const error = new Error();
135
138
  error.name = res.resetPassword.name;
136
- error.message = res.resetPassword.message;
139
+ error.message = ERROR_CODES_MESSAGE_MAP[res.resetPassword.name];
137
140
  Error.captureStackTrace?.(error, resetPassword);
138
141
  throw error;
139
142
  }
@@ -150,7 +153,7 @@ export const verifyMobileNumber = async (verificationCode, options) => {
150
153
  if (res.verifyMobileNumber) {
151
154
  const error = new Error();
152
155
  error.name = res.verifyMobileNumber.name;
153
- error.message = res.verifyMobileNumber.message;
156
+ error.message = ERROR_CODES_MESSAGE_MAP[res.verifyMobileNumber.name];
154
157
  Error.captureStackTrace?.(error, verifyMobileNumber);
155
158
  throw error;
156
159
  }
@@ -160,7 +163,7 @@ export const createMemberVerification = async (input, options) => {
160
163
  if (res.createMemberVerification) {
161
164
  const error = new Error();
162
165
  error.name = res.createMemberVerification.name;
163
- error.message = res.createMemberVerification.message;
166
+ error.message = ERROR_CODES_MESSAGE_MAP[res.createMemberVerification.name];
164
167
  Error.captureStackTrace?.(error, createMemberVerification);
165
168
  throw error;
166
169
  }
@@ -170,7 +173,7 @@ export const createMemberVerification__next = async (input, options) => {
170
173
  if (res.createMemberVerification) {
171
174
  const error = new Error();
172
175
  error.name = res.createMemberVerification.name;
173
- error.message = res.createMemberVerification.message;
176
+ error.message = ERROR_CODES_MESSAGE_MAP[res.createMemberVerification.name];
174
177
  Error.captureStackTrace?.(error, createMemberVerification__next);
175
178
  throw error;
176
179
  }
@@ -180,7 +183,7 @@ export const updateMemberVerification = async (id, data, options) => {
180
183
  if (res.updateMemberVerification) {
181
184
  const error = new Error();
182
185
  error.name = res.updateMemberVerification.name;
183
- error.message = res.updateMemberVerification.message;
186
+ error.message = ERROR_CODES_MESSAGE_MAP[res.updateMemberVerification.name];
184
187
  Error.captureStackTrace?.(error, updateMemberVerification);
185
188
  throw error;
186
189
  }
@@ -214,7 +217,7 @@ export const registerMayaMemberAccount = async (input, options) => {
214
217
  if (res.registerMayaMemberAccount) {
215
218
  const error = new Error();
216
219
  error.name = res.registerMayaMemberAccount.name;
217
- error.message = res.registerMayaMemberAccount.message;
220
+ error.message = ERROR_CODES_MESSAGE_MAP[res.registerMayaMemberAccount.name];
218
221
  Error.captureStackTrace?.(error, registerMayaMemberAccount);
219
222
  throw error;
220
223
  }
@@ -228,7 +231,7 @@ export const updateReferralCode = async (code, options) => {
228
231
  if (res.updateReferralCode) {
229
232
  const error = new Error();
230
233
  error.name = res.updateReferralCode.name;
231
- error.message = res.updateReferralCode.message;
234
+ error.message = ERROR_CODES_MESSAGE_MAP[res.updateReferralCode.name];
232
235
  Error.captureStackTrace?.(error, updateReferralCode);
233
236
  throw error;
234
237
  }
@@ -241,3 +244,26 @@ export const getGoogleClientId = cache(async (options) => {
241
244
  const res = await graphqlRequest(ACCOUNT_GRAPHQL_ENDPOINT, GOOGLE_CLIENT_ID, undefined, options);
242
245
  return res.googleClientId ?? null;
243
246
  });
247
+ const ERROR_CODES_MESSAGE_MAP = {
248
+ AccountNameNotAvailableError: 'Username is no longer available',
249
+ AccountNotFoundError: 'Account does not exist',
250
+ EmailAddressNotAvailableError: 'Email is no longer available',
251
+ FileDoesNotExistError: 'File does not exist',
252
+ FileNotReadyError: 'File is not yet ready',
253
+ InvalidPlatformError: 'Invalid platform',
254
+ InvalidReCAPTCHAResponseError: 'Invalid reCAPTCHA',
255
+ InvalidSMSVerificationCodeError: 'Invalid SMS verification code',
256
+ InvalidTransactionPasswordError: 'Invalid transaction password',
257
+ InvalidVerificationCodeError: 'Invalid verification code',
258
+ MemberVerificationAlreadyApprovedError: 'Member verification is already approved',
259
+ MemberVerificationAlreadyExistsError: 'Member verification already exists',
260
+ MemberVerificationDoesNotExistError: 'Member verification does not exist',
261
+ MinimumAgeRequirementError: 'Minimum age requirement not met',
262
+ MobileNumberAlreadyVerifiedError: 'Mobile number is already verified',
263
+ MobileNumberNotAvailableError: 'Mobile number is no longer available',
264
+ NickNameNotAvailableError: 'Nickname is no longer available',
265
+ RealNameAlreadySetError: 'Real name is already set',
266
+ ValidIdAlreadySetError: 'Valid ID is already set',
267
+ ReferralCodeNotAvailableError: 'Referral code is no longer available',
268
+ ReCAPTCHAVerificationFailedError: 'Invalid reCAPTCHA',
269
+ };
@@ -11,8 +11,13 @@ export const uploadPrivateImageFile = async (input, options) => {
11
11
  if (res.uploadPrivateImageFile) {
12
12
  const error = new Error();
13
13
  error.name = res.uploadPrivateImageFile.name;
14
- error.message = res.uploadPrivateImageFile.message;
14
+ error.message = ERROR_CODES_MESSAGE_MAP[res.uploadPrivateImageFile.name];
15
15
  Error.captureStackTrace?.(error, uploadPrivateImageFile);
16
16
  throw error;
17
17
  }
18
18
  };
19
+ const ERROR_CODES_MESSAGE_MAP = {
20
+ FileFormatNotSupportedError: 'File format is not supported',
21
+ FileNameTooLongError: 'File name is too long',
22
+ FileSizeTooBigError: 'File size is too big',
23
+ };
@@ -23,7 +23,7 @@ export interface CreateGameSessionMutationVariables__Legacy {
23
23
  }
24
24
  export type CreateGameSessionInput__Legacy = Simplify<CreateGameSessionMutationVariables__Legacy['input']>;
25
25
  export declare function createGameSession__legacy(input: CreateGameSessionInput__Legacy, options?: GraphQLRequestOptions): Promise<void>;
26
- export type EndGameSessionError = {
26
+ export type EndGameSessionError__Legacy = {
27
27
  name: 'GameSessionDoesNotExistError';
28
28
  message: string;
29
29
  } | {
@@ -34,7 +34,7 @@ export type EndGameSessionError = {
34
34
  message: string;
35
35
  };
36
36
  export interface EndGameSessionMutation__Legacy {
37
- endGameSession?: null | EndGameSessionError;
37
+ endGameSession?: null | EndGameSessionError__Legacy;
38
38
  }
39
39
  export interface EndGameSessionMutationVariables__Legacy {
40
40
  input: {
@@ -16,7 +16,7 @@ export async function createGameSession__legacy(input, options) {
16
16
  if (res.createGameSession) {
17
17
  const error = new Error();
18
18
  error.name = res.createGameSession.name;
19
- error.message = res.createGameSession.message;
19
+ error.message = ERROR_CODES_MESSAGE_MAP[res.createGameSession.name];
20
20
  Error.captureStackTrace?.(error, createGameSession__legacy);
21
21
  throw error;
22
22
  }
@@ -26,8 +26,14 @@ export async function endGameSession__legacy(id, options) {
26
26
  if (res.endGameSession) {
27
27
  const error = new Error();
28
28
  error.name = res.endGameSession.name;
29
- error.message = res.endGameSession.message;
29
+ error.message = ERROR_CODES_MESSAGE_MAP[res.endGameSession.name];
30
30
  Error.captureStackTrace?.(error, endGameSession__legacy);
31
31
  throw error;
32
32
  }
33
33
  }
34
+ const ERROR_CODES_MESSAGE_MAP = {
35
+ GameDoesNotExistError: 'Game does not exist',
36
+ GameProviderError: 'Game provider error',
37
+ GameSessionAlreadyClosedError: 'Game session is already closed',
38
+ GameSessionDoesNotExistError: 'Game session does not exist',
39
+ };
@@ -1,10 +1,6 @@
1
1
  import type { Simplify } from 'type-fest';
2
- import type { GameType, LatestBetRecord, OnboardingPlayerExperience, OnboardingStatus, Platform, RecommendedGame, TopWin } from '../types';
2
+ import type { GameType, OnboardingPlayerExperience, OnboardingStatus, Platform, RecommendedGame, TopWin } from '../types';
3
3
  import { type GraphQLRequestOptions } from './graphqlRequest';
4
- export interface LatestBetRecordsQuery {
5
- latestBetRecords: LatestBetRecord[];
6
- }
7
- export declare const getLatestBetRecords: (options?: GraphQLRequestOptions) => Promise<LatestBetRecord[]>;
8
4
  export interface PlatformQuery extends Platform {
9
5
  }
10
6
  export declare const getPlatform: (options?: GraphQLRequestOptions) => Promise<PlatformQuery>;
@@ -1,11 +1,7 @@
1
1
  import { cache } from 'react';
2
2
  import { PORTAL_GRAPHQL_ENDPOINT } from '../constants/index.js';
3
3
  import { graphqlRequest } from './graphqlRequest.js';
4
- import { COMPLETE_ONBOARDING, LATEST_BET_RECORDS, ONBOARDING_STATUS, PLATFORM, RECOMMENDED_GAMES, SKIP_ONBOARDING, TOP_WINS, } from './queries.js';
5
- export const getLatestBetRecords = cache(async (options) => {
6
- const res = await graphqlRequest(PORTAL_GRAPHQL_ENDPOINT, LATEST_BET_RECORDS, undefined, options);
7
- return res.latestBetRecords;
8
- });
4
+ import { COMPLETE_ONBOARDING, ONBOARDING_STATUS, PLATFORM, RECOMMENDED_GAMES, SKIP_ONBOARDING, TOP_WINS, } from './queries.js';
9
5
  export const getPlatform = cache(async (options) => {
10
6
  const res = await graphqlRequest(PORTAL_GRAPHQL_ENDPOINT, PLATFORM, undefined, {
11
7
  cache: 'force-cache',
@@ -36,7 +36,6 @@ export declare const DEPOSITS_COUNT = "\n query DepositsCount {\n member {\n
36
36
  export declare const TOUCH_GCASH_DEPOSIT = "\n mutation TouchGCashDeposit($input: TouchGCashDepositInput!) {\n touchGCashDeposit(input: $input)\n }\n";
37
37
  export declare const TOUCH_QRPH_DEPOSIT = "\n mutation TouchQRPHDeposit($input: TouchQRPHDepositInput!) {\n touchQRPHDeposit(input: $input)\n }\n";
38
38
  export declare const BET_RECORDS = "\n query BetRecords($first: Int, $after: Cursor, $filter: BetRecordFilterInput) {\n member {\n betRecords(first: $first, after: $after, filter: $filter) {\n totalCount\n edges {\n cursor\n node {\n ... on BetRecord {\n id\n serialCode\n game {\n id\n name\n type\n provider\n }\n bet\n payout\n winloss\n jackpotPayout\n jackpotContribution\n status\n dateTimeCreated\n dateTimeSettled\n dateTimeLastUpdated\n metadata\n vendorRoundId\n betContent\n contestName\n externalCategory\n }\n }\n }\n pageInfo {\n hasNextPage\n endCursor\n }\n }\n }\n }\n";
39
- export declare const LATEST_BET_RECORDS = "\n query LatestBetRecords {\n latestBetRecords {\n id\n member {\n name\n }\n game {\n id\n name\n type\n provider\n }\n bet\n payout\n validBet\n dateTimeSettled\n dateTimeCreated\n }\n }\n";
40
39
  export declare const TRANSACTION_RECORDS = "\n query TransactionRecords(\n $first: Int\n $after: Cursor\n $filter: TransactionRecordFilter\n ) {\n member {\n transactionRecords(first: $first, after: $after, filter: $filter) {\n edges {\n cursor\n node {\n ... on TransactionRecord {\n id\n type\n amount\n content\n currentBalance\n currentBonusBalance\n referenceNumber\n dateTimeCreated\n }\n }\n }\n totalCount\n pageInfo {\n hasNextPage\n endCursor\n }\n }\n }\n }\n";
41
40
  export declare const PROMO_FRAGMENT = "\n \n fragment FileFragment on File {\n id\n url\n status\n }\n\n\n fragment PromoFragment on Promo {\n id\n type\n name\n banner {\n ...FileFragment\n }\n status\n description\n maximumBonusAmount\n minimumBonusAmount\n maximumDepositAmount\n minimumDepositAmount\n activationStartDateTime\n turnoverRequirementContributionPercentagePerGameProvider\n activationEndDateTime\n dateTimeCreated\n dateTimeLastUpdated\n }\n";
42
41
  export declare const PROMOS = "\n \n \n fragment FileFragment on File {\n id\n url\n status\n }\n\n\n fragment PromoFragment on Promo {\n id\n type\n name\n banner {\n ...FileFragment\n }\n status\n description\n maximumBonusAmount\n minimumBonusAmount\n maximumDepositAmount\n minimumDepositAmount\n activationStartDateTime\n turnoverRequirementContributionPercentagePerGameProvider\n activationEndDateTime\n dateTimeCreated\n dateTimeLastUpdated\n }\n\n\n query Promos {\n promos {\n ...PromoFragment\n }\n }\n";
@@ -980,27 +980,6 @@ export const BET_RECORDS = /* GraphQL */ `
980
980
  }
981
981
  }
982
982
  `;
983
- export const LATEST_BET_RECORDS = /* GraphQL */ `
984
- query LatestBetRecords {
985
- latestBetRecords {
986
- id
987
- member {
988
- name
989
- }
990
- game {
991
- id
992
- name
993
- type
994
- provider
995
- }
996
- bet
997
- payout
998
- validBet
999
- dateTimeSettled
1000
- dateTimeCreated
1001
- }
1002
- }
1003
- `;
1004
983
  export const TRANSACTION_RECORDS = /* GraphQL */ `
1005
984
  query TransactionRecords(
1006
985
  $first: Int
@@ -43,7 +43,7 @@ export const claimReward = async (id, options) => {
43
43
  if (res.claimReward) {
44
44
  const error = new Error();
45
45
  error.name = res.claimReward.name;
46
- error.message = res.claimReward.message;
46
+ error.message = ERROR_CODES_MESSAGE_MAP[res.claimReward.name];
47
47
  Error.captureStackTrace?.(error, claimReward);
48
48
  throw error;
49
49
  }
@@ -86,3 +86,7 @@ export const unregisterFCMDevice = async (input, options) => {
86
86
  throw error;
87
87
  }
88
88
  };
89
+ const ERROR_CODES_MESSAGE_MAP = {
90
+ RewardAlreadyExpiredError: 'Reward is either expired or no longer available',
91
+ RewardAlreadyClaimedError: 'Reward is already claimed',
92
+ };
@@ -53,7 +53,7 @@ export const claimCashbackBonus = async (id, options) => {
53
53
  if (res.claimCashbackBonus) {
54
54
  const error = new Error();
55
55
  error.name = res.claimCashbackBonus.name;
56
- error.message = res.claimCashbackBonus.message;
56
+ error.message = ERROR_CODES_MESSAGE_MAP[res.claimCashbackBonus.name];
57
57
  Error.captureStackTrace?.(error, claimCashbackBonus);
58
58
  throw error;
59
59
  }
@@ -89,7 +89,7 @@ export const createGCashDeposit = async (input, options) => {
89
89
  if (res.createGCashDeposit) {
90
90
  const error = new Error();
91
91
  error.name = res.createGCashDeposit.name;
92
- error.message = res.createGCashDeposit.message;
92
+ error.message = ERROR_CODES_MESSAGE_MAP[res.createGCashDeposit.name];
93
93
  Error.captureStackTrace?.(error, createGCashDeposit);
94
94
  throw error;
95
95
  }
@@ -99,7 +99,8 @@ export const createGCashDirectWebpayDeposit = async (input, options) => {
99
99
  if (res.createGCashDirectWebpayDeposit) {
100
100
  const error = new Error();
101
101
  error.name = res.createGCashDirectWebpayDeposit.name;
102
- error.message = res.createGCashDirectWebpayDeposit.message;
102
+ error.message =
103
+ ERROR_CODES_MESSAGE_MAP[res.createGCashDirectWebpayDeposit.name];
103
104
  Error.captureStackTrace?.(error, createGCashDirectWebpayDeposit);
104
105
  throw error;
105
106
  }
@@ -109,7 +110,7 @@ export const createMayaDeposit = async (input, options) => {
109
110
  if (res.createMayaDeposit) {
110
111
  const error = new Error();
111
112
  error.name = res.createMayaDeposit.name;
112
- error.message = res.createMayaDeposit.message;
113
+ error.message = ERROR_CODES_MESSAGE_MAP[res.createMayaDeposit.name];
113
114
  Error.captureStackTrace?.(error, createMayaDeposit);
114
115
  throw error;
115
116
  }
@@ -119,7 +120,7 @@ export const createAIOQRPHDeposit = async (input, options) => {
119
120
  if (res.createAIOQRPHDeposit) {
120
121
  const error = new Error();
121
122
  error.name = res.createAIOQRPHDeposit.name;
122
- error.message = res.createAIOQRPHDeposit.message;
123
+ error.message = ERROR_CODES_MESSAGE_MAP[res.createAIOQRPHDeposit.name];
123
124
  Error.captureStackTrace?.(error, createAIOQRPHDeposit);
124
125
  throw error;
125
126
  }
@@ -129,7 +130,8 @@ export const createAIOOnlineBankDeposit = async (input, options) => {
129
130
  if (res.createAIOOnlineBankDeposit) {
130
131
  const error = new Error();
131
132
  error.name = res.createAIOOnlineBankDeposit.name;
132
- error.message = res.createAIOOnlineBankDeposit.message;
133
+ error.message =
134
+ ERROR_CODES_MESSAGE_MAP[res.createAIOOnlineBankDeposit.name];
133
135
  Error.captureStackTrace?.(error, createAIOOnlineBankDeposit);
134
136
  throw error;
135
137
  }
@@ -139,7 +141,7 @@ export const createManualBankDeposit = async (input, options) => {
139
141
  if (res.createManualBankDeposit) {
140
142
  const error = new Error();
141
143
  error.name = res.createManualBankDeposit.name;
142
- error.message = res.createManualBankDeposit.message;
144
+ error.message = ERROR_CODES_MESSAGE_MAP[res.createManualBankDeposit.name];
143
145
  Error.captureStackTrace?.(error, createManualBankDeposit);
144
146
  throw error;
145
147
  }
@@ -149,7 +151,7 @@ export const createManualUPIDeposit = async (input, options) => {
149
151
  if (res.createManualUPIDeposit) {
150
152
  const error = new Error();
151
153
  error.name = res.createManualUPIDeposit.name;
152
- error.message = res.createManualUPIDeposit.message;
154
+ error.message = ERROR_CODES_MESSAGE_MAP[res.createManualUPIDeposit.name];
153
155
  Error.captureStackTrace?.(error, createManualUPIDeposit);
154
156
  throw error;
155
157
  }
@@ -159,7 +161,7 @@ export const createMayaAppDeposit = async (input, options) => {
159
161
  if (res.createMayaAppDeposit) {
160
162
  const error = new Error();
161
163
  error.name = res.createMayaAppDeposit.name;
162
- error.message = res.createMayaAppDeposit.message;
164
+ error.message = ERROR_CODES_MESSAGE_MAP[res.createMayaAppDeposit.name];
163
165
  Error.captureStackTrace?.(error, createMayaAppDeposit);
164
166
  throw error;
165
167
  }
@@ -174,7 +176,7 @@ export const createGCashWithdrawal = async (input, options) => {
174
176
  if (res.createGCashWithdrawal) {
175
177
  const error = new Error();
176
178
  error.name = res.createGCashWithdrawal.name;
177
- error.message = res.createGCashWithdrawal.message;
179
+ error.message = ERROR_CODES_MESSAGE_MAP[res.createGCashWithdrawal.name];
178
180
  Error.captureStackTrace?.(error, createGCashWithdrawal);
179
181
  throw error;
180
182
  }
@@ -189,7 +191,7 @@ export const createMayaWithdrawal = async (input, options) => {
189
191
  if (res.createMayaWithdrawal) {
190
192
  const error = new Error();
191
193
  error.name = res.createMayaWithdrawal.name;
192
- error.message = res.createMayaWithdrawal.message;
194
+ error.message = ERROR_CODES_MESSAGE_MAP[res.createMayaWithdrawal.name];
193
195
  Error.captureStackTrace?.(error, createMayaWithdrawal);
194
196
  throw error;
195
197
  }
@@ -204,7 +206,7 @@ export const createMayaAppWithdrawal = async (input, options) => {
204
206
  if (res.createMayaAppWithdrawal) {
205
207
  const error = new Error();
206
208
  error.name = res.createMayaAppWithdrawal.name;
207
- error.message = res.createMayaAppWithdrawal.message;
209
+ error.message = ERROR_CODES_MESSAGE_MAP[res.createMayaAppWithdrawal.name];
208
210
  Error.captureStackTrace?.(error, createMayaAppWithdrawal);
209
211
  throw error;
210
212
  }
@@ -219,7 +221,7 @@ export const createBankWithdrawal = async (input, options) => {
219
221
  if (res.createBankWithdrawal) {
220
222
  const error = new Error();
221
223
  error.name = res.createBankWithdrawal.name;
222
- error.message = res.createBankWithdrawal.message;
224
+ error.message = ERROR_CODES_MESSAGE_MAP[res.createBankWithdrawal.name];
223
225
  Error.captureStackTrace?.(error, createBankWithdrawal);
224
226
  throw error;
225
227
  }
@@ -234,7 +236,8 @@ export const createAIOInstapayWithdrawal = async (input, options) => {
234
236
  if (res.createAIOInstapayWithdrawal) {
235
237
  const error = new Error();
236
238
  error.name = res.createAIOInstapayWithdrawal.name;
237
- error.message = res.createAIOInstapayWithdrawal.message;
239
+ error.message =
240
+ ERROR_CODES_MESSAGE_MAP[res.createAIOInstapayWithdrawal.name];
238
241
  Error.captureStackTrace?.(error, createAIOInstapayWithdrawal);
239
242
  throw error;
240
243
  }
@@ -244,7 +247,7 @@ export const createManualUpiWithdrawal = async (input, options) => {
244
247
  if (res.createManualUpiWithdrawal) {
245
248
  const error = new Error();
246
249
  error.name = res.createManualUpiWithdrawal.name;
247
- error.message = res.createManualUpiWithdrawal.message;
250
+ error.message = ERROR_CODES_MESSAGE_MAP[res.createManualUpiWithdrawal.name];
248
251
  Error.captureStackTrace?.(error, createManualUpiWithdrawal);
249
252
  throw error;
250
253
  }
@@ -254,7 +257,8 @@ export const createManualBankWithdrawal = async (input, options) => {
254
257
  if (res.createManualBankWithdrawal) {
255
258
  const error = new Error();
256
259
  error.name = res.createManualBankWithdrawal.name;
257
- error.message = res.createManualBankWithdrawal.message;
260
+ error.message =
261
+ ERROR_CODES_MESSAGE_MAP[res.createManualBankWithdrawal.name];
258
262
  Error.captureStackTrace?.(error, createManualBankWithdrawal);
259
263
  throw error;
260
264
  }
@@ -283,7 +287,7 @@ export const redeemPointsToCash = async (amount, options) => {
283
287
  if (res.redeemPointsToCash) {
284
288
  const error = new Error();
285
289
  error.name = res.redeemPointsToCash.name;
286
- error.message = res.redeemPointsToCash.message;
290
+ error.message = ERROR_CODES_MESSAGE_MAP[res.redeemPointsToCash.name];
287
291
  Error.captureStackTrace?.(error, redeemPointsToCash);
288
292
  throw error;
289
293
  }
@@ -301,7 +305,7 @@ export const createGameSession = async (input, options) => {
301
305
  if (res.createGameSession) {
302
306
  const error = new Error();
303
307
  error.name = res.createGameSession.name;
304
- error.message = res.createGameSession.message;
308
+ error.message = ERROR_CODES_MESSAGE_MAP[res.createGameSession.name];
305
309
  Error.captureStackTrace?.(error, createGameSession);
306
310
  throw error;
307
311
  }
@@ -339,7 +343,7 @@ export const claimSpotBonus = async (code, options) => {
339
343
  if (res.claimSpotBonus) {
340
344
  const error = new Error();
341
345
  error.name = res.claimSpotBonus.name;
342
- error.message = res.claimSpotBonus.message;
346
+ error.message = ERROR_CODES_MESSAGE_MAP[res.claimSpotBonus.name];
343
347
  Error.captureStackTrace?.(error, claimSpotBonus);
344
348
  throw error;
345
349
  }
@@ -388,3 +392,28 @@ export const getFavoriteGames = cache(async (options) => {
388
392
  const res = await graphqlRequest(WALLET_GRAPHQL_ENDPOINT, FAVORITE_GAMES, undefined, options);
389
393
  return res.favoriteGames;
390
394
  });
395
+ const ERROR_CODES_MESSAGE_MAP = {
396
+ PointsNotDivisibleBy100Error: 'Please input points that are multiples of 100.',
397
+ MaximumBonusesCountLimitExceededError: 'Maximum bonuses reached',
398
+ InvalidPromoCodeError: 'Invalid Promo Code',
399
+ SpotBonusAlreadyClaimedError: 'This promo code has already been redeemed and cannot be used again',
400
+ AccountNotVerifiedError: 'Account is not verified',
401
+ CashbackBonusDoesNotExistError: 'Cashback bonus does not exists',
402
+ DepositPromoMaximumAmountExceededError: 'Deposit amount exceeds maximum amount for selected promo',
403
+ DepositPromoMinimumAmountNotMetError: 'Deposit amount does not meet minimum amount for selected promo',
404
+ GameDoesNotExistError: 'Game does not exist',
405
+ InsufficientPointsError: 'Insufficient points',
406
+ InvalidTransactionPasswordError: 'Invalid transaction password',
407
+ InvalidWithdrawalAmountError: 'Invalid withdrawal amount',
408
+ MaximumDepositAmountExceededError: 'Maximum deposit amount exceeded',
409
+ MinimumDepositAmountNotMetError: 'Minimum deposit amount not met',
410
+ MinimumFirstDepositAmountNotMetError: 'Minimum first deposit amount not met',
411
+ MobileNumberNotVerifiedError: 'Mobile number is not verified',
412
+ NotEnoughBalanceError: 'Insufficient balance',
413
+ PromoNotEnabledError: 'Promo is not enabled',
414
+ WalletDoesNotExistError: 'Wallet does not exist',
415
+ WithdrawalDailyLimitExceededError: 'Daily withdrawal limit exceeded',
416
+ ReCAPTCHAVerificationFailedError: 'Invalid reCAPTCHA',
417
+ UPIReferenceNotAvailableError: 'UPI reference is no longer available',
418
+ GCashDirectApiRequestError: 'GCash direct API request error',
419
+ };