platypush/platypush/backend/http/webapp/dist/static/js/chunk-faa2aa9a.30241645.js.map

1 line
43 KiB
Plaintext

{"version":3,"sources":["webpack:///./src/components/panels/Execute/Index.vue","webpack:///./src/components/elements/Autocomplete.js","webpack:///./src/components/panels/Execute/Index.vue?24a8","webpack:///./node_modules/core-js/modules/es.string.starts-with.js","webpack:///./node_modules/core-js/modules/es.string.trim.js","webpack:///./node_modules/core-js/internals/not-a-regexp.js","webpack:///./node_modules/core-js/internals/correct-is-regexp-logic.js","webpack:///./src/components/panels/Execute/Index.vue?e5da","webpack:///./node_modules/core-js/internals/string-trim-forced.js"],"names":["class","for","ref","loading","autocomplete","executeAction","type","id","checked","structuredInput","onInputTypeChange","placeholder","disabled","running","action","name","actionChanged","updateAction","title","selectedDoc","htmlDoc","actions","Object","keys","args","length","supportsExtraArgs","key","value","selectAttrDoc","resetAttrDoc","selectedAttrDoc","selectedAttr","extraArgs","i","removeParameter","addParameter","error","response","rawRequest","procedures","sort","selectedProcedure","updateProcedure","$event","executeProcedure","$emit","argname","stopPropagation","inp","arr","listener","currentFocus","addActive","x","removeActive","classList","add","remove","closeAllLists","elmnt","document","getElementsByClassName","parentNode","removeChild","addEventListener","a","b","val","this","createElement","setAttribute","appendChild","substr","toUpperCase","innerHTML","e","getElementsByTagName","keyCode","getElementById","preventDefault","click","focus","target","components","Loading","mixins","Utils","data","undefined","plugins","methods","refresh","request","html_doc","values","plugin","has_kwargs","self","$refs","actionName","evt","entries","reduce","entry","default","parseDoc","doc","docString","lineNo","trailingSpaces","split","line","match","trim","startsWith","slice","replaceAll","event","getAttribute","arg","console","warn","push","pop","onResponse","JSON","stringify","onError","onDone","param","parse","debug","then","catch","finally","notify","text","toString","execute","mounted","render","$","getOwnPropertyDescriptor","f","toLength","notARegExp","requireObjectCoercible","correctIsRegExpLogic","IS_PURE","nativeStartsWith","min","Math","CORRECT_IS_REGEXP_LOGIC","MDN_POLYFILL_BUG","descriptor","String","prototype","writable","proto","forced","searchString","that","index","arguments","search","call","$trim","forcedStringTrimMethod","isRegExp","module","exports","it","TypeError","wellKnownSymbol","MATCH","METHOD_NAME","regexp","error1","error2","fails","whitespaces","non"],"mappings":"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","file":"static/js/chunk-faa2aa9a.30241645.js","sourcesContent":["<template>\n <div class=\"row plugin execute-container\">\n <Loading v-if=\"loading\" />\n <div class=\"command-container\">\n <div class=\"title\">Execute Action</div>\n <form class=\"action-form\" ref=\"actionForm\" autocomplete=\"off\" @submit.prevent=\"executeAction\">\n <div class=\"request-type-container\">\n <input type=\"radio\" id=\"action-structured-input\"\n :checked=\"structuredInput\" @change=\"onInputTypeChange(true)\">\n <label for=\"action-structured-input\">Structured request</label>\n <input type=\"radio\" id=\"action-raw-input\"\n :checked=\"!structuredInput\" @change=\"onInputTypeChange(false)\">\n <label for=\"action-raw-input\">Raw request</label>\n </div>\n\n <div class=\"request structured-request\" :class=\"structuredInput ? '' : 'hidden'\">\n <div class=\"autocomplete\">\n <label>\n <input ref=\"actionName\" type=\"text\" class=\"action-name\"\n placeholder=\"Action Name\" :disabled=\"running\" v-model=\"action.name\"\n @change=\"actionChanged=true\" @blur=\"updateAction\">\n </label>\n </div>\n <button type=\"submit\" class=\"run-btn btn-primary\" :disabled=\"running\" title=\"Run\">\n <i class=\"fas fa-play\" />\n </button>\n\n <div class=\"doc-container\" v-if=\"selectedDoc\">\n <div class=\"title\">\n Action documentation\n </div>\n\n <div class=\"doc html\" v-html=\"selectedDoc\" v-if=\"htmlDoc\" />\n <div class=\"doc raw\" v-text=\"selectedDoc\" v-else />\n </div>\n\n <div class=\"options\" v-if=\"action.name in actions && (Object.keys(action.args).length ||\n action.supportsExtraArgs)\">\n <div class=\"params\" ref=\"params\"\n v-if=\"Object.keys(action.args).length || action.supportsExtraArgs\">\n <div class=\"param\" :key=\"name\" v-for=\"name in Object.keys(action.args)\">\n <label>\n <input type=\"text\" class=\"action-param-value\" :disabled=\"running\"\n :placeholder=\"name\" v-model=\"action.args[name].value\"\n @focus=\"selectAttrDoc(name)\"\n @blur=\"resetAttrDoc\">\n </label>\n\n <div class=\"attr-doc-container mobile\" v-if=\"selectedAttrDoc && selectedAttr === name\">\n <div class=\"title\">\n Attribute: <div class=\"attr-name\" v-text=\"selectedAttr\" />\n </div>\n\n <div class=\"doc html\" v-html=\"selectedAttrDoc\" v-if=\"htmlDoc\" />\n <div class=\"doc raw\" v-text=\"selectedAttrDoc\" v-else />\n </div>\n </div>\n\n <div class=\"extra-params\" ref=\"extraParams\" v-if=\"Object.keys(action.extraArgs).length\">\n <div class=\"param extra-param\" :key=\"i\" v-for=\"i in Object.keys(action.extraArgs)\">\n <label class=\"col-5\">\n <input type=\"text\" class=\"action-extra-param-name\" :disabled=\"running\"\n placeholder=\"Name\" v-model=\"action.extraArgs[i].name\">\n </label>\n <label class=\"col-5\">\n <input type=\"text\" class=\"action-extra-param-value\" :disabled=\"running\"\n placeholder=\"Value\" v-model=\"action.extraArgs[i].value\">\n </label>\n <label class=\"col-2 buttons\">\n <button type=\"button\" class=\"action-extra-param-del\" title=\"Remove parameter\"\n @click=\"removeParameter(i)\">\n <i class=\"fas fa-trash\" />\n </button>\n </label>\n </div>\n </div>\n\n <div class=\"add-param\" v-if=\"action.supportsExtraArgs\">\n <button type=\"button\" title=\"Add a parameter\" @click=\"addParameter\">\n <i class=\"fas fa-plus\" />\n </button>\n </div>\n </div>\n\n <div class=\"attr-doc-container widescreen\" v-if=\"selectedAttrDoc\">\n <div class=\"title\">\n Attribute: <div class=\"attr-name\" v-text=\"selectedAttr\" />\n </div>\n\n <div class=\"doc html\" v-html=\"selectedAttrDoc\" v-if=\"htmlDoc\" />\n <div class=\"doc raw\" v-text=\"selectedAttrDoc\" v-else />\n </div>\n\n <div class=\"output-container\">\n <div class=\"title\" v-text=\"error != null ? 'Error' : 'Output'\" v-if=\"error != null || response != null\" />\n <div class=\"response\" v-html=\"response\" v-if=\"response != null\" />\n <div class=\"error\" v-html=\"error\" v-else-if=\"error != null\" />\n </div>\n </div>\n </div>\n\n <div class=\"request raw-request\" :class=\"structuredInput ? 'hidden' : ''\">\n <div class=\"first-row\">\n <label>\n <textarea v-model=\"rawRequest\" placeholder=\"Raw JSON request\" />\n </label>\n <button type=\"submit\" :disabled=\"running\" class=\"run-btn btn-primary\" title=\"Run\">\n <i class=\"fas fa-play\" />\n </button>\n </div>\n\n <div class=\"output-container\" v-if=\"response != null || error != null\">\n <div class=\"title\" v-text=\"error != null ? 'Error' : 'Output'\" />\n <div class=\"error\" v-html=\"error\" v-if=\"error != null\" />\n <div class=\"response\" v-html=\"response\" v-else-if=\"response != null\" />\n </div>\n </div>\n </form>\n </div>\n\n <div class=\"procedures-container\">\n <div class=\"title\">Execute Procedure</div>\n <div class=\"procedure\" :class=\"selectedProcedure.name === name ? 'selected' : ''\"\n v-for=\"name in Object.keys(procedures).sort()\" :key=\"name\" @click=\"updateProcedure(name, $event)\">\n <form ref=\"procedureForm\" autocomplete=\"off\" @submit.prevent=\"executeProcedure\">\n <div class=\"head\">\n <div class=\"name col-no-margin-11\" v-text=\"name\" />\n <div class=\"btn-container col-no-margin-1\">\n <button type=\"submit\" class=\"run-btn btn-default\" :disabled=\"running\" title=\"Run\"\n @click.stop=\"$emit('submit')\" v-if=\"selectedProcedure.name === name\">\n <i class=\"fas fa-play\" />\n </button>\n </div>\n </div>\n\n <div class=\"params\" v-if=\"selectedProcedure.name === name\">\n <div class=\"param\"\n v-for=\"argname in Object.keys(selectedProcedure.args)\"\n :key=\"argname\">\n <label>\n <input type=\"text\" class=\"action-param-value\" @click=\"$event.stopPropagation()\" :disabled=\"running\"\n :placeholder=\"argname\" v-model=\"selectedProcedure.args[argname]\">\n </label>\n </div>\n </div>\n </form>\n </div>\n </div>\n </div>\n</template>\n\n<script>\nimport autocomplete from \"@/components/elements/Autocomplete\"\nimport Utils from \"@/Utils\"\nimport Loading from \"@/components/Loading\";\n\nexport default {\n name: \"Execute\",\n components: {Loading},\n mixins: [Utils],\n\n data() {\n return {\n loading: false,\n running: false,\n structuredInput: true,\n actionChanged: false,\n selectedDoc: undefined,\n selectedAttr: undefined,\n selectedAttrDoc: undefined,\n selectedProcedure: {\n name: undefined,\n args: {},\n },\n\n response: undefined,\n error: undefined,\n htmlDoc: false,\n rawRequest: undefined,\n actions: {},\n plugins: {},\n procedures: {},\n action: {\n name: undefined,\n args: {},\n extraArgs: [],\n supportsExtraArgs: false,\n },\n }\n },\n\n methods: {\n async refresh() {\n this.loading = true\n\n try {\n this.procedures = await this.request('inspect.get_procedures')\n this.plugins = await this.request('inspect.get_all_plugins', {html_doc: false})\n } finally {\n this.loading = false\n }\n\n for (const plugin of Object.values(this.plugins)) {\n if (plugin.html_doc)\n this.htmlDoc = true\n\n for (const action of Object.values(plugin.actions)) {\n action.name = plugin.name + '.' + action.name\n action.supportsExtraArgs = !!action.has_kwargs\n delete action.has_kwargs\n this.actions[action.name] = action\n }\n }\n\n const self = this\n autocomplete(this.$refs.actionName, Object.keys(this.actions).sort(), (evt, value) => {\n this.action.name = value\n self.updateAction()\n })\n },\n\n updateAction() {\n if (!(this.action.name in this.actions))\n this.selectedDoc = undefined\n\n if (!this.actionChanged || !(this.action.name in this.actions))\n return\n\n this.loading = true\n try {\n this.action = {\n ...this.actions[this.action.name],\n args: Object.entries(this.actions[this.action.name].args).reduce((args, entry) => {\n args[entry[0]] = {\n ...entry[1],\n value: entry[1].default,\n }\n\n return args\n }, {}),\n extraArgs: [],\n }\n } finally {\n this.loading = false\n }\n\n this.selectedDoc = this.parseDoc(this.action.doc)\n this.actionChanged = false\n this.response = undefined\n this.error = undefined\n },\n\n parseDoc(docString) {\n if (!docString?.length || this.htmlDoc)\n return docString\n\n let lineNo = 0\n let trailingSpaces = 0\n\n return docString.split('\\n').reduce((doc, line) => {\n if (++lineNo === 2)\n trailingSpaces = line.match(/^(\\s*)/)[1].length\n\n if (line.trim().startsWith('.. code-block'))\n return doc\n\n doc += line.slice(trailingSpaces).replaceAll('``', '') + '\\n'\n return doc\n }, '')\n },\n\n updateProcedure(name, event) {\n if (event.target.getAttribute('type') === 'submit') {\n return\n }\n\n if (this.selectedProcedure.name === name) {\n this.selectedProcedure = {\n name: undefined,\n args: {},\n }\n\n return\n }\n\n if (!(name in this.procedures)) {\n console.warn('Procedure not found: ' + name)\n return\n }\n\n this.selectedProcedure = {\n name: name,\n args: (this.procedures[name].args || []).reduce((args, arg) => {\n args[arg] = undefined\n return args\n }, {})\n }\n },\n\n addParameter() {\n this.action.extraArgs.push({\n name: undefined,\n value: undefined,\n })\n },\n\n removeParameter(i) {\n this.action.extraArgs.pop(i)\n },\n\n selectAttrDoc(name) {\n this.response = undefined\n this.error = undefined\n this.selectedAttr = name\n this.selectedAttrDoc = this.parseDoc(this.action.args[name].doc)\n },\n\n resetAttrDoc() {\n this.response = undefined\n this.error = undefined\n this.selectedAttr = undefined\n this.selectedAttrDoc = undefined\n },\n\n onInputTypeChange(structuredInput) {\n this.structuredInput = structuredInput\n this.response = undefined\n this.error = undefined\n },\n\n onResponse(response) {\n this.response = '<pre>' + JSON.stringify(response, null, 2) + '</pre>'\n this.error = undefined\n },\n\n onError(error) {\n this.response = undefined\n this.error = error\n },\n\n onDone() {\n this.running = false\n },\n\n executeAction() {\n if (!this.action.name && !this.rawRequest || this.running)\n return\n\n this.running = true\n if (this.structuredInput) {\n const args = {\n ...Object.entries(this.action.args).reduce((args, param) => {\n if (param[1].value != null) {\n let value = param[1].value\n try {\n value = JSON.parse(value)\n } catch (e) {\n console.debug('Not a valid JSON value')\n console.debug(value)\n }\n\n args[param[0]] = value\n }\n return args\n }, {}),\n\n ...this.action.extraArgs.reduce((args, param) => {\n let value = args[param.value]\n try {\n value = JSON.parse(value)\n } catch (e) {\n console.debug('Not a valid JSON value')\n console.debug(value)\n }\n\n args[param.name] = value\n return args\n }, {})\n }\n\n this.request(this.action.name, args).then(this.onResponse).catch(this.onError).finally(this.onDone)\n } else {\n let request = this.rawRequest\n try {\n request = JSON.parse(this.rawRequest)\n } catch (e) {\n this.notify({\n error: true,\n title: 'Invalid JSON request',\n text: e.toString(),\n })\n\n return\n }\n\n this.execute(request).then(this.onResponse).catch(this.onError).finally(this.onDone)\n }\n },\n\n executeProcedure(event) {\n if (!this.selectedProcedure.name || this.running)\n return\n\n event.stopPropagation()\n this.running = true\n const args = {\n ...Object.entries(this.selectedProcedure.args).reduce((args, param) => {\n if (param[1] != null) {\n let value = param[1]\n try {\n value = JSON.parse(value)\n } catch (e) {\n console.debug('Not a valid JSON value')\n console.debug(value)\n }\n\n args[param[0]] = value\n }\n return args\n }, {}),\n }\n\n this.request('procedure.' + this.selectedProcedure.name, args)\n .then(this.onResponse).catch(this.onError).finally(this.onDone)\n },\n },\n\n mounted() {\n this.refresh()\n },\n}\n</script>\n\n<style lang=\"scss\">\n@import \"vars\";\n@import \"~@/style/autocomplete.scss\";\n\n$params-desktop-width: 30em;\n$params-tablet-width: 20em;\n\n.execute-container {\n width: 100%;\n height: 100%;\n color: $default-fg-2;\n font-weight: 400;\n border-bottom: $default-border-2;\n border-radius: 0 0 1em 1em;\n\n form {\n padding: 0;\n margin: 0;\n border-radius: 0;\n border: none;\n }\n\n .action-form {\n padding: 1em .5em;\n }\n\n .title {\n background: $title-bg;\n padding: .5em;\n border: $title-border;\n box-shadow: $title-shadow;\n font-size: 1.1em;\n margin-bottom: 0 !important;\n }\n\n .request-type-container {\n display: flex;\n flex-direction: row;\n align-items: baseline;\n\n label {\n margin: 0 1em 0 .5em;\n }\n }\n\n .request {\n margin: 0 .5em;\n\n form {\n margin-bottom: 0 !important;\n }\n\n .autocomplete {\n width: 80%;\n max-width: 60em;\n }\n\n .action-name {\n box-shadow: $action-name-shadow;\n width: 100%;\n }\n\n [type=submit] {\n margin-left: 2em;\n }\n\n .options {\n display: flex;\n margin-top: .5em;\n margin-bottom: 1.5em;\n padding-top: .5em;\n\n @include until($tablet) {\n flex-direction: column;\n }\n }\n\n .params {\n @include until($tablet) {\n width: 100%;\n }\n\n @include from($tablet) {\n width: $params-tablet-width;\n margin-right: 1.5em;\n }\n\n @include from($desktop) {\n width: $params-desktop-width;\n }\n\n .param {\n margin-bottom: .25em;\n @include until($tablet) {\n width: 100%;\n }\n }\n\n .action-param-value {\n width: 100%;\n }\n }\n\n .add-param {\n width: 100%;\n\n button {\n width: 100%;\n background: $extra-params-btn-bg;\n border: $title-border;\n }\n }\n\n .extra-param {\n display: flex;\n margin-bottom: .5em;\n\n .action-extra-param-del {\n border: 0;\n text-align: right;\n padding: 0 .5em;\n }\n\n .buttons {\n display: flex;\n align-items: center;\n justify-content: center;\n margin-bottom: .25em;\n\n button {\n background: none;\n\n &:hover {\n color: $default-hover-fg;\n }\n }\n }\n }\n\n .doc-container,\n .output-container {\n margin-top: .5em;\n .doc {\n &.raw {\n white-space: pre;\n }\n }\n }\n\n .output-container {\n flex-grow: 1;\n }\n\n .attr-doc-container {\n @include from($tablet) {\n width: calc(100% - #{$params-tablet-width} - 2em);\n }\n\n @include from($desktop) {\n width: calc(100% - #{$params-desktop-width} - 2em);\n }\n\n .doc {\n white-space: pre-line;\n width: 100%;\n overflow: auto;\n }\n\n &.widescreen {\n @include until($tablet) {\n display: none;\n }\n }\n\n &.mobile {\n width: 100%;\n @include from($tablet) {\n display: none;\n }\n }\n }\n\n .doc-container,\n .attr-doc-container {\n .doc {\n padding: 1em !important;\n\n &.raw {\n font-family: monospace;\n font-size: .8em;\n }\n }\n }\n\n .output-container, .doc-container, .attr-doc-container {\n max-height: 50vh;\n display: flex;\n flex-direction: column;\n\n .title {\n font-weight: normal;\n font-size: 1em;\n padding: .5em;\n background: $section-title-bg;\n border-radius: .5em;\n\n .attr-name {\n display: inline-block;\n font-weight: bold;\n }\n }\n\n .response,\n .error,\n .doc {\n height: 100%;\n padding: .5em .5em 0 .5em;\n border-radius: 0 0 1em 1em;\n overflow: auto;\n }\n\n .response {\n background: $response-bg;\n border: $response-border;\n }\n\n .error {\n background: $error-bg;\n border: $error-border;\n }\n\n .doc {\n background: $doc-bg;\n border: $doc-border;\n }\n }\n\n textarea {\n width: 100%;\n height: 10em;\n margin-bottom: .5em;\n padding: .5em;\n border: $default-border-2;\n border-radius: 1em;\n box-shadow: $border-shadow-bottom-right;\n outline: none;\n\n &:hover {\n border: 1px solid $default-hover-fg-2;\n }\n\n &:focus {\n border: 1px solid $selected-fg;\n }\n }\n }\n\n .raw-request {\n .first-row {\n @include until($tablet) {\n width: 100%;\n }\n\n @include from($tablet) {\n width: 80%;\n max-width: 60em;\n }\n\n display: flex;\n flex-direction: column;\n\n button {\n margin-left: 0;\n }\n }\n }\n\n .procedures-container {\n .procedure {\n background: $background-color;\n border-bottom: $default-border-2;\n padding: 1.5em .5em;\n cursor: pointer;\n\n &:hover {\n background: $hover-bg;\n }\n\n &.selected {\n background: $selected-bg;\n }\n\n form {\n background: none;\n display: flex;\n margin-bottom: 0 !important;\n flex-direction: column;\n box-shadow: none;\n }\n\n .head {\n display: flex;\n align-items: center;\n }\n\n .btn-container {\n text-align: right;\n }\n\n button {\n background: $procedure-submit-btn-bg;\n }\n }\n }\n\n pre {\n background: none;\n }\n\n .run-btn {\n border-radius: 2em;\n padding: .5em .75em;\n\n &:hover {\n opacity: .8;\n }\n }\n}\n</style>\n","function autocomplete(inp, arr, listener) {\n /*the autocomplete function takes two arguments,\n the text field element and an array of possible autocompleted values:*/\n let currentFocus;\n /*execute a function when someone writes in the text field:*/\n inp.addEventListener(\"input\", function() {\n let a, b, i, val = this.value;\n /*close any already open lists of autocompleted values*/\n closeAllLists();\n if (!val) { return false;}\n currentFocus = -1;\n /*create a DIV element that will contain the items (values):*/\n a = document.createElement(\"DIV\");\n a.setAttribute(\"id\", this.id + \"autocomplete-list\");\n a.setAttribute(\"class\", \"autocomplete-items\");\n /*append the DIV element as a child of the autocomplete container:*/\n this.parentNode.appendChild(a);\n /*for each item in the array...*/\n for (i = 0; i < arr.length; i++) {\n /*check if the item starts with the same letters as the text field value:*/\n if (arr[i].substr(0, val.length).toUpperCase() === val.toUpperCase()) {\n /*create a DIV element for each matching element:*/\n b = document.createElement(\"DIV\");\n /*make the matching letters bold:*/\n b.innerHTML = \"<strong>\" + arr[i].substr(0, val.length) + \"</strong>\";\n b.innerHTML += arr[i].substr(val.length);\n /*insert a input field that will hold the current array item's value:*/\n b.innerHTML += \"<input type='hidden' value='\" + arr[i] + \"'>\";\n /*execute a function when someone clicks on the item value (DIV element):*/\n b.addEventListener(\"click\", function(e) {\n /*insert the value for the autocomplete text field:*/\n inp.value = this.getElementsByTagName(\"input\")[0].value;\n /*trigger event listener if any:*/\n if (listener) {\n listener(e, inp.value);\n }\n /*close the list of autocompleted values,\n (or any other open lists of autocompleted values:*/\n closeAllLists();\n });\n a.appendChild(b);\n }\n }\n });\n\n inp.addEventListener(\"keydown\", function(e) {\n if (e.keyCode === 9) {\n /*Reset the list if tab has been pressed*/\n closeAllLists();\n }\n });\n\n /*execute a function presses a key on the keyboard:*/\n inp.addEventListener(\"keydown\", function(e) {\n let x = document.getElementById(this.id + \"autocomplete-list\");\n if (x) x = x.getElementsByTagName(\"div\");\n if (e.keyCode === 40) {\n /*If the arrow DOWN key is pressed,\n increase the currentFocus variable:*/\n currentFocus++;\n /*and and make the current item more visible:*/\n addActive(x);\n } else if (e.keyCode === 38) { //up\n /*If the arrow UP key is pressed,\n decrease the currentFocus variable:*/\n currentFocus--;\n /*and and make the current item more visible:*/\n addActive(x);\n } else if (e.keyCode === 13) {\n /*If the ENTER key is pressed, prevent the form from being submitted,*/\n if (currentFocus > -1 && x && x.length) {\n e.preventDefault();\n /*and simulate a click on the \"active\" item:*/\n x[currentFocus].click();\n /*and restore the focus on the input element:*/\n this.focus();\n }\n }\n });\n function addActive(x) {\n /*a function to classify an item as \"active\":*/\n if (!x) return false;\n /*start by removing the \"active\" class on all items:*/\n removeActive(x);\n if (currentFocus >= x.length) currentFocus = 0;\n if (currentFocus < 0) currentFocus = (x.length - 1);\n /*add class \"autocomplete-active\":*/\n x[currentFocus].classList.add(\"autocomplete-active\");\n }\n function removeActive(x) {\n /*a function to remove the \"active\" class from all autocomplete items:*/\n for (let i = 0; i < x.length; i++) {\n x[i].classList.remove(\"autocomplete-active\");\n }\n }\n function closeAllLists(elmnt) {\n /*close all autocomplete lists in the document,\n except the one passed as an argument:*/\n const x = document.getElementsByClassName(\"autocomplete-items\");\n for (let i = 0; i < x.length; i++) {\n if (elmnt !== x[i] && elmnt !== inp) {\n x[i].parentNode.removeChild(x[i]);\n }\n }\n }\n /*execute a function when someone clicks in the document:*/\n document.addEventListener(\"click\", function (e) {\n closeAllLists(e.target);\n });\n}\n\nexport default autocomplete;\n","import { render } from \"./Index.vue?vue&type=template&id=5f834384\"\nimport script from \"./Index.vue?vue&type=script&lang=js\"\nexport * from \"./Index.vue?vue&type=script&lang=js\"\n\nimport \"./Index.vue?vue&type=style&index=0&id=5f834384&lang=scss\"\nscript.render = render\n\nexport default script","'use strict';\nvar $ = require('../internals/export');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar toLength = require('../internals/to-length');\nvar notARegExp = require('../internals/not-a-regexp');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar correctIsRegExpLogic = require('../internals/correct-is-regexp-logic');\nvar IS_PURE = require('../internals/is-pure');\n\nvar nativeStartsWith = ''.startsWith;\nvar min = Math.min;\n\nvar CORRECT_IS_REGEXP_LOGIC = correctIsRegExpLogic('startsWith');\n// https://github.com/zloirock/core-js/pull/702\nvar MDN_POLYFILL_BUG = !IS_PURE && !CORRECT_IS_REGEXP_LOGIC && !!function () {\n var descriptor = getOwnPropertyDescriptor(String.prototype, 'startsWith');\n return descriptor && !descriptor.writable;\n}();\n\n// `String.prototype.startsWith` method\n// https://tc39.github.io/ecma262/#sec-string.prototype.startswith\n$({ target: 'String', proto: true, forced: !MDN_POLYFILL_BUG && !CORRECT_IS_REGEXP_LOGIC }, {\n startsWith: function startsWith(searchString /* , position = 0 */) {\n var that = String(requireObjectCoercible(this));\n notARegExp(searchString);\n var index = toLength(min(arguments.length > 1 ? arguments[1] : undefined, that.length));\n var search = String(searchString);\n return nativeStartsWith\n ? nativeStartsWith.call(that, search, index)\n : that.slice(index, index + search.length) === search;\n }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar $trim = require('../internals/string-trim').trim;\nvar forcedStringTrimMethod = require('../internals/string-trim-forced');\n\n// `String.prototype.trim` method\n// https://tc39.github.io/ecma262/#sec-string.prototype.trim\n$({ target: 'String', proto: true, forced: forcedStringTrimMethod('trim') }, {\n trim: function trim() {\n return $trim(this);\n }\n});\n","var isRegExp = require('../internals/is-regexp');\n\nmodule.exports = function (it) {\n if (isRegExp(it)) {\n throw TypeError(\"The method doesn't accept regular expressions\");\n } return it;\n};\n","var wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar MATCH = wellKnownSymbol('match');\n\nmodule.exports = function (METHOD_NAME) {\n var regexp = /./;\n try {\n '/./'[METHOD_NAME](regexp);\n } catch (error1) {\n try {\n regexp[MATCH] = false;\n return '/./'[METHOD_NAME](regexp);\n } catch (error2) { /* empty */ }\n } return false;\n};\n","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../node_modules/postcss-loader/src/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-v16/dist/index.js??ref--0-1!./Index.vue?vue&type=style&index=0&id=5f834384&lang=scss\"","var fails = require('../internals/fails');\nvar whitespaces = require('../internals/whitespaces');\n\nvar non = '\\u200B\\u0085\\u180E';\n\n// check that a method works with the correct list\n// of whitespaces and has a correct name\nmodule.exports = function (METHOD_NAME) {\n return fails(function () {\n return !!whitespaces[METHOD_NAME]() || non[METHOD_NAME]() != non || whitespaces[METHOD_NAME].name !== METHOD_NAME;\n });\n};\n"],"sourceRoot":""}