import{q as E,s as j,_ as H,o as a,c as m,n as p,t as C,m as q,i as N,e as z,j as O,I as A,x as F,a1 as I,b as P,F as G,r as M}from"./DD_0sUg_.js";var D={exports:{}};(function(e,r){(function(t,f){e.exports=f()})(E,function(){var t="__v-click-outside",f=typeof window<"u",d=typeof navigator<"u",i=f&&("ontouchstart"in window||d&&navigator.msMaxTouchPoints>0)?["touchstart"]:["click"],_=function(n){var o=n.event,c=n.handler;(0,n.middleware)(o)&&c(o)},l=function(n,o){var c=function(s){var u=typeof s=="function";if(!u&&typeof s!="object")throw new Error("v-click-outside: Binding value must be a function or an object");return{handler:u?s:s.handler,middleware:s.middleware||function(h){return h},events:s.events||i,isActive:s.isActive!==!1,detectIframe:s.detectIframe!==!1,capture:!!s.capture}}(o.value),w=c.handler,B=c.middleware,L=c.detectIframe,S=c.capture;if(c.isActive){if(n[t]=c.events.map(function(s){return{event:s,srcTarget:document.documentElement,handler:function(u){return function(h){var v=h.el,g=h.event,x=h.handler,y=h.middleware,b=g.path||g.composedPath&&g.composedPath();(b?b.indexOf(v)<0:!v.contains(g.target))&&_({event:g,handler:x,middleware:y})}({el:n,event:u,handler:w,middleware:B})},capture:S}}),L){var V={event:"blur",srcTarget:window,handler:function(s){return function(u){var h=u.el,v=u.event,g=u.handler,x=u.middleware;setTimeout(function(){var y=document.activeElement;y&&y.tagName==="IFRAME"&&!h.contains(y)&&_({event:v,handler:g,middleware:x})},0)}({el:n,event:s,handler:w,middleware:B})},capture:S};n[t]=[].concat(n[t],[V])}n[t].forEach(function(s){var u=s.event,h=s.srcTarget,v=s.handler;return setTimeout(function(){n[t]&&h.addEventListener(u,v,S)},0)})}},T=function(n){(n[t]||[]).forEach(function(o){return o.srcTarget.removeEventListener(o.event,o.handler,o.capture)}),delete n[t]},k=f?{beforeMount:l,updated:function(n,o){var c=o.value,w=o.oldValue;JSON.stringify(c)!==JSON.stringify(w)&&(T(n),l(n,{value:c}))},unmounted:T}:{};return{install:function(n){n.directive("click-outside",k)},directive:k}})})(D);var J=D.exports;const R=j(J),K={name:"TypeImage",props:{item:{type:Object,required:!0}}};function Q(e,r,t,f,d,i){return a(),m("span",{class:p(["a-brush-line",t.item.height?"e--h"+t.item.height:""])},null,2)}const U=H(K,[["render",Q]]),W={name:"TypeFont",props:{item:{type:Object,required:!0},useFontToItem:Boolean},mounted(){this.setStyles()},updated(){this.setStyles()},methods:{getTitle(e){return e.title!==void 0?e.title:e.value},setStyles(){this.useFontToItem&&this.item.value!==void 0&&(this.$refs.itemBlock.style.fontFamily=this.item.value)}}};function X(e,r,t,f,d,i){return a(),m("span",{ref:"itemBlock",class:"m-select__trim"},C(i.getTitle(t.item)),513)}const Y=H(W,[["render",X]]),Z={class:"m-select__trim"},$={__name:"TypeText",props:{item:{type:Object,required:!0}},setup(e){const r=e;return(t,f)=>(a(),m("span",Z,C(r.item.title),1))}},ee={name:"TypeSelect",directives:{clickOutside:R.directive},components:{TypeFont:Y,TypeBrush:U,TypeText:$},props:{options:{type:Array,required:!0},modelValue:{type:[Number,Object]},type:{type:String,required:!0},useFontToItem:{type:Boolean,default:!0},selectStyle:{type:String,default:"round",validator(e){return["round","line"].indexOf(e)!==-1}},placeholder:{type:String},required:{type:Boolean},error:{type:Boolean},withoutBorder:Boolean,label:String,alwaysOpenToBottom:{type:Boolean,default:!1},listClass:{listClass:String,default:""},showSelectedInOptions:{type:Boolean,default:!0}},data(){return{open:!1,hasScroll:!1,openToTop:!1,currentHeightList:0,maxHeightList:300,windowHeight:null,isFocus:!1,isFill:!1}},computed:{element(){return this.$refs.selectList},selected:{get:function(){return this.modelValue===null?this.getPlaceholder():this.options.find(e=>e.id===this.modelValue.id)},set:function(e){return e}},selectOptions(){return this.showSelectedInOptions?this.options:this.options.filter(e=>e.id!==this.modelValue.id)}},updated(){let e=this.element.parentNode.getBoundingClientRect().y;if(this.currentHeightList=this.element.offsetHeight,e+this.currentHeightList+this.$el.clientHeight>this.windowHeight)if(this.hasScroll=this.element.scrollHeight>this.element.offsetHeight,e>this.windowHeight-e){let r=e-this.$el.clientHeight;return r>=this.maxHeightList?this.element.style.maxHeight=this.maxHeightList+"px":this.element.style.maxHeight=r+"px",this.openToTop=!0}else this.element.style.maxHeight=this.windowHeight-e-this.$el.clientHeight*2+"px";return this.hasScroll=this.element.scrollHeight>this.element.offsetHeight,this.openToTop=!1},mounted(){this.windowHeight=window.innerHeight},methods:{toggleDropdownSelect(){this.open=!this.open,this.element.style.maxHeight=this.maxHeightList+"px"},closeDropdownSelect(){this.open=!1},onChangeHandler(){this.$emit("onChangedType",this.selected)},selectValue(e){this.selected=e,this.open=!1,this.$emit("update:modelValue",e)},isSelected(e){return e===this.selected},isCustomSize(e){return e.customSize},getPlaceholder(){return{id:0,title:this.placeholder+(this.required?" *":"")}},getItemClass(e){return this.isFontGroup(e)?"m-select__group":"m-select__item"},isFontGroup(e){return e.type!==void 0&&(e.type==="group"||e.type==="category")}}},te={key:0},ie=["onClick"];function ne(e,r,t,f,d,i){const _=q("click-outside");return N((a(),m("div",{class:p(["m-select",{"e--dp-top":!t.alwaysOpenToBottom&&d.openToTop&&d.open}])},[t.selectStyle==="line"&&t.placeholder!==void 0||t.label?(a(),m("div",{key:0,class:p(["m-select__label u-bg-snow",{"e--visible":t.modelValue,"e--fill":!d.open,"u-cl-error":t.error,"u-pd-ha0f5 u-mr-l1f5":t.label}])},[z(C(t.placeholder||t.label)+" ",1),t.required?(a(),m("span",te," *")):O("",!0)],2)):O("",!0),t.withoutBorder?(a(),m("div",{key:1,onClick:r[0]||(r[0]=(...l)=>i.toggleDropdownSelect&&i.toggleDropdownSelect(...l))},[A(e.$slots,"default")])):(a(),m("div",{key:2,class:p(["m-select__active","e--"+t.selectStyle,{"e--show":d.open,"e--error":t.error}]),onClick:r[1]||(r[1]=(...l)=>i.toggleDropdownSelect&&i.toggleDropdownSelect(...l))},[(a(),F(I(t.type),{item:i.selected,"use-font-to-item":t.useFontToItem,class:p([{"u-fz-20":i.isCustomSize(i.selected)}])},null,8,["item","use-font-to-item","class"]))],2)),P("div",{ref:"selectList",class:p(["m-select__list",{"u-br-t2":!t.alwaysOpenToBottom&&d.openToTop},{"u-hide":!d.open},t.listClass]),onClick:r[2]||(r[2]=(...l)=>i.onChangeHandler&&i.onChangeHandler(...l))},[(a(!0),m(G,null,M(i.selectOptions,l=>(a(),m("div",{key:l.id,class:p([{"e--select":i.isSelected(l),"u-fz-20":i.isCustomSize(l),"e--no-arrow":t.withoutBorder},i.getItemClass(l)]),onClick:T=>i.isFontGroup(l)?"":i.selectValue(l)},[(a(),F(I(t.type),{item:l,"use-font-to-item":t.useFontToItem},null,8,["item","use-font-to-item"]))],10,ie))),128))],2)],2)),[[_,i.closeDropdownSelect]])}const le=H(ee,[["render",ne]]);export{R as C,le as _};
