Files
qhmes/web-dist/js/JSelectInput-DYluZAmU.js
2026-06-16 18:19:57 +08:00

2 lines
1.1 KiB
Java

import{as as h,au as l,av as m}from"./index-X7Y8jykP.js";import{e as S,h as g,c as v,r as _,y as C,z as I,B as $}from"./vue-vendor-DNhG1Cve.js";import"./emoji-mart-vue-fast-R0uJEDq-.js";const b=S({name:"JSelectInput",props:{options:h.array.def(()=>[])},emits:["change","update:value"],setup(n,{emit:r,attrs:i}){const t=_([]);g(()=>n.options,()=>{t.value=[...n.options]},{deep:!0,immediate:!0});const p=v(()=>Object.assign({showSearch:!0},n,i,{options:t.value}));function s(...e){u(e[0]),r("change",...e),r("update:value",e[0])}function c(e){let a=t.value.findIndex(o=>o.value.toString()===e.toString())!==-1;!a&&e?(u(e),t.value.push({value:e,searchAdd:!0})):a&&s(e)}function u(e=""){let a=[];t.value.forEach((o,f)=>{var d;o.searchAdd&&((d=o.value)!=null?d:"").toString()!==e.toString()&&a.push(f)});for(let o of a.reverse())t.value.splice(o,1)}return{bindProps:p,onChange:s,onSearch:c}}});function x(n,r,i,t,p,s){const c=m;return I(),C(c,$(n.bindProps,{onChange:n.onChange,onSearch:n.onSearch}),null,16,["onChange","onSearch"])}const P=l(b,[["render",x]]);export{P as default};