{"version":3,"file":"static/chunks/39169.dde2a3ed00f6b686.js","sources":["webpack://_N_E/./src/modules/games/Game/store/dice/dice.reducer.ts","webpack://_N_E/./src/modules/games/Game/store/dice/diceInitialState.ts","webpack://_N_E/./src/modules/games/Game/store/dice/slices/betValue.slice.ts","webpack://_N_E/./src/modules/games/Game/store/dice/slices/isResultVisible.slice.ts","webpack://_N_E/./src/modules/games/Game/store/dice/slices/result.slice.ts","webpack://_N_E/./src/modules/games/Game/store/dice/slices/rule.slice.ts","webpack://_N_E/./src/modules/games/Game/types/RollRule.ts"],"sourceRoot":"","sourcesContent":["import { combineReducers } from 'redux';\nimport { betValueSlice } from './slices/betValue.slice';\nimport { ruleDefaultSlice, ruleSlice } from './slices/rule.slice';\nimport { resultSlice } from './slices/result.slice';\nimport { isResultVisibleSlice } from './slices/isResultVisible.slice';\n\nconst diceReducer = combineReducers({\n\tbetValue: betValueSlice.reducer,\n\trollDirection: ruleSlice.reducer,\n\trollDefaultDirection: ruleDefaultSlice.reducer,\n\tresult: resultSlice.reducer,\n\tshowResult: isResultVisibleSlice.reducer,\n});\n\nexport default diceReducer;\n","import { reducerInitialStateMethods } from '@common/methods/reducerInitialStateMethods';\n\nexport const diceInitialState = reducerInitialStateMethods('dice');\n","import ReduxToolkit, { createSlice } from '@reduxjs/toolkit';\nimport { config } from '@legacyApp/client/config';\nimport { diceInitialState } from '../diceInitialState';\n\nconst defaultBetValue = config.games.dice.betValue;\n\nconst NAME = 'betValue';\n\nexport type ValueType = {\n\tsingleUnder: number; // source of truth for default rule \"under\"\n\tdouble: [number, number];\n\tquadruple: [number, number, number, number];\n};\n\nconst initialState: ValueType = diceInitialState.getInitialState(NAME) || {\n\tsingleUnder: defaultBetValue,\n\tdouble: [25, 75],\n\tquadruple: [15, 40, 60, 85],\n};\n\nconst setAction: ReduxToolkit.CaseReducer<\n\tValueType,\n\tReduxToolkit.PayloadAction<ValueType>\n> = (state, action) => {\n\tdiceInitialState.setInitialState(NAME, action.payload);\n\treturn action.payload;\n};\n\nconst singleValueUpdate: ReduxToolkit.CaseReducer<\n\tValueType,\n\tReduxToolkit.PayloadAction<ValueType['singleUnder']>\n> = (state, action) => {\n\tstate.singleUnder = action.payload;\n\tdiceInitialState.setInitialState(NAME, state);\n\treturn state;\n};\n\nconst doubleValueUpdate: ReduxToolkit.CaseReducer<\n\tValueType,\n\tReduxToolkit.PayloadAction<ValueType['double']>\n> = (state, action) => {\n\tstate.double = action.payload;\n\tdiceInitialState.setInitialState(NAME, state);\n\treturn state;\n};\n\nconst quadrupleValueUpdate: ReduxToolkit.CaseReducer<\n\tValueType,\n\tReduxToolkit.PayloadAction<ValueType['quadruple']>\n> = (state, action) => {\n\tstate.quadruple = action.payload;\n\tdiceInitialState.setInitialState(NAME, state);\n\treturn state;\n};\n\nconst betValueIndexUpdate: ReduxToolkit.CaseReducer<\n\tValueType,\n\tReduxToolkit.PayloadAction<{\n\t\tindex: number;\n\t\tvalue: number;\n\t}>\n> = (state, action) => {\n\tstate[action.payload.index] = action.payload.value;\n\tdiceInitialState.setInitialState(NAME, state);\n\treturn state;\n};\n\nexport const betValueSlice = createSlice({\n\tname: NAME,\n\tinitialState,\n\treducers: {\n\t\tsingleValueUpdate,\n\t\tdoubleValueUpdate,\n\t\tquadrupleValueUpdate,\n\t\tbetValueUpdate: setAction,\n\t\tbetValueIndexUpdate,\n\t},\n});\n","import ReduxToolkit, { createSlice } from '@reduxjs/toolkit';\n\nexport type ValueType = number;\n\nconst NAME = 'isResultVisible';\n\nconst initialState = 0;\n\nconst resultShow: ReduxToolkit.CaseReducer<\n\tValueType,\n\tReduxToolkit.PayloadAction<ValueType>\n> = (state) => {\n\treturn (state += 1);\n};\n\nconst resultHide: ReduxToolkit.CaseReducer<\n\tValueType,\n\tReduxToolkit.PayloadAction<ValueType>\n> = (state) => {\n\treturn (state -= 1);\n};\n\nexport const isResultVisibleSlice = createSlice({\n\tname: NAME,\n\tinitialState,\n\treducers: {\n\t\tresultShow,\n\t\tresultHide,\n\t},\n});\n","import ReduxToolkit, { createSlice } from '@reduxjs/toolkit';\n\nconst NAME = 'result';\n\nexport interface ResultType {\n\tresult: boolean | number;\n\tresultValue: boolean | number;\n}\n\nconst initialState: ResultType = {\n\tresult: false,\n\tresultValue: false,\n};\n\nconst setAction: ReduxToolkit.CaseReducer<\n\tResultType,\n\tReduxToolkit.PayloadAction<ResultType>\n> = (state, action) => {\n\treturn action.payload;\n};\n\nexport const resultSlice = createSlice({\n\tname: NAME,\n\tinitialState,\n\treducers: {\n\t\tresultUpdate: setAction,\n\t},\n});\n","import ReduxToolkit, { createSlice } from '@reduxjs/toolkit';\nimport { RollRule } from '../../../types/RollRule';\nimport { diceInitialState } from '../diceInitialState';\n\nconst NAME = 'rule';\nconst NAME_DEFAULT = `${NAME}Default`;\n\nexport type ValueType = RollRule;\n\nconst initialState = diceInitialState.getInitialState(NAME) || RollRule.UNDER;\n\nconst initialDefaultState =\n\tdiceInitialState.getInitialState(NAME_DEFAULT) || RollRule.UNDER;\n\nconst setAction: ReduxToolkit.CaseReducer<\n\tValueType,\n\tReduxToolkit.PayloadAction<ValueType>\n> = (state, action) => {\n\tdiceInitialState.setInitialState(NAME, action.payload);\n\treturn action.payload;\n};\n\nexport const ruleSlice = createSlice({\n\tname: NAME,\n\tinitialState,\n\treducers: {\n\t\truleUpdate: setAction,\n\t},\n});\n\nexport const ruleDefaultSlice = createSlice({\n\tname: NAME_DEFAULT,\n\tinitialState: initialDefaultState,\n\treducers: {\n\t\tdefaultRuleUpdate: setAction,\n\t},\n});\n","export enum RollRule {\n\tDIRECT = 'direct',\n\tUNDER = 'under',\n\tOVER = 'over',\n\tBETWEEN = 'between',\n\tOUTSIDE = 'outside',\n\tTWO_RANGE = 'two_ranges',\n}\n"],"names":["diceReducer","combineReducers","betValue","betValueSlice","rollDirection","ruleSlice","rollDefaultDirection","ruleDefaultSlice","result","resultSlice","showResult","isResultVisibleSlice","diceInitialState","reducerInitialStateMethods","defaultBetValue","config","NAME","initialState","singleUnder","double","quadruple","createSlice","name","reducers","singleValueUpdate","state","action","payload","doubleValueUpdate","quadrupleValueUpdate","betValueUpdate","betValueIndexUpdate","index","value","resultShow","resultHide","resultValue","resultUpdate","NAME_DEFAULT","RollRule","initialDefaultState","setAction","ruleUpdate","defaultRuleUpdate"],"mappings":";;yJAMMA,GAAcC,EAAAA,EAAAA,IAAgB,CACnCC,SAAUC,EAAAA,EAAAA,QACVC,cAAeC,EAAAA,EAAAA,QACfC,qBAAsBC,EAAAA,EAAAA,QACtBC,OAAQC,EAAAA,EAAAA,QACRC,WAAYC,EAAAA,EAAAA,UAGb,a,0DCZaC,GAAmBC,E,SAAAA,GAA2B,S,2FCErDC,EAAkBC,EAAAA,EAAAA,MAAAA,KAAAA,SAElBC,EAAO,WAQPC,EAA0BL,EAAAA,EAAAA,gBAAiCI,IAAS,CACzEE,YAAaJ,EACbK,OAAQ,CAAC,GAAI,IACbC,UAAW,CAAC,GAAI,GAAI,GAAI,KAkDZjB,GAAgBkB,EAAAA,EAAAA,IAAY,CACxCC,KAAMN,EACNC,aAAAA,EACAM,SAAU,CACTC,kBAxCE,SAACC,EAAOC,GAGX,OAFAD,EAAMP,YAAcQ,EAAOC,QAC3Bf,EAAAA,EAAAA,gBAAiCI,EAAMS,GAChCA,GAsCNG,kBAhCE,SAACH,EAAOC,GAGX,OAFAD,EAAK,OAAUC,EAAOC,QACtBf,EAAAA,EAAAA,gBAAiCI,EAAMS,GAChCA,GA8BNI,qBAxBE,SAACJ,EAAOC,GAGX,OAFAD,EAAML,UAAYM,EAAOC,QACzBf,EAAAA,EAAAA,gBAAiCI,EAAMS,GAChCA,GAsBNK,eAnDE,SAACL,EAAOC,GAEX,OADAd,EAAAA,EAAAA,gBAAiCI,EAAMU,EAAOC,SACvCD,EAAOC,SAkDbI,oBAdE,SAACN,EAAOC,GAGX,OAFAD,EAAMC,EAAOC,QAAQK,OAASN,EAAOC,QAAQM,MAC7CrB,EAAAA,EAAAA,gBAAiCI,EAAMS,GAChCA,O,0DC1CKd,GAAuBU,E,SAAAA,IAAY,CAC/CC,KAnBY,kBAoBZL,aAlBoB,EAmBpBM,SAAU,CACTW,WAfE,SAACT,GACJ,OAAQA,EAAS,GAehBU,WATE,SAACV,GACJ,OAAQA,EAAS,O,0DCELhB,GAAcY,E,SAAAA,IAAY,CACtCC,KApBY,SAqBZL,aAdgC,CAChCT,QAAQ,EACR4B,aAAa,GAabb,SAAU,CACTc,aARE,SAACZ,EAAOC,GACX,OAAOA,EAAOC,a,kHCdTX,EAAO,OACPsB,EAAe,GAAH,OAAMtB,EAAN,WAIZC,EAAeL,EAAAA,EAAAA,gBAAiCI,IAASuB,EAAAA,EAAAA,MAEzDC,EACL5B,EAAAA,EAAAA,gBAAiC0B,IAAiBC,EAAAA,EAAAA,MAE7CE,EAGF,SAAChB,EAAOC,GAEX,OADAd,EAAAA,EAAAA,gBAAiCI,EAAMU,EAAOC,SACvCD,EAAOC,SAGFtB,GAAYgB,EAAAA,EAAAA,IAAY,CACpCC,KAAMN,EACNC,aAAAA,EACAM,SAAU,CACTmB,WAAYD,KAIDlC,GAAmBc,EAAAA,EAAAA,IAAY,CAC3CC,KAAMgB,EACNrB,aAAcuB,EACdjB,SAAU,CACToB,kBAAmBF,M,sBClCd,IAAKF,E,yCAAAA,GAAAA,EAAAA,OAAAA,SAAAA,EAAAA,MAAAA,QAAAA,EAAAA,KAAAA,OAAAA,EAAAA,QAAAA,UAAAA,EAAAA,QAAAA,UAAAA,EAAAA,UAAAA,a,CAAAA,IAAAA,EAAAA","debug_id":"0ff94000-18e9-530f-913d-ab8640bceb5b"}