@opexa/portal-components 0.0.65 → 0.0.66

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 (348) hide show
  1. package/dist/components/Account/Account.d.ts +23 -0
  2. package/dist/components/Account/Account.js +107 -0
  3. package/dist/components/Account/AccountTrigger.d.ts +6 -0
  4. package/dist/components/Account/AccountTrigger.js +13 -0
  5. package/dist/components/Account/account.recipe.d.ts +61 -0
  6. package/dist/components/Account/account.recipe.js +32 -0
  7. package/dist/components/Account/index.d.ts +2 -0
  8. package/dist/components/Account/index.js +2 -0
  9. package/dist/components/AccountInfo/AccountInfo.d.ts +4 -0
  10. package/dist/components/AccountInfo/AccountInfo.js +143 -0
  11. package/dist/components/AccountInfo/index.d.ts +1 -0
  12. package/dist/components/AccountInfo/index.js +1 -0
  13. package/dist/components/AccountSecurity/AccountSecurity.d.ts +4 -0
  14. package/dist/components/AccountSecurity/AccountSecurity.js +171 -0
  15. package/dist/components/AccountSecurity/index.d.ts +1 -0
  16. package/dist/components/AccountSecurity/index.js +1 -0
  17. package/dist/components/AccountVerification/AccountVerification.d.ts +4 -0
  18. package/dist/components/AccountVerification/AccountVerification.js +37 -0
  19. package/dist/components/AccountVerification/index.d.ts +1 -0
  20. package/dist/components/AccountVerification/index.js +1 -0
  21. package/dist/components/Banner/Banner.d.ts +11 -0
  22. package/dist/components/Banner/Banner.js +38 -0
  23. package/dist/components/Banner/index.d.ts +1 -0
  24. package/dist/components/Banner/index.js +1 -0
  25. package/dist/components/BetRecords/BetRecords.d.ts +7 -0
  26. package/dist/components/BetRecords/BetRecords.js +181 -0
  27. package/dist/components/BetRecords/index.d.ts +1 -0
  28. package/dist/components/BetRecords/index.js +1 -0
  29. package/dist/components/Bonus/Bonus.client.d.ts +2 -0
  30. package/dist/components/Bonus/Bonus.client.js +9 -0
  31. package/dist/components/Bonus/Bonus.d.ts +10 -0
  32. package/dist/components/Bonus/Bonus.js +5 -0
  33. package/dist/components/Bonus/index.d.ts +1 -0
  34. package/dist/components/Bonus/index.js +1 -0
  35. package/dist/components/Bonuses/Bonuses.client.js +1 -1
  36. package/dist/components/Bonuses/Bonuses.d.ts +15 -0
  37. package/dist/components/Bonuses/Bonuses.js +7 -0
  38. package/dist/components/Bonuses/index.js +1 -1
  39. package/dist/components/Cashback/Cashback.client.d.ts +2 -0
  40. package/dist/components/Cashback/Cashback.client.js +27 -0
  41. package/dist/components/Cashback/Cashback.d.ts +7 -0
  42. package/dist/components/Cashback/Cashback.js +15 -0
  43. package/dist/components/Cashback/index.d.ts +1 -0
  44. package/dist/components/Cashback/index.js +1 -0
  45. package/dist/components/CashbackBonus/CashbackBonus.client.d.ts +2 -0
  46. package/dist/components/CashbackBonus/CashbackBonus.client.js +9 -0
  47. package/dist/components/CashbackBonus/CashbackBonus.d.ts +10 -0
  48. package/dist/components/CashbackBonus/CashbackBonus.js +5 -0
  49. package/dist/components/CashbackBonus/index.d.ts +1 -0
  50. package/dist/components/CashbackBonus/index.js +1 -0
  51. package/dist/components/DepositWithdrawal/AmountChoices.d.ts +11 -0
  52. package/dist/components/DepositWithdrawal/AmountChoices.js +25 -0
  53. package/dist/components/DepositWithdrawal/Deposit/AvailablePromos.d.ts +8 -0
  54. package/dist/components/DepositWithdrawal/Deposit/AvailablePromos.js +31 -0
  55. package/dist/components/DepositWithdrawal/Deposit/Deposit.d.ts +1 -0
  56. package/dist/components/DepositWithdrawal/Deposit/Deposit.js +75 -0
  57. package/dist/components/DepositWithdrawal/Deposit/GCashDeposit/GCashDeposit.d.ts +1 -0
  58. package/dist/components/DepositWithdrawal/Deposit/GCashDeposit/GCashDeposit.js +129 -0
  59. package/dist/components/DepositWithdrawal/Deposit/MayaAppDeposit/MayaAppDeposit.d.ts +1 -0
  60. package/dist/components/DepositWithdrawal/Deposit/MayaAppDeposit/MayaAppDeposit.js +126 -0
  61. package/dist/components/DepositWithdrawal/Deposit/MayaDeposit/MayaDeposit.d.ts +1 -0
  62. package/dist/components/DepositWithdrawal/Deposit/MayaDeposit/MayaDeposit.js +129 -0
  63. package/dist/components/DepositWithdrawal/Deposit/OnlineBankDeposit/OnlineBankDeposit.d.ts +1 -0
  64. package/dist/components/DepositWithdrawal/Deposit/OnlineBankDeposit/OnlineBankDeposit.js +10 -0
  65. package/dist/components/DepositWithdrawal/Deposit/OnlineBankDeposit/OnlineBankDepositAlert.d.ts +1 -0
  66. package/dist/components/DepositWithdrawal/Deposit/OnlineBankDeposit/OnlineBankDepositAlert.js +96 -0
  67. package/dist/components/DepositWithdrawal/Deposit/OnlineBankDeposit/OnlineBankDepositContext.d.ts +21 -0
  68. package/dist/components/DepositWithdrawal/Deposit/OnlineBankDeposit/OnlineBankDepositContext.js +2 -0
  69. package/dist/components/DepositWithdrawal/Deposit/OnlineBankDeposit/OnlineBankDepositDetails.d.ts +1 -0
  70. package/dist/components/DepositWithdrawal/Deposit/OnlineBankDeposit/OnlineBankDepositDetails.js +16 -0
  71. package/dist/components/DepositWithdrawal/Deposit/OnlineBankDeposit/OnlineBankDepositForm.d.ts +1 -0
  72. package/dist/components/DepositWithdrawal/Deposit/OnlineBankDeposit/OnlineBankDepositForm.js +102 -0
  73. package/dist/components/DepositWithdrawal/Deposit/OnlineBankDeposit/useOnlineBankDeposit.d.ts +13 -0
  74. package/dist/components/DepositWithdrawal/Deposit/OnlineBankDeposit/useOnlineBankDeposit.js +60 -0
  75. package/dist/components/DepositWithdrawal/Deposit/QRPHDeposit/QRPHDeposit.d.ts +1 -0
  76. package/dist/components/DepositWithdrawal/Deposit/QRPHDeposit/QRPHDeposit.js +10 -0
  77. package/dist/components/DepositWithdrawal/Deposit/QRPHDeposit/QRPHDepositAlert.d.ts +1 -0
  78. package/dist/components/DepositWithdrawal/Deposit/QRPHDeposit/QRPHDepositAlert.js +96 -0
  79. package/dist/components/DepositWithdrawal/Deposit/QRPHDeposit/QRPHDepositContext.d.ts +21 -0
  80. package/dist/components/DepositWithdrawal/Deposit/QRPHDeposit/QRPHDepositContext.js +2 -0
  81. package/dist/components/DepositWithdrawal/Deposit/QRPHDeposit/QRPHDepositDetails.d.ts +1 -0
  82. package/dist/components/DepositWithdrawal/Deposit/QRPHDeposit/QRPHDepositDetails.js +16 -0
  83. package/dist/components/DepositWithdrawal/Deposit/QRPHDeposit/QRPHDepositForm.d.ts +1 -0
  84. package/dist/components/DepositWithdrawal/Deposit/QRPHDeposit/QRPHDepositForm.js +101 -0
  85. package/dist/components/DepositWithdrawal/Deposit/QRPHDeposit/useQRPHDeposit.d.ts +13 -0
  86. package/dist/components/DepositWithdrawal/Deposit/QRPHDeposit/useQRPHDeposit.js +60 -0
  87. package/dist/components/DepositWithdrawal/DepositWithdrawal.d.ts +6 -0
  88. package/dist/components/DepositWithdrawal/DepositWithdrawal.js +39 -0
  89. package/dist/components/DepositWithdrawal/DepositWithdrawalTrigger.d.ts +5 -0
  90. package/dist/components/DepositWithdrawal/DepositWithdrawalTrigger.js +21 -0
  91. package/dist/components/DepositWithdrawal/PaymentMethods.d.ts +10 -0
  92. package/dist/components/DepositWithdrawal/PaymentMethods.js +60 -0
  93. package/dist/components/DepositWithdrawal/Withdrawal/GCashWithdrawal/GCashWithdrawal.d.ts +1 -0
  94. package/dist/components/DepositWithdrawal/Withdrawal/GCashWithdrawal/GCashWithdrawal.js +109 -0
  95. package/dist/components/DepositWithdrawal/Withdrawal/InstapayWithdrawal/InstapayWithdrawal.d.ts +1 -0
  96. package/dist/components/DepositWithdrawal/Withdrawal/InstapayWithdrawal/InstapayWithdrawal.js +131 -0
  97. package/dist/components/DepositWithdrawal/Withdrawal/MayaAppWithdrawal/MayaAppWithdrawal.d.ts +1 -0
  98. package/dist/components/DepositWithdrawal/Withdrawal/MayaAppWithdrawal/MayaAppWithdrawal.js +101 -0
  99. package/dist/components/DepositWithdrawal/Withdrawal/MayaWithdrawal/MayaWithdrawal.d.ts +1 -0
  100. package/dist/components/DepositWithdrawal/Withdrawal/MayaWithdrawal/MayaWithdrawal.js +109 -0
  101. package/dist/components/DepositWithdrawal/Withdrawal/Withdrawal.d.ts +1 -0
  102. package/dist/components/DepositWithdrawal/Withdrawal/Withdrawal.js +91 -0
  103. package/dist/components/DepositWithdrawal/index.d.ts +1 -0
  104. package/dist/components/DepositWithdrawal/index.js +1 -0
  105. package/dist/components/DepositWithdrawal/utils.d.ts +3 -0
  106. package/dist/components/DepositWithdrawal/utils.js +9 -0
  107. package/dist/components/Disclaimer/Disclaimer.d.ts +5 -0
  108. package/dist/components/Disclaimer/Disclaimer.js +14 -0
  109. package/dist/components/Disclaimer/index.d.ts +1 -0
  110. package/dist/components/Disclaimer/index.js +1 -0
  111. package/dist/components/Disclaimer/useDisclaimer.d.ts +4 -0
  112. package/dist/components/Disclaimer/useDisclaimer.js +37 -0
  113. package/dist/components/Empty.d.ts +10 -0
  114. package/dist/components/Empty.js +7 -0
  115. package/dist/components/FavoriteGames/FavoriteGames.client.d.ts +2 -0
  116. package/dist/components/FavoriteGames/FavoriteGames.client.js +31 -0
  117. package/dist/components/FavoriteGames/FavoriteGames.d.ts +6 -0
  118. package/dist/components/FavoriteGames/FavoriteGames.js +7 -0
  119. package/dist/components/FavoriteGames/index.d.ts +1 -0
  120. package/dist/components/FavoriteGames/index.js +1 -0
  121. package/dist/components/GameLaunch/GameLaunch.d.ts +1 -0
  122. package/dist/components/GameLaunch/GameLaunch.js +75 -0
  123. package/dist/components/GameLaunch/GameLaunchTrigger.d.ts +7 -0
  124. package/dist/components/GameLaunch/GameLaunchTrigger.js +57 -0
  125. package/dist/components/GameLaunch/index.d.ts +2 -0
  126. package/dist/components/GameLaunch/index.js +2 -0
  127. package/dist/components/GameProviders/GameProviders.d.ts +11 -0
  128. package/dist/components/GameProviders/GameProviders.js +32 -0
  129. package/dist/components/GameProviders/index.d.ts +1 -0
  130. package/dist/components/GameProviders/index.js +1 -0
  131. package/dist/components/Games/BadgeNew.d.ts +2 -0
  132. package/dist/components/Games/BadgeNew.js +4 -0
  133. package/dist/components/Games/BadgePopular.d.ts +2 -0
  134. package/dist/components/Games/BadgePopular.js +4 -0
  135. package/dist/components/Games/BadgeTop.d.ts +2 -0
  136. package/dist/components/Games/BadgeTop.js +4 -0
  137. package/dist/components/Games/Game.d.ts +4 -0
  138. package/dist/components/Games/Game.js +37 -0
  139. package/dist/components/Games/GameContext.d.ts +2 -0
  140. package/dist/components/Games/GameContext.js +2 -0
  141. package/dist/components/Games/Games.d.ts +8 -0
  142. package/dist/components/Games/Games.js +6 -0
  143. package/dist/components/Games/GamesCarousel.client.d.ts +2 -0
  144. package/dist/components/Games/GamesCarousel.client.js +58 -0
  145. package/dist/components/Games/GamesCarousel.d.ts +16 -0
  146. package/dist/components/Games/GamesCarousel.js +11 -0
  147. package/dist/components/Games/GamesList.client.d.ts +2 -0
  148. package/dist/components/Games/GamesList.client.js +14 -0
  149. package/dist/components/Games/GamesList.d.ts +11 -0
  150. package/dist/components/Games/GamesList.js +10 -0
  151. package/dist/components/Games/index.d.ts +1 -0
  152. package/dist/components/Games/index.js +1 -0
  153. package/dist/components/GamesSearch/GamesSearch.d.ts +8 -0
  154. package/dist/components/GamesSearch/GamesSearch.js +45 -0
  155. package/dist/components/GamesSearch/index.d.ts +1 -0
  156. package/dist/components/GamesSearch/index.js +1 -0
  157. package/dist/components/InfiniteScroll.d.ts +10 -0
  158. package/dist/components/InfiniteScroll.js +25 -0
  159. package/dist/components/JackpotCounter/JackpotCounter.client.d.ts +2 -0
  160. package/dist/components/JackpotCounter/JackpotCounter.client.js +57 -0
  161. package/dist/components/JackpotCounter/JackpotCounter.d.ts +8 -0
  162. package/dist/components/JackpotCounter/JackpotCounter.js +21 -0
  163. package/dist/components/JackpotCounter/JackpotCounterItem.d.ts +8 -0
  164. package/dist/components/JackpotCounter/JackpotCounterItem.js +103 -0
  165. package/dist/components/JackpotCounter/index.d.ts +1 -0
  166. package/dist/components/JackpotCounter/index.js +1 -0
  167. package/dist/components/Jackpots/JackpotGameProviders.d.ts +5 -0
  168. package/dist/components/Jackpots/JackpotGameProviders.js +38 -0
  169. package/dist/components/Jackpots/JackpotItemDesktop.d.ts +9 -0
  170. package/dist/components/Jackpots/JackpotItemDesktop.js +43 -0
  171. package/dist/components/Jackpots/JackpotItemMobile.d.ts +9 -0
  172. package/dist/components/Jackpots/JackpotItemMobile.js +44 -0
  173. package/dist/components/Jackpots/JackpotRules.d.ts +6 -0
  174. package/dist/components/Jackpots/JackpotRules.js +9 -0
  175. package/dist/components/Jackpots/Jackpots.client.d.ts +2 -0
  176. package/dist/components/Jackpots/Jackpots.client.js +28 -0
  177. package/dist/components/Jackpots/Jackpots.d.ts +10 -0
  178. package/dist/components/Jackpots/Jackpots.js +21 -0
  179. package/dist/components/Jackpots/index.d.ts +1 -0
  180. package/dist/components/Jackpots/index.js +1 -0
  181. package/dist/components/Jackpots/useJackpotItemData.d.ts +20 -0
  182. package/dist/components/Jackpots/useJackpotItemData.js +87 -0
  183. package/dist/components/KYC/Header.d.ts +1 -0
  184. package/dist/components/KYC/Header.js +6 -0
  185. package/dist/components/KYC/Indicator.d.ts +1 -0
  186. package/dist/components/KYC/Indicator.js +9 -0
  187. package/dist/components/KYC/KYC.d.ts +1 -0
  188. package/dist/components/KYC/KYC.js +26 -0
  189. package/dist/components/KYC/KYCContext.d.ts +2 -0
  190. package/dist/components/KYC/KYCContext.js +2 -0
  191. package/dist/components/KYC/KYCTrigger.d.ts +5 -0
  192. package/dist/components/KYC/KYCTrigger.js +14 -0
  193. package/dist/components/KYC/Step1.d.ts +1 -0
  194. package/dist/components/KYC/Step1.js +12 -0
  195. package/dist/components/KYC/Step2.d.ts +1 -0
  196. package/dist/components/KYC/Step2.js +12 -0
  197. package/dist/components/KYC/Step3.d.ts +1 -0
  198. package/dist/components/KYC/Step3.js +11 -0
  199. package/dist/components/KYC/Step4.d.ts +1 -0
  200. package/dist/components/KYC/Step4.js +6 -0
  201. package/dist/components/KYC/index.d.ts +2 -0
  202. package/dist/components/KYC/index.js +2 -0
  203. package/dist/components/KYC/useKYC.d.ts +10 -0
  204. package/dist/components/KYC/useKYC.js +8 -0
  205. package/dist/components/Marquee/Marquee.d.ts +5 -0
  206. package/dist/components/Marquee/Marquee.js +5 -0
  207. package/dist/components/Marquee/index.d.ts +1 -0
  208. package/dist/components/Marquee/index.js +1 -0
  209. package/dist/components/Messages/MessageItem.d.ts +4 -0
  210. package/dist/components/Messages/MessageItem.js +34 -0
  211. package/dist/components/Messages/MessagePopup.d.ts +1 -0
  212. package/dist/components/Messages/MessagePopup.js +20 -0
  213. package/dist/components/Messages/MessageTrigger.d.ts +8 -0
  214. package/dist/components/Messages/MessageTrigger.js +18 -0
  215. package/dist/components/Messages/Messages.d.ts +14 -0
  216. package/dist/components/Messages/Messages.js +38 -0
  217. package/dist/components/Messages/MessagesTrigger.d.ts +6 -0
  218. package/dist/components/Messages/MessagesTrigger.js +14 -0
  219. package/dist/components/Messages/index.d.ts +4 -0
  220. package/dist/components/Messages/index.js +4 -0
  221. package/dist/components/Messages/utils.d.ts +3 -0
  222. package/dist/components/Messages/utils.js +27 -0
  223. package/dist/components/PortalProvider/PortalProvider.d.ts +9 -0
  224. package/dist/components/PortalProvider/PortalProvider.js +18 -0
  225. package/dist/components/PortalProvider/Providers.d.ts +4 -0
  226. package/dist/components/PortalProvider/Providers.js +12 -0
  227. package/dist/components/PortalProvider/Snackbar.d.ts +1 -0
  228. package/dist/components/PortalProvider/Snackbar.js +21 -0
  229. package/dist/components/PortalProvider/WebVitals.d.ts +1 -0
  230. package/dist/components/PortalProvider/WebVitals.js +8 -0
  231. package/dist/components/PortalProvider/index.d.ts +1 -0
  232. package/dist/components/PortalProvider/index.js +1 -0
  233. package/dist/components/Promo/Promo.client.d.ts +2 -0
  234. package/dist/components/Promo/Promo.client.js +27 -0
  235. package/dist/components/Promo/Promo.d.ts +7 -0
  236. package/dist/components/Promo/Promo.js +15 -0
  237. package/dist/components/Promo/index.d.ts +1 -0
  238. package/dist/components/Promo/index.js +1 -0
  239. package/dist/components/Promos/Cashback.d.ts +7 -0
  240. package/dist/components/Promos/Cashback.js +17 -0
  241. package/dist/components/Promos/Promo.d.ts +7 -0
  242. package/dist/components/Promos/Promo.js +17 -0
  243. package/dist/components/Promos/Promos.d.ts +15 -0
  244. package/dist/components/Promos/Promos.js +13 -0
  245. package/dist/components/Promos/PromosCarousel.d.ts +2 -0
  246. package/dist/components/Promos/PromosCarousel.js +45 -0
  247. package/dist/components/Promos/PromosGrid.d.ts +2 -0
  248. package/dist/components/Promos/PromosGrid.js +16 -0
  249. package/dist/components/Promos/index.d.ts +1 -0
  250. package/dist/components/Promos/index.js +1 -0
  251. package/dist/components/Protected/Protected.d.ts +6 -0
  252. package/dist/components/Protected/Protected.js +8 -0
  253. package/dist/components/Protected/index.d.ts +1 -0
  254. package/dist/components/Protected/index.js +1 -0
  255. package/dist/components/Quests/CountdownTimer.d.ts +15 -0
  256. package/dist/components/Quests/CountdownTimer.js +33 -0
  257. package/dist/components/Quests/DailyCheckInQuest/DailyCheckInQuest.d.ts +4 -0
  258. package/dist/components/Quests/DailyCheckInQuest/DailyCheckInQuest.js +73 -0
  259. package/dist/components/Quests/DailyCheckInQuest/DailyCheckInQuestModal.d.ts +8 -0
  260. package/dist/components/Quests/DailyCheckInQuest/DailyCheckInQuestModal.js +8 -0
  261. package/dist/components/Quests/OnboardingQuest/OnboardingQuest.d.ts +4 -0
  262. package/dist/components/Quests/OnboardingQuest/OnboardingQuest.js +4 -0
  263. package/dist/components/Quests/Quests.client.d.ts +2 -0
  264. package/dist/components/Quests/Quests.client.js +27 -0
  265. package/dist/components/Quests/Quests.d.ts +6 -0
  266. package/dist/components/Quests/Quests.js +7 -0
  267. package/dist/components/Quests/WageringQuest/WageringQuest.d.ts +4 -0
  268. package/dist/components/Quests/WageringQuest/WageringQuest.js +19 -0
  269. package/dist/components/Quests/WageringQuest/WageringQuestModal.d.ts +9 -0
  270. package/dist/components/Quests/WageringQuest/WageringQuestModal.js +8 -0
  271. package/dist/components/Quests/index.d.ts +1 -0
  272. package/dist/components/Quests/index.js +1 -0
  273. package/dist/components/Search/Search.d.ts +6 -0
  274. package/dist/components/Search/Search.js +38 -0
  275. package/dist/components/Search/SearchTrigger.d.ts +5 -0
  276. package/dist/components/Search/SearchTrigger.js +14 -0
  277. package/dist/components/Search/index.d.ts +2 -0
  278. package/dist/components/Search/index.js +2 -0
  279. package/dist/components/SignIn/MobileNumberSignIn.d.ts +1 -0
  280. package/dist/components/SignIn/MobileNumberSignIn.js +121 -0
  281. package/dist/components/SignIn/NameAndPasswordSignIn.d.ts +1 -0
  282. package/dist/components/SignIn/NameAndPasswordSignIn.js +116 -0
  283. package/dist/components/SignIn/SignIn.d.ts +7 -0
  284. package/dist/components/SignIn/SignIn.js +18 -0
  285. package/dist/components/SignIn/SignInContext.d.ts +2 -0
  286. package/dist/components/SignIn/SignInContext.js +2 -0
  287. package/dist/components/SignIn/SignInForm.d.ts +1 -0
  288. package/dist/components/SignIn/SignInForm.js +10 -0
  289. package/dist/components/SignIn/SignInMethod.d.ts +1 -0
  290. package/dist/components/SignIn/SignInMethod.js +19 -0
  291. package/dist/components/SignIn/SignInTrigger.d.ts +6 -0
  292. package/dist/components/SignIn/SignInTrigger.js +14 -0
  293. package/dist/components/SignIn/index.d.ts +2 -0
  294. package/dist/components/SignIn/index.js +2 -0
  295. package/dist/components/SignIn/useSignIn.d.ts +10 -0
  296. package/dist/components/SignIn/useSignIn.js +11 -0
  297. package/dist/components/SignUp/SignUp.d.ts +7 -0
  298. package/dist/components/SignUp/SignUp.js +16 -0
  299. package/dist/components/SignUp/SignUpForm.d.ts +1 -0
  300. package/dist/components/SignUp/SignUpForm.js +133 -0
  301. package/dist/components/SignUp/SignUpTrigger.d.ts +6 -0
  302. package/dist/components/SignUp/SignUpTrigger.js +14 -0
  303. package/dist/components/SignUp/index.d.ts +2 -0
  304. package/dist/components/SignUp/index.js +2 -0
  305. package/dist/components/TopWins/TopWins.client.d.ts +2 -0
  306. package/dist/components/TopWins/TopWins.client.js +23 -0
  307. package/dist/components/TopWins/TopWins.d.ts +6 -0
  308. package/dist/components/TopWins/TopWins.js +7 -0
  309. package/dist/components/TopWins/index.d.ts +1 -0
  310. package/dist/components/TopWins/index.js +1 -0
  311. package/dist/components/TournamentCounter/TournamentCounter.client.d.ts +2 -0
  312. package/dist/components/TournamentCounter/TournamentCounter.client.js +50 -0
  313. package/dist/components/TournamentCounter/TournamentCounter.d.ts +8 -0
  314. package/dist/components/TournamentCounter/TournamentCounter.js +21 -0
  315. package/dist/components/TournamentCounter/TournamentCounterItem.d.ts +8 -0
  316. package/dist/components/TournamentCounter/TournamentCounterItem.js +106 -0
  317. package/dist/components/TournamentCounter/index.d.ts +1 -0
  318. package/dist/components/TournamentCounter/index.js +1 -0
  319. package/dist/components/Tournaments/TournamentGameProviders.d.ts +5 -0
  320. package/dist/components/Tournaments/TournamentGameProviders.js +38 -0
  321. package/dist/components/Tournaments/TournamentItemDesktop.d.ts +7 -0
  322. package/dist/components/Tournaments/TournamentItemDesktop.js +56 -0
  323. package/dist/components/Tournaments/TournamentItemMobile.d.ts +7 -0
  324. package/dist/components/Tournaments/TournamentItemMobile.js +54 -0
  325. package/dist/components/Tournaments/TournamentRules.d.ts +6 -0
  326. package/dist/components/Tournaments/TournamentRules.js +9 -0
  327. package/dist/components/Tournaments/Tournaments.client.d.ts +2 -0
  328. package/dist/components/Tournaments/Tournaments.client.js +19 -0
  329. package/dist/components/Tournaments/Tournaments.d.ts +10 -0
  330. package/dist/components/Tournaments/Tournaments.js +14 -0
  331. package/dist/components/Tournaments/index.d.ts +1 -0
  332. package/dist/components/Tournaments/index.js +1 -0
  333. package/dist/components/Tournaments/useTournamentItemData.d.ts +16 -0
  334. package/dist/components/Tournaments/useTournamentItemData.js +64 -0
  335. package/dist/components/TransactionRecords/DepositRecordsTable.d.ts +1 -0
  336. package/dist/components/TransactionRecords/DepositRecordsTable.js +76 -0
  337. package/dist/components/TransactionRecords/TableFilters.d.ts +28 -0
  338. package/dist/components/TransactionRecords/TableFilters.js +212 -0
  339. package/dist/components/TransactionRecords/TransactionRecords.d.ts +7 -0
  340. package/dist/components/TransactionRecords/TransactionRecords.js +9 -0
  341. package/dist/components/TransactionRecords/TransactionRecordsTable.d.ts +1 -0
  342. package/dist/components/TransactionRecords/TransactionRecordsTable.js +51 -0
  343. package/dist/components/TransactionRecords/WithdrawalRecordsTable.d.ts +1 -0
  344. package/dist/components/TransactionRecords/WithdrawalRecordsTable.js +70 -0
  345. package/dist/components/TransactionRecords/index.d.ts +1 -0
  346. package/dist/components/TransactionRecords/index.js +1 -0
  347. package/dist/components/index.js +34 -0
  348. package/package.json +1 -1
