index-2baeebfa-1720441751292.js 7.5 KB

1
  1. import{T as q}from"./index-ef9fbcb7-1720441751292.js";import{d as w,u as b,e as C,q as B,f as a,x as S,F as _,j as x,k,aC as E,E as W,w as O,aO as P,r as R,A as J}from"./index-6dcf37b5-1720441751292.js";import{a as F,b as L}from"./api-0b6f82b0-1720441751292.js";import{T as V}from"./index-38085d08-1720441751292.js";import{u as D}from"./catchData-90b6e3a9-1720441751292.js";const M="_container_7qbzu_1",U="_tools_7qbzu_8",X="_tagWrap_7qbzu_26",$="_tags_7qbzu_30",G="_firstButton_7qbzu_33",H="_content_7qbzu_51",K="_loadingContent_7qbzu_61",Q="_itemWrap_7qbzu_64",Y="_itemWrapBox_7qbzu_69",Z="_item_7qbzu_64",j="_cover_7qbzu_84",ee="_itemImg_7qbzu_101",te="_itemBg_7qbzu_131",ae="_itemName_7qbzu_156",ne="_popSelect1_7qbzu_164",ie="_textBtn_7qbzu_174",le="_iconArrow_7qbzu_174",ce="_textBtnActive_7qbzu_186",l={container:M,tools:U,tagWrap:X,tags:$,firstButton:G,content:H,loadingContent:K,itemWrap:Q,itemWrapBox:Y,item:Z,cover:j,itemImg:ee,itemBg:te,itemName:ae,popSelect1:ne,textBtn:ie,iconArrow:le,textBtnActive:ce},T=w({name:"ChildNodeSearch",props:{activeRow:{type:Object,default:()=>({})},list:{type:Array,default:()=>[]},loading:{type:Boolean,default:!1}},emits:["selectChildTag"],setup(u,{emit:f}){const{activeRow:r}=P(u),o=R({});J(()=>u.activeRow,()=>{r.value=u.activeRow,v()});const v=()=>{r.value.activeIndex&&(r.value.children||[]).forEach(e=>{if(e.id===r.value.activeIndex){let d,g="";e.children&&(d=[{columnName:e.children[0].columnName,name:"全部",id:""},...e.children],g=e.children[0].columnName,o.value={...e,columnName:g,activeIndex:e.activeIndex,children:d})}})};return B(()=>{v()}),()=>{var c;return a(_,null,[((c=r.value)==null?void 0:c.id)&&a(_,null,[a("div",{class:l.tags},[a(S,{size:[12,8]},{default:()=>{var e;return[a("span",{class:l.firstButton},[r.value.columnName]),(e=r.value)==null?void 0:e.children.map(d=>a(_,null,[a(x,{round:!0,secondary:(r.value.activeIndex||"")!=d.id,type:(r.value.activeIndex||"")==d.id?"primary":"default",onClick:()=>{if(u.loading)return;r.value.activeIndex=d.id;let g,p="";d.children?(g=[{columnName:d.children[0].columnName,name:"全部",id:""},...d.children],p=d.children[0].columnName,o.value={...d,columnName:p,activeIndex:"",children:g}):o.value={},f("selectChildTag",r.value.activeIndex)}},{default:()=>[d.name]})]))]}})]),a(T,{activeRow:o.value,onSelectChildTag:e=>{f("selectChildTag",e||r.value.activeIndex)}},null)])])}}}),ge=w({name:"XiaokuAi",setup(){const u=D(),f=b(),r=localStorage.getItem("xiaoku-ai-search"),o=r?JSON.parse(r):{},v=o.childSelectId||o.tagActiveId,c=C({musicTagIds:v?[v]:[],enable:!0,instrumentId:o.instrumentId||null,keyword:"",page:1,rows:9999}),e=C({tags:[],tagChildren:[],tagActiveId:o.tagActiveId||"",tagActive:{},tagIndex:o.instrumentId||0,list:[],loading:!1,selectParents:{},childSelectId:o.childSelectId||null}),d=(t,i,n=[])=>{for(const s of i){if(s.children&&s.children.length>0){const m=d(t,s.children,[...n,s.id]);if(m.includes(t))return m}if(s.id===t)return[...n,t]}return n},g=(t,i)=>{for(const n of i){if(t.includes(n.id)&&n.children&&n.children.length>0){let s;n.children.forEach(m=>{t.includes(m.id)&&(s=m.id)}),n.activeIndex=s}n.children&&n.children.length>0&&g(t,n.children)}},p=t=>{if(e.loading)return;e.tagActiveId=t.id,e.childSelectId=null;let i,n="";t.children?(i=[{columnName:t.children[0].columnName,name:"全部",id:""},...t.children],n=t.children[0].columnName,e.selectParents={...t,columnName:n,activeIndex:"",children:i}):e.selectParents={},localStorage.setItem("xiaoku-ai-search",JSON.stringify({tagActiveId:e.tagActiveId,instrumentId:c.instrumentId,childSelectId:e.childSelectId})),I()},z=async()=>{const t=await F();if(Array.isArray(t==null?void 0:t.data)&&t.data.length){const i=t.data||[];if(e.tags=[{columnName:i[0].columnName,name:"全部",id:""},...i],!e.tagActiveId)e.tagActiveId=e.tags[0].id;else{const n=d(o.childSelectId,e.tags);g(n,e.tags),e.tags.forEach(s=>{if(s.id===e.tagActiveId){let m,A="";if(s.children){m=[{columnName:s.children[0].columnName,name:"全部",id:""},...s.children],A=s.children[0].columnName;let N;s.children.forEach(y=>{n.includes(y.id)&&(N=y.id)}),e.selectParents={...s,columnName:A,activeIndex:N||"",children:m}}else e.selectParents={}}})}}},I=async()=>{var t;e.loading=!0;try{const i=e.childSelectId||e.tagActiveId,n=await L({...c,musicTagIds:[i]});Array.isArray((t=n==null?void 0:n.data)==null?void 0:t.rows)&&(e.list=n.data.rows)}catch(i){}e.loading=!1};B(async()=>{e.loading=!0;try{if(await z(),await I(),await u.getSubjects(),localStorage.setItem("xiaoku-ai-search",JSON.stringify({tagActiveId:e.tagActiveId,instrumentId:c.instrumentId,childSelectId:e.childSelectId,musicTagIds:c.musicTagIds})),c.instrumentId){let t=[];u.getSubjectInstruments.forEach(i=>{Array.isArray(i.instruments)&&i.instruments.forEach(n=>{c.instrumentId===n.value&&(t=i.instruments||[])})}),t.length>0&&h(t)}}catch(t){}e.loading=!1});const h=t=>{const i={};return t==null||t.forEach(n=>{n.id===e.tagIndex&&(i.selected=!0,i.name=n.name)}),i};return()=>a("div",{class:l.container},[a("div",{class:l.tools},[a("div",{class:l.tagWrap},[a("div",{class:l.tags},[a(S,{size:[12,8]},{default:()=>{var t,i;return[a("span",{class:l.firstButton},[(i=(t=e.tags)==null?void 0:t[0])==null?void 0:i.columnName]),e.tags.map(n=>a(_,null,[a(x,{round:!0,secondary:e.tagActiveId!==n.id,type:e.tagActiveId===n.id?"primary":"default",onClick:()=>p(n)},{default:()=>[n.name]})]))]}})]),a(T,{activeRow:e.selectParents,loading:e.loading,onSelectChildTag:t=>{e.childSelectId=t,localStorage.setItem("xiaoku-ai-search",JSON.stringify({tagActiveId:e.tagActiveId,instrumentId:c.instrumentId,childSelectId:e.childSelectId,musicTagIds:c.musicTagIds})),I()}},null),a("div",{class:l.tags},[a(S,{size:[12,8]},{default:()=>[a("span",{class:l.firstButton},[k("乐器")]),u.getSubjectInstruments.map(t=>t.instruments&&t.instruments.length>1?a(E,{options:t.instruments,trigger:"hover",value:e.tagIndex,"onUpdate:value":[i=>e.tagIndex=i,()=>{c.instrumentId=e.tagIndex,localStorage.setItem("xiaoku-ai-search",JSON.stringify({tagActiveId:e.tagActiveId,instrumentId:e.tagIndex,musicTagIds:c.musicTagIds})),I()}],scrollable:!0,key:t.value,class:[l.popSelect1]},{default:()=>[a(x,{round:!0,textColor:h(t.instruments).selected?"#fff":"#000",color:h(t.instruments).selected?"#198CFE":"rgba(46, 51, 56, .05)",type:h(t.instruments).selected?"primary":"default",class:[l.textBtn,h(t.instruments).selected&&l.textBtnActive]},{default:()=>[h(t.instruments).name||t.name,a("i",{class:l.iconArrow},null)]})]}):a(x,{round:!0,textColor:e.tagIndex===(t.value||0)?"#fff":"#000",color:e.tagIndex===(t.value||0)?"#198CFE":"rgba(46, 51, 56, .05)",type:e.tagIndex===(t.value||0)?"primary":"default",onClick:()=>{e.tagIndex=t.value||0,c.instrumentId=t.value,localStorage.setItem("xiaoku-ai-search",JSON.stringify({tagActiveId:e.tagActiveId,instrumentId:t.value,musicTagIds:c.musicTagIds})),I()}},{default:()=>[t.name]}))]})])]),a(q,{round:!0,onSearch:t=>{c.keyword=t,I()}},null)]),a(W,{show:e.loading},{default:()=>[a("div",{class:[l.content,e.loading?l.loadingContent:""]},[e.list.length>0?e.list.map((t,i)=>a("div",{class:l.itemWrap},[a("div",{class:l.itemWrapBox},[a("div",{class:l.item,key:"item-".concat(i),onClick:()=>{sessionStorage.setItem("musicSubjectList",JSON.stringify(t.subjects)),f.push({path:"/xiaoku-music",query:{id:t.id,name:t.name}})}},[a("div",{class:l.cover},[a("div",{class:l.itemImg},[a("div",{class:l.itemBg},null),a(O,{objectFit:"cover",src:t.coverImg,lazy:!0,previewDisabled:!0,onLoad:n=>{n.target.dataset.loaded="true"}},null)])]),a("div",{class:l.itemName},[t.name])])])])):"",!e.loading&&e.list.length<=0&&a(V,null,null)])]})])}});export{ge as default};