{"version":3,"file":"VOverflowBtn.mjs","names":["VSelect","VAutocomplete","VTextField","VBtn","consoleWarn","extend","name","props","editable","Boolean","segmented","computed","classes","options","call","isAnyValueAllowed","isSingle","computedItems","allItems","filteredItems","labelValue","isFocused","persistentPlaceholder","isLabelActive","methods","genSelections","genCommaSelection","item","index","last","genSegmentedBtn","genInput","input","data","domProps","value","internalSearch","attrs","readonly","genLabel","label","style","itemValue","getValue","itemObj","find","i","text","callback","$createElement","on","click","e","stopPropagation","updateValue","val","initialValue","lazyValue","$emit"],"sources":["../../../src/components/VOverflowBtn/VOverflowBtn.ts"],"sourcesContent":["// @ts-nocheck\n/* eslint-disable */\n\n// Styles\nimport './VOverflowBtn.sass'\n\n// Extensions\nimport VSelect from '../VSelect/VSelect'\nimport VAutocomplete from '../VAutocomplete'\nimport VTextField from '../VTextField/VTextField'\n\n// Components\nimport VBtn from '../VBtn'\n\n// Utilities\nimport { consoleWarn } from '../../util/console'\n\n/* @vue/component */\nexport default VAutocomplete.extend({\n name: 'v-overflow-btn',\n\n props: {\n editable: Boolean,\n segmented: Boolean,\n },\n\n computed: {\n classes (): object {\n return {\n ...VAutocomplete.options.computed.classes.call(this),\n 'v-overflow-btn': true,\n 'v-overflow-btn--segmented': this.segmented,\n 'v-overflow-btn--editable': this.editable,\n }\n },\n isAnyValueAllowed (): boolean {\n return this.editable ||\n VAutocomplete.options.computed.isAnyValueAllowed.call(this)\n },\n isSingle (): true {\n return true\n },\n computedItems (): object[] {\n return this.segmented ? this.allItems : this.filteredItems\n },\n labelValue (): boolean {\n return (this.isFocused && !this.persistentPlaceholder) || this.isLabelActive\n },\n },\n\n methods: {\n genSelections () {\n return this.editable\n ? VAutocomplete.options.methods.genSelections.call(this)\n : VSelect.options.methods.genSelections.call(this) // Override v-autocomplete's override\n },\n genCommaSelection (item: any, index: number, last: boolean) {\n return this.segmented\n ? this.genSegmentedBtn(item)\n : VSelect.options.methods.genCommaSelection.call(this, item, index, last)\n },\n genInput () {\n const input = VTextField.options.methods.genInput.call(this)\n\n input.data = input.data || {}\n input.data.domProps!.value = this.editable ? this.internalSearch : ''\n input.data.attrs!.readonly = !this.isAnyValueAllowed\n\n return input\n },\n genLabel () {\n if (this.editable && this.isFocused) return null\n\n const label = VTextField.options.methods.genLabel.call(this)\n\n if (!label) return label\n\n label.data = label.data || {}\n\n // Reset previously set styles from parent\n label.data.style = {}\n\n return label\n },\n genSegmentedBtn (item: any) {\n const itemValue = this.getValue(item)\n const itemObj = this.computedItems.find(i => this.getValue(i) === itemValue) || item\n\n if (!itemObj.text || !itemObj.callback) {\n consoleWarn('When using \"segmented\" prop without a selection slot, items must contain both a text and callback property', this)\n return null\n }\n\n return this.$createElement(VBtn, {\n props: { text: true },\n on: {\n click (e: Event) {\n e.stopPropagation()\n itemObj.callback(e)\n },\n },\n }, [itemObj.text])\n },\n updateValue (val: boolean) {\n if (val) {\n this.initialValue = this.lazyValue\n } else if (this.initialValue !== this.lazyValue) {\n this.$emit('change', this.lazyValue)\n }\n },\n },\n})\n"],"mappings":"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"}