1 |
- import{T as I}from"./index-d875441d.js";import{d as y,u as T,e as f,q as C,f as a,X as m,j as u,F as p,a2 as q,o as N,a$ as A}from"./index-42a7007b.js";import{a as w,b}from"./api-e9958538.js";import{T as k}from"./index-24cecb23.js";const S="_container_1uq38_1",B="_tools_1uq38_7",j="_tagWrap_1uq38_21",z="_tags_1uq38_25",W="_content_1uq38_37",F="_item_1uq38_41",x="_cover_1uq38_47",L="_itemImg_1uq38_64",O="_itemBg_1uq38_94",V="_itemName_1uq38_119",c={container:S,tools:B,tagWrap:j,tags:z,content:W,item:F,cover:x,itemImg:L,itemBg:O,itemName:V};function X(d){return typeof d=="function"||Object.prototype.toString.call(d)==="[object Object]"&&!A(d)}const P=y({name:"XiaokuAi",setup(){const d=T(),o=f({musicTagIds:[],keyword:"",page:1,rows:9999}),s=f({tags:[],tagChildren:[],tagActiveId:"",tagActive:{},list:[],loading:!1}),v=async()=>{const e=await w();if(Array.isArray(e==null?void 0:e.data)&&e.data.length){s.tags=e.data,s.tagActiveId=e.data[0].id;const t=[];g(e.data[0].children,t),s.tagChildren=t}},l=async()=>{var t;s.loading=!0;const e=await b({...o,musicTagIds:[s.tagActiveId,...o.musicTagIds].filter(Boolean)});Array.isArray((t=e==null?void 0:e.data)==null?void 0:t.rows)&&(s.list=e.data.rows),s.loading=!1},g=(e,t)=>{const i={columnName:e[0].columnName,list:[]},r=[];for(let n=0;n<e.length;n++)i.list.push({name:e[n].name,id:e[n].id,activeIndex:-1}),e[n].children&&r.push(...e[n].children);t.push(i),r.length&&g(r,t)};C(async()=>{await v(),l()});const h=(e,t)=>{s.tagActiveId=e.id,o.musicTagIds=[];const i=[];g(s.tags[t].children,i),s.tagChildren=i,l()},_=(e,t)=>{const i=s.tagChildren[e].list[s.tagChildren[e].activeIndex],r=s.tagChildren[e].list[t];i&&i.id!==r.id&&(o.musicTagIds=o.musicTagIds.filter(n=>n!==i.id)),o.musicTagIds.includes(r.id)?(o.musicTagIds=o.musicTagIds.filter(n=>n!==r.id),s.tagChildren[e].activeIndex=-1):(o.musicTagIds.push(r.id),s.tagChildren[e].activeIndex=t),l()};return()=>{let e;return a("div",{class:c.container},[a("div",{class:c.tools},[a("div",{class:c.tagWrap},[a("div",{class:c.tags},[a(m,{size:[24,12]},{default:()=>[a(u,{quaternary:!0,disabled:!0},{default:()=>{var t,i;return[(i=(t=s.tags)==null?void 0:t[0])==null?void 0:i.columnName]}}),s.tags.map((t,i)=>a(p,null,[a(u,{round:!0,secondary:s.tagActiveId!==t.id,type:s.tagActiveId===t.id?"primary":"default",onClick:()=>h(t,i)},{default:()=>[t.name]})]))]})]),s.tagChildren.map((t,i)=>a("div",{class:c.tags},[a(m,{size:[24,12]},{default:()=>[a(u,{quaternary:!0,disabled:!0},{default:()=>[t.columnName]}),t.list.map((r,n)=>a(p,null,[a(u,{round:!0,secondary:t.activeIndex!==n,type:t.activeIndex===n?"primary":"default",onClick:()=>_(i,n)},{default:()=>[r.name]})]))]})]))]),a(I,{round:!0,onSearch:t=>{o.keyword=t,l()}},null)]),a(q,{show:s.loading},{default:()=>[a("div",{class:c.content},[s.list.length>0?a(m,{size:[50,40]},X(e=s.list.map((t,i)=>a("div",{class:c.item,key:`item-${i}`,onClick:()=>d.push({path:"/xiaoku-music",query:{id:t.id,name:t.name}})},[a("div",{class:c.cover},[a("div",{class:c.itemImg},[a("div",{class:c.itemBg},null),a(N,{objectFit:"cover",src:t.coverImg,lazy:!0,previewDisabled:!0,onLoad:r=>{r.target.dataset.loaded="true"}},null)])]),a("div",{class:c.itemName},[t.name])])))?e:{default:()=>[e]}):a(k,null,null)])]})])}}});export{P as default};
|