-1}},filter:{type:Function,default:function(e,t){var n=this;return e.filter((function(e){var o=n.getOptionLabel(e);return"number"==typeof o&&(o=o.toString()),n.filterBy(e,o,t)}))}},createOption:{type:Function,default:function(e){return"object"===s()(this.optionList[0])?l()({},this.label,e):e}},resetOnOptionsChange:{default:!1,validator:function(e){return["function","boolean"].includes(s()(e))}},clearSearchOnBlur:{type:Function,default:function(e){var t=e.clearSearchOnSelect,n=e.multiple;return t&&!n}},noDrop:{type:Boolean,default:!1},inputId:{type:String},dir:{type:String,default:"auto"},selectOnTab:{type:Boolean,default:!1},selectOnKeyCodes:{type:Array,default:function(){return[13]}},searchInputQuerySelector:{type:String,default:"[type=search]"},mapKeydown:{type:Function,default:function(e,t){return e}},appendToBody:{type:Boolean,default:!1},calculatePosition:{type:Function,default:function(e,t,n){var o=n.width,i=n.top,s=n.left;e.style.top=i,e.style.left=s,e.style.width=o}},dropdownShouldOpen:{type:Function,default:function(e){var t=e.noDrop,n=e.open,o=e.mutableLoading;return!t&&(n&&!o)}},uid:{type:[String,Number],default:function(){return g()}},limit:{type:Number,default:0}},data:function(){return{search:"",open:!1,isComposing:!1,pushedTags:[],_value:[]}},computed:{isTrackingValues:function(){return void 0===this.value||this.$options.propsData.hasOwnProperty("reduce")},selectedValue:function(){var e=this.value;return this.isTrackingValues&&(e=this.$data._value),null!=e&&""!==e?[].concat(e):[]},limitedSelectedValue:function(){return this.selectedValue.length>0&&this.limit>0?this.selectedValue.slice(0,this.limit):this.selectedValue},optionList:function(){return this.options.concat(this.pushTags?this.pushedTags:[])},searchEl:function(){return this.$scopedSlots.search?this.$refs.selectedOptions.querySelector(this.searchInputQuerySelector):this.$refs.search},scope:function(){var e=this,t={search:this.search,loading:this.loading,searching:this.searching,filteredOptions:this.filteredOptions};return{search:{attributes:m({disabled:this.disabled,placeholder:this.searchPlaceholder,tabindex:this.tabindex,readonly:!this.searchable,id:this.inputId,"aria-autocomplete":"list","aria-labelledby":"vs".concat(this.uid,"__combobox"),"aria-controls":"vs".concat(this.uid,"__listbox"),ref:"search",type:"search",autocomplete:this.autocomplete,value:this.search},this.dropdownOpen&&this.filteredOptions[this.typeAheadPointer]?{"aria-activedescendant":"vs".concat(this.uid,"__option-").concat(this.typeAheadPointer)}:{}),events:{compositionstart:function(){return e.isComposing=!0},compositionend:function(){return e.isComposing=!1},keydown:this.onSearchKeyDown,keypress:this.onSearchKeyPress,blur:this.onSearchBlur,focus:this.onSearchFocus,input:function(t){return e.search=t.target.value}}},spinner:{loading:this.mutableLoading},limit:{length:this.selectedValue.length},noOptions:{search:this.search,loading:this.mutableLoading,searching:this.searching},openIndicator:{attributes:{ref:"openIndicator",role:"presentation",class:"vs__open-indicator"}},listHeader:t,listFooter:t,header:m({},t,{deselect:this.deselect}),footer:m({},t,{deselect:this.deselect})}},childComponents:function(){return m({},d,{},this.components)},stateClasses:function(){return{"vs--open":this.dropdownOpen,"vs--single":!this.multiple,"vs--multiple":this.multiple,"vs--searching":this.searching&&!this.noDrop,"vs--searchable":this.searchable&&!this.noDrop,"vs--unsearchable":!this.searchable,"vs--loading":this.mutableLoading,"vs--disabled":this.disabled}},searching:function(){return!!this.search},dropdownOpen:function(){return this.dropdownShouldOpen(this)},searchPlaceholder:function(){return this.isValueEmpty&&this.placeholder?this.placeholder:void 0},filteredOptions:function(){var e=[].concat(this.optionList);if(!this.filterable&&!this.taggable)return e;var t=this.search.length?this.filter(e,this.search,this):e;if(this.taggable&&this.search.length){var n=this.createOption(this.search);this.optionExists(n)||t.unshift(n)}return t},isValueEmpty:function(){return 0===this.selectedValue.length},showClearButton:function(){return!this.multiple&&this.clearable&&!this.open&&!this.isValueEmpty}},watch:{options:function(e,t){var n=this;!this.taggable&&("function"==typeof n.resetOnOptionsChange?n.resetOnOptionsChange(e,t,n.selectedValue):n.resetOnOptionsChange)&&this.clearSelection(),this.value&&this.isTrackingValues&&this.setInternalValueFromOptions(this.value)},value:{immediate:!0,handler:function(e){this.isTrackingValues&&this.setInternalValueFromOptions(e)}},multiple:function(){this.clearSelection()},open:function(e){this.$emit(e?"open":"close")},search:function(e){e.length&&(this.open=!0)}},created:function(){this.mutableLoading=this.loading,this.$on("option:created",this.pushTag)},methods:{setInternalValueFromOptions:function(e){var t=this;Array.isArray(e)?this.$data._value=e.map((function(e){return t.findOptionFromReducedValue(e)})):this.$data._value=this.findOptionFromReducedValue(e)},select:function(e){this.$emit("option:selecting",e),this.isOptionSelected(e)?this.deselectFromDropdown&&(this.clearable||this.multiple&&this.selectedValue.length>1)&&this.deselect(e):(this.taggable&&!this.optionExists(e)&&this.$emit("option:created",e),this.multiple&&(e=this.selectedValue.concat(e)),this.updateValue(e),this.$emit("option:selected",e)),this.onAfterSelect(e)},deselect:function(e){var t=this;this.$emit("option:deselecting",e),this.updateValue(this.selectedValue.filter((function(n){return!t.optionComparator(n,e)}))),this.$emit("option:deselected",e)},clearSelection:function(){this.updateValue(this.multiple?[]:null)},onAfterSelect:function(e){var t=this;this.closeOnSelect&&(this.open=!this.open),this.clearSearchOnSelect&&(this.search=""),this.noDrop&&this.multiple&&this.$nextTick((function(){return t.$refs.search.focus()}))},updateValue:function(e){var t=this;void 0===this.value&&(this.$data._value=e),null!==e&&(e=Array.isArray(e)?e.map((function(e){return t.reduce(e)})):this.reduce(e)),this.$emit("input",e)},toggleDropdown:function(e){var n=e.target!==this.searchEl;n&&e.preventDefault();var o=[].concat(t()(this.$refs.deselectButtons||[]),t()([this.$refs.clearButton]||0));void 0===this.searchEl||o.filter(Boolean).some((function(t){return t.contains(e.target)||t===e.target}))?e.preventDefault():this.open&&n?this.searchEl.blur():this.disabled||(this.open=!0,this.searchEl.focus())},isOptionSelected:function(e){var t=this;return this.selectedValue.some((function(n){return t.optionComparator(n,e)}))},isOptionDeselectable:function(e){return this.isOptionSelected(e)&&this.deselectFromDropdown},optionComparator:function(e,t){return this.getOptionKey(e)===this.getOptionKey(t)},findOptionFromReducedValue:function(e){var n=this,o=[].concat(t()(this.options),t()(this.pushedTags)).filter((function(t){return JSON.stringify(n.reduce(t))===JSON.stringify(e)}));return 1===o.length?o[0]:o.find((function(e){return n.optionComparator(e,n.$data._value)}))||e},closeSearchOptions:function(){this.open=!1,this.$emit("search:blur")},maybeDeleteValue:function(){if(!this.searchEl.value.length&&this.selectedValue&&this.selectedValue.length&&this.clearable){var e=null;this.multiple&&(e=t()(this.selectedValue.slice(0,this.selectedValue.length-1))),this.updateValue(e)}},optionExists:function(e){var t=this;return this.optionList.some((function(n){return t.optionComparator(n,e)}))},normalizeOptionForSlot:function(e){return"object"===s()(e)?e:l()({},this.label,e)},pushTag:function(e){this.pushedTags.push(e)},onEscape:function(){this.search.length?this.search="":this.open=!1},onSearchBlur:function(){if(!this.mousedown||this.searching){var e=this.clearSearchOnSelect,t=this.multiple;return this.clearSearchOnBlur({clearSearchOnSelect:e,multiple:t})&&(this.search=""),void this.closeSearchOptions()}this.mousedown=!1,0!==this.search.length||0!==this.options.length||this.closeSearchOptions()},onSearchFocus:function(){this.open=!0,this.$emit("search:focus")},onMousedown:function(){this.mousedown=!0},onMouseUp:function(){this.mousedown=!1},onSearchKeyDown:function(e){var t=this,n=function(e){return e.preventDefault(),!t.isComposing&&t.typeAheadSelect()},o={8:function(e){return t.maybeDeleteValue()},9:function(e){return t.onTab()},27:function(e){return t.onEscape()},38:function(e){if(e.preventDefault(),t.open)return t.typeAheadUp();t.open=!0},40:function(e){if(e.preventDefault(),t.open)return t.typeAheadDown();t.open=!0}};this.selectOnKeyCodes.forEach((function(e){return o[e]=n}));var i=this.mapKeydown(o,this);if("function"==typeof i[e.keyCode])return i[e.keyCode](e)},onSearchKeyPress:function(e){this.open||32!==e.keyCode||(e.preventDefault(),this.open=!0)}}},(function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{staticClass:"v-select",class:e.stateClasses,attrs:{dir:e.dir}},[e._t("header",null,null,e.scope.header),e._v(" "),n("div",{ref:"toggle",staticClass:"vs__dropdown-toggle",attrs:{id:"vs"+e.uid+"__combobox",role:"combobox","aria-expanded":e.dropdownOpen.toString(),"aria-owns":"vs"+e.uid+"__listbox","aria-label":"Search for option"},on:{mousedown:function(t){return e.toggleDropdown(t)}}},[n("div",{ref:"selectedOptions",staticClass:"vs__selected-options"},[e.multiple?[e._l(e.limitedSelectedValue,(function(t){return e._t("selected-option-container",[n("span",{key:e.getOptionKey(t),staticClass:"vs__selected"},[e._t("selected-option",[e._v("\n "+e._s(e.getOptionLabel(t))+"\n ")],null,e.normalizeOptionForSlot(t)),e._v(" "),e.multiple?n("button",{ref:"deselectButtons",refInFor:!0,staticClass:"vs__deselect",attrs:{disabled:e.disabled,type:"button",title:"Deselect "+e.getOptionLabel(t),"aria-label":"Deselect "+e.getOptionLabel(t)},on:{click:function(n){return e.deselect(t)}}},[n(e.childComponents.Deselect,{tag:"component"})],1):e._e()],2)],{option:e.normalizeOptionForSlot(t),deselect:e.deselect,multiple:e.multiple,disabled:e.disabled})})),e._v(" "),e.selectedValue.length>e.limit&&e.limit>0?[n("span",{staticClass:"vs__limit-label"},[e.$slots.limit?e._t("limit",null,{length:e.scope.limit.length}):[e._v("\n "+e._s(e.selectedValue.length-e.limit)+" more\n ")]],2)]:e._e()]:[e._l(e.selectedValue,(function(t){return e._t("selected-option-container",[n("span",{key:e.getOptionKey(t),staticClass:"vs__selected"},[e._t("selected-option",[e._v("\n "+e._s(e.getOptionLabel(t))+"\n ")],null,e.normalizeOptionForSlot(t)),e._v(" "),e.multiple?n("button",{ref:"deselectButtons",refInFor:!0,staticClass:"vs__deselect",attrs:{disabled:e.disabled,type:"button",title:"Deselect "+e.getOptionLabel(t),"aria-label":"Deselect "+e.getOptionLabel(t)},on:{click:function(n){return e.deselect(t)}}},[n(e.childComponents.Deselect,{tag:"component"})],1):e._e()],2)],{option:e.normalizeOptionForSlot(t),deselect:e.deselect,multiple:e.multiple,disabled:e.disabled})}))],e._v(" "),e._t("search",[n("input",e._g(e._b({staticClass:"vs__search"},"input",e.scope.search.attributes,!1),e.scope.search.events))],null,e.scope.search)],2),e._v(" "),n("div",{ref:"actions",staticClass:"vs__actions"},[n("button",{directives:[{name:"show",rawName:"v-show",value:e.showClearButton,expression:"showClearButton"}],ref:"clearButton",staticClass:"vs__clear",attrs:{disabled:e.disabled,type:"button",title:"Clear Selected","aria-label":"Clear Selected"},on:{click:e.clearSelection}},[n(e.childComponents.Deselect,{tag:"component"})],1),e._v(" "),e._t("open-indicator",[e.noDrop?e._e():n(e.childComponents.OpenIndicator,e._b({tag:"component"},"component",e.scope.openIndicator.attributes,!1))],null,e.scope.openIndicator),e._v(" "),e._t("spinner",[n("div",{directives:[{name:"show",rawName:"v-show",value:e.mutableLoading,expression:"mutableLoading"}],staticClass:"vs__spinner"},[e._v("Loading...")])],null,e.scope.spinner)],2)]),e._v(" "),n("transition",{attrs:{name:e.transition}},[e.dropdownOpen?n("ul",{directives:[{name:"append-to-body",rawName:"v-append-to-body"}],key:"vs"+e.uid+"__listbox",ref:"dropdownMenu",staticClass:"vs__dropdown-menu",attrs:{id:"vs"+e.uid+"__listbox",role:"listbox",tabindex:"-1"},on:{mousedown:function(t){return t.preventDefault(),e.onMousedown(t)},mouseup:e.onMouseUp}},[e._t("list-header",null,null,e.scope.listHeader),e._v(" "),e._l(e.filteredOptions,(function(t,o){return n("li",{key:e.getOptionKey(t),staticClass:"vs__dropdown-option",class:{"vs__dropdown-option--deselect":e.isOptionDeselectable(t)&&o===e.typeAheadPointer,"vs__dropdown-option--selected":e.isOptionSelected(t),"vs__dropdown-option--highlight":o===e.typeAheadPointer,"vs__dropdown-option--disabled":!e.selectable(t)},attrs:{id:"vs"+e.uid+"__option-"+o,role:"option","aria-selected":o===e.typeAheadPointer||null},on:{mouseover:function(n){e.selectable(t)&&(e.typeAheadPointer=o)},click:function(n){n.preventDefault(),n.stopPropagation(),e.selectable(t)&&e.select(t)}}},[e._t("option",[e._v("\n "+e._s(e.getOptionLabel(t))+"\n ")],null,e.normalizeOptionForSlot(t))],2)})),e._v(" "),0===e.filteredOptions.length?n("li",{staticClass:"vs__no-options"},[e._t("no-options",[e._v("\n Sorry, no matching options.\n ")],null,e.scope.noOptions)],2):e._e(),e._v(" "),e._t("list-footer",null,null,e.scope.listFooter)],2):n("ul",{staticStyle:{display:"none",visibility:"hidden"},attrs:{id:"vs"+e.uid+"__listbox",role:"listbox"}})]),e._v(" "),e._t("footer",null,null,e.scope.footer)],2)}),[],!1,null,null,null).exports,_={ajax:u,pointer:c,pointerScroll:a},O=v})(),o})()}));
+//# sourceMappingURL=vue-select.js.map
\ No newline at end of file
diff --git a/dist/vue-select.js.map b/dist/vue-select.js.map
new file mode 100644
index 000000000..b3b8c37a8
--- /dev/null
+++ b/dist/vue-select.js.map
@@ -0,0 +1 @@
+{"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?d9c0","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.multiple)?[_vm._l((_vm.limitedSelectedValue),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.selectedValue.length > _vm.limit && _vm.limit > 0)?[_c('span',{staticClass:\"vs__limit-label\"},[(_vm.$slots.limit)?_vm._t(\"limit\",null,{\"length\":_vm.scope.limit.length}):[_vm._v(\"\\n \"+_vm._s(_vm.selectedValue.length - _vm.limit)+\" more\\n \")]],2)]:_vm._e()]:[_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=6637faa1&\"\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","\n\n\n \n
\n
\n
\n \n \n \n \n {{ getOptionLabel(option) }}\n \n \n \n \n \n \n\n limit && limit > 0\">\n \n \n \n {{ selectedValue.length - length }} more\n \n \n \n {{ selectedValue.length - limit }} more\n \n \n \n \n \n \n \n \n {{ getOptionLabel(option) }}\n \n \n \n \n \n \n \n \n \n \n
\n\n
\n
\n \n \n\n
\n \n \n\n
\n Loading...
\n \n
\n
\n
\n \n \n \n
\n
\n \n\n\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","limit","pushedTags","_value","computed","isTrackingValues","$data","limitedSelectedValue","slice","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","$slots","_g","_b","name","rawName","expression","index","stopPropagation","staticStyle","pointer"],"sourceRoot":""}
\ No newline at end of file
diff --git a/docs/.vuepress/components/SlotLimit.vue b/docs/.vuepress/components/SlotLimit.vue
new file mode 100644
index 000000000..ac3406e4b
--- /dev/null
+++ b/docs/.vuepress/components/SlotLimit.vue
@@ -0,0 +1,51 @@
+
+
+
+
+ {{ title }}
+ {{ author.firstName }} {{ author.lastName }}
+
+
+ and {{ length }} more
+
+
+
+
+
diff --git a/docs/api/props.md b/docs/api/props.md
index 6dcccec93..bf9276389 100644
--- a/docs/api/props.md
+++ b/docs/api/props.md
@@ -605,3 +605,13 @@ value: {
default: null
},
```
+
+## limit
+
+It will limit the display of selected options. The rest will be hidden. only work when multiple selections are made.
+
+```js
+limit: {
+ default: 0
+},
+```
diff --git a/docs/api/slots.md b/docs/api/slots.md
index 6cbc81700..5eacdbed2 100644
--- a/docs/api/slots.md
+++ b/docs/api/slots.md
@@ -185,4 +185,11 @@ or have fine grain control over the markup.
<<< @/.vuepress/components/SlotSpinner.vue
+## `limit`
+
+- `limit {Number}` - if the limit props is provided
+
+
+<<< @/.vuepress/components/SlotLimit.vue
+
diff --git a/src/components/Select.vue b/src/components/Select.vue
index a4efc86e2..b62a02d74 100644
--- a/src/components/Select.vue
+++ b/src/components/Select.vue
@@ -16,36 +16,85 @@
@mousedown="toggleDropdown($event)"
>
-
-
-
- {{ getOptionLabel(option) }}
-
-
-
-
-
-
+
+
+
+
+ {{ getOptionLabel(option) }}
+
+
+
+
+
+
+
+
+
+
+ {{ selectedValue.length - length }} more
+
+
+
+ {{ selectedValue.length - limit }} more
+
+
+
+
+
+
+
+
+ {{ getOptionLabel(option) }}
+
+
+
+
+
+
+
uniqueId(),
},
+
+ /**
+ * To limit the visibility with multiple options.
+ * @type {Number}
+ */
+ limit: {
+ type: Number,
+ default: 0,
+ },
},
data() {
@@ -712,6 +770,18 @@ export default {
return []
},
+ /**
+ * The options that are currently selected with limit.
+ * @return {Array}
+ */
+ limitedSelectedValue() {
+ if (this.selectedValue.length > 0 && this.limit > 0) {
+ return this.selectedValue.slice(0, this.limit)
+ }
+
+ return this.selectedValue
+ },
+
/**
* The options available to be chosen
* from the dropdown, including any
@@ -780,6 +850,9 @@ export default {
spinner: {
loading: this.mutableLoading,
},
+ limit: {
+ length: this.selectedValue.length,
+ },
noOptions: {
search: this.search,
loading: this.mutableLoading,
diff --git a/src/css/modules/selected.css b/src/css/modules/selected.css
index c3aa4b506..7b963f0d0 100644
--- a/src/css/modules/selected.css
+++ b/src/css/modules/selected.css
@@ -41,3 +41,12 @@
display: none;
}
}
+
+.vs__limit-label {
+ display: flex;
+ align-items: center;
+ color: var(--vs-selected-color);
+ line-height: var(--vs-line-height);
+ padding: 0 0.25em;
+ z-index: 0;
+}