index-923cbb03.js 2.5 KB

1
  1. import{d as T,g as h,n as _,c as b,m as t,bF as v,bG as P,bH as w,ae as C,h as d,av as I,a0 as L,V as N,bI as x,bJ as F,aD as B,bK as M,bL as D,aH as j,bM as R,bN as k,bO as z,bP as A}from"./index-11774eb5.js";const E="_skeleton_1jzuh_1",H="_detail_1jzuh_12",V="_container_1jzuh_19",g={skeleton:E,detail:H,container:V},G=T({name:"simple-detail",setup(){const r=h(),i=_({isLoading:!0,currentTime:0,totalTime:6e4}),c=e=>{var a,n,o,m,p,u;((a=e==null?void 0:e.data)==null?void 0:a.api)==="api_play"&&(console.log("开始播放"),t.playState="play",l()),((n=e==null?void 0:e.data)==null?void 0:n.api)==="api_paused"&&(console.log("暂停播放"),t.playState="paused"),((o=e==null?void 0:e.data)==null?void 0:o.api)==="api_updateProgress"&&(console.log("拖动的进度"),t.playState==="paused"&&(i.currentTime=(m=e==null?void 0:e.data)!=null&&m.data?(p=e==null?void 0:e.data)==null?void 0:p.data:i.currentTime,s())),((u=e==null?void 0:e.data)==null?void 0:u.api)==="api_playProgress"&&e!=null&&e.data.data&&((e==null?void 0:e.data.data)<i.currentTime&&(t.activeNoteIndex=0),i.currentTime=e==null?void 0:e.data.data)},y=e=>{var n;const a=(e==null?void 0:e.currentTime)||((n=e==null?void 0:e.content)==null?void 0:n.currentTime);a&&(a<i.currentTime&&(t.activeNoteIndex=0),i.currentTime=a)},S=()=>{t.playState="play",l()};b(async()=>{const e=r.id||"";t.isSimplePage=!0,await v(e,"open"),i.isLoading=!1,t.isSingleLine=!0,P(y),w(S),window.addEventListener("message",c)}),C(()=>{t.isSimplePage=!1,window.removeEventListener("message",c)});const f=async e=>{var o;const a=(o=document.getElementById("scrollContainer"))==null?void 0:o.getBoundingClientRect().height;t.osmd=e,t.originSpeed===0&&(t.originSpeed=t.speed=e.bpm||e.Sheet.userStartTempoInBPM||100);const n=(L.get("speeds")||{})[t.examSongId]||t.speed||e.bpm||e.Sheet.userStartTempoInBPM;n&&N(n),x(),F(),t.times=B(e),console.log("🚀 ~ state.times:",t.times,t.subjectId,t),M(t.times),D(),j(),console.log("渲染完成",a),window.parent.postMessage({api:"api_musicPage",height:a},"*"),R({height:a})},s=()=>{const e=i.currentTime;let a=k(e);a&&z(a),t.activeNoteIndex=(a==null?void 0:a.i)||0,t.isSingleLine&&A(e)},l=()=>{if(t.playState!=="play"){console.log("暂停播放");return}let e=Date.now();requestAnimationFrame(()=>{Date.now()-e<16.7?(s(),l()):setTimeout(()=>{s(),l()},16.7)})};return()=>d("div",{class:g.detail},[d("div",{id:"scrollContainer",class:[g.container,"hideCursor"]},[!i.isLoading&&d(I,{onRendered:f,musicColor:"#FFFFFF"},null)])])}});export{G as default};