{"version":3,"sources":["webpack:///../../../src/components/VBadge/VBadge.ts","webpack:///../../../src/components/VCheckbox/VCheckbox.ts","webpack:///../../../src/mixins/mobile/index.ts","webpack:///../../../src/mixins/transitionable/index.ts"],"names":["mixins","Colorable","PositionableFactory","Themeable","Toggleable","Transitionable","extend","name","props","avatar","Boolean","bordered","color","type","String","default","content","required","dot","label","icon","inline","offsetX","Number","offsetY","overlap","tile","transition","value","computed","classes","this","bottom","left","themeClasses","computedBottom","computedYOffset","computedLeft","isRtl","computedXOffset","computedRight","computedTop","calcPosition","$vuetify","rtl","offset","styles","right","top","methods","convertToUnit","genBadge","lang","$attrs","t","data","setBackgroundColor","staticClass","style","attrs","title","role","directives","isActive","badge","$createElement","genBadgeContent","origin","mode","getSlot","VIcon","genBadgeWrapper","render","h","children","unshift","push","class","Selectable","indeterminate","indeterminateIcon","offIcon","onIcon","inputIndeterminate","VInput","options","call","computedIcon","validationState","isDisabled","hasError","shouldValidate","hasSuccess","hasColor","computedColor","watch","val","$nextTick","$emit","genCheckbox","attrs$","checkboxAttrs","setTextColor","dense","dark","light","genInput","toString","genRipple","rippleState","genDefaultSlot","genLabel","Vue","mobileBreakpoint","breakpoint","validator","v","isNaN","includes","isMobile","mobile","width","mobileWidth","parseInt","created","hasOwnProperty","deprecate","i"],"mappings":"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","file":"chunk-4fe0b9b0.3e275e290732fae881d9.js","sourcesContent":["// Styles\nimport './VBadge.sass'\n\n// Components\nimport VIcon from '../VIcon/VIcon'\n\n// Mixins\nimport Colorable from '../../mixins/colorable'\nimport Themeable from '../../mixins/themeable'\nimport Toggleable from '../../mixins/toggleable'\nimport Transitionable from '../../mixins/transitionable'\nimport { factory as PositionableFactory } from '../../mixins/positionable'\n\n// Utilities\nimport mixins from '../../util/mixins'\nimport {\n convertToUnit,\n getSlot,\n} from '../../util/helpers'\n\n// Types\nimport { VNode } from 'vue'\n\nexport default mixins(\n Colorable,\n PositionableFactory(['left', 'bottom']),\n Themeable,\n Toggleable,\n Transitionable,\n/* @vue/component */\n).extend({\n name: 'v-badge',\n\n props: {\n avatar: Boolean,\n bordered: Boolean,\n color: {\n type: String,\n default: 'primary',\n },\n content: { required: false },\n dot: Boolean,\n label: {\n type: String,\n default: '$vuetify.badge',\n },\n icon: String,\n inline: Boolean,\n offsetX: [Number, String],\n offsetY: [Number, String],\n overlap: Boolean,\n tile: Boolean,\n transition: {\n type: String,\n default: 'scale-rotate-transition',\n },\n value: { default: true },\n },\n\n computed: {\n classes (): object {\n return {\n 'v-badge--avatar': this.avatar,\n 'v-badge--bordered': this.bordered,\n 'v-badge--bottom': this.bottom,\n 'v-badge--dot': this.dot,\n 'v-badge--icon': this.icon != null,\n 'v-badge--inline': this.inline,\n 'v-badge--left': this.left,\n 'v-badge--overlap': this.overlap,\n 'v-badge--tile': this.tile,\n ...this.themeClasses,\n }\n },\n computedBottom (): string {\n return this.bottom ? 'auto' : this.computedYOffset\n },\n computedLeft (): string {\n if (this.isRtl) {\n return this.left ? this.computedXOffset : 'auto'\n }\n\n return this.left ? 'auto' : this.computedXOffset\n },\n computedRight (): string {\n if (this.isRtl) {\n return this.left ? 'auto' : this.computedXOffset\n }\n\n return !this.left ? 'auto' : this.computedXOffset\n },\n computedTop (): string {\n return this.bottom ? this.computedYOffset : 'auto'\n },\n computedXOffset (): string {\n return this.calcPosition(this.offsetX)\n },\n computedYOffset (): string {\n return this.calcPosition(this.offsetY)\n },\n isRtl (): boolean {\n return this.$vuetify.rtl\n },\n // Default fallback if offsetX\n // or offsetY are undefined.\n offset (): number {\n if (this.overlap) return this.dot ? 8 : 12\n return this.dot ? 2 : 4\n },\n styles (): object {\n if (this.inline) return {}\n\n return {\n bottom: this.computedBottom,\n left: this.computedLeft,\n right: this.computedRight,\n top: this.computedTop,\n }\n },\n },\n\n methods: {\n calcPosition (offset: string | number): string {\n return `calc(100% - ${convertToUnit(offset || this.offset)})`\n },\n genBadge () {\n const lang = this.$vuetify.lang\n const label = this.$attrs['aria-label'] || lang.t(this.label)\n\n const data = this.setBackgroundColor(this.color, {\n staticClass: 'v-badge__badge',\n style: this.styles,\n attrs: {\n 'aria-atomic': this.$attrs['aria-atomic'] || 'true',\n 'aria-label': label,\n 'aria-live': this.$attrs['aria-live'] || 'polite',\n title: this.$attrs.title,\n role: this.$attrs.role || 'status',\n },\n directives: [{\n name: 'show',\n value: this.isActive,\n }],\n })\n\n const badge = this.$createElement('span', data, [this.genBadgeContent()])\n\n if (!this.transition) return badge\n\n return this.$createElement('transition', {\n props: {\n name: this.transition,\n origin: this.origin,\n mode: this.mode,\n },\n }, [badge])\n },\n genBadgeContent () {\n // Dot prop shows no content\n if (this.dot) return undefined\n\n const slot = getSlot(this, 'badge')\n\n if (slot) return slot\n if (this.content) return String(this.content)\n if (this.icon) return this.$createElement(VIcon, this.icon)\n\n return undefined\n },\n genBadgeWrapper () {\n return this.$createElement('span', {\n staticClass: 'v-badge__wrapper',\n }, [this.genBadge()])\n },\n },\n\n render (h): VNode {\n const badge = [this.genBadgeWrapper()]\n const children = [getSlot(this)]\n const {\n 'aria-atomic': _x,\n 'aria-label': _y,\n 'aria-live': _z,\n role,\n title,\n ...attrs\n } = this.$attrs\n\n if (this.inline && this.left) children.unshift(badge)\n else children.push(badge)\n\n return h('span', {\n staticClass: 'v-badge',\n attrs,\n class: this.classes,\n }, children)\n },\n})\n","// Styles\nimport './VCheckbox.sass'\nimport '../../styles/components/_selection-controls.sass'\n\n// Components\nimport VIcon from '../VIcon'\nimport VInput from '../VInput'\n\n// Mixins\nimport Selectable from '../../mixins/selectable'\n\n/* @vue/component */\nexport default Selectable.extend({\n name: 'v-checkbox',\n\n props: {\n indeterminate: Boolean,\n indeterminateIcon: {\n type: String,\n default: '$checkboxIndeterminate',\n },\n offIcon: {\n type: String,\n default: '$checkboxOff',\n },\n onIcon: {\n type: String,\n default: '$checkboxOn',\n },\n },\n\n data () {\n return {\n inputIndeterminate: this.indeterminate,\n }\n },\n\n computed: {\n classes (): object {\n return {\n ...VInput.options.computed.classes.call(this),\n 'v-input--selection-controls': true,\n 'v-input--checkbox': true,\n 'v-input--indeterminate': this.inputIndeterminate,\n }\n },\n computedIcon (): string {\n if (this.inputIndeterminate) {\n return this.indeterminateIcon\n } else if (this.isActive) {\n return this.onIcon\n } else {\n return this.offIcon\n }\n },\n // Do not return undefined if disabled,\n // according to spec, should still show\n // a color when disabled and active\n validationState (): string | undefined {\n if (this.isDisabled && !this.inputIndeterminate) return undefined\n if (this.hasError && this.shouldValidate) return 'error'\n if (this.hasSuccess) return 'success'\n if (this.hasColor !== null) return this.computedColor\n return undefined\n },\n },\n\n watch: {\n indeterminate (val) {\n // https://github.com/vuetifyjs/vuetify/issues/8270\n this.$nextTick(() => (this.inputIndeterminate = val))\n },\n inputIndeterminate (val) {\n this.$emit('update:indeterminate', val)\n },\n isActive () {\n if (!this.indeterminate) return\n this.inputIndeterminate = false\n },\n },\n\n methods: {\n genCheckbox () {\n const { title, ...checkboxAttrs } = this.attrs$\n return this.$createElement('div', {\n staticClass: 'v-input--selection-controls__input',\n }, [\n this.$createElement(VIcon, this.setTextColor(this.validationState, {\n props: {\n dense: this.dense,\n dark: this.dark,\n light: this.light,\n },\n }), this.computedIcon),\n this.genInput('checkbox', {\n ...checkboxAttrs,\n 'aria-checked': this.inputIndeterminate\n ? 'mixed'\n : this.isActive.toString(),\n }),\n this.genRipple(this.setTextColor(this.rippleState)),\n ])\n },\n genDefaultSlot () {\n return [\n this.genCheckbox(),\n this.genLabel(),\n ]\n },\n },\n})\n","// Types\nimport { BreakpointName } from 'vuetify/types/services/breakpoint'\nimport { deprecate } from '../../util/console'\nimport Vue, { PropType } from 'vue'\n\n/* @vue/component */\nexport default Vue.extend({\n name: 'mobile',\n\n props: {\n mobileBreakpoint: {\n type: [Number, String] as PropType,\n default (): number | BreakpointName | undefined {\n // Avoid destroying unit\n // tests for users\n return this.$vuetify\n ? this.$vuetify.breakpoint.mobileBreakpoint\n : undefined\n },\n validator: v => (\n !isNaN(Number(v)) ||\n ['xs', 'sm', 'md', 'lg', 'xl'].includes(String(v))\n ),\n },\n },\n\n computed: {\n isMobile (): boolean {\n const {\n mobile,\n width,\n name,\n mobileBreakpoint,\n } = this.$vuetify.breakpoint\n\n // Check if local mobileBreakpoint matches\n // the application's mobileBreakpoint\n if (mobileBreakpoint === this.mobileBreakpoint) return mobile\n\n const mobileWidth = parseInt(this.mobileBreakpoint, 10)\n const isNumber = !isNaN(mobileWidth)\n\n return isNumber\n ? width < mobileWidth\n : name === this.mobileBreakpoint\n },\n },\n\n created () {\n /* istanbul ignore next */\n if (this.$attrs.hasOwnProperty('mobile-break-point')) {\n deprecate('mobile-break-point', 'mobile-breakpoint', this)\n }\n },\n})\n","import Vue from 'vue'\n\nexport default Vue.extend({\n name: 'transitionable',\n\n props: {\n mode: String,\n origin: String,\n transition: String,\n },\n})\n"],"sourceRoot":""}