{"version":3,"sources":["webpack:///../../../src/mixins/transitionable/index.ts","webpack:///../../../src/components/VAlert/VAlert.ts","webpack:///../../../src/components/VCombobox/VCombobox.ts","webpack:///../../../src/mixins/rippleable/index.ts","webpack:///../../../src/components/VGrid/VContainer.ts","webpack:///../../../src/components/VCheckbox/VCheckbox.ts","webpack:///../../../src/components/VAutocomplete/VAutocomplete.ts","webpack:///../../../src/components/VGrid/grid.ts","webpack:///../../../src/mixins/selectable/index.ts"],"names":["name","props","mode","origin","transition","String","mixins","border","type","validator","closeLabel","default","coloredBorder","dense","dismissible","closeIcon","icon","Boolean","val","outlined","prominent","text","value","computed","__cachedBorder","this","data","staticClass","class","setBackgroundColor","$createElement","__cachedDismissible","color","VBtn","small","attrs","$vuetify","lang","t","on","click","VIcon","__cachedIcon","iconColor","classes","VSheet","computedColor","computedIcon","includes","hasColoredIcon","hasText","isDark","created","$attrs","hasOwnProperty","methods","genWrapper","children","$slots","prepend","$scopedSlots","close","toggle","genContent","genAlert","role","style","directives","isActive","setColor","render","h","delimiters","returnObject","editingIndex","computedCounterValue","multiple","selectedItems","internalSearch","hasSlot","isAnyValueAllowed","menuCanShow","hasDisplayedItems","onInternalSearchChanged","delimiter","find","d","genInput","input","genChipSelection","chip","dblclick","onChipInput","onEnterDown","e","getMenuIndex","onFilteredItemsChanged","onKeyDown","keyCode","$refs","selectionStart","onTabDown","selectItem","setSelectedItems","internalValue","setValue","updateEditing","updateCombobox","isUsingSlot","getText","undefined","updateSelf","updateTags","menuIndex","index","indexOf","onPaste","pastedItemText","event","findExistingIndex","ripple","genRipple","center","Object","onChange","functional","id","tag","fluid","key","Array","indeterminate","indeterminateIcon","offIcon","onIcon","inputIndeterminate","validationState","isDisabled","hasError","hasColor","watch","genCheckbox","setTextColor","dark","light","toString","genDefaultSlot","defaultMenuProps","offsetY","offsetOverflow","allowOverflow","autoSelectFirst","filter","itemText","queryText","hideNoData","menuProps","noFilter","searchInput","lazySearch","selectedIndex","computedItems","selectedValues","map","item","hideSelected","filteredItems","some","length","currentRange","selectedItem","allItems","get","set","isDirty","searchIsDirty","isSearching","$_menuProps","i","listData","items","isFocused","document","isMenuActive","oldVal","activateMenu","updateMenuDimensions","menu","changeSelectedIndex","deleteCurrentItem","curIndex","curItem","getDisabled","lastIndex","nextIndex","nextItem","clearableCallback","autocomplete","domProps","genInputSlot","slot","genSelections","onClick","isAppendInner","onInput","target","onSpaceDown","onUpDown","setSearch","valueComparator","getValue","hasItem","onCopy","currentItem","currentItemText","model","prop","inputValue","falseValue","trueValue","label","lazyValue","isMultiple","rippleState","genLabel","disabled","checked","blur","change","focus","keydown","onKeydown","ref","onBlur","onFocus"],"mappings":"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","file":"js/chunk-4a7f7346.07f64373.js","sourcesContent":["import Vue from 'vue'\n\nexport default Vue.extend({\n name: 'transitionable',\n\n props: {\n mode: String,\n origin: String,\n transition: String,\n },\n})\n","// Styles\nimport './VAlert.sass'\n\n// Extensions\nimport VSheet from '../VSheet'\n\n// Components\nimport VBtn from '../VBtn'\nimport VIcon from '../VIcon'\n\n// Mixins\nimport Toggleable from '../../mixins/toggleable'\nimport Themeable from '../../mixins/themeable'\nimport Transitionable from '../../mixins/transitionable'\n\n// Utilities\nimport mixins from '../../util/mixins'\nimport { breaking } from '../../util/console'\n\n// Types\nimport { VNodeData } from 'vue'\nimport { VNode } from 'vue/types'\n\n/* @vue/component */\nexport default mixins(\n VSheet,\n Toggleable,\n Transitionable\n).extend({\n name: 'v-alert',\n\n props: {\n border: {\n type: String,\n validator (val: string) {\n return [\n 'top',\n 'right',\n 'bottom',\n 'left',\n ].includes(val)\n },\n },\n closeLabel: {\n type: String,\n default: '$vuetify.close',\n },\n coloredBorder: Boolean,\n dense: Boolean,\n dismissible: Boolean,\n closeIcon: {\n type: String,\n default: '$cancel',\n },\n icon: {\n default: '',\n type: [Boolean, String],\n validator (val: boolean | string) {\n return typeof val === 'string' || val === false\n },\n },\n outlined: Boolean,\n prominent: Boolean,\n text: Boolean,\n type: {\n type: String,\n validator (val: string) {\n return [\n 'info',\n 'error',\n 'success',\n 'warning',\n ].includes(val)\n },\n },\n value: {\n type: Boolean,\n default: true,\n },\n },\n\n computed: {\n __cachedBorder (): VNode | null {\n if (!this.border) return null\n\n let data: VNodeData = {\n staticClass: 'v-alert__border',\n class: {\n [`v-alert__border--${this.border}`]: true,\n },\n }\n\n if (this.coloredBorder) {\n data = this.setBackgroundColor(this.computedColor, data)\n data.class['v-alert__border--has-color'] = true\n }\n\n return this.$createElement('div', data)\n },\n __cachedDismissible (): VNode | null {\n if (!this.dismissible) return null\n\n const color = this.iconColor\n\n return this.$createElement(VBtn, {\n staticClass: 'v-alert__dismissible',\n props: {\n color,\n icon: true,\n small: true,\n },\n attrs: {\n 'aria-label': this.$vuetify.lang.t(this.closeLabel),\n },\n on: {\n click: () => (this.isActive = false),\n },\n }, [\n this.$createElement(VIcon, {\n props: { color },\n }, this.closeIcon),\n ])\n },\n __cachedIcon (): VNode | null {\n if (!this.computedIcon) return null\n\n return this.$createElement(VIcon, {\n staticClass: 'v-alert__icon',\n props: { color: this.iconColor },\n }, this.computedIcon)\n },\n classes (): object {\n const classes: Record = {\n ...VSheet.options.computed.classes.call(this),\n 'v-alert--border': Boolean(this.border),\n 'v-alert--dense': this.dense,\n 'v-alert--outlined': this.outlined,\n 'v-alert--prominent': this.prominent,\n 'v-alert--text': this.text,\n }\n\n if (this.border) {\n classes[`v-alert--border-${this.border}`] = true\n }\n\n return classes\n },\n computedColor (): string {\n return this.color || this.type\n },\n computedIcon (): string | boolean {\n if (this.icon === false) return false\n if (typeof this.icon === 'string' && this.icon) return this.icon\n if (!['error', 'info', 'success', 'warning'].includes(this.type)) return false\n\n return `$${this.type}`\n },\n hasColoredIcon (): boolean {\n return (\n this.hasText ||\n (Boolean(this.border) && this.coloredBorder)\n )\n },\n hasText (): boolean {\n return this.text || this.outlined\n },\n iconColor (): string | undefined {\n return this.hasColoredIcon ? this.computedColor : undefined\n },\n isDark (): boolean {\n if (\n this.type &&\n !this.coloredBorder &&\n !this.outlined\n ) return true\n\n return Themeable.options.computed.isDark.call(this)\n },\n },\n\n created () {\n /* istanbul ignore next */\n if (this.$attrs.hasOwnProperty('outline')) {\n breaking('outline', 'outlined', this)\n }\n },\n\n methods: {\n genWrapper (): VNode {\n const children = [\n this.$slots.prepend || this.__cachedIcon,\n this.genContent(),\n this.__cachedBorder,\n this.$slots.append,\n this.$scopedSlots.close\n ? this.$scopedSlots.close({ toggle: this.toggle })\n : this.__cachedDismissible,\n ]\n\n const data: VNodeData = {\n staticClass: 'v-alert__wrapper',\n }\n\n return this.$createElement('div', data, children)\n },\n genContent (): VNode {\n return this.$createElement('div', {\n staticClass: 'v-alert__content',\n }, this.$slots.default)\n },\n genAlert (): VNode {\n let data: VNodeData = {\n staticClass: 'v-alert',\n attrs: {\n role: 'alert',\n },\n class: this.classes,\n style: this.styles,\n directives: [{\n name: 'show',\n value: this.isActive,\n }],\n }\n\n if (!this.coloredBorder) {\n const setColor = this.hasText ? this.setTextColor : this.setBackgroundColor\n data = setColor(this.computedColor, data)\n }\n\n return this.$createElement('div', data, [this.genWrapper()])\n },\n /** @public */\n toggle () {\n this.isActive = !this.isActive\n },\n },\n\n render (h): VNode {\n const render = this.genAlert()\n\n if (!this.transition) return render\n\n return h('transition', {\n props: {\n name: this.transition,\n origin: this.origin,\n mode: this.mode,\n },\n }, [render])\n },\n})\n","// Styles\nimport '../VAutocomplete/VAutocomplete.sass'\n\n// Extensions\nimport VSelect from '../VSelect/VSelect'\nimport VAutocomplete from '../VAutocomplete/VAutocomplete'\n\n// Utils\nimport { keyCodes } from '../../util/helpers'\n\n// Types\nimport { PropType } from 'vue'\n\n/* @vue/component */\nexport default VAutocomplete.extend({\n name: 'v-combobox',\n\n props: {\n delimiters: {\n type: Array as PropType,\n default: () => ([]),\n },\n returnObject: {\n type: Boolean,\n default: true,\n },\n },\n\n data: () => ({\n editingIndex: -1,\n }),\n\n computed: {\n computedCounterValue (): number {\n return this.multiple\n ? this.selectedItems.length\n : (this.internalSearch || '').toString().length\n },\n hasSlot (): boolean {\n return VSelect.options.computed.hasSlot.call(this) || this.multiple\n },\n isAnyValueAllowed (): boolean {\n return true\n },\n menuCanShow (): boolean {\n if (!this.isFocused) return false\n\n return this.hasDisplayedItems ||\n (!!this.$slots['no-data'] && !this.hideNoData)\n },\n },\n\n methods: {\n onInternalSearchChanged (val: any) {\n if (\n val &&\n this.multiple &&\n this.delimiters.length\n ) {\n const delimiter = this.delimiters.find(d => val.endsWith(d))\n if (delimiter != null) {\n this.internalSearch = val.slice(0, val.length - delimiter.length)\n this.updateTags()\n }\n }\n\n this.updateMenuDimensions()\n },\n genInput () {\n const input = VAutocomplete.options.methods.genInput.call(this)\n\n delete input.data!.attrs!.name\n input.data!.on!.paste = this.onPaste\n\n return input\n },\n genChipSelection (item: object, index: number) {\n const chip = VSelect.options.methods.genChipSelection.call(this, item, index)\n\n // Allow user to update an existing value\n if (this.multiple) {\n chip.componentOptions!.listeners! = {\n ...chip.componentOptions!.listeners!,\n dblclick: () => {\n this.editingIndex = index\n this.internalSearch = this.getText(item)\n this.selectedIndex = -1\n },\n }\n }\n\n return chip\n },\n onChipInput (item: object) {\n VSelect.options.methods.onChipInput.call(this, item)\n\n this.editingIndex = -1\n },\n // Requires a manual definition\n // to overwrite removal in v-autocomplete\n onEnterDown (e: Event) {\n e.preventDefault()\n // If has menu index, let v-select-list handle\n if (this.getMenuIndex() > -1) return\n\n this.$nextTick(this.updateSelf)\n },\n onFilteredItemsChanged (val: never[], oldVal: never[]) {\n if (!this.autoSelectFirst) return\n\n VAutocomplete.options.methods.onFilteredItemsChanged.call(this, val, oldVal)\n },\n onKeyDown (e: KeyboardEvent) {\n const keyCode = e.keyCode\n\n VSelect.options.methods.onKeyDown.call(this, e)\n\n // If user is at selection index of 0\n // create a new tag\n if (this.multiple &&\n keyCode === keyCodes.left &&\n this.$refs.input.selectionStart === 0\n ) {\n this.updateSelf()\n } else if (keyCode === keyCodes.enter) {\n this.onEnterDown(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 onTabDown (e: KeyboardEvent) {\n // When adding tags, if searching and\n // there is not a filtered options,\n // add the value to the tags list\n if (this.multiple &&\n this.internalSearch &&\n this.getMenuIndex() === -1\n ) {\n e.preventDefault()\n e.stopPropagation()\n\n return this.updateTags()\n }\n\n VAutocomplete.options.methods.onTabDown.call(this, e)\n },\n selectItem (item: object) {\n // Currently only supports items:\n if (this.editingIndex > -1) {\n this.updateEditing()\n } else {\n VAutocomplete.options.methods.selectItem.call(this, item)\n }\n },\n setSelectedItems () {\n if (this.internalValue == null ||\n this.internalValue === ''\n ) {\n this.selectedItems = []\n } else {\n this.selectedItems = this.multiple ? this.internalValue : [this.internalValue]\n }\n },\n setValue (value?: any) {\n VSelect.options.methods.setValue.call(this, value != null ? value : this.internalSearch)\n },\n updateEditing () {\n const value = this.internalValue.slice()\n value[this.editingIndex] = this.internalSearch\n\n this.setValue(value)\n\n this.editingIndex = -1\n },\n updateCombobox () {\n const isUsingSlot = Boolean(this.$scopedSlots.selection) || this.hasChips\n\n // If search is not dirty and is\n // using slot, do nothing\n if (isUsingSlot && !this.searchIsDirty) return\n\n // The internal search is not matching\n // the internal value, update the input\n if (this.internalSearch !== this.getText(this.internalValue)) this.setValue()\n\n // Reset search if using slot\n // to avoid a double input\n if (isUsingSlot) this.internalSearch = undefined\n },\n updateSelf () {\n this.multiple ? this.updateTags() : this.updateCombobox()\n },\n updateTags () {\n const menuIndex = this.getMenuIndex()\n\n // If the user is not searching\n // and no menu item is selected\n // do nothing\n if (menuIndex < 0 &&\n !this.searchIsDirty\n ) return\n\n if (this.editingIndex > -1) {\n return this.updateEditing()\n }\n\n const index = this.selectedItems.indexOf(this.internalSearch)\n // If it already exists, do nothing\n // this might need to change to bring\n // the duplicated item to the last entered\n if (index > -1) {\n const internalValue = this.internalValue.slice()\n internalValue.splice(index, 1)\n\n this.setValue(internalValue)\n }\n\n // If menu index is greater than 1\n // the selection is handled elsewhere\n // TODO: find out where\n if (menuIndex > -1) return (this.internalSearch = null)\n\n this.selectItem(this.internalSearch)\n this.internalSearch = null\n },\n onPaste (event: ClipboardEvent) {\n if (!this.multiple || this.searchIsDirty) return\n\n const pastedItemText = event.clipboardData!.getData('text/vnd.vuetify.autocomplete.item+plain')\n if (pastedItemText && this.findExistingIndex(pastedItemText as any) === -1) {\n event.preventDefault()\n VSelect.options.methods.selectItem.call(this, pastedItemText as any)\n }\n },\n },\n})\n","// Directives\nimport ripple from '../../directives/ripple'\n\n// Types\nimport Vue, { VNode, VNodeData, VNodeDirective } from 'vue'\n\nexport default Vue.extend({\n name: 'rippleable',\n\n directives: { ripple },\n\n props: {\n ripple: {\n type: [Boolean, Object],\n default: true,\n },\n },\n\n methods: {\n genRipple (data: VNodeData = {}): VNode | null {\n if (!this.ripple) return null\n\n data.staticClass = 'v-input--selection-controls__ripple'\n\n data.directives = data.directives || []\n data.directives.push({\n name: 'ripple',\n value: { center: true },\n } as VNodeDirective)\n data.on = Object.assign({\n click: this.onChange,\n }, this.$listeners)\n\n return this.$createElement('div', data)\n },\n onChange () {},\n },\n})\n","import './_grid.sass'\nimport './VGrid.sass'\n\nimport Grid from './grid'\n\nimport mergeData from '../../util/mergeData'\n\n/* @vue/component */\nexport default Grid('container').extend({\n name: 'v-container',\n functional: true,\n props: {\n id: String,\n tag: {\n type: String,\n default: 'div',\n },\n fluid: {\n type: Boolean,\n default: false,\n },\n },\n render (h, { props, data, children }) {\n let classes\n const { attrs } = data\n if (attrs) {\n // reset attrs to extract utility clases like pa-3\n data.attrs = {}\n classes = Object.keys(attrs).filter(key => {\n // TODO: Remove once resolved\n // https://github.com/vuejs/vue/issues/7841\n if (key === 'slot') return false\n\n const value = attrs[key]\n\n // add back data attributes like data-test=\"foo\" but do not\n // add them as classes\n if (key.startsWith('data-')) {\n data.attrs![key] = value\n return false\n }\n\n return value || typeof value === 'string'\n })\n }\n\n if (props.id) {\n data.domProps = data.domProps || {}\n data.domProps.id = props.id\n }\n\n return h(\n props.tag,\n mergeData(data, {\n staticClass: 'container',\n class: Array({\n 'container--fluid': props.fluid,\n }).concat(classes || []),\n }),\n children\n )\n },\n})\n","// Styles\nimport './VCheckbox.sass'\nimport '../../styles/components/_selection-controls.sass'\n\n// Components\nimport VIcon from '../VIcon'\nimport VInput from '../VInput'\n\n// Mixins\nimport Selectable from '../../mixins/selectable'\n\n/* @vue/component */\nexport default Selectable.extend({\n name: 'v-checkbox',\n\n props: {\n indeterminate: Boolean,\n indeterminateIcon: {\n type: String,\n default: '$checkboxIndeterminate',\n },\n offIcon: {\n type: String,\n default: '$checkboxOff',\n },\n onIcon: {\n type: String,\n default: '$checkboxOn',\n },\n },\n\n data () {\n return {\n inputIndeterminate: this.indeterminate,\n }\n },\n\n computed: {\n classes (): object {\n return {\n ...VInput.options.computed.classes.call(this),\n 'v-input--selection-controls': true,\n 'v-input--checkbox': true,\n 'v-input--indeterminate': this.inputIndeterminate,\n }\n },\n computedIcon (): string {\n if (this.inputIndeterminate) {\n return this.indeterminateIcon\n } else if (this.isActive) {\n return this.onIcon\n } else {\n return this.offIcon\n }\n },\n // Do not return undefined if disabled,\n // according to spec, should still show\n // a color when disabled and active\n validationState (): string | undefined {\n if (this.isDisabled && !this.inputIndeterminate) return undefined\n if (this.hasError && this.shouldValidate) return 'error'\n if (this.hasSuccess) return 'success'\n if (this.hasColor !== null) return this.computedColor\n return undefined\n },\n },\n\n watch: {\n indeterminate (val) {\n // https://github.com/vuetifyjs/vuetify/issues/8270\n this.$nextTick(() => (this.inputIndeterminate = val))\n },\n inputIndeterminate (val) {\n this.$emit('update:indeterminate', val)\n },\n isActive () {\n if (!this.indeterminate) return\n this.inputIndeterminate = false\n },\n },\n\n methods: {\n genCheckbox () {\n return this.$createElement('div', {\n staticClass: 'v-input--selection-controls__input',\n }, [\n this.$createElement(VIcon, this.setTextColor(this.validationState, {\n props: {\n dense: this.dense,\n dark: this.dark,\n light: this.light,\n },\n }), this.computedIcon),\n this.genInput('checkbox', {\n ...this.attrs$,\n 'aria-checked': this.inputIndeterminate\n ? 'mixed'\n : this.isActive.toString(),\n }),\n this.genRipple(this.setTextColor(this.rippleState)),\n ])\n },\n genDefaultSlot () {\n return [\n this.genCheckbox(),\n this.genLabel(),\n ]\n },\n },\n})\n","// 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 } from 'vue'\n\nconst defaultMenuProps = {\n ...VSelectMenuProps,\n offsetY: true,\n offsetOverflow: true,\n transition: false,\n}\n\n/* @vue/component */\nexport default VSelect.extend({\n name: 'v-autocomplete',\n\n props: {\n allowOverflow: {\n type: Boolean,\n default: true,\n },\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 },\n hideNoData: Boolean,\n menuProps: {\n type: VSelect.options.props.menuProps.type,\n default: () => defaultMenuProps,\n },\n noFilter: Boolean,\n searchInput: {\n type: String as PropType,\n default: undefined,\n },\n },\n\n data () {\n return {\n lazySearch: this.searchInput,\n }\n },\n\n computed: {\n classes (): object {\n return {\n ...VSelect.options.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 | undefined {\n return this.lazySearch\n },\n set (val: any) {\n this.lazySearch = val\n\n this.$emit('update:search-input', val)\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.options.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.options.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.updateSelf()\n }\n },\n isMenuActive (val) {\n if (val || !this.hasSlot) return\n\n this.lazySearch = undefined\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 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 this.setMenuIndex(-1)\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 this.setMenuIndex(0)\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 ? [] : undefined)\n } else {\n this.selectItem(curItem)\n }\n\n this.selectedIndex = nextIndex\n },\n clearableCallback () {\n this.internalSearch = undefined\n\n VSelect.options.methods.clearableCallback.call(this)\n },\n genInput () {\n const input = VTextField.options.methods.genInput.call(this)\n\n input.data = mergeData(input.data!, {\n attrs: {\n 'aria-activedescendant': getObjectValueByPath(this.$refs.menu, 'activeTile.id'),\n autocomplete: getObjectValueByPath(input.data!, 'attrs.autocomplete', 'off'),\n },\n domProps: { value: this.internalSearch },\n })\n\n return input\n },\n genInputSlot () {\n const slot = VSelect.options.methods.genInputSlot.call(this)\n\n slot.data!.attrs!.role = 'combobox'\n\n return slot\n },\n genSelections () {\n return this.hasSlot || this.multiple\n ? VSelect.options.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 this.internalSearch = value\n this.badInput = target.validity && target.validity.badInput\n },\n onKeyDown (e: KeyboardEvent) {\n const keyCode = e.keyCode\n\n VSelect.options.methods.onKeyDown.call(this, e)\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.options.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.options.methods.selectItem.call(this, item)\n this.setSearch()\n },\n setSelectedItems () {\n VSelect.options.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 (!this.searchIsDirty &&\n !this.internalValue\n ) return\n\n if (!this.valueComparator(\n this.internalSearch,\n this.getValue(this.internalValue)\n )) {\n this.setSearch()\n }\n },\n hasItem (item: any) {\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","// Types\nimport Vue, { VNode } from 'vue'\n\nexport default function VGrid (name: string) {\n /* @vue/component */\n return Vue.extend({\n name: `v-${name}`,\n\n functional: true,\n\n props: {\n id: String,\n tag: {\n type: String,\n default: 'div',\n },\n },\n\n render (h, { props, data, children }): VNode {\n data.staticClass = (`${name} ${data.staticClass || ''}`).trim()\n\n const { attrs } = data\n if (attrs) {\n // reset attrs to extract utility clases like pa-3\n data.attrs = {}\n const classes = Object.keys(attrs).filter(key => {\n // TODO: Remove once resolved\n // https://github.com/vuejs/vue/issues/7841\n if (key === 'slot') return false\n\n const value = attrs[key]\n\n // add back data attributes like data-test=\"foo\" but do not\n // add them as classes\n if (key.startsWith('data-')) {\n data.attrs![key] = value\n return false\n }\n\n return value || typeof value === 'string'\n })\n\n if (classes.length) data.staticClass += ` ${classes.join(' ')}`\n }\n\n if (props.id) {\n data.domProps = data.domProps || {}\n data.domProps.id = props.id\n }\n\n return h(props.tag, data, children)\n },\n })\n}\n","// Components\nimport VInput from '../../components/VInput'\n\n// Mixins\nimport Rippleable from '../rippleable'\nimport Comparable from '../comparable'\n\n// Utilities\nimport mixins from '../../util/mixins'\n\n/* @vue/component */\nexport default mixins(\n VInput,\n Rippleable,\n Comparable\n).extend({\n name: 'selectable',\n\n model: {\n prop: 'inputValue',\n event: 'change',\n },\n\n props: {\n id: String,\n inputValue: null as any,\n falseValue: null as any,\n trueValue: null as any,\n multiple: {\n type: Boolean,\n default: null,\n },\n label: String,\n },\n\n data () {\n return {\n hasColor: this.inputValue,\n lazyValue: this.inputValue,\n }\n },\n\n computed: {\n computedColor (): string | undefined {\n if (!this.isActive) return undefined\n if (this.color) return this.color\n if (this.isDark && !this.appIsDark) return 'white'\n return 'primary'\n },\n isMultiple (): boolean {\n return this.multiple === true || (this.multiple === null && Array.isArray(this.internalValue))\n },\n isActive (): boolean {\n const value = this.value\n const input = this.internalValue\n\n if (this.isMultiple) {\n if (!Array.isArray(input)) return false\n\n return input.some(item => this.valueComparator(item, value))\n }\n\n if (this.trueValue === undefined || this.falseValue === undefined) {\n return value\n ? this.valueComparator(value, input)\n : Boolean(input)\n }\n\n return this.valueComparator(input, this.trueValue)\n },\n isDirty (): boolean {\n return this.isActive\n },\n rippleState (): string | undefined {\n return !this.isDisabled && !this.validationState\n ? undefined\n : this.validationState\n },\n },\n\n watch: {\n inputValue (val) {\n this.lazyValue = val\n this.hasColor = val\n },\n },\n\n methods: {\n genLabel () {\n const label = VInput.options.methods.genLabel.call(this)\n\n if (!label) return label\n\n label!.data!.on = {\n click: (e: Event) => {\n // Prevent label from\n // causing the input\n // to focus\n e.preventDefault()\n\n this.onChange()\n },\n }\n\n return label\n },\n genInput (type: string, attrs: object) {\n return this.$createElement('input', {\n attrs: Object.assign({\n 'aria-checked': this.isActive.toString(),\n disabled: this.isDisabled,\n id: this.computedId,\n role: type,\n type,\n }, attrs),\n domProps: {\n value: this.value,\n checked: this.isActive,\n },\n on: {\n blur: this.onBlur,\n change: this.onChange,\n focus: this.onFocus,\n keydown: this.onKeydown,\n },\n ref: 'input',\n })\n },\n onBlur () {\n this.isFocused = false\n },\n onChange () {\n if (!this.isInteractive) return\n\n const value = this.value\n let input = this.internalValue\n\n if (this.isMultiple) {\n if (!Array.isArray(input)) {\n input = []\n }\n\n const length = input.length\n\n input = input.filter((item: any) => !this.valueComparator(item, value))\n\n if (input.length === length) {\n input.push(value)\n }\n } else if (this.trueValue !== undefined && this.falseValue !== undefined) {\n input = this.valueComparator(input, this.trueValue) ? this.falseValue : this.trueValue\n } else if (value) {\n input = this.valueComparator(input, value) ? null : value\n } else {\n input = !input\n }\n\n this.validate(true, input)\n this.internalValue = input\n this.hasColor = input\n },\n onFocus () {\n this.isFocused = true\n },\n /** @abstract */\n onKeydown (e: Event) {},\n },\n})\n"],"sourceRoot":""}