{"version":3,"file":"suggestion_container-Xqe8rLjJ.js","sources":["../../../app/frontend/entrypoints/vue/components/suggestion_container.js"],"sourcesContent":["let SuggestionContainer = {\n data: function(){\n const vm = this\n return {\n currentFocus: -1,\n suggestions: [],\n isActive: false,\n }\n },\n props: {\n ref_name: String\n },\n computed: {\n width(){\n let element = document.getElementById(this.ref_name)\n if (element) {\n return(String(element.parentElement.offsetWidth) + 'px')\n }\n return('180px')\n }\n },\n methods: {\n setSuggestions(suggestions){\n this.suggestions = suggestions\n },\n selectSuggestion(e){\n const vm = this\n let suggestion = ''\n if (e.type == 'mousedown'){\n suggestion = e.target.innerText\n }\n else if (e.type == 'keydown'){\n suggestion = vm.suggestions[vm.currentFocus]\n }\n vm.$emit(\"sg-selected\", suggestion)\n vm.setActive(false)\n vm.setFocus(-1)\n },\n focusInc(e){\n this.setFocus(this.currentFocus + 1)\n },\n focusDec(e){\n this.setFocus(this.currentFocus - 1)\n },\n setFocus(n){\n if (n >= this.suggestions.length){n=0}\n else if (n <-1){ n = this.suggestions.length - 1}\n this.currentFocus = n\n },\n setActive(e){\n if (this.isActive != e){this.isActive = e}\n },\n },\n template: '<div :style=\"{width: width}\" class=\"c-suggestion__container\" v-show=isActive @mousedown=selectSuggestion> \\\n <div class=\"c-suggestion__suggest-row\" v-for=\"(suggestion, index) in suggestions\" v-bind:class=\"{active: index==currentFocus}\">\\\n {{suggestion}}</div>\\\n </div>'\n}\n\nexport default SuggestionContainer\n"],"names":["SuggestionContainer","element","suggestions","e","vm","suggestion","n"],"mappings":"AAAG,IAACA,EAAsB,CACxB,KAAM,UAAU,CAEd,MAAO,CACL,aAAc,GACd,YAAa,CAAE,EACf,SAAU,EAChB,CACG,EACD,MAAO,CACL,SAAU,MACX,EACD,SAAU,CACR,OAAO,CACL,IAAIC,EAAU,SAAS,eAAe,KAAK,QAAQ,EACnD,OAAIA,EACK,OAAOA,EAAQ,cAAc,WAAW,EAAI,KAE9C,OACb,CACG,EACD,QAAS,CACP,eAAeC,EAAY,CACzB,KAAK,YAAcA,CACpB,EACD,iBAAiBC,EAAE,CACjB,MAAMC,EAAK,KACX,IAAIC,EAAa,GACbF,EAAE,MAAQ,YACZE,EAAaF,EAAE,OAAO,UAEfA,EAAE,MAAQ,YACjBE,EAAaD,EAAG,YAAYA,EAAG,YAAY,GAE7CA,EAAG,MAAM,cAAeC,CAAU,EAClCD,EAAG,UAAU,EAAK,EAClBA,EAAG,SAAS,EAAE,CACf,EACD,SAASD,EAAE,CACT,KAAK,SAAS,KAAK,aAAe,CAAC,CACpC,EACD,SAASA,EAAE,CACT,KAAK,SAAS,KAAK,aAAe,CAAC,CACpC,EACD,SAASG,EAAE,CACLA,GAAK,KAAK,YAAY,OAAQA,EAAE,EAC3BA,EAAG,KAAKA,EAAI,KAAK,YAAY,OAAS,GAC/C,KAAK,aAAeA,CACrB,EACD,UAAUH,EAAE,CACN,KAAK,UAAYA,IAAG,KAAK,SAAWA,EACzC,CACF,EACD,SAAU,2QAIZ"}