{"version":3,"file":"static/chunks/18177.974c05047d4d6646.js","sources":["webpack://_N_E/./src/LegacyApp/client/modules/app/reducers/setPerGameReducer.ts","webpack://_N_E/./src/modules/games/Game/store/game/game.reducer.js"],"sourceRoot":"","sourcesContent":["import { getPerGameInitObject } from '../getPerGameInitObject';\n\nimport { setPerGame } from './setPerGame';\n\nexport const setPerGameReducer = (\n\tinitValue,\n\tsetAction,\n\tparseValue,\n\tinitAction,\n) => {\n\treturn (\n\t\tstate = getPerGameInitObject(\n\t\t\tinitValue,\n\t\t\tundefined,\n\t\t\tundefined,\n\t\t\ttrue,\n\t\t\tparseValue,\n\t\t),\n\t\taction = {\n\t\t\ttype: '',\n\t\t},\n\t) => {\n\t\treturn setPerGame({\n\t\t\tstate,\n\t\t\taction,\n\t\t\tinitValue,\n\t\t\tsetAction,\n\t\t\tparseValue,\n\t\t\tinitAction,\n\t\t});\n\t};\n};\n","import { combineReducers } from 'redux';\nimport { setReducer } from '@legacyApp/methods/store/setReducer';\nimport {\n\tgetGameFromUrl,\n\tgetWinChanceDecimal,\n\tgetWinChanceFromPayout,\n} from '@legacyApp/client/modules/app/gameService';\nimport { REGISTRY_GAME_PACKAGE } from '@legacyApp/client/store/registry/registry.constants';\nimport { setPerGameReducer } from '@legacyApp/client/modules/app/reducers/setPerGameReducer';\nimport { roundNumber } from '@common/methods/roundNumber/roundNumber';\nimport { getGamesList } from '../../methods/getGamesList';\nimport {\n\tBET_UPDATE_ANIMATED,\n\tGAME_INPUT_ACTIVE,\n\tGAME_SET_AMOUNT_DEFAULT,\n\tGAME_SET_WIN_CHANCE_DEFAULT,\n\tGAME_UPDATE_AMOUNT,\n\tGAME_UPDATE_BET_ANIMATED_LAST_BALANCE,\n\tGAME_UPDATE_BETS_IN_ANIMATION,\n\tGAME_UPDATE_FORM_LOCK,\n\tGAME_UPDATE_PAYOUT,\n\tGAME_UPDATE_PROFIT,\n\tGAME_UPDATE_WIN_CHANCE,\n\tSET_GAME,\n} from './game.constants';\n\nconst PAYOUT_INIT = {\n\tdefault: 2,\n\tdice: null,\n\thilo: 1,\n\tplinko: 0,\n};\n\nconst activeInputsReducer = (\n\tstate = {},\n\taction = {\n\t\ttype: '',\n\t},\n) => {\n\tconst newState = {\n\t\t...state,\n\t};\n\tswitch (action.type) {\n\t\tcase GAME_INPUT_ACTIVE: {\n\t\t\tif (!newState[action.id]) {\n\t\t\t\tnewState[action.id] = {};\n\t\t\t}\n\t\t\tif (\n\t\t\t\taction.bool == null &&\n\t\t\t\tnewState[action.id][action.onModal ? 'modal' : 'default'] !== undefined\n\t\t\t) {\n\t\t\t\tdelete newState[action.id][action.onModal ? 'modal' : 'default'];\n\t\t\t\treturn newState;\n\t\t\t}\n\t\t\tnewState[action.id][action.onModal ? 'modal' : 'default'] = action.bool;\n\t\t\treturn newState;\n\t\t}\n\t\tdefault: {\n\t\t\treturn state;\n\t\t}\n\t}\n};\n\nconst activeGameReducer = setReducer(getGameFromUrl(), SET_GAME);\n\nconst gamesListReducer = (state = getGamesList()) => state;\nconst betAmountReducer = setPerGameReducer(\n\t'0.00000001',\n\tGAME_UPDATE_AMOUNT,\n\tundefined,\n\tREGISTRY_GAME_PACKAGE,\n);\nconst defaultBetAmountReducer = setPerGameReducer(\n\t0,\n\tGAME_SET_AMOUNT_DEFAULT,\n\tundefined,\n\tREGISTRY_GAME_PACKAGE,\n);\n// console.log({\n// \thilo: getWinChanceFromPayout(1, 'hilo'),\n// \tdefault: getWinChanceFromPayout(2, 'dice')\n// });\nconst defaultWinChanceValueReducer = setPerGameReducer(\n\t{\n\t\tdefault: (game) => getWinChanceFromPayout(PAYOUT_INIT.default, game),\n\t\thilo: getWinChanceFromPayout(PAYOUT_INIT.hilo, 'hilo'),\n\t},\n\tGAME_SET_WIN_CHANCE_DEFAULT,\n\tundefined,\n\tREGISTRY_GAME_PACKAGE,\n);\nconst payoutValueReducer = setPerGameReducer(\n\tPAYOUT_INIT,\n\tGAME_UPDATE_PAYOUT,\n\tundefined,\n\tREGISTRY_GAME_PACKAGE,\n);\nconst winChanceValueReducer = setPerGameReducer(\n\t{\n\t\tdefault: (game) => getWinChanceFromPayout(PAYOUT_INIT.default, game),\n\t\thilo: getWinChanceFromPayout(PAYOUT_INIT.hilo, 'hilo'),\n\t},\n\tGAME_UPDATE_WIN_CHANCE,\n\t(game, value) => roundNumber(value, getWinChanceDecimal(game)),\n\tREGISTRY_GAME_PACKAGE,\n);\nconst profitValueReducer = setPerGameReducer(\n\t0,\n\tGAME_UPDATE_PROFIT,\n\tundefined,\n\tREGISTRY_GAME_PACKAGE,\n);\nconst formLockReducer = setPerGameReducer(\n\tfalse,\n\tGAME_UPDATE_FORM_LOCK,\n\tundefined,\n\tREGISTRY_GAME_PACKAGE,\n);\n\nconst betsAnimatedReducer = setPerGameReducer(\n\t{},\n\tBET_UPDATE_ANIMATED,\n\t(game, value, currValue) => {\n\t\tif (!value?.id) {\n\t\t\treturn currValue;\n\t\t}\n\t\tconst currValueCopy = { ...(currValue || []) };\n\t\tconst valueExist = currValueCopy[value.id];\n\t\tif (valueExist) {\n\t\t\tif (!value.data) {\n\t\t\t\tdelete currValueCopy[value.id];\n\t\t\t}\n\t\t\treturn currValueCopy;\n\t\t}\n\t\tcurrValueCopy[value.id] = value.data;\n\t\treturn currValueCopy;\n\t},\n\tREGISTRY_GAME_PACKAGE,\n);\n\nconst betsInAnimationReducer = setPerGameReducer(\n\t{},\n\tGAME_UPDATE_BETS_IN_ANIMATION,\n\t(game, value, currValue) => {\n\t\tif (!value?.id) {\n\t\t\treturn currValue;\n\t\t}\n\t\tconst currValueCopy = { ...(currValue || []) };\n\t\tconst valueExist = currValueCopy[value.id];\n\t\tif (valueExist) {\n\t\t\tif (!value.active) {\n\t\t\t\tdelete currValueCopy[value.id];\n\t\t\t}\n\t\t\treturn currValueCopy;\n\t\t}\n\t\tif (value.active) {\n\t\t\tcurrValueCopy[value.id] = value.active;\n\t\t}\n\t\treturn currValueCopy;\n\t},\n\tREGISTRY_GAME_PACKAGE,\n);\n\nconst betsAnimatedLastBalanceReducer = setPerGameReducer(\n\t{},\n\tGAME_UPDATE_BET_ANIMATED_LAST_BALANCE,\n\t(game, value, currValue) => {\n\t\tif (!value?.currency) {\n\t\t\treturn currValue;\n\t\t}\n\t\tconst currValueCopy = { ...(currValue || []) };\n\t\tconst valueExist = currValueCopy[value.currency];\n\t\tif (valueExist && !value.amount) {\n\t\t\tdelete currValueCopy[value.currency];\n\t\t}\n\t\tcurrValueCopy[value.currency] = value;\n\t\treturn currValueCopy;\n\t},\n\tREGISTRY_GAME_PACKAGE,\n);\n\nconst gameReducer = combineReducers({\n\tactiveInputs: activeInputsReducer,\n\tactiveGame: activeGameReducer,\n\tgamesList: gamesListReducer,\n\tformLock: formLockReducer,\n\tbetAmount: betAmountReducer,\n\tdefaultBetAmount: defaultBetAmountReducer,\n\tdefaultWinChanceValue: defaultWinChanceValueReducer,\n\tpayoutValue: payoutValueReducer,\n\twinChanceValue: winChanceValueReducer,\n\tprofitValue: profitValueReducer,\n\tbetsAnimated: betsAnimatedReducer,\n\tbetsAnimatedLastBalance: betsAnimatedLastBalanceReducer,\n\tbetsInAnimation: betsInAnimationReducer,\n});\n\nexport default gameReducer;\n"],"names":["setPerGameReducer","initValue","setAction","parseValue","initAction","state","getPerGameInitObject","undefined","action","type","setPerGame","PAYOUT_INIT","default","dice","hilo","plinko","activeGameReducer","setReducer","getGameFromUrl","SET_GAME","betAmountReducer","GAME_UPDATE_AMOUNT","REGISTRY_GAME_PACKAGE","defaultBetAmountReducer","GAME_SET_AMOUNT_DEFAULT","defaultWinChanceValueReducer","game","getWinChanceFromPayout","GAME_SET_WIN_CHANCE_DEFAULT","payoutValueReducer","GAME_UPDATE_PAYOUT","winChanceValueReducer","GAME_UPDATE_WIN_CHANCE","value","roundNumber","getWinChanceDecimal","profitValueReducer","GAME_UPDATE_PROFIT","formLockReducer","GAME_UPDATE_FORM_LOCK","betsAnimatedReducer","BET_UPDATE_ANIMATED","currValue","id","currValueCopy","data","betsInAnimationReducer","GAME_UPDATE_BETS_IN_ANIMATION","active","betsAnimatedLastBalanceReducer","GAME_UPDATE_BET_ANIMATED_LAST_BALANCE","currency","amount","gameReducer","combineReducers","activeInputs","newState","GAME_INPUT_ACTIVE","bool","onModal","activeGame","gamesList","getGamesList","formLock","betAmount","defaultBetAmount","defaultWinChanceValue","payoutValue","winChanceValue","profitValue","betsAnimated","betsAnimatedLastBalance","betsInAnimation"],"mappings":"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","debug_id":"63ca27c1-b079-55b1-aafb-8aab602513b2"}