{"version":3,"sources":["webpack:///./src/views/seminars/components/Rephrase.vue?c57a","webpack:///./src/views/seminars/components/Rephrase.vue","webpack:///./src/views/seminars/components/Rephrase.vue?63c6","webpack:///./src/views/seminars/components/Rephrase.vue?c3f6","webpack:///./src/views/goals/components/ConditionDisplay.vue?52bf","webpack:///./src/views/goals/components/ConditionDisplay.vue","webpack:///./src/views/goals/components/ConditionDisplay.vue?c258","webpack:///./src/views/goals/components/ConditionDisplay.vue?9fce","webpack:///./src/views/seminars/components/GoalElement.vue?be52","webpack:///./src/views/seminars/components/GoalElement.vue","webpack:///./src/views/seminars/components/GoalElement.vue?f5fc","webpack:///./src/views/seminars/components/GoalElement.vue?df52","webpack:///./src/views/seminars/components/Content.vue?415b","webpack:///./src/views/seminars/components/Content.vue","webpack:///./src/views/seminars/components/Content.vue?5725","webpack:///./src/views/seminars/components/Content.vue?bfea","webpack:///./src/views/seminars/components/RecordVideo.vue?33d7","webpack:///./src/views/seminars/components/RecordVideo.vue","webpack:///./src/views/seminars/components/RecordVideo.vue?fbba","webpack:///./src/views/seminars/components/RecordVideo.vue?ebd8","webpack:///./src/views/seminars/components/WatchVideo.vue?61b9","webpack:///./src/views/seminars/components/WatchVideo.vue","webpack:///./src/views/seminars/components/WatchVideo.vue?c375","webpack:///./src/views/seminars/components/WatchVideo.vue?4eb2","webpack:///./src/views/seminars/components/WatchFeedback.vue?ee26","webpack:///./src/views/seminars/components/WatchFeedback.vue","webpack:///./src/views/seminars/components/WatchFeedback.vue?f5f1","webpack:///./src/views/seminars/components/WatchFeedback.vue?d412","webpack:///./src/views/seminars/components/RephraseSubmission.vue?c374","webpack:///./src/views/seminars/components/RephraseSubmission.vue","webpack:///./src/views/seminars/components/RephraseSubmission.vue?250d","webpack:///./src/views/seminars/components/RephraseSubmission.vue?ae3a","webpack:///./src/views/seminars/components/GapTextSubmission.vue?85f6","webpack:///./src/views/seminars/components/GapTextSubmission.vue","webpack:///./src/views/seminars/components/GapTextSubmission.vue?f664","webpack:///./src/views/seminars/components/GapTextSubmission.vue?9b03","webpack:///./node_modules/core-js/modules/es.string.replace-all.js","webpack:///./src/views/seminars/components/GiveFeedback.vue?8966","webpack:///./src/views/seminars/components/GiveFeedback.vue","webpack:///./src/views/seminars/components/GiveFeedback.vue?10ae","webpack:///./src/views/seminars/components/GiveFeedback.vue?337c","webpack:///./src/views/seminars/components/GapText.vue?e223","webpack:///./src/views/seminars/components/GapText.vue","webpack:///./src/views/seminars/components/GapText.vue?8772","webpack:///./src/views/seminars/components/GapText.vue?1a47","webpack:///./src/views/seminars/components/VRTraining.vue?1a05","webpack:///./src/views/seminars/components/VRTraining.vue","webpack:///./src/views/seminars/components/VRTraining.vue?7c5e","webpack:///./src/views/seminars/components/VRTraining.vue?0a9e","webpack:///./src/views/seminars/components/Content.vue?e3f3"],"names":["render","_vm","this","_h","$createElement","_c","_self","VDivider","staticClass","submissions","length","_l","submission","i","key","attrs","element","sentence","class","first","last","sentences","_v","_s","_e","VTextField","model","value","inputs","callback","$$v","$set","expression","_f","skipped","createdAt","submit","staticRenderFns","RephraseElement","submitting","seminar","filter","x","elementId","id","find","Error","some","displaySnackbar","$t","toString","data","answers","seminarId","api","post","addSubmission","description","type","Array","fill","Vue","__decorate","Prop","default","Action","Component","components","RephraseSubmission","ElementControls","component","VList","staticStyle","ConditionDisplay","condition","ConditionType","DueDate","val","d","DateTime","fromISO","now","fromMillis","Date","rel","setLocale","$i18n","locale","toRelative","includes","split","msgstr","SessionScore","n","FillerWords","SpeechClarity","OverallScore","Repetition","SpeechSpeed","n1","n2","Sentiment","Pitch","Volume","Pauses","target","progress","cond","isAssignedToUser","VBtn","assigning","on","assignToGoal","VSpacer","refreshing","refresh","VIcon","GoalElement","console","debug","assignToGoalAction","goalId","setAssignedToGoalAction","makeCall","refreshGoalElement","window","addEventListener","removeEventListener","Getter","SubmissionFooter","VSheet","percent","VProgressLinear","owner","email","myEmail","openEdit","skipping","skipElement","block","title","body","domProps","isLast","SeminarContent","complete","elements","elementStatus","Math","round","isNaN","calcPercent","route","$router","push","blocks","blocksWithEls","lastBlock","lastElement","skip","next","Watch","immediate","WatchVideo","RecordVideo","GiveFeedback","WatchFeedback","GapText","Rephrase","Categorize","VRTraining","canShare","isTimed","expectedLen","maxLen","upload","maxNumSubs","numReq","sharedSubs","maxNumShared","numReqShared","RecordVideoElement","isShared","requiredSubmissions","requiredNumShared","maxSubmissions","maxShared","rateableSubmissions","blob","askForFeedback","FormData","file","File","append","headers","log","VideoRecorder","VideoPlayer","VideoSubmission","videoURI","WatchVideoElement","videos","VCol","video","rateFeedback","WatchFeedbackElement","loading","one","users","username","get","rateFeedbackVideo","getVideos","_","solutions","formattedText","GapTextSubmission","base","text","replaceAll","forEach","replace","$","requireObjectCoercible","isRegExp","getRegExpFlags","wellKnownSymbol","IS_PURE","REPLACE","RegExpPrototype","RegExp","prototype","proto","searchValue","replaceValue","IS_REG_EXP","flags","replacer","string","searchString","template","result","position","index","O","String","call","indexOf","TypeError","undefined","join","uri","uploading","GiveFeedbackElement","submitted","end","userId","subId","getVideo","line","part","j","GapTextElement","map","parts","gapCount","reduce","cum","cur","y","trim","flat","requiredScore","sub","VRow","score","getting","getSubs","VRTrainingElement","getSubmissions","error"],"mappings":"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","file":"assets/js/chunk-6e5c1473.dcc1f5da.js","sourcesContent":["import { VDivider } from 'vuetify/lib/components/VDivider';\nimport { VTextField } from 'vuetify/lib/components/VTextField';\n\nvar render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c(VDivider,{staticClass:\"mb-4\"}),(_vm.submissions.length > 0)?_c('div',_vm._l((_vm.submissions),function(submission,i){return _c('RephraseSubmission',{key:i,staticClass:\"mt-4\",attrs:{\"element\":_vm.element,\"submission\":submission}})}),1):_c('div',_vm._l((_vm.element.sentences),function(sentence,i){return _c('div',{key:i,staticClass:\"rephrase-row\"},[_c('div',{staticClass:\"left\",class:{\n first: i === 0,\n last: i === _vm.element.sentences.length - 1,\n }},[_c('div',[_vm._v(_vm._s(sentence))]),(i !== _vm.element.sentences.length - 1)?_c(VDivider,{staticClass:\"mt-2 mb-n2\"}):_vm._e()],1),_c('div',{staticClass:\"middle\",class:{\n first: i === 0,\n last: i === _vm.element.sentences.length - 1,\n }},[_c(VTextField,{staticClass:\"mx-2 pa-0 other\",attrs:{\"outlined\":\"\",\"hide-details\":\"\",\"placeholder\":\"Your answer\"},model:{value:(_vm.inputs[i]),callback:function ($$v) {_vm.$set(_vm.inputs, i, $$v)},expression:\"inputs[i]\"}}),(i !== _vm.element.sentences.length - 1)?_c(VDivider,{staticClass:\"mt-2 mb-n2\"}):_vm._e()],1),_c('div',{staticClass:\"flex-1 pa-2\"})])}),0),(_vm.skipped)?_c('div',[_c('h4',{staticClass:\"mt-4\"},[_vm._v(\" This task was skipped on \"+_vm._s(_vm._f(\"formatwithtime\")(_vm.skipped.createdAt))+\". \")])]):_vm._e(),_c('ElementControls',{attrs:{\"submit\":_vm.submit}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport Vue from \"vue\";\r\nimport { Action } from \"vuex-class\";\r\nimport { Component, Prop } from \"vue-property-decorator\";\r\n\r\nimport api from \"@/core/utils/api\";\r\nimport { Seminar, SeminarElement, Submission } from \"@/core/models\";\r\nimport RephraseSubmission from \"./RephraseSubmission.vue\";\r\nimport ElementControls from \"./ElementControls.vue\";\r\n\r\n@Component({ components: { RephraseSubmission, ElementControls } })\r\nexport default class RephraseElement extends Vue {\r\n @Prop({ default: () => undefined }) seminar?: Seminar;\r\n @Prop({ default: () => ({} as SeminarElement) }) element!: SeminarElement;\r\n @Action(\"seminars/addSubmission\") addSubmission!: (s: Submission) => void;\r\n @Action(\"displaySnackbar\") displaySnackbar!: (m: string) => void;\r\n\r\n get submissions() {\r\n return (\r\n this.seminar?.submissions?.filter(\r\n x => x.elementId === this.element.id && !x.skipped,\r\n ) || []\r\n );\r\n }\r\n\r\n get skipped() {\r\n return this.seminar?.submissions?.find(\r\n x => x.skipped && x.elementId === this.element.id,\r\n );\r\n }\r\n\r\n submitting = false;\r\n inputs: string[] = [];\r\n async submit() {\r\n if (this.submitting) throw new Error(\"Submit loading...\");\r\n\r\n if (this.inputs.some(x => !x.length)) {\r\n this.displaySnackbar(this.$t(\"seminars.rephrase.error\").toString());\r\n throw new Error(\"Not all inputs have been filled out\");\r\n }\r\n\r\n this.submitting = true;\r\n try {\r\n const data = {\r\n elementId: this.element.id,\r\n answers: this.inputs,\r\n seminarId: this.element.seminarId,\r\n };\r\n const submission = (await api.post(\r\n \"/api/Submissions/Rephrase\",\r\n data,\r\n )) as Submission;\r\n this.addSubmission(submission);\r\n } catch (error) {\r\n this.displaySnackbar(error.description);\r\n }\r\n this.submitting = false;\r\n }\r\n\r\n // todo delete element -> refresh\r\n // todo go to seminar and load it\r\n // todo solve issue where site always loads at home page\r\n\r\n created() {\r\n if (this.element.type !== \"rephrase\") return;\r\n this.inputs = new Array(this.element.sentences.length).fill(\"\");\r\n }\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--15-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Rephrase.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--15-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Rephrase.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Rephrase.vue?vue&type=template&id=6ba07706&\"\nimport script from \"./Rephrase.vue?vue&type=script&lang=ts&\"\nexport * from \"./Rephrase.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import { VListItemSubtitle } from 'vuetify/lib/components/VList';\n\nvar render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c(VListItemSubtitle,[(_vm.isDueDate)?_c('span',{staticStyle:{\"font-weight\":\"600\"}},[_vm._v(_vm._s(_vm.value))]):_c('span',[_vm._v(_vm._s(_vm.value))])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\r\nimport Vue from \"vue\";\r\nimport { DateTime } from \"luxon\";\r\nimport { Component, Prop } from \"vue-property-decorator\";\r\n\r\nimport { Condition, ConditionType } from \"@/core/models\";\r\n\r\n@Component\r\nexport default class ConditionDisplay extends Vue {\r\n @Prop({ default: () => {} }) condition!: Condition;\r\n\r\n get isDueDate() {\r\n return this.condition.type === ConditionType.DueDate;\r\n }\r\n get value() {\r\n let val = this.condition.value;\r\n const type = this.condition.type;\r\n if (type === ConditionType.DueDate) {\r\n const d = DateTime.fromISO(val);\r\n const now = DateTime.fromMillis(Date.now());\r\n if (d < now) return this.$t(\"goals.condmsg.overdue\").toString();\r\n const rel = d.setLocale(this.$i18n.locale).toRelative();\r\n return `${this.$t(\"goals.condmsg.duein\")} ${rel}`;\r\n }\r\n\r\n if (typeof val === \"string\" && val.includes(\";\")) val = val.split(\";\");\r\n\r\n const msgstr = `goals.condmsg.${type}`;\r\n switch (type) {\r\n case ConditionType.SessionScore:\r\n return this.$t(msgstr, { n: val });\r\n case ConditionType.FillerWords:\r\n return this.$t(msgstr, { n: val });\r\n case ConditionType.SpeechClarity:\r\n return this.$t(msgstr, { n: val });\r\n case ConditionType.OverallScore:\r\n return this.$t(msgstr, { n: val });\r\n case ConditionType.Repetition:\r\n return this.$t(msgstr, { n: val });\r\n case ConditionType.SpeechSpeed:\r\n return this.$t(msgstr, { n1: val[0], n2: val[1] });\r\n case ConditionType.Sentiment:\r\n return this.$t(msgstr, { n1: val[0], n2: val[1] });\r\n case ConditionType.Pitch:\r\n return this.$t(msgstr, { n1: val[0], n2: val[1] });\r\n case ConditionType.Volume:\r\n return this.$t(msgstr, { n1: val[0], n2: val[1] });\r\n case ConditionType.Pauses:\r\n return this.$t(msgstr, { n1: val[0], n2: val[1] });\r\n\r\n default:\r\n return \"\";\r\n }\r\n }\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--15-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ConditionDisplay.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--15-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ConditionDisplay.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ConditionDisplay.vue?vue&type=template&id=15e84086&\"\nimport script from \"./ConditionDisplay.vue?vue&type=script&lang=ts&\"\nexport * from \"./ConditionDisplay.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VIcon } from 'vuetify/lib/components/VIcon';\nimport { VSpacer } from 'vuetify/lib/components/VGrid';\n\nvar render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',[_c('b',[_vm._v(_vm._s(_vm.$t(\"seminars.goal.target\"))+\": \")]),_c('u',[_vm._v(_vm._s(_vm.element.target))])]),(_vm.element.isAssignedToUser)?_c('div',{staticClass:\"mb-4\"},[_c('b',[_vm._v(_vm._s(_vm.$t(\"seminars.goal.progress\"))+\": \")]),_c('u',[_vm._v(_vm._s(_vm.element.progress))])]):_vm._e(),_vm._l((_vm.element.conditions),function(cond,i){return _c('div',{key:i,staticClass:\"mt-2\"},[_c('ConditionDisplay',{attrs:{\"condition\":cond}})],1)}),(!_vm.element.isAssignedToUser)?_c('div',{staticClass:\"mt-4\"},[_c('h3',[_vm._v(_vm._s(_vm.$t(\"seminars.goal.title\")))]),_c('p',[_vm._v(_vm._s(_vm.$t(\"seminars.goal.description\")))]),_c(VBtn,{attrs:{\"elevation\":\"0\",\"color\":\"primary\",\"loading\":_vm.assigning,\"disabled\":_vm.assigning},on:{\"click\":_vm.assignToGoal}},[_c('span',[_vm._v(_vm._s(_vm.$t(\"seminars.goal.assign\")))])])],1):_vm._e(),_c('div',{staticClass:\"d-flex\"},[_c(VSpacer),_c(VBtn,{attrs:{\"elevation\":\"0\",\"loading\":_vm.refreshing,\"disabled\":_vm.refreshing},on:{\"click\":function () { return _vm.refresh(true); }}},[_c('span',[_vm._v(_vm._s(_vm.$t(\"seminars.vr_training.refresh\")))]),_c(VIcon,{attrs:{\"right\":\"\"}},[_vm._v(\"mdi-refresh\")])],1)],1)],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport Vue from \"vue\";\r\nimport { Action, Getter } from \"vuex-class\";\r\nimport { Component, Prop } from \"vue-property-decorator\";\r\n\r\nimport { GetSubsRequest, Goal, Seminar, SeminarElement } from \"@/core/models\";\r\n\r\nimport ConditionDisplay from \"@/views/goals/components/ConditionDisplay.vue\";\r\nimport SubmissionFooter from \"./SubmissionFooter.vue\";\r\n\r\n@Component({ components: { SubmissionFooter, ConditionDisplay } })\r\nexport default class GoalElement extends Vue {\r\n @Prop({ default: () => undefined }) seminar?: Seminar;\r\n @Prop({ default: () => undefined }) element?: SeminarElement;\r\n\r\n @Getter(\"goals/getAssignedGoals\") goals!: Goal[];\r\n @Action(\"goals/assignToGoal\")\r\n assignToGoalAction!: (id: number) => Promise;\r\n\r\n @Action(\"seminars/getSubmissions\")\r\n getSubmissions!: (r: GetSubsRequest) => Promise;\r\n @Action(\"seminars/refreshGoalElement\")\r\n refreshGoalElement!: (d: {\r\n element: SeminarElement;\r\n makeCall: boolean;\r\n }) => Promise;\r\n @Action(\"seminars/setAssignedToGoal\")\r\n setAssignedToGoalAction!: (e: SeminarElement) => Promise;\r\n\r\n @Action(\"displaySnackbar\") displaySnackbar!: (m: string) => void;\r\n\r\n // tood show skipped submission\r\n\r\n assigning = false;\r\n async assignToGoal() {\r\n if (this.element?.type !== \"goal\") return;\r\n\r\n console.debug(\"[goals] element\", this.element);\r\n this.assigning = true;\r\n await this.assignToGoalAction(this.element.goalId);\r\n await this.setAssignedToGoalAction(this.element);\r\n this.assigning = false;\r\n }\r\n\r\n refreshing = false;\r\n async refresh(makeCall = false) {\r\n if (!this.element) return;\r\n\r\n this.refreshing = await this.refreshGoalElement({\r\n element: this.element,\r\n makeCall,\r\n });\r\n\r\n if (makeCall)\r\n window.addEventListener(\"got-goals\", () => this.refresh(false));\r\n }\r\n\r\n beforeDestroy() {\r\n window.removeEventListener(\"got-goals\", () => this.refresh(false));\r\n }\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--15-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GoalElement.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--15-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GoalElement.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./GoalElement.vue?vue&type=template&id=1a5600b0&\"\nimport script from \"./GoalElement.vue?vue&type=script&lang=ts&\"\nexport * from \"./GoalElement.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VIcon } from 'vuetify/lib/components/VIcon';\nimport { VProgressLinear } from 'vuetify/lib/components/VProgressLinear';\nimport { VSheet } from 'vuetify/lib/components/VSheet';\n\nvar render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"wrapper\"},[(_vm.seminar)?_c(VSheet,{staticClass:\"py-4 px-8 mb-4\",attrs:{\"rounded\":\"\"}},[_c('div',{staticClass:\"py-4 d-flex\"},[_c('div',{staticClass:\"flex-1\"},[_c('div',{staticClass:\"mb-2 accentText--text font-weight-bold\"},[_vm._v(\" \"+_vm._s(_vm.$t(\"seminars.percentComplete\", { percent: _vm.percent }))+\" \")]),_c(VProgressLinear,{staticStyle:{\"width\":\"200px\"},attrs:{\"value\":_vm.percent,\"height\":\"8px\",\"rounded\":\"\"}})],1),_c('div',{staticClass:\"d-flex\"},[(_vm.seminar.owner.email === _vm.myEmail)?_c(VBtn,{attrs:{\"icon\":\"\",\"small\":\"\",\"color\":\"accentText\"},on:{\"click\":_vm.openEdit}},[_c(VIcon,[_vm._v(\"mdi-pencil\")])],1):_vm._e(),_c('div',{staticClass:\"mx-2\"}),_c(VBtn,{attrs:{\"small\":\"\",\"outlined\":\"\",\"color\":\"accentText\",\"loading\":_vm.skipping,\"disabled\":_vm.skipping},on:{\"click\":_vm.skipElement}},[_c('span',[_vm._v(_vm._s(_vm.$t(\"seminars.skipTask\")))])])],1)]),_c('div',{staticClass:\"overline mt-4\"},[_vm._v(_vm._s(_vm.block.title))]),_c('h1',{staticClass:\"mb-4 mt-n2\"},[_vm._v(_vm._s(_vm.element.title))]),(_vm.element.body !== null)?_c('div',{domProps:{\"innerHTML\":_vm._s(_vm.element.body)}}):_vm._e(),_c('div',{staticClass:\"content\"},[(_vm.element.type === 'watch_video')?_c('WatchVideo',{attrs:{\"element\":_vm.element}}):(_vm.element.type === 'video_presentation')?_c('RecordVideo',{attrs:{\"element\":_vm.element,\"seminar\":_vm.seminar}}):(_vm.element.type === 'give_feedback')?_c('GiveFeedback',{attrs:{\"element\":_vm.element,\"seminar\":_vm.seminar}}):(_vm.element.type === 'watch_feedback')?_c('WatchFeedback',{attrs:{\"element\":_vm.element}}):(_vm.element.type === 'gap_text')?_c('GapText',{attrs:{\"element\":_vm.element,\"seminar\":_vm.seminar}}):(_vm.element.type === 'rephrase')?_c('Rephrase',{attrs:{\"element\":_vm.element,\"seminar\":_vm.seminar}}):(_vm.element.type === 'categorize')?_c('Categorize',{attrs:{\"element\":_vm.element,\"seminar\":_vm.seminar}}):(_vm.element.type === 'vr_training')?_c('VRTraining',{attrs:{\"element\":_vm.element,\"seminar\":_vm.seminar}}):(_vm.element.type === 'goal')?_c('GoalElement',{attrs:{\"element\":_vm.element,\"seminar\":_vm.seminar}}):_vm._e(),(_vm.shouldShowControls)?_c('ElementControls',{attrs:{\"is-last\":_vm.isLast,\"submit\":function () {}}}):_vm._e()],1)]):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport Vue from \"vue\";\r\nimport { Action, Getter } from \"vuex-class\";\r\nimport { Component, Watch } from \"vue-property-decorator\";\r\nimport { Seminar, SeminarBlock, SeminarElement } from \"@/core/models\";\r\n\r\nimport WatchVideo from \"./WatchVideo.vue\";\r\nimport RecordVideo from \"./RecordVideo.vue\";\r\nimport GiveFeedback from \"./GiveFeedback.vue\";\r\nimport WatchFeedback from \"./WatchFeedback.vue\";\r\nimport GapText from \"./GapText.vue\";\r\nimport Rephrase from \"./Rephrase.vue\";\r\nimport Categorize from \"./Categorize.vue\";\r\nimport VRTraining from \"./VRTraining.vue\";\r\nimport GoalElement from \"./GoalElement.vue\";\r\nimport ElementControls from \"./ElementControls.vue\";\r\n\r\nimport { elementStatus } from \"@/core/utils/seminars\";\r\n\r\n@Component({\r\n components: {\r\n WatchVideo,\r\n RecordVideo,\r\n GiveFeedback,\r\n WatchFeedback,\r\n GapText,\r\n Rephrase,\r\n Categorize,\r\n VRTraining,\r\n GoalElement,\r\n ElementControls,\r\n },\r\n})\r\nexport default class SeminarContent extends Vue {\r\n @Getter(\"profile/getUserEmail\") myEmail!: string;\r\n @Getter(\"profile/id\") userId!: string;\r\n\r\n @Getter(\"seminars/block\") block?: SeminarBlock;\r\n @Getter(\"seminars/selected\") seminar?: Seminar;\r\n @Getter(\"seminars/blocks\") blocks!: SeminarBlock[];\r\n @Getter(\"seminars/element\") element?: SeminarElement;\r\n\r\n @Action(\"seminars/next\") next!: () => void;\r\n @Action(\"seminars/skip\") skip!: (el: SeminarElement) => Promise;\r\n\r\n percent = 0;\r\n calcPercent() {\r\n if (!this.block) return;\r\n const complete = this.block.elements.filter(\r\n x => elementStatus(x, this.seminar) === \"completed\",\r\n ).length;\r\n const val = Math.round((complete / this.block.elements.length) * 100);\r\n this.percent = isNaN(val) ? 0 : val;\r\n }\r\n\r\n @Watch(\"seminar\", { immediate: true })\r\n seminarChanged() {\r\n this.calcPercent();\r\n }\r\n @Watch(\"block\", { immediate: true })\r\n blockChanged() {\r\n this.calcPercent();\r\n }\r\n\r\n openEdit() {\r\n if (!this.seminar || !this.block || !this.element) return;\r\n const route = `/seminars/edit/${this.seminar.id}?block=${this.block.id}&element=${this.element.id}`;\r\n this.$router.push(route);\r\n }\r\n\r\n get isLast() {\r\n if (!this.blocks?.length || !this.block || !this.element) return false;\r\n const blocksWithEls = this.blocks.filter(x => x.elements.length > 0);\r\n const lastBlock = blocksWithEls[blocksWithEls.length - 1];\r\n const lastElement = lastBlock.elements[lastBlock.elements.length - 1];\r\n return (\r\n lastElement.id === this.element.id && this.element.type === \"read_text\"\r\n );\r\n }\r\n get shouldShowControls() {\r\n return (\r\n this.element?.type === \"read_text\" ||\r\n this.element?.type === \"watch_video\" ||\r\n this.element?.type === \"vr_training\"\r\n );\r\n }\r\n\r\n skipping = false;\r\n async skipElement() {\r\n if (!this.element) return;\r\n this.skipping = true;\r\n try {\r\n await this.skip(this.element);\r\n this.next();\r\n } catch (error) {\r\n console.debug(error);\r\n }\r\n this.skipping = false;\r\n }\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--15-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Content.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--15-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Content.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Content.vue?vue&type=template&id=89b35adc&scoped=true&\"\nimport script from \"./Content.vue?vue&type=script&lang=ts&\"\nexport * from \"./Content.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./Content.vue?vue&type=style&index=0&id=89b35adc&prod&scoped=true&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"89b35adc\",\n null\n \n)\n\nexport default component.exports","import { VDivider } from 'vuetify/lib/components/VDivider';\nimport { VSpacer } from 'vuetify/lib/components/VGrid';\n\nvar render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c(VDivider,{staticClass:\"my-4\"}),(_vm.submissions.length > 0)?_c('div',_vm._l((_vm.submissions),function(submission,i){return _c('div',{key:i,staticClass:\"mt-4\"},[_c('VideoSubmission',{attrs:{\"id\":(\"presentation_\" + (submission.userId) + \"_\" + i),\"seminar\":_vm.seminar,\"submission\":submission,\"horizontal\":true}})],1)}),0):_vm._e(),(_vm.canRecord)?_c('VideoRecorder',{attrs:{\"loading\":_vm.submitting,\"can-share\":_vm.canShare,\"is-timed\":_vm.element.isTimed,\"expected-len\":_vm.element.expectedLen,\"max-len\":_vm.element.maxLen,\"can-ask-for-feedback\":false},on:{\"upload\":_vm.upload}}):_vm._e(),_c('div',{staticClass:\"d-flex mt-4\"},[(_vm.skipped)?_c('div',[_c('h4',{staticClass:\"mt-4\"},[_vm._v(\" This task was skipped on \"+_vm._s(_vm._f(\"formatwithtime\")(_vm.skipped.createdAt))+\". \")])]):_vm._e(),_c(VSpacer),_c('div',[_c('div',{staticClass:\"px-4 py-2 rounded-lg lightgray2 mb-4\"},[_c('div',[_vm._v(\" \"+_vm._s(_vm.submissions.length)+\"/\"+_vm._s(_vm.maxNumSubs)+\" \"+_vm._s(_vm.$t(\"seminars.video_presentation.submissions\"))+\" \")]),(_vm.submissions.length < _vm.numReq)?_c('div',[_vm._v(\" \"+_vm._s(_vm.numReq)+\" \"+_vm._s(_vm.$t(\"seminars.video_presentation.reqSubmissions\"))+\" \")]):_vm._e()]),(_vm.canShare)?_c('div',{staticClass:\"px-4 py-2 rounded-lg lightgray2\"},[_c('span',[_vm._v(\" \"+_vm._s(_vm.sharedSubs.length)+\"/\"+_vm._s(_vm.maxNumShared)+\" \"+_vm._s(_vm.$t(\"seminars.video_presentation.sharedSubmissions\"))+\" \"),(_vm.sharedSubs.length < _vm.numReqShared)?_c('div',[_vm._v(\" \"+_vm._s(_vm.numReqShared)+\" \"+_vm._s(_vm.$t(\"seminars.video_presentation.reqSharedSubmissions\"))+\" \")]):_vm._e()])]):_vm._e()])],1),_c('ElementControls',{attrs:{\"submit\":function () {}}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport Vue from \"vue\";\r\nimport { Action } from \"vuex-class\";\r\nimport { Component, Prop } from \"vue-property-decorator\";\r\n\r\nimport api from \"@/core/utils/api\";\r\nimport { Seminar, SeminarElement, Submission } from \"@/core/models\";\r\n\r\nimport VideoRecorder from \"@/components/common/VideoRecorder.vue\";\r\nimport VideoPlayer from \"@/components/common/VideoPlayer.vue\";\r\nimport SubmissionFooter from \"./SubmissionFooter.vue\";\r\nimport ElementControls from \"./ElementControls.vue\";\r\nimport VideoSubmission from \"./VideoSubmission.vue\";\r\n\r\n@Component({\r\n components: {\r\n VideoRecorder,\r\n SubmissionFooter,\r\n VideoPlayer,\r\n ElementControls,\r\n VideoSubmission,\r\n },\r\n})\r\nexport default class RecordVideoElement extends Vue {\r\n @Prop({ default: () => ({} as Seminar) }) seminar!: Seminar;\r\n @Prop({ default: () => ({} as SeminarElement) }) element!: SeminarElement;\r\n @Action(\"seminars/addSubmission\") addSubmission!: (s: Submission) => void;\r\n\r\n get submissions() {\r\n return (\r\n this.seminar.submissions?.filter(\r\n x => x.elementId === this.element.id && !x.skipped,\r\n ) || []\r\n );\r\n }\r\n\r\n get sharedSubs() {\r\n return (\r\n this.seminar.submissions?.filter(\r\n x => x.elementId === this.element.id && !x.skipped && x.isShared,\r\n ) || []\r\n );\r\n }\r\n\r\n get skipped() {\r\n return this.seminar?.submissions?.find(\r\n x => x.skipped && x.elementId === this.element.id,\r\n );\r\n }\r\n\r\n get numReq() {\r\n if (this.element.type !== \"video_presentation\") return 0;\r\n return this.element.requiredSubmissions || 1;\r\n }\r\n\r\n get numReqShared() {\r\n if (this.element.type !== \"video_presentation\") return 0;\r\n return this.element.requiredNumShared || 0;\r\n }\r\n\r\n get maxNumSubs() {\r\n if (this.element.type !== \"video_presentation\") return 1;\r\n return this.element.maxSubmissions || 10;\r\n }\r\n\r\n get maxNumShared() {\r\n if (this.element.type !== \"video_presentation\") return 1;\r\n return this.element.maxNumShared || 2;\r\n }\r\n\r\n get canRecord() {\r\n if (this.element.type !== \"video_presentation\") return false;\r\n return this.submissions.length < this.maxNumSubs;\r\n }\r\n\r\n get canShare() {\r\n if (this.element.type !== \"video_presentation\") return false;\r\n const maxShared = this.element.maxNumShared;\r\n return (\r\n this.element.rateableSubmissions &&\r\n maxShared &&\r\n this.sharedSubs.length < maxShared\r\n );\r\n }\r\n\r\n submitting = false;\r\n async upload({\r\n blob,\r\n isShared,\r\n askForFeedback,\r\n }: {\r\n blob: Blob;\r\n isShared: boolean;\r\n askForFeedback: boolean;\r\n }) {\r\n this.submitting = true;\r\n try {\r\n const data = new FormData();\r\n const file = new File([blob], \"record_video.mp4\", { type: \"video/mp4\" });\r\n data.append(\"elementId\", this.element.id.toString());\r\n data.append(\"isShared\", isShared.toString());\r\n data.append(\"seminarId\", this.seminar.id.toString());\r\n data.append(\"askForFeedback\", askForFeedback.toString());\r\n data.append(\"videoFile\", file);\r\n const submission = (await api.post(\r\n \"/api/Submissions/VideoPresentation\",\r\n data,\r\n { headers: { \"Content-Type\": \"multipart/form-data\" } },\r\n )) as Submission;\r\n submission.isShared = isShared;\r\n this.addSubmission(submission);\r\n } catch (error) {\r\n console.log(error);\r\n }\r\n this.submitting = false;\r\n }\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--15-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RecordVideo.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--15-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RecordVideo.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./RecordVideo.vue?vue&type=template&id=54be5985&\"\nimport script from \"./RecordVideo.vue?vue&type=script&lang=ts&\"\nexport * from \"./RecordVideo.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[(_vm.element.videoURI)?_c('div',{staticStyle:{\"max-width\":\"1000px\",\"margin\":\"0 auto\"}},[_c('VideoPlayer',{attrs:{\"id\":(\"watch_video_\" + (_vm.element.id)),\"url\":_vm.element.videoURI}})],1):_c('div',[_vm._v(\"Video not found\")])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\r\nimport Vue from \"vue\";\r\nimport { Component, Prop } from \"vue-property-decorator\";\r\n\r\nimport { SeminarElement } from \"@/core/models\";\r\nimport VideoPlayer from \"@/components/common/VideoPlayer.vue\";\r\n\r\n@Component({ components: { VideoPlayer } })\r\nexport default class WatchVideoElement extends Vue {\r\n @Prop({ default: () => ({} as SeminarElement) }) element!: SeminarElement;\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--15-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./WatchVideo.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--15-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./WatchVideo.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./WatchVideo.vue?vue&type=template&id=904eb0f0&\"\nimport script from \"./WatchVideo.vue?vue&type=script&lang=ts&\"\nexport * from \"./WatchVideo.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import { VCol } from 'vuetify/lib/components/VGrid';\n\nvar render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('h3',[_vm._v(_vm._s(_vm.$t(\"seminars.watch_feedback.title\")))]),_c('p',[_vm._v(_vm._s(_vm.$t(\"seminars.watch_feedback.text\")))]),(_vm.videos.length > 0)?_c(VCol,{attrs:{\"cols\":\"12\",\"md\":\"8\"}},_vm._l((_vm.videos),function(video,i){return _c('div',{key:i,staticClass:\"mb-4\"},[_c('VideoSubmission',{attrs:{\"id\":(\"watch_feedback_\" + i),\"seminar\":_vm.seminar,\"submission\":video},on:{\"rate\":_vm.rateFeedback}})],1)}),0):_c('div',[_vm._v(_vm._s(_vm.$t(\"seminars.watch_feedback.no_feedback\")))]),(_vm.skipped)?_c('div',[_c('h4',{staticClass:\"mt-4\"},[_vm._v(\" This task was skipped on \"+_vm._s(_vm._f(\"formatwithtime\")(_vm.skipped.createdAt))+\". \")])]):_vm._e(),_c('ElementControls',{attrs:{\"submit\":_vm.submit}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport Vue from \"vue\";\r\nimport { Action, Getter } from \"vuex-class\";\r\nimport { Component, Prop, Watch } from \"vue-property-decorator\";\r\n\r\nimport {\r\n RateVideoAction,\r\n Seminar,\r\n SeminarElement,\r\n SimpleUser,\r\n Submission,\r\n} from \"@/core/models\";\r\nimport api from \"@/core/utils/api\";\r\nimport VideoSubmission from \"./VideoSubmission.vue\";\r\nimport ElementControls from \"./ElementControls.vue\";\r\n\r\n@Component({ components: { VideoSubmission, ElementControls } })\r\nexport default class WatchFeedbackElement extends Vue {\r\n @Prop({ default: () => ({} as SeminarElement) }) element!: SeminarElement;\r\n\r\n @Getter(\"profile/id\") userId!: string;\r\n\r\n @Getter(\"seminars/users\") users!: SimpleUser[];\r\n @Getter(\"seminars/selected\") seminar?: Seminar;\r\n\r\n @Action(\"seminars/next\") next!: () => void;\r\n @Action(\"seminars/addSubmission\") addSubmission!: (s: Submission) => void;\r\n @Action(\"seminars/rateFeedbackVideo\") rateFeedbackVideo!: (d: any) => void;\r\n\r\n user(id: string) {\r\n const one = this.users.find(x => x.id === id);\r\n if (!one) return \"Seminar owner\";\r\n return `${one.username} (${one.email})`;\r\n }\r\n\r\n get skipped() {\r\n return this.seminar?.submissions?.find(\r\n x => x.skipped && x.elementId === this.element.id,\r\n );\r\n }\r\n\r\n videos: Submission[] = [];\r\n loading = false;\r\n async getVideos() {\r\n if (!this.seminar) return;\r\n this.loading = true;\r\n try {\r\n this.videos = (await api.get(\r\n `/api/Elements/Feedback/${this.seminar.id}`,\r\n )) as Submission[];\r\n } catch (error) {\r\n console.log(error);\r\n }\r\n this.loading = false;\r\n }\r\n\r\n async submit() {\r\n if (!this.videos.length) throw new Error(\"no_video\");\r\n const submission = (await api.post(\"/api/Submissions/WatchFeedback\", {\r\n elementId: this.element.id,\r\n seminarId: this.element.seminarId,\r\n })) as Submission;\r\n this.addSubmission(submission);\r\n this.next();\r\n }\r\n\r\n rateFeedback(d: RateVideoAction) {\r\n if (!this.seminar) return;\r\n this.rateFeedbackVideo({ ...d, seminarId: this.seminar.id });\r\n }\r\n\r\n @Watch(\"seminar\", { immediate: true })\r\n seminarUpdated() {\r\n this.getVideos();\r\n }\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--15-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./WatchFeedback.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--15-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./WatchFeedback.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./WatchFeedback.vue?vue&type=template&id=13f7a9d6&\"\nimport script from \"./WatchFeedback.vue?vue&type=script&lang=ts&\"\nexport * from \"./WatchFeedback.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import { VDivider } from 'vuetify/lib/components/VDivider';\n\nvar render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_vm._l((_vm.sentences),function(_,i){return _c('div',{key:((_vm.submission.createdAt) + \"_\" + i),staticClass:\"rephrase-row\"},[_c('div',{staticClass:\"left\",class:{ first: i === 0, last: i === _vm.sentences.length - 1 }},[_c('div',[_vm._v(_vm._s(_vm.sentences[i]))]),(i !== _vm.sentences.length - 1)?_c(VDivider,{staticClass:\"mt-2 mb-n2\"}):_vm._e()],1),_c('div',{staticClass:\"middle\",class:{ first: i === 0, last: i === _vm.sentences.length - 1 }},[_c('div',[_vm._v(_vm._s(_vm.answers[i]))]),(i !== _vm.sentences.length - 1)?_c(VDivider,{staticClass:\"mt-2 mb-n2\"}):_vm._e()],1),_c('div',{staticClass:\"right\",class:{ first: i === 0, last: i === _vm.sentences.length - 1 }},[_c('div',[_vm._v(_vm._s(_vm.solutions[i]))]),(i !== _vm.sentences.length - 1)?_c(VDivider,{staticClass:\"mt-2 mb-n2\"}):_vm._e()],1)])}),_c('SubmissionFooter',{attrs:{\"submission\":_vm.submission}})],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport Vue from \"vue\";\r\nimport { Component, Prop } from \"vue-property-decorator\";\r\n\r\nimport { SeminarElement, Submission } from \"@/core/models\";\r\nimport SubmissionFooter from \"./SubmissionFooter.vue\";\r\n\r\n@Component({ components: { SubmissionFooter } })\r\nexport default class RephraseSubmission extends Vue {\r\n @Prop({ default: () => undefined }) element?: SeminarElement;\r\n @Prop({ default: () => undefined }) submission?: Submission;\r\n\r\n sentences: string[] = [];\r\n solutions: string[] = [];\r\n answers: string[] = [];\r\n created() {\r\n if (\r\n this.element?.type !== \"rephrase\" ||\r\n this.submission?.type !== \"rephrase\"\r\n )\r\n return;\r\n this.sentences = this.element.sentences;\r\n this.solutions = this.element.answers;\r\n this.answers = (this.submission as any).answers;\r\n }\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--15-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RephraseSubmission.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--15-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RephraseSubmission.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./RephraseSubmission.vue?vue&type=template&id=413c9b5b&\"\nimport script from \"./RephraseSubmission.vue?vue&type=script&lang=ts&\"\nexport * from \"./RephraseSubmission.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',{domProps:{\"innerHTML\":_vm._s(_vm.formattedText)}}),_c('SubmissionFooter',{attrs:{\"submission\":_vm.submission}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\r\nimport Vue from \"vue\";\r\nimport { Component, Prop } from \"vue-property-decorator\";\r\n\r\nimport { SeminarElement, Submission } from \"@/core/models\";\r\nimport SubmissionFooter from \"./SubmissionFooter.vue\";\r\n\r\n@Component({ components: { SubmissionFooter } })\r\nexport default class GapTextSubmission extends Vue {\r\n @Prop({ default: () => undefined }) element?: SeminarElement;\r\n @Prop({ default: () => undefined }) submission?: Submission;\r\n\r\n get formattedText() {\r\n if (this.element?.type !== \"gap_text\") return \"<>\";\r\n const answers =\r\n this.submission?.type !== \"gap_text\"\r\n ? new Array(this.element.answers.length).fill(\"\")\r\n : this.submission.answers;\r\n\r\n let base = this.element.text.replaceAll(/[\\n\\r+]/g, \"
\");\r\n this.element.answers.forEach(\r\n (x, i) =>\r\n (base = base.replace(\"__\", `${x} (${answers[i]})`)),\r\n );\r\n return base;\r\n }\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--15-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GapTextSubmission.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--15-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GapTextSubmission.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./GapTextSubmission.vue?vue&type=template&id=00bc1113&\"\nimport script from \"./GapTextSubmission.vue?vue&type=script&lang=ts&\"\nexport * from \"./GapTextSubmission.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","'use strict';\nvar $ = require('../internals/export');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar isRegExp = require('../internals/is-regexp');\nvar getRegExpFlags = require('../internals/regexp-flags');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar IS_PURE = require('../internals/is-pure');\n\nvar REPLACE = wellKnownSymbol('replace');\nvar RegExpPrototype = RegExp.prototype;\n\n// `String.prototype.replaceAll` method\n// https://github.com/tc39/proposal-string-replace-all\n$({ target: 'String', proto: true }, {\n replaceAll: function replaceAll(searchValue, replaceValue) {\n var O = requireObjectCoercible(this);\n var IS_REG_EXP, flags, replacer, string, searchString, template, result, position, index;\n if (searchValue != null) {\n IS_REG_EXP = isRegExp(searchValue);\n if (IS_REG_EXP) {\n flags = String(requireObjectCoercible('flags' in RegExpPrototype\n ? searchValue.flags\n : getRegExpFlags.call(searchValue)\n ));\n if (!~flags.indexOf('g')) throw TypeError('`.replaceAll` does not allow non-global regexes');\n }\n replacer = searchValue[REPLACE];\n if (replacer !== undefined) {\n return replacer.call(searchValue, O, replaceValue);\n } else if (IS_PURE && IS_REG_EXP) {\n return String(O).replace(searchValue, replaceValue);\n }\n }\n string = String(O);\n searchString = String(searchValue);\n if (searchString === '') return replaceAll.call(string, /(?:)/g, replaceValue);\n template = string.split(searchString);\n if (typeof replaceValue !== 'function') {\n return template.join(String(replaceValue));\n }\n result = template[0];\n position = result.length;\n for (index = 1; index < template.length; index++) {\n result += String(replaceValue(searchString, position, string));\n position += searchString.length + template[index].length;\n result += template[index];\n }\n return result;\n }\n});\n","import { VCol } from 'vuetify/lib/components/VGrid';\n\nvar render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[(_vm.submissions.length > 0)?_c('div',[_c('h3',{staticClass:\"mb-4\"},[_vm._v(_vm._s(_vm.$t(\"seminars.give_feedback.yourSubmissions\")))]),_vm._l((_vm.submissions),function(submission,i){return _c('VideoSubmission',{key:i,attrs:{\"id\":(\"feedback_\" + (submission.userId) + \"_\" + (submission.feedbackFor)),\"seminar\":_vm.seminar,\"submission\":submission,\"horizontal\":true}})})],2):_c('div',[_c('h3',[_vm._v(_vm._s(_vm.$t(\"seminars.give_feedback.title\")))]),_c('p',[_vm._v(_vm._s(_vm.$t(\"seminars.give_feedback.text\")))]),(_vm.video)?_c('div',[_c(VCol,{attrs:{\"cols\":\"12\",\"md\":\"8\"}},[_c('VideoPlayer',{attrs:{\"id\":(\"give_feedback_to_\" + (_vm.video.userId)),\"url\":_vm.video.uri}})],1),_c('VideoRecorder',{attrs:{\"can-share\":false,\"default-shared\":_vm.canShare,\"loading\":_vm.uploading,\"is-timed\":_vm.element.isTimed,\"expected-len\":_vm.element.expectedLen,\"max-len\":_vm.element.maxLen},on:{\"upload\":_vm.upload}})],1):_c('div',[_c('h3',[_vm._v(_vm._s(_vm.$t(\"seminars.give_feedback.noVideo\")))]),_c('p',[_vm._v(\" \"+_vm._s(_vm.$t(\"seminars.give_feedback.noVideoDetail\"))+\" \")])])]),(_vm.skipped)?_c('div',[_c('h4',{staticClass:\"mt-4\"},[_vm._v(\" This task was skipped on \"+_vm._s(_vm._f(\"formatwithtime\")(_vm.skipped.createdAt))+\". \")])]):_vm._e(),_c('ElementControls',{attrs:{\"submit\":function () {}}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport Vue from \"vue\";\r\nimport { Action, Getter } from \"vuex-class\";\r\nimport { Component, Prop, Watch } from \"vue-property-decorator\";\r\n\r\nimport api from \"@/core/utils/api\";\r\nimport VideoRecorder from \"@/components/common/VideoRecorder.vue\";\r\nimport VideoPlayer from \"@/components/common/VideoPlayer.vue\";\r\nimport { Seminar, SeminarElement, Submission } from \"@/core/models\";\r\nimport ElementControls from \"./ElementControls.vue\";\r\nimport VideoSubmission from \"./VideoSubmission.vue\";\r\n\r\ntype Video = {\r\n subId: number;\r\n userId: string;\r\n uri: string;\r\n};\r\n\r\n@Component({\r\n components: {\r\n VideoRecorder,\r\n VideoPlayer,\r\n ElementControls,\r\n VideoSubmission,\r\n },\r\n})\r\nexport default class GiveFeedbackElement extends Vue {\r\n @Getter(\"seminars/selectedId\") id!: number;\r\n @Prop({ default: () => undefined }) seminar?: Seminar;\r\n @Prop({ default: () => ({} as SeminarElement) }) element!: SeminarElement;\r\n @Action(\"seminars/addSubmission\") addSubmission!: (s: Submission) => void;\r\n\r\n get submissions() {\r\n return (\r\n this.seminar?.submissions?.filter(\r\n x => x.elementId === this.element.id && !x.skipped,\r\n ) || []\r\n );\r\n }\r\n\r\n get skipped() {\r\n return this.seminar?.submissions?.find(\r\n x => x.skipped && x.elementId === this.element.id,\r\n );\r\n }\r\n\r\n get canShare() {\r\n if (this.element.type !== \"give_feedback\") return false;\r\n return this.element.rateableSubmissions || false;\r\n }\r\n\r\n loading = false;\r\n video: Video | null = null;\r\n async getVideo() {\r\n this.loading = true;\r\n try {\r\n const end = `/api/Elements/RandomVideoPresentation/${this.element.id}`;\r\n this.video = (await api.get(end)) || null;\r\n console.log(this.video);\r\n } catch (error) {\r\n console.log(error);\r\n }\r\n this.loading = false;\r\n }\r\n\r\n submitted = false;\r\n uploading = false;\r\n async upload({\r\n blob,\r\n askForFeedback,\r\n }: {\r\n blob: Blob;\r\n askForFeedback: boolean;\r\n }) {\r\n if (!this.video) throw new Error(\"no_video\");\r\n\r\n this.uploading = true;\r\n try {\r\n const data = new FormData();\r\n data.append(\"elementId\", this.element.id.toString());\r\n data.append(\"feedbackFor\", this.video.userId);\r\n data.append(\"feedbackForSubmission\", this.video.subId.toString());\r\n data.append(\"isShared\", this.canShare.toString());\r\n data.append(\"videoFile\", blob);\r\n data.append(\"seminarId\", this.element.seminarId.toString());\r\n data.append(\"askForFeedback\", askForFeedback.toString());\r\n const submission = (await api.post(\r\n \"/api/Submissions/GiveFeedback\",\r\n data,\r\n { headers: { \"Content-Type\": \"multipart/form-data\" } },\r\n )) as Submission;\r\n this.addSubmission(submission);\r\n } catch (error) {\r\n console.log(error);\r\n }\r\n this.uploading = false;\r\n }\r\n\r\n @Watch(\"id\", { immediate: true })\r\n seminarUpdated() {\r\n if (!this.id) return;\r\n this.getVideo();\r\n }\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--15-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GiveFeedback.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--15-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GiveFeedback.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./GiveFeedback.vue?vue&type=template&id=dbf356f0&\"\nimport script from \"./GiveFeedback.vue?vue&type=script&lang=ts&\"\nexport * from \"./GiveFeedback.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import { VDivider } from 'vuetify/lib/components/VDivider';\nimport { VTextField } from 'vuetify/lib/components/VTextField';\n\nvar render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c(VDivider,{staticClass:\"my-4\"}),(_vm.submissions.length > 0)?_c('div',_vm._l((_vm.submissions),function(submission,i){return _c('GapTextSubmission',{key:i,staticClass:\"mt-4\",attrs:{\"element\":_vm.element,\"submission\":submission}})}),1):_c('div',[_c('div',[_c('div',_vm._l((_vm.parts),function(line,i){return _c('div',{key:i,staticClass:\"d-flex flex-wrap align-baseline\"},_vm._l((line),function(part,j){return _c('div',{key:j,staticClass:\"d-flex flex-wrap align-baseline\"},[_c('span',[_vm._v(_vm._s(part))]),(j !== line.length - 1)?_c(VTextField,{staticStyle:{\"max-width\":\"100px\",\"padding\":\"0px 10px\",\"margin\":\"0\"},attrs:{\"hide-details\":\"\",\"autocomplete\":\"prezp\"},model:{value:(_vm.inputs[i][j]),callback:function ($$v) {_vm.$set(_vm.inputs[i], j, $$v)},expression:\"inputs[i][j]\"}}):_vm._e()],1)}),0)}),0)])]),(_vm.skipped)?_c('div',[_c('h4',{staticClass:\"mt-4\"},[_vm._v(\" This task was skipped on \"+_vm._s(_vm._f(\"formatwithtime\")(_vm.skipped.createdAt))+\". \")])]):_vm._e(),_c('ElementControls',{attrs:{\"submit\":_vm.submit}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport Vue from \"vue\";\r\nimport { Action } from \"vuex-class\";\r\nimport { Component, Prop, Watch } from \"vue-property-decorator\";\r\n\r\nimport api from \"@/core/utils/api\";\r\nimport { Seminar, SeminarElement, Submission } from \"@/core/models\";\r\n\r\nimport GapTextSubmission from \"./GapTextSubmission.vue\";\r\nimport ElementControls from \"./ElementControls.vue\";\r\n\r\n@Component({ components: { GapTextSubmission, ElementControls } })\r\nexport default class GapTextElement extends Vue {\r\n @Prop({ default: () => undefined }) seminar?: Seminar;\r\n @Prop({ default: () => ({} as SeminarElement) }) element!: SeminarElement;\r\n @Action(\"seminars/addSubmission\") addSubmission!: (s: Submission) => void;\r\n @Action(\"displaySnackbar\") displaySnackbar!: (m: string) => void;\r\n\r\n inputs: string[][] = [];\r\n get parts() {\r\n if (this.element.type !== \"gap_text\") return [];\r\n return this.element.text.split(\"\\n\").map(x => x.split(\"__\"));\r\n }\r\n @Watch(\"element\", { immediate: true })\r\n elementChanged() {\r\n if (this.element.type !== \"gap_text\") return;\r\n this.parts.forEach(x => {\r\n const gapCount = x\r\n .map(x => x.split(\"__\").length)\r\n .reduce((cum, cur) => cum + cur);\r\n this.inputs.push(new Array(gapCount - 1).fill(\"\"));\r\n });\r\n }\r\n\r\n get submissions() {\r\n return (\r\n this.seminar?.submissions?.filter(\r\n x => x.elementId === this.element.id && !x.skipped,\r\n ) || []\r\n );\r\n }\r\n\r\n get skipped() {\r\n return this.seminar?.submissions?.find(\r\n x => x.skipped && x.elementId === this.element.id,\r\n );\r\n }\r\n\r\n submitting = false;\r\n async submit() {\r\n if (this.element.type !== \"gap_text\") throw new Error(\"invalid\");\r\n\r\n if (this.inputs.some(x => x.some(y => y.trim().length === 0))) {\r\n this.displaySnackbar(this.$t(\"seminars.gap_text.error\").toString());\r\n throw new Error(\"invalid\");\r\n }\r\n\r\n this.submitting = true;\r\n try {\r\n const data = {\r\n elementId: this.element.id,\r\n answers: this.inputs.flat(),\r\n seminarId: this.element.seminarId,\r\n };\r\n const submission = (await api.post(\r\n \"/api/Submissions/GapText\",\r\n data,\r\n )) as Submission;\r\n this.addSubmission(submission);\r\n } catch (error) {\r\n this.displaySnackbar(error.description);\r\n }\r\n this.submitting = false;\r\n }\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--15-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GapText.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--15-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GapText.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./GapText.vue?vue&type=template&id=37102781&\"\nimport script from \"./GapText.vue?vue&type=script&lang=ts&\"\nexport * from \"./GapText.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VIcon } from 'vuetify/lib/components/VIcon';\nimport { VRow } from 'vuetify/lib/components/VGrid';\nimport { VSpacer } from 'vuetify/lib/components/VGrid';\n\nvar render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('h3',[_vm._v(\" \"+_vm._s(_vm.$t(\"seminars.vr_training.requiredScore\"))+\": \"+_vm._s(_vm.element.requiredScore)+\" \")]),(_vm.submissions.length > 0)?_c('div',{staticClass:\"mt-4\"},[_c('h4',{staticClass:\"mb-4\"},[_vm._v(_vm._s(_vm.$t(\"seminars.vr_training.yourSubmissions\")))]),_vm._l((_vm.submissions),function(sub,i){return _c(VRow,{key:i,staticClass:\"mb-4\"},[_c(VCol,{staticClass:\"pa-0\",attrs:{\"cols\":\"6\",\"md\":\"1\"}},[_vm._v(\" \"+_vm._s(_vm.$t(\"seminars.vr_training.score\"))+\": \"),_c('b',[_vm._v(_vm._s(Math.round(sub.score * 10) / 10))])]),_c(VCol,{staticClass:\"pa-0\",attrs:{\"cols\":\"6\",\"md\":\"3\"}},[_c('SubmissionFooter',{attrs:{\"submission\":sub,\"margin-top\":false}})],1)],1)})],2):_vm._e(),_c('div',{staticClass:\"d-flex\"},[_c(VSpacer),_c(VBtn,{attrs:{\"elevation\":\"0\",\"loading\":_vm.getting,\"disabled\":_vm.getting},on:{\"click\":_vm.getSubs}},[_c('span',[_vm._v(_vm._s(_vm.$t(\"seminars.vr_training.refresh\")))]),_c(VIcon,{attrs:{\"right\":\"\"}},[_vm._v(\"mdi-refresh\")])],1)],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport Vue from \"vue\";\r\nimport { Action } from \"vuex-class\";\r\nimport { Component, Prop } from \"vue-property-decorator\";\r\n\r\nimport { GetSubsRequest, Seminar, SeminarElement } from \"@/core/models\";\r\nimport SubmissionFooter from \"../components/SubmissionFooter.vue\";\r\n\r\n@Component({ components: { SubmissionFooter } })\r\nexport default class VRTrainingElement extends Vue {\r\n @Prop({ default: () => undefined }) seminar?: Seminar;\r\n @Prop({ default: () => undefined }) element?: SeminarElement;\r\n @Action(\"seminars/getSubmissions\")\r\n getSubmissions!: (r: GetSubsRequest) => Promise;\r\n @Action(\"displaySnackbar\") displaySnackbar!: (m: string) => void;\r\n\r\n get submissions() {\r\n return (\r\n this.seminar?.submissions?.filter(\r\n x => x.elementId === this.element?.id && !x.skipped,\r\n ) || []\r\n );\r\n }\r\n\r\n getting = false;\r\n async getSubs() {\r\n const seminarId = this.seminar?.id;\r\n const elementId = this.element?.id;\r\n if (!seminarId) return this.displaySnackbar(\"Seminar not found\");\r\n if (!elementId) return this.displaySnackbar(\"Element not found\");\r\n\r\n this.getting = true;\r\n try {\r\n this.getSubmissions({ elementId, seminarId });\r\n } catch (error) {\r\n console.log(error);\r\n }\r\n this.getting = false;\r\n }\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--15-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./VRTraining.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--15-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./VRTraining.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./VRTraining.vue?vue&type=template&id=352cf0b7&\"\nimport script from \"./VRTraining.vue?vue&type=script&lang=ts&\"\nexport * from \"./VRTraining.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Content.vue?vue&type=style&index=0&id=89b35adc&prod&scoped=true&lang=scss&\""],"sourceRoot":""}