@opexa/portal-components 0.0.925 → 0.0.926

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 (201) hide show
  1. package/dist/assets/providers/alize.png +0 -0
  2. package/dist/assets/providers/bigtime-gaming.png +0 -0
  3. package/dist/assets/providers/bng.png +0 -0
  4. package/dist/assets/providers/boongo.png +0 -0
  5. package/dist/assets/providers/btg.png +0 -0
  6. package/dist/assets/providers/cq9.png +0 -0
  7. package/dist/assets/providers/darwin.png +0 -0
  8. package/dist/assets/providers/digitain.png +0 -0
  9. package/dist/assets/providers/evolution.png +0 -0
  10. package/dist/assets/providers/fantasma-games.png +0 -0
  11. package/dist/assets/providers/fc.png +0 -0
  12. package/dist/assets/providers/fp.png +0 -0
  13. package/dist/assets/providers/habanero.png +0 -0
  14. package/dist/assets/providers/hacksaw.png +0 -0
  15. package/dist/assets/providers/jdb.png +0 -0
  16. package/dist/assets/providers/jili.png +0 -0
  17. package/dist/assets/providers/leap.png +0 -0
  18. package/dist/assets/providers/live-22-metaverse.png +0 -0
  19. package/dist/assets/providers/netent.png +0 -0
  20. package/dist/assets/providers/no-limit.png +0 -0
  21. package/dist/assets/providers/pg.png +0 -0
  22. package/dist/assets/providers/pgsoft.png +0 -0
  23. package/dist/assets/providers/pragmatic-play.png +0 -0
  24. package/dist/assets/providers/realtime-gaming.png +0 -0
  25. package/dist/assets/providers/redtiger.png +0 -0
  26. package/dist/assets/providers/rtg.png +0 -0
  27. package/dist/assets/providers/sagaming.png +0 -0
  28. package/dist/client/hooks/useAiOGCashDepositMutation.d.ts +4 -0
  29. package/dist/client/hooks/useAiOGCashDepositMutation.js +90 -0
  30. package/dist/client/hooks/useAiOGrabPayDepositMutation.d.ts +4 -0
  31. package/dist/client/hooks/useAiOGrabPayDepositMutation.js +80 -0
  32. package/dist/client/hooks/useAiOPalawanPayDepositMutation.d.ts +4 -0
  33. package/dist/client/hooks/useAiOPalawanPayDepositMutation.js +80 -0
  34. package/dist/client/hooks/useAiOPayMayaDepositMutation.d.ts +4 -0
  35. package/dist/client/hooks/useAiOPayMayaDepositMutation.js +80 -0
  36. package/dist/client/hooks/useRedeemVoucherMutation.d.ts +3 -0
  37. package/dist/client/hooks/useRedeemVoucherMutation.js +24 -0
  38. package/dist/components/Banner/Banner.client.d.ts +12 -0
  39. package/dist/components/Banner/Banner.client.js +49 -0
  40. package/dist/components/DepositWithdrawal/AiOPaymentMethods.d.ts +11 -0
  41. package/dist/components/DepositWithdrawal/AiOPaymentMethods.js +55 -0
  42. package/dist/components/DepositWithdrawal/Deposit/AurixPayPayMayaDeposit/AurixPayGrabPayDeposit.js +21 -2
  43. package/dist/components/DepositWithdrawal/Deposit/Deposit.js +6 -1
  44. package/dist/components/DepositWithdrawal/Deposit/QRPHDeposit/QRPHDepositAlert.d.ts +1 -0
  45. package/dist/components/DepositWithdrawal/Deposit/QRPHDeposit/QRPHDepositAlert.js +99 -0
  46. package/dist/components/DepositWithdrawal/Deposit/QRPHDeposit/QRPHDepositDetails.d.ts +1 -0
  47. package/dist/components/DepositWithdrawal/Deposit/QRPHDeposit/QRPHDepositDetails.js +17 -0
  48. package/dist/components/DepositWithdrawal/Deposit/QRPHDeposit/QRPHDepositForm.d.ts +1 -0
  49. package/dist/components/DepositWithdrawal/Deposit/QRPHDeposit/QRPHDepositForm.js +116 -0
  50. package/dist/components/DepositWithdrawal/Deposit/QRPHDeposit/QRPHQRCode.d.ts +3 -0
  51. package/dist/components/DepositWithdrawal/Deposit/QRPHDeposit/QRPHQRCode.js +69 -0
  52. package/dist/components/DepositWithdrawal/Deposit/QRPHDeposit__legacy/QRPHDeposit.d.ts +1 -0
  53. package/dist/components/DepositWithdrawal/Deposit/QRPHDeposit__legacy/QRPHDeposit.js +10 -0
  54. package/dist/components/DepositWithdrawal/Deposit/QRPHDeposit__legacy/QRPHDepositAlert.d.ts +1 -0
  55. package/dist/components/DepositWithdrawal/Deposit/QRPHDeposit__legacy/QRPHDepositAlert.js +99 -0
  56. package/dist/components/DepositWithdrawal/Deposit/QRPHDeposit__legacy/QRPHDepositContext.d.ts +25 -0
  57. package/dist/components/DepositWithdrawal/Deposit/QRPHDeposit__legacy/QRPHDepositContext.js +2 -0
  58. package/dist/components/DepositWithdrawal/Deposit/QRPHDeposit__legacy/QRPHDepositDetails.d.ts +1 -0
  59. package/dist/components/DepositWithdrawal/Deposit/QRPHDeposit__legacy/QRPHDepositDetails.js +17 -0
  60. package/dist/components/DepositWithdrawal/Deposit/QRPHDeposit__legacy/QRPHDepositForm.d.ts +1 -0
  61. package/dist/components/DepositWithdrawal/Deposit/QRPHDeposit__legacy/QRPHDepositForm.js +116 -0
  62. package/dist/components/DepositWithdrawal/Deposit/QRPHDeposit__legacy/QRPHQRCode.d.ts +3 -0
  63. package/dist/components/DepositWithdrawal/Deposit/QRPHDeposit__legacy/QRPHQRCode.js +69 -0
  64. package/dist/components/DepositWithdrawal/Deposit/QRPHDeposit__legacy/useQRPHDeposit.d.ts +13 -0
  65. package/dist/components/DepositWithdrawal/Deposit/QRPHDeposit__legacy/useQRPHDeposit.js +85 -0
  66. package/dist/components/DepositWithdrawal/Deposit/Voucher/Voucher.d.ts +1 -0
  67. package/dist/components/DepositWithdrawal/Deposit/Voucher/Voucher.js +86 -0
  68. package/dist/components/DepositWithdrawal/Deposit/Voucher/definition.d.ts +11 -0
  69. package/dist/components/DepositWithdrawal/Deposit/Voucher/definition.js +6 -0
  70. package/dist/components/DepositWithdrawal/Deposit__legacy/AiOGCashDeposit/AiOGCashDeposit.d.ts +1 -0
  71. package/dist/components/DepositWithdrawal/Deposit__legacy/AiOGCashDeposit/AiOGCashDeposit.js +173 -0
  72. package/dist/components/DepositWithdrawal/Deposit__legacy/AiOGrabPayDeposit/AiOGrabPayDeposit.d.ts +1 -0
  73. package/dist/components/DepositWithdrawal/Deposit__legacy/AiOGrabPayDeposit/AiOGrabPayDeposit.js +171 -0
  74. package/dist/components/DepositWithdrawal/Deposit__legacy/AiOPalawanPayDeposit/AiOPalawanPayDeposit.d.ts +1 -0
  75. package/dist/components/DepositWithdrawal/Deposit__legacy/AiOPalawanPayDeposit/AiOPalawanPayDeposit.js +171 -0
  76. package/dist/components/DepositWithdrawal/Deposit__legacy/AiOPayMayaDeposit/AiOPayMayaDeposit.d.ts +1 -0
  77. package/dist/components/DepositWithdrawal/Deposit__legacy/AiOPayMayaDeposit/AiOPayMayaDeposit.js +171 -0
  78. package/dist/components/DepositWithdrawal/Deposit__legacy/AvailablePromos.d.ts +8 -0
  79. package/dist/components/DepositWithdrawal/Deposit__legacy/AvailablePromos.js +33 -0
  80. package/dist/components/DepositWithdrawal/Deposit__legacy/Deposit.d.ts +1 -0
  81. package/dist/components/DepositWithdrawal/Deposit__legacy/Deposit.js +120 -0
  82. package/dist/components/DepositWithdrawal/Deposit__legacy/GCashDeposit/GCashDeposit.d.ts +1 -0
  83. package/dist/components/DepositWithdrawal/Deposit__legacy/GCashDeposit/GCashDeposit.js +163 -0
  84. package/dist/components/DepositWithdrawal/Deposit__legacy/GCashWebpayDeposit/GCashWebpayDeposit.d.ts +1 -0
  85. package/dist/components/DepositWithdrawal/Deposit__legacy/GCashWebpayDeposit/GCashWebpayDeposit.js +165 -0
  86. package/dist/components/DepositWithdrawal/Deposit__legacy/LibanganDeposit/LibanganDeposit.d.ts +1 -0
  87. package/dist/components/DepositWithdrawal/Deposit__legacy/LibanganDeposit/LibanganDeposit.js +186 -0
  88. package/dist/components/DepositWithdrawal/Deposit__legacy/MayaAppDeposit/MayaAppDeposit.d.ts +1 -0
  89. package/dist/components/DepositWithdrawal/Deposit__legacy/MayaAppDeposit/MayaAppDeposit.js +157 -0
  90. package/dist/components/DepositWithdrawal/Deposit__legacy/MayaDeposit/MayaDeposit.d.ts +1 -0
  91. package/dist/components/DepositWithdrawal/Deposit__legacy/MayaDeposit/MayaDeposit.js +163 -0
  92. package/dist/components/DepositWithdrawal/Deposit__legacy/MayaWebpayDeposit/MayaWebpayDeposit.d.ts +1 -0
  93. package/dist/components/DepositWithdrawal/Deposit__legacy/MayaWebpayDeposit/MayaWebpayDeposit.js +166 -0
  94. package/dist/components/DepositWithdrawal/Deposit__legacy/OnlineBankDeposit/OnlineBankDeposit.d.ts +1 -0
  95. package/dist/components/DepositWithdrawal/Deposit__legacy/OnlineBankDeposit/OnlineBankDeposit.js +10 -0
  96. package/dist/components/DepositWithdrawal/Deposit__legacy/OnlineBankDeposit/OnlineBankDepositAlert.d.ts +1 -0
  97. package/dist/components/DepositWithdrawal/Deposit__legacy/OnlineBankDeposit/OnlineBankDepositAlert.js +99 -0
  98. package/dist/components/DepositWithdrawal/Deposit__legacy/OnlineBankDeposit/OnlineBankDepositContext.d.ts +25 -0
  99. package/dist/components/DepositWithdrawal/Deposit__legacy/OnlineBankDeposit/OnlineBankDepositContext.js +2 -0
  100. package/dist/components/DepositWithdrawal/Deposit__legacy/OnlineBankDeposit/OnlineBankDepositDetails.d.ts +1 -0
  101. package/dist/components/DepositWithdrawal/Deposit__legacy/OnlineBankDeposit/OnlineBankDepositDetails.js +19 -0
  102. package/dist/components/DepositWithdrawal/Deposit__legacy/OnlineBankDeposit/OnlineBankDepositForm.d.ts +1 -0
  103. package/dist/components/DepositWithdrawal/Deposit__legacy/OnlineBankDeposit/OnlineBankDepositForm.js +115 -0
  104. package/dist/components/DepositWithdrawal/Deposit__legacy/OnlineBankDeposit/useOnlineBankDeposit.d.ts +13 -0
  105. package/dist/components/DepositWithdrawal/Deposit__legacy/OnlineBankDeposit/useOnlineBankDeposit.js +81 -0
  106. package/dist/components/DepositWithdrawal/Deposit__legacy/PisoPayDeposit/PisoPayDeposit.d.ts +1 -0
  107. package/dist/components/DepositWithdrawal/Deposit__legacy/PisoPayDeposit/PisoPayDeposit.js +180 -0
  108. package/dist/components/DepositWithdrawal/Deposit__legacy/QRPHDeposit/QRPHDeposit.d.ts +1 -0
  109. package/dist/components/DepositWithdrawal/Deposit__legacy/QRPHDeposit/QRPHDeposit.js +10 -0
  110. package/dist/components/DepositWithdrawal/Deposit__legacy/QRPHDeposit/QRPHDepositAlert.d.ts +1 -0
  111. package/dist/components/DepositWithdrawal/Deposit__legacy/QRPHDeposit/QRPHDepositAlert.js +99 -0
  112. package/dist/components/DepositWithdrawal/Deposit__legacy/QRPHDeposit/QRPHDepositContext.d.ts +25 -0
  113. package/dist/components/DepositWithdrawal/Deposit__legacy/QRPHDeposit/QRPHDepositContext.js +2 -0
  114. package/dist/components/DepositWithdrawal/Deposit__legacy/QRPHDeposit/QRPHDepositDetails.d.ts +1 -0
  115. package/dist/components/DepositWithdrawal/Deposit__legacy/QRPHDeposit/QRPHDepositDetails.js +17 -0
  116. package/dist/components/DepositWithdrawal/Deposit__legacy/QRPHDeposit/QRPHDepositForm.d.ts +1 -0
  117. package/dist/components/DepositWithdrawal/Deposit__legacy/QRPHDeposit/QRPHDepositForm.js +116 -0
  118. package/dist/components/DepositWithdrawal/Deposit__legacy/QRPHDeposit/QRPHQRCode.d.ts +3 -0
  119. package/dist/components/DepositWithdrawal/Deposit__legacy/QRPHDeposit/QRPHQRCode.js +69 -0
  120. package/dist/components/DepositWithdrawal/Deposit__legacy/QRPHDeposit/useQRPHDeposit.d.ts +13 -0
  121. package/dist/components/DepositWithdrawal/Deposit__legacy/QRPHDeposit/useQRPHDeposit.js +85 -0
  122. package/dist/components/DepositWithdrawal/PaymentMethods.js +9 -2
  123. package/dist/components/DepositWithdrawal/utils.d.ts +1 -1
  124. package/dist/components/DepositWithdrawal/utils.js +1 -0
  125. package/dist/components/DigitainLauncher/Loading.d.ts +1 -0
  126. package/dist/components/DigitainLauncher/Loading.js +5 -0
  127. package/dist/components/Jackpots/JackpotsCarousel/JackpotsCarouselItem.module.css +184 -0
  128. package/dist/components/Jackpots/JackpotsList/JackpotsListItem.module.css +184 -0
  129. package/dist/components/KYC/BasicInformation.d.ts +1 -0
  130. package/dist/components/KYC/BasicInformation.js +101 -0
  131. package/dist/components/KYC/IdentityVerification.d.ts +1 -0
  132. package/dist/components/KYC/IdentityVerification.js +120 -0
  133. package/dist/components/KYC/Indicator.d.ts +1 -0
  134. package/dist/components/KYC/Indicator.js +8 -0
  135. package/dist/components/KYC/KYC.lazy.d.ts +6 -0
  136. package/dist/components/KYC/KYC.lazy.js +45 -0
  137. package/dist/components/KYC/KYCContext.d.ts +6 -0
  138. package/dist/components/KYC/KYCContext.js +2 -0
  139. package/dist/components/KYC/KYCDefault/BasicInformation.d.ts +1 -0
  140. package/dist/components/KYC/KYCDefault/BasicInformation.js +101 -0
  141. package/dist/components/KYC/KYCNonPagCor/PersonalInformation.js +51 -5
  142. package/dist/components/KYC/KYCNonPagCor/useKYCNonPagCor.js +5 -3
  143. package/dist/components/KYC/KYCVerificationStatus.d.ts +1 -0
  144. package/dist/components/KYC/KYCVerificationStatus.js +10 -0
  145. package/dist/components/KYC/KYCVerificationStatus.lazy.d.ts +1 -0
  146. package/dist/components/KYC/KYCVerificationStatus.lazy.js +36 -0
  147. package/dist/components/KYC/PersonalInformation.d.ts +1 -0
  148. package/dist/components/KYC/PersonalInformation.js +122 -0
  149. package/dist/components/KYC/useKYC.d.ts +25 -0
  150. package/dist/components/KYC/useKYC.js +38 -0
  151. package/dist/components/KYCNotRequired/KYCNotRequired.d.ts +0 -0
  152. package/dist/components/KYCNotRequired/KYCNotRequired.js +1 -0
  153. package/dist/components/PortalProvider/AndroidOnlyComponents.d.ts +1 -0
  154. package/dist/components/PortalProvider/AndroidOnlyComponents.js +12 -0
  155. package/dist/components/PortalProvider/CXDTokenObserver.d.ts +1 -0
  156. package/dist/components/PortalProvider/CXDTokenObserver.js +30 -0
  157. package/dist/components/PortalProvider/LinkGoogleAccountObserver.d.ts +1 -0
  158. package/dist/components/PortalProvider/LinkGoogleAccountObserver.js +29 -0
  159. package/dist/components/Quests/MultiWageringQuest.d.ts +1 -0
  160. package/dist/components/Quests/MultiWageringQuest.js +111 -0
  161. package/dist/components/SessionWatcher/SessionWatcher.d.ts +1 -0
  162. package/dist/components/SessionWatcher/SessionWatcher.js +20 -0
  163. package/dist/components/SessionWatcher/index.d.ts +1 -0
  164. package/dist/components/SessionWatcher/index.js +1 -0
  165. package/dist/components/SignIn/utils.d.ts +8 -0
  166. package/dist/components/SignIn/utils.js +26 -0
  167. package/dist/components/SingleSignOn/SingleSignOn.d.ts +1 -1
  168. package/dist/components/SingleSignOn/SingleSignOn.js +7 -15
  169. package/dist/constants/Branches.d.ts +2 -0
  170. package/dist/constants/Branches.js +42 -0
  171. package/dist/icons/CelebrationIcon.d.ts +2 -0
  172. package/dist/icons/CelebrationIcon.js +4 -0
  173. package/dist/images/game-providers/ALPHACHINKO.png +0 -0
  174. package/dist/images/responsible-gaming-yellow.png +0 -0
  175. package/dist/images/voucher-lazada.png +0 -0
  176. package/dist/images/voucher-ticket.png +0 -0
  177. package/dist/services/queries.d.ts +1 -0
  178. package/dist/services/queries.js +18 -0
  179. package/dist/services/wallet.d.ts +25 -0
  180. package/dist/services/wallet.js +19 -1
  181. package/dist/third-parties/FacebookPixel/FacebookPixel.d.ts +4 -0
  182. package/dist/third-parties/FacebookPixel/FacebookPixel.js +4 -0
  183. package/dist/third-parties/FacebookPixel/api.d.ts +0 -0
  184. package/dist/third-parties/FacebookPixel/api.js +1 -0
  185. package/dist/third-parties/FacebookPixel/index.d.ts +1 -0
  186. package/dist/third-parties/FacebookPixel/index.js +1 -0
  187. package/dist/third-parties/GoogleRecaptcha/GoogleRecaptcha.d.ts +4 -0
  188. package/dist/third-parties/GoogleRecaptcha/GoogleRecaptcha.js +4 -0
  189. package/dist/third-parties/GoogleRecaptcha/api.d.ts +0 -0
  190. package/dist/third-parties/GoogleRecaptcha/api.js +1 -0
  191. package/dist/third-parties/GoogleRecaptcha/index.d.ts +1 -0
  192. package/dist/third-parties/GoogleRecaptcha/index.js +1 -0
  193. package/dist/third-parties/index.d.ts +2 -0
  194. package/dist/third-parties/index.js +2 -0
  195. package/dist/ui/QrCode/QrCode.d.ts +25 -25
  196. package/dist/ui/QrCode/qrCode.recipe.d.ts +5 -5
  197. package/dist/utils/getLocaleInfo.d.ts +79 -0
  198. package/dist/utils/getLocaleInfo.js +175 -0
  199. package/dist/utils/mutationKeys.d.ts +1 -0
  200. package/dist/utils/mutationKeys.js +4 -0
  201. package/package.json +1 -1
