MOON
Server: Apache
System: Linux nserver.cafsindia.com 4.18.0-553.104.1.lve.el8.x86_64 #1 SMP Tue Feb 10 20:07:30 UTC 2026 x86_64
User: cafsindia (1002)
PHP: 8.2.30
Disabled: NONE
Upload Files
File: //home/cafsindia/snap.cafsinfotech.in/node_modules/vue-select/dist/vue-select.js.map
{"version":3,"file":"vue-select.js","mappings":"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","sources":["webpack://VueSelect/webpack/universalModuleDefinition","webpack://VueSelect/./node_modules/@babel/runtime/helpers/arrayWithoutHoles.js","webpack://VueSelect/./node_modules/@babel/runtime/helpers/defineProperty.js","webpack://VueSelect/./node_modules/@babel/runtime/helpers/iterableToArray.js","webpack://VueSelect/./node_modules/@babel/runtime/helpers/nonIterableSpread.js","webpack://VueSelect/./node_modules/@babel/runtime/helpers/toConsumableArray.js","webpack://VueSelect/./node_modules/@babel/runtime/helpers/typeof.js","webpack://VueSelect/webpack/bootstrap","webpack://VueSelect/webpack/runtime/compat get default export","webpack://VueSelect/webpack/runtime/define property getters","webpack://VueSelect/webpack/runtime/hasOwnProperty shorthand","webpack://VueSelect/webpack/runtime/make namespace object","webpack://VueSelect/./src/components/Select.vue?eca8","webpack://VueSelect/./src/mixins/pointerScroll.js","webpack://VueSelect/./src/mixins/typeAheadPointer.js","webpack://VueSelect/./src/mixins/ajax.js","webpack://VueSelect/./node_modules/vue-loader/lib/runtime/componentNormalizer.js","webpack://VueSelect/./src/components/OpenIndicator.vue","webpack://VueSelect/./src/components/childComponents.js","webpack://VueSelect/./src/components/Deselect.vue","webpack://VueSelect/./src/components/Deselect.vue?3130","webpack://VueSelect/./src/components/OpenIndicator.vue?cfdc","webpack://VueSelect/./src/directives/appendToBody.js","webpack://VueSelect/./src/utility/sortAndStringify.js","webpack://VueSelect/./src/utility/uniqueId.js","webpack://VueSelect/./src/components/Select.vue","webpack://VueSelect/src/components/Select.vue","webpack://VueSelect/./src/mixins/index.js","webpack://VueSelect/./src/index.js"],"sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"VueSelect\"] = factory();\n\telse\n\t\troot[\"VueSelect\"] = factory();\n})(typeof self !== 'undefined' ? self : this, function() {\nreturn ","function _arrayWithoutHoles(arr) {\n  if (Array.isArray(arr)) {\n    for (var i = 0, arr2 = new Array(arr.length); i < arr.length; i++) {\n      arr2[i] = arr[i];\n    }\n\n    return arr2;\n  }\n}\n\nmodule.exports = _arrayWithoutHoles;","function _defineProperty(obj, key, value) {\n  if (key in obj) {\n    Object.defineProperty(obj, key, {\n      value: value,\n      enumerable: true,\n      configurable: true,\n      writable: true\n    });\n  } else {\n    obj[key] = value;\n  }\n\n  return obj;\n}\n\nmodule.exports = _defineProperty;","function _iterableToArray(iter) {\n  if (Symbol.iterator in Object(iter) || Object.prototype.toString.call(iter) === \"[object Arguments]\") return Array.from(iter);\n}\n\nmodule.exports = _iterableToArray;","function _nonIterableSpread() {\n  throw new TypeError(\"Invalid attempt to spread non-iterable instance\");\n}\n\nmodule.exports = _nonIterableSpread;","var arrayWithoutHoles = require(\"./arrayWithoutHoles\");\n\nvar iterableToArray = require(\"./iterableToArray\");\n\nvar nonIterableSpread = require(\"./nonIterableSpread\");\n\nfunction _toConsumableArray(arr) {\n  return arrayWithoutHoles(arr) || iterableToArray(arr) || nonIterableSpread();\n}\n\nmodule.exports = _toConsumableArray;","function _typeof(obj) {\n  \"@babel/helpers - typeof\";\n\n  if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") {\n    module.exports = _typeof = function _typeof(obj) {\n      return typeof obj;\n    };\n  } else {\n    module.exports = _typeof = function _typeof(obj) {\n      return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n    };\n  }\n\n  return _typeof(obj);\n}\n\nmodule.exports = _typeof;","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"v-select\",class:_vm.stateClasses,attrs:{\"dir\":_vm.dir}},[_vm._t(\"header\",null,null,_vm.scope.header),_vm._v(\" \"),_c('div',{ref:\"toggle\",staticClass:\"vs__dropdown-toggle\",attrs:{\"id\":(\"vs\" + _vm.uid + \"__combobox\"),\"role\":\"combobox\",\"aria-expanded\":_vm.dropdownOpen.toString(),\"aria-owns\":(\"vs\" + _vm.uid + \"__listbox\"),\"aria-label\":\"Search for option\"},on:{\"mousedown\":function($event){return _vm.toggleDropdown($event)}}},[_c('div',{ref:\"selectedOptions\",staticClass:\"vs__selected-options\"},[_vm._l((_vm.selectedValue),function(option){return _vm._t(\"selected-option-container\",[_c('span',{key:_vm.getOptionKey(option),staticClass:\"vs__selected\"},[_vm._t(\"selected-option\",[_vm._v(\"\\n            \"+_vm._s(_vm.getOptionLabel(option))+\"\\n          \")],null,_vm.normalizeOptionForSlot(option)),_vm._v(\" \"),(_vm.multiple)?_c('button',{ref:\"deselectButtons\",refInFor:true,staticClass:\"vs__deselect\",attrs:{\"disabled\":_vm.disabled,\"type\":\"button\",\"title\":(\"Deselect \" + (_vm.getOptionLabel(option))),\"aria-label\":(\"Deselect \" + (_vm.getOptionLabel(option)))},on:{\"click\":function($event){return _vm.deselect(option)}}},[_c(_vm.childComponents.Deselect,{tag:\"component\"})],1):_vm._e()],2)],{\"option\":_vm.normalizeOptionForSlot(option),\"deselect\":_vm.deselect,\"multiple\":_vm.multiple,\"disabled\":_vm.disabled})}),_vm._v(\" \"),_vm._t(\"search\",[_c('input',_vm._g(_vm._b({staticClass:\"vs__search\"},'input',_vm.scope.search.attributes,false),_vm.scope.search.events))],null,_vm.scope.search)],2),_vm._v(\" \"),_c('div',{ref:\"actions\",staticClass:\"vs__actions\"},[_c('button',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.showClearButton),expression:\"showClearButton\"}],ref:\"clearButton\",staticClass:\"vs__clear\",attrs:{\"disabled\":_vm.disabled,\"type\":\"button\",\"title\":\"Clear Selected\",\"aria-label\":\"Clear Selected\"},on:{\"click\":_vm.clearSelection}},[_c(_vm.childComponents.Deselect,{tag:\"component\"})],1),_vm._v(\" \"),_vm._t(\"open-indicator\",[(!_vm.noDrop)?_c(_vm.childComponents.OpenIndicator,_vm._b({tag:\"component\"},'component',_vm.scope.openIndicator.attributes,false)):_vm._e()],null,_vm.scope.openIndicator),_vm._v(\" \"),_vm._t(\"spinner\",[_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.mutableLoading),expression:\"mutableLoading\"}],staticClass:\"vs__spinner\"},[_vm._v(\"Loading...\")])],null,_vm.scope.spinner)],2)]),_vm._v(\" \"),_c('transition',{attrs:{\"name\":_vm.transition}},[(_vm.dropdownOpen)?_c('ul',{directives:[{name:\"append-to-body\",rawName:\"v-append-to-body\"}],key:(\"vs\" + _vm.uid + \"__listbox\"),ref:\"dropdownMenu\",staticClass:\"vs__dropdown-menu\",attrs:{\"id\":(\"vs\" + _vm.uid + \"__listbox\"),\"role\":\"listbox\",\"tabindex\":\"-1\"},on:{\"mousedown\":function($event){$event.preventDefault();return _vm.onMousedown($event)},\"mouseup\":_vm.onMouseUp}},[_vm._t(\"list-header\",null,null,_vm.scope.listHeader),_vm._v(\" \"),_vm._l((_vm.filteredOptions),function(option,index){return _c('li',{key:_vm.getOptionKey(option),staticClass:\"vs__dropdown-option\",class:{\n          'vs__dropdown-option--deselect':\n            _vm.isOptionDeselectable(option) && index === _vm.typeAheadPointer,\n          'vs__dropdown-option--selected': _vm.isOptionSelected(option),\n          'vs__dropdown-option--highlight': index === _vm.typeAheadPointer,\n          'vs__dropdown-option--disabled': !_vm.selectable(option),\n        },attrs:{\"id\":(\"vs\" + _vm.uid + \"__option-\" + index),\"role\":\"option\",\"aria-selected\":index === _vm.typeAheadPointer ? true : null},on:{\"mouseover\":function($event){_vm.selectable(option) ? (_vm.typeAheadPointer = index) : null},\"click\":function($event){$event.preventDefault();$event.stopPropagation();_vm.selectable(option) ? _vm.select(option) : null}}},[_vm._t(\"option\",[_vm._v(\"\\n          \"+_vm._s(_vm.getOptionLabel(option))+\"\\n        \")],null,_vm.normalizeOptionForSlot(option))],2)}),_vm._v(\" \"),(_vm.filteredOptions.length === 0)?_c('li',{staticClass:\"vs__no-options\"},[_vm._t(\"no-options\",[_vm._v(\"\\n          Sorry, no matching options.\\n        \")],null,_vm.scope.noOptions)],2):_vm._e(),_vm._v(\" \"),_vm._t(\"list-footer\",null,null,_vm.scope.listFooter)],2):_c('ul',{staticStyle:{\"display\":\"none\",\"visibility\":\"hidden\"},attrs:{\"id\":(\"vs\" + _vm.uid + \"__listbox\"),\"role\":\"listbox\"}})]),_vm._v(\" \"),_vm._t(\"footer\",null,null,_vm.scope.footer)],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","export default {\n  props: {\n    autoscroll: {\n      type: Boolean,\n      default: true,\n    },\n  },\n\n  watch: {\n    typeAheadPointer() {\n      if (this.autoscroll) {\n        this.maybeAdjustScroll()\n      }\n    },\n    open(open) {\n      if (this.autoscroll && open) {\n        this.$nextTick(() => this.maybeAdjustScroll())\n      }\n    },\n  },\n\n  methods: {\n    /**\n     * Adjust the scroll position of the dropdown list\n     * if the current pointer is outside of the\n     * overflow bounds.\n     * @returns {*}\n     */\n    maybeAdjustScroll() {\n      const optionEl =\n        this.$refs.dropdownMenu?.children[this.typeAheadPointer] || false\n\n      if (optionEl) {\n        const bounds = this.getDropdownViewport()\n        const { top, bottom, height } = optionEl.getBoundingClientRect()\n\n        if (top < bounds.top) {\n          return (this.$refs.dropdownMenu.scrollTop = optionEl.offsetTop)\n        } else if (bottom > bounds.bottom) {\n          return (this.$refs.dropdownMenu.scrollTop =\n            optionEl.offsetTop - (bounds.height - height))\n        }\n      }\n    },\n\n    /**\n     * The currently viewable portion of the dropdownMenu.\n     * @returns {{top: (string|*|number), bottom: *}}\n     */\n    getDropdownViewport() {\n      return this.$refs.dropdownMenu\n        ? this.$refs.dropdownMenu.getBoundingClientRect()\n        : {\n            height: 0,\n            top: 0,\n            bottom: 0,\n          }\n    },\n  },\n}\n","export default {\n  data() {\n    return {\n      typeAheadPointer: -1,\n    }\n  },\n\n  watch: {\n    filteredOptions() {\n      for (let i = 0; i < this.filteredOptions.length; i++) {\n        if (this.selectable(this.filteredOptions[i])) {\n          this.typeAheadPointer = i\n          break\n        }\n      }\n    },\n    open(open) {\n      if (open) {\n        this.typeAheadToLastSelected()\n      }\n    },\n    selectedValue() {\n      if (this.open) {\n        this.typeAheadToLastSelected()\n      }\n    },\n  },\n\n  methods: {\n    /**\n     * Move the typeAheadPointer visually up the list by\n     * setting it to the previous selectable option.\n     * @return {void}\n     */\n    typeAheadUp() {\n      for (let i = this.typeAheadPointer - 1; i >= 0; i--) {\n        if (this.selectable(this.filteredOptions[i])) {\n          this.typeAheadPointer = i\n          break\n        }\n      }\n    },\n\n    /**\n     * Move the typeAheadPointer visually down the list by\n     * setting it to the next selectable option.\n     * @return {void}\n     */\n    typeAheadDown() {\n      for (\n        let i = this.typeAheadPointer + 1;\n        i < this.filteredOptions.length;\n        i++\n      ) {\n        if (this.selectable(this.filteredOptions[i])) {\n          this.typeAheadPointer = i\n          break\n        }\n      }\n    },\n\n    /**\n     * Select the option at the current typeAheadPointer position.\n     * Optionally clear the search input on selection.\n     * @return {void}\n     */\n    typeAheadSelect() {\n      const typeAheadOption = this.filteredOptions[this.typeAheadPointer]\n\n      if (typeAheadOption && this.selectable(typeAheadOption)) {\n        this.select(typeAheadOption)\n      }\n    },\n\n    /**\n     * Moves the pointer to the last selected option.\n     */\n    typeAheadToLastSelected() {\n      const indexOfLastSelected =\n        this.selectedValue.length !== 0\n          ? this.filteredOptions.indexOf(\n              this.selectedValue[this.selectedValue.length - 1]\n            )\n          : -1\n\n      if (indexOfLastSelected !== -1) {\n        this.typeAheadPointer = indexOfLastSelected\n      }\n    },\n  },\n}\n","export default {\n  props: {\n    /**\n     * Toggles the adding of a 'loading' class to the main\n     * .v-select wrapper. Useful to control UI state when\n     * results are being processed through AJAX.\n     */\n    loading: {\n      type: Boolean,\n      default: false,\n    },\n  },\n\n  data() {\n    return {\n      mutableLoading: false,\n    }\n  },\n\n  watch: {\n    /**\n     * Anytime the search string changes, emit the\n     * 'search' event. The event is passed with two\n     * parameters: the search string, and a function\n     * that accepts a boolean parameter to toggle the\n     * loading state.\n     *\n     * @emits search\n     */\n    search() {\n      this.$emit('search', this.search, this.toggleLoading)\n    },\n\n    /**\n     * Sync the loading prop with the internal\n     * mutable loading value.\n     * @param val\n     */\n    loading(val) {\n      this.mutableLoading = val\n    },\n  },\n\n  methods: {\n    /**\n     * Toggle this.loading. Optionally pass a boolean\n     * value. If no value is provided, this.loading\n     * will be set to the opposite of it's current value.\n     * @param toggle Boolean\n     * @returns {*}\n     */\n    toggleLoading(toggle = null) {\n      if (toggle == null) {\n        return (this.mutableLoading = !this.mutableLoading)\n      }\n      return (this.mutableLoading = toggle)\n    },\n  },\n}\n","/* globals __VUE_SSR_CONTEXT__ */\n\n// IMPORTANT: Do NOT use ES2015 features in this file (except for modules).\n// This module is a runtime utility for cleaner component module output and will\n// be included in the final webpack user bundle.\n\nexport default function normalizeComponent (\n  scriptExports,\n  render,\n  staticRenderFns,\n  functionalTemplate,\n  injectStyles,\n  scopeId,\n  moduleIdentifier, /* server only */\n  shadowMode /* vue-cli only */\n) {\n  // Vue.extend constructor export interop\n  var options = typeof scriptExports === 'function'\n    ? scriptExports.options\n    : scriptExports\n\n  // render functions\n  if (render) {\n    options.render = render\n    options.staticRenderFns = staticRenderFns\n    options._compiled = true\n  }\n\n  // functional template\n  if (functionalTemplate) {\n    options.functional = true\n  }\n\n  // scopedId\n  if (scopeId) {\n    options._scopeId = 'data-v-' + scopeId\n  }\n\n  var hook\n  if (moduleIdentifier) { // server build\n    hook = function (context) {\n      // 2.3 injection\n      context =\n        context || // cached call\n        (this.$vnode && this.$vnode.ssrContext) || // stateful\n        (this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) // functional\n      // 2.2 with runInNewContext: true\n      if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {\n        context = __VUE_SSR_CONTEXT__\n      }\n      // inject component styles\n      if (injectStyles) {\n        injectStyles.call(this, context)\n      }\n      // register component module identifier for async chunk inferrence\n      if (context && context._registeredComponents) {\n        context._registeredComponents.add(moduleIdentifier)\n      }\n    }\n    // used by ssr in case component is cached and beforeCreate\n    // never gets called\n    options._ssrRegister = hook\n  } else if (injectStyles) {\n    hook = shadowMode\n      ? function () {\n        injectStyles.call(\n          this,\n          (options.functional ? this.parent : this).$root.$options.shadowRoot\n        )\n      }\n      : injectStyles\n  }\n\n  if (hook) {\n    if (options.functional) {\n      // for template-only hot-reload because in that case the render fn doesn't\n      // go through the normalizer\n      options._injectStyles = hook\n      // register for functional component in vue file\n      var originalRender = options.render\n      options.render = function renderWithStyleInjection (h, context) {\n        hook.call(context)\n        return originalRender(h, context)\n      }\n    } else {\n      // inject component registration as beforeCreate hook\n      var existing = options.beforeCreate\n      options.beforeCreate = existing\n        ? [].concat(existing, hook)\n        : [hook]\n    }\n  }\n\n  return {\n    exports: scriptExports,\n    options: options\n  }\n}\n","import { render, staticRenderFns } from \"./OpenIndicator.vue?vue&type=template&id=7e05f866&\"\nvar script = {}\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 Deselect from './Deselect.vue'\nimport OpenIndicator from './OpenIndicator.vue'\n\nexport default {\n  Deselect,\n  OpenIndicator,\n}\n","import { render, staticRenderFns } from \"./Deselect.vue?vue&type=template&id=1f51e8a5&\"\nvar script = {}\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","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('svg',{attrs:{\"xmlns\":\"http://www.w3.org/2000/svg\",\"width\":\"10\",\"height\":\"10\"}},[_c('path',{attrs:{\"d\":\"M6.895455 5l2.842897-2.842898c.348864-.348863.348864-.914488 0-1.263636L9.106534.261648c-.348864-.348864-.914489-.348864-1.263636 0L5 3.104545 2.157102.261648c-.348863-.348864-.914488-.348864-1.263636 0L.261648.893466c-.348864.348864-.348864.914489 0 1.263636L3.104545 5 .261648 7.842898c-.348864.348863-.348864.914488 0 1.263636l.631818.631818c.348864.348864.914773.348864 1.263636 0L5 6.895455l2.842898 2.842897c.348863.348864.914772.348864 1.263636 0l.631818-.631818c.348864-.348864.348864-.914489 0-1.263636L6.895455 5z\"}})])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('svg',{attrs:{\"xmlns\":\"http://www.w3.org/2000/svg\",\"width\":\"14\",\"height\":\"10\"}},[_c('path',{attrs:{\"d\":\"M9.211364 7.59931l4.48338-4.867229c.407008-.441854.407008-1.158247 0-1.60046l-.73712-.80023c-.407008-.441854-1.066904-.441854-1.474243 0L7 5.198617 2.51662.33139c-.407008-.441853-1.066904-.441853-1.474243 0l-.737121.80023c-.407008.441854-.407008 1.158248 0 1.600461l4.48338 4.867228L7 10l2.211364-2.40069z\"}})])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","export default {\n  inserted(el, bindings, { context }) {\n    if (context.appendToBody) {\n      const {\n        height,\n        top,\n        left,\n        width,\n      } = context.$refs.toggle.getBoundingClientRect()\n\n      let scrollX = window.scrollX || window.pageXOffset\n      let scrollY = window.scrollY || window.pageYOffset\n\n      el.unbindPosition = context.calculatePosition(el, context, {\n        width: width + 'px',\n        left: scrollX + left + 'px',\n        top: scrollY + top + height + 'px',\n      })\n\n      document.body.appendChild(el)\n    }\n  },\n\n  unbind(el, bindings, { context }) {\n    if (context.appendToBody) {\n      if (el.unbindPosition && typeof el.unbindPosition === 'function') {\n        el.unbindPosition()\n      }\n      if (el.parentNode) {\n        el.parentNode.removeChild(el)\n      }\n    }\n  },\n}\n","/**\n * @param sortable {object}\n * @return {string}\n */\nfunction sortAndStringify(sortable) {\n  const ordered = {}\n\n  Object.keys(sortable)\n    .sort()\n    .forEach((key) => {\n      ordered[key] = sortable[key]\n    })\n\n  return JSON.stringify(ordered)\n}\n\nexport default sortAndStringify\n","let idCount = 0\n\n/**\n * Dead simple unique ID implementation.\n * Thanks lodash!\n * @return {number}\n */\nfunction uniqueId() {\n  return ++idCount\n}\n\nexport default uniqueId\n","import { render, staticRenderFns } from \"./Select.vue?vue&type=template&id=182a4084&\"\nimport script from \"./Select.vue?vue&type=script&lang=js&\"\nexport * from \"./Select.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Select.vue?vue&type=style&index=0&lang=css&\"\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","<style>\n@import '../css/vue-select.css';\n</style>\n\n<template>\n  <div :dir=\"dir\" class=\"v-select\" :class=\"stateClasses\">\n    <slot name=\"header\" v-bind=\"scope.header\" />\n    <div\n      :id=\"`vs${uid}__combobox`\"\n      ref=\"toggle\"\n      class=\"vs__dropdown-toggle\"\n      role=\"combobox\"\n      :aria-expanded=\"dropdownOpen.toString()\"\n      :aria-owns=\"`vs${uid}__listbox`\"\n      aria-label=\"Search for option\"\n      @mousedown=\"toggleDropdown($event)\"\n    >\n      <div ref=\"selectedOptions\" class=\"vs__selected-options\">\n        <slot\n          v-for=\"option in selectedValue\"\n          name=\"selected-option-container\"\n          :option=\"normalizeOptionForSlot(option)\"\n          :deselect=\"deselect\"\n          :multiple=\"multiple\"\n          :disabled=\"disabled\"\n        >\n          <span :key=\"getOptionKey(option)\" class=\"vs__selected\">\n            <slot\n              name=\"selected-option\"\n              v-bind=\"normalizeOptionForSlot(option)\"\n            >\n              {{ getOptionLabel(option) }}\n            </slot>\n            <button\n              v-if=\"multiple\"\n              ref=\"deselectButtons\"\n              :disabled=\"disabled\"\n              type=\"button\"\n              class=\"vs__deselect\"\n              :title=\"`Deselect ${getOptionLabel(option)}`\"\n              :aria-label=\"`Deselect ${getOptionLabel(option)}`\"\n              @click=\"deselect(option)\"\n            >\n              <component :is=\"childComponents.Deselect\" />\n            </button>\n          </span>\n        </slot>\n\n        <slot name=\"search\" v-bind=\"scope.search\">\n          <input\n            class=\"vs__search\"\n            v-bind=\"scope.search.attributes\"\n            v-on=\"scope.search.events\"\n          />\n        </slot>\n      </div>\n\n      <div ref=\"actions\" class=\"vs__actions\">\n        <button\n          v-show=\"showClearButton\"\n          ref=\"clearButton\"\n          :disabled=\"disabled\"\n          type=\"button\"\n          class=\"vs__clear\"\n          title=\"Clear Selected\"\n          aria-label=\"Clear Selected\"\n          @click=\"clearSelection\"\n        >\n          <component :is=\"childComponents.Deselect\" />\n        </button>\n\n        <slot name=\"open-indicator\" v-bind=\"scope.openIndicator\">\n          <component\n            :is=\"childComponents.OpenIndicator\"\n            v-if=\"!noDrop\"\n            v-bind=\"scope.openIndicator.attributes\"\n          />\n        </slot>\n\n        <slot name=\"spinner\" v-bind=\"scope.spinner\">\n          <div v-show=\"mutableLoading\" class=\"vs__spinner\">Loading...</div>\n        </slot>\n      </div>\n    </div>\n    <transition :name=\"transition\">\n      <ul\n        v-if=\"dropdownOpen\"\n        :id=\"`vs${uid}__listbox`\"\n        ref=\"dropdownMenu\"\n        :key=\"`vs${uid}__listbox`\"\n        v-append-to-body\n        class=\"vs__dropdown-menu\"\n        role=\"listbox\"\n        tabindex=\"-1\"\n        @mousedown.prevent=\"onMousedown\"\n        @mouseup=\"onMouseUp\"\n      >\n        <slot name=\"list-header\" v-bind=\"scope.listHeader\" />\n        <li\n          v-for=\"(option, index) in filteredOptions\"\n          :id=\"`vs${uid}__option-${index}`\"\n          :key=\"getOptionKey(option)\"\n          role=\"option\"\n          class=\"vs__dropdown-option\"\n          :class=\"{\n            'vs__dropdown-option--deselect':\n              isOptionDeselectable(option) && index === typeAheadPointer,\n            'vs__dropdown-option--selected': isOptionSelected(option),\n            'vs__dropdown-option--highlight': index === typeAheadPointer,\n            'vs__dropdown-option--disabled': !selectable(option),\n          }\"\n          :aria-selected=\"index === typeAheadPointer ? true : null\"\n          @mouseover=\"selectable(option) ? (typeAheadPointer = index) : null\"\n          @click.prevent.stop=\"selectable(option) ? select(option) : null\"\n        >\n          <slot name=\"option\" v-bind=\"normalizeOptionForSlot(option)\">\n            {{ getOptionLabel(option) }}\n          </slot>\n        </li>\n        <li v-if=\"filteredOptions.length === 0\" class=\"vs__no-options\">\n          <slot name=\"no-options\" v-bind=\"scope.noOptions\">\n            Sorry, no matching options.\n          </slot>\n        </li>\n        <slot name=\"list-footer\" v-bind=\"scope.listFooter\" />\n      </ul>\n      <ul\n        v-else\n        :id=\"`vs${uid}__listbox`\"\n        role=\"listbox\"\n        style=\"display: none; visibility: hidden\"\n      ></ul>\n    </transition>\n    <slot name=\"footer\" v-bind=\"scope.footer\" />\n  </div>\n</template>\n\n<script>\nimport pointerScroll from '../mixins/pointerScroll.js'\nimport typeAheadPointer from '../mixins/typeAheadPointer.js'\nimport ajax from '../mixins/ajax.js'\nimport childComponents from './childComponents.js'\nimport appendToBody from '../directives/appendToBody.js'\nimport sortAndStringify from '../utility/sortAndStringify.js'\nimport uniqueId from '../utility/uniqueId.js'\n\n/**\n * @name VueSelect\n */\nexport default {\n  components: { ...childComponents },\n\n  directives: { appendToBody },\n\n  mixins: [pointerScroll, typeAheadPointer, ajax],\n\n  props: {\n    /**\n     * Contains the currently selected value. Very similar to a\n     * `value` attribute on an <input>. You can listen for changes\n     * with the 'input' event.\n     * @type {Object||String||null}\n     */\n    // eslint-disable-next-line vue/require-default-prop,vue/require-prop-types\n    value: {},\n\n    /**\n     * An object with any custom components that you'd like to overwrite\n     * the default implementation of in your app. The keys in this object\n     * will be merged with the defaults.\n     * @see https://vue-select.org/guide/components.html\n     * @type {Function}\n     */\n    components: {\n      type: Object,\n      default: () => ({}),\n    },\n\n    /**\n     * An array of strings or objects to be used as dropdown choices.\n     * If you are using an array of objects, vue-select will look for\n     * a `label` key (ex. [{label: 'This is Foo', value: 'foo'}]). A\n     * custom label key can be set with the `label` prop.\n     * @type {Array}\n     */\n    options: {\n      type: Array,\n      default() {\n        return []\n      },\n    },\n\n    /**\n     * Disable the entire component.\n     * @type {Boolean}\n     */\n    disabled: {\n      type: Boolean,\n      default: false,\n    },\n\n    /**\n     * Can the user clear the selected property.\n     * @type {Boolean}\n     */\n    clearable: {\n      type: Boolean,\n      default: true,\n    },\n\n    /**\n     * Can the user deselect an option by clicking it from\n     * within the dropdown.\n     * @type {Boolean}\n     */\n    deselectFromDropdown: {\n      type: Boolean,\n      default: false,\n    },\n\n    /**\n     * Enable/disable filtering the options.\n     * @type {Boolean}\n     */\n    searchable: {\n      type: Boolean,\n      default: true,\n    },\n\n    /**\n     * Equivalent to the `multiple` attribute on a `<select>` input.\n     * @type {Boolean}\n     */\n    multiple: {\n      type: Boolean,\n      default: false,\n    },\n\n    /**\n     * Equivalent to the `placeholder` attribute on an `<input>`.\n     * @type {String}\n     */\n    placeholder: {\n      type: String,\n      default: '',\n    },\n\n    /**\n     * Sets a Vue transition property on the `.vs__dropdown-menu`.\n     * @type {String}\n     */\n    transition: {\n      type: String,\n      default: 'vs__fade',\n    },\n\n    /**\n     * Enables/disables clearing the search text when an option is selected.\n     * @type {Boolean}\n     */\n    clearSearchOnSelect: {\n      type: Boolean,\n      default: true,\n    },\n\n    /**\n     * Close a dropdown when an option is chosen. Set to false to keep the dropdown\n     * open (useful when combined with multi-select, for example)\n     * @type {Boolean}\n     */\n    closeOnSelect: {\n      type: Boolean,\n      default: true,\n    },\n\n    /**\n     * Tells vue-select what key to use when generating option\n     * labels when each `option` is an object.\n     * @type {String}\n     */\n    label: {\n      type: String,\n      default: 'label',\n    },\n\n    /**\n     * Value of the 'autocomplete' field of the input\n     * element.\n     * @type {String}\n     */\n    autocomplete: {\n      type: String,\n      default: 'off',\n    },\n\n    /**\n     * When working with objects, the reduce\n     * prop allows you to transform a given\n     * object to only the information you\n     * want passed to a v-model binding\n     * or @input event.\n     */\n    reduce: {\n      type: Function,\n      default: (option) => option,\n    },\n\n    /**\n     * Decides whether an option is selectable or not. Not selectable options\n     * are displayed but disabled and cannot be selected.\n     *\n     * @type {Function}\n     * @since 3.3.0\n     * @param {Object|String} option\n     * @return {Boolean}\n     */\n    selectable: {\n      type: Function,\n      default: (option) => true,\n    },\n\n    /**\n     * Callback to generate the label text. If {option}\n     * is an object, returns option[this.label] by default.\n     *\n     * Label text is used for filtering comparison and\n     * displaying. If you only need to adjust the\n     * display, you should use the `option` and\n     * `selected-option` slots.\n     *\n     * @type {Function}\n     * @param  {Object || String} option\n     * @return {String}\n     */\n    getOptionLabel: {\n      type: Function,\n      default(option) {\n        if (typeof option === 'object') {\n          if (!option.hasOwnProperty(this.label)) {\n            return console.warn(\n              `[vue-select warn]: Label key \"option.${this.label}\" does not` +\n                ` exist in options object ${JSON.stringify(option)}.\\n` +\n                'https://vue-select.org/api/props.html#getoptionlabel'\n            )\n          }\n          return option[this.label]\n        }\n        return option\n      },\n    },\n\n    /**\n     * Generate a unique identifier for each option. If `option`\n     * is an object and `option.hasOwnProperty('id')` exists,\n     * `option.id` is used by default, otherwise the option\n     * will be serialized to JSON.\n     *\n     * If you are supplying a lot of options, you should\n     * provide your own keys, as JSON.stringify can be\n     * slow with lots of objects.\n     *\n     * The result of this function *must* be unique.\n     *\n     * @type {Function}\n     * @param  {Object || String} option\n     * @return {String}\n     */\n    getOptionKey: {\n      type: Function,\n      default(option) {\n        if (typeof option !== 'object') {\n          return option\n        }\n\n        try {\n          return option.hasOwnProperty('id')\n            ? option.id\n            : sortAndStringify(option)\n        } catch (e) {\n          const warning =\n            `[vue-select warn]: Could not stringify this option ` +\n            `to generate unique key. Please provide'getOptionKey' prop ` +\n            `to return a unique key for each option.\\n` +\n            'https://vue-select.org/api/props.html#getoptionkey'\n          return console.warn(warning, option, e)\n        }\n      },\n    },\n\n    /**\n     * Select the current value if selectOnTab is enabled\n     * @deprecated since 3.3\n     */\n    onTab: {\n      type: Function,\n      default: function () {\n        if (this.selectOnTab && !this.isComposing) {\n          this.typeAheadSelect()\n        }\n      },\n    },\n\n    /**\n     * Enable/disable creating options from searchEl.\n     * @type {Boolean}\n     */\n    taggable: {\n      type: Boolean,\n      default: false,\n    },\n\n    /**\n     * Set the tabindex for the input field.\n     * @type {Number}\n     */\n    tabindex: {\n      type: Number,\n      default: null,\n    },\n\n    /**\n     * When true, newly created tags will be added to\n     * the options list.\n     * @type {Boolean}\n     */\n    pushTags: {\n      type: Boolean,\n      default: false,\n    },\n\n    /**\n     * When true, existing options will be filtered\n     * by the search text. Should not be used in conjunction\n     * with taggable.\n     * @type {Boolean}\n     */\n    filterable: {\n      type: Boolean,\n      default: true,\n    },\n\n    /**\n     * Callback to determine if the provided option should\n     * match the current search text. Used to determine\n     * if the option should be displayed.\n     * @type   {Function}\n     * @param  {Object || String} option\n     * @param  {String} label\n     * @param  {String} search\n     * @return {Boolean}\n     */\n    filterBy: {\n      type: Function,\n      default(option, label, search) {\n        return (\n          (label || '')\n            .toLocaleLowerCase()\n            .indexOf(search.toLocaleLowerCase()) > -1\n        )\n      },\n    },\n\n    /**\n     * Callback to filter results when search text\n     * is provided. Default implementation loops\n     * each option, and returns the result of\n     * this.filterBy.\n     * @type   {Function}\n     * @param  {Array} list of options\n     * @param  {String} search text\n     * @param  {Object} vSelect instance\n     * @return {Boolean}\n     */\n    filter: {\n      type: Function,\n      default(options, search) {\n        return options.filter((option) => {\n          let label = this.getOptionLabel(option)\n          if (typeof label === 'number') {\n            label = label.toString()\n          }\n          return this.filterBy(option, label, search)\n        })\n      },\n    },\n\n    /**\n     * User defined function for adding Options\n     * @type {Function}\n     */\n    createOption: {\n      type: Function,\n      default(option) {\n        return typeof this.optionList[0] === 'object'\n          ? { [this.label]: option }\n          : option\n      },\n    },\n\n    /**\n     * When false, updating the options will not reset the selected value. Accepts\n     * a `boolean` or `function` that returns a `boolean`. If defined as a function,\n     * it will receive the params listed below.\n     *\n     * @since 3.4 - Type changed to {Boolean|Function}\n     *\n     * @type {Boolean|Function}\n     * @param {Array} newOptions\n     * @param {Array} oldOptions\n     * @param {Array} selectedValue\n     */\n    resetOnOptionsChange: {\n      default: false,\n      validator: (value) => ['function', 'boolean'].includes(typeof value),\n    },\n\n    /**\n     * If search text should clear on blur\n     * @return {Boolean} True when single and clearSearchOnSelect\n     */\n    clearSearchOnBlur: {\n      type: Function,\n      default: function ({ clearSearchOnSelect, multiple }) {\n        return clearSearchOnSelect && !multiple\n      },\n    },\n\n    /**\n     * Disable the dropdown entirely.\n     * @type {Boolean}\n     */\n    noDrop: {\n      type: Boolean,\n      default: false,\n    },\n\n    /**\n     * Sets the id of the input element.\n     * @type {String}\n     * @default {null}\n     */\n    // eslint-disable-next-line vue/require-default-prop\n    inputId: {\n      type: String,\n    },\n\n    /**\n     * Sets RTL support. Accepts 'ltr', 'rtl', 'auto'.\n     * @see https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/dir\n     * @type {String}\n     * @default 'auto'\n     */\n    dir: {\n      type: String,\n      default: 'auto',\n    },\n\n    /**\n     * When true, hitting the 'tab' key will select the current select value\n     * @type {Boolean}\n     * @deprecated since 3.3 - use selectOnKeyCodes instead\n     */\n    selectOnTab: {\n      type: Boolean,\n      default: false,\n    },\n\n    /**\n     * Keycodes that will select the current option.\n     * @type Array\n     */\n    selectOnKeyCodes: {\n      type: Array,\n      default: () => [\n        // enter\n        13,\n      ],\n    },\n\n    /**\n     * Query Selector used to find the search input\n     * when the 'search' scoped slot is used.\n     *\n     * Must be a valid CSS selector string.\n     *\n     * @see https://developer.mozilla.org/en-US/docs/Web/API/Document/querySelector\n     * @type {String}\n     */\n    searchInputQuerySelector: {\n      type: String,\n      default: '[type=search]',\n    },\n\n    /**\n     * Used to modify the default keydown events map\n     * for the search input. Can be used to implement\n     * custom behaviour for key presses.\n     */\n\n    mapKeydown: {\n      type: Function,\n      /**\n       * @param map {Object}\n       * @param vm {VueSelect}\n       * @return {Object}\n       */\n      default: (map, vm) => map,\n    },\n\n    /**\n     * Append the dropdown element to the end of the body\n     * and size/position it dynamically. Use it if you have\n     * overflow or z-index issues.\n     * @type {Boolean}\n     */\n    appendToBody: {\n      type: Boolean,\n      default: false,\n    },\n\n    /**\n     * When `appendToBody` is true, this function is responsible for\n     * positioning the drop down list.\n     *\n     * If a function is returned from `calculatePosition`, it will\n     * be called when the drop down list is removed from the DOM.\n     * This allows for any garbage collection you may need to do.\n     *\n     * @since v3.7.0\n     * @see http://vue-select.org/guide/positioning.html\n     */\n    calculatePosition: {\n      type: Function,\n      /**\n       * @param dropdownList {HTMLUListElement}\n       * @param component {Vue} current instance of vue select\n       * @param width {string} calculated width in pixels of the dropdown menu\n       * @param top {string} absolute position top value in pixels relative to the document\n       * @param left {string} absolute position left value in pixels relative to the document\n       * @return {function|void}\n       */\n      default(dropdownList, component, { width, top, left }) {\n        dropdownList.style.top = top\n        dropdownList.style.left = left\n        dropdownList.style.width = width\n      },\n    },\n\n    /**\n     * Determines whether the dropdown should be open.\n     * Receives the component instance as the only argument.\n     *\n     * @since v3.12.0\n     * @return boolean\n     */\n    dropdownShouldOpen: {\n      type: Function,\n      default({ noDrop, open, mutableLoading }) {\n        return noDrop ? false : open && !mutableLoading\n      },\n    },\n\n    /**\n     * A unique identifier used to generate IDs in HTML.\n     * Must be unique for every instance of the component.\n     */\n    uid: {\n      type: [String, Number],\n      default: () => uniqueId(),\n    },\n  },\n\n  data() {\n    return {\n      search: '',\n      open: false,\n      isComposing: false,\n      pushedTags: [],\n      // eslint-disable-next-line vue/no-reserved-keys\n      _value: [], // Internal value managed by Vue Select if no `value` prop is passed\n    }\n  },\n\n  computed: {\n    /**\n     * Determine if the component needs to\n     * track the state of values internally.\n     * @return {boolean}\n     */\n    isTrackingValues() {\n      return (\n        typeof this.value === 'undefined' ||\n        this.$options.propsData.hasOwnProperty('reduce')\n      )\n    },\n\n    /**\n     * The options that are currently selected.\n     * @return {Array}\n     */\n    selectedValue() {\n      let value = this.value\n      if (this.isTrackingValues) {\n        // Vue select has to manage value internally\n        value = this.$data._value\n      }\n\n      if (value !== undefined && value !== null && value !== '') {\n        return [].concat(value)\n      }\n\n      return []\n    },\n\n    /**\n     * The options available to be chosen\n     * from the dropdown, including any\n     * tags that have been pushed.\n     *\n     * @return {Array}\n     */\n    optionList() {\n      return this.options.concat(this.pushTags ? this.pushedTags : [])\n    },\n\n    /**\n     * Find the search input DOM element.\n     * @returns {HTMLInputElement}\n     */\n    searchEl() {\n      return !!this.$scopedSlots['search']\n        ? this.$refs.selectedOptions.querySelector(\n            this.searchInputQuerySelector\n          )\n        : this.$refs.search\n    },\n\n    /**\n     * The object to be bound to the $slots.search scoped slot.\n     * @returns {Object}\n     */\n    scope() {\n      const listSlot = {\n        search: this.search,\n        loading: this.loading,\n        searching: this.searching,\n        filteredOptions: this.filteredOptions,\n      }\n      return {\n        search: {\n          attributes: {\n            disabled: this.disabled,\n            placeholder: this.searchPlaceholder,\n            tabindex: this.tabindex,\n            readonly: !this.searchable,\n            id: this.inputId,\n            'aria-autocomplete': 'list',\n            'aria-labelledby': `vs${this.uid}__combobox`,\n            'aria-controls': `vs${this.uid}__listbox`,\n            ref: 'search',\n            type: 'search',\n            autocomplete: this.autocomplete,\n            value: this.search,\n            ...(this.dropdownOpen && this.filteredOptions[this.typeAheadPointer]\n              ? {\n                  'aria-activedescendant': `vs${this.uid}__option-${this.typeAheadPointer}`,\n                }\n              : {}),\n          },\n          events: {\n            compositionstart: () => (this.isComposing = true),\n            compositionend: () => (this.isComposing = false),\n            keydown: this.onSearchKeyDown,\n            keypress: this.onSearchKeyPress,\n            blur: this.onSearchBlur,\n            focus: this.onSearchFocus,\n            input: (e) => (this.search = e.target.value),\n          },\n        },\n        spinner: {\n          loading: this.mutableLoading,\n        },\n        noOptions: {\n          search: this.search,\n          loading: this.mutableLoading,\n          searching: this.searching,\n        },\n        openIndicator: {\n          attributes: {\n            ref: 'openIndicator',\n            role: 'presentation',\n            class: 'vs__open-indicator',\n          },\n        },\n        listHeader: listSlot,\n        listFooter: listSlot,\n        header: { ...listSlot, deselect: this.deselect },\n        footer: { ...listSlot, deselect: this.deselect },\n      }\n    },\n\n    /**\n     * Returns an object containing the child components\n     * that will be used throughout the component. The\n     * `component` prop can be used to overwrite the defaults.\n     *\n     * @return {Object}\n     */\n    childComponents() {\n      return {\n        ...childComponents,\n        ...this.components,\n      }\n    },\n\n    /**\n     * Holds the current state of the component.\n     * @return {Object}\n     */\n    stateClasses() {\n      return {\n        'vs--open': this.dropdownOpen,\n        'vs--single': !this.multiple,\n        'vs--multiple': this.multiple,\n        'vs--searching': this.searching && !this.noDrop,\n        'vs--searchable': this.searchable && !this.noDrop,\n        'vs--unsearchable': !this.searchable,\n        'vs--loading': this.mutableLoading,\n        'vs--disabled': this.disabled,\n      }\n    },\n\n    /**\n     * Return the current state of the\n     * search input\n     * @return {Boolean} True if non empty value\n     */\n    searching() {\n      return !!this.search\n    },\n\n    /**\n     * Return the current state of the\n     * dropdown menu.\n     * @return {Boolean} True if open\n     */\n    dropdownOpen() {\n      return this.dropdownShouldOpen(this)\n    },\n\n    /**\n     * Return the placeholder string if it's set\n     * & there is no value selected.\n     * @return {String} Placeholder text\n     */\n    searchPlaceholder() {\n      return this.isValueEmpty && this.placeholder\n        ? this.placeholder\n        : undefined\n    },\n\n    /**\n     * The currently displayed options, filtered\n     * by the search elements value. If tagging\n     * true, the search text will be prepended\n     * if it doesn't already exist.\n     *\n     * @return {array}\n     */\n    filteredOptions() {\n      const optionList = [].concat(this.optionList)\n\n      if (!this.filterable && !this.taggable) {\n        return optionList\n      }\n\n      let options = this.search.length\n        ? this.filter(optionList, this.search, this)\n        : optionList\n      if (this.taggable && this.search.length) {\n        const createdOption = this.createOption(this.search)\n        if (!this.optionExists(createdOption)) {\n          options.unshift(createdOption)\n        }\n      }\n      return options\n    },\n\n    /**\n     * Check if there aren't any options selected.\n     * @return {Boolean}\n     */\n    isValueEmpty() {\n      return this.selectedValue.length === 0\n    },\n\n    /**\n     * Determines if the clear button should be displayed.\n     * @return {Boolean}\n     */\n    showClearButton() {\n      return (\n        !this.multiple && this.clearable && !this.open && !this.isValueEmpty\n      )\n    },\n  },\n\n  watch: {\n    /**\n     * Maybe reset the value\n     * when options change.\n     * Make sure selected option\n     * is correct.\n     * @return {[type]} [description]\n     */\n    options(newOptions, oldOptions) {\n      let shouldReset = () =>\n        typeof this.resetOnOptionsChange === 'function'\n          ? this.resetOnOptionsChange(\n              newOptions,\n              oldOptions,\n              this.selectedValue\n            )\n          : this.resetOnOptionsChange\n\n      if (!this.taggable && shouldReset()) {\n        this.clearSelection()\n      }\n\n      if (this.value && this.isTrackingValues) {\n        this.setInternalValueFromOptions(this.value)\n      }\n    },\n\n    /**\n     * Make sure to update internal\n     * value if prop changes outside\n     */\n    value: {\n      immediate: true,\n      handler(val) {\n        if (this.isTrackingValues) {\n          this.setInternalValueFromOptions(val)\n        }\n      },\n    },\n\n    /**\n     * Always reset the value when\n     * the multiple prop changes.\n     * @return {void}\n     */\n    multiple() {\n      this.clearSelection()\n    },\n\n    open(isOpen) {\n      this.$emit(isOpen ? 'open' : 'close')\n    },\n\n    search(search) {\n      if (search.length) {\n        this.open = true\n      }\n    },\n  },\n\n  created() {\n    this.mutableLoading = this.loading\n\n    this.$on('option:created', this.pushTag)\n  },\n\n  methods: {\n    /**\n     * Make sure tracked value is\n     * one option if possible.\n     * @param  {Object|String} value\n     * @return {void}\n     */\n    setInternalValueFromOptions(value) {\n      if (Array.isArray(value)) {\n        this.$data._value = value.map((val) =>\n          this.findOptionFromReducedValue(val)\n        )\n      } else {\n        this.$data._value = this.findOptionFromReducedValue(value)\n      }\n    },\n\n    /**\n     * Select or deselect a given option.\n     * Allow deselect if clearable or if not the only selected option.\n     * @param  {Object|String} option\n     * @return {void}\n     */\n    select(option) {\n      this.$emit('option:selecting', option)\n      if (!this.isOptionSelected(option)) {\n        if (this.taggable && !this.optionExists(option)) {\n          this.$emit('option:created', option)\n        }\n        if (this.multiple) {\n          option = this.selectedValue.concat(option)\n        }\n        this.updateValue(option)\n        this.$emit('option:selected', option)\n      } else if (\n        this.deselectFromDropdown &&\n        (this.clearable || (this.multiple && this.selectedValue.length > 1))\n      ) {\n        this.deselect(option)\n      }\n      this.onAfterSelect(option)\n    },\n\n    /**\n     * De-select a given option.\n     * @param  {Object|String} option\n     * @return {void}\n     */\n    deselect(option) {\n      this.$emit('option:deselecting', option)\n      this.updateValue(\n        this.selectedValue.filter((val) => {\n          return !this.optionComparator(val, option)\n        })\n      )\n      this.$emit('option:deselected', option)\n    },\n\n    /**\n     * Clears the currently selected value(s)\n     * @return {void}\n     */\n    clearSelection() {\n      this.updateValue(this.multiple ? [] : null)\n    },\n\n    /**\n     * Called from this.select after each selection.\n     * @param  {Object|String} option\n     * @return {void}\n     */\n    onAfterSelect(option) {\n      if (this.closeOnSelect) {\n        this.open = !this.open\n      }\n\n      if (this.clearSearchOnSelect) {\n        this.search = ''\n      }\n      if (this.noDrop && this.multiple) {\n        this.$nextTick(() => this.$refs.search.focus())\n      }\n    },\n\n    /**\n     * Accepts a selected value, updates local\n     * state when required, and triggers the\n     * input event.\n     *\n     * @emits input\n     * @param value\n     */\n    updateValue(value) {\n      if (typeof this.value === 'undefined') {\n        // Vue select has to manage value\n        this.$data._value = value\n      }\n\n      if (value !== null) {\n        if (Array.isArray(value)) {\n          value = value.map((val) => this.reduce(val))\n        } else {\n          value = this.reduce(value)\n        }\n      }\n\n      this.$emit('input', value)\n    },\n\n    /**\n     * Toggle the visibility of the dropdown menu.\n     * @param  {Event} event\n     * @return {void}\n     */\n    toggleDropdown(event) {\n      const targetIsNotSearch = event.target !== this.searchEl\n      if (targetIsNotSearch) {\n        event.preventDefault()\n      }\n\n      //  don't react to click on deselect/clear buttons,\n      //  they dropdown state will be set in their click handlers\n      const ignoredButtons = [\n        ...(this.$refs['deselectButtons'] || []),\n        ...([this.$refs['clearButton']] || []),\n      ]\n\n      if (\n        this.searchEl === undefined ||\n        ignoredButtons\n          .filter(Boolean)\n          .some((ref) => ref.contains(event.target) || ref === event.target)\n      ) {\n        event.preventDefault()\n        return\n      }\n\n      if (this.open && targetIsNotSearch) {\n        this.searchEl.blur()\n      } else if (!this.disabled) {\n        this.open = true\n        this.searchEl.focus()\n      }\n    },\n\n    /**\n     * Check if the given option is currently selected.\n     * @param  {Object|String}  option\n     * @return {Boolean}        True when selected | False otherwise\n     */\n    isOptionSelected(option) {\n      return this.selectedValue.some((value) =>\n        this.optionComparator(value, option)\n      )\n    },\n\n    /**\n     *  Can the current option be removed via the dropdown?\n     */\n    isOptionDeselectable(option) {\n      return this.isOptionSelected(option) && this.deselectFromDropdown\n    },\n\n    /**\n     * Determine if two option objects are matching.\n     *\n     * @param a {Object}\n     * @param b {Object}\n     * @returns {boolean}\n     */\n    optionComparator(a, b) {\n      return this.getOptionKey(a) === this.getOptionKey(b)\n    },\n\n    /**\n     * Finds an option from the options\n     * where a reduced value matches\n     * the passed in value.\n     *\n     * @param value {Object}\n     * @returns {*}\n     */\n    findOptionFromReducedValue(value) {\n      const predicate = (option) =>\n        JSON.stringify(this.reduce(option)) === JSON.stringify(value)\n\n      const matches = [...this.options, ...this.pushedTags].filter(predicate)\n\n      if (matches.length === 1) {\n        return matches[0]\n      }\n\n      /**\n       * This second loop is needed to cover an edge case where `taggable` + `reduce`\n       * were used in conjunction with a `create-option` that doesn't create a\n       * unique reduced value.\n       * @see https://github.com/sagalbot/vue-select/issues/1089#issuecomment-597238735\n       */\n      return (\n        matches.find((match) =>\n          this.optionComparator(match, this.$data._value)\n        ) || value\n      )\n    },\n\n    /**\n     * 'Private' function to close the search options\n     * @emits  {search:blur}\n     * @returns {void}\n     */\n    closeSearchOptions() {\n      this.open = false\n      this.$emit('search:blur')\n    },\n\n    /**\n     * Delete the value on Delete keypress when there is no\n     * text in the search input, & there's tags to delete\n     * @return {this.value}\n     */\n    maybeDeleteValue() {\n      if (\n        !this.searchEl.value.length &&\n        this.selectedValue &&\n        this.selectedValue.length &&\n        this.clearable\n      ) {\n        let value = null\n        if (this.multiple) {\n          value = [\n            ...this.selectedValue.slice(0, this.selectedValue.length - 1),\n          ]\n        }\n        this.updateValue(value)\n      }\n    },\n\n    /**\n     * Determine if an option exists\n     * within this.optionList array.\n     *\n     * @param  {Object || String} option\n     * @return {boolean}\n     */\n    optionExists(option) {\n      return this.optionList.some((_option) =>\n        this.optionComparator(_option, option)\n      )\n    },\n\n    /**\n     * Ensures that options are always\n     * passed as objects to scoped slots.\n     * @param option\n     * @return {*}\n     */\n    normalizeOptionForSlot(option) {\n      return typeof option === 'object' ? option : { [this.label]: option }\n    },\n\n    /**\n     * If push-tags is true, push the\n     * given option to `this.pushedTags`.\n     *\n     * @param  {Object || String} option\n     * @return {void}\n     */\n    pushTag(option) {\n      this.pushedTags.push(option)\n    },\n\n    /**\n     * If there is any text in the search input, remove it.\n     * Otherwise, blur the search input to close the dropdown.\n     * @return {void}\n     */\n    onEscape() {\n      if (!this.search.length) {\n        this.open = false\n      } else {\n        this.search = ''\n      }\n    },\n\n    /**\n     * Close the dropdown on blur.\n     * @emits  {search:blur}\n     * @return {void}\n     */\n    onSearchBlur() {\n      if (this.mousedown && !this.searching) {\n        this.mousedown = false\n      } else {\n        const { clearSearchOnSelect, multiple } = this\n        if (this.clearSearchOnBlur({ clearSearchOnSelect, multiple })) {\n          this.search = ''\n        }\n        this.closeSearchOptions()\n        return\n      }\n      // Fixed bug where no-options message could not be closed\n      if (this.search.length === 0 && this.options.length === 0) {\n        this.closeSearchOptions()\n        return\n      }\n    },\n\n    /**\n     * Open the dropdown on focus.\n     * @emits  {search:focus}\n     * @return {void}\n     */\n    onSearchFocus() {\n      this.open = true\n      this.$emit('search:focus')\n    },\n\n    /**\n     * Event-Handler to help workaround IE11 (probably fixes 10 as well)\n     * firing a `blur` event when clicking\n     * the dropdown's scrollbar, causing it\n     * to collapse abruptly.\n     * @see https://github.com/sagalbot/vue-select/issues/106\n     * @return {void}\n     */\n    onMousedown() {\n      this.mousedown = true\n    },\n\n    /**\n     * Event-Handler to help workaround IE11 (probably fixes 10 as well)\n     * @see https://github.com/sagalbot/vue-select/issues/106\n     * @return {void}\n     */\n    onMouseUp() {\n      this.mousedown = false\n    },\n\n    /**\n     * Search <input> KeyBoardEvent handler.\n     * @param {KeyboardEvent} e\n     * @return {Function}\n     */\n    onSearchKeyDown(e) {\n      const preventAndSelect = (e) => {\n        e.preventDefault()\n        return !this.isComposing && this.typeAheadSelect()\n      }\n\n      const defaults = {\n        //  backspace\n        8: (e) => this.maybeDeleteValue(),\n        //  tab\n        9: (e) => this.onTab(),\n        //  esc\n        27: (e) => this.onEscape(),\n        //  up.prevent\n        38: (e) => {\n          e.preventDefault()\n          if (!this.open) {\n            this.open = true\n            return\n          }\n          return this.typeAheadUp()\n        },\n        //  down.prevent\n        40: (e) => {\n          e.preventDefault()\n          if (!this.open) {\n            this.open = true\n            return\n          }\n          return this.typeAheadDown()\n        },\n      }\n\n      this.selectOnKeyCodes.forEach(\n        (keyCode) => (defaults[keyCode] = preventAndSelect)\n      )\n\n      const handlers = this.mapKeydown(defaults, this)\n\n      if (typeof handlers[e.keyCode] === 'function') {\n        return handlers[e.keyCode](e)\n      }\n    },\n\n    /**\n     * @todo: Probably want to add a mapKeyPress method just like we have for keydown.\n     * @param {KeyboardEvent} e\n     */\n    onSearchKeyPress(e) {\n      if (!this.open && e.keyCode === 32) {\n        e.preventDefault()\n        this.open = true\n      }\n    },\n  },\n}\n</script>\n","import ajax from './ajax.js'\nimport pointer from './typeAheadPointer.js'\nimport pointerScroll from './pointerScroll.js'\n\nexport default { ajax, pointer, pointerScroll }\n","import VueSelect from './components/Select.vue'\nimport mixins from './mixins/index.js'\n\nexport default VueSelect\nexport { VueSelect, mixins }\n"],"names":["root","factory","exports","module","define","amd","self","this","arr","Array","isArray","i","arr2","length","obj","key","value","Object","defineProperty","enumerable","configurable","writable","iter","Symbol","iterator","prototype","toString","call","from","TypeError","arrayWithoutHoles","iterableToArray","nonIterableSpread","_typeof","constructor","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","undefined","__webpack_modules__","n","getter","__esModule","d","a","definition","o","get","prop","hasOwnProperty","r","toStringTag","props","autoscroll","type","Boolean","default","watch","typeAheadPointer","maybeAdjustScroll","open","$nextTick","methods","optionEl","$refs","dropdownMenu","children","bounds","getDropdownViewport","getBoundingClientRect","top","bottom","height","scrollTop","offsetTop","data","filteredOptions","selectable","typeAheadToLastSelected","selectedValue","typeAheadUp","typeAheadDown","typeAheadSelect","typeAheadOption","select","indexOfLastSelected","indexOf","loading","mutableLoading","search","$emit","toggleLoading","val","toggle","normalizeComponent","scriptExports","render","staticRenderFns","functionalTemplate","injectStyles","scopeId","moduleIdentifier","shadowMode","hook","options","_compiled","functional","_scopeId","context","$vnode","ssrContext","parent","__VUE_SSR_CONTEXT__","_registeredComponents","add","_ssrRegister","$root","$options","shadowRoot","_injectStyles","originalRender","h","existing","beforeCreate","concat","Deselect","_h","$createElement","_c","_self","attrs","OpenIndicator","inserted","el","bindings","appendToBody","left","width","scrollX","window","pageXOffset","scrollY","pageYOffset","unbindPosition","calculatePosition","document","body","appendChild","unbind","parentNode","removeChild","sortable","ordered","keys","sort","forEach","JSON","stringify","idCount","components","directives","mixins","pointerScroll","ajax","disabled","clearable","deselectFromDropdown","searchable","multiple","placeholder","String","transition","clearSearchOnSelect","closeOnSelect","label","autocomplete","reduce","Function","getOptionLabel","option","console","warn","getOptionKey","e","onTab","selectOnTab","isComposing","taggable","tabindex","Number","pushTags","filterable","filterBy","filter","createOption","resetOnOptionsChange","validator","clearSearchOnBlur","noDrop","inputId","dir","selectOnKeyCodes","searchInputQuerySelector","mapKeydown","dropdownList","style","dropdownShouldOpen","uid","pushedTags","_value","computed","isTrackingValues","$data","optionList","searchEl","$scopedSlots","scope","searching","attributes","searchPlaceholder","readonly","id","ref","events","compositionstart","compositionend","keydown","onSearchKeyDown","keypress","onSearchKeyPress","blur","onSearchBlur","focus","onSearchFocus","input","spinner","noOptions","openIndicator","role","class","listHeader","listSlot","listFooter","header","footer","childComponents","stateClasses","dropdownOpen","isValueEmpty","optionExists","createdOption","unshift","showClearButton","clearSelection","setInternalValueFromOptions","immediate","handler","isOpen","created","$on","pushTag","map","findOptionFromReducedValue","isOptionSelected","deselect","updateValue","onAfterSelect","toggleDropdown","targetIsNotSearch","event","preventDefault","some","isOptionDeselectable","optionComparator","b","matches","closeSearchOptions","maybeDeleteValue","normalizeOptionForSlot","push","onEscape","mousedown","onMousedown","onMouseUp","handlers","keyCode","_vm","staticClass","_t","_v","on","$event","_l","_s","refInFor","tag","_e","_g","_b","name","rawName","expression","index","stopPropagation","staticStyle","pointer"],"sourceRoot":""}