@@ -0,0 +1,56 @@
1
+ 'use client';
2
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
3
+ import Image from 'next/image';
4
+ import React from 'react';
5
+ import { twMerge } from 'tailwind-merge';
6
+ import { Trophy01Icon, User01Icon } from '../../icons/index.js';
7
+ import { Award01Icon } from '../../icons/Award01Icon.js';
8
+ import { StarIcon } from '../../icons/StarIcon.js';
9
+ import firstPlace from '../../images/first-place.png';
10
+ import trophyTwo from '../../images/trophy-two.png';
11
+ import trophy from '../../images/trophy.png';
12
+ import { formatNumber, mask } from '../../utils/index.js';
13
+ import styles from '../JackpotCounter/JackpotCounterItem.module.css';
14
+ import { TournamentGameProviders } from './TournamentGameProviders.js';
15
+ import { TournamentRules } from './TournamentRules.js';
16
+ import { useTournamentItemData } from './useTournamentItemData.js';
17
+ export function TournamentItemDesktop({ tournament, gameProviders, }) {
18
+ const { prizeAmountsByRank, timeParts, tournamentReward, filteredGameProviders, localeInfo, } = useTournamentItemData({ tournament, gameProviders });
19
+ return (_jsxs("div", { className: twMerge('bg-bg-tertiary border-border-primary rounded-2xl border'), children: [_jsxs("div", { className: twMerge('relative flex shrink-0 p-3 text-center lg:gap-6 lg:p-5'), children: [_jsx("div", { className: "z-1 relative flex flex-1 flex-col", children: _jsx("div", { className: "flex h-full flex-col justify-between", children: _jsx("div", { className: "flex w-full justify-between", children: _jsxs("div", { className: "flex w-full flex-col", children: [_jsxs("div", { className: "relative flex w-full justify-between", children: [_jsxs("div", { className: "w-full", children: [_jsxs("div", { className: "flex w-full justify-between", children: [_jsxs("div", { className: "border-utility-brand-200 bg-utility-brand-50 text-utility-brand-700 flex h-fit w-fit items-center gap-1 rounded-full border px-2 py-0.5 text-xs font-medium", children: [_jsx(Award01Icon, { className: "text-utility-brand-500 size-3.5" }), "Multiplier"] }), _jsx("div", { className: "flex h-fit", children: timeParts.map((part, idx) => (_jsxs(React.Fragment, { children: [_jsxs("div", { className: twMerge('bg-bg-primary text-text-primary-900 flex h-fit w-8 flex-col items-center rounded-[4px] pb-1.5'), children: [_jsx("span", { className: "text-base font-medium", children: String(part.value).padStart(2, '0') }), _jsx("span", { className: "text-[8px]", children: part.label })] }), idx < timeParts.length - 1 && (_jsxs("div", { className: "flex flex-col justify-center gap-[6px] px-[6px]", children: [_jsx("div", { className: "bg-bg-primary h-1 w-1 rounded-full" }), _jsx("div", { className: "bg-bg-primary h-1 w-1 rounded-full" })] }))] }, part.label))) })] }), _jsx("div", { className: "text-text-primary-900 mt-1 text-left text-lg font-medium lg:mt-5 lg:text-2xl", children: tournament.name }), _jsx("div", { className: "bg-bg-primary text-brand-400 mt-1.5 w-fit rounded-md px-2 py-1 text-2xl font-bold lg:mt-2 lg:text-4xl", children: formatNumber(tournamentReward, {
20
+ currency: localeInfo.currency.code,
21
+ minDecimalPlaces: 2,
22
+ maxDecimalPlaces: 2,
23
+ }) })] }), _jsx("div", { className: "z-1 bottom-[-60] right-0 block lg:absolute", children: _jsx("div", { className: "h-[155px] w-auto shrink-0", children: _jsx(Image, { quality: 100, width: 155, height: 155, src: trophy, alt: "trophy", className: "px-6 py-2.5" }) }) })] }), tournament.topPayouts.length ? (_jsx("div", { children: _jsxs("div", { className: "bg-bg-primary relative mt-4 hidden w-full gap-4 rounded-lg p-4 lg:flex", children: [_jsxs("div", { className: "bg-bg-tertiary relative flex h-18 w-18 items-center justify-center rounded-full", children: [_jsx(User01Icon, { className: "text-text-quarterary-500 size-9" }), _jsx("div", { className: "bg-yellow-400 text-brand-950 border-bg-primary absolute bottom-0 right-0 flex h-6 w-6 items-center justify-center rounded-full border-[1.5px] text-xs font-bold", children: "1st" })] }), _jsxs("div", { className: "flex flex-col gap-1 text-left", children: [_jsxs("div", { className: "border-utility-brand-200 bg-utility-brand-50 text-utility-brand-700 flex h-fit w-fit items-center gap-1 rounded-sm border px-2 py-0.5 text-xs font-medium", children: [_jsx(Trophy01Icon, { className: "text-utility-brand-600 size-3.5" }), "Top Payout"] }), _jsx("div", { className: "font-semibold", children: mask(tournament?.topPayouts[0]?.member?.name || '') }), _jsx("div", { className: "text-brand-400 text-2xl", children: formatNumber(tournament?.topPayouts[0]?.amount, {
24
+ currency: localeInfo.currency.code,
25
+ minDecimalPlaces: 2,
26
+ maxDecimalPlaces: 2,
27
+ }) })] })] }) })) : (_jsxs("div", { className: "bg-bg-primary relative mt-4 hidden w-full gap-4 rounded-lg p-4 lg:flex", children: [_jsx(Image, { width: 66, height: 87, src: firstPlace, alt: "closeChest", className: "size-full h-auto w-[66px] mix-blend-luminosity" }), _jsxs("div", { className: "flex flex-col gap-1 text-left", children: [_jsxs("div", { className: "border-utility-brand-200 bg-utility-brand-50 text-utility-brand-700 flex h-fit w-fit items-center gap-1 rounded-sm border px-2 py-0.5 text-xs font-medium", children: [_jsx(Trophy01Icon, { className: "text-utility-brand-600 size-3.5" }), "Top Payout"] }), _jsx("div", { className: "font-semibold", children: "No winners yet" }), _jsx("div", { className: "text-text-secondary-700 text-xs", children: "You could be the first to win the tournament!" })] })] }))] }) }) }) }), _jsxs("div", { className: "z-1 hidden flex-1 space-y-4 lg:block", children: [_jsxs("div", { className: "flex items-center justify-between", children: [_jsxs("div", { className: "flex items-center gap-2", children: [_jsx(Image, { width: 24, height: 24, src: trophyTwo, quality: 100, alt: "leaderboardIcon", className: "size-full w-6" }), _jsx("div", { className: "text-text-primary-900 text-lg font-semibold", children: tournament.currentLeaderboard.edges.length
28
+ ? 'Leaderboard'
29
+ : 'Starting soon!' })] }), _jsx(TournamentRules, { jackpotRules: tournament.description })] }), _jsx("div", { className: twMerge('max-h-[272px] overflow-y-scroll', styles['scrollArea']), children: _jsx("div", { className: "border-gray-200 overflow-hidden rounded-xl", children: _jsxs("table", { className: "w-full", children: [_jsx("thead", { children: _jsxs("tr", { className: "bg-bg-secondary text-text-tertiary-600 h-8 text-xs font-medium", children: [_jsx("th", { className: "w-[52px]", children: "#" }), _jsx("th", { children: "Player" }), _jsx("th", { children: "Multiplier" }), _jsx("th", { children: "Prize" })] }) }), _jsx("tbody", { children: tournament.currentLeaderboard.edges.length ? (_jsx(_Fragment, { children: tournament.currentLeaderboard.edges.map((tournament, i) => (_jsxs("tr", { className: "bg-bg-primary text-text-secondary-700 text-sm", children: [_jsx("td", { className: "border-border-secondary h-12 w-[52px] border-t-2", children: i + 1 < 6 ? (_jsxs("div", { className: "relative", children: [_jsx(StarIcon, { className: twMerge('mx-auto size-6.5', starTierStyles[i].starColor) }), _jsx("span", { className: twMerge('absolute inset-0 mt-0.5 flex items-center justify-center text-2xs font-bold', starTierStyles[i].numberColor), children: i + 1 })] })) : (i + 1) }), _jsx("td", { className: "border-border-secondary h-12 border-t-2", children: mask(tournament.node.username) }), _jsxs("td", { className: "border-border-secondary h-12 border-t-2", children: [tournament.node.multiplier, "x"] }), i + 1 <= prizeAmountsByRank.length ? (_jsx("td", { className: "border-border-secondary text-brand-400 h-12 border-t-2", children: formatNumber(prizeAmountsByRank[i], {
30
+ currency: localeInfo.currency.code,
31
+ minDecimalPlaces: 2,
32
+ maxDecimalPlaces: 2,
33
+ }) })) : (_jsx("td", { className: "border-border-secondary h-12 border-t-2", children: "-" }))] }, i))) })) : (_jsx(_Fragment, { children: Array.from({ length: 10 }).map((_, i) => (_jsxs("tr", { className: "bg-bg-primary text-text-secondary-700 text-sm", children: [_jsx("td", { className: "border-border-secondary h-12 w-[52px] border-t-2", children: i + 1 < 6 ? (_jsxs("div", { className: "relative", children: [_jsx(StarIcon, { className: twMerge('mx-auto size-6.5', starTierStyles[i].starColor) }), _jsx("span", { className: twMerge('absolute inset-0 mt-0.5 flex items-center justify-center text-2xs font-bold', starTierStyles[i].numberColor), children: i + 1 })] })) : (i + 1) }), _jsx("td", { className: "border-border-secondary h-12 border-t-2", children: "-" }), _jsx("td", { className: "border-border-secondary h-12 border-t-2", children: "-" }), _jsx("td", { className: "border-border-secondary h-12 border-t-2", children: "-" })] }, i))) })) })] }) }) })] })] }), Boolean(filteredGameProviders.length) && (_jsx(TournamentGameProviders, { gameProviders: filteredGameProviders }))] }));
34
+ }
35
+ const starTierStyles = [
36
+ {
37
+ starColor: 'text-yellow-400',
38
+ numberColor: 'text-bg-primary',
39
+ },
40
+ {
41
+ starColor: 'text-utility-gray-700',
42
+ numberColor: 'text-bg-primary',
43
+ },
44
+ {
45
+ starColor: 'text-yellow-700',
46
+ numberColor: 'text-bg-primary',
47
+ },
48
+ {
49
+ starColor: 'text-bg-quaternary',
50
+ numberColor: 'text-text-primary-900',
51
+ },
52
+ {
53
+ starColor: 'text-bg-quaternary',
54
+ numberColor: 'text-text-primary-900',
55
+ },
56
+ ];
@@ -0,0 +1,7 @@
1
+ import type { Tournament } from '@opexa/portal-sdk-core';
2
+ import type { GameProviderData } from '../../types';
3
+ export interface TournamentItemMobileProps {
4
+ tournament: Tournament;
5
+ gameProviders: GameProviderData[];
6
+ }
7
+ export declare function TournamentItemMobile({ tournament, gameProviders, }: TournamentItemMobileProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,54 @@
1
+ 'use client';
2
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
3
+ import Image from 'next/image';
4
+ import React, { useState } from 'react';
5
+ import { twMerge } from 'tailwind-merge';
6
+ import { ArrowNarrowDownIcon, ArrowNarrowUpIcon, Award01Icon, StarIcon, Trophy01Icon, User01Icon, } from '../../icons/index.js';
7
+ import firstPlace from '../../images/first-place.png';
8
+ import trophy from '../../images/trophy.png';
9
+ import { Button } from '../../ui/index.js';
10
+ import { formatNumber, mask } from '../../utils/index.js';
11
+ import { TournamentGameProviders } from './TournamentGameProviders.js';
12
+ import { TournamentRules } from './TournamentRules.js';
13
+ import { useTournamentItemData } from './useTournamentItemData.js';
14
+ export function TournamentItemMobile({ tournament, gameProviders, }) {
15
+ const [isDetailsVisible, setIsDetailsVisible] = useState(false);
16
+ const { prizeAmountsByRank, timeParts, tournamentReward, filteredGameProviders, localeInfo, } = useTournamentItemData({ tournament, gameProviders });
17
+ return (_jsxs("div", { className: "bg-bg-primary border-border-primary rounded-2xl border", children: [_jsx("div", { className: twMerge('bg-bg-tertiary relative flex shrink-0 rounded-2xl p-3 text-center lg:gap-4 lg:p-5'), children: _jsxs("div", { className: "z-1 relative flex flex-1 flex-col", children: [_jsx("div", { className: "flex h-full flex-col justify-between", children: _jsx("div", { className: "flex w-full justify-between", children: _jsx("div", { className: "flex w-full flex-col", children: _jsxs("div", { className: "relative flex w-full justify-between", children: [_jsxs("div", { className: "w-full", children: [_jsxs("div", { className: "flex w-full justify-between", children: [_jsxs("div", { className: "border-utility-brand-200 bg-utility-brand-50 text-utility-brand-700 flex h-fit w-fit items-center gap-1 rounded-full border px-2 py-0.5 text-xs font-medium", children: [_jsx(Award01Icon, { className: "text-utility-brand-500 size-3.5" }), "Multiplier"] }), _jsx("div", { className: "flex h-fit", children: timeParts.map((part, idx) => (_jsxs(React.Fragment, { children: [_jsxs("div", { className: twMerge('bg-bg-primary text-text-primary-900 flex h-fit w-8 flex-col items-center rounded-[4px] pb-1.5'), children: [_jsx("span", { className: "text-base font-medium", children: String(part.value).padStart(2, '0') }), _jsx("span", { className: "text-[8px]", children: part.label })] }), idx < timeParts.length - 1 && (_jsxs("div", { className: "flex flex-col justify-center gap-[6px] px-[6px]", children: [_jsx("div", { className: "bg-bg-primary h-1 w-1 rounded-full" }), _jsx("div", { className: "bg-bg-primary h-1 w-1 rounded-full" })] }))] }, part.label))) })] }), _jsx("div", { className: "text-text-primary-900 mt-2.5 text-left text-lg font-medium lg:mt-5 lg:text-2xl", children: tournament.name }), _jsx("div", { className: "bg-bg-primary text-brand-400 mt-1.5 w-fit rounded-md px-2 py-1 text-2xl font-bold lg:mt-2 lg:text-4xl", children: formatNumber(tournamentReward, {
18
+ currency: localeInfo.currency.code,
19
+ minDecimalPlaces: 2,
20
+ maxDecimalPlaces: 2,
21
+ }) })] }), _jsx("div", { className: "z-1 absolute bottom-[-60] right-0", children: _jsx(Image, { width: 72.94, height: 93, src: trophy, alt: "trophy", quality: 100, className: "size-full" }) })] }) }) }) }), tournament.topPayouts.length ? (_jsx("div", { children: _jsxs("div", { className: "bg-bg-primary relative mt-4 flex w-full gap-4 rounded-lg p-4", children: [_jsxs("div", { className: "bg-bg-tertiary relative flex h-18 w-18 items-center justify-center rounded-full", children: [_jsx(User01Icon, { className: "text-text-quarterary-500 size-9" }), _jsx("div", { className: "bg-yellow-400 text-brand-950 border-bg-primary absolute bottom-0 right-0 flex h-6 w-6 items-center justify-center rounded-full border-[1.5px] text-xs font-bold", children: "1st" })] }), _jsxs("div", { className: "flex flex-col gap-1 text-left", children: [_jsxs("div", { className: "border-utility-brand-200 bg-utility-brand-50 text-utility-brand-700 flex h-fit w-fit items-center gap-1 rounded-sm border px-2 py-0.5 text-xs font-medium", children: [_jsx(Trophy01Icon, { className: "text-utility-brand-600 size-3.5" }), "Top Payout"] }), _jsx("div", { className: "font-semibold", children: mask(tournament?.topPayouts[0]?.member?.name || '') }), _jsx("div", { className: "text-brand-400 text-2xl", children: formatNumber(tournament?.topPayouts[0]?.amount, {
22
+ currency: localeInfo.currency.code,
23
+ minDecimalPlaces: 2,
24
+ maxDecimalPlaces: 2,
25
+ }) })] })] }) })) : (_jsxs("div", { className: "bg-bg-primary relative mt-4 flex w-full gap-4 rounded-lg p-4", children: [_jsx(Image, { width: 66, height: 87, src: firstPlace, alt: "closeChest", className: "size-full h-auto w-[66px] mix-blend-luminosity" }), _jsxs("div", { className: "flex flex-col gap-1 text-left", children: [_jsxs("div", { className: "border-utility-brand-200 bg-utility-brand-50 text-utility-brand-700 flex h-fit w-fit items-center gap-1 rounded-sm border px-2 py-0.5 text-xs font-medium", children: [_jsx(Trophy01Icon, { className: "text-utility-brand-600 size-3.5" }), "Top Payout"] }), _jsx("div", { className: "font-semibold", children: "No winners yet" }), _jsx("div", { className: "text-text-secondary-700 text-xs", children: "You could be the first to win the tournament!" })] })] })), _jsx(Button, { variant: "outline", className: twMerge('mt-5.5 px-3.5 py-2.5 text-sm', isDetailsVisible ? 'hidden' : 'flex'), onClick: () => setIsDetailsVisible(!isDetailsVisible), children: _jsxs("div", { className: "flex gap-1.5", children: ["See Details", _jsx(ArrowNarrowDownIcon, { className: "size-5" })] }) })] }) }), isDetailsVisible && (_jsxs("div", { children: [_jsxs("div", { className: "z-1 flex-1", children: [_jsxs("div", { className: "flex items-center justify-between p-3", children: [_jsx("div", { className: "flex gap-2", children: _jsx("div", { className: "text-text-primary-900 text-lg font-semibold", children: tournament.currentLeaderboard.edges.length
26
+ ? 'Leaderboard'
27
+ : 'Starting soon!' }) }), _jsx(TournamentRules, { jackpotRules: tournament.description })] }), _jsx("div", { children: _jsx("div", { className: "border-gray-200 overflow-hidden", children: _jsxs("table", { className: "w-full", children: [_jsx("thead", { children: _jsxs("tr", { className: "bg-bg-secondary text-text-tertiary-600 h-8 text-center text-xs font-medium", children: [_jsx("th", { className: "w-[52px]", children: "#" }), _jsx("th", { children: "Player" }), _jsx("th", { children: "Multiplier" }), _jsx("th", { children: "Prize" })] }) }), _jsx("tbody", { children: tournament.currentLeaderboard.edges.length ? (_jsx(_Fragment, { children: tournament.currentLeaderboard.edges.map((tournament, i) => (_jsxs("tr", { className: "bg-bg-primary text-text-secondary-700 text-center text-sm", children: [_jsx("td", { className: "border-border-secondary h-12 w-[52px] border-t-2", children: i + 1 < 6 ? (_jsxs("div", { className: "relative", children: [_jsx(StarIcon, { className: twMerge('mx-auto size-6.5', starTierStyles[i].starColor) }), _jsx("span", { className: twMerge('absolute inset-0 mt-0.5 flex items-center justify-center text-2xs font-bold', starTierStyles[i].numberColor), children: i + 1 })] })) : (i + 1) }), _jsx("td", { className: "border-border-secondary h-12 border-t-2", children: mask(tournament.node.username) }), _jsxs("td", { className: "border-border-secondary h-12 border-t-2", children: [tournament.node.multiplier, "x"] }), i + 1 <= prizeAmountsByRank.length ? (_jsx("td", { className: "border-border-secondary text-brand-400 h-12 border-t-2", children: formatNumber(prizeAmountsByRank[i], {
28
+ currency: localeInfo.currency.code,
29
+ minDecimalPlaces: 2,
30
+ maxDecimalPlaces: 2,
31
+ }) })) : (_jsx("td", { className: "border-border-secondary h-12 border-t-2", children: "-" }))] }, i))) })) : (_jsx(_Fragment, { children: Array.from({ length: 5 }).map((_, i) => (_jsxs("tr", { className: "bg-bg-primary text-text-secondary-700 text-center text-sm", children: [_jsx("td", { className: "border-border-secondary h-12 w-[52px] border-t-2", children: i + 1 < 6 ? (_jsxs("div", { className: "relative", children: [_jsx(StarIcon, { className: twMerge('mx-auto size-6.5', starTierStyles[i].starColor) }), _jsx("span", { className: twMerge('absolute inset-0 mt-0.5 flex items-center justify-center text-2xs font-bold', starTierStyles[i].numberColor), children: i + 1 })] })) : (i + 1) }), _jsx("td", { className: "border-border-secondary h-12 border-t-2", children: "-" }), _jsx("td", { className: "border-border-secondary h-12 border-t-2", children: "-" }), _jsx("td", { className: "border-border-secondary h-12 border-t-2", children: "-" })] }, i))) })) })] }) }) })] }), Boolean(filteredGameProviders.length) && (_jsx(TournamentGameProviders, { gameProviders: filteredGameProviders })), _jsx("div", { className: "m-3", children: _jsx(Button, { variant: "outline", className: twMerge('px-3.5 py-2.5 text-sm', !isDetailsVisible ? 'hidden' : 'flex'), onClick: () => setIsDetailsVisible(!isDetailsVisible), children: _jsxs("div", { className: "flex gap-1.5", children: ["Hide", _jsx(ArrowNarrowUpIcon, { className: "size-5" })] }) }) })] }))] }));
32
+ }
33
+ const starTierStyles = [
34
+ {
35
+ starColor: 'text-yellow-400',
36
+ numberColor: 'text-bg-primary',
37
+ },
38
+ {
39
+ starColor: 'text-utility-gray-700',
40
+ numberColor: 'text-bg-primary',
41
+ },
42
+ {
43
+ starColor: 'text-yellow-700',
44
+ numberColor: 'text-bg-primary',
45
+ },
46
+ {
47
+ starColor: 'text-bg-quaternary',
48
+ numberColor: 'text-text-primary-900',
49
+ },
50
+ {
51
+ starColor: 'text-bg-quaternary',
52
+ numberColor: 'text-text-primary-900',
53
+ },
54
+ ];
@@ -0,0 +1,6 @@
1
+ import type { ReactNode } from 'react';
2
+ export interface TournamentRulesProps {
3
+ children?: ReactNode;
4
+ jackpotRules: string;
5
+ }
6
+ export declare function TournamentRules(props: TournamentRulesProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,9 @@
1
+ 'use client';
2
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
+ import { Portal } from '@ark-ui/react';
4
+ import { XIcon } from '../../icons/index.js';
5
+ import { Flag06Icon } from '../../icons/Flag06Icon.js';
6
+ import { Dialog } from '../../ui/index.js';
7
+ export function TournamentRules(props) {
8
+ return (_jsxs(Dialog.Root, { lazyMount: true, unmountOnExit: true, closeOnEscape: false, closeOnInteractOutside: false, children: [_jsx(Dialog.Trigger, { asChild: true, children: props.children ?? (_jsx("button", { type: "button", className: "text-button-tertiary-fg flex text-sm font-semibold", children: "Tournament Rules" })) }), _jsxs(Portal, { children: [_jsx(Dialog.Backdrop, {}), _jsx(Dialog.Positioner, { children: _jsxs(Dialog.Content, { className: "bg-bg-primary-alt mx-auto h-full w-full items-start lg:h-auto lg:w-[640px] lg:rounded-xl", children: [_jsxs("div", { className: "p-3xl", children: [_jsxs("div", { className: "mb-3 flex justify-between", children: [_jsx("div", { className: "bg-bg-tertiary border-border-primary flex h-12 w-12 items-center justify-center rounded-lg border", children: _jsx(Flag06Icon, { className: "text-text-tertiary-600 size-full p-3" }) }), _jsx(Dialog.CloseTrigger, { children: _jsx(XIcon, {}) })] }), _jsx("div", { className: "text-text-primary-900 text-lg font-semibold", children: "Tournament Rules" }), _jsx("div", { className: "text-text-tertiary-600 mt-1 text-sm", children: "Terms and Conditions" })] }), _jsx("div", { className: "border-gray-800 border-t-1 pb-3", children: _jsx("div", { dangerouslySetInnerHTML: { __html: props.jackpotRules }, className: "px-3xl py-3" }) })] }) })] })] }));
9
+ }
@@ -0,0 +1,2 @@
1
+ import type { TournamentsProps } from './Tournaments';
2
+ export declare function Tournaments__client(props: TournamentsProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,19 @@
1
+ 'use client';
2
+ import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
3
+ import Image from 'next/image';
4
+ import { useTournamentsQuery } from '../../client/hooks/index.js';
5
+ import closeChest from '../../images/close-chest.png';
6
+ import { TournamentItemDesktop } from './TournamentItemDesktop.js';
7
+ import { TournamentItemMobile } from './TournamentItemMobile.js';
8
+ export function Tournaments__client(props) {
9
+ const tournamentsQuery = useTournamentsQuery({
10
+ first: 100,
11
+ filter: {
12
+ status: {
13
+ equal: 'ACTIVE',
14
+ },
15
+ },
16
+ });
17
+ const tournaments = tournamentsQuery.data?.pages[0].edges.map((edge) => edge.node) ?? [];
18
+ return (_jsxs("div", { className: props.className, children: [_jsx("div", { className: "mb-3 text-lg font-semibold lg:mb-4.5", children: props.heading ?? 'Tournaments' }), tournaments.length > 0 ? (_jsxs(_Fragment, { children: [_jsx("div", { className: "hidden flex-col gap-6 lg:flex", children: tournaments.map((tournament, i) => (_jsx(TournamentItemDesktop, { tournament: tournament, gameProviders: props.gameProviders }, i))) }), _jsx("div", { className: "flex flex-col gap-6 lg:hidden", children: tournaments.map((tournament, i) => (_jsx(TournamentItemMobile, { tournament: tournament, gameProviders: props.gameProviders }, i))) })] })) : (_jsxs("div", { className: "mt-11 flex flex-col items-center justify-center", children: [_jsx(Image, { width: 100, height: 100, src: closeChest, alt: "closeChest", quality: 100, className: "h-29.5 w-29.5 lg:h-25 lg:w-25 size-full mix-blend-luminosity" }), _jsx("div", { className: "text-text-primary-900 mt-4 text-base font-semibold", children: props.heading ?? 'Tournaments' }), _jsxs("div", { className: "text-text-tertiary-600 mt-1 text-center text-sm", children: ["No ", props.heading?.toLocaleLowerCase() ?? 'tournaments', " are running at the moment. ", _jsx("br", {}), "Please check back later!"] })] }))] }));
19
+ }
@@ -0,0 +1,10 @@
1
+ import type { GameProviderData } from '../../types';
2
+ export interface TournamentsProps {
3
+ /** @default "Tournaments" */
4
+ heading?: string;
5
+ /** @default "/tournaments" */
6
+ viewAllUrl?: string;
7
+ className?: string;
8
+ gameProviders: GameProviderData[];
9
+ }
10
+ export declare function Tournaments(props: TournamentsProps): Promise<import("react/jsx-runtime").JSX.Element>;
@@ -0,0 +1,14 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { prefetchTournamentsQuery } from '../../server/utils/index.js';
3
+ import { Tournaments__client } from './Tournaments.client.js';
4
+ export async function Tournaments(props) {
5
+ await prefetchTournamentsQuery({
6
+ first: 100,
7
+ filter: {
8
+ status: {
9
+ equal: 'ACTIVE',
10
+ },
11
+ },
12
+ });
13
+ return _jsx(Tournaments__client, { ...props });
14
+ }
@@ -0,0 +1 @@
1
+ export * from './Tournaments';
@@ -0,0 +1 @@
1
+ export * from './Tournaments.js';
@@ -0,0 +1,16 @@
1
+ import type { Tournament } from '@opexa/portal-sdk-core';
2
+ import type { GameProviderData } from '../../types';
3
+ export interface TournamentItemProps {
4
+ tournament: Tournament;
5
+ gameProviders: GameProviderData[];
6
+ }
7
+ export declare function useTournamentItemData({ tournament, gameProviders, }: TournamentItemProps): {
8
+ timeParts: {
9
+ label: string;
10
+ value: number;
11
+ }[];
12
+ tournamentReward: number;
13
+ prizeAmountsByRank: number[];
14
+ filteredGameProviders: GameProviderData[];
15
+ localeInfo: import("../../utils").LocaleInfo;
16
+ };
@@ -0,0 +1,64 @@
1
+ import { pick } from 'lodash-es';
2
+ import React, { useEffect, useMemo, useState } from 'react';
3
+ import { useLocaleInfo } from '../../client/hooks/index.js';
4
+ export function useTournamentItemData({ tournament, gameProviders, }) {
5
+ const localeInfo = useLocaleInfo();
6
+ const [timeRemaining, setTimeRemaining] = useState({
7
+ days: 0,
8
+ hours: 0,
9
+ minutes: 0,
10
+ seconds: 0,
11
+ isPast: false,
12
+ });
13
+ const activationEndDateTime = useMemo(() => new Date(tournament.activationEndDateTime), [tournament.activationEndDateTime]);
14
+ const calculateRemainingTime = React.useCallback(() => {
15
+ const now = new Date();
16
+ const diffMs = activationEndDateTime.getTime() - now.getTime();
17
+ if (diffMs <= 0) {
18
+ setTimeRemaining({
19
+ days: 0,
20
+ hours: 0,
21
+ minutes: 0,
22
+ seconds: 0,
23
+ isPast: true,
24
+ });
25
+ return;
26
+ }
27
+ const diffSeconds = Math.floor(diffMs / 1000);
28
+ const days = Math.floor(diffSeconds / (3600 * 24));
29
+ const hours = Math.floor((diffSeconds % (3600 * 24)) / 3600);
30
+ const minutes = Math.floor((diffSeconds % 3600) / 60);
31
+ const seconds = diffSeconds % 60;
32
+ const updated = pick({ days, hours, minutes, seconds, isPast: false }, [
33
+ 'days',
34
+ 'hours',
35
+ 'minutes',
36
+ 'seconds',
37
+ 'isPast',
38
+ ]);
39
+ setTimeRemaining(updated);
40
+ }, [activationEndDateTime]);
41
+ useEffect(() => {
42
+ calculateRemainingTime();
43
+ const interval = setInterval(calculateRemainingTime, 1000); // Update every second
44
+ return () => clearInterval(interval);
45
+ }, [activationEndDateTime, calculateRemainingTime]);
46
+ const timeParts = [
47
+ { label: 'Day', value: timeRemaining.days },
48
+ { label: 'Hour', value: timeRemaining.hours },
49
+ { label: 'Min', value: timeRemaining.minutes },
50
+ { label: 'Sec', value: timeRemaining.seconds },
51
+ ];
52
+ const tournamentReward = Object.values(tournament.rewardSettings)
53
+ .map(Number)
54
+ .reduce((sum, val) => sum + val, 0);
55
+ const prizeAmountsByRank = Object.values(tournament.rewardSettings).map(Number);
56
+ const filteredGameProviders = gameProviders.filter((provider) => tournament.enabledGameProviders.includes(provider.id));
57
+ return {
58
+ timeParts,
59
+ tournamentReward,
60
+ prizeAmountsByRank,
61
+ filteredGameProviders,
62
+ localeInfo,
63
+ };
64
+ }
@@ -0,0 +1 @@
1
+ export declare function DepositRecordsTable(): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,76 @@
1
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
+ import { tz, TZDateMini } from '@date-fns/tz';
3
+ import {} from '@opexa/portal-sdk-core';
4
+ import { endOfDay, format, startOfDay } from 'date-fns';
5
+ import { useState } from 'react';
6
+ import { twMerge } from 'tailwind-merge';
7
+ import { useDepositRecordsQuery, useInfiniteQueryHelper, useLocaleInfo, } from '../../client/hooks/index.js';
8
+ import { ChevronLeftIcon, ChevronRightIcon, File02Icon, SpinnerIcon, } from '../../icons/index.js';
9
+ import { Badge, IconButton, Table } from '../../ui/index.js';
10
+ import { capitalize, formatNumber } from '../../utils/index.js';
11
+ import { Empty } from '../Empty.js';
12
+ import { TableFilters } from './TableFilters.js';
13
+ export function DepositRecordsTable() {
14
+ const [timestamp, setTimestamp] = useState();
15
+ const [depositStatus, setDepositStatus] = useState();
16
+ const localeInfo = useLocaleInfo();
17
+ const { page, hasNextPage, hasPrevPage, next, prev, rows, totalPages, loading, firstPage, } = useInfiniteQueryHelper(useDepositRecordsQuery, {
18
+ filter: {
19
+ ...(depositStatus && {
20
+ status: {
21
+ equal: depositStatus,
22
+ },
23
+ }),
24
+ ...(timestamp && {
25
+ dateTimeCreated: {
26
+ ...(timestamp.start && {
27
+ greaterThanOrEqual: new TZDateMini(startOfDay(timestamp.start), localeInfo.timezone).toISOString(),
28
+ }),
29
+ ...(timestamp.end && {
30
+ lesserThanOrEqual: new TZDateMini(endOfDay(timestamp.end), localeInfo.timezone).toISOString(),
31
+ }),
32
+ },
33
+ }),
34
+ },
35
+ });
36
+ return (_jsxs(_Fragment, { children: [_jsx(TableFilters, { enabledFilters: {
37
+ depositStatus: true,
38
+ }, value: {
39
+ timestamp,
40
+ depositStatus,
41
+ }, onChange: (value) => {
42
+ firstPage();
43
+ setTimestamp(value.timestamp);
44
+ setDepositStatus(value.depositStatus);
45
+ } }), rows.length <= 0 && (_jsx(Empty, { icon: loading ? SpinnerIcon : File02Icon, title: loading ? 'Just a moment' : 'No data', message: loading
46
+ ? 'Fetching latest deposit records...'
47
+ : 'No data is currently available.', className: "mt-5xl" })), rows.length >= 1 && (_jsxs("div", { className: twMerge('mt-xl', 'border-y', 'border-border-secondary', 'bleed', 'lg:not-bleed', 'lg:mt-3xl', 'lg:w-full', 'lg:rounded-xl', 'lg:border-x'), children: [_jsx("div", { className: "border-border-secondary scrollbar-thumb:bg-bg-quaternary scrollbar-track:bg-transparent scrollbar:h-2 scrollbar-thumb:rounded-full overflow-hidden overflow-x-auto rounded-none border-b lg:rounded-t-xl", children: _jsxs(Table.Root, { className: "border-0", children: [_jsx(Table.Header, { children: _jsxs(Table.Row, { children: [_jsx(Table.Heading, { children: "Deposit No." }), _jsx(Table.Heading, { children: "Reference" }), _jsx(Table.Heading, { children: "Deposit Method" }), _jsx(Table.Heading, { children: "Applied Amount" }), _jsx(Table.Heading, { children: "Recieved Amount" }), _jsx(Table.Heading, { children: "Transaction Fee" }), _jsx(Table.Heading, { children: "Deposit Time" }), _jsx(Table.Heading, { children: "Recieved Time" }), _jsx(Table.Heading, { children: "Status" })] }) }), _jsx(Table.Body, { children: rows.map((data) => (_jsxs(Table.Row, { children: [_jsx(Table.Cell, { className: "!py-1", children: data.depositNumber }), _jsx(Table.Cell, { className: "!py-1", children: data.reference }), _jsx(Table.Cell, { className: "!py-1", children: capitalize(data.type, {
48
+ delimiter: capitalize.delimiters.UNDERSCORE,
49
+ }) }), _jsx(Table.Cell, { className: "!py-1", children: formatNumber(data.amount, {
50
+ currency: localeInfo.currency.code,
51
+ minDecimalPlaces: 2,
52
+ }) }), _jsx(Table.Cell, { className: "!py-1", children: formatNumber(data.netAmount, {
53
+ currency: localeInfo.currency.code,
54
+ minDecimalPlaces: 2,
55
+ }) }), _jsx(Table.Cell, { className: "!py-1", children: formatNumber(data.fee, {
56
+ currency: localeInfo.currency.code,
57
+ minDecimalPlaces: 2,
58
+ }) }), _jsxs(Table.Cell, { className: "!py-1", children: [_jsx("div", { className: "leading-tight", children: format(data.dateTimeCreated, 'MM/dd/yyyy', {
59
+ in: tz(localeInfo.timezone),
60
+ }) }), _jsx("div", { className: "text-text-tertiary-600 leading-tight", children: format(data.dateTimeCreated, 'hh:mm a', {
61
+ in: tz(localeInfo.timezone),
62
+ }) })] }), _jsx(Table.Cell, { className: "!py-1", children: (data.status === 'CONFIRMED' ||
63
+ data.status === 'APPROVED') && (_jsxs(_Fragment, { children: [_jsx("div", { className: "leading-tight", children: format(data.dateTimeLastUpdated, 'MM/dd/yyyy', {
64
+ in: tz(localeInfo.timezone),
65
+ }) }), _jsx("div", { className: "text-text-tertiary-600 leading-tight", children: format(data.dateTimeLastUpdated, 'hh:mm a', {
66
+ in: tz(localeInfo.timezone),
67
+ }) })] })) }), _jsx(Table.Cell, { className: "!py-1", children: _jsx(Badge.Root, { variant: "subtle", colorScheme: data.status === 'FAILED' ||
68
+ data.status === 'REJECTED' ||
69
+ data.status === 'CANCELLED'
70
+ ? 'danger'
71
+ : data.status === 'PENDING'
72
+ ? 'warning'
73
+ : 'success', children: _jsx(Badge.Label, { children: capitalize(data.status, {
74
+ delimiter: capitalize.delimiters.UNDERSCORE,
75
+ }) }) }) })] }, data.id))) })] }) }), _jsxs("div", { className: "flex items-center justify-between gap-lg px-4 py-3", children: [_jsx(IconButton, { size: "xs", variant: "outline", colorScheme: "gray", disabled: !hasPrevPage || loading, onClick: () => prev(), children: _jsx(ChevronLeftIcon, { className: "size-5" }) }), _jsxs("p", { className: "text-text-secondary-700 text-sm font-medium", children: ["Page ", page, " of ", totalPages] }), _jsx(IconButton, { size: "xs", variant: "outline", colorScheme: "gray", disabled: !hasNextPage || loading, onClick: () => next(), children: _jsx(ChevronRightIcon, { className: "size-5" }) })] })] }))] }));
76
+ }
@@ -0,0 +1,28 @@
1
+ import type { DepositStatus, GameProvider, GameType, TransactionType, WithdrawalStatus } from '@opexa/portal-sdk-core';
2
+ import type { DateRange } from '../../types';
3
+ interface EnabledFilters {
4
+ timestamp?: boolean;
5
+ gameType?: boolean;
6
+ gameProvider?: boolean;
7
+ depositStatus?: boolean;
8
+ withdrawalStatus?: boolean;
9
+ transactionType?: boolean;
10
+ }
11
+ interface Value {
12
+ timestamp?: Partial<DateRange> | null;
13
+ gameType?: GameType | null;
14
+ gameProvider?: GameProvider | null;
15
+ depositStatus?: DepositStatus | null;
16
+ withdrawalStatus?: WithdrawalStatus | null;
17
+ transactionType?: TransactionType | null;
18
+ }
19
+ interface TableFiltersProps {
20
+ value?: Value;
21
+ defaultValue?: Value;
22
+ onChange?: (value: Value) => void;
23
+ enabledFilters?: EnabledFilters;
24
+ gameTypeOptions?: GameType[];
25
+ gameProviderOptions?: GameProvider[];
26
+ }
27
+ export declare function TableFilters(props: TableFiltersProps): import("react/jsx-runtime").JSX.Element;
28
+ export {};