1 |
- import{d as w,e as y,r as x,$ as k,cl as C,w as U,f as e,o as T,cm as $,j as _,c as D,a as j,u as z,q as E,aK as G,B as L,cj as M,ck as A,k as N,bX as O,cn as X,T as q,O as V,aG as K}from"./index-b5a12e99.js";import{T as H}from"./index-bb8f5d60.js";import{T as P,i as J,a as Q}from"./index-2b1163fc.js";import{N as Y}from"./Slider-868b22bb.js";import{c as Z,d as tt,e as et,f as at}from"./api-291ee5fb.js";const st="_container_1dh8a_1",it="_separator_1dh8a_32",ot="_wrap_1dh8a_36",nt="_content_1dh8a_42",lt="_tools_1dh8a_49",rt="_contentWrap_1dh8a_59",ct="_musicList_1dh8a_65",dt="_wrapList_1dh8a_76",ut="_empty_1dh8a_83",mt="_itemContainer_1dh8a_89",ft="_item_1dh8a_89",pt="_active_1dh8a_110",_t="_arrow_1dh8a_113",gt="_img_1dh8a_116",ht="_title_1dh8a_137",vt="_titleName_1dh8a_144",yt="_titleDes_1dh8a_151",wt="_btn_1dh8a_161",St="_showPlayLoading_1dh8a_183",bt="_loadingWrap_1dh8a_186",It="_musicStaff_1dh8a_191",Ct="_goBtn_1dh8a_207",Lt="_favitor_1dh8a_215",At="_musicName_1dh8a_233",Nt="_staffImgs_1dh8a_241",i={container:st,separator:it,wrap:ot,content:nt,tools:lt,contentWrap:rt,musicList:ct,wrapList:dt,empty:ut,itemContainer:mt,item:ft,active:pt,arrow:_t,img:gt,title:ht,titleName:vt,titleDes:yt,btn:wt,showPlayLoading:St,loadingWrap:bt,musicStaff:It,goBtn:Ct,favitor:Lt,musicName:At,staffImgs:Nt},xt=""+new URL("icon_back-57d35e72.svg",import.meta.url).href,kt=""+new URL("icon_separator-7cca8458.svg",import.meta.url).href,Tt=""+new URL("icon_arrow-b4fee1f7.svg",import.meta.url).href,B=""+new URL("icon_play-43b52923.svg",import.meta.url).href,F=""+new URL("icon_pause-6dbc64e3.svg",import.meta.url).href,Pt=""+new URL("icon_goXiaoku-c05e1880.svg",import.meta.url).href,Bt="_container_hsosf_1",Ft="_hidden_hsosf_15",Rt="_item_hsosf_19",Wt="_img_hsosf_25",Ut="_rotateImg_hsosf_1",$t="_svgcontainer_hsosf_50",Dt="_progress_hsosf_55",jt="_title_hsosf_66",zt="_titleName_hsosf_70",Et="_titleDes_hsosf_77",Gt="_playBtns_hsosf_89",Mt="_playBtn_hsosf_89",Ot="_timeWrap_hsosf_111",Xt="_timeProgress_hsosf_117",qt="_time_hsosf_111",l={container:Bt,hidden:Ft,item:Rt,img:Wt,rotateImg:Ut,svgcontainer:$t,progress:Dt,title:jt,titleName:zt,titleDes:Et,playBtns:Gt,playBtn:Mt,timeWrap:Ot,timeProgress:Xt,time:qt},Vt=""+new URL("icon_pre-20929b0c.svg",import.meta.url).href,Kt=""+new URL("icon_next-7dc20456.svg",import.meta.url).href,Ht=w({name:"playItem",props:{item:{type:Object,default:()=>({})},show:{type:Boolean,default:!1},playState:{type:String,default:"pause"}},emits:["change"],setup(o,{emit:m}){let d=null;const n=y({isFirst:!0,duration:0,currentTime:0}),t=x(),h=()=>{if(n.duration=t.value.duration,n.isFirst){n.isFirst=!1;return}o.playState==="play"&&t.value.play()},p=c=>{t.value.pause(),n.currentTime=c,clearTimeout(d),d=setTimeout(()=>{t.value.currentTime=c,o.playState==="play"&&t.value.play(),d=null},300)},g=k(()=>`${C(n.currentTime)} / ${C(n.duration)}`);return U(()=>o.playState,c=>{c==="play"?t.value.play():t.value.pause()}),()=>e("div",{class:[l.container,o.show?l.show:l.hidden]},[e("div",{class:[l.item]},[e("div",{class:l.img},[e(T,{lazy:!0,objectFit:"cover",previewDisabled:!0,src:o.item.titleImg,onLoad:c=>{c.target.dataset.loaded="true"}},null),e("svg",{class:l.svgcontainer},[e("defs",null,[e("linearGradient",{id:"GradientProgress"},[e("stop",{"stop-color":"#5BECFF",offset:"0%"},null),e("stop",{"stop-color":"#259CFE",offset:"100%"},null)])])]),e($,{type:"circle",class:l.progress,showIndicator:!1,percentage:n.currentTime/n.duration*100},null)]),e("div",{class:l.title},[e("div",{class:l.titleName},[e(P,{text:o.item.musicSheetName},null)]),e("div",{class:l.titleDes},[o.item.composer])]),e("div",{class:l.playBtns},[e(_,{color:"rgba(246,246,246,1)",circle:!0,bordered:!1,onClick:()=>m("change","pre")},{default:()=>[e("img",{src:Vt},null)]}),e(_,{color:"rgba(57,130,246,1)",class:l.playBtn,circle:!0,bordered:!1,onClick:()=>m("change",o.playState==="pause"?"play":"pause")},{default:()=>[e("img",{style:{display:o.playState==="pause"?"":"none",transform:"scale(1.5) translateX(1Px)"},src:B},null),e("img",{style:{display:o.playState==="play"?"":"none",transform:"scale(1.5)"},src:F},null)]}),e(_,{color:"rgba(246,246,246,1)",circle:!0,bordered:!1,onClick:()=>m("change","next")},{default:()=>[e("img",{src:Kt},null)]})]),e("div",{class:l.timeWrap},[e(Y,{tooltip:!1,step:.01,class:l.timeProgress,value:n.currentTime,max:n.duration,"onUpdate:value":c=>p(c)},null),e("div",{class:l.time},[g.value]),e("audio",{ref:t,src:o.item.audioFileUrl||o.item.metronomeUrl,onLoadedmetadata:h,onTimeupdate:()=>{d||(n.currentTime=t.value.currentTime)}},null)])])])}}),Jt="_audioAnimate_29dwa_1",Qt="_musicWave_29dwa_1",Yt={audioAnimate:Jt,musicWave:Qt},Zt=w({name:"playLoading",setup(){return()=>e("div",{class:Yt.audioAnimate},[e("div",null,null),e("div",null,null),e("div",null,null),e("div",null,null)])}});function te(o){return typeof o=="function"||Object.prototype.toString.call(o)==="[object Object]"&&!K(o)}const le=w({name:"XiaokuMusic",setup(){const o=D(),m=j(),d=z(),n=y({page:1,rows:20,status:!0,keyword:"",musicSheetCategoriesId:m.query.id||""}),t=y({loading:!1,finshed:!1,reshing:!1,tags:[],tagIndex:0,list:[],listActive:0,playState:"pause",showPlayer:!1}),h=async()=>{const s=await Z();Array.isArray(s==null?void 0:s.data)&&(t.tags=[{name:"全部",id:0},...s.data])},p=async()=>{var a;t.loading=!0;let s={};try{s=await tt({...n,musicSubject:t.tagIndex?t.tagIndex:""})}catch(r){console.log(r)}t.reshing&&(t.list=[],t.reshing=!1),(s==null?void 0:s.code)===200&&Array.isArray((a=s==null?void 0:s.data)==null?void 0:a.rows)&&(t.list=[...t.list,...s.data.rows],t.finshed=s.data.rows.length<n.rows,console.log("🚀 ~ data.finshed:",t.finshed)),t.list[t.listActive]&&S(t.list[t.listActive]),t.loading=!1},g=()=>{n.page=1,t.finshed=!1,p()},c=x(),R=()=>{console.log(t.finshed),!(t.loading||t.finshed)&&(n.page=n.page+1,p())};E(async()=>{h(),await p();const s=new IntersectionObserver(a=>{a[0].intersectionRatio>0&&R()});G(()=>{s.observe(c.value)})});const S=async s=>{const a=await et({type:"MUSIC",materialId:s.id});(a==null?void 0:a.code)===200&&(s.favitor=a.data)},W=s=>{const a=t.list.findIndex(r=>r.id===s.id);a>-1&&(t.listActive=a),S(s)},u=k(()=>t.list[t.listActive]||{}),b=()=>{t.list[t.listActive].favitor=!t.list[t.listActive].favitor,at({favoriteFlag:t.list[t.listActive].favitor,type:"MUSIC",materialId:t.list[t.listActive].id})},v=s=>{const a=t.list.findIndex(r=>r.id===s.id);a>-1&&(t.listActive===a?t.playState=t.playState==="play"?"pause":"play":t.playState="play",t.showPlayer=!0,t.listActive=a)},I=s=>{s==="play"?t.playState="play":s==="pause"?t.playState="pause":s==="pre"?t.list[t.listActive-1]&&v(t.list[t.listActive-1]):s==="next"?t.list[t.listActive+1]&&v(t.list[t.listActive+1]):s==="favitor"&&b()};return()=>{let s;return e("div",{class:i.container},[e(L,{align:"center",wrapItem:!1,size:16},{default:()=>[e("img",{style:{cursor:"pointer"},src:xt,onClick:()=>d.push({path:"/xiaoku-ai"})},null),e(M,{separator:""},{default:()=>[e(A,{onClick:()=>d.push({path:"/xiaoku-ai"})},{default:()=>[N("曲谱列表")]}),e("img",{class:i.separator,src:kt},null),e(A,null,{default:()=>[m.query.name]})]})]}),e("div",{class:i.wrap,style:{paddingBottom:t.showPlayer?"108Px":""}},[e("div",{class:i.content},[e("div",{class:i.tools},[e(L,{style:{width:"100%"},size:[24,12],wrapItem:!1},te(s=t.tags.map(a=>e(_,{round:!0,textColor:t.tagIndex===a.id?"#fff":"#000",color:t.tagIndex===a.id?"#198CFE":"#fff",onClick:()=>{t.tagIndex=a.id,t.reshing=!0,g()}},{default:()=>[a.name]})))?s:{default:()=>[s]}),e(H,{style:{marginLeft:"auto"},round:!0,onSearch:a=>{n.keyword=a,t.reshing=!0,g()}},null)]),e("div",{class:i.contentWrap},[e("div",{class:i.musicList},[e("div",{class:i.wrapList},[t.list.map((a,r)=>e("div",{class:i.itemContainer},[e("div",{class:[i.item,t.listActive===r&&i.active],onClick:()=>W(a)},[e("div",{class:i.img},[e(T,{lazy:!0,objectFit:"cover",previewDisabled:!0,src:a.titleImg,onLoad:f=>{f.target.dataset.loaded="true"}},null),e(Zt,{class:[t.listActive===r&&t.playState==="play"?"":i.showPlayLoading]},null)]),e("div",{class:i.title},[e("div",{class:i.titleName},[e(P,{text:a.musicSheetName},null)]),e("div",{class:i.titleDes},[a.composer])]),e(_,{color:"#259CFE",textColor:"#fff",round:!0,class:i.btn,type:"primary",onClick:f=>{f.stopPropagation(),v(a)}},{default:()=>[N("试听"),e("img",{src:t.listActive===r&&t.playState==="play"?F:B},null)]}),e("img",{class:i.arrow,src:Tt},null)])])),!t.finshed&&e("div",{ref:c,class:i.loadingWrap},[e(O,{show:!0},null)]),!t.loading&&t.list.length===0&&e("div",{class:i.empty},[e(X,null,null)])])]),e("div",{class:i.musicStaff},[e("div",{class:i.musicName},[u.value.musicSheetName]),e("img",{style:{display:u.value.id?"":"none"},class:i.goBtn,src:Pt,onClick:()=>{I("pause");const r=`${/(localhost|192)/.test(location.host)?"https://test.lexiaoya.cn":location.origin}/instrument?platform=pc&id=${u.value.id}&Authorization=${o.getToken}`;window.open(r)}},null),e("div",{style:{display:u.value.id?"":"none"},class:i.favitor,onClick:()=>b()},[e(q,{name:"favitor",mode:"out-in"},{default:()=>[u.value.favitor?e("img",{src:J,key:"1"},null):e("img",{src:Q,key:"2"},null)]})]),e("div",{class:i.staffImgs},[e(V,{name:"van-fade"},{default:()=>{var a,r;return[(r=(a=u.value)==null?void 0:a.firstTone)==null?void 0:r.split(",").map((f,ee)=>e("img",{src:f,key:f},null))]}})])])])])]),t.list.length!==0&&e(Ht,{show:t.showPlayer,playState:t.playState,item:u.value,onChange:a=>I(a)},null)])}}});export{le as default};
|