PageSourceSearch

https://coinstrail.com/_nuxt/Tx8S8XFm.js

js coinstrail.com collected 2026-10-02 19:49:26 UTC 5,312 bytes, 1 lines download raw bytes

1import{_ as v,o as i,c as d,e as a,r as m,i as M,t as _,n as y,q as f,m as r,y as p,f as o,h as u,ag as g,T as b,Q as w,aL as B,u as C,C as L}from"./DFim2bqs.js";const O={props:{value:{type:[Object,String,Number],required:!0},label:{type:[String,Number],default:""}},methods:{selectValue(e){this.$emit("select-value",{value:e,label:this.label})}}},V={class:"select-style__option"};function x(e,s,l,S,n,t){return i(),d("li",{class:"select-style__item",onClick:s[0]||(s[0]=c=>t.selectValue(l.value))},[a("span",V,[m(e.$slots,"default",{},()=>[M(_(l.label),1)])])])}const D=Object.assign(v(O,[["render",x]]),{__name:"BaseSelectOption"}),T={props:{items:{type:Array,default:()=>[{_id:1,name:"item1"}]},placeholder:{type:String,default:""},modelValue:{type:[Object,String,Number],default:null},customLabel:{type:String,default:""},id:{type:String,default:""},disabled:{type:Boolean,default:!1},clearable:{type:Boolean,default:!1},dropdownMinWidth:{type:String,default:""},mobileModal:{type:Boolean,default:!1},modalTitle:{type:String,default:""},hasApplyBtn:{type:Boolean,default:!1},applyBtnText:{type:String,default:""}},emits:["update:modelValue","clear","apply","close"],setup(){const{locale:e,t:s}=C();return{locale:e,t:s}},data(){return{isOpen:!1,label:"",isMobileView:!1}},computed:{isModalActive(){return this.mobileModal&&this.isMobileView},resolvedModalTitle(){return this.modalTitle||this.customLabel||this.placeholder||this.label},resolvedApplyText(){return this.applyBtnText?this.applyBtnText:this.t("coin_filter_apply-btn")}},watch:{modelValue(e){this.selectValue(e),this.isModalActive||this.closeSelect(this.$refs.body)},disabled(e){e&&(this.isOpen=!1)},isOpen(e){e&&this.isModalActive?(this.lockBodyScroll(),document.addEventListener("keydown",this.handleKey)):(this.restoreBodyScroll(),document.removeEventListener("keydown",this.handleKey))}},mounted(){document.addEventListener("mousedown",this.closeSelect),this.label=this.modelValue?.name??"",typeof window<"u"&&(this.mediaQuery=window.matchMedia("(max-width: 779px)"),this.isMobileView=this.mediaQuery.matches,this.handleMediaChange=e=>{this.isMobileView=e.matches},this.mediaQuery.addEventListener?this.mediaQuery.addEventListener("change",this.handleMediaChange):this.mediaQuery.addListener&&this.mediaQuery.addListener(this.handleMediaChange))},beforeUnmount(){document.removeEventListener("mousedown",this.closeSelect),document.removeEventListener("keydown",this.handleKey),this.restoreBodyScroll(),this.mediaQuery&&this.handleMediaChange&&(this.mediaQuery.removeEventListener?this.mediaQuery.removeEventListener("change",this.handleMediaChange):this.mediaQuery.removeListener&&this.mediaQuery.removeListener(this.handleMediaChange))},methods:{selectValue(e){this.isOpen=!1,this.label=e?.label??"",this.$emit("update:modelValue",e)},handleSelect(){this.disabled||(this.isOpen=!this.isOpen)},closeSelect(e){!this.isModalActive&&this.$el&&!this.$el.contains(e.target)&&(this.isOpen=!1)},closeModal(){this.isOpen=!1,this.$emit("close")},applyModal(){this.$emit("apply"),this.isOpen=!1},clearSelect(){this.$emit("clear")},handleKey(e){e.key==="Escape"&&this.closeModal()},lockBodyScroll(){typeof document<"u"&&(document.documentElement.style.overflow="hidden")},restoreBodyScroll(){typeof document<"u"&&document.documentElement.style.removeProperty("overflow")}}},E=["id","value","placeholder","title"],Q={key:0,class:"select-modal",role:"dialog","aria-modal":"true"},A={class:"select-modal__dialog"},N={class:"select-modal__header"},j={class:"select-modal__title"},K={class:"select-modal__content select-style__body_modal"},z={key:0,class:"select-modal__footer"};function W(e,s,l,S,n,t){const c=w,k=L;return i(),d("div",{ref:"wrap",class:p(["select-style",{"select-style_disabled":l.disabled,"select-style_clearable":l.clearable}])},[a("div",{ref:"btn",class:p(["select-style__btn",{open:n.isOpen}]),onClick:s[0]||(s[0]=(...h)=>t.handleSelect&&t.handleSelect(...h))},[a("input",{id:l.id,ref:"input",value:l.customLabel||n.label,type:"text",placeholder:l.placeholder,title:l.customLabel||n.label,readonly:""},null,8,E),l.clearable?(i(),y(c,{key:0,class:"btn_style_link btn_size_s select-style__clear",icon:"close-small",onClick:f(t.clearSelect,["stop"])},null,8,["onClick"])):r("",!0)],2),o(b,{name:"slide"},{default:u(()=>[t.isModalActive?r("",!0):(i(),d("ul",{key:0,ref:"body",class:"select-style__body",style:g({display:n.isOpen?"block":"none",minWidth:l.dropdownMinWidth||void 0})}
1,[m(e.$slots,"default")],4))]),_:3}),o(k,null,{default:u(()=>[(i(),y(B,{to:"body"},[o(b,{name:"modal-fade"},{default:u(()=>[t.isModalActive&&n.isOpen?(i(),d("div",Q,[a("div",{class:"select-modal__backdrop",onClick:s[1]||(s[1]=(...h)=>t.closeModal&&t.closeModal(...h)),onTouchmove:s[2]||(s[2]=f(()=>{},["prevent"]))},null,32),a("div",A,[a("div",N,[a("span",j,_(t.resolvedModalTitle),1),o(c,{class:"btn_style_link btn_type_icon-only select-modal__close",icon:"close",onClick:t.closeModal},null,8,["onClick"])]),a("div",K,[m(e.$slots,"default")]),l.hasApplyBtn?(i(),d("div",z,[o(c,{class:"btn_style_primary btn_fluid select-modal__apply",onClick:t.applyModal},{default:u(()=>[M(_(t.resolvedApplyText),1)]),_:1},8,["onClick"])])):r("",!0)])])):r("",!0)]),_:3})]))]),_:3})],2)}const I=Object.assign(v(T,[["render",W]]),{__name:"BaseSelect"});export{I as _,D as a};

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.