{"version":3,"sources":["webpack:///./node_modules/core-js/modules/es.array.flat.js","webpack:///../../../src/mixins/measurable/index.ts","webpack:///./node_modules/core-js/modules/es.array.unscopables.flat.js","webpack:///../../src/util/mixins.ts","webpack:///./node_modules/vuetify-loader/lib/runtime/installComponents.js","webpack:///../../../src/mixins/themeable/index.ts","webpack:///../../../src/mixins/binds-attrs/index.ts","webpack:///../../../src/components/VSheet/VSheet.ts","webpack:///../../../src/mixins/roundable/index.ts","webpack:///./node_modules/core-js/internals/flatten-into-array.js","webpack:///../../../src/mixins/colorable/index.ts","webpack:///./node_modules/@babel/runtime/helpers/esm/createForOfIteratorHelper.js","webpack:///./node_modules/core-js/modules/es.string.fixed.js","webpack:///../../../src/mixins/elevatable/index.ts","webpack:///../../src/util/mergeData.ts","webpack:///../../../src/mixins/toggleable/index.ts","webpack:///../../../src/mixins/positionable/index.ts"],"names":["$","flattenIntoArray","toObject","toLength","toInteger","arraySpeciesCreate","target","proto","flat","depthArg","arguments","length","undefined","O","this","sourceLen","A","name","props","height","Number","maxHeight","maxWidth","minHeight","minWidth","width","String","computed","measurableStyles","styles","addToUnscopables","mixins","args","module","exports","component","components","options","extendOptions","i","vm","context","injections","isDark","Themeable","provide","theme","themeableProvide","inject","default","dark","type","light","data","appIsDark","$vuetify","themeClasses","rootIsDark","rootThemeClasses","watch","handler","newVal","immediate","makeWatcher","Object","$data","val","attrs$","listeners$","created","outlined","shaped","tag","classes","roundedClasses","render","class","style","on","h","setBackgroundColor","$slots","rounded","Boolean","tile","composite","values","isArray","bind","original","source","start","depth","mapper","thisArg","element","targetIndex","sourceIndex","mapFn","TypeError","color","methods","setTextColor","colorName","_createForOfIteratorHelper","o","allowArrayLike","it","Symbol","iterator","Array","unsupportedIterableToArray","F","s","n","done","value","e","_e","f","err","normalCompletion","didErr","step","next","_e2","createHTML","forcedStringHTMLMethod","forced","fixed","elevation","computedElevation","elevationClasses","isNaN","parseInt","pattern","styleList","styleProp","parseStyle","styleMap","key","mergeTarget","mergeClasses","mergeStyles","mergeListeners","prop","dest","arg","event","model","required","isActive","$emit","Toggleable","factory","availableProps","absolute","bottom","left","right","top","selected"],"mappings":"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","file":"js/chunk-0e495ac4.550795ec.js","sourcesContent":["'use strict';\nvar $ = require('../internals/export');\nvar flattenIntoArray = require('../internals/flatten-into-array');\nvar toObject = require('../internals/to-object');\nvar toLength = require('../internals/to-length');\nvar toInteger = require('../internals/to-integer');\nvar arraySpeciesCreate = require('../internals/array-species-create');\n\n// `Array.prototype.flat` method\n// https://github.com/tc39/proposal-flatMap\n$({ target: 'Array', proto: true }, {\n flat: function flat(/* depthArg = 1 */) {\n var depthArg = arguments.length ? arguments[0] : undefined;\n var O = toObject(this);\n var sourceLen = toLength(O.length);\n var A = arraySpeciesCreate(O, 0);\n A.length = flattenIntoArray(A, O, O, sourceLen, 0, depthArg === undefined ? 1 : toInteger(depthArg));\n return A;\n }\n});\n","// Helpers\nimport { convertToUnit } from '../../util/helpers'\n\n// Types\nimport Vue, { PropType } from 'vue'\n\nexport type NumberOrNumberString = PropType\n\nexport default Vue.extend({\n name: 'measurable',\n\n props: {\n height: [Number, String] as NumberOrNumberString,\n maxHeight: [Number, String] as NumberOrNumberString,\n maxWidth: [Number, String] as NumberOrNumberString,\n minHeight: [Number, String] as NumberOrNumberString,\n minWidth: [Number, String] as NumberOrNumberString,\n width: [Number, String] as NumberOrNumberString,\n },\n\n computed: {\n measurableStyles (): object {\n const styles: Record = {}\n\n const height = convertToUnit(this.height)\n const minHeight = convertToUnit(this.minHeight)\n const minWidth = convertToUnit(this.minWidth)\n const maxHeight = convertToUnit(this.maxHeight)\n const maxWidth = convertToUnit(this.maxWidth)\n const width = convertToUnit(this.width)\n\n if (height) styles.height = height\n if (minHeight) styles.minHeight = minHeight\n if (minWidth) styles.minWidth = minWidth\n if (maxHeight) styles.maxHeight = maxHeight\n if (maxWidth) styles.maxWidth = maxWidth\n if (width) styles.width = width\n\n return styles\n },\n },\n})\n","// this method was added to unscopables after implementation\n// in popular engines, so it's moved to a separate module\nvar addToUnscopables = require('../internals/add-to-unscopables');\n\naddToUnscopables('flat');\n","/* eslint-disable max-len, import/export, no-use-before-define */\nimport Vue, { VueConstructor } from 'vue'\n\nexport default function mixins (...args: T): ExtractVue extends infer V ? V extends Vue ? VueConstructor : never : never\nexport default function mixins (...args: VueConstructor[]): VueConstructor\nexport default function mixins (...args: VueConstructor[]): VueConstructor {\n return Vue.extend({ mixins: args })\n}\n\n/**\n * Returns the instance type from a VueConstructor\n * Useful for adding types when using mixins().extend()\n */\nexport type ExtractVue = T extends (infer U)[]\n ? UnionToIntersection<\n U extends VueConstructor ? V : never\n >\n : T extends VueConstructor ? V : never\n\ntype UnionToIntersection =\n (U extends any ? (k: U) => void : never) extends ((k: infer I) => void) ? I : never\n","// IMPORTANT: Do NOT use ES2015 features in this file (except for modules).\n// This module is a runtime utility for cleaner component module output and will\n// be included in the final webpack user bundle.\n\nmodule.exports = function installComponents (component, components) {\n var options = typeof component.exports === 'function'\n ? component.exports.extendOptions\n : component.options\n\n if (typeof component.exports === 'function') {\n options.components = component.exports.options.components\n }\n\n options.components = options.components || {}\n\n for (var i in components) {\n options.components[i] = options.components[i] || components[i]\n }\n}\n","import Vue from 'vue'\nimport { PropType, RenderContext } from 'vue/types/options'\n\n/* eslint-disable-next-line no-use-before-define */\ninterface Themeable extends Vue {\n theme: {\n isDark: boolean\n }\n}\n\nexport function functionalThemeClasses (context: RenderContext): object {\n const vm = {\n ...context.props,\n ...context.injections,\n }\n const isDark = Themeable.options.computed.isDark.call(vm)\n return Themeable.options.computed.themeClasses.call({ isDark })\n}\n\n/* @vue/component */\nconst Themeable = Vue.extend().extend({\n name: 'themeable',\n\n provide (): object {\n return {\n theme: this.themeableProvide,\n }\n },\n\n inject: {\n theme: {\n default: {\n isDark: false,\n },\n },\n },\n\n props: {\n dark: {\n type: Boolean as PropType,\n default: null,\n },\n light: {\n type: Boolean as PropType,\n default: null,\n },\n },\n\n data () {\n return {\n themeableProvide: {\n isDark: false,\n },\n }\n },\n\n computed: {\n appIsDark (): boolean {\n return this.$vuetify.theme.dark || false\n },\n isDark (): boolean {\n if (this.dark === true) {\n // explicitly dark\n return true\n } else if (this.light === true) {\n // explicitly light\n return false\n } else {\n // inherit from parent, or default false if there is none\n return this.theme.isDark\n }\n },\n themeClasses (): object {\n return {\n 'theme--dark': this.isDark,\n 'theme--light': !this.isDark,\n }\n },\n /** Used by menus and dialogs, inherits from v-app instead of the parent */\n rootIsDark (): boolean {\n if (this.dark === true) {\n // explicitly dark\n return true\n } else if (this.light === true) {\n // explicitly light\n return false\n } else {\n // inherit from v-app\n return this.appIsDark\n }\n },\n rootThemeClasses (): Dictionary {\n return {\n 'theme--dark': this.rootIsDark,\n 'theme--light': !this.rootIsDark,\n }\n },\n },\n\n watch: {\n isDark: {\n handler (newVal, oldVal) {\n if (newVal !== oldVal) {\n this.themeableProvide.isDark = this.isDark\n }\n },\n immediate: true,\n },\n },\n})\n\nexport default Themeable\n","import Vue, { WatchHandler } from 'vue'\n\n/**\n * This mixin provides `attrs$` and `listeners$` to work around\n * vue bug https://github.com/vuejs/vue/issues/10115\n */\n\nfunction makeWatcher (property: string): ThisType & WatchHandler {\n return function (this: Vue, val, oldVal) {\n for (const attr in oldVal) {\n if (!Object.prototype.hasOwnProperty.call(val, attr)) {\n this.$delete(this.$data[property], attr)\n }\n }\n for (const attr in val) {\n this.$set(this.$data[property], attr, val[attr])\n }\n }\n}\n\nexport default Vue.extend({\n data: () => ({\n attrs$: {} as Dictionary,\n listeners$: {} as Dictionary,\n }),\n\n created () {\n // Work around unwanted re-renders: https://github.com/vuejs/vue/issues/10115\n // Make sure to use `attrs$` instead of `$attrs` (confusing right?)\n this.$watch('$attrs', makeWatcher('attrs$'), { immediate: true })\n this.$watch('$listeners', makeWatcher('listeners$'), { immediate: true })\n },\n})\n","// Styles\nimport './VSheet.sass'\n\n// Mixins\nimport BindsAttrs from '../../mixins/binds-attrs'\nimport Colorable from '../../mixins/colorable'\nimport Elevatable from '../../mixins/elevatable'\nimport Measurable from '../../mixins/measurable'\nimport Roundable from '../../mixins/roundable'\nimport Themeable from '../../mixins/themeable'\n\n// Helpers\nimport mixins from '../../util/mixins'\n\n// Types\nimport { VNode } from 'vue'\n\n/* @vue/component */\nexport default mixins(\n BindsAttrs,\n Colorable,\n Elevatable,\n Measurable,\n Roundable,\n Themeable\n).extend({\n name: 'v-sheet',\n\n props: {\n outlined: Boolean,\n shaped: Boolean,\n tag: {\n type: String,\n default: 'div',\n },\n },\n\n computed: {\n classes (): object {\n return {\n 'v-sheet': true,\n 'v-sheet--outlined': this.outlined,\n 'v-sheet--shaped': this.shaped,\n ...this.themeClasses,\n ...this.elevationClasses,\n ...this.roundedClasses,\n }\n },\n styles (): object {\n return this.measurableStyles\n },\n },\n\n render (h): VNode {\n const data = {\n class: this.classes,\n style: this.styles,\n on: this.listeners$,\n }\n\n return h(\n this.tag,\n this.setBackgroundColor(this.color, data),\n this.$slots.default\n )\n },\n})\n","import Vue from 'vue'\n\n/* @vue/component */\nexport default Vue.extend({\n name: 'roundable',\n\n props: {\n rounded: [Boolean, String],\n tile: Boolean,\n },\n\n computed: {\n roundedClasses (): Record {\n const composite = []\n const rounded = typeof this.rounded === 'string'\n ? String(this.rounded)\n : this.rounded === true\n\n if (this.tile) {\n composite.push('rounded-0')\n } else if (typeof rounded === 'string') {\n const values = rounded.split(' ')\n\n for (const value of values) {\n composite.push(`rounded-${value}`)\n }\n } else if (rounded) {\n composite.push('rounded')\n }\n\n return composite.length > 0 ? {\n [composite.join(' ')]: true,\n } : {}\n },\n },\n})\n","'use strict';\nvar isArray = require('../internals/is-array');\nvar toLength = require('../internals/to-length');\nvar bind = require('../internals/function-bind-context');\n\n// `FlattenIntoArray` abstract operation\n// https://tc39.github.io/proposal-flatMap/#sec-FlattenIntoArray\nvar flattenIntoArray = function (target, original, source, sourceLen, start, depth, mapper, thisArg) {\n var targetIndex = start;\n var sourceIndex = 0;\n var mapFn = mapper ? bind(mapper, thisArg, 3) : false;\n var element;\n\n while (sourceIndex < sourceLen) {\n if (sourceIndex in source) {\n element = mapFn ? mapFn(source[sourceIndex], sourceIndex, original) : source[sourceIndex];\n\n if (depth > 0 && isArray(element)) {\n targetIndex = flattenIntoArray(target, original, element, toLength(element.length), targetIndex, depth - 1) - 1;\n } else {\n if (targetIndex >= 0x1FFFFFFFFFFFFF) throw TypeError('Exceed the acceptable array length');\n target[targetIndex] = element;\n }\n\n targetIndex++;\n }\n sourceIndex++;\n }\n return targetIndex;\n};\n\nmodule.exports = flattenIntoArray;\n","import Vue from 'vue'\nimport { VNodeData } from 'vue/types/vnode'\nimport { consoleError } from '../../util/console'\nimport { isCssColor } from '../../util/colorUtils'\n\nexport default Vue.extend({\n name: 'colorable',\n\n props: {\n color: String,\n },\n\n methods: {\n setBackgroundColor (color?: string | false, data: VNodeData = {}): VNodeData {\n if (typeof data.style === 'string') {\n // istanbul ignore next\n consoleError('style must be an object', this)\n // istanbul ignore next\n return data\n }\n if (typeof data.class === 'string') {\n // istanbul ignore next\n consoleError('class must be an object', this)\n // istanbul ignore next\n return data\n }\n if (isCssColor(color)) {\n data.style = {\n ...data.style as object,\n 'background-color': `${color}`,\n 'border-color': `${color}`,\n }\n } else if (color) {\n data.class = {\n ...data.class,\n [color]: true,\n }\n }\n\n return data\n },\n\n setTextColor (color?: string | false, data: VNodeData = {}): VNodeData {\n if (typeof data.style === 'string') {\n // istanbul ignore next\n consoleError('style must be an object', this)\n // istanbul ignore next\n return data\n }\n if (typeof data.class === 'string') {\n // istanbul ignore next\n consoleError('class must be an object', this)\n // istanbul ignore next\n return data\n }\n if (isCssColor(color)) {\n data.style = {\n ...data.style as object,\n color: `${color}`,\n 'caret-color': `${color}`,\n }\n } else if (color) {\n const [colorName, colorModifier] = color.toString().trim().split(' ', 2) as (string | undefined)[]\n data.class = {\n ...data.class,\n [colorName + '--text']: true,\n }\n if (colorModifier) {\n data.class['text--' + colorModifier] = true\n }\n }\n return data\n },\n },\n})\n","import unsupportedIterableToArray from \"./unsupportedIterableToArray\";\nexport default function _createForOfIteratorHelper(o, allowArrayLike) {\n var it;\n\n if (typeof Symbol === \"undefined\" || o[Symbol.iterator] == null) {\n if (Array.isArray(o) || (it = unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") {\n if (it) o = it;\n var i = 0;\n\n var F = function F() {};\n\n return {\n s: F,\n n: function n() {\n if (i >= o.length) return {\n done: true\n };\n return {\n done: false,\n value: o[i++]\n };\n },\n e: function e(_e) {\n throw _e;\n },\n f: F\n };\n }\n\n throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n }\n\n var normalCompletion = true,\n didErr = false,\n err;\n return {\n s: function s() {\n it = o[Symbol.iterator]();\n },\n n: function n() {\n var step = it.next();\n normalCompletion = step.done;\n return step;\n },\n e: function e(_e2) {\n didErr = true;\n err = _e2;\n },\n f: function f() {\n try {\n if (!normalCompletion && it[\"return\"] != null) it[\"return\"]();\n } finally {\n if (didErr) throw err;\n }\n }\n };\n}","'use strict';\nvar $ = require('../internals/export');\nvar createHTML = require('../internals/create-html');\nvar forcedStringHTMLMethod = require('../internals/string-html-forced');\n\n// `String.prototype.fixed` method\n// https://tc39.github.io/ecma262/#sec-string.prototype.fixed\n$({ target: 'String', proto: true, forced: forcedStringHTMLMethod('fixed') }, {\n fixed: function fixed() {\n return createHTML(this, 'tt', '', '');\n }\n});\n","import Vue from 'vue'\n\nexport default Vue.extend({\n name: 'elevatable',\n\n props: {\n elevation: [Number, String],\n },\n\n computed: {\n computedElevation (): string | number | undefined {\n return this.elevation\n },\n elevationClasses (): Record {\n const elevation = this.computedElevation\n\n if (elevation == null) return {}\n if (isNaN(parseInt(elevation))) return {}\n return { [`elevation-${this.elevation}`]: true }\n },\n },\n})\n","/**\n * @copyright 2017 Alex Regan\n * @license MIT\n * @see https://github.com/alexsasharegan/vue-functional-data-merge\n */\n/* eslint-disable max-statements */\nimport { VNodeData } from 'vue'\nimport { camelize, wrapInArray } from './helpers'\n\nconst pattern = {\n styleList: /;(?![^(]*\\))/g,\n styleProp: /:(.*)/,\n} as const\n\nfunction parseStyle (style: string) {\n const styleMap: Dictionary = {}\n\n for (const s of style.split(pattern.styleList)) {\n let [key, val] = s.split(pattern.styleProp)\n key = key.trim()\n if (!key) {\n continue\n }\n // May be undefined if the `key: value` pair is incomplete.\n if (typeof val === 'string') {\n val = val.trim()\n }\n styleMap[camelize(key)] = val\n }\n\n return styleMap\n}\n\n/**\n * Intelligently merges data for createElement.\n * Merges arguments left to right, preferring the right argument.\n * Returns new VNodeData object.\n */\nexport default function mergeData (...vNodeData: VNodeData[]): VNodeData\nexport default function mergeData (): VNodeData {\n const mergeTarget: VNodeData & Dictionary = {}\n let i: number = arguments.length\n let prop: string\n\n // Allow for variadic argument length.\n while (i--) {\n // Iterate through the data properties and execute merge strategies\n // Object.keys eliminates need for hasOwnProperty call\n for (prop of Object.keys(arguments[i])) {\n switch (prop) {\n // Array merge strategy (array concatenation)\n case 'class':\n case 'directives':\n if (arguments[i][prop]) {\n mergeTarget[prop] = mergeClasses(mergeTarget[prop], arguments[i][prop])\n }\n break\n case 'style':\n if (arguments[i][prop]) {\n mergeTarget[prop] = mergeStyles(mergeTarget[prop], arguments[i][prop])\n }\n break\n // Space delimited string concatenation strategy\n case 'staticClass':\n if (!arguments[i][prop]) {\n break\n }\n if (mergeTarget[prop] === undefined) {\n mergeTarget[prop] = ''\n }\n if (mergeTarget[prop]) {\n // Not an empty string, so concatenate\n mergeTarget[prop] += ' '\n }\n mergeTarget[prop] += arguments[i][prop].trim()\n break\n // Object, the properties of which to merge via array merge strategy (array concatenation).\n // Callback merge strategy merges callbacks to the beginning of the array,\n // so that the last defined callback will be invoked first.\n // This is done since to mimic how Object.assign merging\n // uses the last given value to assign.\n case 'on':\n case 'nativeOn':\n if (arguments[i][prop]) {\n mergeTarget[prop] = mergeListeners(mergeTarget[prop], arguments[i][prop])\n }\n break\n // Object merge strategy\n case 'attrs':\n case 'props':\n case 'domProps':\n case 'scopedSlots':\n case 'staticStyle':\n case 'hook':\n case 'transition':\n if (!arguments[i][prop]) {\n break\n }\n if (!mergeTarget[prop]) {\n mergeTarget[prop] = {}\n }\n mergeTarget[prop] = { ...arguments[i][prop], ...mergeTarget[prop] }\n break\n // Reassignment strategy (no merge)\n default: // slot, key, ref, tag, show, keepAlive\n if (!mergeTarget[prop]) {\n mergeTarget[prop] = arguments[i][prop]\n }\n }\n }\n }\n\n return mergeTarget\n}\n\nexport function mergeStyles (\n target: undefined | string | object[] | object,\n source: undefined | string | object[] | object\n) {\n if (!target) return source\n if (!source) return target\n\n target = wrapInArray(typeof target === 'string' ? parseStyle(target) : target)\n\n return (target as object[]).concat(typeof source === 'string' ? parseStyle(source) : source)\n}\n\nexport function mergeClasses (target: any, source: any) {\n if (!source) return target\n if (!target) return source\n\n return target ? wrapInArray(target).concat(source) : source\n}\n\nexport function mergeListeners (...args: [\n { [key: string]: Function | Function[] } | undefined,\n { [key: string]: Function | Function[] } | undefined\n]) {\n if (!args[0]) return args[1]\n if (!args[1]) return args[0]\n\n const dest: { [key: string]: Function | Function[] } = {}\n\n for (let i = 2; i--;) {\n const arg = args[i]\n for (const event in arg) {\n if (!arg[event]) continue\n\n if (dest[event]) {\n // Merge current listeners before (because we are iterating backwards).\n // Note that neither \"target\" or \"source\" must be altered.\n dest[event] = ([] as Function[]).concat(arg[event], dest[event])\n } else {\n // Straight assign.\n dest[event] = arg[event]\n }\n }\n }\n\n return dest\n}\n","import Vue, { VueConstructor } from 'vue'\n\n/* eslint-disable-next-line no-use-before-define */\nexport type Toggleable = VueConstructor>\n\nexport function factory (prop?: T, event?: string): Toggleable\nexport function factory (prop = 'value', event = 'input') {\n return Vue.extend({\n name: 'toggleable',\n\n model: { prop, event },\n\n props: {\n [prop]: { required: false },\n },\n\n data () {\n return {\n isActive: !!this[prop],\n }\n },\n\n watch: {\n [prop] (val) {\n this.isActive = !!val\n },\n isActive (val) {\n !!val !== this[prop] && this.$emit(event, val)\n },\n },\n })\n}\n\n/* eslint-disable-next-line no-redeclare */\nconst Toggleable = factory()\n\nexport default Toggleable\n","import Vue from 'vue'\nimport { filterObjectOnKeys } from '../../util/helpers'\nimport { OptionsVue, VueConstructor } from 'vue/types/vue'\n\nconst availableProps = {\n absolute: Boolean,\n bottom: Boolean,\n fixed: Boolean,\n left: Boolean,\n right: Boolean,\n top: Boolean,\n}\ntype props = Record\n\nexport type Positionable = VueConstructor\n\nexport function factory (selected?: S[]): Positionable\nexport function factory (selected: undefined): OptionsVue\nexport function factory (selected: any[] = []): any {\n return Vue.extend({\n name: 'positionable',\n props: selected.length ? filterObjectOnKeys(availableProps, selected) : availableProps,\n })\n}\n\nexport default factory()\n\n// Add a `*` before the second `/`\n/* Tests /\nlet single = factory(['top']).extend({\n created () {\n this.top\n this.bottom\n this.absolute\n }\n})\n\nlet some = factory(['top', 'bottom']).extend({\n created () {\n this.top\n this.bottom\n this.absolute\n }\n})\n\nlet all = factory().extend({\n created () {\n this.top\n this.bottom\n this.absolute\n this.foobar\n }\n})\n/**/\n"],"sourceRoot":""}