{"version":3,"sources":["webpack:///./node_modules/core-js/modules/es6.regexp.constructor.js","webpack:///./src/views/components/extra-components/autocomplete/Autocomplete.vue","webpack:///src/views/components/extra-components/autocomplete/Autocomplete.vue","webpack:///./src/views/components/extra-components/autocomplete/Autocomplete.vue?6dbd","webpack:///./src/views/components/extra-components/autocomplete/Autocomplete.vue?bf01","webpack:///./src/views/components/extra-components/autocomplete/Autocomplete.vue?3e46"],"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","render","_vm","_c","_self","attrs","staticClass","_v","_s","chosen","slot","_typeof","selected","domProps","staticRenderFns","name","data","model","mode","loading","log","methods","simpleSuggestionList","onSuggestSelect","suggest","boldenSuggestion","scope","suggestion","query","result","$refs","suggestComponent","displayProperty","texts","split","filter","t","replace","join","getList","inputValue","_this","Promise","resolve","reject","url","concat","fetch","then","response","ok","json","shift","fields","forEach","part","el","j","push","id","catch","e","error","components","Prism","component"],"mappings":"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","file":"js/chunk-ee597c62.fac5f88c.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","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{attrs:{\"id\":\"page-autocomplete-demo\"}},[_c('vx-card',{attrs:{\"title\":\"Basic Autocomplete\",\"code-toggler\":\"\"}},[_c('p',{staticClass:\"mt-4\"},[_vm._v(\"Chosen element: \"+_vm._s(_vm.chosen))]),_c('template',{slot:\"codeContainer\"},[_vm._v(\" Chosen element: \"+_vm._s(_vm.chosen)+\" Selected element (\"+_vm._s(\"\\{\\{ typeof selected \\}\\}\")+\"):
Chosen element: {{ chosen }}
\r\n\r\n \r\n<template>\r\n <vue-simple-suggest\r\n v-model="chosen"\r\n :list="simpleSuggestionList"\r\n :filter-by-query="true">\r\n <!-- Filter by input text to only show the matching results -->\r\n </vue-simple-suggest>\r\n\r\n <p class="mt-4">Chosen element: {{ chosen }}</p>\r\n</template>\r\n\r\n<script>\r\nexport default {\r\n data() {\r\n return {\r\n chosen: '',\r\n }\r\n },\r\n methods: {\r\n simpleSuggestionList() {\r\n return [\r\n 'Vue.js',\r\n 'React.js',\r\n 'Angular.js'\r\n ]\r\n },\r\n }\r\n}\r\n</script>\r\n\r\n<style lang="scss">\r\n@import "@/assets/scss/vuexy/extraComponents/autocomplete.scss";\r\n</style>\r\n \r\nSelected element ({{ typeof selected }}):
\r\n\r\n \r\n<template>\r\n <vue-simple-suggest\r\n pattern="\\w+"\r\n v-model="model"\r\n :list="getList"\r\n :max-suggestions="10"\r\n :min-length="3"\r\n :debounce="200"\r\n :filter-by-query="false"\r\n :prevent-submit="true"\r\n :controls="{\r\n selectionUp: [38, 33],\r\n selectionDown: [40, 34],\r\n select: [13, 36],\r\n hideList: [27, 35]\r\n }"\r\n :mode="mode"\r\n :nullable-select="true"\r\n ref="suggestComponent"\r\n placeholder="Search information..."\r\n value-attribute="id"\r\n display-attribute="text"\r\n @select="onSuggestSelect">\r\n\r\n <div class="g">\r\n <input type="text">\r\n </div>\r\n\r\n <template slot="misc-item-above" slot-scope="{ suggestions, query }">\r\n <div class="misc-item">\r\n <span>You're searching for '{{ \"\\{\\{ query \\}\\}\" }}'.</span>\r\n </div>\r\n\r\n <template v-if="suggestions.length > 0">\r\n <div class="misc-item">\r\n <span>{{ \"\\{\\{ suggestions.length \\}\\}\" }} suggestions are shown...</span>\r\n </div>\r\n <hr>\r\n </template>\r\n\r\n <div class="misc-item" v-else-if="!loading">\r\n <span>No results</span>\r\n </div>\r\n </template>\r\n\r\n <div slot="suggestion-item" slot-scope="scope" :title="scope.suggestion.description">\r\n <div class="text">\r\n <span v-html="boldenSuggestion(scope)"></span>\r\n </div>\r\n </div>\r\n\r\n <div class="misc-item" slot="misc-item-below" slot-scope="{ suggestions }" v-if="loading">\r\n <span>Loading...</span>\r\n </div>\r\n </vue-simple-suggest>\r\n\r\n <p class="mt-3">Selected element ({{ \"\\{\\{ typeof selected \\}\\}\" }}): <pre class="selected hljs"><span v-html="selected"></span></pre></p>\r\n</template>\r\n\r\n<script>\r\nexport default {\r\n data() {\r\n return {\r\n model: null,\r\n }\r\n },\r\n methods: {\r\n getList (inputValue) {\r\n return new Promise((resolve, reject) => {\r\n let url = `https://en.wikipedia.org/w/api.php?origin=*&action=opensearch&namespace=*&search=${inputValue}&limit=10&namespace=0&format=json`\r\n fetch(url).then(response => {\r\n if (!response.ok) {\r\n reject()\r\n }\r\n response.json().then(json => {\r\n json.shift();\r\n let result = []\r\n const fields = ['text', 'description', 'link']\r\n json.forEach((part, i) => {\r\n part.forEach((el, j) => {\r\n if (!result[j]) {\r\n result.push({\r\n id: j+1\r\n })\r\n }\r\n result[j][fields[i]] = el\r\n })\r\n })\r\n resolve(result)\r\n // resolve([...(json.items || [])])\r\n }).catch(e => {\r\n reject(e)\r\n })\r\n }).catch(error => {\r\n this.loading = false\r\n reject(error)\r\n })\r\n })\r\n },\r\n onSuggestSelect (suggest) {\r\n this.selected = suggest\r\n },\r\n boldenSuggestion(scope) {\r\n if (!scope) return scope;\r\n const { suggestion, query } = scope;\r\n let result = this.$refs.suggestComponent.displayProperty(suggestion);\r\n if (!query) return result;\r\n const texts = query.split(/[\\s-_/\\\\|.]/gm).filter(t => !!t) || [''];\r\n return result.replace(new RegExp('(.*?)(' + texts.join('|') + ')(.*?)','gi'), '$1<b>$2</b>$3');\r\n },\r\n }\r\n}\r\n</script>\r\n \r\n
Determines the event, that triggers v-model
. Can be one of 'input'
(default) or 'select'
.
For example, if 'input'
is chosen - then v-model will update the value each time an input
event is fired, setting the input's string.
Same is for 'select'
- v-model changes only when something is selected from the list, setting the selected value (string, object or whatever) to its argument.
A proper use-case for it being when one wants to use the component only for selection binding and custom input for text binding:
\r\n\r\n