{"version":3,"sources":["webpack:///./node_modules/core-js/internals/same-value.js","webpack:///./node_modules/core-js/modules/es.object.is.js","webpack:///../../../src/components/VCounter/VCounter.ts","webpack:///../../../src/components/VCounter/index.ts","webpack:///../../../src/mixins/intersectable/index.ts","webpack:///../../../src/components/VTextField/VTextField.ts"],"names":["module","exports","Object","is","x","y","$","target","stat","mixins","Themeable","extend","name","functional","props","value","type","Number","String","default","max","render","h","ctx","parseInt","content","concat","isGreater","staticClass","class","_objectSpread","functionalThemeClasses","VCounter","intersectable","options","Vue","data","isIntersecting","mounted","Intersect","inserted","this","$el","onObserve","$vnode","destroyed","unbind","methods","entries","observer","i","length","onVisible","callback","consoleWarn","baseMixins","VInput","Intersectable","Loadable","dirtyTypes","directives","resize","ripple","inheritAttrs","appendOuterIcon","autofocus","Boolean","clearable","clearIcon","counter","counterValue","Function","filled","flat","fullWidth","label","outlined","placeholder","prefix","prependInnerIcon","persistentPlaceholder","reverse","rounded","shaped","singleLine","solo","soloInverted","suffix","badInput","labelWidth","prefixWidth","prependWidth","initialValue","isBooted","isClearing","computed","classes","call","isSingle","isSolo","isEnclosed","computedColor","Validatable","isFocused","color","computedCounterValue","internalValue","_toConsumableArray","toString","hasCounter","hasDetails","get","lazyValue","set","val","$emit","isDirty","_a","isLabelActive","includes","hasLabel","labelPosition","offset","labelValue","$vuetify","rtl","left","right","showLabel","watch","$nextTick","setLabelWidth","setPrefixWidth","created","$attrs","hasOwnProperty","breaking","_this","$watch","tryAutofocus","requestAnimationFrame","onResize","focus","onFocus","blur","e","_this2","window","$refs","input","clearableCallback","_this3","genAppendSlot","slot","$slots","push","genIcon","genSlot","genPrependInnerSlot","genIconSlot","append","appendIcon","genInputSlot","prepend","children","unshift","genClearIcon","$createElement","genCounter","attrs$","maxlength","dark","light","_c","_b","$scopedSlots","genControl","genDefaultSlot","genFieldset","genTextFieldSlot","genProgress","attrs","genLegend","genLabel","absolute","validationState","disabled","isDisabled","focused","for","computedId","VLabel","getSlot","width","span","domProps","innerHTML","style","undefined","convertToUnit","genInput","listeners","assign","listeners$","change","_this$attrs$","inputAttrs","title","_objectWithoutProperties","_excluded","id","readonly","isReadonly","on","onBlur","onInput","keydown","onKeyDown","ref","modifiers","quiet","genMessages","showDetails","messagesNode","counterNode","genAffix","_this4","onClick","root","attachedRoot","activeElement","validity","keyCode","keyCodes","enter","onMouseDown","preventDefault","stopPropagation","onMouseUp","hasMouseDown","Math","min","scrollWidth","offsetWidth","setPrependWidth","document","updateValue","hasColor"],"mappings":"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","file":"js/chunk-f8799982.08dcaaf7.js","sourcesContent":["'use strict';\n// `SameValue` abstract operation\n// https://tc39.es/ecma262/#sec-samevalue\n// eslint-disable-next-line es/no-object-is -- safe\nmodule.exports = Object.is || function is(x, y) {\n // eslint-disable-next-line no-self-compare -- NaN check\n return x === y ? x !== 0 || 1 / x === 1 / y : x !== x && y !== y;\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar is = require('../internals/same-value');\n\n// `Object.is` method\n// https://tc39.es/ecma262/#sec-object.is\n$({ target: 'Object', stat: true }, {\n is: is\n});\n","// Styles\nimport './VCounter.sass'\n\n// Mixins\nimport Themeable, { functionalThemeClasses } from '../../mixins/themeable'\n\n// Types\nimport { VNode } from 'vue'\nimport mixins from '../../util/mixins'\n\n/* @vue/component */\nexport default mixins(Themeable).extend({\n name: 'v-counter',\n\n functional: true,\n\n props: {\n value: {\n type: [Number, String],\n default: '',\n },\n max: [Number, String],\n },\n\n render (h, ctx): VNode {\n const { props } = ctx\n const max = parseInt(props.max, 10)\n const value = parseInt(props.value, 10)\n const content = max ? `${value} / ${max}` : String(props.value)\n const isGreater = max && (value > max)\n\n return h('div', {\n staticClass: 'v-counter',\n class: {\n 'error--text': isGreater,\n ...functionalThemeClasses(ctx),\n },\n }, content)\n },\n})\n","import VCounter from './VCounter'\n\nexport { VCounter }\nexport default VCounter\n","// Directives\nimport Intersect from '../../directives/intersect'\n\n// Utilities\nimport { consoleWarn } from '../../util/console'\n\n// Types\nimport Vue from 'vue'\n\nexport default function intersectable (options: { onVisible: string[] }) {\n return Vue.extend({\n name: 'intersectable',\n\n data: () => ({\n isIntersecting: false,\n }),\n\n mounted () {\n Intersect.inserted(this.$el as HTMLElement, {\n name: 'intersect',\n value: this.onObserve,\n }, this.$vnode)\n },\n\n destroyed () {\n Intersect.unbind(this.$el as HTMLElement, {\n name: 'intersect',\n value: this.onObserve,\n }, this.$vnode)\n },\n\n methods: {\n onObserve (entries: IntersectionObserverEntry[], observer: IntersectionObserver, isIntersecting: boolean) {\n this.isIntersecting = isIntersecting\n\n if (!isIntersecting) return\n\n for (let i = 0, length = options.onVisible.length; i < length; i++) {\n const callback = (this as any)[options.onVisible[i]]\n\n if (typeof callback === 'function') {\n callback()\n continue\n }\n\n consoleWarn(options.onVisible[i] + ' method is not available on the instance but referenced in intersectable mixin options')\n }\n },\n },\n })\n}\n","// Styles\nimport './VTextField.sass'\n\n// Extensions\nimport VInput from '../VInput'\n\n// Components\nimport VCounter from '../VCounter'\nimport VLabel from '../VLabel'\n\n// Mixins\nimport Intersectable from '../../mixins/intersectable'\nimport Loadable from '../../mixins/loadable'\nimport Validatable from '../../mixins/validatable'\n\n// Directives\nimport resize from '../../directives/resize'\nimport ripple from '../../directives/ripple'\n\n// Utilities\nimport { attachedRoot } from '../../util/dom'\nimport { convertToUnit, getSlot, keyCodes } from '../../util/helpers'\nimport { breaking, consoleWarn } from '../../util/console'\n\n// Types\nimport mixins from '../../util/mixins'\nimport { VNode, PropType } from 'vue/types'\n\nconst baseMixins = mixins(\n VInput,\n Intersectable({\n onVisible: [\n 'onResize',\n 'tryAutofocus',\n ],\n }),\n Loadable,\n)\ninterface options extends InstanceType {\n $refs: {\n label: HTMLElement\n input: HTMLInputElement\n 'prepend-inner': HTMLElement\n prefix: HTMLElement\n suffix: HTMLElement\n }\n}\n\nconst dirtyTypes = ['color', 'file', 'time', 'date', 'datetime-local', 'week', 'month']\n\n/* @vue/component */\nexport default baseMixins.extend().extend({\n name: 'v-text-field',\n\n directives: {\n resize,\n ripple,\n },\n\n inheritAttrs: false,\n\n props: {\n appendOuterIcon: String,\n autofocus: Boolean,\n clearable: Boolean,\n clearIcon: {\n type: String,\n default: '$clear',\n },\n counter: [Boolean, Number, String],\n counterValue: Function as PropType<(value: any) => number>,\n filled: Boolean,\n flat: Boolean,\n fullWidth: Boolean,\n label: String,\n outlined: Boolean,\n placeholder: String,\n prefix: String,\n prependInnerIcon: String,\n persistentPlaceholder: Boolean,\n reverse: Boolean,\n rounded: Boolean,\n shaped: Boolean,\n singleLine: Boolean,\n solo: Boolean,\n soloInverted: Boolean,\n suffix: String,\n type: {\n type: String,\n default: 'text',\n },\n },\n\n data: () => ({\n badInput: false,\n labelWidth: 0,\n prefixWidth: 0,\n prependWidth: 0,\n initialValue: null,\n isBooted: false,\n isClearing: false,\n }),\n\n computed: {\n classes (): object {\n return {\n ...VInput.options.computed.classes.call(this),\n 'v-text-field': true,\n 'v-text-field--full-width': this.fullWidth,\n 'v-text-field--prefix': this.prefix,\n 'v-text-field--single-line': this.isSingle,\n 'v-text-field--solo': this.isSolo,\n 'v-text-field--solo-inverted': this.soloInverted,\n 'v-text-field--solo-flat': this.flat,\n 'v-text-field--filled': this.filled,\n 'v-text-field--is-booted': this.isBooted,\n 'v-text-field--enclosed': this.isEnclosed,\n 'v-text-field--reverse': this.reverse,\n 'v-text-field--outlined': this.outlined,\n 'v-text-field--placeholder': this.placeholder,\n 'v-text-field--rounded': this.rounded,\n 'v-text-field--shaped': this.shaped,\n }\n },\n computedColor (): string | undefined {\n const computedColor = Validatable.options.computed.computedColor.call(this)\n\n if (!this.soloInverted || !this.isFocused) return computedColor\n\n return this.color || 'primary'\n },\n computedCounterValue (): number {\n if (typeof this.counterValue === 'function') {\n return this.counterValue(this.internalValue)\n }\n return [...(this.internalValue || '').toString()].length\n },\n hasCounter (): boolean {\n return this.counter !== false && this.counter != null\n },\n hasDetails (): boolean {\n return VInput.options.computed.hasDetails.call(this) || this.hasCounter\n },\n internalValue: {\n get (): any {\n return this.lazyValue\n },\n set (val: any) {\n this.lazyValue = val\n this.$emit('input', this.lazyValue)\n },\n },\n isDirty (): boolean {\n return this.lazyValue?.toString().length > 0 || this.badInput\n },\n isEnclosed (): boolean {\n return (\n this.filled ||\n this.isSolo ||\n this.outlined\n )\n },\n isLabelActive (): boolean {\n return this.isDirty || dirtyTypes.includes(this.type)\n },\n isSingle (): boolean {\n return (\n this.isSolo ||\n this.singleLine ||\n this.fullWidth ||\n // https://material.io/components/text-fields/#filled-text-field\n (this.filled && !this.hasLabel)\n )\n },\n isSolo (): boolean {\n return this.solo || this.soloInverted\n },\n labelPosition (): Record<'left' | 'right', string | number | undefined> {\n let offset = (this.prefix && !this.labelValue) ? this.prefixWidth : 0\n\n if (this.labelValue && this.prependWidth) offset -= this.prependWidth\n\n return (this.$vuetify.rtl === this.reverse) ? {\n left: offset,\n right: 'auto',\n } : {\n left: 'auto',\n right: offset,\n }\n },\n showLabel (): boolean {\n return this.hasLabel && !(this.isSingle && this.labelValue)\n },\n labelValue (): boolean {\n return this.isFocused || this.isLabelActive || this.persistentPlaceholder\n },\n },\n\n watch: {\n // labelValue: 'setLabelWidth', // moved to mounted, see #11533\n outlined: 'setLabelWidth',\n label () {\n this.$nextTick(this.setLabelWidth)\n },\n prefix () {\n this.$nextTick(this.setPrefixWidth)\n },\n isFocused: 'updateValue',\n value (val) {\n this.lazyValue = val\n },\n },\n\n created () {\n /* istanbul ignore next */\n if (this.$attrs.hasOwnProperty('box')) {\n breaking('box', 'filled', this)\n }\n\n /* istanbul ignore next */\n if (this.$attrs.hasOwnProperty('browser-autocomplete')) {\n breaking('browser-autocomplete', 'autocomplete', this)\n }\n\n /* istanbul ignore if */\n if (this.shaped && !(this.filled || this.outlined || this.isSolo)) {\n consoleWarn('shaped should be used with either filled or outlined', this)\n }\n },\n\n mounted () {\n // #11533\n this.$watch(() => this.labelValue, this.setLabelWidth)\n this.autofocus && this.tryAutofocus()\n requestAnimationFrame(() => {\n this.isBooted = true\n requestAnimationFrame(() => {\n if (!this.isIntersecting) {\n this.onResize()\n }\n })\n })\n },\n\n methods: {\n /** @public */\n focus () {\n this.onFocus()\n },\n /** @public */\n blur (e?: Event) {\n // https://github.com/vuetifyjs/vuetify/issues/5913\n // Safari tab order gets broken if called synchronous\n window.requestAnimationFrame(() => {\n this.$refs.input && this.$refs.input.blur()\n })\n },\n clearableCallback () {\n this.$refs.input && this.$refs.input.focus()\n this.$nextTick(() => this.internalValue = null)\n },\n genAppendSlot () {\n const slot = []\n\n if (this.$slots['append-outer']) {\n slot.push(this.$slots['append-outer'] as VNode[])\n } else if (this.appendOuterIcon) {\n slot.push(this.genIcon('appendOuter'))\n }\n\n return this.genSlot('append', 'outer', slot)\n },\n genPrependInnerSlot () {\n const slot = []\n\n if (this.$slots['prepend-inner']) {\n slot.push(this.$slots['prepend-inner'] as VNode[])\n } else if (this.prependInnerIcon) {\n slot.push(this.genIcon('prependInner'))\n }\n\n return this.genSlot('prepend', 'inner', slot)\n },\n genIconSlot () {\n const slot = []\n\n if (this.$slots.append) {\n slot.push(this.$slots.append as VNode[])\n } else if (this.appendIcon) {\n slot.push(this.genIcon('append'))\n }\n\n return this.genSlot('append', 'inner', slot)\n },\n genInputSlot () {\n const input = VInput.options.methods.genInputSlot.call(this)\n\n const prepend = this.genPrependInnerSlot()\n\n if (prepend) {\n input.children = input.children || []\n input.children.unshift(prepend)\n }\n\n return input\n },\n genClearIcon () {\n if (!this.clearable) return null\n\n // if the text field has no content then don't display the clear icon.\n // We add an empty div because other controls depend on a ref to append inner\n if (!this.isDirty) {\n return this.genSlot('append', 'inner', [\n this.$createElement('div'),\n ])\n }\n\n return this.genSlot('append', 'inner', [\n this.genIcon('clear', this.clearableCallback),\n ])\n },\n genCounter () {\n if (!this.hasCounter) return null\n\n const max = this.counter === true ? this.attrs$.maxlength : this.counter\n\n const props = {\n dark: this.dark,\n light: this.light,\n max,\n value: this.computedCounterValue,\n }\n\n return this.$scopedSlots.counter?.({ props }) ?? this.$createElement(VCounter, { props })\n },\n genControl () {\n return VInput.options.methods.genControl.call(this)\n },\n genDefaultSlot () {\n return [\n this.genFieldset(),\n this.genTextFieldSlot(),\n this.genClearIcon(),\n this.genIconSlot(),\n this.genProgress(),\n ]\n },\n genFieldset () {\n if (!this.outlined) return null\n\n return this.$createElement('fieldset', {\n attrs: {\n 'aria-hidden': true,\n },\n }, [this.genLegend()])\n },\n genLabel () {\n if (!this.showLabel) return null\n\n const data = {\n props: {\n absolute: true,\n color: this.validationState,\n dark: this.dark,\n disabled: this.isDisabled,\n focused: !this.isSingle && (this.isFocused || !!this.validationState),\n for: this.computedId,\n left: this.labelPosition.left,\n light: this.light,\n right: this.labelPosition.right,\n value: this.labelValue,\n },\n }\n\n return this.$createElement(VLabel, data, getSlot(this, 'label') || this.label)\n },\n genLegend () {\n const width = !this.singleLine && (this.labelValue || this.isDirty) ? this.labelWidth : 0\n const span = this.$createElement('span', {\n domProps: { innerHTML: '​' },\n staticClass: 'notranslate',\n })\n\n return this.$createElement('legend', {\n style: {\n width: !this.isSingle ? convertToUnit(width) : undefined,\n },\n }, [span])\n },\n genInput () {\n const listeners = Object.assign({}, this.listeners$)\n delete listeners.change // Change should not be bound externally\n const { title, ...inputAttrs } = this.attrs$\n\n return this.$createElement('input', {\n style: {},\n domProps: {\n value: (this.type === 'number' && Object.is(this.lazyValue, -0)) ? '-0' : this.lazyValue,\n },\n attrs: {\n ...inputAttrs,\n autofocus: this.autofocus,\n disabled: this.isDisabled,\n id: this.computedId,\n placeholder: this.persistentPlaceholder || this.isFocused || !this.hasLabel ? this.placeholder : undefined,\n readonly: this.isReadonly,\n type: this.type,\n },\n on: Object.assign(listeners, {\n blur: this.onBlur,\n input: this.onInput,\n focus: this.onFocus,\n keydown: this.onKeyDown,\n }),\n ref: 'input',\n directives: [{\n name: 'resize',\n modifiers: { quiet: true },\n value: this.onResize,\n }],\n })\n },\n genMessages () {\n if (!this.showDetails) return null\n\n const messagesNode = VInput.options.methods.genMessages.call(this)\n const counterNode = this.genCounter()\n\n return this.$createElement('div', {\n staticClass: 'v-text-field__details',\n }, [\n messagesNode,\n counterNode,\n ])\n },\n genTextFieldSlot () {\n return this.$createElement('div', {\n staticClass: 'v-text-field__slot',\n }, [\n this.genLabel(),\n this.prefix ? this.genAffix('prefix') : null,\n this.genInput(),\n this.suffix ? this.genAffix('suffix') : null,\n ])\n },\n genAffix (type: 'prefix' | 'suffix') {\n return this.$createElement('div', {\n class: `v-text-field__${type}`,\n ref: type,\n }, this[type])\n },\n onBlur (e?: Event) {\n this.isFocused = false\n e && this.$nextTick(() => this.$emit('blur', e))\n },\n onClick () {\n if (this.isFocused || this.isDisabled || !this.$refs.input) return\n\n this.$refs.input.focus()\n },\n onFocus (e?: Event) {\n if (!this.$refs.input) return\n\n const root = attachedRoot(this.$el)\n if (!root) return\n\n if (root.activeElement !== this.$refs.input) {\n return this.$refs.input.focus()\n }\n\n if (!this.isFocused) {\n this.isFocused = true\n e && this.$emit('focus', e)\n }\n },\n onInput (e: Event) {\n const target = e.target as HTMLInputElement\n this.internalValue = target.value\n this.badInput = target.validity && target.validity.badInput\n },\n onKeyDown (e: KeyboardEvent) {\n if (\n e.keyCode === keyCodes.enter &&\n this.lazyValue !== this.initialValue\n ) {\n this.initialValue = this.lazyValue\n this.$emit('change', this.initialValue)\n }\n\n this.$emit('keydown', e)\n },\n onMouseDown (e: Event) {\n // Prevent input from being blurred\n if (e.target !== this.$refs.input) {\n e.preventDefault()\n e.stopPropagation()\n }\n\n VInput.options.methods.onMouseDown.call(this, e)\n },\n onMouseUp (e: Event) {\n if (this.hasMouseDown) this.focus()\n\n VInput.options.methods.onMouseUp.call(this, e)\n },\n setLabelWidth () {\n if (!this.outlined) return\n\n this.labelWidth = this.$refs.label\n ? Math.min(this.$refs.label.scrollWidth * 0.75 + 6, (this.$el as HTMLElement).offsetWidth - 24)\n : 0\n },\n setPrefixWidth () {\n if (!this.$refs.prefix) return\n\n this.prefixWidth = this.$refs.prefix.offsetWidth\n },\n setPrependWidth () {\n if (!this.outlined || !this.$refs['prepend-inner']) return\n\n this.prependWidth = this.$refs['prepend-inner'].offsetWidth\n },\n tryAutofocus () {\n if (\n !this.autofocus ||\n typeof document === 'undefined' ||\n !this.$refs.input) return false\n\n const root = attachedRoot(this.$el)\n if (!root || root.activeElement === this.$refs.input) return false\n\n this.$refs.input.focus()\n\n return true\n },\n updateValue (val: boolean) {\n // Sets validationState from validatable\n this.hasColor = val\n\n if (val) {\n this.initialValue = this.lazyValue\n } else if (this.initialValue !== this.lazyValue) {\n this.$emit('change', this.lazyValue)\n }\n },\n onResize () {\n this.setLabelWidth()\n this.setPrefixWidth()\n this.setPrependWidth()\n },\n },\n})\n"],"sourceRoot":""}