UNPKG

2.08 kBSource Map (JSON)View Raw
1{"version":3,"sources":["../src/queue-reducer.js"],"names":["queueReducer","validator","ZSchema","state","action","game","queue","length","schema","valid","validate","Error","JSON","stringify","errors","getLastErrors","nextActions","map","type","properties","enum"],"mappings":";;;;;kBAKwBA,Y;;AAHxB;;;;;;AACA,IAAMC,YAAY,IAAIC,iBAAJ,EAAlB,C,CAHA;AACA;AAIe,SAASF,YAAT,CAAsBG,KAAtB,EAA6BC,MAA7B,EAAqC;AAClD,MAAID,MAAME,IAAN,CAAWC,KAAX,IAAoBH,MAAME,IAAN,CAAWC,KAAX,CAAiBC,MAAjB,GAA0B,CAAlD,EAAqD;AACnD,QAAMC,SAASL,MAAME,IAAN,CAAWC,KAAX,CAAiB,CAAjB,CAAf;AACA;;AAEA,QAAMG,QAAQR,UAAUS,QAAV,CAAmBN,MAAnB,EAA2BI,MAA3B,CAAd;AACA,QAAI,CAACC,KAAL,EAAY;AACV,YAAM,IAAIE,KAAJ,CACJC,KAAKC,SAAL,CAAe,EAAET,cAAF,EAAUU,QAAQb,UAAUc,aAAV,EAAlB,EAAf,EAA8D,IAA9D,EAAoE,CAApE,CADI,CAAN;AAGD;AACF;AACD,MAAIZ,MAAME,IAAN,CAAWW,WAAf,EAA4B;AAC1B,6BACKb,KADL;AAEEE,8BACKF,MAAME,IADX;AAEEC,eAAOH,MAAME,IAAN,CAAWW,WAAX,CAAuBC,GAAvB,CAA2B;AAAA,iBAAW;AAC3CC,kBAAM,QADqC;AAE3CC,wBAAY;AACVD,oBAAM;AACJA,sBAAM,QADF;AAEJE,sBAAM,CAAChB,OAAOA,MAAP,CAAcc,IAAf;AAFF;AADI;AAF+B,WAAX;AAAA,SAA3B;AAFT;AAFF;AAeD;;AAED,SAAOf,KAAP;AACD","file":"queue-reducer.js","sourcesContent":["// import Ajv from \"ajv\";\n// const ajv = new Ajv({ allErrors: true });\nimport ZSchema from \"z-schema\";\nconst validator = new ZSchema();\n\nexport default function queueReducer(state, action) {\n if (state.game.queue && state.game.queue.length > 0) {\n const schema = state.game.queue[0];\n // const validate = ajv.compile(schema);\n\n const valid = validator.validate(action, schema);\n if (!valid) {\n throw new Error(\n JSON.stringify({ action, errors: validator.getLastErrors() }, null, 2)\n );\n }\n }\n if (state.game.nextActions) {\n return {\n ...state,\n game: {\n ...state.game,\n queue: state.game.nextActions.map(action => ({\n type: \"object\",\n properties: {\n type: {\n type: \"string\",\n enum: [action.action.type]\n }\n }\n }))\n }\n };\n }\n\n return state;\n}\n"]}
\No newline at end of file