@dimailn/vuetify 2.7.2-alpha12 → 2.7.2-alpha14

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -13,12 +13,10 @@ var _VSelect = _interopRequireWildcard(require("../VSelect/VSelect"));
13
13
 
14
14
  var _VTextField = _interopRequireDefault(require("../VTextField/VTextField"));
15
15
 
16
- var _mergeData = _interopRequireDefault(require("../../util/mergeData"));
16
+ var _vue = require("vue");
17
17
 
18
18
  var _helpers = require("../../util/helpers");
19
19
 
20
- var _vue = require("vue");
21
-
22
20
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
23
21
 
24
22
  function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; }
@@ -294,9 +292,14 @@ var _default2 = (0, _vue.defineComponent)({
294
292
  genInput: function genInput() {
295
293
  var input = _VTextField.default.methods.genInput.call(this);
296
294
 
297
- input.data = (0, _mergeData.default)(input.props, {
298
- 'aria-activedescendant': (0, _helpers.getObjectValueByPath)(this.$refs.menu, 'activeTile.id'),
299
- autocomplete: (0, _helpers.getObjectValueByPath)(input.data, 'attrs.autocomplete', 'off'),
295
+ var ariaActiveDescendant = (0, _helpers.getObjectValueByPath)(this.$refs.menu, 'activeTile.id');
296
+ var autocomplete = (0, _helpers.getObjectValueByPath)(input.props, 'autocomplete', 'off'); // в оригинале class не пробрасывался в инпут
297
+
298
+ input.props = (0, _vue.mergeProps)(_objectSpread(_objectSpread({}, input.props), {}, {
299
+ class: undefined
300
+ }), {
301
+ 'aria-activedescendant': ariaActiveDescendant,
302
+ autocomplete: autocomplete,
300
303
  value: this.internalSearch
301
304
  });
302
305
  return input;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/VAutocomplete/VAutocomplete.ts"],"names":[],"mappings":"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","sourcesContent":["// Styles\nimport './VAutocomplete.sass'\n\n// Extensions\nimport VSelect, { defaultMenuProps as VSelectMenuProps } from '../VSelect/VSelect'\nimport VTextField from '../VTextField/VTextField'\n\n// Utilities\nimport mergeData from '../../util/mergeData'\nimport {\n getObjectValueByPath,\n getPropertyFromItem,\n keyCodes,\n} from '../../util/helpers'\n\n// Types\nimport { PropType, VNode, defineComponent } from 'vue'\nimport { PropValidator } from 'vue/types/options'\n\nconst defaultMenuProps = {\n ...VSelectMenuProps,\n offsetY: true,\n offsetOverflow: true,\n transition: false,\n}\n\n/* @vue/component */\nexport default defineComponent({\n name: 'v-autocomplete',\n extends: VSelect,\n\n props: {\n autoSelectFirst: {\n type: Boolean,\n default: false,\n },\n filter: {\n type: Function,\n default: (item: any, queryText: string, itemText: string) => {\n return itemText.toLocaleLowerCase().indexOf(queryText.toLocaleLowerCase()) > -1\n },\n } as PropValidator<(item: any, queryText: string, itemText: string) => boolean>,\n hideNoData: Boolean,\n menuProps: {\n type: VSelect.props.menuProps.type,\n default: () => defaultMenuProps,\n },\n noFilter: Boolean,\n searchInput: {\n type: String as PropType<string | null>,\n },\n },\n\n data () {\n return {\n lazySearch: this.searchInput,\n }\n },\n\n computed: {\n classes (): object {\n return {\n ...VSelect.computed.classes.call(this),\n 'v-autocomplete': true,\n 'v-autocomplete--is-selecting-index': this.selectedIndex > -1,\n }\n },\n computedItems (): object[] {\n return this.filteredItems\n },\n selectedValues (): object[] {\n return this.selectedItems.map(item => this.getValue(item))\n },\n hasDisplayedItems (): boolean {\n return this.hideSelected\n ? this.filteredItems.some(item => !this.hasItem(item))\n : this.filteredItems.length > 0\n },\n currentRange (): number {\n if (this.selectedItem == null) return 0\n\n return String(this.getText(this.selectedItem)).length\n },\n filteredItems (): object[] {\n if (!this.isSearching || this.noFilter || this.internalSearch == null) return this.allItems\n\n return this.allItems.filter(item => {\n const value = getPropertyFromItem(item, this.itemText)\n const text = value != null ? String(value) : ''\n\n return this.filter(item, String(this.internalSearch), text)\n })\n },\n internalSearch: {\n get (): string | null {\n return this.lazySearch\n },\n set (val: any) { // TODO: this should be `string | null` but it breaks lots of other types\n // emit update event only when the new\n // search value is different from previous\n if (this.lazySearch !== val) {\n this.lazySearch = val\n this.$emit('update:search-input', val)\n }\n },\n },\n isAnyValueAllowed (): boolean {\n return false\n },\n isDirty (): boolean {\n return this.searchIsDirty || this.selectedItems.length > 0\n },\n isSearching (): boolean {\n return (\n this.multiple &&\n this.searchIsDirty\n ) || (\n this.searchIsDirty &&\n this.internalSearch !== this.getText(this.selectedItem)\n )\n },\n menuCanShow (): boolean {\n if (!this.isFocused) return false\n\n return this.hasDisplayedItems || !this.hideNoData\n },\n $_menuProps (): object {\n const props = VSelect.computed.$_menuProps.call(this);\n (props as any).contentClass = `v-autocomplete__content ${(props as any).contentClass || ''}`.trim()\n return {\n ...defaultMenuProps,\n ...props,\n }\n },\n searchIsDirty (): boolean {\n return this.internalSearch != null &&\n this.internalSearch !== ''\n },\n selectedItem (): any {\n if (this.multiple) return null\n\n return this.selectedItems.find(i => {\n return this.valueComparator(this.getValue(i), this.getValue(this.internalValue))\n })\n },\n listData () {\n const data = VSelect.computed.listData.call(this) as any\n\n data.props = {\n ...data.props,\n items: this.virtualizedItems,\n noFilter: (\n this.noFilter ||\n !this.isSearching ||\n !this.filteredItems.length\n ),\n searchInput: this.internalSearch,\n }\n\n return data\n },\n },\n\n watch: {\n filteredItems: 'onFilteredItemsChanged',\n internalValue: 'setSearch',\n isFocused (val) {\n if (val) {\n document.addEventListener('copy', this.onCopy)\n this.$refs.input && this.$refs.input.select()\n } else {\n document.removeEventListener('copy', this.onCopy)\n this.blur()\n this.updateSelf()\n }\n },\n isMenuActive (val) {\n if (val || !this.hasSlot) return\n\n this.lazySearch = null\n },\n items (val, oldVal) {\n // If we are focused, the menu\n // is not active, hide no data is enabled,\n // and items change\n // User is probably async loading\n // items, try to activate the menu\n if (\n !(oldVal && oldVal.length) &&\n this.hideNoData &&\n this.isFocused &&\n !this.isMenuActive &&\n val.length\n ) this.activateMenu()\n },\n searchInput (val: string) {\n this.lazySearch = val\n },\n internalSearch: 'onInternalSearchChanged',\n itemText: 'updateSelf',\n },\n\n created () {\n this.setSearch()\n },\n\n unmounted () {\n document.removeEventListener('copy', this.onCopy)\n },\n\n methods: {\n onFilteredItemsChanged (val: never[], oldVal: never[]) {\n // TODO: How is the watcher triggered\n // for duplicate items? no idea\n if (val === oldVal) return\n\n if (!this.autoSelectFirst) {\n const preSelectedItem = oldVal[this.$refs.menu.listIndex]\n\n if (preSelectedItem) {\n this.setMenuIndex(val.findIndex(i => i === preSelectedItem))\n } else {\n this.setMenuIndex(-1)\n }\n this.$emit('update:list-index', this.$refs.menu.listIndex)\n }\n\n this.$nextTick(() => {\n if (\n !this.internalSearch ||\n (val.length !== 1 &&\n !this.autoSelectFirst)\n ) return\n\n this.$refs.menu.getTiles()\n\n if (this.autoSelectFirst && val.length) {\n this.setMenuIndex(0)\n this.$emit('update:list-index', this.$refs.menu.listIndex)\n }\n })\n },\n onInternalSearchChanged () {\n this.updateMenuDimensions()\n },\n updateMenuDimensions () {\n // Type from menuable is not making it through\n this.isMenuActive && this.$refs.menu && this.$refs.menu.updateDimensions()\n },\n changeSelectedIndex (keyCode: number) {\n // Do not allow changing of selectedIndex\n // when search is dirty\n if (this.searchIsDirty) return\n\n if (this.multiple && keyCode === keyCodes.left) {\n if (this.selectedIndex === -1) {\n this.selectedIndex = this.selectedItems.length - 1\n } else {\n this.selectedIndex--\n }\n } else if (this.multiple && keyCode === keyCodes.right) {\n if (this.selectedIndex >= this.selectedItems.length - 1) {\n this.selectedIndex = -1\n } else {\n this.selectedIndex++\n }\n } else if (keyCode === keyCodes.backspace || keyCode === keyCodes.delete) {\n this.deleteCurrentItem()\n }\n },\n deleteCurrentItem () {\n const curIndex = this.selectedIndex\n const curItem = this.selectedItems[curIndex]\n\n // Do nothing if input or item is disabled\n if (\n !this.isInteractive ||\n this.getDisabled(curItem)\n ) return\n\n const lastIndex = this.selectedItems.length - 1\n\n // Select the last item if\n // there is no selection\n if (\n this.selectedIndex === -1 &&\n lastIndex !== 0\n ) {\n this.selectedIndex = lastIndex\n\n return\n }\n\n const length = this.selectedItems.length\n const nextIndex = curIndex !== length - 1\n ? curIndex\n : curIndex - 1\n const nextItem = this.selectedItems[nextIndex]\n\n if (!nextItem) {\n this.setValue(this.multiple ? [] : null)\n } else {\n this.selectItem(curItem)\n }\n\n this.selectedIndex = nextIndex\n },\n clearableCallback () {\n this.internalSearch = null\n\n VSelect.methods.clearableCallback.call(this)\n },\n genInput () {\n const input = VTextField.methods.genInput.call(this)\n\n input.data = mergeData(input.props!, {\n 'aria-activedescendant': getObjectValueByPath(this.$refs.menu, 'activeTile.id'),\n autocomplete: getObjectValueByPath(input.data!, 'attrs.autocomplete', 'off'),\n value: this.internalSearch,\n })\n\n return input\n },\n genInputSlot () {\n const slot = VSelect.methods.genInputSlot.call(this)\n\n slot.props.role = 'combobox'\n\n return slot\n },\n genSelections (): VNode | never[] {\n return this.hasSlot || this.multiple\n ? VSelect.methods.genSelections.call(this)\n : []\n },\n onClick (e: MouseEvent) {\n if (!this.isInteractive) return\n\n this.selectedIndex > -1\n ? (this.selectedIndex = -1)\n : this.onFocus()\n\n if (!this.isAppendInner(e.target)) this.activateMenu()\n },\n onInput (e: Event) {\n if (\n this.selectedIndex > -1 ||\n !e.target\n ) return\n\n const target = e.target as HTMLInputElement\n const value = target.value\n\n // If typing and menu is not currently active\n if (target.value) this.activateMenu()\n\n if (!this.multiple && value === '') this.deleteCurrentItem()\n\n this.internalSearch = value\n this.badInput = target.validity && target.validity.badInput\n },\n onKeyDown (e: KeyboardEvent) {\n const keyCode = e.keyCode\n\n if (\n e.ctrlKey ||\n ![keyCodes.home, keyCodes.end].includes(keyCode)\n ) {\n VSelect.methods.onKeyDown.call(this, e)\n }\n\n // The ordering is important here\n // allows new value to be updated\n // and then moves the index to the\n // proper location\n this.changeSelectedIndex(keyCode)\n },\n onSpaceDown (e: KeyboardEvent) { /* noop */ },\n onTabDown (e: KeyboardEvent) {\n VSelect.methods.onTabDown.call(this, e)\n this.updateSelf()\n },\n onUpDown (e: Event) {\n // Prevent screen from scrolling\n e.preventDefault()\n\n // For autocomplete / combobox, cycling\n // interfers with native up/down behavior\n // instead activate the menu\n this.activateMenu()\n },\n selectItem (item: object) {\n VSelect.methods.selectItem.call(this, item)\n this.setSearch()\n },\n setSelectedItems () {\n VSelect.methods.setSelectedItems.call(this)\n\n // #4273 Don't replace if searching\n // #4403 Don't replace if focused\n if (!this.isFocused) this.setSearch()\n },\n setSearch () {\n // Wait for nextTick so selectedItem\n // has had time to update\n this.$nextTick(() => {\n if (\n !this.multiple ||\n !this.internalSearch ||\n !this.isMenuActive\n ) {\n this.internalSearch = (\n !this.selectedItems.length ||\n this.multiple ||\n this.hasSlot\n )\n ? null\n : this.getText(this.selectedItem)\n }\n })\n },\n updateSelf () {\n if (\n !this.searchIsDirty &&\n !this.internalValue\n ) return\n\n if (\n !this.multiple &&\n !this.valueComparator(\n this.internalSearch,\n this.getValue(this.internalValue)\n )\n ) {\n this.setSearch()\n }\n },\n hasItem (item: any): boolean {\n return this.selectedValues.indexOf(this.getValue(item)) > -1\n },\n onCopy (event: ClipboardEvent) {\n if (this.selectedIndex === -1) return\n\n const currentItem = this.selectedItems[this.selectedIndex]\n const currentItemText = this.getText(currentItem)\n event.clipboardData?.setData('text/plain', currentItemText)\n event.clipboardData?.setData('text/vnd.vuetify.autocomplete.item+plain', currentItemText)\n event.preventDefault()\n },\n },\n})\n"],"sourceRoot":"","file":"VAutocomplete.js"}
1
+ {"version":3,"sources":["../../../src/components/VAutocomplete/VAutocomplete.ts"],"names":[],"mappings":"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","sourcesContent":["// Styles\nimport './VAutocomplete.sass'\n\n// Extensions\nimport VSelect, { defaultMenuProps as VSelectMenuProps } from '../VSelect/VSelect'\nimport VTextField from '../VTextField/VTextField'\n\n// Utilities\nimport { defineComponent, mergeProps } from 'vue'\nimport {\n getObjectValueByPath,\n getPropertyFromItem,\n keyCodes,\n} from '../../util/helpers'\n\n// Types\nimport { PropType, VNode } from 'vue'\nimport { PropValidator } from 'vue/types/options'\n\nconst defaultMenuProps = {\n ...VSelectMenuProps,\n offsetY: true,\n offsetOverflow: true,\n transition: false,\n}\n\n/* @vue/component */\nexport default defineComponent({\n name: 'v-autocomplete',\n extends: VSelect,\n\n props: {\n autoSelectFirst: {\n type: Boolean,\n default: false,\n },\n filter: {\n type: Function,\n default: (item: any, queryText: string, itemText: string) => {\n return itemText.toLocaleLowerCase().indexOf(queryText.toLocaleLowerCase()) > -1\n },\n } as PropValidator<(item: any, queryText: string, itemText: string) => boolean>,\n hideNoData: Boolean,\n menuProps: {\n type: VSelect.props.menuProps.type,\n default: () => defaultMenuProps,\n },\n noFilter: Boolean,\n searchInput: {\n type: String as PropType<string | null>,\n },\n },\n\n data () {\n return {\n lazySearch: this.searchInput,\n }\n },\n\n computed: {\n classes (): object {\n return {\n ...VSelect.computed.classes.call(this),\n 'v-autocomplete': true,\n 'v-autocomplete--is-selecting-index': this.selectedIndex > -1,\n }\n },\n computedItems (): object[] {\n return this.filteredItems\n },\n selectedValues (): object[] {\n return this.selectedItems.map(item => this.getValue(item))\n },\n hasDisplayedItems (): boolean {\n return this.hideSelected\n ? this.filteredItems.some(item => !this.hasItem(item))\n : this.filteredItems.length > 0\n },\n currentRange (): number {\n if (this.selectedItem == null) return 0\n\n return String(this.getText(this.selectedItem)).length\n },\n filteredItems (): object[] {\n if (!this.isSearching || this.noFilter || this.internalSearch == null) return this.allItems\n\n return this.allItems.filter(item => {\n const value = getPropertyFromItem(item, this.itemText)\n const text = value != null ? String(value) : ''\n\n return this.filter(item, String(this.internalSearch), text)\n })\n },\n internalSearch: {\n get (): string | null {\n return this.lazySearch\n },\n set (val: any) { // TODO: this should be `string | null` but it breaks lots of other types\n // emit update event only when the new\n // search value is different from previous\n if (this.lazySearch !== val) {\n this.lazySearch = val\n this.$emit('update:search-input', val)\n }\n },\n },\n isAnyValueAllowed (): boolean {\n return false\n },\n isDirty (): boolean {\n return this.searchIsDirty || this.selectedItems.length > 0\n },\n isSearching (): boolean {\n return (\n this.multiple &&\n this.searchIsDirty\n ) || (\n this.searchIsDirty &&\n this.internalSearch !== this.getText(this.selectedItem)\n )\n },\n menuCanShow (): boolean {\n if (!this.isFocused) return false\n\n return this.hasDisplayedItems || !this.hideNoData\n },\n $_menuProps (): object {\n const props = VSelect.computed.$_menuProps.call(this);\n (props as any).contentClass = `v-autocomplete__content ${(props as any).contentClass || ''}`.trim()\n return {\n ...defaultMenuProps,\n ...props,\n }\n },\n searchIsDirty (): boolean {\n return this.internalSearch != null &&\n this.internalSearch !== ''\n },\n selectedItem (): any {\n if (this.multiple) return null\n\n return this.selectedItems.find(i => {\n return this.valueComparator(this.getValue(i), this.getValue(this.internalValue))\n })\n },\n listData () {\n const data = VSelect.computed.listData.call(this) as any\n\n data.props = {\n ...data.props,\n items: this.virtualizedItems,\n noFilter: (\n this.noFilter ||\n !this.isSearching ||\n !this.filteredItems.length\n ),\n searchInput: this.internalSearch,\n }\n\n return data\n },\n },\n\n watch: {\n filteredItems: 'onFilteredItemsChanged',\n internalValue: 'setSearch',\n isFocused (val) {\n if (val) {\n document.addEventListener('copy', this.onCopy)\n this.$refs.input && this.$refs.input.select()\n } else {\n document.removeEventListener('copy', this.onCopy)\n this.blur()\n this.updateSelf()\n }\n },\n isMenuActive (val) {\n if (val || !this.hasSlot) return\n\n this.lazySearch = null\n },\n items (val, oldVal) {\n // If we are focused, the menu\n // is not active, hide no data is enabled,\n // and items change\n // User is probably async loading\n // items, try to activate the menu\n if (\n !(oldVal && oldVal.length) &&\n this.hideNoData &&\n this.isFocused &&\n !this.isMenuActive &&\n val.length\n ) this.activateMenu()\n },\n searchInput (val: string) {\n this.lazySearch = val\n },\n internalSearch: 'onInternalSearchChanged',\n itemText: 'updateSelf',\n },\n\n created () {\n this.setSearch()\n },\n\n unmounted () {\n document.removeEventListener('copy', this.onCopy)\n },\n\n methods: {\n onFilteredItemsChanged (val: never[], oldVal: never[]) {\n // TODO: How is the watcher triggered\n // for duplicate items? no idea\n if (val === oldVal) return\n\n if (!this.autoSelectFirst) {\n const preSelectedItem = oldVal[this.$refs.menu.listIndex]\n\n if (preSelectedItem) {\n this.setMenuIndex(val.findIndex(i => i === preSelectedItem))\n } else {\n this.setMenuIndex(-1)\n }\n this.$emit('update:list-index', this.$refs.menu.listIndex)\n }\n\n this.$nextTick(() => {\n if (\n !this.internalSearch ||\n (val.length !== 1 &&\n !this.autoSelectFirst)\n ) return\n\n this.$refs.menu.getTiles()\n\n if (this.autoSelectFirst && val.length) {\n this.setMenuIndex(0)\n this.$emit('update:list-index', this.$refs.menu.listIndex)\n }\n })\n },\n onInternalSearchChanged () {\n this.updateMenuDimensions()\n },\n updateMenuDimensions () {\n // Type from menuable is not making it through\n this.isMenuActive && this.$refs.menu && this.$refs.menu.updateDimensions()\n },\n changeSelectedIndex (keyCode: number) {\n // Do not allow changing of selectedIndex\n // when search is dirty\n if (this.searchIsDirty) return\n\n if (this.multiple && keyCode === keyCodes.left) {\n if (this.selectedIndex === -1) {\n this.selectedIndex = this.selectedItems.length - 1\n } else {\n this.selectedIndex--\n }\n } else if (this.multiple && keyCode === keyCodes.right) {\n if (this.selectedIndex >= this.selectedItems.length - 1) {\n this.selectedIndex = -1\n } else {\n this.selectedIndex++\n }\n } else if (keyCode === keyCodes.backspace || keyCode === keyCodes.delete) {\n this.deleteCurrentItem()\n }\n },\n deleteCurrentItem () {\n const curIndex = this.selectedIndex\n const curItem = this.selectedItems[curIndex]\n\n // Do nothing if input or item is disabled\n if (\n !this.isInteractive ||\n this.getDisabled(curItem)\n ) return\n\n const lastIndex = this.selectedItems.length - 1\n\n // Select the last item if\n // there is no selection\n if (\n this.selectedIndex === -1 &&\n lastIndex !== 0\n ) {\n this.selectedIndex = lastIndex\n\n return\n }\n\n const length = this.selectedItems.length\n const nextIndex = curIndex !== length - 1\n ? curIndex\n : curIndex - 1\n const nextItem = this.selectedItems[nextIndex]\n\n if (!nextItem) {\n this.setValue(this.multiple ? [] : null)\n } else {\n this.selectItem(curItem)\n }\n\n this.selectedIndex = nextIndex\n },\n clearableCallback () {\n this.internalSearch = null\n\n VSelect.methods.clearableCallback.call(this)\n },\n genInput () {\n const input = VTextField.methods.genInput.call(this)\n\n const ariaActiveDescendant = getObjectValueByPath(this.$refs.menu, 'activeTile.id')\n const autocomplete = getObjectValueByPath(input.props, 'autocomplete', 'off')\n\n // в оригинале class не пробрасывался в инпут\n input.props = mergeProps({\n ...input.props,\n class: undefined\n }, {\n 'aria-activedescendant': ariaActiveDescendant,\n autocomplete,\n value: this.internalSearch,\n })\n\n return input\n },\n genInputSlot () {\n const slot = VSelect.methods.genInputSlot.call(this)\n\n slot.props.role = 'combobox'\n\n return slot\n },\n genSelections (): VNode | never[] {\n return this.hasSlot || this.multiple\n ? VSelect.methods.genSelections.call(this)\n : []\n },\n onClick (e: MouseEvent) {\n if (!this.isInteractive) return\n\n this.selectedIndex > -1\n ? (this.selectedIndex = -1)\n : this.onFocus()\n\n if (!this.isAppendInner(e.target)) this.activateMenu()\n },\n onInput (e: Event) {\n if (\n this.selectedIndex > -1 ||\n !e.target\n ) return\n\n const target = e.target as HTMLInputElement\n const value = target.value\n\n // If typing and menu is not currently active\n if (target.value) this.activateMenu()\n\n if (!this.multiple && value === '') this.deleteCurrentItem()\n\n this.internalSearch = value\n this.badInput = target.validity && target.validity.badInput\n },\n onKeyDown (e: KeyboardEvent) {\n const keyCode = e.keyCode\n\n if (\n e.ctrlKey ||\n ![keyCodes.home, keyCodes.end].includes(keyCode)\n ) {\n VSelect.methods.onKeyDown.call(this, e)\n }\n\n // The ordering is important here\n // allows new value to be updated\n // and then moves the index to the\n // proper location\n this.changeSelectedIndex(keyCode)\n },\n onSpaceDown (e: KeyboardEvent) { /* noop */ },\n onTabDown (e: KeyboardEvent) {\n VSelect.methods.onTabDown.call(this, e)\n this.updateSelf()\n },\n onUpDown (e: Event) {\n // Prevent screen from scrolling\n e.preventDefault()\n\n // For autocomplete / combobox, cycling\n // interfers with native up/down behavior\n // instead activate the menu\n this.activateMenu()\n },\n selectItem (item: object) {\n VSelect.methods.selectItem.call(this, item)\n this.setSearch()\n },\n setSelectedItems () {\n VSelect.methods.setSelectedItems.call(this)\n\n // #4273 Don't replace if searching\n // #4403 Don't replace if focused\n if (!this.isFocused) this.setSearch()\n },\n setSearch () {\n // Wait for nextTick so selectedItem\n // has had time to update\n this.$nextTick(() => {\n if (\n !this.multiple ||\n !this.internalSearch ||\n !this.isMenuActive\n ) {\n this.internalSearch = (\n !this.selectedItems.length ||\n this.multiple ||\n this.hasSlot\n )\n ? null\n : this.getText(this.selectedItem)\n }\n })\n },\n updateSelf () {\n if (\n !this.searchIsDirty &&\n !this.internalValue\n ) return\n\n if (\n !this.multiple &&\n !this.valueComparator(\n this.internalSearch,\n this.getValue(this.internalValue)\n )\n ) {\n this.setSearch()\n }\n },\n hasItem (item: any): boolean {\n return this.selectedValues.indexOf(this.getValue(item)) > -1\n },\n onCopy (event: ClipboardEvent) {\n if (this.selectedIndex === -1) return\n\n const currentItem = this.selectedItems[this.selectedIndex]\n const currentItemText = this.getText(currentItem)\n event.clipboardData?.setData('text/plain', currentItemText)\n event.clipboardData?.setData('text/vnd.vuetify.autocomplete.item+plain', currentItemText)\n event.preventDefault()\n },\n },\n})\n"],"sourceRoot":"","file":"VAutocomplete.js"}
@@ -13,10 +13,10 @@ var _VInput = _interopRequireDefault(require("../VInput"));
13
13
 
14
14
  var _VItemGroup = require("../VItemGroup/VItemGroup");
15
15
 
16
- var _mixins = _interopRequireDefault(require("../../util/mixins"));
17
-
18
16
  var _vue = require("vue");
19
17
 
18
+ var _mixins = _interopRequireDefault(require("../../util/mixins"));
19
+
20
20
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
21
21
 
22
22
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
@@ -90,7 +90,7 @@ var _default = baseMixins.extend({
90
90
  render: function render() {
91
91
  var vnode = _VInput.default.render.call(this);
92
92
 
93
- vnode.props = _objectSpread(_objectSpread({}, vnode.props), this.attrs$);
93
+ vnode.props = (0, _vue.mergeProps)(vnode.props, this.attrs$);
94
94
  return vnode;
95
95
  }
96
96
  });
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/VRadioGroup/VRadioGroup.ts"],"names":[],"mappings":";;;;;;;AACA;;AACA;;AAGA;;AACA;;AAGA;;AAEA;;;;;;;;;;AAEA,IAAM,UAAU,GAAG,qBACjB,eADiB,EAEjB,yBAFiB,CAAnB;AAKA;;eACe,UAAU,CAAC,MAAX,CAAkB;AAC/B,EAAA,IAAI,EAAE,eADyB;AAG/B,EAAA,OAH+B,qBAGxB;AACL,WAAO;AACL,MAAA,UAAU,EAAE;AADP,KAAP;AAGD,GAP8B;AAS/B,EAAA,KAAK,EAAE;AACL,IAAA,MAAM,EAAE;AACN,MAAA,IAAI,EAAE,OADA;AAEN,MAAA,OAAO,EAAE;AAFH,KADH;AAKL,IAAA,MAAM,EAAE;AACN,MAAA,IAAI,EAAE,CAAC,MAAD,EAAS,MAAT,CADA;AAEN,MAAA,OAAO,EAAE;AAFH,KALH;AASL,IAAA,IAAI,EAAE,MATD;AAUL,IAAA,GAAG,EAAE,OAVA;AAWL;AACA;AACA;AACA,IAAA,UAAU,EAAE;AAdP,GATwB;AA0B/B,EAAA,QAAQ,EAAE;AACR,IAAA,OADQ,qBACD;AACL,6CACK,gBAAO,QAAP,CAAgB,OAAhB,CAAwB,IAAxB,CAA6B,IAA7B,CADL;AAEE,4DAAoD,IAFtD;AAGE,wCAAgC,KAAK,MAAL,IAAe,CAAC,KAAK,GAHvD;AAIE,qCAA6B,KAAK;AAJpC;AAMD;AARO,GA1BqB;AAqC/B,EAAA,OAAO,EAAE;AACP,IAAA,cADO,4BACO;AACZ,aAAO,YAAE,KAAF,EAAS;AACd,QAAA,KAAK,EAAE,6BADO;AAEd,QAAA,EAAE,EAAE,KAAK,EAFK;AAGd,QAAA,IAAI,EAAE,YAHQ;AAId,2BAAmB,KAAK;AAJV,OAAT,EAKJ,gBAAO,OAAP,CAAe,cAAf,CAA8B,IAA9B,CAAmC,IAAnC,CALI,CAAP;AAMD,KARM;AASP,IAAA,YATO,0BASK;AACV,UAAM,MAAM,GAAG,gBAAO,OAAP,CAAe,YAAf,CAA4B,IAA5B,CAAiC,IAAjC,CAAf;;AAEA,aAAO,MAAM,CAAC,KAAP,CAAc,OAArB;AAEA,aAAO,MAAP;AACD,KAfM;AAgBP,IAAA,QAhBO,sBAgBC;AACN,UAAM,KAAK,GAAG,gBAAO,OAAP,CAAe,QAAf,CAAwB,IAAxB,CAA6B,IAA7B,CAAd;;AAEA,UAAI,CAAC,KAAL,EAAY,OAAO,IAAP;AAEZ,MAAA,KAAK,CAAC,IAAN,CAAY,KAAZ,CAAmB,EAAnB,GAAwB,KAAK,UAA7B,CALM,CAMN;;AACA,aAAO,KAAK,CAAC,IAAN,CAAY,KAAZ,CAAmB,GAA1B;AACA,MAAA,KAAK,CAAC,GAAN,GAAY,QAAZ;AAEA,aAAO,KAAP;AACD,KA3BM;AA4BP,IAAA,OAAO,EAAE,0BAAc,OAAd,CAAsB;AA5BxB,GArCsB;AAoE/B,EAAA,MApE+B,oBAoEzB;AACJ,QAAM,KAAK,GAAG,gBAAO,MAAP,CAAc,IAAd,CAAmB,IAAnB,CAAd;;AAEA,IAAA,KAAK,CAAC,KAAN,mCACK,KAAK,CAAC,KADX,GAEK,KAAK,MAFV;AAKA,WAAO,KAAP;AACD;AA7E8B,CAAlB,C","sourcesContent":["// Styles\nimport '../../styles/components/_selection-controls.sass'\nimport './VRadioGroup.sass'\n\n// Extensions\nimport VInput from '../VInput'\nimport { BaseItemGroup } from '../VItemGroup/VItemGroup'\n\n// Types\nimport mixins from '../../util/mixins'\nimport { PropType } from 'vue'\nimport {h} from 'vue'\n\nconst baseMixins = mixins(\n VInput,\n BaseItemGroup,\n)\n\n/* @vue/component */\nexport default baseMixins.extend({\n name: 'v-radio-group',\n\n provide () {\n return {\n radioGroup: this,\n }\n },\n\n props: {\n column: {\n type: Boolean,\n default: true,\n },\n height: {\n type: [Number, String],\n default: 'auto',\n },\n name: String,\n row: Boolean,\n // If no value set on VRadio\n // will match valueComparator\n // force default to null\n modelValue: null as unknown as PropType<any>,\n },\n\n computed: {\n classes (): object {\n return {\n ...VInput.computed.classes.call(this),\n 'v-input--selection-controls v-input--radio-group': true,\n 'v-input--radio-group--column': this.column && !this.row,\n 'v-input--radio-group--row': this.row,\n }\n },\n },\n\n methods: {\n genDefaultSlot () {\n return h('div', {\n class: 'v-input--radio-group__input',\n id: this.id,\n role: 'radiogroup',\n 'aria-labelledby': this.computedId,\n }, VInput.methods.genDefaultSlot.call(this))\n },\n genInputSlot () {\n const render = VInput.methods.genInputSlot.call(this)\n\n delete render.props!.onClick\n\n return render\n },\n genLabel () {\n const label = VInput.methods.genLabel.call(this)\n\n if (!label) return null\n\n label.data!.attrs!.id = this.computedId\n // WAI considers this an orphaned label\n delete label.data!.attrs!.for\n label.tag = 'legend'\n\n return label\n },\n onClick: BaseItemGroup.methods.onClick,\n },\n\n render () {\n const vnode = VInput.render.call(this)\n\n vnode.props = {\n ...vnode.props,\n ...this.attrs$\n }\n\n return vnode\n },\n})\n"],"sourceRoot":"","file":"VRadioGroup.js"}
1
+ {"version":3,"sources":["../../../src/components/VRadioGroup/VRadioGroup.ts"],"names":[],"mappings":";;;;;;;AACA;;AACA;;AAGA;;AACA;;AAGA;;AACA;;;;;;;;;;AAKA,IAAM,UAAU,GAAG,qBACjB,eADiB,EAEjB,yBAFiB,CAAnB;AAKA;;eACe,UAAU,CAAC,MAAX,CAAkB;AAC/B,EAAA,IAAI,EAAE,eADyB;AAG/B,EAAA,OAH+B,qBAGxB;AACL,WAAO;AACL,MAAA,UAAU,EAAE;AADP,KAAP;AAGD,GAP8B;AAS/B,EAAA,KAAK,EAAE;AACL,IAAA,MAAM,EAAE;AACN,MAAA,IAAI,EAAE,OADA;AAEN,MAAA,OAAO,EAAE;AAFH,KADH;AAKL,IAAA,MAAM,EAAE;AACN,MAAA,IAAI,EAAE,CAAC,MAAD,EAAS,MAAT,CADA;AAEN,MAAA,OAAO,EAAE;AAFH,KALH;AASL,IAAA,IAAI,EAAE,MATD;AAUL,IAAA,GAAG,EAAE,OAVA;AAWL;AACA;AACA;AACA,IAAA,UAAU,EAAE;AAdP,GATwB;AA0B/B,EAAA,QAAQ,EAAE;AACR,IAAA,OADQ,qBACD;AACL,6CACK,gBAAO,QAAP,CAAgB,OAAhB,CAAwB,IAAxB,CAA6B,IAA7B,CADL;AAEE,4DAAoD,IAFtD;AAGE,wCAAgC,KAAK,MAAL,IAAe,CAAC,KAAK,GAHvD;AAIE,qCAA6B,KAAK;AAJpC;AAMD;AARO,GA1BqB;AAqC/B,EAAA,OAAO,EAAE;AACP,IAAA,cADO,4BACO;AACZ,aAAO,YAAE,KAAF,EAAS;AACd,QAAA,KAAK,EAAE,6BADO;AAEd,QAAA,EAAE,EAAE,KAAK,EAFK;AAGd,QAAA,IAAI,EAAE,YAHQ;AAId,2BAAmB,KAAK;AAJV,OAAT,EAKJ,gBAAO,OAAP,CAAe,cAAf,CAA8B,IAA9B,CAAmC,IAAnC,CALI,CAAP;AAMD,KARM;AASP,IAAA,YATO,0BASK;AACV,UAAM,MAAM,GAAG,gBAAO,OAAP,CAAe,YAAf,CAA4B,IAA5B,CAAiC,IAAjC,CAAf;;AAEA,aAAO,MAAM,CAAC,KAAP,CAAc,OAArB;AAEA,aAAO,MAAP;AACD,KAfM;AAgBP,IAAA,QAhBO,sBAgBC;AACN,UAAM,KAAK,GAAG,gBAAO,OAAP,CAAe,QAAf,CAAwB,IAAxB,CAA6B,IAA7B,CAAd;;AAEA,UAAI,CAAC,KAAL,EAAY,OAAO,IAAP;AAEZ,MAAA,KAAK,CAAC,IAAN,CAAY,KAAZ,CAAmB,EAAnB,GAAwB,KAAK,UAA7B,CALM,CAMN;;AACA,aAAO,KAAK,CAAC,IAAN,CAAY,KAAZ,CAAmB,GAA1B;AACA,MAAA,KAAK,CAAC,GAAN,GAAY,QAAZ;AAEA,aAAO,KAAP;AACD,KA3BM;AA4BP,IAAA,OAAO,EAAE,0BAAc,OAAd,CAAsB;AA5BxB,GArCsB;AAoE/B,EAAA,MApE+B,oBAoEzB;AACJ,QAAM,KAAK,GAAG,gBAAO,MAAP,CAAc,IAAd,CAAmB,IAAnB,CAAd;;AAEA,IAAA,KAAK,CAAC,KAAN,GAAc,qBAAW,KAAK,CAAC,KAAjB,EAAwB,KAAK,MAA7B,CAAd;AAEA,WAAO,KAAP;AACD;AA1E8B,CAAlB,C","sourcesContent":["// Styles\nimport '../../styles/components/_selection-controls.sass'\nimport './VRadioGroup.sass'\n\n// Extensions\nimport VInput from '../VInput'\nimport { BaseItemGroup } from '../VItemGroup/VItemGroup'\n\n// Utilities\nimport { mergeProps, h } from 'vue'\nimport mixins from '../../util/mixins'\n\n// Types\nimport type { PropType } from 'vue'\n\nconst baseMixins = mixins(\n VInput,\n BaseItemGroup,\n)\n\n/* @vue/component */\nexport default baseMixins.extend({\n name: 'v-radio-group',\n\n provide () {\n return {\n radioGroup: this,\n }\n },\n\n props: {\n column: {\n type: Boolean,\n default: true,\n },\n height: {\n type: [Number, String],\n default: 'auto',\n },\n name: String,\n row: Boolean,\n // If no value set on VRadio\n // will match valueComparator\n // force default to null\n modelValue: null as unknown as PropType<any>,\n },\n\n computed: {\n classes (): object {\n return {\n ...VInput.computed.classes.call(this),\n 'v-input--selection-controls v-input--radio-group': true,\n 'v-input--radio-group--column': this.column && !this.row,\n 'v-input--radio-group--row': this.row,\n }\n },\n },\n\n methods: {\n genDefaultSlot () {\n return h('div', {\n class: 'v-input--radio-group__input',\n id: this.id,\n role: 'radiogroup',\n 'aria-labelledby': this.computedId,\n }, VInput.methods.genDefaultSlot.call(this))\n },\n genInputSlot () {\n const render = VInput.methods.genInputSlot.call(this)\n\n delete render.props!.onClick\n\n return render\n },\n genLabel () {\n const label = VInput.methods.genLabel.call(this)\n\n if (!label) return null\n\n label.data!.attrs!.id = this.computedId\n // WAI considers this an orphaned label\n delete label.data!.attrs!.for\n label.tag = 'legend'\n\n return label\n },\n onClick: BaseItemGroup.methods.onClick,\n },\n\n render () {\n const vnode = VInput.render.call(this)\n\n vnode.props = mergeProps(vnode.props, this.attrs$);\n\n return vnode\n },\n})\n"],"sourceRoot":"","file":"VRadioGroup.js"}
@@ -468,13 +468,11 @@ var _default2 = baseMixins.extend({
468
468
  genListWithSlot: function genListWithSlot() {
469
469
  var _this8 = this;
470
470
 
471
- var slots = ['prepend-item', 'no-data', 'append-item'].filter(function (slotName) {
471
+ var slots = Object.fromEntries(['prepend-item', 'no-data', 'append-item'].filter(function (slotName) {
472
472
  return _this8.$slots[slotName];
473
473
  }).map(function (slotName) {
474
- return (0, _vue.h)('template', {
475
- slot: slotName
476
- }, _this8.$slots[slotName]);
477
- }); // Requires destructuring due to Vue
474
+ return [slotName, _this8.$slots[slotName]];
475
+ })); // Requires destructuring due to Vue
478
476
  // modifying the `on` property when passed
479
477
  // as a referenced object
480
478
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/VSelect/VSelect.ts"],"names":[],"mappings":"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","sourcesContent":["// Styles\nimport '../VTextField/VTextField.sass'\nimport './VSelect.sass'\n\n// Components\nimport VChip from '../VChip'\nimport VMenu from '../VMenu'\nimport VSelectList from './VSelectList'\n\n// Extensions\nimport VInput from '../VInput'\nimport VTextField from '../VTextField/VTextField'\n\n// Mixins\nimport Comparable from '../../mixins/comparable'\nimport Dependent from '../../mixins/dependent'\nimport Filterable from '../../mixins/filterable'\n\n// Directives\nimport ClickOutside from '../../directives/click-outside'\n\n// Utilities\nimport mergeData from '../../util/mergeData'\nimport { getPropertyFromItem, getObjectValueByPath, keyCodes, normalizeAttrs } from '../../util/helpers'\nimport { consoleError } from '../../util/console'\n\n// Types\nimport mixins from '../../util/mixins'\nimport { VNode, VNodeDirective, PropType, VNodeData, withDirectives, h } from 'vue'\nimport { PropValidator } from 'vue/types/options'\nimport { SelectItemKey } from 'vuetify/types'\n\nexport const defaultMenuProps = {\n closeOnClick: false,\n closeOnContentClick: false,\n disableKeys: true,\n openOnClick: false,\n maxHeight: 304,\n}\n\n// Types\nconst baseMixins = mixins(\n VTextField,\n Comparable,\n Dependent,\n Filterable\n)\n\ninterface options extends InstanceType<typeof baseMixins> {\n $refs: {\n menu: InstanceType<typeof VMenu>\n content: HTMLElement\n label: HTMLElement\n input: HTMLInputElement\n 'prepend-inner': HTMLElement\n 'append-inner': HTMLElement\n prefix: HTMLElement\n suffix: HTMLElement\n }\n}\n\n/* @vue/component */\nexport default baseMixins.extend({\n name: 'v-select',\n\n directives: {\n ClickOutside,\n },\n\n props: {\n appendIcon: {\n type: String,\n default: '$dropdown',\n },\n attach: {\n type: null as unknown as PropType<string | boolean | Element | VNode>,\n default: false,\n },\n cacheItems: Boolean,\n chips: Boolean,\n clearable: Boolean,\n deletableChips: Boolean,\n disableLookup: Boolean,\n eager: Boolean,\n hideSelected: Boolean,\n items: {\n type: Array,\n default: () => [],\n } as PropValidator<any[]>,\n itemColor: {\n type: String,\n default: 'primary',\n },\n itemDisabled: {\n type: [String, Array, Function] as PropType<SelectItemKey>,\n default: 'disabled',\n },\n itemText: {\n type: [String, Array, Function] as PropType<SelectItemKey>,\n default: 'text',\n },\n itemValue: {\n type: [String, Array, Function] as PropType<SelectItemKey>,\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 smallChips: Boolean,\n },\n\n data () {\n return {\n cachedItems: this.cacheItems ? this.items : [],\n menuIsBooted: 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: this.modelValue !== undefined\n ? this.modelValue\n : this.multiple ? [] : undefined,\n selectedIndex: -1,\n selectedItems: [] as any[],\n keyboardLookupPrefix: '',\n keyboardLookupLastTime: 0,\n }\n },\n\n computed: {\n /* All items that the select has */\n allItems (): object[] {\n return this.filterDuplicates(this.cachedItems.concat(this.items))\n },\n classes (): object {\n return {\n ...VTextField.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 'v-select--is-multi': this.multiple,\n }\n },\n /* Used by other components to overwrite */\n computedItems (): object[] {\n return this.allItems\n },\n computedOwns (): string {\n return `list-${this.$.uid}`\n },\n computedCounterValue (): number {\n const value = this.multiple\n ? this.selectedItems\n : (this.getText(this.selectedItems[0]) ?? '').toString()\n\n if (typeof this.counterValue === 'function') {\n return this.counterValue(value)\n }\n\n return value.length\n },\n directives (): VNodeDirective[] | undefined {\n return [\n [\n ClickOutside,\n {\n handler: () => this.isFocused && this.blur(),\n closeConditional: this.closeConditional,\n include: () => this.getOpenDependentElements(),\n }\n ]\n ]\n },\n dynamicHeight () {\n return 'auto'\n },\n hasChips (): boolean {\n return this.chips || this.smallChips\n },\n hasSlot (): boolean {\n return Boolean(this.hasChips || this.$slots.selection)\n },\n isDirty (): boolean {\n return this.selectedItems.length > 0\n },\n listData (): object {\n const scopeId = this.$vnode && (this.$vnode.context!.$options as { [key: string]: any })._scopeId\n const attrs = scopeId ? {\n [scopeId]: true,\n } : {}\n\n return {\n ...attrs,\n id: this.computedOwns,\n action: this.multiple,\n color: this.itemColor,\n dense: this.dense,\n hideSelected: this.hideSelected,\n items: this.virtualizedItems,\n itemDisabled: this.itemDisabled,\n itemText: this.itemText,\n itemValue: this.itemValue,\n noDataText: this.$vuetify.lang.t(this.noDataText),\n selectedItems: this.selectedItems,\n onSelect: this.selectItem,\n }\n },\n staticList (): VNode {\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 h(VSelectList, this.listData, {\n item: this.$slots.item,\n })\n },\n virtualizedItems (): object[] {\n return (this.$_menuProps as any).auto\n ? this.computedItems\n : this.computedItems.slice(0, this.lastItem)\n },\n menuCanShow: () => true,\n $_menuProps (): object {\n let 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 eager: this.eager,\n modelValue: this.menuCanShow && this.isMenuActive,\n nudgeBottom: 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 if (this.multiple) {\n this.$nextTick(() => {\n this.$refs.menu?.updateDimensions()\n })\n }\n if (this.hideSelected) {\n this.$nextTick(() => {\n this.onScroll()\n })\n }\n },\n isMenuActive (val) {\n window.setTimeout(() => this.onMenuActiveChange(val))\n },\n items: {\n immediate: true,\n handler (val) {\n if (this.cacheItems) {\n // Breaks vue-test-utils if\n // this isn't calculated\n // on the next tick\n this.$nextTick(() => {\n this.cachedItems = this.filterDuplicates(this.cachedItems.concat(val))\n })\n }\n\n this.setSelectedItems()\n },\n },\n },\n\n methods: {\n /** @public */\n blur (e?: Event) {\n VTextField.methods.blur.call(this, e)\n this.isMenuActive = false\n this.isFocused = false\n this.selectedIndex = -1\n this.setMenuIndex(-1)\n },\n /** @public */\n activateMenu () {\n if (\n !this.isInteractive ||\n this.isMenuActive\n ) return\n\n this.isMenuActive = true\n },\n clearableCallback () {\n this.setValue(this.multiple ? [] : null)\n this.setMenuIndex(-1)\n this.$nextTick(() => this.$refs.input && this.$refs.input.focus())\n\n if (this.openOnClear) this.isMenuActive = true\n },\n closeConditional (e: Event) {\n if (!this.isMenuActive) return true\n\n return (\n !this._isDestroyed &&\n\n // Click originates from outside the menu content\n // Multiple selects don't close when an item is clicked\n (!this.getContent() ||\n !this.getContent().contains(e.target as Node)) &&\n\n // Click originates from outside the element\n this.$el &&\n !this.$el.contains(e.target as Node) &&\n e.target !== this.$el\n )\n },\n filterDuplicates (arr: any[]) {\n const uniqueValues = new Map()\n for (let index = 0; index < arr.length; ++index) {\n const item = arr[index]\n\n // Do not return null values if existant (#14421)\n if (item == null) {\n continue\n }\n // Do not deduplicate headers or dividers (#12517)\n if (item.header || item.divider) {\n uniqueValues.set(item, item)\n continue\n }\n\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: object) {\n const itemValue = this.getValue(item)\n\n return (this.internalValue || []).findIndex((i: object) => this.valueComparator(this.getValue(i), itemValue))\n },\n getContent () {\n return this.$refs.menu && this.$refs.menu.$refs.content\n },\n genChipSelection (item: object, index: number) {\n const isDisabled = (\n this.isDisabled ||\n this.getDisabled(item)\n )\n const isInteractive = !isDisabled && this.isInteractive\n\n return h(VChip, {\n class: 'v-chip--select',\n tabindex: -1,\n close: this.deletableChips && isInteractive,\n disabled: isDisabled,\n inputValue: index === this.selectedIndex,\n small: this.smallChips,\n onClick: (e: MouseEvent) => {\n if (!isInteractive) return\n\n e.stopPropagation()\n\n this.selectedIndex = index\n },\n 'onClick:close': () => this.onChipInput(item),\n key: JSON.stringify(this.getValue(item)),\n }, this.getText(item))\n },\n genCommaSelection (item: object, index: number, last: boolean) {\n const color = index === this.selectedIndex && this.computedColor\n const isDisabled = (\n this.isDisabled ||\n this.getDisabled(item)\n )\n\n return h('div', this.setTextColor(color, {\n class: ['v-select__selection v-select__selection--comma', {\n 'v-select__selection--disabled': isDisabled,\n }],\n key: JSON.stringify(this.getValue(item)),\n }), `${this.getText(item)}${last ? '' : ', '}`)\n },\n genDefaultSlot (): (VNode | VNode[] | null)[] {\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.genFieldset(),\n withDirectives(h('div', {\n class: 'v-select__slot'\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 this.genHiddenInput(),\n ]), this.directives),\n this.genMenu(),\n this.genProgress(),\n ]\n },\n genIcon (\n type: string,\n cb?: (e: Event) => void,\n extraData?: VNodeData\n ) {\n const icon = VInput.methods.genIcon.call(this, type, cb, extraData)\n\n if (type === 'append') {\n // Don't allow the dropdown icon to be focused\n const hasListeners = Object.keys(icon.children![0].props).some(key => key.startsWith('on'))\n icon.children![0].data = mergeData(icon.children![0].props!, {\n tabindex: hasListeners && '-1',\n 'aria-hidden': 'true',\n 'aria-label': undefined\n })\n }\n\n return icon\n },\n genInput (): VNode {\n const input = VTextField.methods.genInput.call(this)\n\n delete input.props.name\n\n input.props = mergeData(input.props, {\n readonly: true,\n type: 'text',\n 'aria-readonly': String(this.isReadonly),\n 'aria-activedescendant': getObjectValueByPath(this.$refs.menu, 'activeTile.id'),\n autocomplete: getObjectValueByPath(input.data!, 'attrs.autocomplete', 'off'),\n placeholder: (!this.isDirty && (this.persistentPlaceholder || this.isFocused || !this.hasLabel)) ? this.placeholder : undefined,\n onKeypress: this.onKeyPress,\n })\n\n input.props = { ...input.props, value: null }\n input.props = normalizeAttrs(input.props)\n\n return input\n },\n genHiddenInput (): VNode {\n return h('input', {\n value: this.lazyValue,\n type: 'hidden',\n name: this.attrs$.name\n })\n },\n genInputSlot (): VNode {\n const render = VTextField.methods.genInputSlot.call(this)\n\n render.props = {\n role: 'button',\n 'aria-haspopup': 'listbox',\n 'aria-expanded': String(this.isMenuActive),\n 'aria-owns': this.computedOwns,\n ...render.props\n }\n\n return render\n },\n genList (): VNode {\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 (): VNode {\n const slots = ['prepend-item', 'no-data', 'append-item']\n .filter(slotName => this.$slots[slotName])\n .map(slotName => h('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\n return h(VSelectList, {\n ...this.listData,\n }, {...slots,item: this.$slots.item})\n },\n genMenu (): VNode {\n const props = this.$_menuProps as any\n props.activator = this.$refs['input-slot']\n\n if ('attach' in props) void 0\n else 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 // Attach to root el so that\n // menu covers prepend/append icons\n props.attach = this.$el\n } else {\n props.attach = this.attach\n }\n\n return h(VMenu, {\n role: undefined,\n ...props,\n onInput: (val: boolean) => {\n this.isMenuActive = val\n this.isFocused = val\n },\n onScroll: this.onScroll,\n ref: 'menu',\n }, [this.genList()])\n },\n genSelections (): VNode {\n let length = this.selectedItems.length\n\n const children = new Array(length)\n\n let genSelection\n if (this.$slots.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 h('div', {\n class: 'v-select__selections',\n }, children)\n },\n genSlotSelection (item: object, index: number): VNode[] | undefined {\n return this.$slots.selection!({\n class: 'v-chip--select',\n parent: this,\n item,\n index,\n select: (e: Event) => {\n e.stopPropagation()\n this.selectedIndex = index\n },\n selected: index === this.selectedIndex,\n disabled: !this.isInteractive,\n })\n },\n getMenuIndex () {\n return this.$refs.menu ? (this.$refs.menu as { [key: string]: any }).listIndex : -1\n },\n getDisabled (item: object) {\n return getPropertyFromItem(item, this.itemDisabled, false)\n },\n getText (item: object) {\n return getPropertyFromItem(item, this.itemText, item)\n },\n getValue (item: object) {\n return getPropertyFromItem(item, this.itemValue, this.getText(item))\n },\n onBlur (e?: Event) {\n e && this.$emit('blur', e)\n },\n onChipInput (item: object) {\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 (e: MouseEvent) {\n if (!this.isInteractive) return\n\n if (!this.isAppendInner(e.target)) {\n this.isMenuActive = true\n }\n\n if (!this.isFocused) {\n this.isFocused = true\n this.$emit('focus')\n }\n\n this.$emit('click', e)\n },\n onEscDown (e: Event) {\n e.preventDefault()\n if (this.isMenuActive) {\n e.stopPropagation()\n this.isMenuActive = false\n }\n },\n onKeyPress (e: KeyboardEvent) {\n if (\n this.multiple ||\n !this.isInteractive ||\n this.disableLookup ||\n e.key.length > 1 ||\n e.ctrlKey || e.metaKey || e.altKey\n ) 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 => {\n const text = (this.getText(item) ?? '').toString()\n\n return text.toLowerCase().startsWith(this.keyboardLookupPrefix)\n })\n const item = this.allItems[index]\n if (index !== -1) {\n this.lastItem = Math.max(this.lastItem, index + 5)\n this.setValue(this.returnObject ? item : this.getValue(item))\n this.$nextTick(() => this.$refs.menu.getTiles())\n setTimeout(() => this.setMenuIndex(index))\n }\n },\n onKeyDown (e: KeyboardEvent) {\n if (this.isReadonly && e.keyCode !== keyCodes.tab) return\n\n const keyCode = e.keyCode\n const menu = this.$refs.menu\n\n this.$emit('keydown', e)\n\n if (!menu) return\n\n // If menu is active, allow default\n // listIndex change from menu\n if (this.isMenuActive && [keyCodes.up, keyCodes.down, keyCodes.home, keyCodes.end, keyCodes.enter].includes(keyCode)) {\n this.$nextTick(() => {\n menu.changeListIndex(e)\n this.$emit('update:list-index', menu.listIndex)\n })\n }\n\n // If enter, space, open menu\n if ([\n keyCodes.enter,\n keyCodes.space,\n ].includes(keyCode)) this.activateMenu()\n\n // If menu is not active, up/down/home/end can do\n // one of 2 things. If multiple, opens the\n // menu, if not, will cycle through all\n // available options\n if (\n !this.isMenuActive &&\n [keyCodes.up, keyCodes.down, keyCodes.home, keyCodes.end].includes(keyCode)\n ) return this.onUpDown(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 // If space preventDefault\n if (keyCode === keyCodes.space) return this.onSpaceDown(e)\n },\n onMenuActiveChange (val: boolean) {\n // If menu is closing and mulitple\n // or menuIndex is already set\n // skip menu index recalculation\n if (\n (this.multiple && !val) ||\n this.getMenuIndex() > -1\n ) return\n\n const menu = this.$refs.menu\n\n if (!menu || !this.isDirty) return\n\n // When menu opens, set index of first active item\n this.$refs.menu.getTiles()\n for (let i = 0; i < menu.tiles.length; i++) {\n if (menu.tiles[i].getAttribute('aria-selected') === 'true') {\n this.setMenuIndex(i)\n break\n }\n }\n },\n onMouseUp (e: MouseEvent) {\n // eslint-disable-next-line sonarjs/no-collapsible-if\n if (\n this.hasMouseDown &&\n e.which !== 3 &&\n this.isInteractive\n ) {\n // If append inner is present\n // and the target is itself\n // or inside, toggle menu\n if (this.isAppendInner(e.target)) {\n this.$nextTick(() => (this.isMenuActive = !this.isMenuActive))\n }\n }\n\n VTextField.methods.onMouseUp.call(this, e)\n },\n onScroll () {\n if (!this.isMenuActive) {\n requestAnimationFrame(() => {\n const content = this.getContent()\n if (content) content.scrollTop = 0\n })\n } else {\n if (this.lastItem > this.computedItems.length) return\n\n const showMoreItems = (\n this.getContent().scrollHeight -\n (this.getContent().scrollTop +\n this.getContent().clientHeight)\n ) < 200\n\n if (showMoreItems) {\n this.lastItem += 20\n }\n }\n },\n onSpaceDown (e: KeyboardEvent) {\n e.preventDefault()\n },\n onTabDown (e: KeyboardEvent) {\n const menu = this.$refs.menu\n\n if (!menu) return\n\n const activeTile = menu.activeTile\n\n // An item that is selected by\n // menu-index should toggled\n if (\n !this.multiple &&\n activeTile &&\n this.isMenuActive\n ) {\n e.preventDefault()\n e.stopPropagation()\n\n activeTile.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 onUpDown (e: KeyboardEvent) {\n const menu = this.$refs.menu\n\n if (!menu) return\n\n e.preventDefault()\n\n // Multiple selects do not cycle their value\n // when pressing up or down, instead activate\n // the menu\n if (this.multiple) return this.activateMenu()\n\n const keyCode = e.keyCode\n\n // Cycle through available values to achieve\n // select native behavior\n menu.isBooted = true\n\n window.requestAnimationFrame(() => {\n menu.getTiles()\n\n if (!menu.hasClickableTiles) return this.activateMenu()\n\n switch (keyCode) {\n case keyCodes.up:\n menu.prevTile()\n break\n case keyCodes.down:\n menu.nextTile()\n break\n case keyCodes.home:\n menu.firstTile()\n break\n case keyCodes.end:\n menu.lastTile()\n break\n }\n this.selectItem(this.allItems[this.getMenuIndex()])\n })\n },\n selectItem (item: object) {\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: object) => {\n return this.returnObject ? i : this.getValue(i)\n }))\n\n // There is no item to re-highlight\n // when selections are hidden\n if (this.hideSelected) {\n this.setMenuIndex(-1)\n } else {\n const index = this.computedItems.indexOf(item)\n if (~index) {\n this.$nextTick(() => this.$refs.menu.getTiles())\n setTimeout(() => this.setMenuIndex(index))\n }\n }\n }\n },\n setMenuIndex (index: number) {\n this.$refs.menu && ((this.$refs.menu as { [key: string]: any }).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: any) {\n if (!this.valueComparator(value, this.internalValue)) {\n this.internalValue = value\n this.$emit('update:modelValue', value)\n }\n },\n isAppendInner (target: any) {\n // return true if append inner is present\n // and the target is itself or inside\n const appendInner = this.$refs['append-inner']\n\n return appendInner && (appendInner === target || appendInner.contains(target))\n },\n },\n})\n"],"sourceRoot":"","file":"VSelect.js"}
1
+ {"version":3,"sources":["../../../src/components/VSelect/VSelect.ts"],"names":[],"mappings":"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","sourcesContent":["// Styles\nimport '../VTextField/VTextField.sass'\nimport './VSelect.sass'\n\n// Components\nimport VChip from '../VChip'\nimport VMenu from '../VMenu'\nimport VSelectList from './VSelectList'\n\n// Extensions\nimport VInput from '../VInput'\nimport VTextField from '../VTextField/VTextField'\n\n// Mixins\nimport Comparable from '../../mixins/comparable'\nimport Dependent from '../../mixins/dependent'\nimport Filterable from '../../mixins/filterable'\n\n// Directives\nimport ClickOutside from '../../directives/click-outside'\n\n// Utilities\nimport mergeData from '../../util/mergeData'\nimport { getPropertyFromItem, getObjectValueByPath, keyCodes, normalizeAttrs } from '../../util/helpers'\nimport { consoleError } from '../../util/console'\n\n// Types\nimport mixins from '../../util/mixins'\nimport { VNode, VNodeDirective, PropType, VNodeData, withDirectives, h } from 'vue'\nimport { PropValidator } from 'vue/types/options'\nimport { SelectItemKey } from 'vuetify/types'\n\nexport const defaultMenuProps = {\n closeOnClick: false,\n closeOnContentClick: false,\n disableKeys: true,\n openOnClick: false,\n maxHeight: 304,\n}\n\n// Types\nconst baseMixins = mixins(\n VTextField,\n Comparable,\n Dependent,\n Filterable\n)\n\ninterface options extends InstanceType<typeof baseMixins> {\n $refs: {\n menu: InstanceType<typeof VMenu>\n content: HTMLElement\n label: HTMLElement\n input: HTMLInputElement\n 'prepend-inner': HTMLElement\n 'append-inner': HTMLElement\n prefix: HTMLElement\n suffix: HTMLElement\n }\n}\n\n/* @vue/component */\nexport default baseMixins.extend({\n name: 'v-select',\n\n directives: {\n ClickOutside,\n },\n\n props: {\n appendIcon: {\n type: String,\n default: '$dropdown',\n },\n attach: {\n type: null as unknown as PropType<string | boolean | Element | VNode>,\n default: false,\n },\n cacheItems: Boolean,\n chips: Boolean,\n clearable: Boolean,\n deletableChips: Boolean,\n disableLookup: Boolean,\n eager: Boolean,\n hideSelected: Boolean,\n items: {\n type: Array,\n default: () => [],\n } as PropValidator<any[]>,\n itemColor: {\n type: String,\n default: 'primary',\n },\n itemDisabled: {\n type: [String, Array, Function] as PropType<SelectItemKey>,\n default: 'disabled',\n },\n itemText: {\n type: [String, Array, Function] as PropType<SelectItemKey>,\n default: 'text',\n },\n itemValue: {\n type: [String, Array, Function] as PropType<SelectItemKey>,\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 smallChips: Boolean,\n },\n\n data () {\n return {\n cachedItems: this.cacheItems ? this.items : [],\n menuIsBooted: 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: this.modelValue !== undefined\n ? this.modelValue\n : this.multiple ? [] : undefined,\n selectedIndex: -1,\n selectedItems: [] as any[],\n keyboardLookupPrefix: '',\n keyboardLookupLastTime: 0,\n }\n },\n\n computed: {\n /* All items that the select has */\n allItems (): object[] {\n return this.filterDuplicates(this.cachedItems.concat(this.items))\n },\n classes (): object {\n return {\n ...VTextField.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 'v-select--is-multi': this.multiple,\n }\n },\n /* Used by other components to overwrite */\n computedItems (): object[] {\n return this.allItems\n },\n computedOwns (): string {\n return `list-${this.$.uid}`\n },\n computedCounterValue (): number {\n const value = this.multiple\n ? this.selectedItems\n : (this.getText(this.selectedItems[0]) ?? '').toString()\n\n if (typeof this.counterValue === 'function') {\n return this.counterValue(value)\n }\n\n return value.length\n },\n directives (): VNodeDirective[] | undefined {\n return [\n [\n ClickOutside,\n {\n handler: () => this.isFocused && this.blur(),\n closeConditional: this.closeConditional,\n include: () => this.getOpenDependentElements(),\n }\n ]\n ]\n },\n dynamicHeight () {\n return 'auto'\n },\n hasChips (): boolean {\n return this.chips || this.smallChips\n },\n hasSlot (): boolean {\n return Boolean(this.hasChips || this.$slots.selection)\n },\n isDirty (): boolean {\n return this.selectedItems.length > 0\n },\n listData (): object {\n const scopeId = this.$vnode && (this.$vnode.context!.$options as { [key: string]: any })._scopeId\n const attrs = scopeId ? {\n [scopeId]: true,\n } : {}\n\n return {\n ...attrs,\n id: this.computedOwns,\n action: this.multiple,\n color: this.itemColor,\n dense: this.dense,\n hideSelected: this.hideSelected,\n items: this.virtualizedItems,\n itemDisabled: this.itemDisabled,\n itemText: this.itemText,\n itemValue: this.itemValue,\n noDataText: this.$vuetify.lang.t(this.noDataText),\n selectedItems: this.selectedItems,\n onSelect: this.selectItem,\n }\n },\n staticList (): VNode {\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 h(VSelectList, this.listData, {\n item: this.$slots.item,\n })\n },\n virtualizedItems (): object[] {\n return (this.$_menuProps as any).auto\n ? this.computedItems\n : this.computedItems.slice(0, this.lastItem)\n },\n menuCanShow: () => true,\n $_menuProps (): object {\n let 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 eager: this.eager,\n modelValue: this.menuCanShow && this.isMenuActive,\n nudgeBottom: 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 if (this.multiple) {\n this.$nextTick(() => {\n this.$refs.menu?.updateDimensions()\n })\n }\n if (this.hideSelected) {\n this.$nextTick(() => {\n this.onScroll()\n })\n }\n },\n isMenuActive (val) {\n window.setTimeout(() => this.onMenuActiveChange(val))\n },\n items: {\n immediate: true,\n handler (val) {\n if (this.cacheItems) {\n // Breaks vue-test-utils if\n // this isn't calculated\n // on the next tick\n this.$nextTick(() => {\n this.cachedItems = this.filterDuplicates(this.cachedItems.concat(val))\n })\n }\n\n this.setSelectedItems()\n },\n },\n },\n\n methods: {\n /** @public */\n blur (e?: Event) {\n VTextField.methods.blur.call(this, e)\n this.isMenuActive = false\n this.isFocused = false\n this.selectedIndex = -1\n this.setMenuIndex(-1)\n },\n /** @public */\n activateMenu () {\n if (\n !this.isInteractive ||\n this.isMenuActive\n ) return\n\n this.isMenuActive = true\n },\n clearableCallback () {\n this.setValue(this.multiple ? [] : null)\n this.setMenuIndex(-1)\n this.$nextTick(() => this.$refs.input && this.$refs.input.focus())\n\n if (this.openOnClear) this.isMenuActive = true\n },\n closeConditional (e: Event) {\n if (!this.isMenuActive) return true\n\n return (\n !this._isDestroyed &&\n\n // Click originates from outside the menu content\n // Multiple selects don't close when an item is clicked\n (!this.getContent() ||\n !this.getContent().contains(e.target as Node)) &&\n\n // Click originates from outside the element\n this.$el &&\n !this.$el.contains(e.target as Node) &&\n e.target !== this.$el\n )\n },\n filterDuplicates (arr: any[]) {\n const uniqueValues = new Map()\n for (let index = 0; index < arr.length; ++index) {\n const item = arr[index]\n\n // Do not return null values if existant (#14421)\n if (item == null) {\n continue\n }\n // Do not deduplicate headers or dividers (#12517)\n if (item.header || item.divider) {\n uniqueValues.set(item, item)\n continue\n }\n\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: object) {\n const itemValue = this.getValue(item)\n\n return (this.internalValue || []).findIndex((i: object) => this.valueComparator(this.getValue(i), itemValue))\n },\n getContent () {\n return this.$refs.menu && this.$refs.menu.$refs.content\n },\n genChipSelection (item: object, index: number) {\n const isDisabled = (\n this.isDisabled ||\n this.getDisabled(item)\n )\n const isInteractive = !isDisabled && this.isInteractive\n\n return h(VChip, {\n class: 'v-chip--select',\n tabindex: -1,\n close: this.deletableChips && isInteractive,\n disabled: isDisabled,\n inputValue: index === this.selectedIndex,\n small: this.smallChips,\n onClick: (e: MouseEvent) => {\n if (!isInteractive) return\n\n e.stopPropagation()\n\n this.selectedIndex = index\n },\n 'onClick:close': () => this.onChipInput(item),\n key: JSON.stringify(this.getValue(item)),\n }, this.getText(item))\n },\n genCommaSelection (item: object, index: number, last: boolean) {\n const color = index === this.selectedIndex && this.computedColor\n const isDisabled = (\n this.isDisabled ||\n this.getDisabled(item)\n )\n\n return h('div', this.setTextColor(color, {\n class: ['v-select__selection v-select__selection--comma', {\n 'v-select__selection--disabled': isDisabled,\n }],\n key: JSON.stringify(this.getValue(item)),\n }), `${this.getText(item)}${last ? '' : ', '}`)\n },\n genDefaultSlot (): (VNode | VNode[] | null)[] {\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.genFieldset(),\n withDirectives(h('div', {\n class: 'v-select__slot'\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 this.genHiddenInput(),\n ]), this.directives),\n this.genMenu(),\n this.genProgress(),\n ]\n },\n genIcon (\n type: string,\n cb?: (e: Event) => void,\n extraData?: VNodeData\n ) {\n const icon = VInput.methods.genIcon.call(this, type, cb, extraData)\n\n if (type === 'append') {\n // Don't allow the dropdown icon to be focused\n const hasListeners = Object.keys(icon.children![0].props).some(key => key.startsWith('on'))\n icon.children![0].data = mergeData(icon.children![0].props!, {\n tabindex: hasListeners && '-1',\n 'aria-hidden': 'true',\n 'aria-label': undefined\n })\n }\n\n return icon\n },\n genInput (): VNode {\n const input = VTextField.methods.genInput.call(this)\n\n delete input.props.name\n\n input.props = mergeData(input.props, {\n readonly: true,\n type: 'text',\n 'aria-readonly': String(this.isReadonly),\n 'aria-activedescendant': getObjectValueByPath(this.$refs.menu, 'activeTile.id'),\n autocomplete: getObjectValueByPath(input.data!, 'attrs.autocomplete', 'off'),\n placeholder: (!this.isDirty && (this.persistentPlaceholder || this.isFocused || !this.hasLabel)) ? this.placeholder : undefined,\n onKeypress: this.onKeyPress,\n })\n\n input.props = { ...input.props, value: null }\n input.props = normalizeAttrs(input.props)\n\n return input\n },\n genHiddenInput (): VNode {\n return h('input', {\n value: this.lazyValue,\n type: 'hidden',\n name: this.attrs$.name\n })\n },\n genInputSlot (): VNode {\n const render = VTextField.methods.genInputSlot.call(this)\n\n render.props = {\n role: 'button',\n 'aria-haspopup': 'listbox',\n 'aria-expanded': String(this.isMenuActive),\n 'aria-owns': this.computedOwns,\n ...render.props\n }\n\n return render\n },\n genList (): VNode {\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 (): VNode {\n const slots = Object.fromEntries(['prepend-item', 'no-data', 'append-item']\n .filter(slotName => this.$slots[slotName])\n .map(slotName => [\n slotName,\n this.$slots[slotName]\n ]\n ))\n // Requires destructuring due to Vue\n // modifying the `on` property when passed\n // as a referenced object\n return h(VSelectList, {\n ...this.listData,\n }, {...slots,item: this.$slots.item})\n },\n genMenu (): VNode {\n const props = this.$_menuProps as any\n props.activator = this.$refs['input-slot']\n\n if ('attach' in props) void 0\n else 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 // Attach to root el so that\n // menu covers prepend/append icons\n props.attach = this.$el\n } else {\n props.attach = this.attach\n }\n\n return h(VMenu, {\n role: undefined,\n ...props,\n onInput: (val: boolean) => {\n this.isMenuActive = val\n this.isFocused = val\n },\n onScroll: this.onScroll,\n ref: 'menu',\n }, [this.genList()])\n },\n genSelections (): VNode {\n let length = this.selectedItems.length\n\n const children = new Array(length)\n\n let genSelection\n if (this.$slots.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 h('div', {\n class: 'v-select__selections',\n }, children)\n },\n genSlotSelection (item: object, index: number): VNode[] | undefined {\n return this.$slots.selection!({\n class: 'v-chip--select',\n parent: this,\n item,\n index,\n select: (e: Event) => {\n e.stopPropagation()\n this.selectedIndex = index\n },\n selected: index === this.selectedIndex,\n disabled: !this.isInteractive,\n })\n },\n getMenuIndex () {\n return this.$refs.menu ? (this.$refs.menu as { [key: string]: any }).listIndex : -1\n },\n getDisabled (item: object) {\n return getPropertyFromItem(item, this.itemDisabled, false)\n },\n getText (item: object) {\n return getPropertyFromItem(item, this.itemText, item)\n },\n getValue (item: object) {\n return getPropertyFromItem(item, this.itemValue, this.getText(item))\n },\n onBlur (e?: Event) {\n e && this.$emit('blur', e)\n },\n onChipInput (item: object) {\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 (e: MouseEvent) {\n if (!this.isInteractive) return\n\n if (!this.isAppendInner(e.target)) {\n this.isMenuActive = true\n }\n\n if (!this.isFocused) {\n this.isFocused = true\n this.$emit('focus')\n }\n\n this.$emit('click', e)\n },\n onEscDown (e: Event) {\n e.preventDefault()\n if (this.isMenuActive) {\n e.stopPropagation()\n this.isMenuActive = false\n }\n },\n onKeyPress (e: KeyboardEvent) {\n if (\n this.multiple ||\n !this.isInteractive ||\n this.disableLookup ||\n e.key.length > 1 ||\n e.ctrlKey || e.metaKey || e.altKey\n ) 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 => {\n const text = (this.getText(item) ?? '').toString()\n\n return text.toLowerCase().startsWith(this.keyboardLookupPrefix)\n })\n const item = this.allItems[index]\n if (index !== -1) {\n this.lastItem = Math.max(this.lastItem, index + 5)\n this.setValue(this.returnObject ? item : this.getValue(item))\n this.$nextTick(() => this.$refs.menu.getTiles())\n setTimeout(() => this.setMenuIndex(index))\n }\n },\n onKeyDown (e: KeyboardEvent) {\n if (this.isReadonly && e.keyCode !== keyCodes.tab) return\n\n const keyCode = e.keyCode\n const menu = this.$refs.menu\n\n this.$emit('keydown', e)\n\n if (!menu) return\n\n // If menu is active, allow default\n // listIndex change from menu\n if (this.isMenuActive && [keyCodes.up, keyCodes.down, keyCodes.home, keyCodes.end, keyCodes.enter].includes(keyCode)) {\n this.$nextTick(() => {\n menu.changeListIndex(e)\n this.$emit('update:list-index', menu.listIndex)\n })\n }\n\n // If enter, space, open menu\n if ([\n keyCodes.enter,\n keyCodes.space,\n ].includes(keyCode)) this.activateMenu()\n\n // If menu is not active, up/down/home/end can do\n // one of 2 things. If multiple, opens the\n // menu, if not, will cycle through all\n // available options\n if (\n !this.isMenuActive &&\n [keyCodes.up, keyCodes.down, keyCodes.home, keyCodes.end].includes(keyCode)\n ) return this.onUpDown(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 // If space preventDefault\n if (keyCode === keyCodes.space) return this.onSpaceDown(e)\n },\n onMenuActiveChange (val: boolean) {\n // If menu is closing and mulitple\n // or menuIndex is already set\n // skip menu index recalculation\n if (\n (this.multiple && !val) ||\n this.getMenuIndex() > -1\n ) return\n\n const menu = this.$refs.menu\n\n if (!menu || !this.isDirty) return\n\n // When menu opens, set index of first active item\n this.$refs.menu.getTiles()\n for (let i = 0; i < menu.tiles.length; i++) {\n if (menu.tiles[i].getAttribute('aria-selected') === 'true') {\n this.setMenuIndex(i)\n break\n }\n }\n },\n onMouseUp (e: MouseEvent) {\n // eslint-disable-next-line sonarjs/no-collapsible-if\n if (\n this.hasMouseDown &&\n e.which !== 3 &&\n this.isInteractive\n ) {\n // If append inner is present\n // and the target is itself\n // or inside, toggle menu\n if (this.isAppendInner(e.target)) {\n this.$nextTick(() => (this.isMenuActive = !this.isMenuActive))\n }\n }\n\n VTextField.methods.onMouseUp.call(this, e)\n },\n onScroll () {\n if (!this.isMenuActive) {\n requestAnimationFrame(() => {\n const content = this.getContent()\n if (content) content.scrollTop = 0\n })\n } else {\n if (this.lastItem > this.computedItems.length) return\n\n const showMoreItems = (\n this.getContent().scrollHeight -\n (this.getContent().scrollTop +\n this.getContent().clientHeight)\n ) < 200\n\n if (showMoreItems) {\n this.lastItem += 20\n }\n }\n },\n onSpaceDown (e: KeyboardEvent) {\n e.preventDefault()\n },\n onTabDown (e: KeyboardEvent) {\n const menu = this.$refs.menu\n\n if (!menu) return\n\n const activeTile = menu.activeTile\n\n // An item that is selected by\n // menu-index should toggled\n if (\n !this.multiple &&\n activeTile &&\n this.isMenuActive\n ) {\n e.preventDefault()\n e.stopPropagation()\n\n activeTile.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 onUpDown (e: KeyboardEvent) {\n const menu = this.$refs.menu\n\n if (!menu) return\n\n e.preventDefault()\n\n // Multiple selects do not cycle their value\n // when pressing up or down, instead activate\n // the menu\n if (this.multiple) return this.activateMenu()\n\n const keyCode = e.keyCode\n\n // Cycle through available values to achieve\n // select native behavior\n menu.isBooted = true\n\n window.requestAnimationFrame(() => {\n menu.getTiles()\n\n if (!menu.hasClickableTiles) return this.activateMenu()\n\n switch (keyCode) {\n case keyCodes.up:\n menu.prevTile()\n break\n case keyCodes.down:\n menu.nextTile()\n break\n case keyCodes.home:\n menu.firstTile()\n break\n case keyCodes.end:\n menu.lastTile()\n break\n }\n this.selectItem(this.allItems[this.getMenuIndex()])\n })\n },\n selectItem (item: object) {\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: object) => {\n return this.returnObject ? i : this.getValue(i)\n }))\n\n // There is no item to re-highlight\n // when selections are hidden\n if (this.hideSelected) {\n this.setMenuIndex(-1)\n } else {\n const index = this.computedItems.indexOf(item)\n if (~index) {\n this.$nextTick(() => this.$refs.menu.getTiles())\n setTimeout(() => this.setMenuIndex(index))\n }\n }\n }\n },\n setMenuIndex (index: number) {\n this.$refs.menu && ((this.$refs.menu as { [key: string]: any }).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: any) {\n if (!this.valueComparator(value, this.internalValue)) {\n this.internalValue = value\n this.$emit('update:modelValue', value)\n }\n },\n isAppendInner (target: any) {\n // return true if append inner is present\n // and the target is itself or inside\n const appendInner = this.$refs['append-inner']\n\n return appendInner && (appendInner === target || appendInner.contains(target))\n },\n },\n})\n"],"sourceRoot":"","file":"VSelect.js"}
@@ -218,6 +218,8 @@ var _default2 = (0, _mixins.default)(_colorable.default, _themeable.default).ext
218
218
  }
219
219
  },
220
220
  render: function render() {
221
+ var _a, _b;
222
+
221
223
  var children = [];
222
224
  var itemsLength = this.items.length;
223
225
 
@@ -233,9 +235,9 @@ var _default2 = (0, _mixins.default)(_colorable.default, _themeable.default).ext
233
235
  }));
234
236
  }
235
237
 
236
- children.length || children.push(this.$slots['no-data'] || this.staticNoDataTile);
237
- this.$slots['prepend-item'] && children.unshift(this.$slots['prepend-item']);
238
- this.$slots['append-item'] && children.push(this.$slots['append-item']);
238
+ children.length || children.push(((_b = (_a = this.$slots)['no-data']) === null || _b === void 0 ? void 0 : _b.call(_a)) || this.staticNoDataTile);
239
+ this.$slots['prepend-item'] && children.unshift(this.$slots['prepend-item']());
240
+ this.$slots['append-item'] && children.push(this.$slots['append-item']());
239
241
  return (0, _vue.h)(_VList.VList, {
240
242
  class: ['v-select-list', this.themeClasses],
241
243
  role: 'listbox',
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/VSelect/VSelectList.ts"],"names":[],"mappings":"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","sourcesContent":["// Components\nimport VSimpleCheckbox from '../VCheckbox/VSimpleCheckbox'\nimport VDivider from '../VDivider'\nimport VSubheader from '../VSubheader'\nimport {\n VList,\n VListItem,\n VListItemAction,\n VListItemContent,\n VListItemTitle,\n} from '../VList'\n\n// Directives\nimport ripple from '../../directives/ripple'\n\n// Mixins\nimport Colorable from '../../mixins/colorable'\nimport Themeable from '../../mixins/themeable'\n\n// Helpers\nimport { getPropertyFromItem } from '../../util/helpers'\n\n// Types\nimport mixins from '../../util/mixins'\nimport { VNode, PropType, VNodeChildren, h } from 'vue'\nimport { PropValidator } from 'vue/types/options'\nimport { SelectItemKey } from 'vuetify/types'\n\ntype ListTile = { item: any, disabled?: null | boolean, value?: boolean, index: number };\n\n/* @vue/component */\nexport default mixins(Colorable, Themeable).extend({\n name: 'v-select-list',\n\n // https://github.com/vuejs/vue/issues/6872\n directives: {\n ripple,\n },\n\n props: {\n action: Boolean,\n dense: Boolean,\n hideSelected: Boolean,\n items: {\n type: Array,\n default: () => [],\n } as PropValidator<any[]>,\n itemDisabled: {\n type: [String, Array, Function] as PropType<SelectItemKey>,\n default: 'disabled',\n },\n itemText: {\n type: [String, Array, Function] as PropType<SelectItemKey>,\n default: 'text',\n },\n itemValue: {\n type: [String, Array, Function] as PropType<SelectItemKey>,\n default: 'value',\n },\n noDataText: String,\n noFilter: Boolean,\n searchInput: null as unknown as PropType<any>,\n selectedItems: {\n type: Array,\n default: () => [],\n } as PropValidator<any[]>,\n },\n\n computed: {\n parsedItems (): any[] {\n return this.selectedItems.map(item => this.getValue(item))\n },\n tileActiveClass (): string {\n return Object.keys(this.setTextColor(this.color).class || {}).join(' ')\n },\n staticNoDataTile (): VNode {\n const tile = {\n role: undefined,\n onMousedown: (e: Event) => e.preventDefault(), // Prevent onBlur from being called\n }\n\n return h(VListItem, tile, [\n this.genTileContent(this.noDataText),\n ])\n },\n },\n\n methods: {\n genAction (item: object, inputValue: any): VNode {\n return h(VListItemAction, [\n h(VSimpleCheckbox, {\n color: this.color,\n value: inputValue,\n ripple: false,\n onInput: () => this.$emit('select', item)\n }),\n ])\n },\n genDivider (props: { [key: string]: any }) {\n return h(VDivider, { props })\n },\n genFilteredText (text: string) {\n text = text || ''\n\n if (!this.searchInput || this.noFilter) return text\n\n const { start, middle, end } = this.getMaskedCharacters(text)\n\n return [start, this.genHighlight(middle), end]\n },\n genHeader (props: { [key: string]: any }): VNode {\n return h(VSubheader, { props }, props.header)\n },\n genHighlight (text: string) {\n return h('span', { class: 'v-list-item__mask' }, text)\n },\n getMaskedCharacters (text: string): {\n start: string\n middle: string\n end: string\n } {\n const searchInput = (this.searchInput || '').toString().toLocaleLowerCase()\n const index = text.toLocaleLowerCase().indexOf(searchInput)\n\n if (index < 0) return { start: text, middle: '', end: '' }\n\n const start = text.slice(0, index)\n const middle = text.slice(index, index + searchInput.length)\n const end = text.slice(index + searchInput.length)\n return { start, middle, end }\n },\n genTile ({\n item,\n index,\n disabled = null,\n value = false,\n }: ListTile): VNode | VNode[] | undefined {\n if (!value) value = this.hasItem(item)\n\n if (item === Object(item)) {\n disabled = disabled !== null\n ? disabled\n : this.getDisabled(item)\n }\n\n const tile = {\n // Default behavior in list does not\n // contain aria-selected by default\n 'aria-selected': String(value),\n id: `list-item-${this._uid}-${index}`,\n role: 'option',\n onMousedown: (e: Event) => {\n // Prevent onBlur from being called\n e.preventDefault()\n },\n onClick: () => disabled || this.$emit('select', item),\n activeClass: this.tileActiveClass,\n disabled,\n ripple: true,\n inputValue: value,\n }\n\n if (!this.$slots.item) {\n return h(VListItem, tile, [\n this.action && !this.hideSelected && this.items.length > 0\n ? this.genAction(item, value)\n : null,\n this.genTileContent(item, index),\n ])\n }\n\n const parent = this\n const scopedSlot = this.$slots.item({\n parent,\n item,\n attrs: {\n ...tile.attrs,\n ...tile.props,\n },\n on: tile.on,\n })\n\n return this.needsTile(scopedSlot)\n ? h(VListItem, tile, scopedSlot)\n : scopedSlot\n },\n genTileContent (item: any, index = 0): VNode {\n return h(VListItemContent, [\n h(VListItemTitle, [\n this.genFilteredText(this.getText(item)),\n ]),\n ])\n },\n hasItem (item: object) {\n return this.parsedItems.indexOf(this.getValue(item)) > -1\n },\n needsTile (slot: VNode[] | undefined) {\n return slot!.length !== 1 ||\n slot![0].componentOptions == null ||\n slot![0].componentOptions.Ctor.name !== 'v-list-item'\n },\n getDisabled (item: object) {\n return Boolean(getPropertyFromItem(item, this.itemDisabled, false))\n },\n getText (item: object) {\n return String(getPropertyFromItem(item, this.itemText, item))\n },\n getValue (item: object) {\n return getPropertyFromItem(item, this.itemValue, this.getText(item))\n },\n },\n\n render (): VNode {\n const children: VNodeChildren = []\n const itemsLength = this.items.length\n for (let index = 0; index < itemsLength; index++) {\n const item = this.items[index]\n\n if (this.hideSelected &&\n this.hasItem(item)\n ) continue\n\n if (item == null) children.push(this.genTile({ item, index }))\n else if (item.header) children.push(this.genHeader(item))\n else if (item.divider) children.push(this.genDivider(item))\n else children.push(this.genTile({ item, index }))\n }\n\n children.length || children.push(this.$slots['no-data'] || this.staticNoDataTile)\n\n this.$slots['prepend-item'] && children.unshift(this.$slots['prepend-item'])\n\n this.$slots['append-item'] && children.push(this.$slots['append-item'])\n\n return h(VList, {\n class: ['v-select-list', this.themeClasses],\n role: 'listbox',\n tabindex: -1,\n onMousedown: (e: Event) => {\n e.preventDefault()\n },\n dense: this.dense,\n }, children)\n },\n})\n"],"sourceRoot":"","file":"VSelectList.js"}
1
+ {"version":3,"sources":["../../../src/components/VSelect/VSelectList.ts"],"names":[],"mappings":"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","sourcesContent":["// Components\nimport VSimpleCheckbox from '../VCheckbox/VSimpleCheckbox'\nimport VDivider from '../VDivider'\nimport VSubheader from '../VSubheader'\nimport {\n VList,\n VListItem,\n VListItemAction,\n VListItemContent,\n VListItemTitle,\n} from '../VList'\n\n// Directives\nimport ripple from '../../directives/ripple'\n\n// Mixins\nimport Colorable from '../../mixins/colorable'\nimport Themeable from '../../mixins/themeable'\n\n// Helpers\nimport { getPropertyFromItem } from '../../util/helpers'\n\n// Types\nimport mixins from '../../util/mixins'\nimport { VNode, PropType, VNodeChildren, h } from 'vue'\nimport { PropValidator } from 'vue/types/options'\nimport { SelectItemKey } from 'vuetify/types'\n\ntype ListTile = { item: any, disabled?: null | boolean, value?: boolean, index: number };\n\n/* @vue/component */\nexport default mixins(Colorable, Themeable).extend({\n name: 'v-select-list',\n\n // https://github.com/vuejs/vue/issues/6872\n directives: {\n ripple,\n },\n\n props: {\n action: Boolean,\n dense: Boolean,\n hideSelected: Boolean,\n items: {\n type: Array,\n default: () => [],\n } as PropValidator<any[]>,\n itemDisabled: {\n type: [String, Array, Function] as PropType<SelectItemKey>,\n default: 'disabled',\n },\n itemText: {\n type: [String, Array, Function] as PropType<SelectItemKey>,\n default: 'text',\n },\n itemValue: {\n type: [String, Array, Function] as PropType<SelectItemKey>,\n default: 'value',\n },\n noDataText: String,\n noFilter: Boolean,\n searchInput: null as unknown as PropType<any>,\n selectedItems: {\n type: Array,\n default: () => [],\n } as PropValidator<any[]>,\n },\n\n computed: {\n parsedItems (): any[] {\n return this.selectedItems.map(item => this.getValue(item))\n },\n tileActiveClass (): string {\n return Object.keys(this.setTextColor(this.color).class || {}).join(' ')\n },\n staticNoDataTile (): VNode {\n const tile = {\n role: undefined,\n onMousedown: (e: Event) => e.preventDefault(), // Prevent onBlur from being called\n }\n\n return h(VListItem, tile, [\n this.genTileContent(this.noDataText),\n ])\n },\n },\n\n methods: {\n genAction (item: object, inputValue: any): VNode {\n return h(VListItemAction, [\n h(VSimpleCheckbox, {\n color: this.color,\n value: inputValue,\n ripple: false,\n onInput: () => this.$emit('select', item)\n }),\n ])\n },\n genDivider (props: { [key: string]: any }) {\n return h(VDivider, { props })\n },\n genFilteredText (text: string) {\n text = text || ''\n\n if (!this.searchInput || this.noFilter) return text\n\n const { start, middle, end } = this.getMaskedCharacters(text)\n\n return [start, this.genHighlight(middle), end]\n },\n genHeader (props: { [key: string]: any }): VNode {\n return h(VSubheader, { props }, props.header)\n },\n genHighlight (text: string) {\n return h('span', { class: 'v-list-item__mask' }, text)\n },\n getMaskedCharacters (text: string): {\n start: string\n middle: string\n end: string\n } {\n const searchInput = (this.searchInput || '').toString().toLocaleLowerCase()\n const index = text.toLocaleLowerCase().indexOf(searchInput)\n\n if (index < 0) return { start: text, middle: '', end: '' }\n\n const start = text.slice(0, index)\n const middle = text.slice(index, index + searchInput.length)\n const end = text.slice(index + searchInput.length)\n return { start, middle, end }\n },\n genTile ({\n item,\n index,\n disabled = null,\n value = false,\n }: ListTile): VNode | VNode[] | undefined {\n if (!value) value = this.hasItem(item)\n\n if (item === Object(item)) {\n disabled = disabled !== null\n ? disabled\n : this.getDisabled(item)\n }\n\n const tile = {\n // Default behavior in list does not\n // contain aria-selected by default\n 'aria-selected': String(value),\n id: `list-item-${this._uid}-${index}`,\n role: 'option',\n onMousedown: (e: Event) => {\n // Prevent onBlur from being called\n e.preventDefault()\n },\n onClick: () => disabled || this.$emit('select', item),\n activeClass: this.tileActiveClass,\n disabled,\n ripple: true,\n inputValue: value,\n }\n\n if (!this.$slots.item) {\n return h(VListItem, tile, [\n this.action && !this.hideSelected && this.items.length > 0\n ? this.genAction(item, value)\n : null,\n this.genTileContent(item, index),\n ])\n }\n\n const parent = this\n const scopedSlot = this.$slots.item({\n parent,\n item,\n attrs: {\n ...tile.attrs,\n ...tile.props,\n },\n on: tile.on,\n })\n\n return this.needsTile(scopedSlot)\n ? h(VListItem, tile, scopedSlot)\n : scopedSlot\n },\n genTileContent (item: any, index = 0): VNode {\n return h(VListItemContent, [\n h(VListItemTitle, [\n this.genFilteredText(this.getText(item)),\n ]),\n ])\n },\n hasItem (item: object) {\n return this.parsedItems.indexOf(this.getValue(item)) > -1\n },\n needsTile (slot: VNode[] | undefined) {\n return slot!.length !== 1 ||\n slot![0].componentOptions == null ||\n slot![0].componentOptions.Ctor.name !== 'v-list-item'\n },\n getDisabled (item: object) {\n return Boolean(getPropertyFromItem(item, this.itemDisabled, false))\n },\n getText (item: object) {\n return String(getPropertyFromItem(item, this.itemText, item))\n },\n getValue (item: object) {\n return getPropertyFromItem(item, this.itemValue, this.getText(item))\n },\n },\n\n render (): VNode {\n const children: VNodeChildren = []\n const itemsLength = this.items.length\n for (let index = 0; index < itemsLength; index++) {\n const item = this.items[index]\n\n if (this.hideSelected &&\n this.hasItem(item)\n ) continue\n\n if (item == null) children.push(this.genTile({ item, index }))\n else if (item.header) children.push(this.genHeader(item))\n else if (item.divider) children.push(this.genDivider(item))\n else children.push(this.genTile({ item, index }))\n }\n\n children.length || children.push(this.$slots['no-data']?.() || this.staticNoDataTile)\n\n this.$slots['prepend-item'] && children.unshift(this.$slots['prepend-item']())\n\n this.$slots['append-item'] && children.push(this.$slots['append-item']())\n\n return h(VList, {\n class: ['v-select-list', this.themeClasses],\n role: 'listbox',\n tabindex: -1,\n onMousedown: (e: Event) => {\n e.preventDefault()\n },\n dense: this.dense,\n }, children)\n },\n})\n"],"sourceRoot":"","file":"VSelectList.js"}
package/es5/framework.js CHANGED
@@ -79,7 +79,7 @@ var Vuetify = /*#__PURE__*/function () {
79
79
  exports.default = Vuetify;
80
80
  Vuetify.install = _install.install;
81
81
  Vuetify.installed = false;
82
- Vuetify.version = "2.7.2-alpha12";
82
+ Vuetify.version = "2.7.2-alpha14";
83
83
  Vuetify.config = {
84
84
  silent: false
85
85
  };
@@ -4,10 +4,8 @@ import "../../../src/components/VAutocomplete/VAutocomplete.sass"; // Extensions
4
4
  import VSelect, { defaultMenuProps as VSelectMenuProps } from '../VSelect/VSelect';
5
5
  import VTextField from '../VTextField/VTextField'; // Utilities
6
6
 
7
- import mergeData from '../../util/mergeData';
8
- import { getObjectValueByPath, getPropertyFromItem, keyCodes } from '../../util/helpers'; // Types
9
-
10
- import { defineComponent } from 'vue';
7
+ import { defineComponent, mergeProps } from 'vue';
8
+ import { getObjectValueByPath, getPropertyFromItem, keyCodes } from '../../util/helpers';
11
9
  const defaultMenuProps = { ...VSelectMenuProps,
12
10
  offsetY: true,
13
11
  offsetOverflow: true,
@@ -281,9 +279,14 @@ export default defineComponent({
281
279
 
282
280
  genInput() {
283
281
  const input = VTextField.methods.genInput.call(this);
284
- input.data = mergeData(input.props, {
285
- 'aria-activedescendant': getObjectValueByPath(this.$refs.menu, 'activeTile.id'),
286
- autocomplete: getObjectValueByPath(input.data, 'attrs.autocomplete', 'off'),
282
+ const ariaActiveDescendant = getObjectValueByPath(this.$refs.menu, 'activeTile.id');
283
+ const autocomplete = getObjectValueByPath(input.props, 'autocomplete', 'off'); // в оригинале class не пробрасывался в инпут
284
+
285
+ input.props = mergeProps({ ...input.props,
286
+ class: undefined
287
+ }, {
288
+ 'aria-activedescendant': ariaActiveDescendant,
289
+ autocomplete,
287
290
  value: this.internalSearch
288
291
  });
289
292
  return input;