select-tag.d9195834.js 2.4 KB

1
  1. import{s as x,r as T}from"./index.487d5e4a.js";import{b as k}from"./index.3a6f129f.js";import{d as _,a as e,a3 as S,J as h,x as v,b as d,i as j,W as E,B as g}from"./vendor.527e131c.js";/* empty css *//* empty css *//* empty css */import{c as f}from"./index.926ca9c5.js";const N="_select_1yasi_1",V="_title_1yasi_17",B="_tit_1yasi_17",F="_childContent_1yasi_31",A="_item_1yasi_36",w="_radio_1yasi_46",z="_btn_1yasi_73";var t={select:N,title:V,tit:B,childContent:F,item:A,"radio-group":"_radio-group_1yasi_46",radio:w,btn:z},D=_({name:"SelectTagChild",props:{child:{type:Array,default:()=>[]},onSelect:{type:Function,default:()=>{}}},setup({child:u,onSelect:c},{attrs:p}){return()=>{const o=p.selected;return e(S,{class:f(t.childContent,t["radio-group"]),modelValue:o,"onUpdate:modelValue":i=>{c(i)}},{default:()=>[e(h,{name:0,class:t.radio,onClick:()=>c([])},{default:()=>[e(v,{class:f(t.item,"van-ellipsis"),type:"primary",plain:o.length!==0,round:!0,size:"large"},{default:()=>[d("\u5168\u90E8")]})]}),u.map(i=>e(h,{key:i.id,name:i.id,class:t.radio},{default:()=>[e(v,{class:f(t.item,"van-ellipsis"),plain:!o.includes(i.id),type:"primary",round:!0,size:"large"},{default:()=>[i.name]})]}))]})}}}),P=_({name:"SelectTag",props:{onComfirm:{type:Function,default:()=>{}},onCancel:{type:Function,default:()=>{}},defaultValue:{type:String,default:""}},setup({onCancel:u,onComfirm:c,defaultValue:p}){const o=x.platformType==="STUDENT"?"/api-student":"/api-teacher",{isLoading:i,state:l}=k(T(o+"/MusicTag/tree"),null),C=()=>{for(const s in n)Object.prototype.hasOwnProperty.call(n,s)&&delete n[s];u()},b=(p||"").split(",").map(s=>Number(s)),n=j({}),y={};return E(l,()=>{if(l.value){const s=l.value&&l.value.data||[];for(const a of s){const m=a.children.map(r=>(y[r.id]=r.name,r.id));n[a.id]=b.filter(r=>m.includes(Number(r)))}}}),()=>{const s=l.value&&l.value.data||[];return e("div",{class:t.select},[e("h4",{class:t.title},[d("\u5168\u90E8\u6807\u7B7E")]),e("div",{class:t.content},[s.map(a=>e("div",{class:t.list,key:a.id},[e("div",{class:t.tit},[a.name]),e(D,{key:a.id,selected:n[a.id]||[],child:a.children||[],onSelect:m=>{n[a.id]=m}},null)]))]),e("footer",{class:"van-safe-area-bottom van-hairline--top"},[e(g,{class:t.btn,round:!0,onClick:C},{default:()=>[d("\u91CD\u7F6E")]}),e(g,{class:t.btn,type:"primary",round:!0,onClick:()=>c(n,y)},{default:()=>[d("\u786E\u8BA4")]})])])}}});export{P as S};