import{d as T,g as _,n as h,c as b,m as t,bF as v,bG as P,bH as w,ae as C,h as s,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}from"./index-a9c95725.js";const A="_skeleton_1jzuh_1",E="_detail_1jzuh_12",H="_container_1jzuh_19",g={skeleton:A,detail:E,container:H},q=T({name:"simple-detail",setup(){const r=_(),i=h({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,d())),((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){var n;const a=(e==null?void 0:e.currentTime)||((n=e==null?void 0:e.content)==null?void 0:n.currentTime);a&&(a{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},"*")},d=()=>{const e=i.currentTime;let a=R(e);a&&k(a),t.activeNoteIndex=(a==null?void 0:a.i)||0,t.isSingleLine&&z(e)},l=()=>{if(t.playState!=="play"){console.log("暂停播放");return}let e=Date.now();requestAnimationFrame(()=>{Date.now()-e<16.7?(d(),l()):setTimeout(()=>{d(),l()},16.7)})};return()=>s("div",{class:g.detail},[s("div",{id:"scrollContainer",class:[g.container,"hideCursor"]},[!i.isLoading&&s(I,{onRendered:f,musicColor:"#FFFFFF"},null)])])}});export{q as default};