1 |
- import{d as Z,e as j,X as r,r as N,p as ee,H as z,O as te,f as s,c1 as se,bT as ae,k as g,F as O,c as V,a as ie,u as oe,U as E,w as U,ck as ne,cl as q,cm as J,j as B,v as le,x as ce,A as X,W as re,a6 as ue,l as de,aV as pe}from"./index-e9c31e92-1706855886045.js";import{i as fe}from"./icon_back-c5ec0a72-1706855886045.js";import{i as me,P as ge,a as H,b as K,c as ve,d as he}from"./index-472b1acf-1706855886045.js";import{T as we}from"./index-f37bcf5c-1706855886045.js";import{i as ye,a as _e}from"./icon-collect-active-4272e308-1706855886045.js";import{i as be}from"./icon_default-d1bcaf5f-1706855886045.js";import{T as Se}from"./index-20283b71-1706855886045.js";import{u as Ie}from"./catchData-7b240dad-1706855886045.js";import{c as xe,d as Ce,e as Ae}from"./api-e635dc55-1706855886045.js";import{g as $,s as v,a as Be,b as Q}from"./api-80dc4f30-1706855886045.js";import{T as Y}from"./index-ebc5fa4a-1706855886045.js";import{s as ke}from"./state-c0d612d4-1706855886045.js";import{u as Le}from"./index-a71da2d0-1706855886045.js";import{a as F}from"./urlUtils-080cac35-1706855886045.js";import"./Slider-348449ca-1706855886045.js";import"./index-aeae76af-1706855886045.js";const Pe="_container_safb9_1",Ne="_iconBack_safb9_6",Re="_separator_safb9_39",Te="_wrap_safb9_44",Ee="_wrapBottom_safb9_50",Ue="_content_safb9_53",$e="_tools_safb9_60",Fe="_contentWrap_safb9_84",je="_musicList_safb9_91",Ge="_wrapList_safb9_105",Me="_empty_safb9_111",De="_itemContainer_safb9_117",We="_item_safb9_117",ze="_active_safb9_139",Oe="_arrow_safb9_142",Ve="_img_safb9_145",qe="_title_safb9_167",Je="_titleName_safb9_174",Xe="_titleDes_safb9_181",He="_btn_safb9_191",Ke="_showPlayLoading_safb9_216",Qe="_loadingWrap_safb9_219",Ye="_showLoading_safb9_224",Ze="_musicStaff_safb9_229",et="_goBtn_safb9_244",tt="_rightBtns_safb9_253",st="_textBtn_safb9_260",at="_favitor_safb9_268",it="_musicName_safb9_283",ot="_staffImgs_safb9_291",nt="_previewWindow_safb9_308",lt="_previewClose_safb9_313",ct="_previewIframe_safb9_320",rt="_popSelect_safb9_326",ut="_iconArrow_safb9_336",dt="_textBtnActive_safb9_348",i={container:Pe,iconBack:Ne,separator:Re,wrap:Te,wrapBottom:Ee,content:Ue,tools:$e,contentWrap:Fe,musicList:je,wrapList:Ge,empty:Me,itemContainer:De,item:We,active:ze,arrow:Oe,img:Ve,title:qe,titleName:Je,titleDes:Xe,btn:He,showPlayLoading:Ke,loadingWrap:Qe,showLoading:Ye,musicStaff:Ze,goBtn:et,rightBtns:tt,textBtn:st,favitor:at,musicName:it,staffImgs:ot,previewWindow:nt,previewClose:lt,previewIframe:ct,popSelect:rt,iconArrow:ut,textBtnActive:dt},pt=""+new URL("icon_goXiaoku-5d0db670.png",import.meta.url).href,ft=""+new URL("icon-close-1bf25bcf.png",import.meta.url).href,mt=Z({name:"music-guide",emits:["close"],setup(b,{emit:G}){const o=j({box:{height:"0px"},show:!1,steps:[{ele:"",eleRect:{},img:$("music1.png"),handStyle:{top:"0.91rem"},imgStyle:{top:r(-4),left:r(0),width:r(533),height:r(271)},btnsStyle:{bottom:r(40),left:r(159)},eleRectPadding:{left:7,top:7,width:14,height:14},boxStyle:{}},{ele:"",img:$("music2.png"),imgStyle:{top:r(-4),left:r(-205),width:r(420),height:r(228)},btnsStyle:{bottom:r(35),left:r(-48)},boxStyle:{borderRadius:"25px"},eleRectPadding:{left:7,top:7,width:14,height:14}},{ele:"",img:$("music3.png"),imgStyle:{top:"100%",left:r(-130),width:r(401),height:r(304)},btnsStyle:{bottom:r(100),left:r(30)},boxStyle:{borderRadius:"40px"},eleRectPadding:{left:7,top:7,width:14,height:14},type:"bottom"}],step:0}),m=N(!1),c=N({});(async()=>{var n;try{const u=await Be({guideTag:"teacher-guideInfo"});u.data?c.value=JSON.parse((n=u.data)==null?void 0:n.guideValue)||null:c.value={},c.value&&c.value.musicGuide?m.value=!1:m.value=!0}catch(u){console.log(u)}})();const h=()=>{var u,y,_,I;const n=document.getElementById("music-".concat(o.step));if(n){const f=n.getBoundingClientRect();if(console.log(n.style.display,"ele"),n.style.display=="none"){w();return}const p=((u=o.steps[o.step].eleRectPadding)==null?void 0:u.left)||0,L=((y=o.steps[o.step].eleRectPadding)==null?void 0:y.top)||0,x=((_=o.steps[o.step].eleRectPadding)==null?void 0:_.width)||0,R=((I=o.steps[o.step].eleRectPadding)==null?void 0:I.height)||0;o.box={left:f.x-p+"px",top:f.y-L+"px",width:f.width+x+"px",height:f.height+R+"px"}}else w()},C=async n=>{try{if(n!=="xiaoku-music")return;c.value?c.value.musicGuide=!1:c.value={musicGuide:!1};try{await Q({guideTag:"teacher-guideInfo",guideValue:JSON.stringify(c.value)})}catch(u){console.log(u)}o.step=0,h(),m.value=!0}catch(u){}};ee(()=>{h(),window.addEventListener("resize",k),z.on("teacher-guideInfo",n=>C(n))});const k=()=>{h()};te(()=>{window.removeEventListener("resize",k),z.off("teacher-guideInfo",C)});const w=()=>{if(o.step>=3){S();return}o.step=o.step+1,h()},S=async()=>{c.value?c.value.musicGuide=!0:c.value={musicGuide:!0};try{const n=await Q({guideTag:"teacher-guideInfo",guideValue:JSON.stringify(c.value)})}catch(n){console.log(n)}m.value=!1};return()=>s(O,null,[m.value?se(s("div",{"onUpdate:show":n=>m.value=n,class:["n-modal-mask","n-modal-mask-guide"]},[s("div",{class:v.content,onClick:()=>w()},[s("div",{class:v.backBtn,onClick:n=>{n.stopPropagation(),S()}},[g("跳过")]),s("div",{class:v.box,style:{...o.box,...o.steps[o.step].boxStyle},id:"modeType-".concat(o.step)},[o.steps.map((n,u)=>{var y,_,I,f;return s("div",{onClick:p=>p.stopPropagation(),class:v.item,style:n.type=="bottom"?{display:u===o.step?"":"none",left:"".concat((y=n.eleRect)==null?void 0:y.left,"px"),top:"-".concat((_=n.imgStyle)==null?void 0:_.height)}:{display:u===o.step?"":"none",left:"".concat((I=n.eleRect)==null?void 0:I.left,"px"),top:"".concat((f=o.box)==null?void 0:f.height)}},[s("img",{class:v.img,style:n.imgStyle,src:n.img},null),s("div",{class:v.btns,style:n.btnsStyle},[o.step+1==o.steps.length?s(O,null,[s("div",{class:[v.endBtn],onClick:()=>S()},[g("完成")]),s("div",{class:v.nextBtn,onClick:()=>{o.step=0,h()}},[g("再看一遍")])]):s("div",{class:v.btn,onClick:()=>w()},[g("下一步 ("),o.step+1,g("/"),o.steps.length,g(")")])])])})])])]),[[ae,m.value,"show"]]):null])}});function gt(b){return typeof b=="function"||Object.prototype.toString.call(b)==="[object Object]"&&!pe(b)}const Rt=Z({name:"XiaokuMusic",setup(){const b=Ie(),G=V(),o=ie(),m=oe(),c=j({page:1,rows:20,status:!0,name:"",musicSheetCategoriesId:o.query.id||""}),e=j({loading:!1,finshed:!1,reshing:!1,tags:[],tagIndex:0,list:[],listActive:0,musicInstrumentIndex:0,playState:"pause",showPlayer:!1,previewModal:!1,showPreivew:!1,previewUrl:"",showCloseBtn:!0,iframeSrc:""}),h=N(!1),C=V(),k=async()=>{const a=b.getSubjectInstruments,t=sessionStorage.getItem("musicSubjectList")?JSON.parse(sessionStorage.getItem("musicSubjectList")):[],l=[];a.forEach(d=>{t.find(P=>P.id===d.id)&&l.push(d)}),e.tags=[{name:"全部",id:0,value:0,label:"全部"},...l]},w=async()=>{var t;e.loading=!0;let a={};try{a=await xe({...c,musicalInstrumentId:e.tagIndex?e.tagIndex:""})}catch(l){console.log(l)}console.log(a,"data",e.reshing,"musicSubject"),e.reshing&&(e.list=[],e.reshing=!1),(a==null?void 0:a.code)===200&&Array.isArray((t=a==null?void 0:a.data)==null?void 0:t.rows)&&(e.list=[...e.list,...a.data.rows],e.finshed=a.data.rows.length<c.rows),e.list[e.listActive]&&_(e.list[e.listActive]),e.loading=!1,setTimeout(()=>{h.value=!0},500)},S=()=>{e.listActive=0,e.showPlayer=!1,e.playState="pause",c.page=1,e.finshed=!1,w()},n=N(),u=()=>{e.loading||e.finshed||(c.page=c.page+1,w())},y=a=>{var t;((t=a.data)==null?void 0:t.api)==="api_fingerPreView"&&(e.showCloseBtn=!a.data.state)};ee(async()=>{await b.getSubjects(),Le(document.querySelector(".musicList-container"),t=>{const l=t[0],{height:d}=l.contentRect;document.documentElement.style.setProperty("--xiaoku-music-height",d+"px")}),k(),await w(),new IntersectionObserver(t=>{t[0].intersectionRatio>0&&u()}).observe(n.value),window.addEventListener("message",y)}),te(()=>{window.removeEventListener("message",y)});const _=async a=>{const t=await Ce({type:"MUSIC",materialId:a.id});(t==null?void 0:t.code)===200&&(a.favitor=t.data)},I=a=>{const t=e.list.findIndex(l=>l.id===a.id);t>-1&&(e.listActive=t),_(a)},f=a=>{const t={};return a==null||a.forEach(l=>{l.id===e.tagIndex&&(t.selected=!0,t.name=l.name)}),t},p=E(()=>(e.list[e.listActive]&&"".concat(F(),"/instrument?modelType=practise&id=").concat(e.list[e.listActive].xmlFileUrl,"&Authorization=").concat(C.getToken,"/#/preview"),e.list[e.listActive]||{})),L=()=>{e.list[e.listActive].favitor=!e.list[e.listActive].favitor,Ae({favoriteFlag:e.list[e.listActive].favitor,type:"MUSIC",materialId:e.list[e.listActive].id})},x=a=>{const t=e.list.findIndex(l=>l.id===a.id);t>-1&&(e.listActive===t?e.playState=e.playState==="play"?"pause":"play":e.playState="play",e.showPlayer=!0,e.listActive=t)},R=E(()=>{const a=e.list[e.listActive],t=(a==null?void 0:a.musicalInstruments)||[],l=[];return t.forEach((d,A)=>{l.push({label:d.name,value:A})}),l}),M=E(()=>{const a=e.list[e.listActive],t=a==null?void 0:a.musicalInstruments;return!!(t&&t.length>1)}),T=()=>{const a=C.getToken,t=e.list[e.listActive];e.iframeSrc="".concat(F(),"/instrument/?id=").concat(t.id,"&modelType=practise&modeType=json&Authorization=").concat(a,"&isPreView=true&part-index=").concat(e.musicInstrumentIndex)},D=a=>{a==="play"?e.playState="play":a==="pause"?e.playState="pause":a==="pre"?e.list[e.listActive-1]&&x(e.list[e.listActive-1]):a==="next"?e.list[e.listActive+1]&&x(e.list[e.listActive+1]):a==="favitor"&&L()};return()=>{let a;return s("div",{class:i.container},[s(U,{align:"center",wrapItem:!1,size:16},{default:()=>[s("img",{style:{cursor:"pointer"},src:fe,class:i.iconBack,onClick:()=>m.push({path:"/xiaoku-ai"})},null),s(ne,{separator:""},{default:()=>[s(q,{onClick:()=>m.push({path:"/xiaoku-ai"})},{default:()=>[g("全部列表")]}),s("img",{class:i.separator,src:me},null),s(q,null,{default:()=>[o.query.name]})]})]}),s("div",{class:[i.wrap,e.showPlayer?i.wrapBottom:""]},[s("div",{class:i.content},[s("div",{class:i.tools},[s(U,{style:{width:"100%"},size:[24,12],wrapItem:!1},{default:()=>[s("div",{id:"music-0"},[s(U,{style:{width:"100%"},size:[24,12],wrapItem:!1},gt(a=e.tags.map(t=>t.instruments&&t.instruments.length>1?s(J,{options:t.instruments,trigger:"hover",value:e.tagIndex,"onUpdate:value":[l=>e.tagIndex=l,()=>{e.reshing=!0,document.querySelector(".musicList-container").scroll(0,0),S()}],key:t.value,class:[i.popSelect]},{default:()=>[s(B,{round:!0,textColor:f(t.instruments).selected?"#fff":"#000",color:f(t.instruments).selected?"#198CFE":"#fff",type:f(t.instruments).selected?"primary":"default",class:[i.textBtn,f(t.instruments).selected&&i.textBtnActive]},{default:()=>[f(t.instruments).name||t.name,s("i",{class:i.iconArrow},null)]})]}):s(B,{round:!0,textColor:e.tagIndex===t.value?"#fff":"#000",color:e.tagIndex===t.value?"#198CFE":"#fff",type:e.tagIndex===t.value?"primary":"default",onClick:()=>{e.tagIndex=t.value||0,e.reshing=!0,document.querySelector(".musicList-container").scroll(0,0),S()}},{default:()=>[t.name]})))?a:{default:()=>[a]})])]}),s(we,{style:{marginLeft:"auto"},round:!0,border:!1,onSearch:t=>{c.name=t,e.reshing=!0,S()}},null)]),s("div",{class:i.contentWrap},[s("div",{class:[i.musicList,"musicList-container"]},[s("div",{class:[i.wrapList,"music-wrap-list"]},[e.list.map((t,l)=>s("div",{class:i.itemContainer},[s("div",{class:[i.item,e.listActive===l&&i.active],onClick:()=>{I(t),T()}},[s("div",{class:i.img},[s(le,{lazy:!0,objectFit:"cover",previewDisabled:!0,src:t.titleImg||be,onLoad:d=>{d.target.dataset.loaded="true"}},null),s(ge,{class:[e.listActive===l&&e.playState==="play"?"":i.showPlayLoading]},null)]),s("div",{class:i.title},[s("div",{class:i.titleName},[s(Se,{text:t.musicSheetName},null)]),s("div",{class:i.titleDes},[t.composer])]),l==0?s(B,ce({color:"#259CFE",textColor:"#fff"},{id:"music-1"},{round:!0,class:i.btn,type:"primary",onClick:d=>{d.stopPropagation(),x(t)}}),{default:()=>[g("试听"),s("img",{src:e.listActive===l&&e.playState==="play"?H:K},null)]}):s(B,{color:"#259CFE",textColor:"#fff",round:!0,class:i.btn,type:"primary",onClick:d=>{d.stopPropagation(),x(t)}},{default:()=>[g("试听"),s("img",{src:e.listActive===l&&e.playState==="play"?H:K},null)]}),s("img",{class:i.arrow,src:ve},null)])])),s("div",{ref:n,class:[i.loadingWrap,e.finshed&&i.showLoading]},[s(X,{show:!0},null)]),!e.loading&&e.list.length===0&&s("div",{class:i.empty},[s(Y,null,null)])])]),s("div",{class:i.musicStaff},[s("div",{class:i.musicName},[p.value.musicSheetName]),s("img",{id:"music-2",style:{display:p.value.id?"":"none"},class:[i.goBtn],src:pt,onClick:()=>{D("pause");const t="".concat(F(),"/instrument?v=").concat(+new Date,"&platform=pc&showGuide=true&id=").concat(p.value.id,"&Authorization=").concat(G.getToken);window.matchMedia("(display-mode: standalone)").matches?(ke.application=window.matchMedia("(display-mode: standalone)").matches,e.previewModal=!0,e.previewUrl=t,e.showPreivew=!1):window.open(t)}},null),s("div",{class:i.rightBtns,style:{display:p.value.id?"":"none"}},[M.value&&s(J,{options:R.value,trigger:"hover",value:e.musicInstrumentIndex,"onUpdate:value":[t=>e.musicInstrumentIndex=t,t=>{t!==e.musicInstrumentIndex&&T()}],class:[i.popSelect]},{default:()=>[s(B,{round:!0,class:[i.textBtn]},{default:()=>[g("切换声轨"),s("i",{class:i.iconArrow},null)]})]}),s("div",{class:i.favitor,onClick:()=>L()},[s(re,{name:"favitor",mode:"out-in"},{default:()=>[p.value.favitor?s("img",{src:ye,key:"1"},null):s("img",{src:_e,key:"2"},null)]})])]),s("div",{class:i.staffImgs},[M.value?s("iframe",{id:"staffIframeRef",style:{width:"100%",height:"100%"},src:e.iframeSrc,onLoad:T},null):s(ue,{name:"van-fade"},{default:()=>{var t,l,d,A,P;return[(t=p.value)!=null&&t.musicSvg||(l=p.value)!=null&&l.musicImg?(P=((d=p.value)==null?void 0:d.musicSvg)||((A=p.value)==null?void 0:A.musicImg))==null?void 0:P.split(",").map(W=>s("img",{src:W,key:W},null)):s(Y,null,null)]}})])])])])]),e.list.length!==0&&s(he,{show:e.showPlayer,playState:e.playState,item:p.value,onChange:t=>D(t)},null),h.value?s(mt,null,null):null,s(de,{show:e.previewModal,"onUpdate:show":[t=>e.previewModal=t,t=>{t||(e.previewUrl="")}],class:i.previewWindow,showIcon:!1,displayDirective:"show"},{default:()=>[s(X,{show:e.showPreivew,style:"--n-opacity-spinning: 1;"},{default:()=>[s("img",{style:{display:e.showCloseBtn?"":"none"},src:ft,class:i.previewClose,onClick:()=>{e.previewModal=!1,e.previewUrl=""}},null),s("iframe",{class:i.previewIframe,onLoad:()=>{e.showPreivew=!1},frameborder:"0",src:e.previewUrl},null)]})]})])}}});export{Rt as default};
|