|
1 |
- {"version":3,"sources":["../../../src/components/VSelect/VSelect.js"],"names":[],"mappings":"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","sourcesContent":["// Styles\nimport '../../stylus/components/_text-fields.styl'\nimport '../../stylus/components/_select.styl'\n\n// Components\nimport VChip from '../VChip'\nimport VMenu from '../VMenu'\nimport VSelectList from './VSelectList'\n\n// Extensions\nimport VTextField from '../VTextField/VTextField'\n\n// Mixins\nimport Comparable from '../../mixins/comparable'\nimport Filterable from '../../mixins/filterable'\n\n// Directives\nimport ClickOutside from '../../directives/click-outside'\n\n// Helpers\nimport { camelize, getPropertyFromItem, keyCodes } from '../../util/helpers'\nimport { consoleError, consoleWarn } from '../../util/console'\n\nexport const defaultMenuProps = {\n closeOnClick: false,\n closeOnContentClick: false,\n openOnClick: false,\n maxHeight: 300\n}\n\n/* @vue/component */\nexport default VTextField.extend({\n name: 'v-select',\n\n directives: {\n ClickOutside\n },\n\n mixins: [\n Comparable,\n Filterable\n ],\n\n props: {\n appendIcon: {\n type: String,\n default: '$vuetify.icons.dropdown'\n },\n appendIconCb: Function,\n attach: {\n type: null,\n default: false\n },\n browserAutocomplete: {\n type: String,\n default: 'on'\n },\n cacheItems: Boolean,\n chips: Boolean,\n clearable: Boolean,\n deletableChips: Boolean,\n dense: Boolean,\n hideSelected: Boolean,\n items: {\n type: Array,\n default: () => []\n },\n itemAvatar: {\n type: [String, Array, Function],\n default: 'avatar'\n },\n itemDisabled: {\n type: [String, Array, Function],\n default: 'disabled'\n },\n itemText: {\n type: [String, Array, Function],\n default: 'text'\n },\n itemValue: {\n type: [String, Array, Function],\n default: 'value'\n },\n menuProps: {\n type: [String, Array, Object],\n default: () => defaultMenuProps\n },\n multiple: Boolean,\n openOnClear: Boolean,\n returnObject: Boolean,\n searchInput: {\n default: null\n },\n smallChips: Boolean\n },\n\n data: vm => ({\n attrsInput: { role: 'combobox' },\n cachedItems: vm.cacheItems ? vm.items : [],\n content: null,\n isBooted: false,\n isMenuActive: false,\n lastItem: 20,\n // As long as a value is defined, show it\n // Otherwise, check if multiple\n // to determine which default to provide\n lazyValue: vm.value !== undefined\n ? vm.value\n : vm.multiple ? [] : undefined,\n selectedIndex: -1,\n selectedItems: [],\n keyboardLookupPrefix: '',\n keyboardLookupLastTime: 0\n }),\n\n computed: {\n /* All items that the select has */\n allItems () {\n return this.filterDuplicates(this.cachedItems.concat(this.items))\n },\n classes () {\n return Object.assign({}, VTextField.options.computed.classes.call(this), {\n 'v-select': true,\n 'v-select--chips': this.hasChips,\n 'v-select--chips--small': this.smallChips,\n 'v-select--is-menu-active': this.isMenuActive\n })\n },\n /* Used by other components to overwrite */\n computedItems () {\n return this.allItems\n },\n counterValue () {\n return this.multiple\n ? this.selectedItems.length\n : (this.getText(this.selectedItems[0]) || '').toString().length\n },\n directives () {\n return this.isFocused ? [{\n name: 'click-outside',\n value: this.blur,\n args: {\n closeConditional: this.closeConditional\n }\n }] : undefined\n },\n dynamicHeight () {\n return 'auto'\n },\n hasChips () {\n return this.chips || this.smallChips\n },\n hasSlot () {\n return Boolean(this.hasChips || this.$scopedSlots.selection)\n },\n isDirty () {\n return this.selectedItems.length > 0\n },\n listData () {\n const scopeId = this.$vnode && this.$vnode.context.$options._scopeId\n return {\n attrs: scopeId ? {\n [scopeId]: true\n } : null,\n props: {\n action: this.multiple && !this.isHidingSelected,\n color: this.color,\n dense: this.dense,\n hideSelected: this.hideSelected,\n items: this.virtualizedItems,\n noDataText: this.$vuetify.t(this.noDataText),\n selectedItems: this.selectedItems,\n itemAvatar: this.itemAvatar,\n itemDisabled: this.itemDisabled,\n itemValue: this.itemValue,\n itemText: this.itemText\n },\n on: {\n select: this.selectItem\n },\n scopedSlots: {\n item: this.$scopedSlots.item\n }\n }\n },\n staticList () {\n if (this.$slots['no-data'] || this.$slots['prepend-item'] || this.$slots['append-item']) {\n consoleError('assert: staticList should not be called if slots are used')\n }\n\n return this.$createElement(VSelectList, this.listData)\n },\n virtualizedItems () {\n return this.$_menuProps.auto\n ? this.computedItems\n : this.computedItems.slice(0, this.lastItem)\n },\n menuCanShow () { return true },\n $_menuProps () {\n let normalisedProps\n\n normalisedProps = typeof this.menuProps === 'string'\n ? this.menuProps.split(',')\n : this.menuProps\n\n if (Array.isArray(normalisedProps)) {\n normalisedProps = normalisedProps.reduce((acc, p) => {\n acc[p.trim()] = true\n return acc\n }, {})\n }\n\n return {\n ...defaultMenuProps,\n value: this.menuCanShow && this.isMenuActive,\n nudgeBottom: this.nudgeBottom\n ? this.nudgeBottom\n : normalisedProps.offsetY ? 1 : 0, // convert to int\n ...normalisedProps\n }\n }\n },\n\n watch: {\n internalValue (val) {\n this.initialValue = val\n this.setSelectedItems()\n },\n isBooted () {\n this.$nextTick(() => {\n if (this.content && this.content.addEventListener) {\n this.content.addEventListener('scroll', this.onScroll, false)\n }\n })\n },\n isMenuActive (val) {\n if (!val) return\n\n this.isBooted = true\n },\n items: {\n immediate: true,\n handler (val) {\n if (this.cacheItems) {\n this.cachedItems = this.filterDuplicates(this.cachedItems.concat(val))\n }\n\n this.setSelectedItems()\n }\n }\n },\n\n mounted () {\n this.content = this.$refs.menu && this.$refs.menu.$refs.content\n },\n\n methods: {\n /** @public */\n blur (e) {\n this.isMenuActive = false\n this.isFocused = false\n this.$refs.input && this.$refs.input.blur()\n this.selectedIndex = -1\n this.onBlur(e)\n },\n /** @public */\n activateMenu () {\n this.isMenuActive = true\n },\n clearableCallback () {\n this.setValue(this.multiple ? [] : undefined)\n this.$nextTick(() => this.$refs.input.focus())\n\n if (this.openOnClear) this.isMenuActive = true\n },\n closeConditional (e) {\n return (\n // Click originates from outside the menu content\n !!this.content &&\n !this.content.contains(e.target) &&\n\n // Click originates from outside the element\n !!this.$el &&\n !this.$el.contains(e.target) &&\n e.target !== this.$el\n )\n },\n filterDuplicates (arr) {\n const uniqueValues = new Map()\n for (let index = 0; index < arr.length; ++index) {\n const item = arr[index]\n const val = this.getValue(item)\n\n // TODO: comparator\n !uniqueValues.has(val) && uniqueValues.set(val, item)\n }\n return Array.from(uniqueValues.values())\n },\n findExistingIndex (item) {\n const itemValue = this.getValue(item)\n\n return (this.internalValue || []).findIndex(i => this.valueComparator(this.getValue(i), itemValue))\n },\n genChipSelection (item, index) {\n const isDisabled = (\n this.disabled ||\n this.readonly ||\n this.getDisabled(item)\n )\n\n return this.$createElement(VChip, {\n staticClass: 'v-chip--select-multi',\n attrs: { tabindex: -1 },\n props: {\n close: this.deletableChips && !isDisabled,\n disabled: isDisabled,\n selected: index === this.selectedIndex,\n small: this.smallChips\n },\n on: {\n click: e => {\n if (isDisabled) return\n\n e.stopPropagation()\n\n this.selectedIndex = index\n },\n input: () => this.onChipInput(item)\n },\n key: this.getValue(item)\n }, this.getText(item))\n },\n genCommaSelection (item, index, last) {\n // Item may be an object\n // TODO: Remove JSON.stringify\n const key = JSON.stringify(this.getValue(item))\n const color = index === this.selectedIndex && this.color\n const isDisabled = (\n this.disabled ||\n this.getDisabled(item)\n )\n\n return this.$createElement('div', this.setTextColor(color, {\n staticClass: 'v-select__selection v-select__selection--comma',\n 'class': {\n 'v-select__selection--disabled': isDisabled\n },\n key\n }), `${this.getText(item)}${last ? '' : ', '}`)\n },\n genDefaultSlot () {\n const selections = this.genSelections()\n const input = this.genInput()\n\n // If the return is an empty array\n // push the input\n if (Array.isArray(selections)) {\n selections.push(input)\n // Otherwise push it into children\n } else {\n selections.children = selections.children || []\n selections.children.push(input)\n }\n\n return [\n this.$createElement('div', {\n staticClass: 'v-select__slot',\n directives: this.directives\n }, [\n this.genLabel(),\n this.prefix ? this.genAffix('prefix') : null,\n selections,\n this.suffix ? this.genAffix('suffix') : null,\n this.genClearIcon(),\n this.genIconSlot()\n ]),\n this.genMenu(),\n this.genProgress()\n ]\n },\n genInput () {\n const input = VTextField.options.methods.genInput.call(this)\n\n input.data.domProps.value = null\n input.data.attrs.readonly = true\n input.data.attrs['aria-readonly'] = String(this.readonly)\n input.data.on.keypress = this.onKeyPress\n\n return input\n },\n genList () {\n // If there's no slots, we can use a cached VNode to improve performance\n if (this.$slots['no-data'] || this.$slots['prepend-item'] || this.$slots['append-item']) {\n return this.genListWithSlot()\n } else {\n return this.staticList\n }\n },\n genListWithSlot () {\n const slots = ['prepend-item', 'no-data', 'append-item']\n .filter(slotName => this.$slots[slotName])\n .map(slotName => this.$createElement('template', {\n slot: slotName\n }, this.$slots[slotName]))\n // Requires destructuring due to Vue\n // modifying the `on` property when passed\n // as a referenced object\n return this.$createElement(VSelectList, {\n ...this.listData\n }, slots)\n },\n genMenu () {\n const props = this.$_menuProps\n props.activator = this.$refs['input-slot']\n\n // Deprecate using menu props directly\n // TODO: remove (2.0)\n const inheritedProps = Object.keys(VMenu.options.props)\n\n const deprecatedProps = Object.keys(this.$attrs).reduce((acc, attr) => {\n if (inheritedProps.includes(camelize(attr))) acc.push(attr)\n return acc\n }, [])\n\n for (const prop of deprecatedProps) {\n props[camelize(prop)] = this.$attrs[prop]\n }\n\n if (process.env.NODE_ENV !== 'production') {\n if (deprecatedProps.length) {\n const multiple = deprecatedProps.length > 1\n let replacement = deprecatedProps.reduce((acc, p) => {\n acc[camelize(p)] = this.$attrs[p]\n return acc\n }, {})\n const props = deprecatedProps.map(p => `'${p}'`).join(', ')\n const separator = multiple ? '\\n' : '\\''\n\n const onlyBools = Object.keys(replacement).every(prop => {\n const propType = VMenu.options.props[prop]\n const value = replacement[prop]\n return value === true || ((propType.type || propType) === Boolean && value === '')\n })\n\n if (onlyBools) {\n replacement = Object.keys(replacement).join(', ')\n } else {\n replacement = JSON.stringify(replacement, null, multiple ? 2 : 0)\n .replace(/\"([^(\")\"]+)\":/g, '$1:')\n .replace(/\"/g, '\\'')\n }\n\n consoleWarn(\n `${props} ${multiple ? 'are' : 'is'} deprecated, use ` +\n `${separator}${onlyBools ? '' : ':'}menu-props=\"${replacement}\"${separator} instead`,\n this\n )\n }\n }\n\n // Attach to root el so that\n // menu covers prepend/append icons\n if (\n // TODO: make this a computed property or helper or something\n this.attach === '' || // If used as a boolean prop (<v-menu attach>)\n this.attach === true || // If bound to a boolean (<v-menu :attach=\"true\">)\n this.attach === 'attach' // If bound as boolean prop in pug (v-menu(attach))\n ) {\n props.attach = this.$el\n } else {\n props.attach = this.attach\n }\n\n return this.$createElement(VMenu, {\n props,\n on: {\n input: val => {\n this.isMenuActive = val\n this.isFocused = val\n }\n },\n ref: 'menu'\n }, [this.genList()])\n },\n genSelections () {\n let length = this.selectedItems.length\n const children = new Array(length)\n\n let genSelection\n if (this.$scopedSlots.selection) {\n genSelection = this.genSlotSelection\n } else if (this.hasChips) {\n genSelection = this.genChipSelection\n } else {\n genSelection = this.genCommaSelection\n }\n\n while (length--) {\n children[length] = genSelection(\n this.selectedItems[length],\n length,\n length === children.length - 1\n )\n }\n\n return this.$createElement('div', {\n staticClass: 'v-select__selections'\n }, children)\n },\n genSlotSelection (item, index) {\n return this.$scopedSlots.selection({\n parent: this,\n item,\n index,\n selected: index === this.selectedIndex,\n disabled: this.disabled || this.readonly\n })\n },\n getMenuIndex () {\n return this.$refs.menu ? this.$refs.menu.listIndex : -1\n },\n getDisabled (item) {\n return getPropertyFromItem(item, this.itemDisabled, false)\n },\n getText (item) {\n return getPropertyFromItem(item, this.itemText, item)\n },\n getValue (item) {\n return getPropertyFromItem(item, this.itemValue, this.getText(item))\n },\n onBlur (e) {\n this.$emit('blur', e)\n },\n onChipInput (item) {\n if (this.multiple) this.selectItem(item)\n else this.setValue(null)\n // If all items have been deleted,\n // open `v-menu`\n if (this.selectedItems.length === 0) {\n this.isMenuActive = true\n } else {\n this.isMenuActive = false\n }\n this.selectedIndex = -1\n },\n onClick () {\n if (this.isDisabled) return\n\n this.isMenuActive = true\n\n if (!this.isFocused) {\n this.isFocused = true\n this.$emit('focus')\n }\n },\n onEnterDown () {\n this.onBlur()\n },\n onEscDown (e) {\n e.preventDefault()\n if (this.isMenuActive) {\n e.stopPropagation()\n this.isMenuActive = false\n }\n },\n onKeyPress (e) {\n if (this.multiple) return\n\n const KEYBOARD_LOOKUP_THRESHOLD = 1000 // milliseconds\n const now = performance.now()\n if (now - this.keyboardLookupLastTime > KEYBOARD_LOOKUP_THRESHOLD) {\n this.keyboardLookupPrefix = ''\n }\n this.keyboardLookupPrefix += e.key.toLowerCase()\n this.keyboardLookupLastTime = now\n\n const index = this.allItems.findIndex(item => this.getText(item).toLowerCase().startsWith(this.keyboardLookupPrefix))\n const item = this.allItems[index]\n if (index !== -1) {\n this.setValue(this.returnObject ? item : this.getValue(item))\n setTimeout(() => this.setMenuIndex(index))\n }\n },\n onKeyDown (e) {\n const keyCode = e.keyCode\n\n // If enter, space, up, or down is pressed, open menu\n if (!this.readonly && !this.isMenuActive && [\n keyCodes.enter,\n keyCodes.space,\n keyCodes.up, keyCodes.down\n ].includes(keyCode)) this.activateMenu()\n\n if (this.isMenuActive && this.$refs.menu) this.$refs.menu.changeListIndex(e)\n\n // This should do something different\n if (keyCode === keyCodes.enter) return this.onEnterDown(e)\n\n // If escape deactivate the menu\n if (keyCode === keyCodes.esc) return this.onEscDown(e)\n\n // If tab - select item or close menu\n if (keyCode === keyCodes.tab) return this.onTabDown(e)\n },\n onMouseUp (e) {\n if (this.hasMouseDown) {\n const appendInner = this.$refs['append-inner']\n\n // If append inner is present\n // and the target is itself\n // or inside, toggle menu\n if (this.isMenuActive &&\n appendInner &&\n (appendInner === e.target ||\n appendInner.contains(e.target))\n ) {\n this.$nextTick(() => (this.isMenuActive = !this.isMenuActive))\n // If user is clicking in the container\n // and field is enclosed, activate it\n } else if (this.isEnclosed && !this.isDisabled) {\n this.isMenuActive = true\n }\n }\n\n VTextField.options.methods.onMouseUp.call(this, e)\n },\n onScroll () {\n if (!this.isMenuActive) {\n requestAnimationFrame(() => (this.content.scrollTop = 0))\n } else {\n if (this.lastItem >= this.computedItems.length) return\n\n const showMoreItems = (\n this.content.scrollHeight -\n (this.content.scrollTop +\n this.content.clientHeight)\n ) < 200\n\n if (showMoreItems) {\n this.lastItem += 20\n }\n }\n },\n onTabDown (e) {\n const menuIndex = this.getMenuIndex()\n\n const listTile = this.$refs.menu.tiles[menuIndex]\n\n // An item that is selected by\n // menu-index should toggled\n if (\n listTile &&\n listTile.className.indexOf('v-list__tile--highlighted') > -1 &&\n this.isMenuActive &&\n menuIndex > -1\n ) {\n e.preventDefault()\n e.stopPropagation()\n\n listTile.click()\n } else {\n // If we make it here,\n // the user has no selected indexes\n // and is probably tabbing out\n this.blur(e)\n }\n },\n selectItem (item) {\n if (!this.multiple) {\n this.setValue(this.returnObject ? item : this.getValue(item))\n this.isMenuActive = false\n } else {\n const internalValue = (this.internalValue || []).slice()\n const i = this.findExistingIndex(item)\n\n i !== -1 ? internalValue.splice(i, 1) : internalValue.push(item)\n this.setValue(internalValue.map(i => {\n return this.returnObject ? i : this.getValue(i)\n }))\n\n // When selecting multiple\n // adjust menu after each\n // selection\n this.$nextTick(() => {\n this.$refs.menu &&\n this.$refs.menu.updateDimensions()\n })\n }\n },\n setMenuIndex (index) {\n this.$refs.menu && (this.$refs.menu.listIndex = index)\n },\n setSelectedItems () {\n const selectedItems = []\n const values = !this.multiple || !Array.isArray(this.internalValue)\n ? [this.internalValue]\n : this.internalValue\n\n for (const value of values) {\n const index = this.allItems.findIndex(v => this.valueComparator(\n this.getValue(v),\n this.getValue(value)\n ))\n\n if (index > -1) {\n selectedItems.push(this.allItems[index])\n }\n }\n\n this.selectedItems = selectedItems\n },\n setValue (value) {\n const oldValue = this.internalValue\n this.internalValue = value\n value !== oldValue && this.$emit('change', value)\n }\n }\n})\n"],"sourceRoot":""}
|