{"version":3,"sources":["webpack:///./src/views/course/courseReplay/courseReplay.vue","webpack:///./src/components/TCPlayer/TCPlayer.vue","webpack:///./src/components/TCPlayer/TCPlayer.js","webpack:///src/components/TCPlayer/TCPlayer.vue","webpack:///./src/components/TCPlayer/TCPlayer.vue?0188","webpack:///./src/components/TCPlayer/TCPlayer.vue?dd0d","webpack:///./src/views/course/courseReplay/courseReplay.js","webpack:///src/views/course/courseReplay/courseReplay.vue","webpack:///./src/views/course/courseReplay/courseReplay.vue?8064","webpack:///./src/views/course/courseReplay/courseReplay.vue?23bc","webpack:///./src/components/TCPlayer/TCPlayer.vue?e2c4","webpack:///./src/views/course/courseReplay/courseReplay.vue?af9e"],"names":["render","_vm","this","_c","_self","_setupProxy","staticClass","attrs","fid","on","onPlayerTimeupdate","onPlayerEnded","_v","isReplay","directives","name","rawName","value","showMoreMsgButton","expression","showLaveMsg","staticRenderFns","_m","data","selectorId","player","props","type","String","default","mounted","methods","initPlay","_this","console","log","TCPlayer","fileID","appID","Number","JSON","parse","localStorage","getItem","playbackRates","controlBar","fullscreenToggle","QualitySwitcherMenuButton","plugins","ContinuePlay","auto","text","btnText","$emit","changeFid","loadVideoByID","Config","watch","newVal","TCPlayerJs","component","courseId","liveMode","videoSrc","playerOptions","renderTime","msgShow","msgLave","videoStartBaseTime","timerArray","offsetArr","offsetNum","clearMsgList","$route","path","includes","Constant","private","class","params","id","getReplayDetail","computed","_objectSpread","mapState","userId","state","live","msgs","routeMode","Api","speaking","course","res","video_id","video_started_at","time","self","calcOffset","$","ajax","url","concat","im_record_url","dataType","jsonp","jsonpCallback","success","reverse","playVideo","$refs","videoPlayer","play","renderMsg","currentTime","_this2","forEach","ele","index","timestamp","isShow","handleMsgShowInBox","msg","_this3","accountObj","from_account","account","identity","nickname","msgContent","body","msg_type","EXT_IM","handleGroupTextMsg","msg_content","then","addMsg","send","content","avatar","$nextTick","msgbox","document","querySelector","scrollTop","scrollHeight","img","images","arr","offset","parseInt","duration","push","baseTimeTamp","Math","floor","i","length","calcTime","_this4","mapActions","components","ChatList","CourseReplayJs"],"mappings":"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","file":"js/chunk-779711a5.98636d2e.js","sourcesContent":["var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',{staticClass:\"courseReplay\"},[_c('div',{staticClass:\"course_video\"},[_c('t-c-player',{staticClass:\"player-size\",attrs:{\"fid\":_vm.fid},on:{\"onPlayerTimeupdate\":_vm.onPlayerTimeupdate,\"onPlayerEnded\":_vm.onPlayerEnded}})],1),_c('div',{staticClass:\"course_chat\"},[_c('div',{staticClass:\"top\"},[_vm._v(\"聊天\")]),_c('div',{staticClass:\"chat_box\"},[_c('chat-list',{attrs:{\"isReplay\":_vm.isReplay}})],1),_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.showMoreMsgButton),expression:\"showMoreMsgButton\"}],staticClass:\"show_lave\"},[_c('div',{staticClass:\"show_lave_msg\",on:{\"click\":_vm.showLaveMsg}},[_vm._v(\"展开剩余全部聊天 \"),_c('i',{staticClass:\"el-icon-arrow-down\"})])])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _vm._m(0)\n}\nvar staticRenderFns = [function (){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',{staticClass:\"tcplayer\"},[_c('video',{staticClass:\"player-size\",attrs:{\"id\":\"player-container-id\",\"preload\":\"auto\",\"playsinline\":\"\",\"webkit-playsinline\":\"\"}},[_vm._v(\"--> \")])])\n}]\n\nexport { render, staticRenderFns }","import * as Config from '@/config/live/live'\n\nexport default {\n data () {\n return {\n selectorId: '',\n player: null\n }\n },\n props: {\n fid: {\n type: String,\n default: ''\n }\n },\n mounted () {\n },\n methods: {\n initPlay (fid) {\n \n console.log()\n this.player = TCPlayer('player-container-id', { // player-container-id 为播放器容器 ID,必须与 html 中一致\n fileID: fid, // 请传入需要播放的视频 filID(必须)\n appID: Number(JSON.parse(localStorage.getItem('SUBAppid'))) , // 请传入点播账号的 appID(必须)\n // appID: 1500006707, // 请传入点播账号的 appID(必须)\n playbackRates: [0.75, 1, 1.25, 1.5, 1.75, 2],\n controlBar: {\n fullscreenToggle: false,\n QualitySwitcherMenuButton: false\n },\n plugins: {\n ContinuePlay: { // 开启续播功能\n auto: true, //[可选] 是否在视频播放后自动续播\n text: '上次播放至 ', //[可选] 提示文案\n btnText: '恢复播放' //[可选] 按钮文案\n },\n }\n\n })\n this.player.on('timeupdate', () => {\n this.$emit('onPlayerTimeupdate', this.player)\n })\n },\n changeFid (fid) {\n this.player.loadVideoByID({\n fileID: fid,\n appID: Config.TCPlayerAppId,\n })\n }\n },\n watch: {\n fid (newVal) {\n if (this.player) {\n this.changeFid(this.fid)\n } else {\n this.initPlay(this.fid)\n }\n }\n }\n}\n","\n\n\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TCPlayer.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TCPlayer.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./TCPlayer.vue?vue&type=template&id=56ff375c&scoped=true\"\nimport script from \"./TCPlayer.vue?vue&type=script&lang=js\"\nexport * from \"./TCPlayer.vue?vue&type=script&lang=js\"\nimport style0 from \"./TCPlayer.vue?vue&type=style&index=0&id=56ff375c&prod&lang=less&scoped=true\"\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 \"56ff375c\",\n null\n \n)\n\nexport default component.exports","import * as Api from \"@/api/course/course\";\nimport ChatList from \"@/views/live/modules/chatroom/chatList/chatList.vue\";\nimport TCPlayer from \"@/components/TCPlayer/TCPlayer.vue\";\nimport { mapActions, mapState } from \"vuex\";\nimport $ from \"jquery\";\nimport EXT_IM from \"@/views/live/ext/im\";\nimport * as Constant from \"@/views/live/constants/constant\";\n\nexport default {\n name: \"courseReplay\",\n data() {\n return {\n courseId: \"\",\n liveMode: \"\",\n videoSrc: \"\",\n isReplay: true,\n playerOptions: {},\n renderTime: \"\",\n msgShow: [],\n msgLave: [],\n showMoreMsgButton: false,\n videoStartBaseTime: \"\",\n timerArray: [],\n offsetArr: [],\n offsetNum: 0,\n fid: \"\",\n };\n },\n mounted() {\n this.clearMsgList();\n this.liveMode = this.$route.path.includes(\"private\")\n ? Constant.LIVE_MODE.private\n : Constant.LIVE_MODE.class;\n this.courseId = this.$route.params.id;\n this.getReplayDetail();\n },\n computed: {\n ...mapState({\n userId: (state) => state.live.userId,\n msgs: (state) => state.live.msgs,\n }),\n routeMode() {\n return this.$route.path.includes(\"spoken\");\n },\n },\n methods: {\n getReplayDetail() {\n Api.replayCourseDetail(\n \"\",\n this.courseId,\n this.liveMode,\n this.routeMode\n ? Constant.ENTERANCE.speaking\n : Constant.ENTERANCE.course,\n (res) => {\n this.fid = res.video_id;\n // this.fid = \"3270835009053652412\"; //测试用\n this.videoStartBaseTime = res.video_started_at[0].time;\n this.timerArray = res.video_started_at;\n let self = this;\n this.calcOffset();\n $.ajax({\n url: `${res.im_record_url}`,\n // url: 'https://file.papaen.com/test/2023/05/16/json/4QPvtL0VuuFewEDiHMWYu5R41CzeyJlXJ3b4lDCs.live/2697735538', //测试用\n type: \"get\",\n dataType: \"jsonp\",\n jsonp: \"jsonp_callback\",\n jsonpCallback: \"ImMessage\",\n success: function(res) {\n self.msgLave = res.reverse();\n },\n });\n }\n );\n },\n playVideo() {\n this.$refs.videoPlayer.play();\n },\n\n renderMsg(currentTime) {\n this.msgLave.forEach((ele, index) => {\n if (ele.timestamp <= currentTime) {\n if (!ele.isShow) {\n this.handleMsgShowInBox(ele);\n }\n ele.isShow = true;\n }\n });\n },\n handleMsgShowInBox(msg) {\n let accountObj = msg.from_account;\n let account = \"\";\n if (accountObj.identity === \"teacher\") {\n account = \"personal\";\n } else {\n account = accountObj.nickname || accountObj.account;\n }\n let msgContent = msg.body;\n\n if (msg.body.msg_type === \"TIMTextElem\") {\n EXT_IM.handleGroupTextMsg(msgContent.msg_content.text).then((text) => {\n this.addMsg({\n send: account,\n content: text,\n type: \"chat\",\n avatar: accountObj.avatar,\n identity: accountObj.identity,\n });\n this.$nextTick(() => {\n var msgbox = document.querySelector(\"#msg_box\");\n msgbox.scrollTop = msgbox.scrollHeight;\n });\n });\n } else {\n let img = ``;\n\n this.addMsg({\n send: account,\n content: img,\n type: \"chat\",\n avatar: accountObj.avatar,\n identity: accountObj.identity,\n });\n this.$nextTick(() => {\n var msgbox = document.querySelector(\"#msg_box\");\n msgbox.scrollTop = msgbox.scrollHeight;\n });\n }\n },\n\n calcOffset() {\n let arr = [];\n let offset = 0;\n this.timerArray.forEach((ele) => {\n offset = offset + parseInt(ele.duration);\n arr.push(offset);\n });\n this.offsetArr = arr;\n },\n onPlayerTimeupdate(player) {\n let baseTimeTamp = parseInt(this.videoStartBaseTime);\n let currentTime = Math.floor(player.currentTime());\n let offsetArr = this.offsetArr;\n for (let i = 0; i < offsetArr.length; ++i) {\n if (currentTime >= offsetArr[i] && currentTime < offsetArr[i + 1]) {\n this.videoStartBaseTime = parseInt(this.timerArray[i + 1].time);\n this.offsetNum = offsetArr[i];\n }\n }\n let calcTime = baseTimeTamp + currentTime - this.offsetNum;\n this.renderMsg(calcTime);\n },\n onPlayerEnded(player) {\n this.showMoreMsgButton = true;\n },\n showLaveMsg() {\n let laveMsg = [];\n this.msgLave.forEach((ele, index) => {\n if (!ele.isShow) {\n this.handleMsgShowInBox(ele);\n ele.isShow = true;\n }\n });\n this.showMoreMsgButton = false;\n },\n ...mapActions([\"addMsg\", \"setLiveMode\", \"clearMsgList\"]),\n },\n watch: {},\n components: {\n ChatList,\n TCPlayer,\n },\n};\n","\n\n\n\n\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./courseReplay.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./courseReplay.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./courseReplay.vue?vue&type=template&id=54c0eb14&scoped=true\"\nimport script from \"./courseReplay.vue?vue&type=script&lang=js\"\nexport * from \"./courseReplay.vue?vue&type=script&lang=js\"\nimport style0 from \"./courseReplay.vue?vue&type=style&index=0&id=54c0eb14&prod&lang=less&scoped=true\"\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 \"54c0eb14\",\n null\n \n)\n\nexport default component.exports","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--11-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--11-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--11-oneOf-1-2!../../../node_modules/less-loader/dist/cjs.js??ref--11-oneOf-1-3!../../../node_modules/style-resources-loader/lib/index.js??ref--11-oneOf-1-4!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TCPlayer.vue?vue&type=style&index=0&id=56ff375c&prod&lang=less&scoped=true\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--11-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--11-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--11-oneOf-1-2!../../../../node_modules/less-loader/dist/cjs.js??ref--11-oneOf-1-3!../../../../node_modules/style-resources-loader/lib/index.js??ref--11-oneOf-1-4!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./courseReplay.vue?vue&type=style&index=0&id=54c0eb14&prod&lang=less&scoped=true\""],"sourceRoot":""}