@betorigami/games 2.10.1 → 2.10.2

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 (419) hide show
  1. package/dist/components/advanced-dice/AdvancedDiceContent/AdvancedDiceContent.d.ts +24 -0
  2. package/dist/components/advanced-dice/AdvancedDiceContent/AdvancedDiceContent.styles.d.ts +1 -0
  3. package/dist/components/advanced-dice/AdvancedDiceContentBottom/AdvancedDiceContentBottom.d.ts +55 -0
  4. package/dist/components/advanced-dice/AdvancedDiceContentBottom/AdvancedDiceContentBottom.styles.d.ts +1 -0
  5. package/dist/components/advanced-dice/AdvancedDiceControls/AdvancedDiceAuto.d.ts +15 -0
  6. package/dist/components/advanced-dice/AdvancedDiceControls/AdvancedDiceControls.styles.d.ts +1 -0
  7. package/dist/components/advanced-dice/AdvancedDiceControls/AdvancedDiceManual.d.ts +16 -0
  8. package/dist/components/advanced-dice/AdvancedDiceGame.d.ts +41 -0
  9. package/dist/components/advanced-dice/AdvancedDiceGame.styles.d.ts +1 -0
  10. package/dist/components/advanced-dice/AdvancedDiceSlider/AdvancedDiceSlider.d.ts +30 -0
  11. package/dist/components/advanced-dice/AdvancedDiceSlider/AdvancedDiceSlider.styles.d.ts +1 -0
  12. package/dist/components/advanced-dice/advanced-dice.api.d.ts +14 -0
  13. package/dist/components/advanced-dice/advanced-dice.constants.d.ts +59 -0
  14. package/dist/components/advanced-dice/advanced-dice.mock.api.d.ts +13 -0
  15. package/dist/components/advanced-dice/advanced-dice.types.d.ts +84 -0
  16. package/dist/components/advanced-dice/advanced-dice.utils.d.ts +18 -0
  17. package/dist/components/advanced-dice/strategies/base-roll-type.strategy.d.ts +30 -0
  18. package/dist/components/advanced-dice/strategies/index.d.ts +4 -0
  19. package/dist/components/advanced-dice/strategies/roll-between-two.strategy.d.ts +20 -0
  20. package/dist/components/advanced-dice/strategies/roll-between.strategy.d.ts +12 -0
  21. package/dist/components/advanced-dice/strategies/roll-outside.strategy.d.ts +19 -0
  22. package/dist/components/advanced-dice/strategies/roll-type-strategy.factory.d.ts +3 -0
  23. package/dist/components/baccarat/BaccaratBetButton/BaccaratBetButton.d.ts +11 -0
  24. package/dist/components/baccarat/BaccaratBetButton/BaccaratBetButton.styles.d.ts +1 -0
  25. package/dist/components/baccarat/BaccaratContent/BaccaratContent.d.ts +39 -0
  26. package/dist/components/baccarat/BaccaratContent/BaccaratContent.styles.d.ts +1 -0
  27. package/dist/components/baccarat/BaccaratControls/BaccaratAuto.d.ts +18 -0
  28. package/dist/components/baccarat/BaccaratControls/BaccaratControls.styles.d.ts +1 -0
  29. package/dist/components/baccarat/BaccaratControls/BaccaratManual.d.ts +19 -0
  30. package/dist/components/baccarat/BaccaratDisplay/BaccaratDisplay.d.ts +22 -0
  31. package/dist/components/baccarat/BaccaratDisplay/BaccaratDisplay.styles.d.ts +1 -0
  32. package/dist/components/baccarat/BaccaratGame.d.ts +40 -0
  33. package/dist/components/baccarat/BaccaratGame.styles.d.ts +1 -0
  34. package/dist/components/baccarat/baccarat.api.d.ts +19 -0
  35. package/dist/components/baccarat/baccarat.constants.d.ts +16 -0
  36. package/dist/components/baccarat/baccarat.mock.api.d.ts +8 -0
  37. package/dist/components/baccarat/baccarat.types.d.ts +17 -0
  38. package/dist/components/baccarat/baccarat.utils.d.ts +20 -0
  39. package/dist/components/baccarat/baccarat.utils.test.d.ts +1 -0
  40. package/dist/components/blackjack/BlackjackContent/BlackjackContent.d.ts +49 -0
  41. package/dist/components/blackjack/BlackjackContent/BlackjackContent.styles.d.ts +1 -0
  42. package/dist/components/blackjack/BlackjackControls/BlackjackControls.styles.d.ts +1 -0
  43. package/dist/components/blackjack/BlackjackControls/BlackjackManual.d.ts +26 -0
  44. package/dist/components/blackjack/BlackjackGame.d.ts +87 -0
  45. package/dist/components/blackjack/BlackjackGame.styles.d.ts +1 -0
  46. package/dist/components/blackjack/BlackjackSideBetOnboarding/BlackjackSideBetOnboarding.d.ts +16 -0
  47. package/dist/components/blackjack/BlackjackSideBetOnboarding/BlackjackSideBetOnboarding.styles.d.ts +1 -0
  48. package/dist/components/blackjack/actions/betController.d.ts +20 -0
  49. package/dist/components/blackjack/actions/gameActionHandlers.d.ts +18 -0
  50. package/dist/components/blackjack/blackjack.api.d.ts +37 -0
  51. package/dist/components/blackjack/blackjack.helpers.d.ts +44 -0
  52. package/dist/components/blackjack/blackjack.icons.d.ts +4 -0
  53. package/dist/components/blackjack/blackjack.mock.api.d.ts +19 -0
  54. package/dist/components/blackjack/blackjack.utils.d.ts +18 -0
  55. package/dist/components/blackjack/blackjack.utils.test.d.ts +1 -0
  56. package/dist/components/blackjack/controllers/CardAnimationController.d.ts +36 -0
  57. package/dist/components/blitz/BlitzContent/BlitzCard.d.ts +9 -0
  58. package/dist/components/blitz/BlitzContent/BlitzCard.styles.d.ts +1 -0
  59. package/dist/components/blitz/BlitzContent/BlitzCardContainer.d.ts +19 -0
  60. package/dist/components/blitz/BlitzContent/BlitzCardContainer.styles.d.ts +1 -0
  61. package/dist/components/blitz/BlitzContent/BlitzContent.d.ts +13 -0
  62. package/dist/components/blitz/BlitzContent/BlitzContent.styles.d.ts +1 -0
  63. package/dist/components/blitz/BlitzControls/BlitzAuto.d.ts +23 -0
  64. package/dist/components/blitz/BlitzControls/BlitzControls.styles.d.ts +1 -0
  65. package/dist/components/blitz/BlitzControls/BlitzManual.d.ts +25 -0
  66. package/dist/components/blitz/BlitzControls/BlitzPicksInput.d.ts +15 -0
  67. package/dist/components/blitz/BlitzGame.d.ts +43 -0
  68. package/dist/components/blitz/BlitzGame.styles.d.ts +1 -0
  69. package/dist/components/blitz/blitz.api.d.ts +21 -0
  70. package/dist/components/blitz/blitz.mock.api.d.ts +10 -0
  71. package/dist/components/blitz/blitz.utils.d.ts +45 -0
  72. package/dist/components/diamonds/DiamondsContent/DiamondSlot.d.ts +17 -0
  73. package/dist/components/diamonds/DiamondsContent/DiamondSlot.styles.d.ts +1 -0
  74. package/dist/components/diamonds/DiamondsContent/DiamondsContent.d.ts +28 -0
  75. package/dist/components/diamonds/DiamondsContent/DiamondsContent.styles.d.ts +1 -0
  76. package/dist/components/diamonds/DiamondsContent/DiamondsMultiplierItem.d.ts +12 -0
  77. package/dist/components/diamonds/DiamondsContent/DiamondsMultiplierItem.styles.d.ts +1 -0
  78. package/dist/components/diamonds/DiamondsContent/DiamondsProfitTooltip.d.ts +14 -0
  79. package/dist/components/diamonds/DiamondsContent/DiamondsProfitTooltip.styles.d.ts +1 -0
  80. package/dist/components/diamonds/DiamondsContent/DiamondsSlots.d.ts +13 -0
  81. package/dist/components/diamonds/DiamondsContent/DiamondsSlots.styles.d.ts +1 -0
  82. package/dist/components/diamonds/DiamondsControls/DiamondsAuto.d.ts +11 -0
  83. package/dist/components/diamonds/DiamondsControls/DiamondsControls.styles.d.ts +1 -0
  84. package/dist/components/diamonds/DiamondsControls/DiamondsManual.d.ts +13 -0
  85. package/dist/components/diamonds/DiamondsGame.d.ts +18 -0
  86. package/dist/components/diamonds/DiamondsGame.styles.d.ts +1 -0
  87. package/dist/components/diamonds/diamonds.api.d.ts +11 -0
  88. package/dist/components/diamonds/diamonds.mock.api.d.ts +11 -0
  89. package/dist/components/diamonds/diamonds.utils.d.ts +100 -0
  90. package/dist/components/diamonds/svgs/diamond-gems.d.ts +1 -0
  91. package/dist/components/dice/DiceContent/DiceContent.d.ts +23 -0
  92. package/dist/components/dice/DiceContent/DiceContent.styles.d.ts +1 -0
  93. package/dist/components/dice/DiceContentBottom/DiceContentBottom.d.ts +29 -0
  94. package/dist/components/dice/DiceContentBottom/DiceContentBottom.styles.d.ts +1 -0
  95. package/dist/components/dice/DiceControls/DiceAuto.d.ts +14 -0
  96. package/dist/components/dice/DiceControls/DiceControls.styles.d.ts +1 -0
  97. package/dist/components/dice/DiceControls/DiceManual.d.ts +19 -0
  98. package/dist/components/dice/DiceGame.d.ts +34 -0
  99. package/dist/components/dice/DiceGame.styles.d.ts +1 -0
  100. package/dist/components/dice/DiceSlider/DiceSlider.d.ts +31 -0
  101. package/dist/components/dice/DiceSlider/DiceSlider.styles.d.ts +1 -0
  102. package/dist/components/dice/dice-calculations.d.ts +28 -0
  103. package/dist/components/dice/dice.api.d.ts +18 -0
  104. package/dist/components/dice/dice.mock.api.d.ts +10 -0
  105. package/dist/components/keno/KenoContent/KenoContent.d.ts +20 -0
  106. package/dist/components/keno/KenoContent/KenoContent.styles.d.ts +1 -0
  107. package/dist/components/keno/KenoContentBottom/KenoContentBottom.d.ts +21 -0
  108. package/dist/components/keno/KenoContentBottom/KenoContentBottom.styles.d.ts +1 -0
  109. package/dist/components/keno/KenoControls/KenoAuto.d.ts +16 -0
  110. package/dist/components/keno/KenoControls/KenoControls.styles.d.ts +1 -0
  111. package/dist/components/keno/KenoControls/KenoManual.d.ts +16 -0
  112. package/dist/components/keno/KenoGame.d.ts +52 -0
  113. package/dist/components/keno/KenoGame.styles.d.ts +1 -0
  114. package/dist/components/keno/KenoGrid/KenoGrid.d.ts +18 -0
  115. package/dist/components/keno/KenoGrid/KenoGrid.styles.d.ts +1 -0
  116. package/dist/components/keno/KenoTile/KenoTile.d.ts +19 -0
  117. package/dist/components/keno/KenoTile/KenoTile.styles.d.ts +1 -0
  118. package/dist/components/keno/keno.api.d.ts +24 -0
  119. package/dist/components/keno/keno.mock.api.d.ts +19 -0
  120. package/dist/components/limbo/LimboContent/LimboContent.d.ts +21 -0
  121. package/dist/components/limbo/LimboContent/LimboContent.styles.d.ts +1 -0
  122. package/dist/components/limbo/LimboContentBottom/LimboContentBottom.d.ts +21 -0
  123. package/dist/components/limbo/LimboContentBottom/LimboContentBottom.styles.d.ts +1 -0
  124. package/dist/components/limbo/LimboControls/LimboAuto.d.ts +13 -0
  125. package/dist/components/limbo/LimboControls/LimboControls.styles.d.ts +1 -0
  126. package/dist/components/limbo/LimboControls/LimboManual.d.ts +19 -0
  127. package/dist/components/limbo/LimboGame.d.ts +37 -0
  128. package/dist/components/limbo/LimboGame.styles.d.ts +1 -0
  129. package/dist/components/limbo/Multiplier/LimboMultiplier.d.ts +27 -0
  130. package/dist/components/limbo/Multiplier/LimboMultiplier.styles.d.ts +1 -0
  131. package/dist/components/limbo/limbo.api.d.ts +29 -0
  132. package/dist/components/limbo/limbo.mock.api.d.ts +8 -0
  133. package/dist/components/mines/MinesControls/MinesAuto.d.ts +18 -0
  134. package/dist/components/mines/MinesControls/MinesControls.styles.d.ts +1 -0
  135. package/dist/components/mines/MinesControls/MinesManual.d.ts +32 -0
  136. package/dist/components/mines/MinesGame.d.ts +48 -0
  137. package/dist/components/mines/MinesGame.styles.d.ts +1 -0
  138. package/dist/components/mines/MinesGrid/MinesGrid.d.ts +26 -0
  139. package/dist/components/mines/MinesGrid/MinesGrid.styles.d.ts +1 -0
  140. package/dist/components/mines/MinesTile/MinesTile.d.ts +49 -0
  141. package/dist/components/mines/MinesTile/MinesTile.styles.d.ts +1 -0
  142. package/dist/components/mines/mines.api.d.ts +66 -0
  143. package/dist/components/mines/mines.constants.d.ts +27 -0
  144. package/dist/components/mines/mines.mock.api.d.ts +22 -0
  145. package/dist/components/plinko/PlinkoContent/PlinkoBin/PlinkoBin.d.ts +13 -0
  146. package/dist/components/plinko/PlinkoContent/PlinkoBin/PlinkoBin.styles.d.ts +1 -0
  147. package/dist/components/plinko/PlinkoContent/PlinkoBins/PlinkoBins.d.ts +10 -0
  148. package/dist/components/plinko/PlinkoContent/PlinkoBins/PlinkoBins.styles.d.ts +1 -0
  149. package/dist/components/plinko/PlinkoContent/PlinkoContent.d.ts +67 -0
  150. package/dist/components/plinko/PlinkoContent/PlinkoContent.styles.d.ts +1 -0
  151. package/dist/components/plinko/PlinkoControls/PlinkoAuto.d.ts +14 -0
  152. package/dist/components/plinko/PlinkoControls/PlinkoControls.styles.d.ts +1 -0
  153. package/dist/components/plinko/PlinkoControls/PlinkoManual.d.ts +16 -0
  154. package/dist/components/plinko/PlinkoEngine.d.ts +164 -0
  155. package/dist/components/plinko/PlinkoGame.d.ts +47 -0
  156. package/dist/components/plinko/PlinkoGame.styles.d.ts +1 -0
  157. package/dist/components/plinko/PlinkoRowsSelect/PlinkoRiskSelect.d.ts +10 -0
  158. package/dist/components/plinko/PlinkoRowsSelect/PlinkoRiskSelect.styles.d.ts +1 -0
  159. package/dist/components/plinko/PlinkoRowsSelect/PlinkoRowsSelect.d.ts +10 -0
  160. package/dist/components/plinko/PlinkoRowsSlider/PlinkoRowsSlider.d.ts +12 -0
  161. package/dist/components/plinko/PlinkoRowsSlider/PlinkoRowsSlider.styles.d.ts +1 -0
  162. package/dist/components/plinko/plinko-content.utils.d.ts +77 -0
  163. package/dist/components/plinko/plinko.api.d.ts +14 -0
  164. package/dist/components/plinko/plinko.constants.d.ts +47 -0
  165. package/dist/components/plinko/plinko.mock.api.d.ts +11 -0
  166. package/dist/components/plinko/plinko.utils.d.ts +20 -0
  167. package/dist/components/roulette/RouletteAnimator/RouletteAnimator.d.ts +42 -0
  168. package/dist/components/roulette/RouletteAnimator/RouletteAnimator.styles.d.ts +1 -0
  169. package/dist/components/roulette/RouletteContent/RouletteContent.d.ts +34 -0
  170. package/dist/components/roulette/RouletteContent/RouletteContent.styles.d.ts +1 -0
  171. package/dist/components/roulette/RouletteControls/RouletteAuto.d.ts +19 -0
  172. package/dist/components/roulette/RouletteControls/RouletteControls.styles.d.ts +1 -0
  173. package/dist/components/roulette/RouletteControls/RouletteManual.d.ts +17 -0
  174. package/dist/components/roulette/RouletteGame.d.ts +37 -0
  175. package/dist/components/roulette/RouletteGame.styles.d.ts +1 -0
  176. package/dist/components/roulette/RouletteGrid/RouletteGrid.d.ts +21 -0
  177. package/dist/components/roulette/RouletteGrid/RouletteGrid.styles.d.ts +1 -0
  178. package/dist/components/roulette/RouletteTop/RouletteTop.d.ts +18 -0
  179. package/dist/components/roulette/RouletteTop/RouletteTop.styles.d.ts +1 -0
  180. package/dist/components/roulette/assets/index.d.ts +2 -0
  181. package/dist/components/roulette/roulette.api.d.ts +16 -0
  182. package/dist/components/roulette/roulette.constants.d.ts +57 -0
  183. package/dist/components/roulette/roulette.mock.api.d.ts +10 -0
  184. package/dist/components/roulette/roulette.positions.d.ts +58 -0
  185. package/dist/components/roulette/roulette.transformer.d.ts +4 -0
  186. package/dist/components/roulette/roulette.utils.d.ts +24 -0
  187. package/dist/components/shared/Alert/Alert.d.ts +27 -0
  188. package/dist/components/shared/Alert/Alert.styles.d.ts +1 -0
  189. package/dist/components/shared/AlertManager/AlertManager.d.ts +28 -0
  190. package/dist/components/shared/AlertManager/AlertManager.styles.d.ts +1 -0
  191. package/dist/components/shared/BetDetailsComponent/BetDetailsComponent.d.ts +21 -0
  192. package/dist/components/shared/BetDetailsComponent/BetDetailsComponent.styles.d.ts +1 -0
  193. package/dist/components/shared/BetResultModal/BetResultDataExtractor.d.ts +75 -0
  194. package/dist/components/shared/BetResultModal/BetResultModal.d.ts +31 -0
  195. package/dist/components/shared/BetResultModal/BetResultModal.styles.d.ts +1 -0
  196. package/dist/components/shared/Button/Button.d.ts +26 -0
  197. package/dist/components/shared/Button/Button.styles.d.ts +1 -0
  198. package/dist/components/shared/Button/ButtonGroup.d.ts +5 -0
  199. package/dist/components/shared/Button/ButtonGroup.styles.d.ts +1 -0
  200. package/dist/components/shared/ChipStack/ChipStack.d.ts +10 -0
  201. package/dist/components/shared/ChipStack/ChipStack.styles.d.ts +1 -0
  202. package/dist/components/shared/ChipTableGameComponent.d.ts +43 -0
  203. package/dist/components/shared/DepositButton/DepositButton.d.ts +9 -0
  204. package/dist/components/shared/Drawer/Drawer.d.ts +45 -0
  205. package/dist/components/shared/Drawer/Drawer.styles.d.ts +1 -0
  206. package/dist/components/shared/FairnessDetails/FairnessContent.d.ts +47 -0
  207. package/dist/components/shared/FairnessDetails/FairnessContent.styles.d.ts +1 -0
  208. package/dist/components/shared/FairnessDetails/FairnessDetails.d.ts +14 -0
  209. package/dist/components/shared/FairnessDetails/HistoryTable.d.ts +28 -0
  210. package/dist/components/shared/FairnessDetails/HistoryTable.styles.d.ts +1 -0
  211. package/dist/components/shared/Footer/Footer.d.ts +20 -0
  212. package/dist/components/shared/Footer/Footer.styles.d.ts +1 -0
  213. package/dist/components/shared/GameComponent.d.ts +77 -0
  214. package/dist/components/shared/GameInfo/GameInfoModal.d.ts +16 -0
  215. package/dist/components/shared/GameInfo/GameInfoModal.styles.d.ts +1 -0
  216. package/dist/components/shared/GameInfo/gameInfoConfig.d.ts +27 -0
  217. package/dist/components/shared/GameLayout/GameLayout.d.ts +51 -0
  218. package/dist/components/shared/GameLayout/GameLayout.styles.d.ts +1 -0
  219. package/dist/components/shared/GameOutcomeDisplay/GameOutcomeDisplay.d.ts +113 -0
  220. package/dist/components/shared/GameOutcomeDisplay/GameOutcomeDisplay.styles.d.ts +1 -0
  221. package/dist/components/shared/GameProviderWrapper.d.ts +106 -0
  222. package/dist/components/shared/GameProviderWrapper.styles.d.ts +1 -0
  223. package/dist/components/shared/GameSidebar/GameSidebar.d.ts +16 -0
  224. package/dist/components/shared/GameSidebar/GameSidebar.styles.d.ts +1 -0
  225. package/dist/components/shared/GameWinPopup/GameWinPopup.d.ts +27 -0
  226. package/dist/components/shared/GameWinPopup/GameWinPopup.styles.d.ts +1 -0
  227. package/dist/components/shared/GenericAutobet/BetCountInput.d.ts +12 -0
  228. package/dist/components/shared/GenericAutobet/GenericAutobet.d.ts +52 -0
  229. package/dist/components/shared/GenericAutobet/GenericAutobet.styles.d.ts +1 -0
  230. package/dist/components/shared/GenericAutobet/context/autobet.context.d.ts +13 -0
  231. package/dist/components/shared/HistoryPills/HistoryPills.d.ts +27 -0
  232. package/dist/components/shared/HistoryPills/HistoryPills.styles.d.ts +1 -0
  233. package/dist/components/shared/HotkeysModal/HotKeysModal.styles.d.ts +1 -0
  234. package/dist/components/shared/HotkeysModal/HotkeysModal.d.ts +10 -0
  235. package/dist/components/shared/Inputs/BetAmountInput/BetAmountInput.d.ts +44 -0
  236. package/dist/components/shared/Inputs/ChipInput/ChipInput.d.ts +19 -0
  237. package/dist/components/shared/Inputs/ChipInput/ChipInput.styles.d.ts +1 -0
  238. package/dist/components/shared/Inputs/ChipInput/chip-input.constants.d.ts +4 -0
  239. package/dist/components/shared/Inputs/CurrencyInput/RawCurrencyInput.d.ts +36 -0
  240. package/dist/components/shared/Inputs/CurrencyInput/RawCurrencyInput.styles.d.ts +1 -0
  241. package/dist/components/shared/Inputs/Input/Input.d.ts +74 -0
  242. package/dist/components/shared/Inputs/Input/Input.styles.d.ts +1 -0
  243. package/dist/components/shared/LottieIcon/LottieIcon.d.ts +24 -0
  244. package/dist/components/shared/Modal/Modal.d.ts +29 -0
  245. package/dist/components/shared/Modal/Modal.styles.d.ts +1 -0
  246. package/dist/components/shared/Modal/Portal.d.ts +13 -0
  247. package/dist/components/shared/ResponsiveModal/ResponsiveModal.d.ts +17 -0
  248. package/dist/components/shared/ResponsiveModal/ResponsiveModal.styles.d.ts +1 -0
  249. package/dist/components/shared/Select/Select.d.ts +34 -0
  250. package/dist/components/shared/Select/Select.styles.d.ts +1 -0
  251. package/dist/components/shared/Spinner/Spinner.d.ts +5 -0
  252. package/dist/components/shared/Spinner/Spinner.styles.d.ts +1 -0
  253. package/dist/components/shared/Switch/Switch.d.ts +11 -0
  254. package/dist/components/shared/Switch/Switch.styles.d.ts +1 -0
  255. package/dist/components/shared/Toggle/Toggle.d.ts +15 -0
  256. package/dist/components/shared/Toggle/Toggle.styles.d.ts +1 -0
  257. package/dist/components/shared/Tooltip/Tooltip.d.ts +56 -0
  258. package/dist/components/shared/Tooltip/Tooltip.styles.d.ts +1 -0
  259. package/dist/components/shared/context/game.context.d.ts +90 -0
  260. package/dist/components/shared/types/chip.types.d.ts +10 -0
  261. package/dist/components/wheel/WheelAnimator/WheelAnimator.d.ts +31 -0
  262. package/dist/components/wheel/WheelAnimator/WheelAnimator.styles.d.ts +1 -0
  263. package/dist/components/wheel/WheelContentBottom/WheelContentBottom.d.ts +24 -0
  264. package/dist/components/wheel/WheelContentBottom/WheelContentBottom.styles.d.ts +1 -0
  265. package/dist/components/wheel/WheelControls/WheelAuto.d.ts +16 -0
  266. package/dist/components/wheel/WheelControls/WheelControls.styles.d.ts +1 -0
  267. package/dist/components/wheel/WheelControls/WheelManual.d.ts +16 -0
  268. package/dist/components/wheel/WheelGame.d.ts +26 -0
  269. package/dist/components/wheel/WheelGame.styles.d.ts +1 -0
  270. package/dist/components/wheel/WheelLayout/WheelLayout.d.ts +19 -0
  271. package/dist/components/wheel/WheelLayout/WheelLayout.styles.d.ts +1 -0
  272. package/dist/components/wheel/WheelSvg/WheelSvg.d.ts +12 -0
  273. package/dist/components/wheel/WheelSvg/WheelSvg.styles.d.ts +1 -0
  274. package/dist/components/wheel/wheel.api.d.ts +11 -0
  275. package/dist/components/wheel/wheel.constants.d.ts +25 -0
  276. package/dist/components/wheel/wheel.mock.api.d.ts +10 -0
  277. package/dist/components/wheel/wheel.multipliers.d.ts +11 -0
  278. package/dist/components/wheel/wheel.patterns.d.ts +3 -0
  279. package/dist/components/wheel/wheel.utils.d.ts +41 -0
  280. package/dist/controllers/bet-result-cache.controller.d.ts +14 -0
  281. package/dist/controllers/haptics.controller.d.ts +17 -0
  282. package/dist/controllers/history.controller.d.ts +56 -0
  283. package/dist/controllers/hotkey.controller.d.ts +30 -0
  284. package/dist/controllers/sound/sound-definitions.d.ts +24 -0
  285. package/dist/controllers/sound/sound-effects.controller.d.ts +18 -0
  286. package/dist/controllers/sound/sound-layer.types.d.ts +45 -0
  287. package/dist/index.d.ts +17 -8345
  288. package/dist/index.mjs +21068 -2189
  289. package/dist/limbo-multiplier-bg.svg +1 -0
  290. package/dist/shared/animation.styles.d.ts +1 -0
  291. package/dist/shared/async-throttle-queue.d.ts +51 -0
  292. package/dist/shared/async-throttle-queue.test.d.ts +1 -0
  293. package/dist/shared/autobet-pacing.d.ts +4 -0
  294. package/dist/shared/bet.types.d.ts +196 -0
  295. package/dist/shared/button-feedback.d.ts +13 -0
  296. package/dist/shared/calculations/games/dice.d.ts +1 -0
  297. package/dist/shared/calculations/games/keno.d.ts +25 -0
  298. package/dist/shared/calculations/games/mines.d.ts +7 -0
  299. package/dist/shared/calculations/utils/big-validation.d.ts +71 -0
  300. package/dist/shared/calculations/utils/bignumber-max.d.ts +2 -0
  301. package/dist/shared/calculations/utils/bignumber-min.d.ts +7 -0
  302. package/dist/shared/calculations/utils/factorial.d.ts +2 -0
  303. package/dist/shared/calculations/utils/hex-to-bytes.d.ts +1 -0
  304. package/dist/shared/calculations/utils/ncr.d.ts +2 -0
  305. package/dist/shared/cards/Card.d.ts +30 -0
  306. package/dist/shared/cards/Card.styles.d.ts +1 -0
  307. package/dist/shared/cards/CardStack.d.ts +6 -0
  308. package/dist/shared/cards/CardStack.styles.d.ts +1 -0
  309. package/dist/shared/cards/card.constants.d.ts +11 -0
  310. package/dist/shared/cards/card.types.d.ts +10 -0
  311. package/dist/shared/cards/card.utils.d.ts +5 -0
  312. package/dist/shared/chip-state.utils.d.ts +125 -0
  313. package/dist/shared/chip-state.utils.test.d.ts +1 -0
  314. package/dist/shared/component.styles.d.ts +1 -0
  315. package/dist/shared/constants.d.ts +60 -0
  316. package/dist/shared/create-api-factory.d.ts +10 -0
  317. package/dist/shared/event-map.d.ts +342 -0
  318. package/dist/shared/format-monetary-amount.d.ts +4 -0
  319. package/dist/shared/format-win-chance.d.ts +1 -0
  320. package/dist/shared/format-win-chance.test.d.ts +1 -0
  321. package/dist/shared/get-correlation-id.d.ts +5 -0
  322. package/dist/shared/get-currency-details.d.ts +12 -0
  323. package/dist/shared/get-currency-details.test.d.ts +1 -0
  324. package/dist/shared/get-currency-precision.d.ts +2 -0
  325. package/dist/shared/get-currency-precision.test.d.ts +1 -0
  326. package/dist/shared/get-currency-symbol-position.d.ts +4 -0
  327. package/dist/shared/get-currency-symbol-position.test.d.ts +1 -0
  328. package/dist/shared/get-currency-symbol.d.ts +2 -0
  329. package/dist/shared/get-currency-symbol.test.d.ts +1 -0
  330. package/dist/shared/get-game-outcome.d.ts +1 -0
  331. package/dist/shared/hotkey-helper.d.ts +14 -0
  332. package/dist/shared/icons/currencies/arsIcon.d.ts +1 -0
  333. package/dist/shared/icons/currencies/audIcon.d.ts +1 -0
  334. package/dist/shared/icons/currencies/brlIcon.d.ts +1 -0
  335. package/dist/shared/icons/currencies/cadIcon.d.ts +1 -0
  336. package/dist/shared/icons/currencies/chfIcon.d.ts +1 -0
  337. package/dist/shared/icons/currencies/clpIcon.d.ts +1 -0
  338. package/dist/shared/icons/currencies/cnyIcon.d.ts +1 -0
  339. package/dist/shared/icons/currencies/czkIcon.d.ts +1 -0
  340. package/dist/shared/icons/currencies/dopIcon.d.ts +1 -0
  341. package/dist/shared/icons/currencies/eurIcon.d.ts +1 -0
  342. package/dist/shared/icons/currencies/gbpIcon.d.ts +1 -0
  343. package/dist/shared/icons/currencies/gcIcon.d.ts +1 -0
  344. package/dist/shared/icons/currencies/gtqIcon.d.ts +1 -0
  345. package/dist/shared/icons/currencies/hnlIcon.d.ts +1 -0
  346. package/dist/shared/icons/currencies/hufIcon.d.ts +1 -0
  347. package/dist/shared/icons/currencies/idrIcon.d.ts +1 -0
  348. package/dist/shared/icons/currencies/inrIcon.d.ts +1 -0
  349. package/dist/shared/icons/currencies/jpyIcon.d.ts +1 -0
  350. package/dist/shared/icons/currencies/krwIcon.d.ts +1 -0
  351. package/dist/shared/icons/currencies/kztIcon.d.ts +1 -0
  352. package/dist/shared/icons/currencies/mxnIcon.d.ts +1 -0
  353. package/dist/shared/icons/currencies/myrIcon.d.ts +1 -0
  354. package/dist/shared/icons/currencies/ngnIcon.d.ts +1 -0
  355. package/dist/shared/icons/currencies/nokIcon.d.ts +1 -0
  356. package/dist/shared/icons/currencies/nzdIcon.d.ts +1 -0
  357. package/dist/shared/icons/currencies/penIcon.d.ts +1 -0
  358. package/dist/shared/icons/currencies/phpIcon.d.ts +1 -0
  359. package/dist/shared/icons/currencies/ronIcon.d.ts +1 -0
  360. package/dist/shared/icons/currencies/rubIcon.d.ts +1 -0
  361. package/dist/shared/icons/currencies/scIcon.d.ts +1 -0
  362. package/dist/shared/icons/currencies/thbIcon.d.ts +1 -0
  363. package/dist/shared/icons/currencies/tryIcon.d.ts +1 -0
  364. package/dist/shared/icons/currencies/uahIcon.d.ts +1 -0
  365. package/dist/shared/icons/currencies/usdIcon.d.ts +1 -0
  366. package/dist/shared/icons/currencies/uzsIcon.d.ts +1 -0
  367. package/dist/shared/icons/currencies/vndIcon.d.ts +1 -0
  368. package/dist/shared/icons/currencies/zarIcon.d.ts +1 -0
  369. package/dist/shared/icons/get-currency-icon.d.ts +2 -0
  370. package/dist/shared/icons/get-currency-icon.test.d.ts +1 -0
  371. package/dist/shared/icons/index.d.ts +1 -0
  372. package/dist/shared/icons/kenoGemIcon.d.ts +1 -0
  373. package/dist/shared/icons/minesBombIcon.d.ts +1 -0
  374. package/dist/shared/icons/minesGemIcon.d.ts +1 -0
  375. package/dist/shared/mock-bridged-game-service.d.ts +42 -0
  376. package/dist/shared/mock-rng-generator.d.ts +3 -0
  377. package/dist/shared/origami-action.type.d.ts +7 -0
  378. package/dist/shared/origami-element.d.ts +21 -0
  379. package/dist/shared/primary-input.d.ts +2 -0
  380. package/dist/shared/provably-fair-verifier.d.ts +28 -0
  381. package/dist/shared/provider-api/bet-result.d.ts +18 -0
  382. package/dist/shared/provider-api/error-codes.d.ts +8 -0
  383. package/dist/shared/sleep.d.ts +1 -0
  384. package/dist/shared/utils/format-autobet-settings.d.ts +5 -0
  385. package/dist/shared/utils/prevent-non-numeric-input.d.ts +4 -0
  386. package/dist/shared/wait-for-event.d.ts +1 -0
  387. package/dist/shared/watch.d.ts +26 -0
  388. package/dist/translations/ar.json.d.ts +405 -0
  389. package/dist/translations/de.json.d.ts +405 -0
  390. package/dist/translations/dynamic-loader.d.ts +15 -0
  391. package/dist/translations/en-soc.json.d.ts +405 -0
  392. package/dist/translations/en.json.d.ts +406 -0
  393. package/dist/translations/es.json.d.ts +405 -0
  394. package/dist/translations/fi.json.d.ts +405 -0
  395. package/dist/translations/fr.json.d.ts +405 -0
  396. package/dist/translations/hi.json.d.ts +405 -0
  397. package/dist/translations/id.json.d.ts +405 -0
  398. package/dist/translations/index.d.ts +6854 -0
  399. package/dist/translations/ja.json.d.ts +405 -0
  400. package/dist/translations/ko.json.d.ts +405 -0
  401. package/dist/translations/language.context.d.ts +9 -0
  402. package/dist/translations/pl.json.d.ts +405 -0
  403. package/dist/translations/pt.json.d.ts +405 -0
  404. package/dist/translations/ru.json.d.ts +405 -0
  405. package/dist/translations/tr.json.d.ts +405 -0
  406. package/dist/translations/utils.d.ts +22 -0
  407. package/dist/translations/vi.json.d.ts +405 -0
  408. package/dist/translations/zh.json.d.ts +405 -0
  409. package/dist/utils/active-elements.d.ts +15 -0
  410. package/dist/utils/animate.d.ts +22 -0
  411. package/dist/utils/animation-registry.d.ts +24 -0
  412. package/dist/utils/blur-active-element.d.ts +7 -0
  413. package/dist/utils/event.d.ts +2 -0
  414. package/dist/utils/focus-trap.d.ts +24 -0
  415. package/dist/utils/game-layout-style.d.ts +9 -0
  416. package/dist/utils/scroll.d.ts +22 -0
  417. package/dist/utils/slot.controller.d.ts +23 -0
  418. package/dist/utils/tabbable.d.ts +9 -0
  419. package/package.json +18 -15
