{"version":3,"sources":["webpack:///./src/components/search/SearchFilterPopoverMenu.vue","webpack:///src/components/search/SearchFilterPopoverMenu.vue","webpack:///./src/components/search/SearchFilterPopoverMenu.vue?abab","webpack:///./src/components/search/SearchFilterPopoverMenu.vue?515b","webpack:///../../../src/components/VTooltip/VTooltip.ts","webpack:///../../../src/components/VBadge/VBadge.ts","webpack:///./src/mixins/shared/slottable/slottableMixin.js","webpack:///../../../src/mixins/transitionable/index.ts"],"names":["scopedSlots","key","fn","onMenu","attrsMenu","_c","attrs","attrsTooltip","computedFilterBadgeColor","class","buttonRecommendedClass","_vm","buttonColorClass","proxy","staticRenderFns","name","inheritAttrs","mixins","buttonSettingsMixin","slottableMixin","data","iconFilterMenu","props","visibleBadge","type","Boolean","default","filterBadgeMessage","String","filterBadgeColorClass","undefined","computed","getSuccessColorClass","component","Colorable","Delayable","Dependent","Menuable","extend","closeDelay","Number","disabled","openDelay","openOnHover","openOnFocus","tag","transition","calculatedMinWidth","closeDependents","calculatedLeft","activator","content","this","dimensions","unknown","bottom","left","top","right","activatorLeft","attach","offsetLeft","width","nudgeLeft","parseInt","nudgeRight","calcXOverflow","calculatedTop","activatorTop","offsetTop","height","nudgeTop","nudgeBottom","pageYOffset","calcYOverflow","classes","computedTransition","isActive","offsetY","offsetX","styles","maxWidth","convertToUnit","minWidth","zIndex","activeZIndex","beforeMount","$nextTick","value","callActivate","mounted","getSlotType","consoleError","methods","activate","updateDimensions","requestAnimationFrame","startTransition","deactivate","runDelay","genActivatorListeners","listeners","Activatable","options","call","focus","e","getActivator","blur","keydown","keyCode","keyCodes","esc","genActivatorAttributes","genTransition","genContent","$createElement","setBackgroundColor","color","staticClass","contentClass","menuable__content__active","activatorFixed","style","getScopeIdAttrs","directives","isContentActive","ref","getContentSlot","render","h","showLazyContent","genActivator","PositionableFactory","Themeable","Toggleable","Transitionable","avatar","bordered","required","dot","label","icon","inline","overlap","tile","themeClasses","computedBottom","computedYOffset","computedLeft","isRtl","computedXOffset","computedRight","computedTop","calcPosition","$vuetify","rtl","offset","genBadge","lang","$attrs","t","title","role","badge","genBadgeContent","origin","mode","slot","getSlot","VIcon","genBadgeWrapper","children","_x","_y","_z","unshift","push","hasSlot","$slots","Vue"],"mappings":"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","file":"js/chunk-a8175ed8.41dd69af.js","sourcesContent":["var render = function render(){var _vm=this,_c=_vm._self._c;return _c('v-menu',_vm._g(_vm._b({attrs:{\"close-on-content-click\":false,\"close-on-click\":false,\"nudge-width\":600,\"top\":\"\",\"offset-y\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on: onMenu, attrs: attrsMenu }){return [_c('v-tooltip',{attrs:{\"bottom\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({on: onTooltip, attrs: attrsTooltip}){return [_c('v-badge',{attrs:{\"overlap\":\"\",\"bordered\":\"\",\"content\":_vm.filterBadgeMessage,\"value\":_vm.visibleBadge,\"color\":_vm.computedFilterBadgeColor}},[_c('v-btn',_vm._g(_vm._b({class:_vm.buttonRecommendedClass(),attrs:{\"fab\":\"\",\"outlined\":_vm.buttonRecommendedOutlined(_vm.visibleBadge),\"text\":_vm.buttonRecommendedTextStyle,\"color\":_vm.buttonColorClass}},'v-btn',{ ...attrsMenu, ...attrsTooltip },false),{ ...onMenu, ...onTooltip }),[_c('v-icon',[_vm._t(\"iconName\",function(){return [_vm._v(\" \"+_vm._s(_vm.iconFilterMenu)+\" \")]})],2)],1)],1)]}},{key:\"default\",fn:function(){return [_vm._t(\"toolTip\",function(){return [_c('span',[_vm._v(\"Search Filter\")])]})]},proxy:true}],null,true)})]}}])},'v-menu',_vm.$attrs,false),_vm.$listeners),[_vm._t(\"default\")],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{ iconFilterMenu }}\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n Search Filter\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n\r\n\r\n\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SearchFilterPopoverMenu.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SearchFilterPopoverMenu.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./SearchFilterPopoverMenu.vue?vue&type=template&id=55cebe2e\"\nimport script from \"./SearchFilterPopoverMenu.vue?vue&type=script&lang=js\"\nexport * from \"./SearchFilterPopoverMenu.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import './VTooltip.sass'\n\n// Mixins\nimport Activatable from '../../mixins/activatable'\nimport Colorable from '../../mixins/colorable'\nimport Delayable from '../../mixins/delayable'\nimport Dependent from '../../mixins/dependent'\nimport Menuable from '../../mixins/menuable'\n\n// Helpers\nimport { convertToUnit, keyCodes, getSlotType } from '../../util/helpers'\nimport { consoleError } from '../../util/console'\n\n// Types\nimport { VNode } from 'vue'\nimport mixins from '../../util/mixins'\n\n/* @vue/component */\nexport default mixins(Colorable, Delayable, Dependent, Menuable).extend({\n name: 'v-tooltip',\n\n props: {\n closeDelay: {\n type: [Number, String],\n default: 0,\n },\n disabled: Boolean,\n openDelay: {\n type: [Number, String],\n default: 0,\n },\n openOnHover: {\n type: Boolean,\n default: true,\n },\n openOnFocus: {\n type: Boolean,\n default: true,\n },\n tag: {\n type: String,\n default: 'span',\n },\n transition: String,\n },\n\n data: () => ({\n calculatedMinWidth: 0,\n closeDependents: false,\n }),\n\n computed: {\n calculatedLeft (): string {\n const { activator, content } = this.dimensions\n const unknown = !this.bottom && !this.left && !this.top && !this.right\n const activatorLeft = this.attach !== false ? activator.offsetLeft : activator.left\n let left = 0\n\n if (this.top || this.bottom || unknown) {\n left = (\n activatorLeft +\n (activator.width / 2) -\n (content.width / 2)\n )\n } else if (this.left || this.right) {\n left = (\n activatorLeft +\n (this.right ? activator.width : -content.width) +\n (this.right ? 10 : -10)\n )\n }\n\n if (this.nudgeLeft) left -= parseInt(this.nudgeLeft)\n if (this.nudgeRight) left += parseInt(this.nudgeRight)\n\n return `${this.calcXOverflow(left, this.dimensions.content.width)}px`\n },\n calculatedTop (): string {\n const { activator, content } = this.dimensions\n const activatorTop = this.attach !== false ? activator.offsetTop : activator.top\n let top = 0\n\n if (this.top || this.bottom) {\n top = (\n activatorTop +\n (this.bottom ? activator.height : -content.height) +\n (this.bottom ? 10 : -10)\n )\n } else if (this.left || this.right) {\n top = (\n activatorTop +\n (activator.height / 2) -\n (content.height / 2)\n )\n }\n\n if (this.nudgeTop) top -= parseInt(this.nudgeTop)\n if (this.nudgeBottom) top += parseInt(this.nudgeBottom)\n if (this.attach === false) top += this.pageYOffset\n\n return `${this.calcYOverflow(top)}px`\n },\n classes (): object {\n return {\n 'v-tooltip--top': this.top,\n 'v-tooltip--right': this.right,\n 'v-tooltip--bottom': this.bottom,\n 'v-tooltip--left': this.left,\n 'v-tooltip--attached':\n this.attach === '' ||\n this.attach === true ||\n this.attach === 'attach',\n }\n },\n computedTransition (): string {\n if (this.transition) return this.transition\n\n return this.isActive ? 'scale-transition' : 'fade-transition'\n },\n offsetY (): boolean {\n return this.top || this.bottom\n },\n offsetX (): boolean {\n return this.left || this.right\n },\n styles (): object {\n return {\n left: this.calculatedLeft,\n maxWidth: convertToUnit(this.maxWidth),\n minWidth: convertToUnit(this.minWidth),\n top: this.calculatedTop,\n zIndex: this.zIndex || this.activeZIndex,\n }\n },\n },\n\n beforeMount () {\n this.$nextTick(() => {\n this.value && this.callActivate()\n })\n },\n\n mounted () {\n if (getSlotType(this, 'activator', true) === 'v-slot') {\n consoleError(`v-tooltip's activator slot must be bound, try ''`, this)\n }\n },\n\n methods: {\n activate () {\n // Update coordinates and dimensions of menu\n // and its activator\n this.updateDimensions()\n // Start the transition\n requestAnimationFrame(this.startTransition)\n },\n deactivate () {\n this.runDelay('close')\n },\n genActivatorListeners () {\n const listeners = Activatable.options.methods.genActivatorListeners.call(this)\n\n if (this.openOnFocus) {\n listeners.focus = (e: Event) => {\n this.getActivator(e)\n this.runDelay('open')\n }\n listeners.blur = (e: Event) => {\n this.getActivator(e)\n this.runDelay('close')\n }\n }\n\n listeners.keydown = (e: KeyboardEvent) => {\n if (e.keyCode === keyCodes.esc) {\n this.getActivator(e)\n this.runDelay('close')\n }\n }\n\n return listeners\n },\n genActivatorAttributes () {\n return {\n 'aria-haspopup': true,\n 'aria-expanded': String(this.isActive),\n }\n },\n genTransition () {\n const content = this.genContent()\n\n if (!this.computedTransition) return content\n\n return this.$createElement('transition', {\n props: {\n name: this.computedTransition,\n },\n }, [content])\n },\n genContent () {\n return this.$createElement(\n 'div',\n this.setBackgroundColor(this.color, {\n staticClass: 'v-tooltip__content',\n class: {\n [this.contentClass]: true,\n menuable__content__active: this.isActive,\n 'v-tooltip__content--fixed': this.activatorFixed,\n },\n style: this.styles,\n attrs: this.getScopeIdAttrs(),\n directives: [{\n name: 'show',\n value: this.isContentActive,\n }],\n ref: 'content',\n }),\n this.getContentSlot()\n )\n },\n },\n\n render (h): VNode {\n return h(this.tag, {\n staticClass: 'v-tooltip',\n class: this.classes,\n }, [\n this.showLazyContent(() => [this.genTransition()]),\n this.genActivator(),\n ])\n },\n})\n","// 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","export const slottableMixin = {\r\n methods: {\r\n /**\r\n * has Slot\r\n * @param {string} name\r\n * @return {boolean}\r\n */\r\n hasSlot(name) {\r\n return !!this.$slots[name];\r\n }\r\n }\r\n};\r\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":""}