index-6d07e74d.js 3.4 KB

1
  1. import{T as I}from"./index-299a84a9.js";import{d as y,u as w,e as u,n as T,f as s,v as m,F as h,j as f,A as C,y as A,b4 as N}from"./index-0bccd456.js";import{a as B,b}from"./api-e80cb5e1.js";import{T as k}from"./index-276d8094.js";const S="_container_hcm5w_1",j="_tools_hcm5w_8",z="_tagWrap_hcm5w_26",W="_tags_hcm5w_30",F="_firstButton_hcm5w_33",x="_content_hcm5w_48",L="_loadingContent_hcm5w_52",O="_item_hcm5w_55",V="_cover_hcm5w_61",q="_itemImg_hcm5w_78",D="_itemBg_hcm5w_108",E="_itemName_hcm5w_133",o={container:S,tools:j,tagWrap:z,tags:W,firstButton:F,content:x,loadingContent:L,item:O,cover:V,itemImg:q,itemBg:D,itemName:E};function M(l){return typeof l=="function"||Object.prototype.toString.call(l)==="[object Object]"&&!N(l)}const G=y({name:"XiaokuAi",setup(){const l=w(),r=u({musicTagIds:[],enable:!0,keyword:"",page:1,rows:9999}),a=u({tags:[],tagChildren:[],tagActiveId:"",tagActive:{},list:[],loading:!1}),p=async()=>{const t=await B();if(Array.isArray(t==null?void 0:t.data)&&t.data.length){a.tags=t.data,a.tagActiveId=t.data[0].id;const e=[];g(t.data[0].children,e),a.tagChildren=e}},d=async()=>{var t;a.loading=!0;try{const e=await b({...r,musicTagIds:[a.tagActiveId,...r.musicTagIds].filter(Boolean)});Array.isArray((t=e==null?void 0:e.data)==null?void 0:t.rows)&&(a.list=e.data.rows)}catch(e){}a.loading=!1},g=(t,e)=>{if(!(t!=null&&t.length))return;const n={columnName:t[0].columnName,list:[]},i=[];for(let c=0;c<t.length;c++)n.list.push({name:t[c].name,id:t[c].id,activeIndex:-1}),t[c].children&&i.push(...t[c].children);e.push(n),i.length&&g(i,e)};T(async()=>{a.loading=!0;try{await p(),await d()}catch(t){}a.loading=!1});const v=(t,e)=>{a.tagActiveId=t.id,r.musicTagIds=[];const n=[];g(a.tags[e].children,n),a.tagChildren=n,d()},_=(t,e)=>{const n=a.tagChildren[t].list[a.tagChildren[t].activeIndex],i=a.tagChildren[t].list[e];n&&n.id!==i.id&&(r.musicTagIds=r.musicTagIds.filter(c=>c!==n.id)),r.musicTagIds.includes(i.id)?(r.musicTagIds=r.musicTagIds.filter(c=>c!==i.id),a.tagChildren[t].activeIndex=-1):(r.musicTagIds.push(i.id),a.tagChildren[t].activeIndex=e),d()};return()=>{let t;return s("div",{class:o.container},[s("div",{class:o.tools},[s("div",{class:o.tagWrap},[s("div",{class:o.tags},[s(m,{size:[20,12]},{default:()=>{var e,n;return[s("span",{class:o.firstButton},[(n=(e=a.tags)==null?void 0:e[0])==null?void 0:n.columnName]),a.tags.map((i,c)=>s(h,null,[s(f,{round:!0,secondary:a.tagActiveId!==i.id,type:a.tagActiveId===i.id?"primary":"default",onClick:()=>v(i,c)},{default:()=>[i.name]})]))]}})]),a.tagChildren.map((e,n)=>s("div",{class:o.tags},[s(m,{size:[24,12]},{default:()=>[s("span",{class:o.firstButton},[e.columnName]),e.list.map((i,c)=>s(h,null,[s(f,{round:!0,secondary:e.activeIndex!==c,type:e.activeIndex===c?"primary":"default",onClick:()=>_(n,c)},{default:()=>[i.name]})]))]})]))]),s(I,{round:!0,onSearch:e=>{r.keyword=e,d()}},null)]),s(C,{show:a.loading},{default:()=>[s("div",{class:[o.content,a.loading?o.loadingContent:""]},[a.list.length>0?s(m,{size:[50,40]},M(t=a.list.map((e,n)=>s("div",{class:o.item,key:"item-".concat(n),onClick:()=>l.push({path:"/xiaoku-music",query:{id:e.id,name:e.name}})},[s("div",{class:o.cover},[s("div",{class:o.itemImg},[s("div",{class:o.itemBg},null),s(A,{objectFit:"cover",src:e.coverImg,lazy:!0,previewDisabled:!0,onLoad:i=>{i.target.dataset.loaded="true"}},null)])]),s("div",{class:o.itemName},[e.name])])))?t:{default:()=>[t]}):"",!a.loading&&a.list.length<=0&&s(k,null,null)])]})])}}});export{G as default};