{"version":3,"sources":["webpack:///../../../src/components/transitions/createTransition.ts","webpack:///../../../src/components/transitions/expand-transition.ts","webpack:///../../../src/components/transitions/index.ts","webpack:///../../../src/mixins/loadable/index.ts","webpack:///../../../src/components/VProgressLinear/index.ts","webpack:///../../../src/components/VProgressLinear/VProgressLinear.ts","webpack:///../../../src/mixins/proxyable/index.ts","webpack:///../../../src/components/VCard/VCard.ts"],"names":["mergeTransitions","dest","Array","origin","name","functional","props","group","type","default","hideOnLeave","leaveAbsolute","mode","render","tag","context","data","on","beforeEnter","el","offsetHeight","position","top","left","width","height","offsetTop","offsetLeft","offsetWidth","h","mergeData","functions","expandedParentClass","x","sizeProperty","offsetProperty","transition","overflow","enter","initialStyle","offset","requestAnimationFrame","afterEnter","enterCancelled","leave","afterLeave","leaveCancelled","resetStyles","size","VFabTransition","createSimpleTransition","VFadeTransition","VSlideXTransition","VExpandTransition","createJavascriptTransition","VExpandXTransition","loading","Boolean","loaderHeight","Number","methods","genProgress","this","$slots","progress","$createElement","absolute","color","indeterminate","baseMixins","directives","intersect","active","backgroundColor","backgroundOpacity","bufferValue","query","reverse","rounded","stream","striped","value","internalLazyValue","isVisible","computed","__cachedBackground","setBackgroundColor","staticClass","style","backgroundStyle","__cachedBar","__cachedBarType","__cachedBuffer","styles","__cachedDeterminate","__cachedIndeterminate","class","genProgressBar","__cachedStream","setTextColor","parseFloat","opacity","isReversed","Math","normalizedBuffer","classes","themeClasses","computedTransition","$vuetify","rtl","normalize","normalizedValue","reactive","$listeners","genContent","slot","genListeners","listeners","onClick","$el","e","onObserve","attrs","role","undefined","bottom","prop","event","model","required","internalValue","get","set","val","watch","Proxyable","factory","flat","hover","img","link","raised","key"],"mappings":"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","file":"js/chunk-37adb49d.84af501b.js","sourcesContent":["import { FunctionalComponentOptions, VNode, VNodeData } from 'vue'\nimport mergeData from '../../util/mergeData'\n\nfunction mergeTransitions (\n dest: Function | Function[] = [],\n ...transitions: (Function | Function[])[]\n) {\n /* eslint-disable-next-line no-array-constructor */\n return Array().concat(dest, ...transitions)\n}\n\nexport function createSimpleTransition (\n name: string,\n origin = 'top center 0',\n mode?: string\n): FunctionalComponentOptions {\n return {\n name,\n\n functional: true,\n\n props: {\n group: {\n type: Boolean,\n default: false,\n },\n hideOnLeave: {\n type: Boolean,\n default: false,\n },\n leaveAbsolute: {\n type: Boolean,\n default: false,\n },\n mode: {\n type: String,\n default: mode,\n },\n origin: {\n type: String,\n default: origin,\n },\n },\n\n render (h, context): VNode {\n const tag = `transition${context.props.group ? '-group' : ''}`\n const data: VNodeData = {\n props: {\n name,\n mode: context.props.mode,\n },\n on: {\n beforeEnter (el: HTMLElement) {\n el.style.transformOrigin = context.props.origin\n el.style.webkitTransformOrigin = context.props.origin\n },\n },\n }\n\n if (context.props.leaveAbsolute) {\n data.on!.leave = mergeTransitions(data.on!.leave, (el: HTMLElement) => {\n const { offsetTop, offsetLeft, offsetWidth, offsetHeight } = el\n el._transitionInitialStyles = {\n position: el.style.position,\n top: el.style.top,\n left: el.style.left,\n width: el.style.width,\n height: el.style.height,\n }\n el.style.position = 'absolute'\n el.style.top = offsetTop + 'px'\n el.style.left = offsetLeft + 'px'\n el.style.width = offsetWidth + 'px'\n el.style.height = offsetHeight + 'px'\n })\n data.on!.afterLeave = mergeTransitions(data.on!.afterLeave, (el?: HTMLElement) => {\n if (el && el._transitionInitialStyles) {\n const { position, top, left, width, height } = el._transitionInitialStyles\n delete el._transitionInitialStyles\n el.style.position = position || ''\n el.style.top = top || ''\n el.style.left = left || ''\n el.style.width = width || ''\n el.style.height = height || ''\n }\n })\n }\n if (context.props.hideOnLeave) {\n data.on!.leave = mergeTransitions(data.on!.leave, (el: HTMLElement) => {\n el._initialDisplay = [el.style.display, el.style.getPropertyPriority('display')]\n el.style.setProperty('display', 'none', 'important')\n })\n data.on!.afterLeave = mergeTransitions(data.on!.afterLeave, (el?: HTMLElement) => {\n if (el) {\n el._initialDisplay\n ? el.style.setProperty('display', ...el._initialDisplay)\n : el.style.removeProperty('display')\n }\n })\n }\n\n return h(tag, mergeData(context.data, data), context.children)\n },\n }\n}\n\nexport function createJavascriptTransition (\n name: string,\n functions: Record,\n mode = 'in-out'\n): FunctionalComponentOptions {\n return {\n name,\n\n functional: true,\n\n props: {\n mode: {\n type: String,\n default: mode,\n },\n },\n\n render (h, context): VNode {\n return h(\n 'transition',\n mergeData(context.data, {\n props: { name },\n on: functions,\n }),\n context.children\n )\n },\n }\n}\n","import { upperFirst } from '../../util/helpers'\n\ninterface HTMLExpandElement extends HTMLElement {\n _parent?: (Node & ParentNode & HTMLElement) | null\n _initialStyle?: {\n transition: string\n overflow: string\n height?: string | null\n width?: string | null\n }\n}\n\nexport default function (expandedParentClass = '', x = false) {\n const sizeProperty = x ? 'width' : 'height' as 'width' | 'height'\n const offsetProperty = `offset${upperFirst(sizeProperty)}` as 'offsetHeight' | 'offsetWidth'\n\n return {\n beforeEnter (el: HTMLExpandElement) {\n el._parent = el.parentNode as (Node & ParentNode & HTMLElement) | null\n el._initialStyle = {\n transition: el.style.transition,\n overflow: el.style.overflow,\n [sizeProperty]: el.style[sizeProperty],\n }\n },\n\n enter (el: HTMLExpandElement) {\n const initialStyle = el._initialStyle!\n\n el.style.setProperty('transition', 'none', 'important')\n // Hide overflow to account for collapsed margins in the calculated height\n el.style.overflow = 'hidden'\n const offset = `${el[offsetProperty]}px`\n\n el.style[sizeProperty] = '0'\n\n void el.offsetHeight // force reflow\n\n el.style.transition = initialStyle.transition\n\n if (expandedParentClass && el._parent) {\n el._parent.classList.add(expandedParentClass)\n }\n\n requestAnimationFrame(() => {\n el.style[sizeProperty] = offset\n })\n },\n\n afterEnter: resetStyles,\n enterCancelled: resetStyles,\n\n leave (el: HTMLExpandElement) {\n el._initialStyle = {\n transition: '',\n overflow: el.style.overflow,\n [sizeProperty]: el.style[sizeProperty],\n }\n\n el.style.overflow = 'hidden'\n el.style[sizeProperty] = `${el[offsetProperty]}px`\n void el.offsetHeight // force reflow\n\n requestAnimationFrame(() => (el.style[sizeProperty] = '0'))\n },\n\n afterLeave,\n leaveCancelled: afterLeave,\n }\n\n function afterLeave (el: HTMLExpandElement) {\n if (expandedParentClass && el._parent) {\n el._parent.classList.remove(expandedParentClass)\n }\n resetStyles(el)\n }\n\n function resetStyles (el: HTMLExpandElement) {\n const size = el._initialStyle![sizeProperty]\n el.style.overflow = el._initialStyle!.overflow\n if (size != null) el.style[sizeProperty] = size\n delete el._initialStyle\n }\n}\n","import {\n createSimpleTransition,\n createJavascriptTransition,\n} from './createTransition'\n\nimport ExpandTransitionGenerator from './expand-transition'\n\n// Component specific transitions\nexport const VCarouselTransition = createSimpleTransition('carousel-transition')\nexport const VCarouselReverseTransition = createSimpleTransition('carousel-reverse-transition')\nexport const VTabTransition = createSimpleTransition('tab-transition')\nexport const VTabReverseTransition = createSimpleTransition('tab-reverse-transition')\nexport const VMenuTransition = createSimpleTransition('menu-transition')\nexport const VFabTransition = createSimpleTransition('fab-transition', 'center center', 'out-in')\n\n// Generic transitions\nexport const VDialogTransition = createSimpleTransition('dialog-transition')\nexport const VDialogBottomTransition = createSimpleTransition('dialog-bottom-transition')\nexport const VDialogTopTransition = createSimpleTransition('dialog-top-transition')\nexport const VFadeTransition = createSimpleTransition('fade-transition')\nexport const VScaleTransition = createSimpleTransition('scale-transition')\nexport const VScrollXTransition = createSimpleTransition('scroll-x-transition')\nexport const VScrollXReverseTransition = createSimpleTransition('scroll-x-reverse-transition')\nexport const VScrollYTransition = createSimpleTransition('scroll-y-transition')\nexport const VScrollYReverseTransition = createSimpleTransition('scroll-y-reverse-transition')\nexport const VSlideXTransition = createSimpleTransition('slide-x-transition')\nexport const VSlideXReverseTransition = createSimpleTransition('slide-x-reverse-transition')\nexport const VSlideYTransition = createSimpleTransition('slide-y-transition')\nexport const VSlideYReverseTransition = createSimpleTransition('slide-y-reverse-transition')\n\n// Javascript transitions\nexport const VExpandTransition = createJavascriptTransition('expand-transition', ExpandTransitionGenerator())\nexport const VExpandXTransition = createJavascriptTransition('expand-x-transition', ExpandTransitionGenerator('', true))\n\nexport default {\n $_vuetify_subcomponents: {\n VCarouselTransition,\n VCarouselReverseTransition,\n VDialogTransition,\n VDialogBottomTransition,\n VDialogTopTransition,\n VFabTransition,\n VFadeTransition,\n VMenuTransition,\n VScaleTransition,\n VScrollXTransition,\n VScrollXReverseTransition,\n VScrollYTransition,\n VScrollYReverseTransition,\n VSlideXTransition,\n VSlideXReverseTransition,\n VSlideYTransition,\n VSlideYReverseTransition,\n VTabReverseTransition,\n VTabTransition,\n VExpandTransition,\n VExpandXTransition,\n },\n}\n","import Vue, { VNode } from 'vue'\nimport VProgressLinear from '../../components/VProgressLinear'\n\ninterface colorable extends Vue {\n color?: string\n}\n\n/**\n * Loadable\n *\n * @mixin\n *\n * Used to add linear progress bar to components\n * Can use a default bar with a specific color\n * or designate a custom progress linear bar\n */\n/* @vue/component */\nexport default Vue.extend().extend({\n name: 'loadable',\n\n props: {\n loading: {\n type: [Boolean, String],\n default: false,\n },\n loaderHeight: {\n type: [Number, String],\n default: 2,\n },\n },\n\n methods: {\n genProgress (): VNode | VNode[] | null {\n if (this.loading === false) return null\n\n return this.$slots.progress || this.$createElement(VProgressLinear, {\n props: {\n absolute: true,\n color: (this.loading === true || this.loading === '')\n ? (this.color || 'primary')\n : this.loading,\n height: this.loaderHeight,\n indeterminate: true,\n },\n })\n },\n },\n})\n","import VProgressLinear from './VProgressLinear'\n\nexport { VProgressLinear }\nexport default VProgressLinear\n","import './VProgressLinear.sass'\n\n// Components\nimport {\n VFadeTransition,\n VSlideXTransition,\n} from '../transitions'\n\n// Directives\nimport intersect from '../../directives/intersect'\n\n// Mixins\nimport Colorable from '../../mixins/colorable'\nimport { factory as PositionableFactory } from '../../mixins/positionable'\nimport Proxyable from '../../mixins/proxyable'\nimport Themeable from '../../mixins/themeable'\n\n// Utilities\nimport { convertToUnit, getSlot } from '../../util/helpers'\nimport mixins from '../../util/mixins'\n\n// Types\nimport { FunctionalComponentOptions } from 'vue/types'\nimport { VNode } from 'vue'\n\nconst baseMixins = mixins(\n Colorable,\n PositionableFactory(['absolute', 'fixed', 'top', 'bottom']),\n Proxyable,\n Themeable\n)\n\n/* @vue/component */\nexport default baseMixins.extend({\n name: 'v-progress-linear',\n\n directives: { intersect },\n\n props: {\n active: {\n type: Boolean,\n default: true,\n },\n backgroundColor: {\n type: String,\n default: null,\n },\n backgroundOpacity: {\n type: [Number, String],\n default: null,\n },\n bufferValue: {\n type: [Number, String],\n default: 100,\n },\n color: {\n type: String,\n default: 'primary',\n },\n height: {\n type: [Number, String],\n default: 4,\n },\n indeterminate: Boolean,\n query: Boolean,\n reverse: Boolean,\n rounded: Boolean,\n stream: Boolean,\n striped: Boolean,\n value: {\n type: [Number, String],\n default: 0,\n },\n },\n\n data () {\n return {\n internalLazyValue: this.value || 0,\n isVisible: true,\n }\n },\n\n computed: {\n __cachedBackground (): VNode {\n return this.$createElement('div', this.setBackgroundColor(this.backgroundColor || this.color, {\n staticClass: 'v-progress-linear__background',\n style: this.backgroundStyle,\n }))\n },\n __cachedBar (): VNode {\n return this.$createElement(this.computedTransition, [this.__cachedBarType])\n },\n __cachedBarType (): VNode {\n return this.indeterminate ? this.__cachedIndeterminate : this.__cachedDeterminate\n },\n __cachedBuffer (): VNode {\n return this.$createElement('div', {\n staticClass: 'v-progress-linear__buffer',\n style: this.styles,\n })\n },\n __cachedDeterminate (): VNode {\n return this.$createElement('div', this.setBackgroundColor(this.color, {\n staticClass: `v-progress-linear__determinate`,\n style: {\n width: convertToUnit(this.normalizedValue, '%'),\n },\n }))\n },\n __cachedIndeterminate (): VNode {\n return this.$createElement('div', {\n staticClass: 'v-progress-linear__indeterminate',\n class: {\n 'v-progress-linear__indeterminate--active': this.active,\n },\n }, [\n this.genProgressBar('long'),\n this.genProgressBar('short'),\n ])\n },\n __cachedStream (): VNode | null {\n if (!this.stream) return null\n\n return this.$createElement('div', this.setTextColor(this.color, {\n staticClass: 'v-progress-linear__stream',\n style: {\n width: convertToUnit(100 - this.normalizedBuffer, '%'),\n },\n }))\n },\n backgroundStyle (): object {\n const backgroundOpacity = this.backgroundOpacity == null\n ? (this.backgroundColor ? 1 : 0.3)\n : parseFloat(this.backgroundOpacity)\n\n return {\n opacity: backgroundOpacity,\n [this.isReversed ? 'right' : 'left']: convertToUnit(this.normalizedValue, '%'),\n width: convertToUnit(Math.max(0, this.normalizedBuffer - this.normalizedValue), '%'),\n }\n },\n classes (): object {\n return {\n 'v-progress-linear--absolute': this.absolute,\n 'v-progress-linear--fixed': this.fixed,\n 'v-progress-linear--query': this.query,\n 'v-progress-linear--reactive': this.reactive,\n 'v-progress-linear--reverse': this.isReversed,\n 'v-progress-linear--rounded': this.rounded,\n 'v-progress-linear--striped': this.striped,\n 'v-progress-linear--visible': this.isVisible,\n ...this.themeClasses,\n }\n },\n computedTransition (): FunctionalComponentOptions {\n return this.indeterminate ? VFadeTransition : VSlideXTransition\n },\n isReversed (): boolean {\n return this.$vuetify.rtl !== this.reverse\n },\n normalizedBuffer (): number {\n return this.normalize(this.bufferValue)\n },\n normalizedValue (): number {\n return this.normalize(this.internalLazyValue)\n },\n reactive (): boolean {\n return Boolean(this.$listeners.change)\n },\n styles (): object {\n const styles: Record = {}\n\n if (!this.active) {\n styles.height = 0\n }\n\n if (!this.indeterminate && parseFloat(this.normalizedBuffer) !== 100) {\n styles.width = convertToUnit(this.normalizedBuffer, '%')\n }\n\n return styles\n },\n },\n\n methods: {\n genContent () {\n const slot = getSlot(this, 'default', { value: this.internalLazyValue })\n\n if (!slot) return null\n\n return this.$createElement('div', {\n staticClass: 'v-progress-linear__content',\n }, slot)\n },\n genListeners () {\n const listeners = this.$listeners\n\n if (this.reactive) {\n listeners.click = this.onClick\n }\n\n return listeners\n },\n genProgressBar (name: 'long' | 'short') {\n return this.$createElement('div', this.setBackgroundColor(this.color, {\n staticClass: 'v-progress-linear__indeterminate',\n class: {\n [name]: true,\n },\n }))\n },\n onClick (e: MouseEvent) {\n if (!this.reactive) return\n\n const { width } = this.$el.getBoundingClientRect()\n\n this.internalValue = e.offsetX / width * 100\n },\n onObserve (entries: IntersectionObserverEntry[], observer: IntersectionObserver, isIntersecting: boolean) {\n this.isVisible = isIntersecting\n },\n normalize (value: string | number) {\n if (value < 0) return 0\n if (value > 100) return 100\n return parseFloat(value)\n },\n },\n\n render (h): VNode {\n const data = {\n staticClass: 'v-progress-linear',\n attrs: {\n role: 'progressbar',\n 'aria-valuemin': 0,\n 'aria-valuemax': this.normalizedBuffer,\n 'aria-valuenow': this.indeterminate ? undefined : this.normalizedValue,\n },\n class: this.classes,\n directives: [{\n name: 'intersect',\n value: this.onObserve,\n }],\n style: {\n bottom: this.bottom ? 0 : undefined,\n height: this.active ? convertToUnit(this.height) : 0,\n top: this.top ? 0 : undefined,\n },\n on: this.genListeners(),\n }\n\n return h('div', data, [\n this.__cachedStream,\n this.__cachedBackground,\n this.__cachedBuffer,\n this.__cachedBar,\n this.genContent(),\n ])\n },\n})\n","import Vue, { VueConstructor } from 'vue'\n\nexport type Proxyable = VueConstructor>\n\nexport function factory (prop?: T, event?: string): Proxyable\nexport function factory (\n prop = 'value',\n event = 'change'\n) {\n return Vue.extend({\n name: 'proxyable',\n\n model: {\n prop,\n event,\n },\n\n props: {\n [prop]: {\n required: false,\n },\n },\n\n data () {\n return {\n internalLazyValue: this[prop] as unknown,\n }\n },\n\n computed: {\n internalValue: {\n get (): unknown {\n return this.internalLazyValue\n },\n set (val: any) {\n if (val === this.internalLazyValue) return\n\n this.internalLazyValue = val\n\n this.$emit(event, val)\n },\n },\n },\n\n watch: {\n [prop] (val) {\n this.internalLazyValue = val\n },\n },\n })\n}\n\n/* eslint-disable-next-line @typescript-eslint/no-redeclare */\nconst Proxyable = factory()\n\nexport default Proxyable\n","// Styles\nimport './VCard.sass'\n\n// Extensions\nimport VSheet from '../VSheet'\n\n// Mixins\nimport Loadable from '../../mixins/loadable'\nimport Routable from '../../mixins/routable'\n\n// Helpers\nimport mixins from '../../util/mixins'\n\n// Types\nimport { VNode } from 'vue'\n\n/* @vue/component */\nexport default mixins(\n Loadable,\n Routable,\n VSheet\n).extend({\n name: 'v-card',\n\n props: {\n flat: Boolean,\n hover: Boolean,\n img: String,\n link: Boolean,\n loaderHeight: {\n type: [Number, String],\n default: 4,\n },\n raised: Boolean,\n },\n\n computed: {\n classes (): object {\n return {\n 'v-card': true,\n ...Routable.options.computed.classes.call(this),\n 'v-card--flat': this.flat,\n 'v-card--hover': this.hover,\n 'v-card--link': this.isClickable,\n 'v-card--loading': this.loading,\n 'v-card--disabled': this.disabled,\n 'v-card--raised': this.raised,\n ...VSheet.options.computed.classes.call(this),\n }\n },\n styles (): object {\n const style: Dictionary = {\n ...VSheet.options.computed.styles.call(this),\n }\n\n if (this.img) {\n style.background = `url(\"${this.img}\") center center / cover no-repeat`\n }\n\n return style\n },\n },\n\n methods: {\n genProgress () {\n const render = Loadable.options.methods.genProgress.call(this)\n\n if (!render) return null\n\n return this.$createElement('div', {\n staticClass: 'v-card__progress',\n key: 'progress',\n }, [render])\n },\n },\n\n render (h): VNode {\n const { tag, data } = this.generateRouteLink()\n\n data.style = this.styles\n\n if (this.isClickable) {\n data.attrs = data.attrs || {}\n data.attrs.tabindex = 0\n }\n\n return h(tag, this.setBackgroundColor(this.color, data), [\n this.genProgress(),\n this.$slots.default,\n ])\n },\n})\n"],"sourceRoot":""}