@@ -0,0 +1,49 @@
1
+ import { PropertyValues } from 'lit';
2
+ import { HapticsController } from '../../../controllers/haptics.controller';
3
+ import { SoundEffectsController } from '../../../controllers/sound/sound-effects.controller';
4
+ import { default as OrigamiElement } from '../../../shared/origami-element';
5
+ export declare enum MinesTileState {
6
+ NORMAL = "NORMAL",
7
+ AUTOBET_SELECTED = "AUTOBET_SELECTED",
8
+ SELECTED_GEM = "SELECTED_GEM",
9
+ UNSELECTED_GEM = "UNSELECTED_GEM",
10
+ SELECTED_BOMB = "SELECTED_BOMB",
11
+ UNSELECTED_BOMB = "UNSELECTED_BOMB",
12
+ AUTOBET_SELECTED_GEM = "AUTOBET_SELECTED_GEM",
13
+ AUTOBET_SELECTED_BOMB = "AUTOBET_SELECTED_BOMB"
14
+ }
15
+ export declare class MinesTile extends OrigamiElement {
16
+ static styles: import('lit').CSSResult[];
17
+ tileId: number;
18
+ delayReveal: boolean;
19
+ isAutoMode: boolean;
20
+ state: MinesTileState;
21
+ ariaLabel: string;
22
+ isLoading: boolean;
23
+ disabled: boolean;
24
+ language: import('../../..').Language;
25
+ soundEffects?: SoundEffectsController;
26
+ haptics?: HapticsController;
27
+ tileSvgUrl: string | null;
28
+ autobetSelectedTileSvgUrl: string | null;
29
+ gemSvgUrl: string | null;
30
+ bombSvgUrl: string | null;
31
+ private bombGifVersion;
32
+ private bombGifActive;
33
+ private bombGifTimeout;
34
+ protected willUpdate(changedProperties: PropertyValues<this>): void;
35
+ private get _isRevealed();
36
+ private get _isMine();
37
+ private get _isGem();
38
+ private get _isDisabled();
39
+ private get _isSelected();
40
+ private get _shouldShowBombFg();
41
+ private get _shouldShowBombBg();
42
+ private _isSelectedBombState;
43
+ private get _currentTileSvgUrl();
44
+ private _activateBombGif;
45
+ disconnectedCallback(): void;
46
+ private _handlePointerDown;
47
+ private _handleClick;
48
+ render(): import('lit').TemplateResult<1>;
49
+ }
@@ -0,0 +1 @@
1
+ export declare const minesTileStyles: import('lit').CSSResult;
@@ -0,0 +1,66 @@
1
+ import { default as Big } from 'big.js';
2
+ import { Action, BaseStartArgs } from '../../shared/bet.types';
3
+ import { ErrorBetResult, SettledBetFields } from '../../shared/provider-api/bet-result';
4
+ import { MinesState } from './mines.constants';
5
+ export type MinesManualStartArgs = {
6
+ amount: string;
7
+ minesCount: number;
8
+ };
9
+ export type MinesNextArgs = {
10
+ betId?: string;
11
+ selectedTiles: number[];
12
+ };
13
+ export interface MinesAutoArgs extends BaseStartArgs {
14
+ minesCount: number;
15
+ selectedTiles: number[];
16
+ }
17
+ type MinesApiBetBase = {
18
+ readonly id: string;
19
+ readonly amount: Big;
20
+ readonly state: MinesState;
21
+ };
22
+ export type MinesActiveBet = MinesApiBetBase & {
23
+ readonly settled: false;
24
+ };
25
+ export type MinesStartedBet = MinesApiBetBase & {
26
+ readonly settled: false;
27
+ readonly afterBalance: Big;
28
+ };
29
+ export type MinesSettledBet = MinesApiBetBase & SettledBetFields & {
30
+ readonly settled: true;
31
+ };
32
+ export type MinesApiBet = MinesActiveBet | MinesStartedBet | MinesSettledBet;
33
+ export type MinesStartResult = ({
34
+ readonly success: true;
35
+ } & MinesStartedBet) | ErrorBetResult;
36
+ export type MinesSelectTileResult = ({
37
+ readonly success: true;
38
+ } & (MinesActiveBet | MinesSettledBet)) | ErrorBetResult;
39
+ export type MinesSettledResult = ({
40
+ readonly success: true;
41
+ } & MinesSettledBet) | ErrorBetResult;
42
+ export type MinesActiveBetResult = {
43
+ readonly success: true;
44
+ readonly data: MinesActiveBet | null;
45
+ } | ErrorBetResult;
46
+ export interface IMinesApi {
47
+ getActiveBet(): Promise<MinesActiveBetResult>;
48
+ startManualBet(data: MinesManualStartArgs): Promise<MinesStartResult>;
49
+ selectTile(data: MinesNextArgs): Promise<MinesSelectTileResult>;
50
+ cashout(): Promise<MinesSettledResult>;
51
+ autobetPlay(data: MinesAutoArgs): Promise<MinesSettledResult>;
52
+ }
53
+ export declare class MinesApi implements IMinesApi {
54
+ private readonly authToken;
55
+ private readonly baseUrl;
56
+ constructor(authToken: string, baseUrl: string);
57
+ startManualBet(data: MinesManualStartArgs): Promise<MinesStartResult>;
58
+ getActiveBet(): Promise<MinesActiveBetResult>;
59
+ selectTile(data: MinesNextArgs): Promise<MinesSelectTileResult>;
60
+ cashout(): Promise<MinesSettledResult>;
61
+ autobetPlay(data: MinesAutoArgs): Promise<MinesSettledResult>;
62
+ static deriveSelectedTiles(betActions: Action[]): number[];
63
+ static deriveMineLocations(betActions: Action[]): number[];
64
+ static calculateMinesMultiplier(gemsFound: number, mines: number, edge: number): Big;
65
+ }
66
+ export {};
@@ -0,0 +1,27 @@
1
+ import { default as Big } from 'big.js';
2
+ export declare enum MinesGameOutcome {
3
+ WIN = "WIN",
4
+ LOSS = "LOSS"
5
+ }
6
+ export declare enum MinesFlowState {
7
+ GAME_IN_PROGRESS = "GAME_IN_PROGRESS",
8
+ VIEWING_RESULTS = "VIEWING_RESULTS"
9
+ }
10
+ export interface MinesState {
11
+ selectedTiles: number[];
12
+ mineLocations: number[];
13
+ outcome: MinesGameOutcome | null;
14
+ minesCount: number;
15
+ numMinesRemaining: number;
16
+ numGemsFound: number;
17
+ numGemsRemaining: number;
18
+ state: MinesFlowState;
19
+ betAmount: Big;
20
+ }
21
+ export declare const MINES_TILES_COUNT = 25;
22
+ export declare const MINES_MAX_MINES = 24;
23
+ export declare const MINES_DEFAULT_COUNT = 3;
24
+ export declare const minesCountOptions: {
25
+ value: string;
26
+ label: string;
27
+ }[];
@@ -0,0 +1,22 @@
1
+ import { IMinesApi, MinesActiveBetResult, MinesAutoArgs, MinesManualStartArgs, MinesNextArgs, MinesSelectTileResult, MinesSettledResult, MinesStartResult } from './mines.api';
2
+ export declare class MockMinesApi implements IMinesApi {
3
+ private readonly getEdge;
4
+ private readonly getBalance;
5
+ private activeBet;
6
+ private minePositions;
7
+ constructor(getEdge: () => number, getBalance: () => number);
8
+ startManualBet(data: MinesManualStartArgs): Promise<MinesStartResult>;
9
+ getActiveBet(): Promise<MinesActiveBetResult>;
10
+ selectTile(data: MinesNextArgs): Promise<MinesSelectTileResult>;
11
+ cashout(): Promise<MinesSettledResult>;
12
+ autobetPlay(data: MinesAutoArgs): Promise<MinesSettledResult>;
13
+ private isValidBetAmount;
14
+ private clearActiveBet;
15
+ private static createState;
16
+ private getNextSelectedTiles;
17
+ private getSettlement;
18
+ private static error;
19
+ private static generateMinePositions;
20
+ private static isValidMinesCount;
21
+ private static isValidTile;
22
+ }
@@ -0,0 +1,13 @@
1
+ import { default as OrigamiElement } from '../../../../shared/origami-element';
2
+ export declare class PlinkoBin extends OrigamiElement {
3
+ static styles: import('lit').CSSResult[];
4
+ multiplier: number;
5
+ bounceCount: number;
6
+ backgroundColor: string;
7
+ shadowColor: string;
8
+ private binEl;
9
+ private animation?;
10
+ updated(changedProperties: Map<PropertyKey, unknown>): void;
11
+ private startBounceAnimation;
12
+ render(): import('lit').TemplateResult<1>;
13
+ }
@@ -0,0 +1 @@
1
+ export declare const plinkoBinStyles: import('lit').CSSResult;
@@ -0,0 +1,10 @@
1
+ import { nothing } from 'lit';
2
+ import { default as OrigamiElement } from '../../../../shared/origami-element';
3
+ import { BinsLayout } from '../../plinko-content.utils';
4
+ export declare class PlinkoBins extends OrigamiElement {
5
+ static styles: import('lit').CSSResult[];
6
+ binsLayout?: BinsLayout;
7
+ bounceCounts: Map<number, number>;
8
+ binRadius: number;
9
+ render(): typeof nothing | import('lit').TemplateResult<1>;
10
+ }
@@ -0,0 +1 @@
1
+ export declare const plinkoBinsStyles: import('lit').CSSResult;
@@ -0,0 +1,67 @@
1
+ import { default as OrigamiElement } from '../../../shared/origami-element';
2
+ import { SupportedEdgePercentages } from '../../../shared/constants';
3
+ import { PlinkoRiskLevel, PlinkoRowCount } from '../plinko.constants';
4
+ export declare class PlinkoContent extends OrigamiElement {
5
+ static styles: import('lit').CSSResult[];
6
+ isDesktop: boolean;
7
+ isPlaying: boolean;
8
+ history: Array<{
9
+ multiplier: number;
10
+ won: boolean;
11
+ id: string;
12
+ color?: string;
13
+ }>;
14
+ rowCount: PlinkoRowCount;
15
+ riskLevel: PlinkoRiskLevel;
16
+ edge: SupportedEdgePercentages;
17
+ customPlinkoEdgeColor: string | null;
18
+ customPlinkoCenterColor: string | null;
19
+ private ballsInFlight;
20
+ private containerWidth;
21
+ private canvasWrapRef;
22
+ private svgRef;
23
+ private ballsSvgRef;
24
+ private effectsSvgRef;
25
+ private engine?;
26
+ private resizeObserver?;
27
+ private bounceCounts;
28
+ private spawnMap;
29
+ private reduceMotion;
30
+ private activeBets;
31
+ private pulses;
32
+ private pulsePool;
33
+ private engineAnimationId?;
34
+ private pulseAnimationId?;
35
+ firstUpdated(): void;
36
+ updateRowCount(): void;
37
+ updateBallsInFlight(): void;
38
+ disconnectedCallback(): void;
39
+ /**
40
+ * Adds a new pulse effect at the given position
41
+ */
42
+ private addPulse;
43
+ /**
44
+ * Starts the pulse animation loop
45
+ */
46
+ private startPulseAnimation;
47
+ private setupResizeObserver;
48
+ private startUpdateEngineLoop;
49
+ /**
50
+ * Renders all active pulses and removes expired ones
51
+ */
52
+ private renderPulses;
53
+ /**
54
+ * Drops a ball from a predetermined position to hit a specific bin.
55
+ * @param binIndex Which bin this ball should land in
56
+ * @param betId Unique identifier for this bet (required)
57
+ */
58
+ dropBallForResult(binIndex: number, betId: string): void;
59
+ /**
60
+ * Triggers an instant result without ball animation (for reduced motion or fast mode)
61
+ * @param multiplier The multiplier result
62
+ * @param betId Unique identifier for this bet (required)
63
+ */
64
+ triggerInstantResult(edge: SupportedEdgePercentages, multiplier: number, betId: string): void;
65
+ private triggerBinBounce;
66
+ render(): import('lit').TemplateResult<1>;
67
+ }
@@ -0,0 +1 @@
1
+ export declare const plinkoContentStyles: import('lit').CSSResult;
@@ -0,0 +1,14 @@
1
+ import { default as OrigamiElement } from '../../../shared/origami-element';
2
+ import { PlinkoRiskLevel, PlinkoRowCount } from '../plinko.constants';
3
+ export declare class PlinkoAuto extends OrigamiElement {
4
+ static styles: import('lit').CSSResult[];
5
+ inputsDisabled: boolean;
6
+ autobetStopping: boolean;
7
+ readonly autobetInProgress = false;
8
+ betDisabled: boolean;
9
+ isDesktop: boolean;
10
+ rowCount: PlinkoRowCount;
11
+ riskLevel: PlinkoRiskLevel;
12
+ betMaxMultiplier: number;
13
+ render(): import('lit').TemplateResult<1>;
14
+ }
@@ -0,0 +1 @@
1
+ export declare const plinkoControlsStyles: import('lit').CSSResult;
@@ -0,0 +1,16 @@
1
+ import { default as OrigamiElement } from '../../../shared/origami-element';
2
+ import { gameContextType } from '../../shared/context/game.context';
3
+ import { PlinkoRiskLevel, PlinkoRowCount } from '../plinko.constants';
4
+ export declare class PlinkoManual extends OrigamiElement {
5
+ isPlaying: boolean;
6
+ betDisabled: boolean;
7
+ inputsDisabled: boolean;
8
+ rowCount: PlinkoRowCount;
9
+ riskLevel: PlinkoRiskLevel;
10
+ betMaxMultiplier: number;
11
+ gameData: gameContextType;
12
+ private isBetAmountValid;
13
+ private _betAboveBalance;
14
+ static styles: import('lit').CSSResult[];
15
+ render(): import('lit').TemplateResult<1>;
16
+ }
@@ -0,0 +1,164 @@
1
+ import { PlinkoRowCount } from './plinko.constants';
2
+ /**
3
+ * Raw physics event callbacks - no game logic, just physics data
4
+ * The UI layer handles game logic (multipliers, visual effects)
5
+ */
6
+ export type PlinkoEngineEvents = {
7
+ onBallPositions?: (balls: Array<{
8
+ betId: string;
9
+ x: number;
10
+ y: number;
11
+ r: number;
12
+ }>) => void;
13
+ onBallHitPin?: (args: {
14
+ betId: string;
15
+ pinX: number;
16
+ pinY: number;
17
+ impactSpeed: number;
18
+ }) => void;
19
+ onBallCrossedSensor?: (args: {
20
+ betId: string;
21
+ }) => void;
22
+ };
23
+ /**
24
+ * PlinkoEngine: Core physics simulation for the Plinko game
25
+ * Uses Matter.js to simulate realistic ball physics as it bounces through pins
26
+ */
27
+ export default class PlinkoEngine {
28
+ private static readonly SENSOR_HEIGHT;
29
+ private static readonly GRAVITY_Y;
30
+ private static readonly START_GAP;
31
+ private static readonly END_GAP;
32
+ private static readonly BIN_DESPAWN_OFFSET;
33
+ static readonly WIDTH = 1336;
34
+ static readonly HEIGHT = 1002;
35
+ /**
36
+ * Ball physics properties (tuned to match Shuffle's implementation):
37
+ * - friction: Resistance when ball slides against pins (0.5 = moderate)
38
+ * - restitution: Bounciness (0.7 = 70% of velocity retained after bounce)
39
+ * - density: Mass per unit area (0.5 = relatively light)
40
+ * - frictionAir: Air resistance (defaults to 0.01 in Matter.js)
41
+ */
42
+ private static BALL_CONFIG;
43
+ private static readonly PIN_CATEGORY;
44
+ private static readonly BALL_CATEGORY;
45
+ private rowCount;
46
+ private engine;
47
+ private pins;
48
+ private pinsSet;
49
+ private sensor;
50
+ private events;
51
+ private balls;
52
+ private ballToBetId;
53
+ private ballPositionsCache;
54
+ /**
55
+ * Initializes the physics engine and sets up collision detection
56
+ * @param config Game configuration (rowCount)
57
+ * @param events Optional event callbacks for UI integration
58
+ */
59
+ constructor(rowCount: PlinkoRowCount, events?: PlinkoEngineEvents);
60
+ /**
61
+ * Checks if a body is a pin (O(1) lookup using Set)
62
+ */
63
+ private isPin;
64
+ /**
65
+ * Checks if a body is a ball based on collision category
66
+ */
67
+ private isBall;
68
+ /**
69
+ * Handles all collision events in the physics world
70
+ * - Detects balls entering bins (ball-sensor collision)
71
+ * - Emits ball-pin collision events for visual effects
72
+ */
73
+ private handleCollisionStart;
74
+ /**
75
+ * Emits ball-pin collision data for visual effects (pulses)
76
+ * Calculates impact speed and passes raw data to callback
77
+ */
78
+ private emitBallHitPin;
79
+ /**
80
+ * Called after each physics update to send ball positions to UI
81
+ */
82
+ private handleAfterUpdate;
83
+ update(): void;
84
+ /**
85
+ * Changes the number of rows of pins
86
+ * Rebuilds the entire pin layout and clears all active balls
87
+ */
88
+ setRowCount(rowCount: PlinkoRowCount): void;
89
+ /**
90
+ * Drops a ball from a predetermined position to hit a specific bin.
91
+ * This is the ONLY way to drop a ball - the server determines the outcome.
92
+ *
93
+ * @param binIndex Which bin this ball should land in (0 to rowCount)
94
+ * @param betId Unique identifier for this bet (required for tracking)
95
+ * @throws Error if no starting positions exist for the given binIndex
96
+ */
97
+ dropBallForResult(binIndex: number, betId: string): void;
98
+ /**
99
+ * Creates a ball body at the specified X position
100
+ */
101
+ private createBall;
102
+ /**
103
+ * Deterministically converts a string to an index within a range.
104
+ * Uses simple hash to ensure same betId always produces same starting position.
105
+ */
106
+ private hashStringToIndex;
107
+ /**
108
+ * Returns what percentage of screen width the bins occupy
109
+ * Used by UI to calculate bin widths
110
+ */
111
+ get binsWidthPercentage(): number;
112
+ get activeBallCount(): number;
113
+ get ballRadius(): number;
114
+ /**
115
+ * Calculates pin size, spacing, and ball size based on row count
116
+ * More rows = smaller pins/balls to fit in same vertical space
117
+ *
118
+ * @param rowCount Number of rows (8-16)
119
+ * @returns Object with pegRadius, spacing, and ballRadius
120
+ */
121
+ static getPinConfig(rowCount: PlinkoRowCount): {
122
+ pegRadius: number;
123
+ spacing: number;
124
+ ballRadius: number;
125
+ };
126
+ /**
127
+ * Gets pin configuration for current instance's row count
128
+ */
129
+ private getPinConfig;
130
+ /**
131
+ * Called when ball crosses the sensor at bottom of screen
132
+ * Emits event that ball has landed
133
+ *
134
+ * @param ball The ball body that crossed the sensor
135
+ */
136
+ private handleBallCrossedSensor;
137
+ /**
138
+ * Creates all pins based on current row count
139
+ * Called during initialization and when row count changes
140
+ *
141
+ * Pin layout:
142
+ * Row 0: 3 pins
143
+ * Row 1: 4 pins
144
+ * Row 2: 5 pins
145
+ * etc.
146
+ * Row N: (3 + N) pins
147
+ */
148
+ private placePins;
149
+ /**
150
+ * Positions the sensor bar at the bottom of the play area
151
+ * Sensor detects when balls enter bins
152
+ */
153
+ private updateSensorPosition;
154
+ /**
155
+ * Removes all balls from the physics world
156
+ * Called when changing row count or cleaning up
157
+ */
158
+ private removeAllBalls;
159
+ /**
160
+ * Destroys the engine and cleans up all resources
161
+ * Should be called when the game component is removed from DOM
162
+ */
163
+ destroy(): void;
164
+ }
@@ -0,0 +1,47 @@
1
+ import { AutobetSettingsWithId, GameBetResult, GameComponent } from '../shared/GameComponent';
2
+ import { PlinkoApi } from './plinko.api';
3
+ import { MockPlinkoApi } from './plinko.mock.api';
4
+ export interface PlinkoHistory {
5
+ multiplier: number;
6
+ won: boolean;
7
+ id: string;
8
+ payout: string;
9
+ color?: string;
10
+ }
11
+ export declare class PlinkoGame extends GameComponent {
12
+ static styles: import('lit').CSSResult[];
13
+ private history;
14
+ private riskLevel;
15
+ private rowCount;
16
+ private ballsInFlight;
17
+ private lastSubBassTime;
18
+ private pendingResultsByBetId;
19
+ private betQueue;
20
+ private _plinkoManualEl?;
21
+ private _plinkoAutoEl?;
22
+ private _plinkoContentEl?;
23
+ get isGameInProgress(): boolean;
24
+ get plinkoApi(): PlinkoApi | MockPlinkoApi;
25
+ constructor();
26
+ private get customBinColors();
27
+ get binMultipliers(): number[];
28
+ private handleBetExecution;
29
+ /**
30
+ * Queued wrapper for handleBetExecution that throttles requests.
31
+ * Uses a bounded queue with concurrency limiting to prevent overwhelming the backend.
32
+ * - Requests beyond queue capacity are silently dropped (no error shown to user)
33
+ * - Up to maxConcurrent requests run simultaneously
34
+ */
35
+ private queuedBetExecution;
36
+ plinkoPlay(): Promise<void>;
37
+ protected executeAutobet(autobetSettings: AutobetSettingsWithId, currentBetAmount: string): Promise<GameBetResult>;
38
+ /**
39
+ * Resolves multiplier and win status from a bin hit event.
40
+ * Uses server result from pendingResultsByBetId via betId.
41
+ */
42
+ private resolveMultiplierAndWin;
43
+ private _getPitchFromMultiplier;
44
+ private playResultSound;
45
+ private handleBinHit;
46
+ render(): import('lit').TemplateResult<1>;
47
+ }
@@ -0,0 +1 @@
1
+ export declare const plinkoGameStyles: import('lit').CSSResult;
@@ -0,0 +1,10 @@
1
+ import { default as OrigamiElement } from '../../../shared/origami-element';
2
+ import { gameContextType } from '../../shared/context/game.context';
3
+ import { PlinkoRiskLevel } from '../plinko.constants';
4
+ export declare class PlinkoRiskSelect extends OrigamiElement {
5
+ static styles: import('lit').CSSResult[];
6
+ value: PlinkoRiskLevel;
7
+ disabled: boolean;
8
+ gameData?: gameContextType;
9
+ render(): import('lit').TemplateResult<1>;
10
+ }
@@ -0,0 +1 @@
1
+ export declare const plinkoRiskSelectStyles: import('lit').CSSResult;
@@ -0,0 +1,10 @@
1
+ import { default as OrigamiElement } from '../../../shared/origami-element';
2
+ import { gameContextType } from '../../shared/context/game.context';
3
+ import { PlinkoRowCount } from '../plinko.constants';
4
+ export declare class PlinkoRowsSelect extends OrigamiElement {
5
+ static styles: import('lit').CSSResult[];
6
+ value: PlinkoRowCount;
7
+ disabled: boolean;
8
+ gameData?: gameContextType;
9
+ render(): import('lit').TemplateResult<1>;
10
+ }
@@ -0,0 +1,12 @@
1
+ import { default as OrigamiElement } from '../../../shared/origami-element';
2
+ import { gameContextType } from '../../shared/context/game.context';
3
+ import { PlinkoRowCount } from '../plinko.constants';
4
+ export declare class PlinkoRowsSlider extends OrigamiElement {
5
+ static styles: import('lit').CSSResult[];
6
+ value: PlinkoRowCount;
7
+ disabled: boolean;
8
+ private _displayValue;
9
+ gameData?: gameContextType;
10
+ protected updated(changedProperties: Map<PropertyKey, unknown>): void;
11
+ render(): import('lit').TemplateResult<1>;
12
+ }
@@ -0,0 +1 @@
1
+ export declare const plinkoRowsSliderStyles: import('lit').CSSResult;
@@ -0,0 +1,77 @@
1
+ import { SupportedEdgePercentages } from '../../shared/constants';
2
+ import { PlinkoRiskLevel, PlinkoRowCount } from './plinko.constants';
3
+ export interface DisplayParams {
4
+ pegRadius: number;
5
+ spacing: number;
6
+ /** ViewBox origin X (left edge of peg bounding box) */
7
+ viewBoxX: number;
8
+ /** ViewBox origin Y (top edge of peg bounding box) */
9
+ viewBoxY: number;
10
+ /** ViewBox width (tight fit around pegs) */
11
+ viewBoxWidth: number;
12
+ /** ViewBox height (tight fit around pegs) */
13
+ viewBoxHeight: number;
14
+ }
15
+ /**
16
+ * Calculates display parameters for the Plinko canvas based on row count.
17
+ * ViewBox is calculated to tightly fit around the peg grid.
18
+ */
19
+ export declare const getDisplayParams: (rowCount: PlinkoRowCount) => DisplayParams;
20
+ export interface Ball {
21
+ betId: string;
22
+ x: number;
23
+ y: number;
24
+ r: number;
25
+ }
26
+ /** Rendered pulse data for SVG */
27
+ export interface Pulse {
28
+ x: number;
29
+ y: number;
30
+ r: number;
31
+ alpha: number;
32
+ }
33
+ /** Internal pulse state for animation tracking */
34
+ export interface PulseState {
35
+ x: number;
36
+ y: number;
37
+ startMs: number;
38
+ impact: number;
39
+ }
40
+ export declare const PULSE_CONSTANTS: {
41
+ readonly LIFE_MS: 260;
42
+ readonly BASE_RADIUS_MULT: 1.1;
43
+ readonly GROWTH_RADIUS_MULT: 1.6;
44
+ };
45
+ /**
46
+ * Converts internal pulse state to render data
47
+ * Returns null if pulse has expired
48
+ */
49
+ export declare const computePulseRenderData: (pulse: PulseState, now: number, pegRadius: number) => Pulse | null;
50
+ /**
51
+ * Calculates impact intensity from collision speed (0.25 to 1.0 range)
52
+ */
53
+ export declare const calculateImpact: (impactSpeed: number) => number;
54
+ export interface BinsLayout {
55
+ payouts: number[];
56
+ colors: {
57
+ background: string[];
58
+ shadow: string[];
59
+ };
60
+ paddingPx: number;
61
+ gapPx: number;
62
+ adjustedBinsWidthPct: number;
63
+ }
64
+ export declare const formatPlinkoMultiplier: (value: number) => string;
65
+ export declare const renderPegsSvg: (svg: SVGSVGElement, displayParams: DisplayParams, rowCount: number) => void;
66
+ export declare const renderBallsSvg: (svg: SVGSVGElement, balls: Ball[], displayParams: DisplayParams, state: {
67
+ spawnMap: Map<string, number>;
68
+ reduceMotion: boolean;
69
+ }) => void;
70
+ export declare const renderPulsesSvg: (svg: SVGSVGElement, pulses: Pulse[], displayParams: DisplayParams) => void;
71
+ export declare const calculateBinsLayout: (edge: SupportedEdgePercentages, rowCount: PlinkoRowCount, riskLevel: PlinkoRiskLevel, params: {
72
+ pegRadius: number;
73
+ canvasCssWidth: number;
74
+ isDesktop: boolean;
75
+ customPlinkoEdgeColor: string | null;
76
+ customPlinkoCenterColor: string | null;
77
+ }) => BinsLayout;
@@ -0,0 +1,14 @@
1
+ import { BaseStartArgs, StartBetResponse } from '../../shared/bet.types';
2
+ import { Language } from '../../translations';
3
+ import { PlinkoRiskLevel, PlinkoRowCount } from './plinko.constants';
4
+ export interface PlinkoStartArgs extends BaseStartArgs {
5
+ language: Language;
6
+ riskLevel: PlinkoRiskLevel;
7
+ rowCount: PlinkoRowCount;
8
+ }
9
+ export declare class PlinkoApi {
10
+ private authToken;
11
+ private baseUrl;
12
+ constructor(authToken: string, baseUrl: string);
13
+ startBet(data: PlinkoStartArgs): Promise<StartBetResponse>;
14
+ }