UNPKG

@visitscotland/component-library

Version:
1 lines 4.2 kB
(self.webpackChunk_visitscotland_component_library=self.webpackChunk_visitscotland_component_library||[]).push([[8861],{6888:function(e,t,n){"use strict";var o=n(85072),l=n.n(o),u=n(97825),r=n.n(u),a=n(77659),i=n.n(a),c=n(55056),s=n.n(c),d=n(10540),f=n.n(d),m=n(41113),p=n.n(m),v=n(27530),g=n.n(v),h={};h.styleTagTransform=p(),h.setAttributes=s(),h.insert=i().bind(null,"head"),h.domAPI=r(),h.insertStyleElement=f(),l()(g(),h),g()&&g().locals&&g().locals},14932:function(e,t,n){"use strict";n(6888)},27530:function(){},40971:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return l.a}});var o=n(90345),l=n.n(o),u={};for(var r in o)"default"!==r&&(u[r]=function(e){return o[e]}.bind(0,r));n.d(t,u)},58861:function(e,t,n){"use strict";n.r(t);var o=n(40971),l={};for(var u in o)"default"!==u&&(l[u]=function(e){return o[e]}.bind(0,u));n.d(t,l),n(14932);const r=o.default;t.default=r},90345:function(e,t,n){"use strict";var o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var l=n(17527),u=n(17527),r={"data-test":"vs-autocomplete",class:"vs-autocomplete mb-100"},a=["for"],i=["placeholder","onClick"],c=["name"],s=n(17527),d=o(n(59033)),f=o(n(46422));t.default=(0,l.defineComponent)({__name:"Autocomplete",props:{id:{},label:{},mode:{},multiselectLabel:{},name:{},options:{},placeholder:{},trackBy:{},isTourLocation:{type:Boolean},defaultVal:{}},emits:["changeValue"],setup:function(e,t){var n=t.emit,o=e,l=n,m=(0,s.ref)([]),p=(0,s.ref)(o.options),v=function(e){return e?e[_.value]:""},g=function(e){p.value=o.options.filter((function(t){return t[_.value].toLowerCase().includes(e.toLowerCase())}))},h=function(e){void 0!==o.trackBy?l("changeValue",e[o.trackBy]):l("changeValue",e.label)},_=(0,s.computed)((function(){return void 0!==o.multiselectLabel?o.multiselectLabel:"name"})),b=(0,s.computed)((function(){if("string"==typeof m.value){if(o.isTourLocation){var e=o.options.find((function(e){return e.name===m.value}));if(void 0!==e)return e.slug.trim()}return m.value.trim()}if("object"==typeof m.value&&Object.keys(m.value).length>0)return v(m.value).trim()})),k=(0,s.computed)((function(){return!!(b.value&&b.value.length>0)}));return(0,s.watch)((function(){return m.value}),(function(){null===m.value&&(m.value=[])})),(0,s.onMounted)((function(){void 0!==o.defaultVal&&(m.value=o.defaultVal)})),function(e,t){return(0,u.openBlock)(),(0,u.createElementBlock)("div",r,[(0,u.createElementVNode)("label",{for:e.id},(0,u.toDisplayString)(e.label),9,a),(0,u.createVNode)((0,u.unref)(d.default),{"input-id":e.id,modelValue:m.value,"onUpdate:modelValue":t[0]||(t[0]=function(e){return m.value=e}),itemToString:v,items:p.value,onInputValueChange:g,onSelect:h},{default:(0,u.withCtx)((function(t){var n=t.getInputProps,o=t.getInputEventListeners,l=t.hoveredIndex,r=t.isOpen,a=t.getMenuProps,c=t.getMenuEventListeners,s=t.getItemProps,d=t.getItemEventListeners,m=t.getComboboxProps,v=t.openMenu;return[(0,u.createElementVNode)("div",(0,u.mergeProps)(m(),{class:"vs-autocomplete__list-wrapper"}),[(0,u.createElementVNode)("input",(0,u.mergeProps)({class:"vs-input form-control"},n(),(0,u.toHandlers)(o(),!0),{placeholder:e.placeholder,onClick:function(e){return v()}}),null,16,i),(0,u.createVNode)(f.default,{icon:"vs-icon-control-expand",variant:"cta",size:"sm"}),(0,u.withDirectives)((0,u.createElementVNode)("ul",(0,u.mergeProps)(a(),(0,u.toHandlers)(c(),!0),{class:"vs-autocomplete__list"}),[((0,u.openBlock)(!0),(0,u.createElementBlock)(u.Fragment,null,(0,u.renderList)(p.value,(function(e,t){return(0,u.openBlock)(),(0,u.createElementBlock)("li",(0,u.mergeProps)({key:e.id},{ref_for:!0},s({item:e,index:t}),(0,u.toHandlers)(d({item:e,index:t}),!0),{class:["vs-autocomplete__list-item",{"vs-autocomplete__list-item--hover":l===t}]}),(0,u.toDisplayString)(e[_.value]),17)})),128))],16),[[u.vShow,r]])],16)]})),_:1},8,["input-id","modelValue","items"]),k.value?(0,u.withDirectives)(((0,u.openBlock)(),(0,u.createElementBlock)("input",{key:0,type:"hidden",name:e.name,"onUpdate:modelValue":t[1]||(t[1]=function(e){return b.value=e})},null,8,c)),[[u.vModelText,b.value]]):(0,u.createCommentVNode)("",!0)])}}})}}]);