{"version":3,"sources":["webpack:///../../../src/components/VList/VListItemAction.ts","webpack:///../../../src/components/VList/VListItemGroup.ts","webpack:///../../../src/components/VToolbar/index.ts","webpack:///../../../src/components/VList/VListItemIcon.ts","webpack:///../../../src/components/VList/VListGroup.ts","webpack:///../../../src/components/VList/index.ts","webpack:///../../../src/components/VItemGroup/VItemGroup.ts","webpack:///../../../src/components/VAvatar/index.ts","webpack:///../../../src/components/VAvatar/VAvatar.ts","webpack:///../../../src/components/VList/VListItemAvatar.ts","webpack:///../../../src/components/VList/VList.ts","webpack:///./node_modules/core-js/modules/es.array.splice.js","webpack:///./node_modules/core-js/modules/es.array.find-index.js","webpack:///../../../src/components/VDivider/VDivider.ts","webpack:///../../../src/components/VList/VListItem.ts","webpack:///../../../src/mixins/menuable/index.ts"],"names":["name","functional","render","children","data","filteredChild","VNode","h","provide","isInGroup","listItemGroup","this","computed","classes","methods","genData","setTextColor","attrs","role","VToolbarTitle","VToolbarItems","baseMixins","directives","ripple","props","activeClass","type","default","appendIcon","color","disabled","group","noAction","prependIcon","Boolean","subGroup","watch","isActive","list","listClick","$route","created","register","value","matchRoute","beforeDestroy","unregister","click","genIcon","$createElement","genAppendIcon","icon","$slots","staticClass","genHeader","String","class","inputValue","on","genItems","showLazyContent","genPrependIcon","onRouteChange","to","toggle","_uid","isBooted","VListItemActionText","VListItemContent","VListItemTitle","VListItemSubtitle","BaseItemGroup","mandatory","max","Number","multiple","tag","internalLazyValue","undefined","items","themeClasses","selectedIndex","selectedItem","indexOf","selectedItems","filter","selectedValues","internalValue","Array","toggleMethod","v","getValue","item","i","onClick","index","push","valueIndex","updateInternalValue","updateItem","updateItemsState","updateMultiple","updateSingle","updateMandatory","defaultValue","val","isSame","itemGroup","left","right","size","roundedClasses","styles","height","minWidth","width","measurableStyles","style","$listeners","setBackgroundColor","horizontal","tile","isInList","inject","isInMenu","isInNav","dense","expand","flat","nav","rounded","subheader","threeLine","twoLine","groups","findIndex","g","content","splice","attrs$","$","toAbsoluteIndex","toInteger","toLength","toObject","arraySpeciesCreate","createProperty","arrayMethodHasSpeciesSupport","HAS_SPECIES_SUPPORT","Math","min","MAX_SAFE_INTEGER","MAXIMUM_ALLOWED_LENGTH_EXCEEDED","target","proto","forced","start","deleteCount","insertCount","actualDeleteCount","A","k","from","O","len","length","actualStart","argumentsLength","arguments","TypeError","$findIndex","addToUnscopables","FIND_INDEX","SKIPS_HOLES","callbackfn","inset","vertical","$attrs","orientation","Ripple","inheritAttrs","inactive","link","selectable","proxyClass","isClickable","hasOwnProperty","e","$el","blur","genAttrs","tabindex","keydown","$scopedSlots","active","allowOverflow","light","dark","maxWidth","nudgeBottom","nudgeLeft","nudgeRight","nudgeTop","nudgeWidth","offsetOverflow","openOnClick","positionX","positionY","zIndex","absoluteX","absoluteY","activatedBy","activatorFixed","dimensions","activator","top","bottom","offsetTop","scrollHeight","offsetLeft","hasJustFocused","hasWindow","inputActivator","isContentActive","pageWidth","pageYOffset","stackClass","stackMinZIndex","computedLeft","a","c","activatorLeft","attach","isNaN","parseInt","computedTop","hasActivator","beforeMount","window","absolutePosition","activate","calcLeft","calcXOverflow","calcTop","calcYOverflow","xOverflow","documentHeight","toTop","contentHeight","totalHeight","isOverflowing","callActivate","callDeactivate","checkForPageYOffset","checkActivatorFixed","el","deactivate","genActivatorListeners","listeners","getInnerHeight","document","getOffsetLeft","getOffsetTop","getRoundedBoundedClientRect","rect","measure","sneakPeek","requestAnimationFrame","cb","startTransition","Promise","resolve","updateDimensions"],"mappings":"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","file":"js/chunk-66a78d60.e8f83ab6.js","sourcesContent":["// Types\nimport Vue, { VNode } from 'vue'\n\n/* @vue/component */\nexport default Vue.extend({\n name: 'v-list-item-action',\n\n functional: true,\n\n render (h, { data, children = [] }): VNode {\n data.staticClass = data.staticClass ? `v-list-item__action ${data.staticClass}` : 'v-list-item__action'\n const filteredChild = children.filter(VNode => {\n return VNode.isComment === false && VNode.text !== ' '\n })\n if (filteredChild.length > 1) data.staticClass += ' v-list-item__action--stack'\n\n return h('div', data, children)\n },\n})\n","// Styles\nimport './VListItemGroup.sass'\n\n// Extensions\nimport { BaseItemGroup } from '../VItemGroup/VItemGroup'\n\n// Mixins\nimport Colorable from '../../mixins/colorable'\n\n// Utilities\nimport mixins from '../../util/mixins'\n\nexport default mixins(\n BaseItemGroup,\n Colorable\n).extend({\n name: 'v-list-item-group',\n\n provide () {\n return {\n isInGroup: true,\n listItemGroup: this,\n }\n },\n\n computed: {\n classes (): object {\n return {\n ...BaseItemGroup.options.computed.classes.call(this),\n 'v-list-item-group': true,\n }\n },\n },\n\n methods: {\n genData (): object {\n return this.setTextColor(this.color, {\n ...BaseItemGroup.options.methods.genData.call(this),\n attrs: {\n role: 'listbox',\n },\n })\n },\n },\n})\n","// Components\nimport VToolbar from './VToolbar'\n\n// Utilities\nimport { createSimpleFunctional } from '../../util/helpers'\n\nconst VToolbarTitle = createSimpleFunctional('v-toolbar__title')\nconst VToolbarItems = createSimpleFunctional('v-toolbar__items')\n\nexport {\n VToolbar,\n VToolbarItems,\n VToolbarTitle,\n}\n\nexport default {\n $_vuetify_subcomponents: {\n VToolbar,\n VToolbarItems,\n VToolbarTitle,\n },\n}\n","// Types\nimport Vue, { VNode } from 'vue'\n\n/* @vue/component */\nexport default Vue.extend({\n name: 'v-list-item-icon',\n\n functional: true,\n\n render (h, { data, children }): VNode {\n data.staticClass = (`v-list-item__icon ${data.staticClass || ''}`).trim()\n\n return h('div', data, children)\n },\n})\n","// Styles\nimport './VListGroup.sass'\n\n// Components\nimport VIcon from '../VIcon'\nimport VList from './VList'\nimport VListItem from './VListItem'\nimport VListItemIcon from './VListItemIcon'\n\n// Mixins\nimport BindsAttrs from '../../mixins/binds-attrs'\nimport Bootable from '../../mixins/bootable'\nimport Colorable from '../../mixins/colorable'\nimport Toggleable from '../../mixins/toggleable'\nimport { inject as RegistrableInject } from '../../mixins/registrable'\n\n// Directives\nimport ripple from '../../directives/ripple'\n\n// Transitions\nimport { VExpandTransition } from '../transitions'\n\n// Utils\nimport mixins, { ExtractVue } from '../../util/mixins'\nimport { getSlot } from '../../util/helpers'\n\n// Types\nimport { VNode } from 'vue'\nimport { Route } from 'vue-router'\n\nconst baseMixins = mixins(\n BindsAttrs,\n Bootable,\n Colorable,\n RegistrableInject('list'),\n Toggleable\n)\n\ntype VListInstance = InstanceType\n\ninterface options extends ExtractVue {\n list: VListInstance\n $refs: {\n group: HTMLElement\n }\n $route: Route\n}\n\nexport default baseMixins.extend().extend({\n name: 'v-list-group',\n\n directives: { ripple },\n\n props: {\n activeClass: {\n type: String,\n default: '',\n },\n appendIcon: {\n type: String,\n default: '$expand',\n },\n color: {\n type: String,\n default: 'primary',\n },\n disabled: Boolean,\n group: String,\n noAction: Boolean,\n prependIcon: String,\n ripple: {\n type: [Boolean, Object],\n default: true,\n },\n subGroup: Boolean,\n },\n\n computed: {\n classes (): object {\n return {\n 'v-list-group--active': this.isActive,\n 'v-list-group--disabled': this.disabled,\n 'v-list-group--no-action': this.noAction,\n 'v-list-group--sub-group': this.subGroup,\n }\n },\n },\n\n watch: {\n isActive (val: boolean) {\n /* istanbul ignore else */\n if (!this.subGroup && val) {\n this.list && this.list.listClick(this._uid)\n }\n },\n $route: 'onRouteChange',\n },\n\n created () {\n this.list && this.list.register(this)\n\n if (this.group &&\n this.$route &&\n this.value == null\n ) {\n this.isActive = this.matchRoute(this.$route.path)\n }\n },\n\n beforeDestroy () {\n this.list && this.list.unregister(this)\n },\n\n methods: {\n click (e: Event) {\n if (this.disabled) return\n\n this.isBooted = true\n\n this.$emit('click', e)\n this.$nextTick(() => (this.isActive = !this.isActive))\n },\n genIcon (icon: string | false): VNode {\n return this.$createElement(VIcon, icon)\n },\n genAppendIcon (): VNode | null {\n const icon = !this.subGroup ? this.appendIcon : false\n\n if (!icon && !this.$slots.appendIcon) return null\n\n return this.$createElement(VListItemIcon, {\n staticClass: 'v-list-group__header__append-icon',\n }, [\n this.$slots.appendIcon || this.genIcon(icon),\n ])\n },\n genHeader (): VNode {\n return this.$createElement(VListItem, {\n staticClass: 'v-list-group__header',\n attrs: {\n 'aria-expanded': String(this.isActive),\n role: 'button',\n },\n class: {\n [this.activeClass]: this.isActive,\n },\n props: {\n inputValue: this.isActive,\n },\n directives: [{\n name: 'ripple',\n value: this.ripple,\n }],\n on: {\n ...this.listeners$,\n click: this.click,\n },\n }, [\n this.genPrependIcon(),\n this.$slots.activator,\n this.genAppendIcon(),\n ])\n },\n genItems (): VNode[] {\n return this.showLazyContent(() => [\n this.$createElement('div', {\n staticClass: 'v-list-group__items',\n directives: [{\n name: 'show',\n value: this.isActive,\n }],\n }, getSlot(this)),\n ])\n },\n genPrependIcon (): VNode | null {\n const icon = this.subGroup && this.prependIcon == null\n ? '$subgroup'\n : this.prependIcon\n\n if (!icon && !this.$slots.prependIcon) return null\n\n return this.$createElement(VListItemIcon, {\n staticClass: 'v-list-group__header__prepend-icon',\n }, [\n this.$slots.prependIcon || this.genIcon(icon),\n ])\n },\n onRouteChange (to: Route) {\n /* istanbul ignore if */\n if (!this.group) return\n\n const isActive = this.matchRoute(to.path)\n\n /* istanbul ignore else */\n if (isActive && this.isActive !== isActive) {\n this.list && this.list.listClick(this._uid)\n }\n\n this.isActive = isActive\n },\n toggle (uid: number) {\n const isActive = this._uid === uid\n\n if (isActive) this.isBooted = true\n this.$nextTick(() => (this.isActive = isActive))\n },\n matchRoute (to: string) {\n return to.match(this.group) !== null\n },\n },\n\n render (h): VNode {\n return h('div', this.setTextColor(this.isActive && this.color, {\n staticClass: 'v-list-group',\n class: this.classes,\n }), [\n this.genHeader(),\n h(VExpandTransition, this.genItems()),\n ])\n },\n})\n","import { createSimpleFunctional } from '../../util/helpers'\n\nimport VList from './VList'\nimport VListGroup from './VListGroup'\nimport VListItem from './VListItem'\nimport VListItemGroup from './VListItemGroup'\nimport VListItemAction from './VListItemAction'\nimport VListItemAvatar from './VListItemAvatar'\nimport VListItemIcon from './VListItemIcon'\n\nexport const VListItemActionText = createSimpleFunctional('v-list-item__action-text', 'span')\nexport const VListItemContent = createSimpleFunctional('v-list-item__content', 'div')\nexport const VListItemTitle = createSimpleFunctional('v-list-item__title', 'div')\nexport const VListItemSubtitle = createSimpleFunctional('v-list-item__subtitle', 'div')\n\nexport {\n VList,\n VListGroup,\n VListItem,\n VListItemAction,\n VListItemAvatar,\n VListItemIcon,\n VListItemGroup,\n}\n\nexport default {\n $_vuetify_subcomponents: {\n VList,\n VListGroup,\n VListItem,\n VListItemAction,\n VListItemActionText,\n VListItemAvatar,\n VListItemContent,\n VListItemGroup,\n VListItemIcon,\n VListItemSubtitle,\n VListItemTitle,\n },\n}\n","// Styles\nimport './VItemGroup.sass'\n\n// Mixins\nimport Groupable from '../../mixins/groupable'\nimport Proxyable from '../../mixins/proxyable'\nimport Themeable from '../../mixins/themeable'\n\n// Utilities\nimport mixins from '../../util/mixins'\nimport { consoleWarn } from '../../util/console'\n\n// Types\nimport { VNode } from 'vue/types'\n\nexport type GroupableInstance = InstanceType & {\n id?: string\n to?: any\n value?: any\n }\n\nexport const BaseItemGroup = mixins(\n Proxyable,\n Themeable\n).extend({\n name: 'base-item-group',\n\n props: {\n activeClass: {\n type: String,\n default: 'v-item--active',\n },\n mandatory: Boolean,\n max: {\n type: [Number, String],\n default: null,\n },\n multiple: Boolean,\n tag: {\n type: String,\n default: 'div',\n },\n },\n\n data () {\n return {\n // As long as a value is defined, show it\n // Otherwise, check if multiple\n // to determine which default to provide\n internalLazyValue: this.value !== undefined\n ? this.value\n : this.multiple ? [] : undefined,\n items: [] as GroupableInstance[],\n }\n },\n\n computed: {\n classes (): Record {\n return {\n 'v-item-group': true,\n ...this.themeClasses,\n }\n },\n selectedIndex (): number {\n return (this.selectedItem && this.items.indexOf(this.selectedItem)) || -1\n },\n selectedItem (): GroupableInstance | undefined {\n if (this.multiple) return undefined\n\n return this.selectedItems[0]\n },\n selectedItems (): GroupableInstance[] {\n return this.items.filter((item, index) => {\n return this.toggleMethod(this.getValue(item, index))\n })\n },\n selectedValues (): any[] {\n if (this.internalValue == null) return []\n\n return Array.isArray(this.internalValue)\n ? this.internalValue\n : [this.internalValue]\n },\n toggleMethod (): (v: any) => boolean {\n if (!this.multiple) {\n return (v: any) => this.internalValue === v\n }\n\n const internalValue = this.internalValue\n if (Array.isArray(internalValue)) {\n return (v: any) => internalValue.includes(v)\n }\n\n return () => false\n },\n },\n\n watch: {\n internalValue: 'updateItemsState',\n items: 'updateItemsState',\n },\n\n created () {\n if (this.multiple && !Array.isArray(this.internalValue)) {\n consoleWarn('Model must be bound to an array if the multiple property is true.', this)\n }\n },\n\n methods: {\n\n genData (): object {\n return {\n class: this.classes,\n }\n },\n getValue (item: GroupableInstance, i: number): unknown {\n return item.value == null || item.value === ''\n ? i\n : item.value\n },\n onClick (item: GroupableInstance) {\n this.updateInternalValue(\n this.getValue(item, this.items.indexOf(item))\n )\n },\n register (item: GroupableInstance) {\n const index = this.items.push(item) - 1\n\n item.$on('change', () => this.onClick(item))\n\n // If no value provided and mandatory,\n // assign first registered item\n if (this.mandatory && !this.selectedValues.length) {\n this.updateMandatory()\n }\n\n this.updateItem(item, index)\n },\n unregister (item: GroupableInstance) {\n if (this._isDestroyed) return\n\n const index = this.items.indexOf(item)\n const value = this.getValue(item, index)\n\n this.items.splice(index, 1)\n\n const valueIndex = this.selectedValues.indexOf(value)\n\n // Items is not selected, do nothing\n if (valueIndex < 0) return\n\n // If not mandatory, use regular update process\n if (!this.mandatory) {\n return this.updateInternalValue(value)\n }\n\n // Remove the value\n if (this.multiple && Array.isArray(this.internalValue)) {\n this.internalValue = this.internalValue.filter(v => v !== value)\n } else {\n this.internalValue = undefined\n }\n\n // If mandatory and we have no selection\n // add the last item as value\n /* istanbul ignore else */\n if (!this.selectedItems.length) {\n this.updateMandatory(true)\n }\n },\n updateItem (item: GroupableInstance, index: number) {\n const value = this.getValue(item, index)\n\n item.isActive = this.toggleMethod(value)\n },\n // https://github.com/vuetifyjs/vuetify/issues/5352\n updateItemsState () {\n this.$nextTick(() => {\n if (this.mandatory &&\n !this.selectedItems.length\n ) {\n return this.updateMandatory()\n }\n\n // TODO: Make this smarter so it\n // doesn't have to iterate every\n // child in an update\n this.items.forEach(this.updateItem)\n })\n },\n updateInternalValue (value: any) {\n this.multiple\n ? this.updateMultiple(value)\n : this.updateSingle(value)\n },\n updateMandatory (last?: boolean) {\n if (!this.items.length) return\n\n const items = this.items.slice()\n\n if (last) items.reverse()\n\n const item = items.find(item => !item.disabled)\n\n // If no tabs are available\n // aborts mandatory value\n if (!item) return\n\n const index = this.items.indexOf(item)\n\n this.updateInternalValue(\n this.getValue(item, index)\n )\n },\n updateMultiple (value: any) {\n const defaultValue = Array.isArray(this.internalValue)\n ? this.internalValue\n : []\n const internalValue = defaultValue.slice()\n const index = internalValue.findIndex(val => val === value)\n\n if (\n this.mandatory &&\n // Item already exists\n index > -1 &&\n // value would be reduced below min\n internalValue.length - 1 < 1\n ) return\n\n if (\n // Max is set\n this.max != null &&\n // Item doesn't exist\n index < 0 &&\n // value would be increased above max\n internalValue.length + 1 > this.max\n ) return\n\n index > -1\n ? internalValue.splice(index, 1)\n : internalValue.push(value)\n\n this.internalValue = internalValue\n },\n updateSingle (value: any) {\n const isSame = value === this.internalValue\n\n if (this.mandatory && isSame) return\n\n this.internalValue = isSame ? undefined : value\n },\n },\n\n render (h): VNode {\n return h(this.tag, this.genData(), this.$slots.default)\n },\n})\n\nexport default BaseItemGroup.extend({\n name: 'v-item-group',\n\n provide (): object {\n return {\n itemGroup: this,\n }\n },\n})\n","import VAvatar from './VAvatar'\n\nexport { VAvatar }\nexport default VAvatar\n","import './VAvatar.sass'\n\n// Mixins\nimport Colorable from '../../mixins/colorable'\nimport Measurable from '../../mixins/measurable'\nimport Roundable from '../../mixins/roundable'\n\n// Utilities\nimport { convertToUnit } from '../../util/helpers'\n\n// Types\nimport { VNode } from 'vue'\nimport mixins from '../../util/mixins'\n\nexport default mixins(\n Colorable,\n Measurable,\n Roundable,\n /* @vue/component */\n).extend({\n name: 'v-avatar',\n\n props: {\n left: Boolean,\n right: Boolean,\n size: {\n type: [Number, String],\n default: 48,\n },\n },\n\n computed: {\n classes (): object {\n return {\n 'v-avatar--left': this.left,\n 'v-avatar--right': this.right,\n ...this.roundedClasses,\n }\n },\n styles (): object {\n return {\n height: convertToUnit(this.size),\n minWidth: convertToUnit(this.size),\n width: convertToUnit(this.size),\n ...this.measurableStyles,\n }\n },\n },\n\n render (h): VNode {\n const data = {\n staticClass: 'v-avatar',\n class: this.classes,\n style: this.styles,\n on: this.$listeners,\n }\n\n return h('div', this.setBackgroundColor(this.color, data), this.$slots.default)\n },\n})\n","// Components\nimport VAvatar from '../VAvatar'\n\n// Types\nimport { VNode } from 'vue'\n\n/* @vue/component */\nexport default VAvatar.extend({\n name: 'v-list-item-avatar',\n\n props: {\n horizontal: Boolean,\n size: {\n type: [Number, String],\n default: 40,\n },\n },\n\n computed: {\n classes (): object {\n return {\n 'v-list-item__avatar--horizontal': this.horizontal,\n ...VAvatar.options.computed.classes.call(this),\n 'v-avatar--tile': this.tile || this.horizontal,\n }\n },\n },\n\n render (h): VNode {\n const render = VAvatar.options.render.call(this, h)\n\n render.data = render.data || {}\n render.data.staticClass += ' v-list-item__avatar'\n\n return render\n },\n})\n","// Styles\nimport './VList.sass'\nimport VListGroup from './VListGroup'\n\n// Components\nimport VSheet from '../VSheet/VSheet'\n\n// Types\nimport { VNode } from 'vue'\n\ntype VListGroupInstance = InstanceType\n\ninterface options extends InstanceType {\n isInMenu: boolean\n isInNav: boolean\n}\n\n/* @vue/component */\nexport default VSheet.extend().extend({\n name: 'v-list',\n\n provide (): object {\n return {\n isInList: true,\n list: this,\n }\n },\n\n inject: {\n isInMenu: {\n default: false,\n },\n isInNav: {\n default: false,\n },\n },\n\n props: {\n dense: Boolean,\n disabled: Boolean,\n expand: Boolean,\n flat: Boolean,\n nav: Boolean,\n rounded: Boolean,\n subheader: Boolean,\n threeLine: Boolean,\n twoLine: Boolean,\n },\n\n data: () => ({\n groups: [] as VListGroupInstance[],\n }),\n\n computed: {\n classes (): object {\n return {\n ...VSheet.options.computed.classes.call(this),\n 'v-list--dense': this.dense,\n 'v-list--disabled': this.disabled,\n 'v-list--flat': this.flat,\n 'v-list--nav': this.nav,\n 'v-list--rounded': this.rounded,\n 'v-list--subheader': this.subheader,\n 'v-list--two-line': this.twoLine,\n 'v-list--three-line': this.threeLine,\n }\n },\n },\n\n methods: {\n register (content: VListGroupInstance) {\n this.groups.push(content)\n },\n unregister (content: VListGroupInstance) {\n const index = this.groups.findIndex(g => g._uid === content._uid)\n\n if (index > -1) this.groups.splice(index, 1)\n },\n listClick (uid: number) {\n if (this.expand) return\n\n for (const group of this.groups) {\n group.toggle(uid)\n }\n },\n },\n\n render (h): VNode {\n const data = {\n staticClass: 'v-list',\n class: this.classes,\n style: this.styles,\n attrs: {\n role: this.isInNav || this.isInMenu ? undefined : 'list',\n ...this.attrs$,\n },\n }\n\n return h(this.tag, this.setBackgroundColor(this.color, data), [this.$slots.default])\n },\n})\n","'use strict';\nvar $ = require('../internals/export');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\nvar toInteger = require('../internals/to-integer');\nvar toLength = require('../internals/to-length');\nvar toObject = require('../internals/to-object');\nvar arraySpeciesCreate = require('../internals/array-species-create');\nvar createProperty = require('../internals/create-property');\nvar arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support');\n\nvar HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('splice');\n\nvar max = Math.max;\nvar min = Math.min;\nvar MAX_SAFE_INTEGER = 0x1FFFFFFFFFFFFF;\nvar MAXIMUM_ALLOWED_LENGTH_EXCEEDED = 'Maximum allowed length exceeded';\n\n// `Array.prototype.splice` method\n// https://tc39.es/ecma262/#sec-array.prototype.splice\n// with adding support of @@species\n$({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT }, {\n splice: function splice(start, deleteCount /* , ...items */) {\n var O = toObject(this);\n var len = toLength(O.length);\n var actualStart = toAbsoluteIndex(start, len);\n var argumentsLength = arguments.length;\n var insertCount, actualDeleteCount, A, k, from, to;\n if (argumentsLength === 0) {\n insertCount = actualDeleteCount = 0;\n } else if (argumentsLength === 1) {\n insertCount = 0;\n actualDeleteCount = len - actualStart;\n } else {\n insertCount = argumentsLength - 2;\n actualDeleteCount = min(max(toInteger(deleteCount), 0), len - actualStart);\n }\n if (len + insertCount - actualDeleteCount > MAX_SAFE_INTEGER) {\n throw TypeError(MAXIMUM_ALLOWED_LENGTH_EXCEEDED);\n }\n A = arraySpeciesCreate(O, actualDeleteCount);\n for (k = 0; k < actualDeleteCount; k++) {\n from = actualStart + k;\n if (from in O) createProperty(A, k, O[from]);\n }\n A.length = actualDeleteCount;\n if (insertCount < actualDeleteCount) {\n for (k = actualStart; k < len - actualDeleteCount; k++) {\n from = k + actualDeleteCount;\n to = k + insertCount;\n if (from in O) O[to] = O[from];\n else delete O[to];\n }\n for (k = len; k > len - actualDeleteCount + insertCount; k--) delete O[k - 1];\n } else if (insertCount > actualDeleteCount) {\n for (k = len - actualDeleteCount; k > actualStart; k--) {\n from = k + actualDeleteCount - 1;\n to = k + insertCount - 1;\n if (from in O) O[to] = O[from];\n else delete O[to];\n }\n }\n for (k = 0; k < insertCount; k++) {\n O[k + actualStart] = arguments[k + 2];\n }\n O.length = len - actualDeleteCount + insertCount;\n return A;\n }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar $findIndex = require('../internals/array-iteration').findIndex;\nvar addToUnscopables = require('../internals/add-to-unscopables');\n\nvar FIND_INDEX = 'findIndex';\nvar SKIPS_HOLES = true;\n\n// Shouldn't skip holes\nif (FIND_INDEX in []) Array(1)[FIND_INDEX](function () { SKIPS_HOLES = false; });\n\n// `Array.prototype.findIndex` method\n// https://tc39.es/ecma262/#sec-array.prototype.findindex\n$({ target: 'Array', proto: true, forced: SKIPS_HOLES }, {\n findIndex: function findIndex(callbackfn /* , that = undefined */) {\n return $findIndex(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n\n// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables\naddToUnscopables(FIND_INDEX);\n","// Styles\nimport './VDivider.sass'\n\n// Types\nimport { VNode } from 'vue'\n\n// Mixins\nimport Themeable from '../../mixins/themeable'\n\nexport default Themeable.extend({\n name: 'v-divider',\n\n props: {\n inset: Boolean,\n vertical: Boolean,\n },\n\n render (h): VNode {\n // WAI-ARIA attributes\n let orientation\n if (!this.$attrs.role || this.$attrs.role === 'separator') {\n orientation = this.vertical ? 'vertical' : 'horizontal'\n }\n return h('hr', {\n class: {\n 'v-divider': true,\n 'v-divider--inset': this.inset,\n 'v-divider--vertical': this.vertical,\n ...this.themeClasses,\n },\n attrs: {\n role: 'separator',\n 'aria-orientation': orientation,\n ...this.$attrs,\n },\n on: this.$listeners,\n })\n },\n})\n","// Styles\nimport './VListItem.sass'\n\n// Mixins\nimport Colorable from '../../mixins/colorable'\nimport Routable from '../../mixins/routable'\nimport { factory as GroupableFactory } from '../../mixins/groupable'\nimport Themeable from '../../mixins/themeable'\nimport { factory as ToggleableFactory } from '../../mixins/toggleable'\n\n// Directives\nimport Ripple from '../../directives/ripple'\n\n// Utilities\nimport { keyCodes } from './../../util/helpers'\nimport { ExtractVue } from './../../util/mixins'\nimport { removed } from '../../util/console'\n\n// Types\nimport mixins from '../../util/mixins'\nimport { VNode } from 'vue'\nimport { PropType, PropValidator } from 'vue/types/options'\n\nconst baseMixins = mixins(\n Colorable,\n Routable,\n Themeable,\n GroupableFactory('listItemGroup'),\n ToggleableFactory('inputValue')\n)\n\ninterface options extends ExtractVue {\n $el: HTMLElement\n isInGroup: boolean\n isInList: boolean\n isInMenu: boolean\n isInNav: boolean\n}\n\n/* @vue/component */\nexport default baseMixins.extend().extend({\n name: 'v-list-item',\n\n directives: {\n Ripple,\n },\n\n inject: {\n isInGroup: {\n default: false,\n },\n isInList: {\n default: false,\n },\n isInMenu: {\n default: false,\n },\n isInNav: {\n default: false,\n },\n },\n\n inheritAttrs: false,\n\n props: {\n activeClass: {\n type: String,\n default (): string | undefined {\n if (!this.listItemGroup) return ''\n\n return this.listItemGroup.activeClass\n },\n } as any as PropValidator,\n dense: Boolean,\n inactive: Boolean,\n link: Boolean,\n selectable: {\n type: Boolean,\n },\n tag: {\n type: String,\n default: 'div',\n },\n threeLine: Boolean,\n twoLine: Boolean,\n value: null as any as PropType,\n },\n\n data: () => ({\n proxyClass: 'v-list-item--active',\n }),\n\n computed: {\n classes (): object {\n return {\n 'v-list-item': true,\n ...Routable.options.computed.classes.call(this),\n 'v-list-item--dense': this.dense,\n 'v-list-item--disabled': this.disabled,\n 'v-list-item--link': this.isClickable && !this.inactive,\n 'v-list-item--selectable': this.selectable,\n 'v-list-item--three-line': this.threeLine,\n 'v-list-item--two-line': this.twoLine,\n ...this.themeClasses,\n }\n },\n isClickable (): boolean {\n return Boolean(\n Routable.options.computed.isClickable.call(this) ||\n this.listItemGroup\n )\n },\n },\n\n created () {\n /* istanbul ignore next */\n if (this.$attrs.hasOwnProperty('avatar')) {\n removed('avatar', this)\n }\n },\n\n methods: {\n click (e: MouseEvent | KeyboardEvent) {\n if (e.detail) this.$el.blur()\n\n this.$emit('click', e)\n\n this.to || this.toggle()\n },\n genAttrs () {\n const attrs: Record = {\n 'aria-disabled': this.disabled ? true : undefined,\n tabindex: this.isClickable && !this.disabled ? 0 : -1,\n ...this.$attrs,\n }\n\n if (this.$attrs.hasOwnProperty('role')) {\n // do nothing, role already provided\n } else if (this.isInNav) {\n // do nothing, role is inherit\n } else if (this.isInGroup) {\n attrs.role = 'option'\n attrs['aria-selected'] = String(this.isActive)\n } else if (this.isInMenu) {\n attrs.role = this.isClickable ? 'menuitem' : undefined\n attrs.id = attrs.id || `list-item-${this._uid}`\n } else if (this.isInList) {\n attrs.role = 'listitem'\n }\n\n return attrs\n },\n },\n\n render (h): VNode {\n let { tag, data } = this.generateRouteLink()\n\n data.attrs = {\n ...data.attrs,\n ...this.genAttrs(),\n }\n data[this.to ? 'nativeOn' : 'on'] = {\n ...data[this.to ? 'nativeOn' : 'on'],\n keydown: (e: KeyboardEvent) => {\n /* istanbul ignore else */\n if (e.keyCode === keyCodes.enter) this.click(e)\n\n this.$emit('keydown', e)\n },\n }\n\n if (this.inactive) tag = 'div'\n if (this.inactive && this.to) {\n data.on = data.nativeOn\n delete data.nativeOn\n }\n\n const children = this.$scopedSlots.default\n ? this.$scopedSlots.default({\n active: this.isActive,\n toggle: this.toggle,\n })\n : this.$slots.default\n\n return h(tag, this.setTextColor(this.color, data), children)\n },\n})\n","// Mixins\nimport Positionable from '../positionable'\nimport Stackable from '../stackable'\nimport Activatable from '../activatable'\n\n// Utilities\nimport mixins, { ExtractVue } from '../../util/mixins'\nimport { convertToUnit } from '../../util/helpers'\n\n// Types\nconst baseMixins = mixins(\n Stackable,\n Positionable,\n Activatable\n)\n\ninterface options extends ExtractVue {\n attach: boolean | string | Element\n offsetY: boolean\n offsetX: boolean\n $refs: {\n content: HTMLElement\n activator: HTMLElement\n }\n}\n\n/* @vue/component */\nexport default baseMixins.extend().extend({\n name: 'menuable',\n\n props: {\n allowOverflow: Boolean,\n light: Boolean,\n dark: Boolean,\n maxWidth: {\n type: [Number, String],\n default: 'auto',\n },\n minWidth: [Number, String],\n nudgeBottom: {\n type: [Number, String],\n default: 0,\n },\n nudgeLeft: {\n type: [Number, String],\n default: 0,\n },\n nudgeRight: {\n type: [Number, String],\n default: 0,\n },\n nudgeTop: {\n type: [Number, String],\n default: 0,\n },\n nudgeWidth: {\n type: [Number, String],\n default: 0,\n },\n offsetOverflow: Boolean,\n openOnClick: Boolean,\n positionX: {\n type: Number,\n default: null,\n },\n positionY: {\n type: Number,\n default: null,\n },\n zIndex: {\n type: [Number, String],\n default: null,\n },\n },\n\n data: () => ({\n absoluteX: 0,\n absoluteY: 0,\n activatedBy: null as EventTarget | null,\n activatorFixed: false,\n dimensions: {\n activator: {\n top: 0,\n left: 0,\n bottom: 0,\n right: 0,\n width: 0,\n height: 0,\n offsetTop: 0,\n scrollHeight: 0,\n offsetLeft: 0,\n },\n content: {\n top: 0,\n left: 0,\n bottom: 0,\n right: 0,\n width: 0,\n height: 0,\n offsetTop: 0,\n scrollHeight: 0,\n },\n },\n hasJustFocused: false,\n hasWindow: false,\n inputActivator: false,\n isContentActive: false,\n pageWidth: 0,\n pageYOffset: 0,\n stackClass: 'v-menu__content--active',\n stackMinZIndex: 6,\n }),\n\n computed: {\n computedLeft () {\n const a = this.dimensions.activator\n const c = this.dimensions.content\n const activatorLeft = (this.attach !== false ? a.offsetLeft : a.left) || 0\n const minWidth = Math.max(a.width, c.width)\n let left = 0\n left += this.left ? activatorLeft - (minWidth - a.width) : activatorLeft\n if (this.offsetX) {\n const maxWidth = isNaN(Number(this.maxWidth))\n ? a.width\n : Math.min(a.width, Number(this.maxWidth))\n\n left += this.left ? -maxWidth : a.width\n }\n if (this.nudgeLeft) left -= parseInt(this.nudgeLeft)\n if (this.nudgeRight) left += parseInt(this.nudgeRight)\n\n return left\n },\n computedTop () {\n const a = this.dimensions.activator\n const c = this.dimensions.content\n let top = 0\n\n if (this.top) top += a.height - c.height\n if (this.attach !== false) top += a.offsetTop\n else top += a.top + this.pageYOffset\n if (this.offsetY) top += this.top ? -a.height : a.height\n if (this.nudgeTop) top -= parseInt(this.nudgeTop)\n if (this.nudgeBottom) top += parseInt(this.nudgeBottom)\n\n return top\n },\n hasActivator (): boolean {\n return !!this.$slots.activator || !!this.$scopedSlots.activator || !!this.activator || !!this.inputActivator\n },\n },\n\n watch: {\n disabled (val) {\n val && this.callDeactivate()\n },\n isActive (val) {\n if (this.disabled) return\n\n val ? this.callActivate() : this.callDeactivate()\n },\n positionX: 'updateDimensions',\n positionY: 'updateDimensions',\n },\n\n beforeMount () {\n this.hasWindow = typeof window !== 'undefined'\n },\n\n methods: {\n absolutePosition () {\n return {\n offsetTop: 0,\n offsetLeft: 0,\n scrollHeight: 0,\n top: this.positionY || this.absoluteY,\n bottom: this.positionY || this.absoluteY,\n left: this.positionX || this.absoluteX,\n right: this.positionX || this.absoluteX,\n height: 0,\n width: 0,\n }\n },\n activate () {},\n calcLeft (menuWidth: number) {\n return convertToUnit(this.attach !== false\n ? this.computedLeft\n : this.calcXOverflow(this.computedLeft, menuWidth))\n },\n calcTop () {\n return convertToUnit(this.attach !== false\n ? this.computedTop\n : this.calcYOverflow(this.computedTop))\n },\n calcXOverflow (left: number, menuWidth: number) {\n const xOverflow = left + menuWidth - this.pageWidth + 12\n\n if ((!this.left || this.right) && xOverflow > 0) {\n left = Math.max(left - xOverflow, 0)\n } else {\n left = Math.max(left, 12)\n }\n\n return left + this.getOffsetLeft()\n },\n calcYOverflow (top: number) {\n const documentHeight = this.getInnerHeight()\n const toTop = this.pageYOffset + documentHeight\n const activator = this.dimensions.activator\n const contentHeight = this.dimensions.content.height\n const totalHeight = top + contentHeight\n const isOverflowing = toTop < totalHeight\n\n // If overflowing bottom and offset\n // TODO: set 'bottom' position instead of 'top'\n if (isOverflowing &&\n this.offsetOverflow &&\n // If we don't have enough room to offset\n // the overflow, don't offset\n activator.top > contentHeight\n ) {\n top = this.pageYOffset + (activator.top - contentHeight)\n // If overflowing bottom\n } else if (isOverflowing && !this.allowOverflow) {\n top = toTop - contentHeight - 12\n // If overflowing top\n } else if (top < this.pageYOffset && !this.allowOverflow) {\n top = this.pageYOffset + 12\n }\n\n return top < 12 ? 12 : top\n },\n callActivate () {\n if (!this.hasWindow) return\n\n this.activate()\n },\n callDeactivate () {\n this.isContentActive = false\n\n this.deactivate()\n },\n checkForPageYOffset () {\n if (this.hasWindow) {\n this.pageYOffset = this.activatorFixed ? 0 : this.getOffsetTop()\n }\n },\n checkActivatorFixed () {\n if (this.attach !== false) return\n let el = this.getActivator()\n while (el) {\n if (window.getComputedStyle(el).position === 'fixed') {\n this.activatorFixed = true\n return\n }\n el = el.offsetParent as HTMLElement\n }\n this.activatorFixed = false\n },\n deactivate () {},\n genActivatorListeners () {\n const listeners = Activatable.options.methods.genActivatorListeners.call(this)\n\n const onClick = listeners.click\n\n listeners.click = (e: MouseEvent & KeyboardEvent & FocusEvent) => {\n if (this.openOnClick) {\n onClick && onClick(e)\n }\n\n this.absoluteX = e.clientX\n this.absoluteY = e.clientY\n }\n\n return listeners\n },\n getInnerHeight () {\n if (!this.hasWindow) return 0\n\n return window.innerHeight ||\n document.documentElement.clientHeight\n },\n getOffsetLeft () {\n if (!this.hasWindow) return 0\n\n return window.pageXOffset ||\n document.documentElement.scrollLeft\n },\n getOffsetTop () {\n if (!this.hasWindow) return 0\n\n return window.pageYOffset ||\n document.documentElement.scrollTop\n },\n getRoundedBoundedClientRect (el: Element) {\n const rect = el.getBoundingClientRect()\n return {\n top: Math.round(rect.top),\n left: Math.round(rect.left),\n bottom: Math.round(rect.bottom),\n right: Math.round(rect.right),\n width: Math.round(rect.width),\n height: Math.round(rect.height),\n }\n },\n measure (el: HTMLElement) {\n if (!el || !this.hasWindow) return null\n\n const rect = this.getRoundedBoundedClientRect(el)\n\n // Account for activator margin\n if (this.attach !== false) {\n const style = window.getComputedStyle(el)\n\n rect.left = parseInt(style.marginLeft!)\n rect.top = parseInt(style.marginTop!)\n }\n\n return rect\n },\n sneakPeek (cb: () => void) {\n requestAnimationFrame(() => {\n const el = this.$refs.content\n\n if (!el || el.style.display !== 'none') {\n cb()\n return\n }\n\n el.style.display = 'inline-block'\n cb()\n el.style.display = 'none'\n })\n },\n startTransition () {\n return new Promise(resolve => requestAnimationFrame(() => {\n this.isContentActive = this.hasJustFocused = this.isActive\n resolve()\n }))\n },\n updateDimensions () {\n this.hasWindow = typeof window !== 'undefined'\n this.checkActivatorFixed()\n this.checkForPageYOffset()\n this.pageWidth = document.documentElement.clientWidth\n\n const dimensions: any = {\n activator: { ...this.dimensions.activator },\n content: { ...this.dimensions.content },\n }\n\n // Activator should already be shown\n if (!this.hasActivator || this.absolute) {\n dimensions.activator = this.absolutePosition()\n } else {\n const activator = this.getActivator()\n if (!activator) return\n\n dimensions.activator = this.measure(activator)\n dimensions.activator.offsetLeft = activator.offsetLeft\n if (this.attach !== false) {\n // account for css padding causing things to not line up\n // this is mostly for v-autocomplete, hopefully it won't break anything\n dimensions.activator.offsetTop = activator.offsetTop\n } else {\n dimensions.activator.offsetTop = 0\n }\n }\n\n // Display and hide to get dimensions\n this.sneakPeek(() => {\n this.$refs.content && (dimensions.content = this.measure(this.$refs.content))\n\n this.dimensions = dimensions\n })\n },\n },\n})\n"],"sourceRoot":""}