{"version":3,"file":"js/rad-quiz-trivia-question.47436598.js","mappings":"iLAEO,MAAMA,GAAqBC,EAAAA,EAAAA,IAAY,aAAc,CACxDC,MAAOA,KACI,CACHC,cAAe,GACfC,WAAY,KAGpBC,QAAS,CACLC,0BAA0BJ,GACtB,IAAIK,EAAQ,EAWZ,OARAL,EAAME,WAAWI,SAAQ,CAACC,EAAQC,KAC1BA,EAAQ,GAAKR,EAAMC,cAAcQ,QAC7BF,GAAUP,EAAMC,cAAcO,IAC9BH,G,IAKLA,CACX,EACAK,cAAcV,GACV,OAAQW,GAAqBX,EAAME,WAAWS,EAClD,EACAC,kBAAoBZ,GAAUA,EAAMC,cAAcQ,OAClDI,kBAAkBb,GAEd,OAA+D,IAAxDA,EAAME,WAAWY,QAAQC,IAAiB,IAATA,IAAYN,MACxD,EACAO,eACI,OAAQC,IACJ,MAAMD,IAAiBC,EACvB,OAAID,EAAeE,KAAKN,kBACbI,GAGH,CAAC,CAEjB,GAEJG,QAAS,CACLC,MAAMR,GACFM,KAAKjB,cAAgBoB,MAAMT,GAAmBU,MAAM,GACpDJ,KAAKhB,WAAamB,MAAMT,GAAmBU,MAAM,EACrD,EACAC,iBAAiBZ,EAAkBJ,GAC/BW,KAAKjB,cAAcU,GAAYJ,CACnC,EACAiB,cAAcb,EAAkBJ,GAC5BW,KAAKhB,WAAWS,GAAYJ,CAChC,I,mGC5CR,GAA4BkB,EAAAA,EAAAA,iBAAiB,CAC3CC,OAAQ,WACRC,MAAO,CAAEC,eAAgBC,OAAQ5B,cAAe4B,QAChDC,MAAMC,GAER,MAAMJ,EAAQI,GAKR,eAAEH,EAAc,cAAE3B,IAAkB+B,EAAAA,EAAAA,QAAOL,GAG3CM,GAASC,EAAAA,EAAAA,MAGTC,GAAcrC,EAAAA,EAAAA,KAOpB,OALkB,OAAd8B,QAAc,IAAdA,OAAc,EAAdA,EAAgBQ,QAAS,IAAkB,OAAbnC,QAAa,IAAbA,OAAa,EAAbA,EAAemC,QAAS,IACtDH,EAAOI,MAAM,uCAAwCT,EAAeQ,MAAOnC,EAAcmC,OACzFD,EAAYZ,iBAAiBK,EAAeQ,MAAOnC,EAAcmC,QAG9D,CAACE,EAAUC,KACTC,EAAAA,EAAAA,YAAYF,EAAKG,OAAQ,UAElC,IChCA,MAAMC,EAAc,EAEpB,O","sources":["webpack://beliefnet-frontend/./src/stores/TriviaQuiz.ts","webpack://beliefnet-frontend/./src/components/quiz/trivia/Question.vue?211c","webpack://beliefnet-frontend/./src/components/quiz/trivia/Question.vue"],"sourcesContent":["import { defineStore } from 'pinia';\n\nexport const useTriviaQuizStore = defineStore('TriviaQuiz', {\n    state: () => {\n        return {\n            correctAnswer: [] as number[],\n            userAnswer: [] as number[]\n        };\n    },\n    getters: {\n        getNumberOfCorrectAnswers(state) {\n            let count = 0;\n\n            // count the number of correct answers\n            state.userAnswer.forEach((answer, index) => {\n                if (index + 1 <= state.correctAnswer.length) {\n                    if (answer == state.correctAnswer[index]) {\n                        count++;\n                    }\n                }\n            });\n\n            return count;\n        },\n        getUserAnswer(state) {\n            return (question: number) => state.userAnswer[question];\n        },\n        numberOfQuestions: (state) => state.correctAnswer.length,\n        canShowUserResult(state) {\n            // only show if there aren't any -1s in the user answer array\n            return state.userAnswer.filter((val) => val === -1).length === 0;\n        },\n        nextQuestion() {\n            return (currentQuestion: number) => {\n                const nextQuestion = ++currentQuestion;\n                if (nextQuestion < this.numberOfQuestions) {\n                    return nextQuestion;\n                }\n\n                return -1;\n            };\n        }\n    },\n    actions: {\n        reset(numberOfQuestions: number) {\n            this.correctAnswer = Array(numberOfQuestions).fill(-1);\n            this.userAnswer = Array(numberOfQuestions).fill(-1);\n        },\n        setCorrectAnswer(question: number, answer: number) {\n            this.correctAnswer[question] = answer;\n        },\n        setUserAnswer(question: number, answer: number) {\n            this.userAnswer[question] = answer;\n        }\n    }\n});\n","import { defineComponent as _defineComponent } from 'vue'\nimport { renderSlot as _renderSlot } from \"vue\"\n\nimport { toRefs } from 'vue';\nimport { useLogger } from 'vue-logger-plugin';\nimport { useTriviaQuizStore } from '../../../stores/TriviaQuiz';\n\n// Incoming props\n\nexport default /*#__PURE__*/_defineComponent({\n  __name: 'Question',\n  props: { questionNumber: Number, correctAnswer: Number },\n  setup(__props) {\n\nconst props = __props;\n\n\n\n// get back prop values\nconst { questionNumber, correctAnswer } = toRefs(props);\n\n// use logger\nconst logger = useLogger();\n\n// get the trivia quiz store\nconst triviaStore = useTriviaQuizStore();\n// check if we have correct answer\nif (questionNumber?.value >= 0 && correctAnswer?.value >= 0) {\n    logger.debug('Setting question with correct answer', questionNumber.value, correctAnswer.value);\n    triviaStore.setCorrectAnswer(questionNumber.value, correctAnswer.value);\n}\n\nreturn (_ctx: any,_cache: any) => {\n  return _renderSlot(_ctx.$slots, \"default\")\n}\n}\n\n})","import script from \"./Question.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./Question.vue?vue&type=script&setup=true&lang=ts\"\n\nconst __exports__ = script;\n\nexport default __exports__"],"names":["useTriviaQuizStore","defineStore","state","correctAnswer","userAnswer","getters","getNumberOfCorrectAnswers","count","forEach","answer","index","length","getUserAnswer","question","numberOfQuestions","canShowUserResult","filter","val","nextQuestion","currentQuestion","this","actions","reset","Array","fill","setCorrectAnswer","setUserAnswer","_defineComponent","__name","props","questionNumber","Number","setup","__props","toRefs","logger","useLogger","triviaStore","value","debug","_ctx","_cache","_renderSlot","$slots","__exports__"],"sourceRoot":""}