{"version":3,"sources":["webpack:///./node_modules/core-js/modules/es6.regexp.constructor.js","webpack:///./node_modules/vue-simple-suggest/dist/es6.js","webpack:///./src/views/components/extra-components/autocomplete/Autocomplete.vue?9e0f","webpack:///src/views/components/extra-components/autocomplete/Autocomplete.vue","webpack:///./src/views/components/extra-components/autocomplete/Autocomplete.vue?264c","webpack:///./src/views/components/extra-components/autocomplete/Autocomplete.vue?569d","webpack:///./src/views/components/extra-components/autocomplete/Autocomplete.vue?74a4"],"names":["global","inheritIfRequired","dP","f","gOPN","isRegExp","$flags","$RegExp","RegExp","Base","proto","prototype","re1","re2","CORRECT_NEW","p","tiRE","this","piRE","fiU","undefined","constructor","source","call","proxy","key","configurable","get","set","it","keys","i","length","selectionUp","selectionDown","select","hideList","showList","autocomplete","modes","input","String","Object","fromPath","obj","path","split","reduce","o","hasKeyCode","arr","event","hasKeyCodeByCode","keyCode","has","some","code","Array","isArray","array","_empty","_awaitIgnored","value","direct","then","Promise","resolve","_invoke","body","result","_async","args","arguments","apply","e","reject","_await","_invokeIgnored","_catch","recover","_finally","finalizer","VueSimpleSuggest","render","_vm","_h","$createElement","_c","_self","staticClass","class","styles","vueSimpleSuggest","designed","destyled","focus","isInFocus","on","$event","type","indexOf","_k","isTabbed","ref","inputWrapper","attrs","listId","listShown","removeList","_t","_b","defaultInput","domProps","text","$attrs","_v","suggestions","hoverList","$scopedSlots","_e","_l","suggestion","index","getId","suggestItem","selected","isSelected","hover","isHovered","target","suggestionClick","_s","displayProperty","autocompleteText","staticRenderFns","name","inheritAttrs","model","prop","props","default","controls","defaultControls","minLength","Number","maxSuggestions","displayAttribute","valueAttribute","list","Function","Boolean","filterByQuery","filter","el","toLowerCase","debounce","nullableSelect","mode","validator","watch","current","old","options","$parent","$forceUpdate","$nextTick","$emit","immediate","updateTextOutside","hovered","inputElement","canSend","timeoutInstance","isPlainSuggestion","isClicking","isOverList","isFalseFocus","controlScheme","_uid","computed","$slots","componentInstance","inputIsComponent","findIndex","valueProperty","assign","$refs","querySelector","setInputAriaAttributes","prepareEventHandlers","methods","item","isEqual","setAttribute","enable","binder","keyEventsList","click","showSuggestions","keydown","onKeyDown","keyup","onListKeyUp","eventsList","blur","onBlur","onFocus","onInput","listenerBinder","slot","vNode","tag","context","children","slots","map","s","every","isScopedSlotEmpty","bind","find","attr","display","getPropertyByAttribute","JSON","stringify","process","console","warn","error","setText","elem","elemId","hoveredIndex","textLength","miscSlotsAreEmpty","_this","research","preventDefault","isMovingDown","direction","listEdge","hoversBetweenEdges","onShowList","moveSelection","onAutocomplete","ctrlKey","shiftKey","isTrusted","setTimeout","inputEvent","clearTimeout","_this2","textBeforeRequest","getSuggestions","newList","$set","clearSuggestions","_this3","listIsRequest","_this3$list","splice","simpleSuggestionList","callback","$$v","chosen","expression","getList","onSuggestSelect","scopedSlots","_u","fn","query","loading","scope","description","boldenSuggestion","component"],"mappings":"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","file":"js/chunk-23e1913a.5d8fe1cc.js","sourcesContent":["var global = require('./_global');\nvar inheritIfRequired = require('./_inherit-if-required');\nvar dP = require('./_object-dp').f;\nvar gOPN = require('./_object-gopn').f;\nvar isRegExp = require('./_is-regexp');\nvar $flags = require('./_flags');\nvar $RegExp = global.RegExp;\nvar Base = $RegExp;\nvar proto = $RegExp.prototype;\nvar re1 = /a/g;\nvar re2 = /a/g;\n// \"new\" creates a new object, old webkit buggy here\nvar CORRECT_NEW = new $RegExp(re1) !== re1;\n\nif (require('./_descriptors') && (!CORRECT_NEW || require('./_fails')(function () {\n re2[require('./_wks')('match')] = false;\n // RegExp constructor can alter flags and IsRegExp works correct with @@match\n return $RegExp(re1) != re1 || $RegExp(re2) == re2 || $RegExp(re1, 'i') != '/a/i';\n}))) {\n $RegExp = function RegExp(p, f) {\n var tiRE = this instanceof $RegExp;\n var piRE = isRegExp(p);\n var fiU = f === undefined;\n return !tiRE && piRE && p.constructor === $RegExp && fiU ? p\n : inheritIfRequired(CORRECT_NEW\n ? new Base(piRE && !fiU ? p.source : p, f)\n : Base((piRE = p instanceof $RegExp) ? p.source : p, piRE && fiU ? $flags.call(p) : f)\n , tiRE ? this : proto, $RegExp);\n };\n var proxy = function (key) {\n key in $RegExp || dP($RegExp, key, {\n configurable: true,\n get: function () { return Base[key]; },\n set: function (it) { Base[key] = it; }\n });\n };\n for (var keys = gOPN(Base), i = 0; keys.length > i;) proxy(keys[i++]);\n proto.constructor = $RegExp;\n $RegExp.prototype = proto;\n require('./_redefine')(global, 'RegExp', $RegExp);\n}\n\nrequire('./_set-species')('RegExp');\n","const defaultControls = {\n selectionUp: [38],\n selectionDown: [40],\n select: [13],\n hideList: [27],\n showList: [40],\n autocomplete: [32, 13]\n};\n\nconst modes = {\n input: String,\n select: Object\n};\n\nfunction fromPath(obj, path) {\n return path.split('.').reduce((o, i) => o === Object(o) ? o[i] : o, obj);\n}\n\nfunction hasKeyCode(arr, event) {\n return hasKeyCodeByCode(arr, event.keyCode);\n}\n\nfunction hasKeyCodeByCode(arr, keyCode) {\n if (arr.length <= 0) return false;\n\n const has = arr => arr.some(code => code === keyCode);\n if (Array.isArray(arr[0])) {\n return arr.some(array => has(array));\n } else {\n return has(arr);\n }\n}\n\nfunction _empty() {}function _awaitIgnored(value, direct) {\n if (!direct) {\n return value && value.then ? value.then(_empty) : Promise.resolve();\n }\n}\nfunction _invoke(body, then) {\n var result = body();if (result && result.then) {\n return result.then(then);\n }return then(result);\n}function _async(f) {\n return function () {\n for (var args = [], i = 0; i < arguments.length; i++) {\n args[i] = arguments[i];\n }try {\n return Promise.resolve(f.apply(this, args));\n } catch (e) {\n return Promise.reject(e);\n }\n };\n}function _await(value, then, direct) {\n if (direct) {\n return then ? then(value) : value;\n }if (!value || !value.then) {\n value = Promise.resolve(value);\n }return then ? value.then(then) : value;\n}function _invokeIgnored(body) {\n var result = body();if (result && result.then) {\n return result.then(_empty);\n }\n}function _catch(body, recover) {\n try {\n var result = body();\n } catch (e) {\n return recover(e);\n }if (result && result.then) {\n return result.then(void 0, recover);\n }return result;\n}function _finally(body, finalizer) {\n try {\n var result = body();\n } catch (e) {\n return finalizer();\n }if (result && result.then) {\n return result.then(finalizer, finalizer);\n }return finalizer();\n}var VueSimpleSuggest = {\n render: function () {\n var _vm = this;var _h = _vm.$createElement;var _c = _vm._self._c || _h;return _c('div', { staticClass: \"vue-simple-suggest\", class: [_vm.styles.vueSimpleSuggest, { designed: !_vm.destyled, focus: _vm.isInFocus }], on: { \"keydown\": function ($event) {\n if (!$event.type.indexOf('key') && _vm._k($event.keyCode, \"tab\", 9, $event.key, \"Tab\")) {\n return null;\n }_vm.isTabbed = true;\n } } }, [_c('div', { ref: \"inputSlot\", staticClass: \"input-wrapper\", class: _vm.styles.inputWrapper, attrs: { \"role\": \"combobox\", \"aria-haspopup\": \"listbox\", \"aria-owns\": _vm.listId, \"aria-expanded\": !!_vm.listShown && !_vm.removeList ? 'true' : 'false' } }, [_vm._t(\"default\", [_c('input', _vm._b({ staticClass: \"default-input\", class: _vm.styles.defaultInput, domProps: { \"value\": _vm.text || '' } }, 'input', _vm.$attrs, false))])], 2), _vm._v(\" \"), _c('transition', { attrs: { \"name\": \"vue-simple-suggest\" } }, [!!_vm.listShown && !_vm.removeList ? _c('ul', { staticClass: \"suggestions\", class: _vm.styles.suggestions, attrs: { \"id\": _vm.listId, \"role\": \"listbox\", \"aria-labelledby\": _vm.listId }, on: { \"mouseenter\": function ($event) {\n return _vm.hoverList(true);\n }, \"mouseleave\": function ($event) {\n return _vm.hoverList(false);\n } } }, [!!this.$scopedSlots['misc-item-above'] ? _c('li', [_vm._t(\"misc-item-above\", null, { \"suggestions\": _vm.suggestions, \"query\": _vm.text })], 2) : _vm._e(), _vm._v(\" \"), _vm._l(_vm.suggestions, function (suggestion, index) {\n return _c('li', { key: _vm.getId(suggestion, index), staticClass: \"suggest-item\", class: [_vm.styles.suggestItem, {\n selected: _vm.isSelected(suggestion),\n hover: _vm.isHovered(suggestion)\n }], attrs: { \"role\": \"option\", \"aria-selected\": _vm.isHovered(suggestion) || _vm.isSelected(suggestion) ? 'true' : 'false', \"id\": _vm.getId(suggestion, index) }, on: { \"mouseenter\": function ($event) {\n return _vm.hover(suggestion, $event.target);\n }, \"mouseleave\": function ($event) {\n return _vm.hover(undefined);\n }, \"click\": function ($event) {\n return _vm.suggestionClick(suggestion, $event);\n } } }, [_vm._t(\"suggestion-item\", [_c('span', [_vm._v(_vm._s(_vm.displayProperty(suggestion)))])], { \"autocomplete\": function () {\n return _vm.autocompleteText(suggestion);\n }, \"suggestion\": suggestion, \"query\": _vm.text })], 2);\n }), _vm._v(\" \"), !!this.$scopedSlots['misc-item-below'] ? _c('li', [_vm._t(\"misc-item-below\", null, { \"suggestions\": _vm.suggestions, \"query\": _vm.text })], 2) : _vm._e()], 2) : _vm._e()])], 1);\n },\n staticRenderFns: [],\n name: 'vue-simple-suggest',\n inheritAttrs: false,\n model: {\n prop: 'value',\n event: 'input'\n },\n props: {\n styles: {\n type: Object,\n default: () => ({})\n },\n controls: {\n type: Object,\n default: () => defaultControls\n },\n minLength: {\n type: Number,\n default: 1\n },\n maxSuggestions: {\n type: Number,\n default: 10\n },\n displayAttribute: {\n type: String,\n default: 'title'\n },\n valueAttribute: {\n type: String,\n default: 'id'\n },\n list: {\n type: [Function, Array],\n default: () => []\n },\n removeList: {\n type: Boolean,\n default: false\n },\n destyled: {\n type: Boolean,\n default: false\n },\n filterByQuery: {\n type: Boolean,\n default: false\n },\n filter: {\n type: Function,\n default(el, value) {\n return value ? ~this.displayProperty(el).toLowerCase().indexOf(value.toLowerCase()) : true;\n }\n },\n debounce: {\n type: Number,\n default: 0\n },\n nullableSelect: {\n type: Boolean,\n default: false\n },\n value: {},\n mode: {\n type: String,\n default: 'input',\n validator: value => !!~Object.keys(modes).indexOf(value.toLowerCase())\n }\n },\n // Handle run-time mode changes (now working):\n watch: {\n mode: {\n handler(current, old) {\n this.constructor.options.model.event = current;\n\n // Can be null if the component is root\n this.$parent && this.$parent.$forceUpdate();\n\n this.$nextTick(() => {\n if (current === 'input') {\n this.$emit('input', this.text);\n } else {\n this.$emit('select', this.selected);\n }\n });\n },\n immediate: true\n },\n value: {\n handler(current) {\n if (typeof current !== 'string') {\n current = this.displayProperty(current);\n }\n this.updateTextOutside(current);\n },\n immediate: true\n }\n },\n //\n data() {\n return {\n selected: null,\n hovered: null,\n suggestions: [],\n listShown: false,\n inputElement: null,\n canSend: true,\n timeoutInstance: null,\n text: this.value,\n isPlainSuggestion: false,\n isClicking: false,\n isOverList: false,\n isInFocus: false,\n isFalseFocus: false,\n isTabbed: false,\n controlScheme: {},\n listId: `${this._uid}-suggestions`\n };\n },\n computed: {\n listIsRequest() {\n return typeof this.list === 'function';\n },\n inputIsComponent() {\n return this.$slots.default && this.$slots.default.length > 0 && !!this.$slots.default[0].componentInstance;\n },\n input() {\n return this.inputIsComponent ? this.$slots.default[0].componentInstance : this.inputElement;\n },\n on() {\n return this.inputIsComponent ? '$on' : 'addEventListener';\n },\n off() {\n return this.inputIsComponent ? '$off' : 'removeEventListener';\n },\n hoveredIndex() {\n return this.suggestions.findIndex(el => this.hovered && this.valueProperty(this.hovered) == this.valueProperty(el));\n },\n textLength() {\n return this.text && this.text.length || this.inputElement.value.length || 0;\n },\n isSelectedUpToDate() {\n return !!this.selected && this.displayProperty(this.selected) === this.text;\n }\n },\n created() {\n this.controlScheme = Object.assign({}, defaultControls, this.controls);\n },\n mounted() {\n this.inputElement = this.$refs['inputSlot'].querySelector('input');\n\n this.setInputAriaAttributes();\n this.prepareEventHandlers(true);\n },\n beforeDestroy() {\n this.prepareEventHandlers(false);\n },\n methods: {\n isEqual(suggestion, item) {\n return item && this.valueProperty(suggestion) == this.valueProperty(item);\n },\n isSelected(suggestion) {\n return this.isEqual(suggestion, this.selected);\n },\n isHovered(suggestion) {\n return this.isEqual(suggestion, this.hovered);\n },\n setInputAriaAttributes() {\n this.inputElement.setAttribute('aria-activedescendant', '');\n this.inputElement.setAttribute('aria-autocomplete', 'list');\n this.inputElement.setAttribute('aria-controls', this.listId);\n },\n prepareEventHandlers(enable) {\n const binder = this[enable ? 'on' : 'off'];\n const keyEventsList = {\n click: this.showSuggestions,\n keydown: this.onKeyDown,\n keyup: this.onListKeyUp\n };\n const eventsList = Object.assign({\n blur: this.onBlur,\n focus: this.onFocus,\n input: this.onInput\n }, keyEventsList);\n\n for (const event in eventsList) {\n this.input[binder](event, eventsList[event]);\n }\n\n const listenerBinder = enable ? 'addEventListener' : 'removeEventListener';\n\n for (const event in keyEventsList) {\n this.inputElement[listenerBinder](event, keyEventsList[event]);\n }\n },\n isScopedSlotEmpty(slot) {\n if (slot) {\n const vNode = slot(this);\n return !(Array.isArray(vNode) || vNode && (vNode.tag || vNode.context || vNode.text || vNode.children));\n }\n\n return true;\n },\n miscSlotsAreEmpty() {\n const slots = ['misc-item-above', 'misc-item-below'].map(s => this.$scopedSlots[s]);\n\n if (slots.every(s => !!s)) {\n return slots.every(this.isScopedSlotEmpty.bind(this));\n }\n\n const slot = slots.find(s => !!s);\n\n return this.isScopedSlotEmpty.call(this, slot);\n },\n getPropertyByAttribute(obj, attr) {\n return this.isPlainSuggestion ? obj : typeof obj !== undefined ? fromPath(obj, attr) : obj;\n },\n displayProperty(obj) {\n if (this.isPlainSuggestion) {\n return obj;\n }\n\n let display = this.getPropertyByAttribute(obj, this.displayAttribute);\n\n if (typeof display === 'undefined') {\n display = JSON.stringify(obj);\n\n if (process && ~process.env.NODE_ENV.indexOf('dev')) {\n console.warn('[vue-simple-suggest]: Please, provide `display-attribute` as a key or a dotted path for a property from your object.');\n }\n }\n\n return String(display || '');\n },\n valueProperty(obj) {\n if (this.isPlainSuggestion) {\n return obj;\n }\n\n const value = this.getPropertyByAttribute(obj, this.valueAttribute);\n\n if (typeof value === 'undefined') {\n console.error(`[vue-simple-suggest]: Please, check if you passed 'value-attribute' (default is 'id') and 'display-attribute' (default is 'title') props correctly.\n Your list objects should always contain a unique identifier.`);\n }\n\n return value;\n },\n\n autocompleteText(suggestion) {\n this.setText(this.displayProperty(suggestion));\n },\n setText(text) {\n this.$nextTick(() => {\n this.inputElement.value = text;\n this.text = text;\n this.$emit('input', text);\n });\n },\n select(item) {\n if (this.selected !== item || this.nullableSelect && !item) {\n this.selected = item;\n this.$emit('select', item);\n\n if (item) {\n this.autocompleteText(item);\n }\n }\n\n this.hover(null);\n },\n hover(item, elem) {\n const elemId = !!item ? this.getId(item, this.hoveredIndex) : '';\n\n this.inputElement.setAttribute('aria-activedescendant', elemId);\n\n if (item && item !== this.hovered) {\n this.$emit('hover', item, elem);\n }\n\n this.hovered = item;\n },\n hoverList(isOverList) {\n this.isOverList = isOverList;\n },\n hideList() {\n if (this.listShown) {\n this.listShown = false;\n this.hover(null);\n this.$emit('hide-list');\n }\n },\n showList() {\n if (!this.listShown) {\n if (this.textLength >= this.minLength && (this.suggestions.length > 0 || !this.miscSlotsAreEmpty())) {\n this.listShown = true;\n this.$emit('show-list');\n }\n }\n },\n showSuggestions: _async(function () {\n const _this = this;\n\n return _invoke(function () {\n if (_this.suggestions.length === 0 && _this.minLength <= _this.textLength) {\n // try show misc slots while researching\n _this.showList();\n return _awaitIgnored(_this.research());\n }\n }, function () {\n\n _this.showList();\n });\n }),\n\n onShowList(e) {\n if (hasKeyCode(this.controlScheme.showList, e)) {\n this.showSuggestions();\n }\n },\n moveSelection(e) {\n if (!this.listShown || !this.suggestions.length) return;\n if (hasKeyCode([this.controlScheme.selectionUp, this.controlScheme.selectionDown], e)) {\n e.preventDefault();\n\n const isMovingDown = hasKeyCode(this.controlScheme.selectionDown, e);\n const direction = isMovingDown * 2 - 1;\n const listEdge = isMovingDown ? 0 : this.suggestions.length - 1;\n const hoversBetweenEdges = isMovingDown ? this.hoveredIndex < this.suggestions.length - 1 : this.hoveredIndex > 0;\n\n let item = null;\n\n if (!this.hovered) {\n item = this.selected || this.suggestions[listEdge];\n } else if (hoversBetweenEdges) {\n item = this.suggestions[this.hoveredIndex + direction];\n } else /* if hovers on edge */{\n item = this.suggestions[listEdge];\n }\n this.hover(item);\n }\n },\n onKeyDown(e) {\n const select = this.controlScheme.select,\n hideList = this.controlScheme.hideList;\n\n // prevent form submit on keydown if Enter key registered in the keyup list\n if (e.key === 'Enter' && this.listShown && hasKeyCodeByCode([select, hideList], 13)) {\n e.preventDefault();\n }\n\n if (e.key === 'Tab' && this.hovered) {\n this.select(this.hovered);\n }\n\n this.onShowList(e);\n this.moveSelection(e);\n this.onAutocomplete(e);\n },\n onListKeyUp(e) {\n const select = this.controlScheme.select,\n hideList = this.controlScheme.hideList;\n\n if (this.listShown && hasKeyCode([select, hideList], e)) {\n e.preventDefault();\n if (hasKeyCode(select, e)) {\n this.select(this.hovered);\n }\n\n this.hideList();\n }\n },\n onAutocomplete(e) {\n if (hasKeyCode(this.controlScheme.autocomplete, e) && (e.ctrlKey || e.shiftKey) && this.suggestions.length > 0 && this.suggestions[0] && this.listShown) {\n e.preventDefault();\n this.hover(this.suggestions[0]);\n this.autocompleteText(this.suggestions[0]);\n }\n },\n suggestionClick(suggestion, e) {\n this.$emit('suggestion-click', suggestion, e);\n this.select(suggestion);\n this.hideList();\n\n /// Ensure, that all needed flags are off before finishing the click.\n this.isClicking = this.isOverList = false;\n },\n onBlur(e) {\n if (this.isInFocus) {\n\n /// Clicking starts here, because input's blur occurs before the suggestionClick\n /// and exactly when the user clicks the mouse button or taps the screen.\n this.isClicking = this.isOverList && !this.isTabbed;\n\n if (!this.isClicking) {\n this.isInFocus = false;\n this.hideList();\n\n this.$emit('blur', e);\n } else if (e && e.isTrusted && !this.isTabbed) {\n this.isFalseFocus = true;\n setTimeout(() => {\n this.inputElement.focus();\n }, 0);\n }\n } else {\n this.inputElement.blur();\n console.error(`This should never happen!\n If you encountered this error, please make sure that your input component emits 'focus' events properly.\n For more info see https://github.com/KazanExpress/vue-simple-suggest#custom-input.\n\n If your 'vue-simple-suggest' setup does not include a custom input component - please,\n report to https://github.com/KazanExpress/vue-simple-suggest/issues/new`);\n }\n\n this.isTabbed = false;\n },\n onFocus(e) {\n this.isInFocus = true;\n\n // Only emit, if it was a native input focus\n if (e && !this.isFalseFocus) {\n this.$emit('focus', e);\n }\n\n // Show list only if the item has not been clicked (isFalseFocus indicates that click was made earlier)\n if (!this.isClicking && !this.isFalseFocus) {\n this.showSuggestions();\n }\n\n this.isFalseFocus = false;\n },\n onInput(inputEvent) {\n const value = !inputEvent.target ? inputEvent : inputEvent.target.value;\n\n this.updateTextOutside(value);\n this.$emit('input', value);\n },\n updateTextOutside(value) {\n if (this.text === value) {\n return;\n }\n\n this.text = value;\n if (this.hovered) this.hover(null);\n\n if (this.text.length < this.minLength) {\n this.hideList();\n return;\n }\n\n if (this.debounce) {\n clearTimeout(this.timeoutInstance);\n this.timeoutInstance = setTimeout(this.research, this.debounce);\n } else {\n this.research();\n }\n },\n research: _async(function () {\n const _this2 = this;\n\n return _finally(function () {\n return _catch(function () {\n return _invokeIgnored(function () {\n if (_this2.canSend) {\n _this2.canSend = false;\n // @TODO: fix when promises will be cancelable (never :D)\n let textBeforeRequest = _this2.text;\n return _await(_this2.getSuggestions(_this2.text), function (newList) {\n if (textBeforeRequest === _this2.text) {\n _this2.$set(_this2, 'suggestions', newList);\n }\n });\n }\n });\n }, function (e) {\n _this2.clearSuggestions();\n throw e;\n });\n }, function () {\n _this2.canSend = true;\n\n if (_this2.suggestions.length === 0 && _this2.miscSlotsAreEmpty()) {\n _this2.hideList();\n } else if (_this2.isInFocus) {\n _this2.showList();\n }\n\n return _this2.suggestions;\n });\n }),\n getSuggestions: _async(function (value) {\n const _this3 = this;\n\n value = value || '';\n\n if (value.length < _this3.minLength) {\n return [];\n }\n\n _this3.selected = null;\n\n // Start request if can\n if (_this3.listIsRequest) {\n _this3.$emit('request-start', value);\n }\n\n let result = [];\n return _finally(function () {\n return _catch(function () {\n return _invoke(function () {\n if (_this3.listIsRequest) {\n return _await(_this3.list(value), function (_this3$list) {\n result = _this3$list || [];\n });\n } else {\n result = _this3.list;\n }\n }, function () {\n\n // IFF the result is not an array (just in case!) - make it an array\n if (!Array.isArray(result)) {\n result = [result];\n }\n\n _this3.isPlainSuggestion = typeof result[0] !== 'object' || Array.isArray(result[0]);\n\n if (_this3.filterByQuery) {\n result = result.filter(el => _this3.filter(el, value));\n }\n\n if (_this3.listIsRequest) {\n _this3.$emit('request-done', result);\n }\n });\n }, function (e) {\n if (_this3.listIsRequest) {\n _this3.$emit('request-failed', e);\n } else {\n throw e;\n }\n });\n }, function () {\n if (_this3.maxSuggestions) {\n result.splice(_this3.maxSuggestions);\n }\n\n return result;\n });\n }),\n\n clearSuggestions() {\n this.suggestions.splice(0);\n },\n getId(value, i) {\n return `${this.listId}-suggestion-${this.isPlainSuggestion ? i : this.valueProperty(value) || i}`;\n }\n }\n};\n\nexport default VueSimpleSuggest;\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{attrs:{\"id\":\"page-autocomplete-demo\"}},[_c('vx-card',{attrs:{\"title\":\"Basic Autocomplete\",\"code-toggler\":\"\"}},[_c('vue-simple-suggest',{attrs:{\"list\":_vm.simpleSuggestionList,\"filter-by-query\":true},model:{value:(_vm.chosen),callback:function ($$v) {_vm.chosen=$$v},expression:\"chosen\"}}),_c('p',{staticClass:\"mt-4\"},[_vm._v(\"Chosen element: \"+_vm._s(_vm.chosen))]),_c('template',{slot:\"codeContainer\"},[_vm._v(\"\\n\\n\\n\\n\\n\\n \")])],2),_c('vx-card',{attrs:{\"title\":\"Ajax Based Autocomplete\",\"code-toggler\":\"\"}},[_c('vue-simple-suggest',{ref:\"suggestComponent\",attrs:{\"pattern\":\"\\\\w+\",\"list\":_vm.getList,\"max-suggestions\":10,\"min-length\":3,\"debounce\":200,\"filter-by-query\":false,\"prevent-submit\":true,\"controls\":{\n selectionUp: [38, 33],\n selectionDown: [40, 34],\n select: [13, 36],\n hideList: [27, 35]\n },\"mode\":_vm.mode,\"nullable-select\":true,\"placeholder\":\"Search information...\",\"value-attribute\":\"id\",\"display-attribute\":\"text\"},on:{\"select\":_vm.onSuggestSelect},scopedSlots:_vm._u([{key:\"misc-item-above\",fn:function(ref){\n var suggestions = ref.suggestions;\n var query = ref.query;\nreturn [_c('div',{staticClass:\"misc-item\"},[_c('span',[_vm._v(\"You're searching for '\"+_vm._s(query)+\"'.\")])]),(suggestions.length > 0)?[_c('div',{staticClass:\"misc-item\"},[_c('span',[_vm._v(_vm._s(suggestions.length)+\" suggestions are shown...\")])]),_c('hr')]:(!_vm.loading)?_c('div',{staticClass:\"misc-item\"},[_c('span',[_vm._v(\"No results\")])]):_vm._e()]}},{key:\"suggestion-item\",fn:function(scope){return _c('div',{attrs:{\"title\":scope.suggestion.description}},[_c('div',{staticClass:\"text\"},[_c('span',{domProps:{\"innerHTML\":_vm._s(_vm.boldenSuggestion(scope))}})])])}},{key:\"misc-item-below\",fn:function(ref){\n var suggestions = ref.suggestions;\nreturn (_vm.loading)?_c('div',{staticClass:\"misc-item\"},[_c('span',[_vm._v(\"Loading...\")])]):_vm._e()}}],null,true),model:{value:(_vm.model),callback:function ($$v) {_vm.model=$$v},expression:\"model\"}},[_c('div',{staticClass:\"g\"},[_c('input',{attrs:{\"type\":\"text\"}})])]),_c('p',{staticClass:\"mt-3\"},[_vm._v(\"Selected element (\"+_vm._s(typeof _vm.selected)+\"): \"),_c('pre',{staticClass:\"selected hljs\"},[_c('span',{domProps:{\"innerHTML\":_vm._s(_vm.selected)}})])]),_c('template',{slot:\"codeContainer\"},[_vm._v(\"\\n\\n\\n\\n \")])],2),_c('vx-card',{attrs:{\"title\":\"Mode\"}},[_c('p',{staticClass:\"mb-3\"},[_vm._v(\"Determines the event, that triggers \"),_c('code',[_vm._v(\"v-model\")]),_vm._v(\". Can be one of \"),_c('code',[_vm._v(\"'input'\")]),_vm._v(\" (default) or \"),_c('code',[_vm._v(\"'select'\")]),_vm._v(\".\")]),_c('p',{staticClass:\"mb-3\"},[_vm._v(\"For example, if \"),_c('code',[_vm._v(\"'input'\")]),_vm._v(\" is chosen - then v-model will update the value each time an \"),_c('code',[_vm._v(\"input\")]),_vm._v(\" event is fired, setting the input's string.\")]),_c('p',{staticClass:\"mb-3\"},[_vm._v(\"Same is for \"),_c('code',[_vm._v(\"'select'\")]),_vm._v(\" - v-model changes only when something is selected from the list, setting the selected value (string, object or whatever) to its argument.\")]),_c('p',{staticClass:\"mb-3\"},[_vm._v(\"A proper use-case for it being when one wants to use the component only for selection binding and custom input for text binding:\")]),_c('prism',{staticClass:\"rounded-lg\",attrs:{\"language\":\"markup\"}},[_vm._v(\"\\n\\n \\n\\n \")])],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n\r\n\r\n\r\n\r\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Autocomplete.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Autocomplete.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Autocomplete.vue?vue&type=template&id=7f6d64c5&\"\nimport script from \"./Autocomplete.vue?vue&type=script&lang=js&\"\nexport * from \"./Autocomplete.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Autocomplete.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../../node_modules/@vue/cli-service/node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../node_modules/css-loader/index.js??ref--8-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/lib/index.js??ref--8-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Autocomplete.vue?vue&type=style&index=0&lang=scss&\"; export default mod; export * from \"-!../../../../../node_modules/@vue/cli-service/node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../node_modules/css-loader/index.js??ref--8-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/lib/index.js??ref--8-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Autocomplete.vue?vue&type=style&index=0&lang=scss&\""],"sourceRoot":""}