| 
														
															@@ -1,5 +1,11 @@ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 <template> 
														 | 
														
														 | 
														
															 <template> 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-  <div class="enjoyPlayer"> 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+  <div 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+    class="enjoyPlayer" 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+    v-click-outside="handleListOutside" 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+    :style="{ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+      transform: `scale(${scaleStyle})` 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+    }" 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+  > 
														 | 
													
												
											
												
													
														| 
														 | 
														
															     <div v-if="!isBase" v-show="isShowEnjoyPlayerList" class="enjoyPlayerList"> 
														 | 
														
														 | 
														
															     <div v-if="!isBase" v-show="isShowEnjoyPlayerList" class="enjoyPlayerList"> 
														 | 
													
												
											
												
													
														| 
														 | 
														
															       <div class="titNameCon"> 
														 | 
														
														 | 
														
															       <div class="titNameCon"> 
														 | 
													
												
											
												
													
														| 
														 | 
														
															         <div class="titName"> 
														 | 
														
														 | 
														
															         <div class="titName"> 
														 | 
													
												
											
										
											
												
													
														 | 
														
															@@ -8,6 +14,7 @@ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															       </div> 
														 | 
														
														 | 
														
															       </div> 
														 | 
													
												
											
												
													
														| 
														 | 
														
															       <div class="enjoyPlayerListCon"> 
														 | 
														
														 | 
														
															       <div class="enjoyPlayerListCon"> 
														 | 
													
												
											
												
													
														| 
														 | 
														
															         <draggable 
														 | 
														
														 | 
														
															         <draggable 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+          :forceFallback="true" 
														 | 
													
												
											
												
													
														| 
														 | 
														
															           :handle="'.drag-handle_enjoyPlayer'" 
														 | 
														
														 | 
														
															           :handle="'.drag-handle_enjoyPlayer'" 
														 | 
													
												
											
												
													
														| 
														 | 
														
															           v-model="elementInfo.enjoyList" 
														 | 
														
														 | 
														
															           v-model="elementInfo.enjoyList" 
														 | 
													
												
											
												
													
														| 
														 | 
														
															           itemKey="id" 
														 | 
														
														 | 
														
															           itemKey="id" 
														 | 
													
												
											
										
											
												
													
														 | 
														
															@@ -78,6 +85,7 @@ import message from "@/utils/message" 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 import type { PPTEnjoyElement } from "@/types/slides" 
														 | 
														
														 | 
														
															 import type { PPTEnjoyElement } from "@/types/slides" 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 import { useSlidesStore, useMainStore } from "@/store" 
														 | 
														
														 | 
														
															 import { useSlidesStore, useMainStore } from "@/store" 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 import draggable from "vuedraggable" 
														 | 
														
														 | 
														
															 import draggable from "vuedraggable" 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+import queryParams from "@/queryParams" 
														 | 
													
												
											
												
													
														| 
														 | 
														
															  
														 | 
														
														 | 
														
															  
														 | 
													
												
											
												
													
														| 
														 | 
														
															 const slidesStore = useSlidesStore() 
														 | 
														
														 | 
														
															 const slidesStore = useSlidesStore() 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 const mainStore = useMainStore() 
														 | 
														
														 | 
														
															 const mainStore = useMainStore() 
														 | 
													
												
											
										
											
												
													
														 | 
														
															@@ -94,6 +102,14 @@ const props = withDefaults( 
														 | 
													
												
											
												
													
														| 
														 | 
														
															     isBase: false 
														 | 
														
														 | 
														
															     isBase: false 
														 | 
													
												
											
												
													
														| 
														 | 
														
															   } 
														 | 
														
														 | 
														
															   } 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 ) 
														 | 
														
														 | 
														
															 ) 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+// 学生端 不是isBase预览下面的缩放比例 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+const scaleStyle = queryParams.fromType === "CLASS" && !props.isBase && props.isScreening ? 1.5 : 1 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+function handleListOutside() { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+  if (!props.isBase && isShowEnjoyPlayerList.value) { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+    hanleEnjoyList() 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+  } 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+} 
														 | 
													
												
											
												
													
														| 
														 | 
														
															  
														 | 
														
														 | 
														
															  
														 | 
													
												
											
												
													
														| 
														 | 
														
															 const isShowEnjoyPlayerList = ref(false) 
														 | 
														
														 | 
														
															 const isShowEnjoyPlayerList = ref(false) 
														 | 
													
												
											
												
													
														| 
														 | 
														
															  
														 | 
														
														 | 
														
															  
														 | 
													
												
											
										
											
												
													
														 | 
														
															@@ -290,7 +306,7 @@ const handleError = () => message.error("音频加载失败") 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 const thumbMove = (e: MouseEvent | TouchEvent) => { 
														 | 
														
														 | 
														
															 const thumbMove = (e: MouseEvent | TouchEvent) => { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															   if (!audioRef.value || !playBarWrap.value) return 
														 | 
														
														 | 
														
															   if (!audioRef.value || !playBarWrap.value) return 
														 | 
													
												
											
												
													
														| 
														 | 
														
															   const clientX = "clientX" in e ? e.clientX : e.changedTouches[0].clientX 
														 | 
														
														 | 
														
															   const clientX = "clientX" in e ? e.clientX : e.changedTouches[0].clientX 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-  let percentage = (clientX - getBoundingClientRectViewLeft(playBarWrap.value)) / playBarWrap.value.clientWidth / props.scale 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+  let percentage = (clientX - getBoundingClientRectViewLeft(playBarWrap.value)) / playBarWrap.value.clientWidth / props.scale / scaleStyle 
														 | 
													
												
											
												
													
														| 
														 | 
														
															   percentage = Math.max(percentage, 0) 
														 | 
														
														 | 
														
															   percentage = Math.max(percentage, 0) 
														 | 
													
												
											
												
													
														| 
														 | 
														
															   percentage = Math.min(percentage, 1) 
														 | 
														
														 | 
														
															   percentage = Math.min(percentage, 1) 
														 | 
													
												
											
												
													
														| 
														 | 
														
															   const time = percentage * duration.value 
														 | 
														
														 | 
														
															   const time = percentage * duration.value 
														 | 
													
												
											
										
											
												
													
														 | 
														
															@@ -303,7 +319,7 @@ const thumbUp = (e: MouseEvent | TouchEvent) => { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															   if (!audioRef.value || !playBarWrap.value) return 
														 | 
														
														 | 
														
															   if (!audioRef.value || !playBarWrap.value) return 
														 | 
													
												
											
												
													
														| 
														 | 
														
															  
														 | 
														
														 | 
														
															  
														 | 
													
												
											
												
													
														| 
														 | 
														
															   const clientX = "clientX" in e ? e.clientX : e.changedTouches[0].clientX 
														 | 
														
														 | 
														
															   const clientX = "clientX" in e ? e.clientX : e.changedTouches[0].clientX 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-  let percentage = (clientX - getBoundingClientRectViewLeft(playBarWrap.value)) / playBarWrap.value.clientWidth / props.scale 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+  let percentage = (clientX - getBoundingClientRectViewLeft(playBarWrap.value)) / playBarWrap.value.clientWidth / props.scale / scaleStyle 
														 | 
													
												
											
												
													
														| 
														 | 
														
															   percentage = Math.max(percentage, 0) 
														 | 
														
														 | 
														
															   percentage = Math.max(percentage, 0) 
														 | 
													
												
											
												
													
														| 
														 | 
														
															   percentage = Math.min(percentage, 1) 
														 | 
														
														 | 
														
															   percentage = Math.min(percentage, 1) 
														 | 
													
												
											
												
													
														| 
														 | 
														
															   const time = percentage * duration.value 
														 | 
														
														 | 
														
															   const time = percentage * duration.value 
														 | 
													
												
											
										
											
												
													
														 | 
														
															@@ -331,7 +347,7 @@ const handleMousedownPlayBar = () => { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															  
														 | 
														
														 | 
														
															  
														 | 
													
												
											
												
													
														| 
														 | 
														
															 <style lang="scss" scoped> 
														 | 
														
														 | 
														
															 <style lang="scss" scoped> 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 .enjoyPlayer { 
														 | 
														
														 | 
														
															 .enjoyPlayer { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-  transform-origin: left top; 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+  transform-origin: center bottom; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															   .playerCon { 
														 | 
														
														 | 
														
															   .playerCon { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															     background: linear-gradient(180deg, #ffffff 0%, #dfdfdf 100%); 
														 | 
														
														 | 
														
															     background: linear-gradient(180deg, #ffffff 0%, #dfdfdf 100%); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															     box-shadow: 
														 | 
														
														 | 
														
															     box-shadow: 
														 | 
													
												
											
										
											
												
													
														 | 
														
															@@ -474,7 +490,7 @@ const handleMousedownPlayBar = () => { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															     bottom: 51px; 
														 | 
														
														 | 
														
															     bottom: 51px; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															     box-shadow: 0px 3px 22px 0px rgba(0, 0, 0, 0.12); 
														 | 
														
														 | 
														
															     box-shadow: 0px 3px 22px 0px rgba(0, 0, 0, 0.12); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															     border-radius: 20px 20px 0px 0px; 
														 | 
														
														 | 
														
															     border-radius: 20px 20px 0px 0px; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-    background-color: rgba(255, 255, 255, 0.9); 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+    background-color: rgb(255, 255, 255); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															     padding: 20px 0 61px 10px; 
														 | 
														
														 | 
														
															     padding: 20px 0 61px 10px; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															     .titNameCon { 
														 | 
														
														 | 
														
															     .titNameCon { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															       padding-left: 10px; 
														 | 
														
														 | 
														
															       padding-left: 10px; 
														 | 
													
												
											
										
											
												
													
														 | 
														
															@@ -513,7 +529,7 @@ const handleMousedownPlayBar = () => { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															         justify-content: space-between; 
														 | 
														
														 | 
														
															         justify-content: space-between; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															         align-items: center; 
														 | 
														
														 | 
														
															         align-items: center; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															         &.active { 
														 | 
														
														 | 
														
															         &.active { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-          background: rgba(85, 176, 255, 0.15); 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+          background: #e6f3ff; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															           border-radius: 10px; 
														 | 
														
														 | 
														
															           border-radius: 10px; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															           .itemLeft { 
														 | 
														
														 | 
														
															           .itemLeft { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															             color: #198cfe; 
														 | 
														
														 | 
														
															             color: #198cfe; 
														 |