{"version":3,"file":"static/chunks/88017-9b7a63f2dfc5a8f8.js","sources":["webpack://_N_E/./src/LegacyApp/client/components/betAmountInput/betAmountInput.container.js","webpack://_N_E/./src/modules/games/Game/store/gameValidation/thunks/doValidateBetAmountThunk.js","webpack://_N_E/./src/LegacyApp/client/components/betAmountInput/betAmountInput.jsx","webpack://_N_E/./src/LegacyApp/client/modules/app/checkHotkeysAllowed.ts","webpack://_N_E/./src/modules/games/Game/methods/checkIsSingleValue.ts","webpack://_N_E/./src/modules/games/Game/store/game/thunks/getHotkey.thunk.ts","webpack://_N_E/./src/LegacyApp/client/modules/app/getHotkey.ts"],"sourceRoot":"","sourcesContent":["import { connect } from 'react-redux';\nimport { gameUpdateAmount } from '../../../../modules/games/Game/store/game/game.actions';\nimport { openModal } from '../../../../modules/modals/store/modal.actions';\nimport {\n\tconverterToNative,\n\tconverterToUsd,\n} from '../../store/converter/converter.actions';\nimport { OPTIONS } from '../../store/options/options.constants';\nimport { getHotkeyThunk } from '../../../../modules/games/Game/store/game/thunks/getHotkey.thunk';\nimport { doValidateBetAmountThunk } from '../../../../modules/games/Game/store/gameValidation/thunks/doValidateBetAmountThunk';\nimport { validateBetAmountThunk } from '../../../../modules/games/Game/store/gameValidation/thunks/validateBetAmountThunk';\nimport { BetAmountInput } from './betAmountInput';\n\nconst mapStateToProps = (state, props) => {\n\treturn {\n\t\tisMobile: state.app.mobile,\n\t\tbetAmount:\n\t\t\tprops.betAmount !== undefined\n\t\t\t\t? props.betAmount\n\t\t\t\t: state.game?.betAmount[props.game],\n\t\tbetAmountError:\n\t\t\tprops.betAmountError !== undefined\n\t\t\t\t? props.betAmountError\n\t\t\t\t: state.gameValidation?.betAmountError[props.game],\n\t\tautoBetRolling:\n\t\t\tprops.autoBetRolling !== undefined\n\t\t\t\t? props.autoBetRolling\n\t\t\t\t: state.gameAutobet?.autoBetRolling[props.game],\n\t\tcurrency: props.currency || state.user.activeCurrency,\n\t\tmaxButtonDisabled: !state.options[OPTIONS.MAX_BET],\n\t\tdisableButtons:\n\t\t\tprops.disableButtons !== undefined\n\t\t\t\t? props.disableButtons\n\t\t\t\t: state.gameAutobet?.autoBetRolling[props.game],\n\t\tisLogged: state.user.isLogged,\n\t\tdisableHotkeys: !state.options[OPTIONS.HOTKEYS],\n\t\tformCurrency:\n\t\t\tstate.converter.currency === 'usd'\n\t\t\t\t? state.converter.currency\n\t\t\t\t: props.currency || state.user.activeCurrency,\n\t\tbalance:\n\t\t\tstate.balance.balances[props.currency || state.user.activeCurrency],\n\t};\n};\n\nconst mapDispatchToProps = (dispatch, props) => {\n\treturn {\n\t\topenModal: (id, props) => dispatch(openModal(id, 'betAmountInput', props)),\n\t\tupdateBetAmount: (payload) => {\n\t\t\tconst data = {\n\t\t\t\tvalue: payload,\n\t\t\t\tgame: props.game,\n\t\t\t};\n\t\t\tif (props.updateBetAmount) {\n\t\t\t\treturn props.updateBetAmount(data);\n\t\t\t}\n\t\t\treturn dispatch(gameUpdateAmount(data));\n\t\t},\n\t\tgetHotkey: (id, game) => dispatch(getHotkeyThunk(id, game)),\n\t\ttoUsd: (...argument) => dispatch(converterToUsd(...argument)),\n\t\ttoNative: (...argument) => dispatch(converterToNative(...argument)),\n\t\tvalidate: ({ value, currency, isLogged, checkBalance, game }) =>\n\t\t\tdispatch(\n\t\t\t\tvalidateBetAmountThunk({\n\t\t\t\t\tvalue,\n\t\t\t\t\tisLogged,\n\t\t\t\t\tcurrency,\n\t\t\t\t\tcheckBalance,\n\t\t\t\t\tgame: game || props.game,\n\t\t\t\t}),\n\t\t\t),\n\t\tdoValidate: (\n\t\t\tresult,\n\t\t\tvalue,\n\t\t\tcurrency,\n\t\t\tisLogged,\n\t\t\tchangeError,\n\t\t\tcheckBalance,\n\t\t\tclearError,\n\t\t) => {\n\t\t\tif (props.doValidate) {\n\t\t\t\treturn props.doValidate(\n\t\t\t\t\tprops.game,\n\t\t\t\t\tresult,\n\t\t\t\t\tvalue,\n\t\t\t\t\tcurrency,\n\t\t\t\t\tisLogged,\n\t\t\t\t\tchangeError,\n\t\t\t\t\tcheckBalance,\n\t\t\t\t\tclearError,\n\t\t\t\t);\n\t\t\t}\n\t\t\tdispatch(\n\t\t\t\tdoValidateBetAmountThunk(\n\t\t\t\t\tprops.game,\n\t\t\t\t\tresult,\n\t\t\t\t\tvalue,\n\t\t\t\t\tcurrency,\n\t\t\t\t\tisLogged,\n\t\t\t\t\tchangeError,\n\t\t\t\t\tcheckBalance,\n\t\t\t\t\tclearError,\n\t\t\t\t),\n\t\t\t);\n\t\t},\n\t};\n};\n\nconst BetAmountInputContainer = connect(\n\tmapStateToProps,\n\tmapDispatchToProps,\n)(BetAmountInput);\n\nexport { BetAmountInputContainer };\n","import { doValidateBetAmount } from '../gameValidation.actions';\n\nexport const doValidateBetAmountThunk = (\n\tgame,\n\tresult,\n\tvalue,\n\tcurrency,\n\tisLogged,\n\tchangeError = true,\n\tcheckBalance,\n\tclearError,\n) => {\n\treturn (dispatch, getState) => {\n\t\treturn dispatch(\n\t\t\tdoValidateBetAmount(\n\t\t\t\tgame,\n\t\t\t\tresult,\n\t\t\t\tvalue,\n\t\t\t\tgetState().balance.balancesArray,\n\t\t\t\tcurrency,\n\t\t\t\tisLogged,\n\t\t\t\tchangeError,\n\t\t\t\tcheckBalance,\n\t\t\t\tclearError,\n\t\t\t),\n\t\t);\n\t};\n};\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport styled from 'styled-components';\nimport { Button } from '@ui/button';\nimport { MODAL_ID } from '@common/constants/modal/ids.modal.constants';\nimport { preventDefault } from '@common/methods/preventDefault';\nimport { roundNumber } from '@common/methods/roundNumber/roundNumber';\nimport { Input } from '../input/input';\nimport { mathService } from '../../modules/math/mathService';\nimport { config } from '../../config';\nimport { Tooltip } from '../tooltip';\nimport { CurrencySymbol } from '../currencySymbol/currencySymbol';\nimport { trans } from '../../modules/translation/translate';\nimport { getId } from '../../modules/app/appService';\nimport { sentryError } from '../../modules/app/sentryService';\nimport { ConverterValueContainer } from '../converterValue';\nimport { enhanceComponent } from '../../wrappers/enhanceComponent';\nimport { InputWrapperStyle } from '../input/styled/inputWrapper.style';\nimport { getLimits } from '../../../methods/currency/getLimits';\nimport { getMinBetAmount } from '../../modules/app/gameService';\nimport { InputLabelStyle } from '../input/styled/inputLabelStyle';\nimport { InputRelativeBoxStyle } from '../input/styled/inputRelativeBox.styled';\nimport { checkHotkeysAllowed } from '../../modules/app/checkHotkeysAllowed';\n\nconst TITLE = 'Bet amount';\n\nclass BetAmountInput extends React.PureComponent {\n\tstatic propTypes = {\n\t\tbetAmountError: PropTypes.any,\n\t\tbetAmount: PropTypes.any,\n\t\tcurrency: PropTypes.any,\n\t\tautoBetRolling: PropTypes.any,\n\t\tupdateBetAmount: PropTypes.func,\n\t\tisMobile: PropTypes.any,\n\t\tisLogged: PropTypes.bool,\n\t\tbalance: PropTypes.any,\n\t\tnoModal: PropTypes.any,\n\t\topenModal: PropTypes.func,\n\t\tclassNames: PropTypes.any,\n\t\tdisableButtons: PropTypes.bool,\n\t\tmaxButtonDisabled: PropTypes.bool,\n\t\tdisableHotkeys: PropTypes.bool,\n\t\tdoValidate: PropTypes.func,\n\t\tvalidate: PropTypes.func,\n\t\tgetHotkey: PropTypes.func,\n\t\tformCurrency: PropTypes.any,\n\t\ttoUsd: PropTypes.func,\n\t\ttoNative: PropTypes.func,\n\t\tonModal: PropTypes.bool,\n\t\tnoCheckBalance: PropTypes.bool,\n\t\tisMessage: PropTypes.bool,\n\t\tlocalTheme: PropTypes.any,\n\t\tgame: PropTypes.any,\n\t\tminEnabled: PropTypes.bool,\n\t};\n\n\tconstructor(props) {\n\t\tsuper(props);\n\t\tthis.state = {\n\t\t\tconvertedValue: 0,\n\t\t\tid: 'bet-amount',\n\t\t};\n\t\tthis.el = React.createRef();\n\t}\n\n\tcomponentDidMount() {\n\t\tthis.setConverted(this.props.betAmount);\n\t\tthis.doValidate({ error: false }, this.props.betAmount, true, false, true);\n\t\tthis.setState({ id: `bet-amount-${getId()}` });\n\t\twindow.addEventListener('keydown', this.handleKeyboard);\n\t}\n\n\tcomponentWillUnmount() {\n\t\tthis.doValidate({ error: false }, this.props.betAmount, true, false, true);\n\t\twindow.removeEventListener('keydown', this.handleKeyboard);\n\t}\n\n\thandleKeyboard = (obj) => {\n\t\tif (\n\t\t\tthis.props.disableButtons ||\n\t\t\t!this.el ||\n\t\t\t!checkHotkeysAllowed(this.props.disableHotkeys)\n\t\t) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (obj.keyCode === this.props.getHotkey('half_amount').keyCode) {\n\t\t\tobj.preventDefault();\n\t\t\tthis.halfAmount();\n\t\t}\n\n\t\tif (obj.keyCode === this.props.getHotkey('double_amount').keyCode) {\n\t\t\tobj.preventDefault();\n\t\t\tthis.doubleAmount();\n\t\t}\n\n\t\tif (obj.keyCode === this.props.getHotkey('min_amount').keyCode) {\n\t\t\tobj.preventDefault();\n\t\t\tthis.minAmount();\n\t\t}\n\t};\n\n\trefEl = (el) => (this.el = el);\n\n\tcomponentDidUpdate(prevProps) {\n\t\tif (this.props.disableHotkeys) {\n\t\t\twindow.removeEventListener('keydown', this.handleKeyboard);\n\t\t} else {\n\t\t\twindow.addEventListener('keydown', this.handleKeyboard);\n\t\t}\n\n\t\tconst isCurrencyUpdated = this.props.currency !== prevProps.currency;\n\t\tconst isBetAmountUpdated = mathService.isNumberDiff(\n\t\t\tprevProps.betAmount,\n\t\t\tthis.props.betAmount,\n\t\t);\n\n\t\tif (isBetAmountUpdated && this.props.formCurrency !== 'usd') {\n\t\t\tthis.setConverted(this.props.betAmount);\n\t\t}\n\n\t\tif (isCurrencyUpdated) {\n\t\t\tthis.doValidate(undefined, this.props.betAmount, false, false, true);\n\t\t\tif (this.props.formCurrency === 'usd') {\n\t\t\t\tconsole.log({\n\t\t\t\t\ttoNative: this.props.toNative(\n\t\t\t\t\t\tthis.state.convertedValue,\n\t\t\t\t\t\tthis.props.currency,\n\t\t\t\t\t\tconfig.decimals.bet,\n\t\t\t\t\t\tundefined,\n\t\t\t\t\t\ttrue,\n\t\t\t\t\t),\n\t\t\t\t\tprops: this.props,\n\t\t\t\t\tstate: this.state,\n\t\t\t\t});\n\t\t\t\tthis.props.updateBetAmount(\n\t\t\t\t\tthis.props.toNative(\n\t\t\t\t\t\tthis.state.convertedValue,\n\t\t\t\t\t\tthis.props.currency,\n\t\t\t\t\t\tconfig.decimals.bet,\n\t\t\t\t\t\tundefined,\n\t\t\t\t\t\ttrue,\n\t\t\t\t\t),\n\t\t\t\t);\n\t\t\t} else {\n\t\t\t\tthis.setConverted(this.props.betAmount);\n\t\t\t}\n\t\t}\n\t}\n\n\tsetConverted = (value) => {\n\t\tvalue = parseFloat(value);\n\t\tconst min = getMinBetAmount({\n\t\t\tgame: this.props.game,\n\t\t\tcurrency: this.props.currency,\n\t\t});\n\t\tlet convertedValue = this.props.toUsd(\n\t\t\tvalue,\n\t\t\tthis.props.currency,\n\t\t\tconfig.decimals.bet,\n\t\t\tundefined,\n\t\t\ttrue,\n\t\t);\n\t\tif (!convertedValue) {\n\t\t\tlet native = this.props.toNative(\n\t\t\t\tmin,\n\t\t\t\tthis.props.currency,\n\t\t\t\tconfig.decimals.bet,\n\t\t\t\tundefined,\n\t\t\t\ttrue,\n\t\t\t);\n\t\t\tif (native < min) {\n\t\t\t\tconvertedValue = this.props.toUsd(\n\t\t\t\t\tmin,\n\t\t\t\t\tthis.props.currency,\n\t\t\t\t\tconfig.decimals.bet,\n\t\t\t\t\tundefined,\n\t\t\t\t\ttrue,\n\t\t\t\t);\n\t\t\t\tnative = min;\n\t\t\t}\n\t\t\tif (value !== 0 && this.props.formCurrency === 'usd') {\n\t\t\t\tthis.props.updateBetAmount(native);\n\t\t\t}\n\t\t}\n\t\tthis.setState({\n\t\t\tconvertedValue: !convertedValue ? min : convertedValue,\n\t\t});\n\t};\n\n\tdoValidate = (result, value, changeError, checkBalance, clearError) => {\n\t\tvalue = this.props.toNative(\n\t\t\tvalue,\n\t\t\tthis.props.currency,\n\t\t\tconfig.decimals.bet,\n\t\t);\n\t\tif (this.props.noCheckBalance) {\n\t\t\tcheckBalance = false;\n\t\t}\n\t\treturn this.props.doValidate(\n\t\t\tresult,\n\t\t\tvalue,\n\t\t\tthis.props.currency,\n\t\t\tthis.props.isLogged,\n\t\t\tchangeError,\n\t\t\tcheckBalance,\n\t\t\tclearError,\n\t\t);\n\t};\n\n\tvalidate = (value, checkBalance = true, isNative) => {\n\t\tif (!isNative) {\n\t\t\tvalue = this.props.toNative(\n\t\t\t\tvalue,\n\t\t\t\tthis.props.currency,\n\t\t\t\tconfig.decimals.bet,\n\t\t\t);\n\t\t}\n\t\tif (this.props.noCheckBalance) {\n\t\t\tcheckBalance = false;\n\t\t}\n\t\tconsole.log('validate', {\n\t\t\tvalue,\n\t\t\tcurrency: this.props.currency,\n\t\t\tisLogged: this.props.isLogged,\n\t\t\tcheckBalance,\n\t\t});\n\t\treturn this.props.validate({\n\t\t\tvalue,\n\t\t\tcurrency: this.props.currency,\n\t\t\tisLogged: this.props.isLogged,\n\t\t\tcheckBalance,\n\t\t});\n\t};\n\n\thalfAmount = () => {\n\t\tif (this.isHalfAmountDisabled()) {\n\t\t\treturn;\n\t\t}\n\t\tthis.multiplyBetAmount(0.5);\n\t};\n\n\tdoubleAmount = () => {\n\t\tif (this.isDoubleAmountDisabled()) {\n\t\t\treturn;\n\t\t}\n\t\tthis.multiplyBetAmount(2);\n\t};\n\n\tmultiplyBetAmount(multiplier) {\n\t\tconst isConverted = this.props.formCurrency === 'usd';\n\t\tconst betAmount = isConverted\n\t\t\t? parseFloat(this.state.convertedValue)\n\t\t\t: this.getBetAmount();\n\t\tlet value = betAmount\n\t\t\t? roundNumber(multiplier * betAmount, config.decimals.bet)\n\t\t\t: getMinBetAmount({\n\t\t\t\t\tgame: this.props.game,\n\t\t\t\t\tcurrency: this.props.currency,\n\t\t\t });\n\t\tif (!value) {\n\t\t\tvalue = getMinBetAmount({\n\t\t\t\tgame: this.props.game,\n\t\t\t\tcurrency: this.props.currency,\n\t\t\t});\n\t\t}\n\t\tlet balance = this.getBalance();\n\t\tif (isConverted) {\n\t\t\tbalance = this.props.toUsd(\n\t\t\t\tbalance,\n\t\t\t\tthis.props.currency,\n\t\t\t\tconfig.decimals.balance,\n\t\t\t);\n\t\t}\n\t\tif (balance < value) {\n\t\t\tvalue = balance;\n\t\t}\n\t\tconst validateAmount = this.validate(\n\t\t\tthis.props.toNative(value, this.props.currency, config.decimals.bet),\n\t\t\ttrue,\n\t\t\ttrue,\n\t\t);\n\t\tconsole.log('betAmountInput - multiplyBetAmount', {\n\t\t\tisConverted,\n\t\t\tmultiplier,\n\t\t\tbetAmount,\n\t\t\tvalue,\n\t\t\tbalance,\n\t\t\tvalidateAmount,\n\t\t\tvalidated: this.props.toNative(\n\t\t\t\tvalue,\n\t\t\t\tthis.props.currency,\n\t\t\t\tconfig.decimals.bet,\n\t\t\t),\n\t\t});\n\t\tif (!!validateAmount.error !== !!this.props.betAmountError) {\n\t\t\tthis.doValidate(validateAmount, value, false, false, true);\n\t\t\tif (validateAmount.error) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t}\n\t\tif (value === undefined) {\n\t\t\treturn sentryError(\n\t\t\t\tnew Error('Undefined bet amount in multiplyBetAmount()'),\n\t\t\t\t{\n\t\t\t\t\tbetAmount,\n\t\t\t\t\tmultiplier,\n\t\t\t\t\tbalance,\n\t\t\t\t\tvalidateAmount,\n\t\t\t\t\tvalue,\n\t\t\t\t},\n\t\t\t);\n\t\t}\n\t\tif (isConverted) {\n\t\t\tthis.update(value);\n\t\t\tthis.props.updateBetAmount(\n\t\t\t\tthis.props.toNative(value, this.props.currency, config.decimals.bet),\n\t\t\t);\n\t\t\treturn;\n\t\t}\n\t\tthis.update(\n\t\t\tthis.props.toUsd(value, this.props.currency, config.decimals.bet),\n\t\t);\n\t\tthis.props.updateBetAmount(value);\n\t}\n\n\tgetBalance = (balance = this.props.balance) => {\n\t\tbalance = parseFloat(balance);\n\t\tconst max = getLimits({\n\t\t\tcurrency: this.props.currency,\n\t\t\tgame: this.props.game,\n\t\t}).amount_maximum;\n\t\tif (max && balance > max) {\n\t\t\tbalance = max;\n\t\t}\n\t\tif (balance) {\n\t\t\tbalance = roundNumber(balance, config.decimals.bet, 'floor');\n\t\t}\n\t\treturn balance;\n\t};\n\n\tgetBetAmount = () => {\n\t\treturn parseFloat(this.props.betAmount);\n\t};\n\n\tmaxAmount = () => {\n\t\tconst balance = roundNumber(\n\t\t\tthis.getBalance(),\n\t\t\tconfig.decimals.bet,\n\t\t\t'floor',\n\t\t);\n\t\tconst validateAmount = this.validate(balance, true, true);\n\t\tconsole.log('betAmountInput - maxAmount', {\n\t\t\tprops: this.props,\n\t\t\tstate: this.state,\n\t\t\tbalance,\n\t\t\tvalidateAmount,\n\t\t});\n\t\tif (!!validateAmount.error !== !!this.props.betAmountError) {\n\t\t\tthis.doValidate(validateAmount, balance, false, false, true);\n\t\t\tif (validateAmount.error && balance) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t}\n\t\tif (balance === undefined) {\n\t\t\treturn sentryError(new Error('Undefined bet amount in maxAmount()'), {\n\t\t\t\tprops: this.props,\n\t\t\t\tstate: this.state,\n\t\t\t\tbalance,\n\t\t\t\tvalidateAmount,\n\t\t\t});\n\t\t}\n\t\tthis.update(\n\t\t\tthis.props.toUsd(\n\t\t\t\tbalance,\n\t\t\t\tthis.props.currency,\n\t\t\t\tconfig.decimals.bet,\n\t\t\t\t'floor',\n\t\t\t),\n\t\t);\n\t\tthis.props.updateBetAmount(balance);\n\t};\n\n\tminAmount = () => {\n\t\tif (\n\t\t\tgetMinBetAmount({\n\t\t\t\tgame: this.props.game,\n\t\t\t\tcurrency: this.props.currency,\n\t\t\t}) === undefined\n\t\t) {\n\t\t\treturn sentryError(new Error('Undefined bet amount in minAmount()'), {\n\t\t\t\tprops: this.props,\n\t\t\t\tstate: this.state,\n\t\t\t\tbetDecimals: config.decimals.bet,\n\t\t\t\tvalue: getMinBetAmount({\n\t\t\t\t\tgame: this.props.game,\n\t\t\t\t\tcurrency: this.props.currency,\n\t\t\t\t}),\n\t\t\t});\n\t\t}\n\t\tconst value = getMinBetAmount({\n\t\t\tgame: this.props.game,\n\t\t\tcurrency: this.props.currency,\n\t\t});\n\t\tthis.update(\n\t\t\tthis.props.toUsd(value, this.props.currency, config.decimals.bet),\n\t\t);\n\t\tthis.props.updateBetAmount(value);\n\t};\n\n\thandleAmountClick = () => {\n\t\tif (!this.props.isMobile) {\n\t\t\treturn;\n\t\t}\n\t\tlet maxValue = roundNumber(this.getBalance(), config.decimals.bet, 'floor');\n\t\tthis.handleInputExtend({\n\t\t\tonChange: this.onUpdate,\n\t\t\tvalue:\n\t\t\t\tthis.props.formCurrency === 'usd'\n\t\t\t\t\t? this.state.convertedValue\n\t\t\t\t\t: this.props.betAmount,\n\t\t\tmaxValue:\n\t\t\t\tthis.props.formCurrency === 'usd'\n\t\t\t\t\t? this.props.toUsd(\n\t\t\t\t\t\t\tmaxValue,\n\t\t\t\t\t\t\tthis.props.currency,\n\t\t\t\t\t\t\tconfig.decimals.bet,\n\t\t\t\t\t\t\t'floor',\n\t\t\t\t\t )\n\t\t\t\t\t: maxValue,\n\t\t});\n\t};\n\n\thandleInputExtend(data) {\n\t\tif (!this.props.isMobile) {\n\t\t\treturn;\n\t\t}\n\t\tthis.props.openModal(MODAL_ID.INPUT_EXTEND, {\n\t\t\tisMaxButton: !this.props.maxButtonDisabled,\n\t\t\tmaxValue: data.maxValue,\n\t\t\tprecision: config.decimals.bet,\n\t\t\tonChange: data.onChange,\n\t\t\tarray: data.array,\n\t\t\tvalue: data.value,\n\t\t\tminValue: getMinBetAmount({\n\t\t\t\tgame: this.props.game,\n\t\t\t\tcurrency: this.props.currency,\n\t\t\t}),\n\t\t\ttitle: TITLE,\n\t\t});\n\t}\n\n\tonUpdate = (data) => {\n\t\tconst value = this.props.toNative(\n\t\t\tdata,\n\t\t\tthis.props.currency,\n\t\t\tconfig.decimals.bet,\n\t\t);\n\t\tconst validateAmount = this.validate(value, false, true);\n\t\tif (!!validateAmount.error !== !!this.props.betAmountError) {\n\t\t\tthis.doValidate(validateAmount, this.getBalance(), false, false, true);\n\t\t}\n\t\tif (value === undefined) {\n\t\t\treturn sentryError(new Error('Undefined bet amount in onUpdate()'), {\n\t\t\t\tprops: this.props,\n\t\t\t\tstate: this.state,\n\t\t\t\tvalidateAmount,\n\t\t\t\tvalue,\n\t\t\t\tbalance: this.getBalance(),\n\t\t\t});\n\t\t}\n\t\tthis.update(data);\n\t\tthis.props.updateBetAmount(value);\n\t};\n\n\tupdate = (convertedValue) => {\n\t\tif (this.props.formCurrency === 'usd') {\n\t\t\tthis.setState({\n\t\t\t\tconvertedValue,\n\t\t\t});\n\t\t}\n\t};\n\n\tisDoubleAmountDisabled = () => {\n\t\tconst balance = this.getBalance(this.props.balance);\n\t\treturn this.getBetAmount() >= balance;\n\t};\n\n\tisMaxAmountDisabled = () => {\n\t\tconst balance = this.getBalance(this.props.balance);\n\t\treturn this.getBetAmount() === balance;\n\t};\n\n\tisMinAmountDisabled = () => {\n\t\treturn (\n\t\t\tthis.getBetAmount() ===\n\t\t\tgetMinBetAmount({\n\t\t\t\tgame: this.props.game,\n\t\t\t\tcurrency: this.props.currency,\n\t\t\t})\n\t\t);\n\t};\n\n\tisHalfAmountDisabled = () => {\n\t\tconst minBet = getMinBetAmount({\n\t\t\tgame: this.props.game,\n\t\t\tcurrency: this.props.currency,\n\t\t});\n\t\treturn (\n\t\t\tthis.getBetAmount() <= minBet ||\n\t\t\t(this.props.formCurrency === 'usd' && this.state.convertedValue <= minBet)\n\t\t);\n\t};\n\n\trender() {\n\t\tconst button = (\n\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t{!this.props.isMobile && (\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t)}\n\t\t\t\t\t{this.props.minEnabled && (\n\t\t\t\t\t\t\n\t\t\t\t\t)}\n\t\t\t\t\t{!this.props.disableButtons && !this.props.maxButtonDisabled && (\n\t\t\t\t\t\t\n\t\t\t\t\t)}\n\t\t\t\t\t{!this.props.disableButtons && (\n\t\t\t\t\t\t\n\t\t\t\t\t)}\n\t\t\t\t\t{!this.props.disableButtons && (\n\t\t\t\t\t\t\n\t\t\t\t\t)}\n\t\t\t\t\n\t\t\t\n\t\t);\n\n\t\treturn (\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t{trans({ label: TITLE })}{' '}\n\t\t\t\t\t\t{this.props.isMobile && (\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t)}\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t{this.props.autoBetRolling ? (\n\t\t\t\t\tbutton\n\t\t\t\t) : (\n\t\t\t\t\t\n\t\t\t\t\t\t{button}\n\t\t\t\t\t\n\t\t\t\t)}\n\t\t\t\n\t\t);\n\t}\n}\n\nexport const BetAmountInputWrapper = styled(InputWrapperStyle)``;\n\nBetAmountInput = enhanceComponent({\n\tBetAmountInput,\n});\n\nexport { BetAmountInput };\n","export const checkHotkeysAllowed = (disableHotKeys: boolean): boolean => {\n\tif (disableHotKeys) {\n\t\treturn false;\n\t}\n\tif (!process.browser) {\n\t\treturn false;\n\t}\n\treturn !(\n\t\tdocument.activeElement &&\n\t\t['input', 'textarea'].indexOf(document.activeElement.localName) > -1\n\t);\n};\n","import { RollRule } from '../types/RollRule';\n\nexport const checkIsSingleValue = (rule: RollRule): boolean => {\n\tif (!rule) {\n\t\treturn true;\n\t}\n\treturn [RollRule.UNDER, RollRule.OVER, RollRule.DIRECT].indexOf(rule) > -1;\n};\n","import { AppThunk } from '@legacyApp/types/store/ThunkAction';\nimport { getHotkey, Hotkey } from '@legacyApp/client/modules/app/getHotkey';\nimport { MODAL_ID } from '@common/constants/modal/ids.modal.constants';\nimport { GameType } from '../../../constants/availableGames';\n\nconst EMPTY_HOTKEY = {\n\tkeyCode: null,\n\tid: null,\n\tname: null,\n\tsymbol: null,\n};\n\nexport const getHotkeyThunk = (\n\tkeyCode: string,\n\tgame: GameType,\n): AppThunk => {\n\treturn (dispatch, getState) => {\n\t\tconst state = getState();\n\t\t// TODO: NEW GAME FLAG\n\t\tif (game && game !== state.game?.activeGame) {\n\t\t\treturn EMPTY_HOTKEY;\n\t\t}\n\t\tif (\n\t\t\tstate.modal?.id &&\n\t\t\t(state.modal?.id !== MODAL_ID.AUTOBET || keyCode === 'roll')\n\t\t) {\n\t\t\treturn EMPTY_HOTKEY;\n\t\t}\n\t\tif (state.game?.activeGame === GameType.HILO && state.hilo?.skipActive) {\n\t\t\treturn EMPTY_HOTKEY;\n\t\t}\n\t\treturn getHotkey(keyCode, game);\n\t};\n};\n","import { GameType } from '@modules/games/Game/constants/availableGames';\nimport { config } from '../../config';\nimport { game_config } from '../../game_config';\n\nexport interface Hotkey {\n\tid: string;\n\tsymbol: string;\n\tkeyCode: number;\n\tname: string;\n}\n\nexport const getHotkey = (id: string, game: GameType): Hotkey => {\n\tif (!game) {\n\t\treturn config.defaultHotKeys.find((el) => id === el.id);\n\t}\n\t//@ts-expect-error invalid type\n\treturn game_config[game].hotkeys.find((el) => id === el.id);\n};\n"],"names":["BetAmountInputContainer","connect","state","props","isMobile","app","mobile","betAmount","undefined","game","betAmountError","gameValidation","autoBetRolling","gameAutobet","currency","user","activeCurrency","maxButtonDisabled","options","OPTIONS","disableButtons","isLogged","disableHotkeys","formCurrency","converter","balance","balances","dispatch","openModal","id","updateBetAmount","payload","data","value","gameUpdateAmount","getHotkey","getHotkeyThunk","toUsd","converterToUsd","toNative","converterToNative","validate","checkBalance","validateBetAmountThunk","doValidate","result","changeError","clearError","getState","doValidateBetAmount","balancesArray","doValidateBetAmountThunk","BetAmountInput","TITLE","obj","el","checkHotkeysAllowed","keyCode","preventDefault","halfAmount","doubleAmount","minAmount","parseFloat","min","getMinBetAmount","convertedValue","config","native","setState","noCheckBalance","isNative","isHalfAmountDisabled","multiplyBetAmount","isDoubleAmountDisabled","max","getLimits","amount_maximum","roundNumber","getBalance","validateAmount","error","sentryError","Error","update","betDecimals","maxValue","handleInputExtend","onChange","onUpdate","getBetAmount","minBet","React","this","setConverted","getId","window","addEventListener","handleKeyboard","removeEventListener","prevProps","isCurrencyUpdated","mathService","multiplier","isConverted","MODAL_ID","isMaxButton","precision","array","minValue","title","button","isDisabled","I","type","gameInputId","noTranslatePlaceholder","placeholder","onClick","noModal","handleAmountClick","localTheme","message","isMessage","onChangeDelayed","name","className","noTippy","minEnabled","disabled","isMinAmountDisabled","label","trans","isMaxAmountDisabled","maxAmount","BetAmountInputWrapper","ref","refEl","classNames","htmlFor","onModal","namespace","content","isVisible","hideOnClick","styled","InputWrapperStyle","enhanceComponent","disableHotKeys","document","activeElement","indexOf","localName","checkIsSingleValue","rule","RollRule","EMPTY_HOTKEY","symbol","activeGame","modal","GameType","hilo","skipActive","game_config","hotkeys","find"],"mappings":"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","debug_id":"366ff3a4-6ea7-50e8-bde5-9c985e2835b5"}