@@ -0,0 +1,120 @@
1
+ import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { useEffect, useState } from 'react';
3
+ import { useFeatureFlag } from '../../../client/hooks/useFeatureFlag.js';
4
+ import { useIsMayaSessionValidQuery } from '../../../client/hooks/useIsMayaSessionValidQuery.js';
5
+ import { useMayaAuth } from '../../../client/hooks/useMayaAuth.js';
6
+ import { usePaymentSettingsQuery } from '../../../client/hooks/usePaymentSettingsQuery.js';
7
+ import { AlertCircleIcon } from '../../../icons/AlertCircleIcon.js';
8
+ import { SpinnerIcon } from '../../../icons/SpinnerIcon.js';
9
+ import { onMobileDevice } from '../../../utils/onMobileDevice.js';
10
+ import { PaymentMethods } from '../PaymentMethods.js';
11
+ import { AiOGCashDeposit } from './AiOGCashDeposit/AiOGCashDeposit.js';
12
+ import { AiOGrabPayDeposit } from './AiOGrabPayDeposit/AiOGrabPayDeposit.js';
13
+ import { AiOPalawanPayDeposit } from './AiOPalawanPayDeposit/AiOPalawanPayDeposit.js';
14
+ import { AiOPayMayaDeposit } from './AiOPayMayaDeposit/AiOPayMayaDeposit.js';
15
+ import { GCashDeposit } from './GCashDeposit/GCashDeposit.js';
16
+ import { GCashWebpayDeposit } from './GCashWebpayDeposit/GCashWebpayDeposit.js';
17
+ import { LibanganDeposit } from './LibanganDeposit/LibanganDeposit.js';
18
+ import { MayaAppDeposit } from './MayaAppDeposit/MayaAppDeposit.js';
19
+ import { MayaDeposit } from './MayaDeposit/MayaDeposit.js';
20
+ import { MayaWebpayDeposit } from './MayaWebpayDeposit/MayaWebpayDeposit.js';
21
+ import { OnlineBankDeposit } from './OnlineBankDeposit/OnlineBankDeposit.js';
22
+ import { PisoPayDeposit } from './PisoPayDeposit/PisoPayDeposit.js';
23
+ import { QRPHDeposit } from './QRPHDeposit/QRPHDeposit.js';
24
+ export function Deposit() {
25
+ const { onMaya } = useMayaAuth();
26
+ const paymentSettingsQuery = usePaymentSettingsQuery();
27
+ const paymentSettings = paymentSettingsQuery.data;
28
+ const featureFlag = useFeatureFlag();
29
+ const enabledPaymentMethods = (() => {
30
+ const l = [];
31
+ if (onMaya) {
32
+ l.push('MAYA_APP');
33
+ return l;
34
+ }
35
+ const isMobile = onMobileDevice();
36
+ const enabledKey = isMobile ? 'mobileWebEnabled' : 'webEnabled';
37
+ const paymentMethods = [
38
+ {
39
+ method: 'GCASH',
40
+ enabled: paymentSettings?.gcashDepositGatewaySettings?.[enabledKey],
41
+ },
42
+ {
43
+ method: 'MAYA',
44
+ enabled: paymentSettings?.mayaDepositGatewaySettings?.[enabledKey],
45
+ },
46
+ {
47
+ method: 'QRPH',
48
+ enabled: paymentSettings?.qrphDepositGatewaySettings?.[enabledKey],
49
+ },
50
+ {
51
+ method: 'ONLINE_BANK',
52
+ enabled: paymentSettings?.onlineBankDepositGatewaySettings?.[enabledKey],
53
+ },
54
+ {
55
+ method: 'LIBANGAN_PAY_IN',
56
+ enabled: paymentSettings?.libanganDepositGatewaySettings?.[enabledKey],
57
+ },
58
+ {
59
+ method: 'PISO_PAY',
60
+ enabled: paymentSettings?.pisoPayDepositGatewaySettings?.[enabledKey],
61
+ },
62
+ {
63
+ method: 'AIO_GCASH',
64
+ enabled: paymentSettings?.aioGCashDepositGatewaySettings?.[enabledKey],
65
+ },
66
+ {
67
+ method: 'AIO_PAY_MAYA',
68
+ enabled: paymentSettings?.aioPayMayaDepositGatewaySettings?.[enabledKey],
69
+ },
70
+ {
71
+ method: 'AIO_GRAB_PAY',
72
+ enabled: paymentSettings?.aioGrabPayDepositGatewaySettings?.[enabledKey],
73
+ },
74
+ {
75
+ method: 'AIO_PALAWAN_PAY',
76
+ enabled: paymentSettings?.aioPalawanPayDepositGatewaySettings?.[enabledKey],
77
+ },
78
+ {
79
+ method: 'GCASH_WEBPAY',
80
+ enabled: paymentSettings?.gcashWebpayDepositGatewaySettings?.[enabledKey] &&
81
+ featureFlag.enabled,
82
+ },
83
+ {
84
+ method: 'MAYA_WEBPAY',
85
+ enabled: paymentSettings?.mayaWebpayDepositGatewaySettings?.[enabledKey] &&
86
+ featureFlag.enabled,
87
+ },
88
+ ];
89
+ paymentMethods.forEach((o) => {
90
+ if (o.enabled) {
91
+ l.push(o.method);
92
+ }
93
+ });
94
+ return l;
95
+ })();
96
+ const [paymentMethod, setPaymentMethod] = useState();
97
+ useEffect(() => {
98
+ if (enabledPaymentMethods.length > 0 && !paymentMethod) {
99
+ setPaymentMethod(enabledPaymentMethods[0]);
100
+ }
101
+ }, [enabledPaymentMethods, paymentMethod]);
102
+ const isMayaSessionValidQuery = useIsMayaSessionValidQuery();
103
+ const isMayaSessionValid = isMayaSessionValidQuery.data ?? true;
104
+ if (paymentSettingsQuery.isLoading || isMayaSessionValidQuery.isLoading) {
105
+ return _jsx(SpinnerIcon, { className: "mx-auto size-6" });
106
+ }
107
+ if (!isMayaSessionValid) {
108
+ return _jsx(MayaSessionSessionExpired, {});
109
+ }
110
+ if (enabledPaymentMethods.length <= 0) {
111
+ return _jsx(NoAvailablePaymentMethods, {});
112
+ }
113
+ return (_jsxs(_Fragment, { children: [_jsx(PaymentMethods, { value: paymentMethod, onChange: setPaymentMethod, options: enabledPaymentMethods }), paymentMethod === 'QRPH' && _jsx(QRPHDeposit, {}), paymentMethod === 'GCASH' && _jsx(GCashDeposit, {}), paymentMethod === 'MAYA' && _jsx(MayaDeposit, {}), paymentMethod === 'MAYA_APP' && _jsx(MayaAppDeposit, {}), paymentMethod === 'ONLINE_BANK' && _jsx(OnlineBankDeposit, {}), paymentMethod === 'LIBANGAN_PAY_IN' && _jsx(LibanganDeposit, {}), paymentMethod === 'PISO_PAY' && _jsx(PisoPayDeposit, {}), paymentMethod === 'AIO_GCASH' && _jsx(AiOGCashDeposit, {}), paymentMethod === 'AIO_PAY_MAYA' && _jsx(AiOPayMayaDeposit, {}), paymentMethod === 'AIO_GRAB_PAY' && _jsx(AiOGrabPayDeposit, {}), paymentMethod === 'AIO_PALAWAN_PAY' && _jsx(AiOPalawanPayDeposit, {}), paymentMethod === 'GCASH_WEBPAY' && _jsx(GCashWebpayDeposit, {}), paymentMethod === 'MAYA_WEBPAY' && _jsx(MayaWebpayDeposit, {})] }));
114
+ }
115
+ function MayaSessionSessionExpired() {
116
+ return (_jsxs("div", { className: "py-xl", children: [_jsx("div", { className: "mx-auto flex size-12 items-center justify-center rounded-full bg-bg-warning-secondary", children: _jsx(AlertCircleIcon, { className: "size-6 text-text-featured-icon-light-warning" }) }), _jsx("h2", { className: "mt-lg text-center font-semibold text-lg", children: "Session Expired" }), _jsx("p", { className: "mx-auto mt-xs max-w-[25rem] text-center text-sm text-text-tertiary-600", children: "Your session has timed out. To continue with deposits or withdrawals, Please try reloading the app." })] }));
117
+ }
118
+ function NoAvailablePaymentMethods() {
119
+ return (_jsxs("div", { className: "py-xl", children: [_jsx("div", { className: "mx-auto flex size-12 items-center justify-center rounded-full bg-bg-warning-secondary", children: _jsx(AlertCircleIcon, { className: "size-6 text-text-featured-icon-light-warning" }) }), _jsx("h2", { className: "mt-lg text-center font-semibold text-lg", children: "Not Available" }), _jsx("p", { className: "mx-auto mt-xs max-w-[25rem] text-center text-sm text-text-tertiary-600", children: "Deposit is not available at this time. Please try again later or contact support for assistance." })] }));
120
+ }
@@ -0,0 +1 @@
1
+ export declare function GCashDeposit(): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,163 @@
1
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
+ import { zodResolver } from '@hookform/resolvers/zod';
3
+ import Link from 'next/link';
4
+ import { useEffect, useState } from 'react';
5
+ import { Controller, useForm } from 'react-hook-form';
6
+ import invariant from 'tiny-invariant';
7
+ import { z } from 'zod';
8
+ import { useShallow } from 'zustand/shallow';
9
+ import { useAvailablePromosQuery } from '../../../../client/hooks/useAvailablePromosQuery.js';
10
+ import { useCreateGCashDepositMutation } from '../../../../client/hooks/useCreateGCashDepositMutation.js';
11
+ import { useDepositsCountQuery } from '../../../../client/hooks/useDepositsCountQuery.js';
12
+ import { useDisclosure } from '../../../../client/hooks/useDisclosure.js';
13
+ import { useGlobalStore } from '../../../../client/hooks/useGlobalStore.js';
14
+ import { useMemberVerificationQuery } from '../../../../client/hooks/useMemberVerificationQuery.js';
15
+ import { usePaymentSettingsQuery } from '../../../../client/hooks/usePaymentSettingsQuery.js';
16
+ import { AlertCircleIcon } from '../../../../icons/AlertCircleIcon.js';
17
+ import { ChevronDownIcon } from '../../../../icons/ChevronDownIcon.js';
18
+ import { ChevronUpIcon } from '../../../../icons/ChevronUpIcon.js';
19
+ import { SpinnerIcon } from '../../../../icons/SpinnerIcon.js';
20
+ import { XIcon } from '../../../../icons/XIcon.js';
21
+ import { AlertDialog } from '../../../../ui/AlertDialog/index.js';
22
+ import { Button } from '../../../../ui/Button/index.js';
23
+ import { Field } from '../../../../ui/Field/index.js';
24
+ import { NumberInput } from '../../../../ui/NumberInput/index.js';
25
+ import { Portal } from '../../../../ui/Portal/index.js';
26
+ import { parseDecimal } from '../../../../utils/parseDecimal.js';
27
+ import { AmountChoices } from '../../AmountChoices.js';
28
+ import { useDepositWithdrawalPropsContext } from '../../DepositWithdrawalContext.js';
29
+ import { AvailablePromos } from '../AvailablePromos.js';
30
+ export function GCashDeposit() {
31
+ const depositWithdrawalProps = useDepositWithdrawalPropsContext();
32
+ const disclosure = useDisclosure();
33
+ const globalStore = useGlobalStore(useShallow((ctx) => ({
34
+ depositWithdrawal: ctx.depositWithdrawal,
35
+ kycVerificationStatus: ctx.kycVerificationStatus,
36
+ })));
37
+ const verificationQuery = useMemberVerificationQuery();
38
+ const verificationStatus = verificationQuery.data?.status ?? 'UNVERIFIED';
39
+ const [status, setStatus] = useState('waiting');
40
+ const createDepositMutation = useCreateGCashDepositMutation({
41
+ onMutate() {
42
+ disclosure.setOpen(true);
43
+ setStatus('processing');
44
+ },
45
+ onSuccess(data) {
46
+ invariant(data.checkoutUrl);
47
+ window.open(data.checkoutUrl, '_blank', 'noopener,noreferrer');
48
+ setStatus('success');
49
+ },
50
+ onError() {
51
+ setStatus('failed');
52
+ },
53
+ });
54
+ const depositsCountQuery = useDepositsCountQuery();
55
+ const depositsCount = depositsCountQuery.data ?? 0;
56
+ const paymentSettingsQuery = usePaymentSettingsQuery();
57
+ const paymentSettings = paymentSettingsQuery.data;
58
+ const gatewaySettings = paymentSettings?.gcashDepositGatewaySettings;
59
+ const maximumAmount = parseDecimal(gatewaySettings?.maximumAmount, 0);
60
+ const minimumAmount = depositsCount <= 0
61
+ ? parseDecimal(paymentSettingsQuery.data?.minimumFirstDepositAmount, 0)
62
+ : parseDecimal(gatewaySettings?.minimumAmount, 0);
63
+ const promosQuery = useAvailablePromosQuery();
64
+ const promos = promosQuery.data ?? [];
65
+ const definition = z
66
+ .object({
67
+ amount: z.string().superRefine((val, ctx) => {
68
+ const n = parseDecimal(val, 0);
69
+ if (n < minimumAmount) {
70
+ ctx.addIssue({
71
+ type: 'number',
72
+ code: z.ZodIssueCode.too_small,
73
+ inclusive: true,
74
+ minimum: minimumAmount,
75
+ message: `Please enter ${minimumAmount.toLocaleString()} or more to proceed with your deposit.`,
76
+ });
77
+ }
78
+ if (n > maximumAmount) {
79
+ ctx.addIssue({
80
+ type: 'number',
81
+ code: z.ZodIssueCode.too_big,
82
+ inclusive: true,
83
+ maximum: maximumAmount,
84
+ message: `Maximum amount is ${maximumAmount.toLocaleString()}`,
85
+ });
86
+ }
87
+ }),
88
+ promo: z.string().optional().nullable(),
89
+ })
90
+ .superRefine((value, ctx) => {
91
+ const promo = promos.find((o) => o.id === value.promo);
92
+ const promoMinAmount = parseDecimal(promo?.minimumDepositAmount, 0);
93
+ const promoMaxAmount = parseDecimal(promo?.maximumDepositAmount, 0);
94
+ const amount = parseDecimal(value.amount, 0);
95
+ if (promo && amount < promoMinAmount) {
96
+ ctx.addIssue({
97
+ path: ['amount'],
98
+ code: z.ZodIssueCode.custom,
99
+ message: `Minimum amount for this promo is ${promoMinAmount.toLocaleString()}`,
100
+ });
101
+ }
102
+ if (promo && amount > promoMaxAmount) {
103
+ ctx.addIssue({
104
+ path: ['amount'],
105
+ code: z.ZodIssueCode.custom,
106
+ message: `Maximum amount for this promo is ${promoMaxAmount}`,
107
+ });
108
+ }
109
+ });
110
+ const form = useForm({
111
+ mode: 'all',
112
+ resolver: zodResolver(definition),
113
+ defaultValues: {
114
+ amount: '0',
115
+ promo: globalStore.depositWithdrawal.promo ?? null,
116
+ },
117
+ });
118
+ useEffect(() => {
119
+ if (minimumAmount) {
120
+ form.reset({
121
+ amount: minimumAmount.toString(),
122
+ promo: form.getValues('promo') ?? null,
123
+ });
124
+ }
125
+ }, [form, minimumAmount]);
126
+ return (_jsxs("form", { onSubmit: form.handleSubmit(async (data) => {
127
+ if (verificationStatus === 'PENDING' ||
128
+ verificationStatus === 'UNVERIFIED' ||
129
+ verificationStatus === 'REJECTED' ||
130
+ verificationStatus === 'CREATED') {
131
+ globalStore.kycVerificationStatus.setOpen(true);
132
+ return;
133
+ }
134
+ else {
135
+ createDepositMutation.reset();
136
+ createDepositMutation.mutate({
137
+ amount: data.amount.toString(),
138
+ promo: data.promo ?? undefined,
139
+ });
140
+ }
141
+ }), noValidate: true, children: [_jsx(Controller, { control: form.control, name: "amount", render: (o) => (_jsxs(Field.Root, { invalid: !!form.formState.errors.amount, children: [_jsxs(NumberInput.Root, { min: 0, step: 1, value: o.field.value, onValueChange: (details) => {
142
+ o.field.onChange(details.value);
143
+ }, allowMouseWheel: true, children: [_jsx(NumberInput.Label, { children: "Enter amount you want to deposit" }), _jsxs(NumberInput.Control, { children: [_jsx(NumberInput.Input, {}), _jsx(NumberInput.IncrementTrigger, { children: _jsx(ChevronUpIcon, {}) }), _jsx(NumberInput.DecrementTrigger, { children: _jsx(ChevronDownIcon, {}) })] })] }), _jsx(Field.ErrorText, { children: form.formState.errors.amount?.message })] })) }), _jsx(AmountChoices, { value: parseDecimal(form.watch('amount'), 0), onChange: (value) => {
144
+ form.setValue('amount', value.toString(), {
145
+ shouldTouch: true,
146
+ shouldDirty: true,
147
+ shouldValidate: true,
148
+ });
149
+ }, min: minimumAmount, max: maximumAmount, className: "mt-lg" }), _jsx(Controller, { control: form.control, name: "promo", render: (o) => (_jsx(AvailablePromos, { value: o.field.value, onChange: (value) => {
150
+ o.field.onChange(value);
151
+ globalStore.depositWithdrawal.setPromo(null);
152
+ }, className: "mt-3xl" })) }), _jsx(Button, { type: "submit", className: "mt-3xl", disabled: createDepositMutation.isPending, children: "Deposit" }), depositWithdrawalProps.hasPrivacyPolicyAndTermsOfUse && (_jsxs("p", { className: "mt-lg text-text-tertiary-600 text-xs", children: ["By depositing, you agree to our", ' ', _jsx(Link, { href: depositWithdrawalProps.termsOfUseUrl ?? '/terms-of-use', onClick: () => globalStore.depositWithdrawal.setOpen(false), className: "text-text-warning-primary-600 underline underline-offset-2", children: "Terms of Use" }), ' ', "and", ' ', _jsx(Link, { href: depositWithdrawalProps.privacyPolicyUrl ?? '/privacy-policy', onClick: () => globalStore.depositWithdrawal.setOpen(false), className: "text-text-warning-primary-600 underline underline-offset-2", children: "Privacy Policy" }), "."] })), _jsx(AlertDialog.Root, { open: disclosure.open, onOpenChange: (details) => {
153
+ disclosure.setOpen(details.open);
154
+ if (!details.open) {
155
+ setStatus('waiting');
156
+ form.reset();
157
+ }
158
+ }, lazyMount: true, unmountOnExit: true, closeOnEscape: false, closeOnInteractOutside: false, children: _jsxs(Portal, { children: [_jsx(AlertDialog.Backdrop, { className: "!z-[calc(var(--z-dialog)+2)]" }), _jsx(AlertDialog.Positioner, { className: "!z-[calc(var(--z-dialog)+3)]", children: _jsxs(AlertDialog.Content, { children: [_jsx(AlertDialog.CloseTrigger, { children: _jsx(XIcon, {}) }), _jsxs(AlertDialog.Header, { children: [status === 'processing' && (_jsx(SpinnerIcon, { className: "size-12 text-text-brand-primary-600" })), status === 'success' && (_jsx("div", { className: "flex size-12 items-center justify-center rounded-full bg-bg-success-secondary text-text-featured-icon-light-success", children: _jsx(AlertCircleIcon, {}) })), status === 'failed' && (_jsx("div", { className: "flex size-12 items-center justify-center rounded-full bg-bg-error-secondary text-text-featured-icon-light-error", children: _jsx(AlertCircleIcon, {}) }))] }), _jsxs(AlertDialog.Body, { children: [_jsxs(AlertDialog.Title, { children: [status === 'processing' && 'Processing Deposit', status === 'success' && 'Deposit Successful', status === 'failed' && 'Deposit Failed'] }), _jsxs(AlertDialog.Description, { children: [status === 'processing' &&
159
+ "We're verifying your account and amount. Please hold a moment.", status === 'success' && (_jsxs(_Fragment, { children: ["Your deposit has been successfully processed. ", _jsx("br", {}), " If you are not redirected automatically, click", ' ', !!createDepositMutation.data?.checkoutUrl && (_jsx("a", { href: createDepositMutation.data?.checkoutUrl, target: "_blank", rel: "noopener noreferrer", className: "text-text-brand underline underline-offset-2", children: "here" })), "."] })), status === 'failed' &&
160
+ 'Something went wrong while processing your deposit. Please try again or contact support.'] })] }), (status === 'failed' || status === 'success') && (_jsx(AlertDialog.Footer, { children: _jsx(AlertDialog.Context, { children: (api) => (_jsx(Button, { onClick: () => {
161
+ api.setOpen(false);
162
+ }, children: status === 'failed' ? 'Try Again' : 'Ok' })) }) }))] }) })] }) })] }));
163
+ }
@@ -0,0 +1 @@
1
+ export declare function GCashWebpayDeposit(): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,165 @@
1
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
+ import { zodResolver } from '@hookform/resolvers/zod';
3
+ import Link from 'next/link';
4
+ import { useEffect, useState } from 'react';
5
+ import { Controller, useForm } from 'react-hook-form';
6
+ import invariant from 'tiny-invariant';
7
+ import { z } from 'zod';
8
+ import { useShallow } from 'zustand/shallow';
9
+ import { useAvailablePromosQuery } from '../../../../client/hooks/useAvailablePromosQuery.js';
10
+ import { useCreateGCashWebpayDepositMutation } from '../../../../client/hooks/useCreateGCashWebpayDepositMutation.js';
11
+ import { useDepositsCountQuery } from '../../../../client/hooks/useDepositsCountQuery.js';
12
+ import { useDisclosure } from '../../../../client/hooks/useDisclosure.js';
13
+ import { useGlobalStore } from '../../../../client/hooks/useGlobalStore.js';
14
+ import { useMemberVerificationQuery } from '../../../../client/hooks/useMemberVerificationQuery.js';
15
+ import { usePaymentSettingsQuery } from '../../../../client/hooks/usePaymentSettingsQuery.js';
16
+ import { AlertCircleIcon } from '../../../../icons/AlertCircleIcon.js';
17
+ import { ChevronDownIcon } from '../../../../icons/ChevronDownIcon.js';
18
+ import { ChevronUpIcon } from '../../../../icons/ChevronUpIcon.js';
19
+ import { SpinnerIcon } from '../../../../icons/SpinnerIcon.js';
20
+ import { XIcon } from '../../../../icons/XIcon.js';
21
+ import { AlertDialog } from '../../../../ui/AlertDialog/index.js';
22
+ import { Button } from '../../../../ui/Button/index.js';
23
+ import { Field } from '../../../../ui/Field/index.js';
24
+ import { NumberInput } from '../../../../ui/NumberInput/index.js';
25
+ import { Portal } from '../../../../ui/Portal/index.js';
26
+ import { parseDecimal } from '../../../../utils/parseDecimal.js';
27
+ import { AmountChoices } from '../../AmountChoices.js';
28
+ import { useDepositWithdrawalPropsContext } from '../../DepositWithdrawalContext.js';
29
+ import { AvailablePromos } from '../AvailablePromos.js';
30
+ export function GCashWebpayDeposit() {
31
+ const depositWithdrawalProps = useDepositWithdrawalPropsContext();
32
+ const disclosure = useDisclosure();
33
+ const globalStore = useGlobalStore(useShallow((ctx) => ({
34
+ depositWithdrawal: ctx.depositWithdrawal,
35
+ kycVerificationStatus: ctx.kycVerificationStatus,
36
+ })));
37
+ const verificationQuery = useMemberVerificationQuery();
38
+ const verificationStatus = verificationQuery.data?.status ?? 'UNVERIFIED';
39
+ const [status, setStatus] = useState('waiting');
40
+ const createDepositMutation = useCreateGCashWebpayDepositMutation({
41
+ onMutate() {
42
+ disclosure.setOpen(true);
43
+ setStatus('processing');
44
+ },
45
+ onSuccess(data) {
46
+ invariant(data.checkoutUrl);
47
+ window.open(data.checkoutUrl, '_blank', 'noopener,noreferrer');
48
+ setStatus('success');
49
+ },
50
+ onError() {
51
+ setStatus('failed');
52
+ },
53
+ });
54
+ const depositsCountQuery = useDepositsCountQuery();
55
+ const depositsCount = depositsCountQuery.data ?? 0;
56
+ const paymentSettingsQuery = usePaymentSettingsQuery();
57
+ const paymentSettings = paymentSettingsQuery.data;
58
+ const gatewaySettings = paymentSettings?.gcashWebpayDepositGatewaySettings;
59
+ const maximumAmount = parseDecimal(gatewaySettings?.maximumAmount, 0);
60
+ const minimumAmount = depositsCount <= 0
61
+ ? parseDecimal(paymentSettingsQuery.data?.minimumFirstDepositAmount, 0)
62
+ : parseDecimal(gatewaySettings?.minimumAmount, 0);
63
+ const promosQuery = useAvailablePromosQuery();
64
+ const promos = promosQuery.data ?? [];
65
+ const definition = z
66
+ .object({
67
+ amount: z.string().superRefine((val, ctx) => {
68
+ const n = parseDecimal(val, 0);
69
+ if (n < minimumAmount) {
70
+ ctx.addIssue({
71
+ type: 'number',
72
+ code: z.ZodIssueCode.too_small,
73
+ inclusive: true,
74
+ minimum: minimumAmount,
75
+ message: `Please enter ${minimumAmount.toLocaleString()} or more to proceed with your deposit.`,
76
+ });
77
+ }
78
+ if (n > maximumAmount) {
79
+ ctx.addIssue({
80
+ type: 'number',
81
+ code: z.ZodIssueCode.too_big,
82
+ inclusive: true,
83
+ maximum: maximumAmount,
84
+ message: `Maximum amount is ${maximumAmount.toLocaleString()}`,
85
+ });
86
+ }
87
+ }),
88
+ promo: z.string().optional().nullable(),
89
+ })
90
+ .superRefine((value, ctx) => {
91
+ const promo = promos.find((o) => o.id === value.promo);
92
+ const promoMinAmount = parseDecimal(promo?.minimumDepositAmount, 0);
93
+ const promoMaxAmount = parseDecimal(promo?.maximumDepositAmount, 0);
94
+ const amount = parseDecimal(value.amount, 0);
95
+ if (promo && amount < promoMinAmount) {
96
+ ctx.addIssue({
97
+ path: ['amount'],
98
+ code: z.ZodIssueCode.custom,
99
+ message: `Minimum amount for this promo is ${promoMinAmount.toLocaleString()}`,
100
+ });
101
+ }
102
+ if (promo && amount > promoMaxAmount) {
103
+ ctx.addIssue({
104
+ path: ['amount'],
105
+ code: z.ZodIssueCode.custom,
106
+ message: `Maximum amount for this promo is ${promoMaxAmount}`,
107
+ });
108
+ }
109
+ });
110
+ const form = useForm({
111
+ mode: 'all',
112
+ resolver: zodResolver(definition),
113
+ defaultValues: {
114
+ amount: '0',
115
+ promo: globalStore.depositWithdrawal.promo ?? null,
116
+ },
117
+ });
118
+ useEffect(() => {
119
+ if (minimumAmount) {
120
+ form.reset({
121
+ amount: minimumAmount.toString(),
122
+ promo: form.getValues('promo') ?? null,
123
+ });
124
+ }
125
+ }, [form, minimumAmount]);
126
+ return (_jsxs("form", { onSubmit: form.handleSubmit(async (data) => {
127
+ if (verificationStatus === 'PENDING' ||
128
+ verificationStatus === 'UNVERIFIED' ||
129
+ verificationStatus === 'REJECTED' ||
130
+ verificationStatus === 'CREATED') {
131
+ globalStore.kycVerificationStatus.setOpen(true);
132
+ return;
133
+ }
134
+ else {
135
+ createDepositMutation.reset();
136
+ createDepositMutation.mutate({
137
+ amount: data.amount.toString(),
138
+ promo: data.promo ?? undefined,
139
+ successRedirectionUrl: window.location.origin,
140
+ cancelRedirectionUrl: window.location.origin,
141
+ });
142
+ }
143
+ }), noValidate: true, children: [_jsx(Controller, { control: form.control, name: "amount", render: (o) => (_jsxs(Field.Root, { invalid: !!form.formState.errors.amount, children: [_jsxs(NumberInput.Root, { min: 0, step: 1, value: o.field.value, onValueChange: (details) => {
144
+ o.field.onChange(details.value);
145
+ }, allowMouseWheel: true, children: [_jsx(NumberInput.Label, { children: "Enter amount you want to deposit" }), _jsxs(NumberInput.Control, { children: [_jsx(NumberInput.Input, {}), _jsx(NumberInput.IncrementTrigger, { children: _jsx(ChevronUpIcon, {}) }), _jsx(NumberInput.DecrementTrigger, { children: _jsx(ChevronDownIcon, {}) })] })] }), _jsx(Field.ErrorText, { children: form.formState.errors.amount?.message })] })) }), _jsx(AmountChoices, { value: parseDecimal(form.watch('amount'), 0), onChange: (value) => {
146
+ form.setValue('amount', value.toString(), {
147
+ shouldTouch: true,
148
+ shouldDirty: true,
149
+ shouldValidate: true,
150
+ });
151
+ }, min: minimumAmount, max: maximumAmount, className: "mt-lg" }), _jsx(Controller, { control: form.control, name: "promo", render: (o) => (_jsx(AvailablePromos, { value: o.field.value, onChange: (value) => {
152
+ o.field.onChange(value);
153
+ globalStore.depositWithdrawal.setPromo(null);
154
+ }, className: "mt-3xl" })) }), _jsx(Button, { type: "submit", className: "mt-3xl", disabled: createDepositMutation.isPending, children: "Deposit" }), _jsxs("p", { className: "mt-lg text-text-tertiary-600 text-xs", children: ["By depositing, you agree to our", ' ', _jsx(Link, { href: depositWithdrawalProps.termsOfUseUrl ?? '/terms-of-use', onClick: () => globalStore.depositWithdrawal.setOpen(false), className: "text-text-warning-primary-600 underline underline-offset-2", children: "Terms of Use" }), ' ', "and", ' ', _jsx(Link, { href: depositWithdrawalProps.privacyPolicyUrl ?? '/privacy-policy', onClick: () => globalStore.depositWithdrawal.setOpen(false), className: "text-text-warning-primary-600 underline underline-offset-2", children: "Privacy Policy" }), "."] }), _jsx(AlertDialog.Root, { open: disclosure.open, onOpenChange: (details) => {
155
+ disclosure.setOpen(details.open);
156
+ if (!details.open) {
157
+ setStatus('waiting');
158
+ form.reset();
159
+ }
160
+ }, lazyMount: true, unmountOnExit: true, closeOnEscape: false, closeOnInteractOutside: false, children: _jsxs(Portal, { children: [_jsx(AlertDialog.Backdrop, { className: "!z-[calc(var(--z-dialog)+2)]" }), _jsx(AlertDialog.Positioner, { className: "!z-[calc(var(--z-dialog)+3)]", children: _jsxs(AlertDialog.Content, { children: [_jsx(AlertDialog.CloseTrigger, { children: _jsx(XIcon, {}) }), _jsxs(AlertDialog.Header, { children: [status === 'processing' && (_jsx(SpinnerIcon, { className: "size-12 text-text-brand-primary-600" })), status === 'success' && (_jsx("div", { className: "flex size-12 items-center justify-center rounded-full bg-bg-success-secondary text-text-featured-icon-light-success", children: _jsx(AlertCircleIcon, {}) })), status === 'failed' && (_jsx("div", { className: "flex size-12 items-center justify-center rounded-full bg-bg-error-secondary text-text-featured-icon-light-error", children: _jsx(AlertCircleIcon, {}) }))] }), _jsxs(AlertDialog.Body, { children: [_jsxs(AlertDialog.Title, { children: [status === 'processing' && 'Processing Deposit', status === 'success' && 'Deposit Successful', status === 'failed' && 'Deposit Failed'] }), _jsxs(AlertDialog.Description, { children: [status === 'processing' &&
161
+ "We're verifying your account and amount. Please hold a moment.", status === 'success' && (_jsxs(_Fragment, { children: ["Your deposit has been successfully processed. ", _jsx("br", {}), " If you are not redirected automatically, click", ' ', !!createDepositMutation.data?.checkoutUrl && (_jsx("a", { href: createDepositMutation.data?.checkoutUrl, target: "_blank", rel: "noopener noreferrer", className: "text-text-brand underline underline-offset-2", children: "here" })), "."] })), status === 'failed' &&
162
+ 'Something went wrong while processing your deposit. Please try again or contact support.'] })] }), (status === 'failed' || status === 'success') && (_jsx(AlertDialog.Footer, { children: _jsx(AlertDialog.Context, { children: (api) => (_jsx(Button, { onClick: () => {
163
+ api.setOpen(false);
164
+ }, children: status === 'failed' ? 'Try Again' : 'Ok' })) }) }))] }) })] }) })] }));
165
+ }
@@ -0,0 +1 @@
1
+ export declare function LibanganDeposit(): import("react/jsx-runtime").JSX.Element;