instruments-cc52bf6b.js 15 KB

1
  1. import{aV as M,bp as ke,bq as E,br as X,d as R,bs as L,bt as _,bu as K,l as x,bv as Se,e as k,bw as de,bx as ee,by as ye,bz as te,f as u,bA as me,bB as ae,bC as N,bD as ne,bE as fe,bF as xe,bG as Be,w as $,bH as z,bI as he,bJ as le,bK as Oe,ae as J,bL as pe,aY as oe,bM as He,bN as Pe,c as we,bO as ie,bP as Ee,bQ as Me}from"./index-4e09f498.js";import{u as De}from"./index-fbe8e29c.js";const[Ie,y,re]=M("picker"),ve=e=>e.find(o=>!o.disabled)||e[0];function Ae(e,o){const t=e[0];if(t){if(Array.isArray(t))return"multiple";if(o.children in t)return"cascade"}return"default"}function G(e,o){o=X(o,0,e.length);for(let t=o;t<e.length;t++)if(!e[t].disabled)return t;for(let t=o-1;t>=0;t--)if(!e[t].disabled)return t;return 0}const se=(e,o,t)=>o!==void 0&&!!e.find(r=>r[t.value]===o);function Z(e,o,t){const r=e.findIndex(m=>m[t.value]===o),l=G(e,r);return e[l]}function Le(e,o,t){const r=[];let l={[o.children]:e},m=0;for(;l&&l[o.children];){const c=l[o.children],f=t.value[m];if(l=ke(f)?Z(c,f,o):void 0,!l&&c.length){const d=ve(c)[o.value];l=Z(c,d,o)}m++,r.push(c)}return r}function Ne(e){const{transform:o}=window.getComputedStyle(e),t=o.slice(7,o.length-1).split(", ")[5];return Number(t)}function $e(e){return E({text:"text",value:"value",children:"children"},e)}const ce=200,ue=300,Re=15,[be,Q]=M("picker-column"),ge=Symbol(be);var Ve=R({name:be,props:{value:L,fields:_(Object),options:K(),readonly:Boolean,allowHtml:Boolean,optionHeight:_(Number),swipeDuration:_(L),visibleOptionNum:_(L)},emits:["change","clickOption","scrollInto"],setup(e,{emit:o,slots:t}){let r,l,m,c,f;const d=x(),T=x(),h=x(0),b=x(0),B=Se(),O=()=>e.options.length,v=()=>e.optionHeight*(+e.visibleOptionNum-1)/2,C=s=>{let n=G(e.options,s);const a=-n*e.optionHeight,i=()=>{n>O()-1&&(n=G(e.options,s));const p=e.options[n][e.fields.value];p!==e.value&&o("change",p)};r&&a!==h.value?f=i:i(),h.value=a},g=()=>e.readonly||!e.options.length,H=s=>{r||g()||(f=null,b.value=ce,C(s),o("clickOption",e.options[s]))},S=s=>X(Math.round(-s/e.optionHeight),0,O()-1),V=k(()=>S(h.value)),U=(s,n)=>{const a=Math.abs(s/n);s=h.value+a/.003*(s<0?-1:1);const i=S(s);b.value=+e.swipeDuration,C(i)},D=()=>{r=!1,b.value=0,f&&(f(),f=null)},Y=s=>{if(!g()){if(B.start(s),r){const n=Ne(T.value);h.value=Math.min(0,n-v())}b.value=0,l=h.value,m=Date.now(),c=l,f=null}},j=s=>{if(g())return;B.move(s),B.isVertical()&&(r=!0,me(s,!0));const n=X(l+B.deltaY.value,-(O()*e.optionHeight),e.optionHeight),a=S(n);a!==V.value&&o("scrollInto",e.options[a]),h.value=n;const i=Date.now();i-m>ue&&(m=i,c=n)},I=()=>{if(g())return;const s=h.value-c,n=Date.now()-m;if(n<ue&&Math.abs(s)>Re){U(s,n);return}const i=S(h.value);b.value=ce,C(i),setTimeout(()=>{r=!1},0)},P=()=>{const s={height:"".concat(e.optionHeight,"px")};return e.options.map((n,a)=>{const i=n[e.fields.text],{disabled:p}=n,A=n[e.fields.value],Te={role:"button",style:s,tabindex:p?-1:0,class:[Q("item",{disabled:p,selected:A===e.value}),n.className],onClick:()=>H(a)},Ce={class:"van-ellipsis",[e.allowHtml?"innerHTML":"textContent"]:i};return u("li",Te,[t.option?t.option(n,a):u("div",Ce,null)])})};return de(ge),ee({stopMomentum:D}),ye(()=>{const s=r?Math.floor(-h.value/e.optionHeight):e.options.findIndex(i=>i[e.fields.value]===e.value),n=G(e.options,s),a=-n*e.optionHeight;r&&n<s&&D(),h.value=a}),te("touchmove",j,{target:d}),()=>u("div",{ref:d,class:Q(),onTouchstartPassive:Y,onTouchend:I,onTouchcancel:I},[u("ul",{ref:T,style:{transform:"translate3d(0, ".concat(h.value+v(),"px, 0)"),transitionDuration:"".concat(b.value,"ms"),transitionProperty:b.value?"all":"none"},class:Q("wrapper"),onTransitionend:D},[P()])])}});const[_e]=M("picker-toolbar"),W={title:String,cancelButtonText:String,confirmButtonText:String},Fe=["cancel","confirm","title","toolbar"],Ge=Object.keys(W);var Ke=R({name:_e,props:W,emits:["confirm","cancel"],setup(e,{emit:o,slots:t}){const r=()=>{if(t.title)return t.title();if(e.title)return u("div",{class:[y("title"),"van-ellipsis"]},[e.title])},l=()=>o("cancel"),m=()=>o("confirm"),c=()=>{const d=e.cancelButtonText||re("cancel");return u("button",{type:"button",class:[y("cancel"),ae],onClick:l},[t.cancel?t.cancel():d])},f=()=>{const d=e.confirmButtonText||re("confirm");return u("button",{type:"button",class:[y("confirm"),ae],onClick:m},[t.confirm?t.confirm():d])};return()=>u("div",{class:y("toolbar")},[t.toolbar?t.toolbar():[c(),r(),f()]])}});const[We,at]=M("picker-group"),Ue=Symbol(We);E({tabs:K(),activeTab:N(0),nextStepText:String},W);const Ye=E({loading:Boolean,readonly:Boolean,allowHtml:Boolean,optionHeight:N(44),showToolbar:ne,swipeDuration:N(1e3),visibleOptionNum:N(6)},W),je=E({},Ye,{columns:K(),modelValue:K(),toolbarPosition:fe("top"),columnsFieldNames:Object});var ze=R({name:Ie,props:je,emits:["confirm","cancel","change","scrollInto","clickOption","update:modelValue"],setup(e,{emit:o,slots:t}){const r=x(),l=x(e.modelValue.slice(0)),{parent:m}=de(Ue),{children:c,linkChildren:f}=xe(ge);f();const d=k(()=>$e(e.columnsFieldNames)),T=k(()=>Be(e.optionHeight)),h=k(()=>Ae(e.columns,d.value)),b=k(()=>{const{columns:n}=e;switch(h.value){case"multiple":return n;case"cascade":return Le(n,d.value,l);default:return[n]}}),B=k(()=>b.value.some(n=>n.length)),O=k(()=>b.value.map((n,a)=>Z(n,l.value[a],d.value))),v=k(()=>b.value.map((n,a)=>n.findIndex(i=>i[d.value.value]===l.value[a]))),C=(n,a)=>{if(l.value[n]!==a){const i=l.value.slice(0);i[n]=a,l.value=i}},g=()=>({selectedValues:l.value.slice(0),selectedOptions:O.value,selectedIndexes:v.value}),H=(n,a)=>{C(a,n),h.value==="cascade"&&l.value.forEach((i,p)=>{const A=b.value[p];se(A,i,d.value)||C(p,A.length?A[0][d.value.value]:void 0)}),J(()=>{o("change",E({columnIndex:a},g()))})},S=(n,a)=>{const i={columnIndex:a,currentOption:n};o("clickOption",E(g(),i)),o("scrollInto",i)},V=()=>{c.forEach(a=>a.stopMomentum());const n=g();return J(()=>{o("confirm",n)}),n},U=()=>o("cancel",g()),D=()=>b.value.map((n,a)=>u(Ve,{value:l.value[a],fields:d.value,options:n,readonly:e.readonly,allowHtml:e.allowHtml,optionHeight:T.value,swipeDuration:e.swipeDuration,visibleOptionNum:e.visibleOptionNum,onChange:i=>H(i,a),onClickOption:i=>S(i,a),onScrollInto:i=>{o("scrollInto",{currentOption:i,columnIndex:a})}},{option:t.option})),Y=n=>{if(B.value){const a={height:"".concat(T.value,"px")},i={backgroundSize:"100% ".concat((n-T.value)/2,"px")};return[u("div",{class:y("mask"),style:i},null),u("div",{class:[pe,y("frame")],style:a},null)]}},j=()=>{const n=T.value*+e.visibleOptionNum,a={height:"".concat(n,"px")};return u("div",{ref:r,class:y("columns"),style:a},[D(),Y(n)])},I=()=>{if(e.showToolbar&&!m)return u(Ke,Oe(le(e,Ge),{onConfirm:V,onCancel:U}),le(t,Fe))};$(b,n=>{n.forEach((a,i)=>{a.length&&!se(a,l.value[i],d.value)&&C(i,ve(a)[d.value.value])})},{immediate:!0});let P;return $(()=>e.modelValue,n=>{!z(n,l.value)&&!z(n,P)&&(l.value=n.slice(0),P=n.slice(0))},{deep:!0}),$(l,n=>{z(n,e.modelValue)||(P=n.slice(0),o("update:modelValue",P))},{immediate:!0}),te("touchmove",me,{target:r}),ee({confirm:V,getSelectedOptions:()=>O.value}),()=>{var n,a;return u("div",{class:y()},[e.toolbarPosition==="top"?I():null,e.loading?u(he,{class:y("loading")},null):null,(n=t["columns-top"])==null?void 0:n.call(t),j(),(a=t["columns-bottom"])==null?void 0:a.call(t),e.toolbarPosition==="bottom"?I():null])}}});const lt=oe(ze),[Qe,w,qe]=M("list"),Xe={error:Boolean,offset:N(300),loading:Boolean,disabled:Boolean,finished:Boolean,scroller:Object,errorText:String,direction:fe("down"),loadingText:String,finishedText:String,immediateCheck:ne};var Je=R({name:Qe,props:Xe,emits:["load","update:error","update:loading"],setup(e,{emit:o,slots:t}){const r=x(e.loading),l=x(),m=x(),c=De(),f=He(l),d=k(()=>e.scroller||f.value),T=()=>{J(()=>{if(r.value||e.finished||e.disabled||e.error||(c==null?void 0:c.value)===!1)return;const{direction:v}=e,C=+e.offset,g=ie(d);if(!g.height||Ee(l))return;let H=!1;const S=ie(m);v==="up"?H=g.top-S.top<=C:H=S.bottom-g.bottom<=C,H&&(r.value=!0,o("update:loading",!0),o("load"))})},h=()=>{if(e.finished){const v=t.finished?t.finished():e.finishedText;if(v)return u("div",{class:w("finished-text")},[v])}},b=()=>{o("update:error",!1),T()},B=()=>{if(e.error){const v=t.error?t.error():e.errorText;if(v)return u("div",{role:"button",class:w("error-text"),tabindex:0,onClick:b},[v])}},O=()=>{if(r.value&&!e.finished&&!e.disabled)return u("div",{class:w("loading")},[t.loading?t.loading():u(he,{class:w("loading-icon")},{default:()=>[e.loadingText||qe("loading")]})])};return $(()=>[e.loading,e.finished,e.error],T),c&&$(c,v=>{v&&T()}),Pe(()=>{r.value=e.loading}),we(()=>{e.immediateCheck&&T()}),ee({check:T}),te("scroll",T,{target:d,passive:!0}),()=>{var v;const C=(v=t.default)==null?void 0:v.call(t),g=u("div",{ref:m,class:w("placeholder")},null);return u("div",{ref:l,role:"feed",class:w(),"aria-busy":r.value},[e.direction==="down"?C:g,O(),h(),B(),e.direction==="up"?C:g])}}});const it=oe(Je),[Ze,q]=M("progress"),et={color:String,inactive:Boolean,pivotText:String,textColor:String,showPivot:ne,pivotColor:String,trackColor:String,strokeWidth:L,percentage:{type:L,default:0,validator:e=>+e>=0&&+e<=100}};var tt=R({name:Ze,props:et,setup(e){const o=k(()=>e.inactive?void 0:e.color),t=()=>{const{textColor:r,pivotText:l,pivotColor:m,percentage:c}=e,f=l!=null?l:"".concat(c,"%");if(e.showPivot&&f){const d={color:r,left:"".concat(+c,"%"),transform:"translate(-".concat(+c,"%,-50%)"),background:m||o.value};return u("span",{style:d,class:q("pivot",{inactive:e.inactive})},[f])}};return()=>{const{trackColor:r,percentage:l,strokeWidth:m}=e,c={background:r,height:Me(m)},f={width:"".concat(l,"%"),background:o.value};return u("div",{class:q(),style:c},[u("span",{class:q("portion",{inactive:e.inactive}),style:f},null),t()])}}});const rt=oe(tt),F={"Acoustic Grand Piano":"大钢琴","Bright Acoustic Piano":"明亮的钢琴","Electric Grand Piano":"电钢琴","Rhodes Piano":"柔和的电钢琴","Chorused Piano":"加合唱效果的电钢琴",Harpsichord:"羽管键琴",Clavichord:"科拉维科特琴",Celesta:"钢片琴",Glockenspiel:"钢片琴","Music box":"八音盒",Vibraphone:"颤音琴",Marimba:"马林巴",Xylophone:"木琴","Tubular Bells":"管钟",Dulcimer:"大扬琴","Hammond Organ":"击杆风琴","Percussive Organ":"打击式风琴","Rock Organ":"摇滚风琴","Church Organ":"教堂风琴","Reed Organ":"簧管风琴",Accordian:"手风琴",Harmonica:"口琴","Tango Accordian":"探戈手风琴","Acoustic Guitar":"钢弦吉他","Electric Guitar":"闷音电吉他","Overdriven Guitar":"加驱动效果的电吉他","Distortion Guitar":"加失真效果的电吉他","Guitar Harmonics":"吉他和音","Acoustic Bass":"大贝司","Electric Bass":"电贝司","Fretless Bass":"无品贝司","Slap Bass":"掌击","Synth Bass":"电子合成",Violin:"小提琴",Viola:"中提琴",Cello:"大提琴",Contrabass:"低音大提琴","Tremolo Strings":"弦乐群颤音音色","Pizzicato Strings":"弦乐群拨弦音色","Orchestral Harp":"竖琴",Timpani:"定音鼓","String Ensemble":"弦乐合奏音色","Synth Strings":"合成弦乐合奏音色","Choir Aahs":"人声合唱","Voice Oohs":"人声","Synth Voice":"合成人声","Orchestra Hit":"管弦乐敲击齐奏",Trumpet:"小号",Trombone:"长号",Tuba:"大号","Muted Trumpet":"加弱音器小号","French Horn":"法国号","Brass Section":"铜管组","Synth Brass":"合成铜管音色","Soprano Sax":"高音萨克斯管","Alto Sax":"中音萨克斯管","Tenor Sax":"次中音萨克斯管","Baritone Sax":"低音萨克斯管",Oboe:"双簧管","English Horn":"英国管",Bassoon:"巴松",Clarinet:"单簧管","Soprano Saxophone":"高音萨克斯管","Alto Saxophone":"中音萨克斯管","Tenor Saxophone":"次中音萨克斯管","Baritone Saxophone":"低音萨克斯管",Piccolo:"短笛",Flute:"长笛",Recorder:"竖笛","Soprano Recorder":"高音竖笛","Pan Flute":"排箫","Bottle Blow":"瓶木管",Whistle:"口哨声",Ocarina:"陶笛",Lead:"合成主音","Lead lead":"合成主音","Pad age":"合成音色",Pad:"合成音色",FX:"合成效果 科幻",Sitar:"西塔尔",Banjo:"班卓琴",Shamisen:"三昧线",Koto:"十三弦筝",Kalimba:"卡林巴",Bagpipe:"风笛",Fiddle:"民族提琴",Shanai:"山奈","Tinkle Bell":"叮当铃",Agogos:"阿戈戈铃","Steel Drums":"钢鼓","Taiko Drum":"太鼓","Melodic Toms":"嗵嗵鼓","Synth Drums":"合成鼓","Reverse Cymbals":"反向镲","Agogo Bells":"阿戈戈铃","Taiko Drums":"太鼓",Bongos:"邦戈鼓","Bongo Bell":"邦戈铃",Congas:"康加鼓",Guiro:"刮壶","Guitar Fret Noise":"吉他换把杂音","Breath Noise":"呼吸声",Seashore:"海浪声","Bird Tweet":"鸟鸣","Telephone Ring":"电话铃",Helicopter:"直升机",Applause:"鼓掌声",Gunshot:"枪声","Acoustic Bass Drum":"大鼓","Bass Drum":"大鼓","Side Drum":"小鼓鼓边","Acoustic Snare":"小鼓","Hand Claps":"拍手","Electric Snare":"小鼓","Low Floor Tom":"低音嗵鼓","Closed Hi-Hat":"闭合踩镲","High Floor Tom":"高音落地嗵鼓","Pedal Hi-Hat":"脚踏踩镲","Low Tom":"低音嗵鼓","Open Hi-Hat":"开音踩镲","Low-Mid Tom":"中低音嗵鼓","Hi Mid Tom":"高音鼓","Crash Cymbals":"对镲","High Tom":"高音嗵鼓","Ride Cymbals":"叮叮镲","Chinese Cymbals":"中国镲","Ride Bell":"圆铃",Tambourine:"铃鼓","Splash Cymbal":"溅音镲",Cowbell:"牛铃","Crash Cymbal":"强音钹","Vibra-Slap":"颤音器","Ride Cymbal":"打点钹","Hi Bongo":"高音邦戈鼓","Low Bongo":"低音邦戈鼓","Mute Hi Conga":"弱音高音康加鼓","Open Hi Conga":"强音高音康加鼓","Low Conga":"低音康加鼓","High Timbale":"高音天巴鼓","Low Timbale":"低音天巴鼓","High Agogo":"高音阿戈戈铃","Low Agogo":"低音阿戈戈铃",Cabasa:"卡巴萨",Maracas:"沙锤","Short Whistle":"短口哨","Long Whistle":"长口哨","Short Guiro":"短刮壶","Long Guiro":"长刮壶",Claves:"响棒","Hi Wood Block":"高音木鱼","Low Wood Block":"低音木鱼","Mute Triangle":"弱音三角铁","Open Triangle":"强音三角铁","Drum Set":"架子鼓","Hulusi flute":"葫芦丝",Melodica:"口风琴",Nai:"口风琴","Snare Drum":"小军鼓",Cymbal:"镲",Cymbals:"镲","Horn in F":"圆号",Triangle:"三角铁",Vibrato:"颤音琴","Suspend Cymbals":"吊镲","Suspended Cymbals":"吊镲","Tom-Toms":"嗵嗵鼓",Bell:"铃铛",Bells:"铃铛","Alto Clarinet":"中音单簧管","Bass Clarinet":"低音单簧管",Cornet:"短号",Euphonium:"上低音号","crash cymbals":"对镲",Castanets:"响板",Shaker:"沙锤","Mark tree":"音树",Chimes:"管钟","Mark Tree":"音树","Tom-toms":"嗵嗵鼓","Hi-Hat":"踩镲","Sleigh Bells":"雪橇铃",Flexatone:"弹音器","Brake drum":"闸鼓",Gong:"锣","concert tom":"音乐会嗵嗵鼓","brake drum":"车轮鼓","finger cymbal":"指钹","ride cymbal":"叮叮镲","Concert Toms":"音乐会嗵嗵鼓",Vibraslap:"弹音器","Wood Blocks":"木鱼","Temple Blocks":"木鱼","Wood Block":"木鱼","Field Drum":"军鼓","Quad-Toms":"筒鼓",Quads:"筒鼓","Drums set":"架子鼓","High Bongo":"邦戈",Timbales:"天巴鼓"},st=(e="")=>{if(e=e.toLocaleLowerCase().replace(/ /g,""),!e)return"";for(let o in F)if(o.toLocaleLowerCase().replace(/ /g,"").includes(e))return F[o];for(let o in F){const t=o.toLocaleLowerCase().replace(/ /g,"");if(e.includes(t))return F[o]}return""},ct=(e,o)=>{let t=0;switch(e){case"长笛":t=1;break;case"单簧管":t=2;break;case"中音单簧管":t=3;break;case"低音单簧管":t=4;break;case"高音萨克斯风":t=5;break;case"中音萨克斯风":t=6;break;case"次中音萨克斯风":t=7;break;case"低音萨克斯风":t=8;break;case"小号":t=9;break;case"长号":t=10;break;case"圆号":t=11;break;case"大号":t=12;break;case"上低音号":t=13;break;default:t=o+14;break}return t};export{it as L,rt as P,lt as a,st as g,ct as s};