{"version":3,"sources":["webpack:///./node_modules/bootstrap-vue/esm/icons/icon.js","webpack:///./src/@core/components/b-card-code/index.js","webpack:///./src/@core/components/toastification/ToastificationContent.vue?f9e5","webpack:///src/@core/components/toastification/ToastificationContent.vue","webpack:///./src/@core/components/toastification/ToastificationContent.vue?270b","webpack:///./src/@core/components/toastification/ToastificationContent.vue","webpack:///./src/views/components/tooltip/Tooltip.vue?4394","webpack:///./src/views/components/tooltip/TooltipPosition.vue?4234","webpack:///./src/views/components/tooltip/code.js","webpack:///src/views/components/tooltip/TooltipPosition.vue","webpack:///./src/views/components/tooltip/TooltipPosition.vue?0d1c","webpack:///./src/views/components/tooltip/TooltipPosition.vue","webpack:///./src/views/components/tooltip/TooltipVariant.vue?acb7","webpack:///src/views/components/tooltip/TooltipVariant.vue","webpack:///./src/views/components/tooltip/TooltipVariant.vue?e930","webpack:///./src/views/components/tooltip/TooltipVariant.vue","webpack:///./src/views/components/tooltip/TooltipTrigger.vue?ce8b","webpack:///src/views/components/tooltip/TooltipTrigger.vue","webpack:///./src/views/components/tooltip/TooltipTrigger.vue?c153","webpack:///./src/views/components/tooltip/TooltipTrigger.vue","webpack:///./src/views/components/tooltip/TooltipOption.vue?492f","webpack:///src/views/components/tooltip/TooltipOption.vue","webpack:///./src/views/components/tooltip/TooltipOption.vue?5d0f","webpack:///./src/views/components/tooltip/TooltipOption.vue","webpack:///./src/views/components/tooltip/TooltipMethod.vue?5fed","webpack:///src/views/components/tooltip/TooltipMethod.vue","webpack:///./src/views/components/tooltip/TooltipMethod.vue?ca6f","webpack:///./src/views/components/tooltip/TooltipMethod.vue","webpack:///./src/views/components/tooltip/TooltipEvent.vue?a30a","webpack:///src/views/components/tooltip/TooltipEvent.vue","webpack:///./src/views/components/tooltip/TooltipEvent.vue?fc95","webpack:///./src/views/components/tooltip/TooltipEvent.vue","webpack:///src/views/components/tooltip/Tooltip.vue","webpack:///./src/views/components/tooltip/Tooltip.vue?906f","webpack:///./src/views/components/tooltip/Tooltip.vue","webpack:///./node_modules/bootstrap-vue/esm/directives/tooltip/tooltip.js","webpack:///./node_modules/bootstrap-vue/esm/components/tooltip/helpers/bv-tooltip.js","webpack:///./node_modules/bootstrap-vue/esm/components/layout/row.js","webpack:///./node_modules/bootstrap-vue/esm/components/layout/col.js","webpack:///./node_modules/bootstrap-vue/esm/components/tooltip/tooltip.js","webpack:///./node_modules/bootstrap-vue/esm/components/card/card-text.js","webpack:///./node_modules/bootstrap-vue/esm/components/tooltip/helpers/bv-popper.js","webpack:///./node_modules/bootstrap-vue/esm/components/tooltip/helpers/bv-tooltip-template.js","webpack:///./node_modules/bootstrap-vue/esm/components/avatar/avatar.js","webpack:///./node_modules/bootstrap-vue/esm/utils/noop.js","webpack:///./src/@core/components/toastification/ToastificationContent.vue?b7cc"],"names":["ownKeys","object","enumerableOnly","keys","Object","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","key","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","obj","value","configurable","writable","findIconComponent","ctx","iconName","components","$options","iconComponent","$parent","props","icon","stacked","BIcon","extend","name","functional","render","h","_ref","data","parent","replace","concat","BCardCode","_vm","this","_h","$createElement","_c","_self","staticClass","attrs","variant","class","domProps","_s","title","_e","text","on","$event","$emit","hideClose","staticRenderFns","BAvatar","type","default","component","scopedSlots","_u","fn","_v","codePosition","proxy","directives","rawName","expression","modifiers","codeVariantCustom","codeTriggers","codeOptions","codeMethods","codeEvent","BButton","BCardText","Ripple","delay","BTooltip","show","hide","showTooltip","hideTooltip","disabled","ref","methods","onShow","onShown","onHide","onHidden","ToastificationContent","BRow","BCol","TooltipPosition","TooltipVariant","TooltipTrigger","TooltipOption","TooltipMethod","TooltipEvent","BV_TOOLTIP","DefaultTrigger","validTriggers","focus","hover","click","blur","manual","htmlRE","noninteractiveRE","noFadeRE","placementRE","boundaryRE","delayRE","delayShowRE","delayHideRE","offsetRE","variantRE","spacesRE","parseBindings","bindings","vnode","config","undefined","trigger","placement","fallbackPlacement","container","animation","offset","id","html","interactive","boundary","String","boundaryPadding","customClass","arg","mod","test","slice","selectedTriggers","join","trim","toLowerCase","split","applyTooltip","el","context","_scopeId","__bv_prev_data__","$on","updateData","triggers","noFade","oldData","newData","prop","removeTooltip","$destroy","VBTooltip","bind","componentUpdated","$nextTick","unbind","MODAL_SELECTOR","ROOT_EVENT_NAME_MODAL_HIDDEN","SIDEBAR_SELECTOR","CONTAINER_SELECTOR","DROPDOWN_CLASS","DROPDOWN_OPEN_SELECTOR","DATA_TITLE_ATTR","templateData","content","arrowPadding","BVTooltip","mixins","activeTrigger","localShow","computed","templateType","computedId","computedDelay","computedTriggers","sort","isWithActiveTrigger","computedTemplateData","watch","newTriggers","oldTriggers","_this","unListen","listen","handleTemplateUpdate","newValue","oldValue","disable","enable","created","_this2","$_tip","$_hoverTimeout","$_hoverState","$_visibleInterval","$_enabled","$_noop","$once","getTarget","document","body","scopeId","updated","deactivated","forceHide","beforeDestroy","setWhileOpenListeners","clearHoverTimeout","clearVisibilityInterval","destroyTemplate","getTemplate","_this3","titleUpdated","fixTitle","createTemplateAndShow","getContainer","Template","$tip","propsData","getPlacementTarget","getBoundary","onTemplateShow","onTemplateShown","onTemplateHide","onTemplateHidden","handleEvent","$mount","appendChild","createElement","hideTemplate","clearActiveTriggers","localPlacementTarget","_unused","removeAriaDescribedby","restoreTitle","getTemplateElement","$el","_this4","dropdownOpen","showEvt","buildEvent","cancelable","emitEvent","defaultPrevented","addAriaDescribedby","force","tip","hideEvt","prevHoverState","leave","getTargetId","isInModal","isDropdown","clearTimeout","clearInterval","desc","_this5","d","options","relatedTarget","componentId","vueTarget","bvEvent","emitOnRoot","_this6","setRootListener","_this7","events","event","$root","method","doHide","doShow","doDisable","doEnable","setModalListener","setDropdownListener","visibleCheck","setOnTouchStartListener","_this8","setInterval","parentNode","_this9","documentElement","children","__vue__","enter","eventTarget","currentTarget","toggle","_this10","setTimeout","_this11","COMMON_ALIGNMENT","computeRowColsClass","breakpoint","cols","computeRowColsBreakpoint","rowColsPropList","generateProps","rowColsProps","reduce","alignContent","alignH","alignV","noGutters","tag","_classList$push","classList","c","ALIGN_SELF_VALUES","computeBreakpoint","className","computeBreakpointClass","breakpointPropMap","breakpoints","breakpointCol","breakpointOffset","breakpointOrder","col","order","alignSelf","_keys","hasColClasses","some","_makePropsConfigurabl","_watch","MODEL_PROP_NAME_ENABLED","MODEL_EVENT_NAME_ENABLED","MODEL_PROP_NAME_SHOW","MODEL_EVENT_NAME_SHOW","inheritAttrs","localTitle","localContent","noninteractive","$props","templateTitleContent","$_toolpop","updateContent","$off","doOpen","doClose","mounted","Component","getComponent","$toolpop","onDisabled","onEnabled","setTitle","normalizeSlot","setContent","textTag","AttachmentMap","AUTO","TOP","RIGHT","BOTTOM","LEFT","TOPLEFT","TOPRIGHT","RIGHTTOP","RIGHTBOTTOM","BOTTOMLEFT","BOTTOMRIGHT","LEFTTOP","LEFTBOTTOM","OffsetMap","BVPopper","attachment","getAttachment","popperConfig","getOffset","flip","behavior","arrow","element","preventOverflow","padding","boundariesElement","onCreate","originalPlacement","popperPlacementChange","onUpdate","$_popper","popperCreate","handleDestroy","beforeMount","updatePopper","destroyPopper","destroyed","removeChild","toUpperCase","$refs","arrowOffset","width","destroy","scheduleUpdate","renderTemplate","appear","beforeEnter","afterEnter","beforeLeave","afterLeave","BVTooltipTemplate","extends","templateClasses","templateAttributes","$attrs","role","tabindex","scopedStyleAttrs","templateListeners","mouseenter","mouseleave","focusin","focusout","$title","innerHTML","CLASS_NAME","SIZES","FONT_SIZE_SCALE","BADGE_FONT_SIZE_SCALE","computeSize","linkProps","alt","ariaLabel","badge","badgeLeft","badgeOffset","badgeTop","badgeVariant","button","buttonType","rounded","size","square","src","inject","bvAvatarGroup","localSrc","computedSize","computedVariant","computedRounded","fontStyle","fontSize","indexOf","marginStyle","overlapScale","marginLeft","marginRight","badgeStyle","top","bottom","left","right","onImgError","onClick","_class2","link","$content","hasNormalizedSlot","style","height","error","$badge","hasBadgeSlot","badgeText","componentData","noop"],"mappings":"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","file":"js/chunk-20c2e95d.23bdf00c.js","sourcesContent":["function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport { Vue, mergeData } from '../vue';\nimport { NAME_ICON } from '../constants/components';\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_STRING } from '../constants/props';\nimport { RX_ICON_PREFIX } from '../constants/regex';\nimport { omit, sortKeys } from '../utils/object';\nimport { makeProp, makePropsConfigurable } from '../utils/props';\nimport { pascalCase, trim } from '../utils/string';\nimport { BIconBlank } from './icons';\nimport { props as BVIconBaseProps } from './helpers/icon-base'; // --- Helper methods ---\n\nvar findIconComponent = function findIconComponent(ctx, iconName) {\n if (!ctx) {\n return null;\n }\n\n var components = (ctx.$options || {}).components;\n var iconComponent = components[iconName];\n return iconComponent || findIconComponent(ctx.$parent, iconName);\n}; // --- Props ---\n\n\nexport var props = makePropsConfigurable(sortKeys(_objectSpread(_objectSpread({}, omit(BVIconBaseProps, ['content', 'stacked'])), {}, {\n icon: makeProp(PROP_TYPE_STRING),\n stacked: makeProp(PROP_TYPE_BOOLEAN, false)\n})), NAME_ICON); // --- Main component ---\n// Helper BIcon component\n// Requires the requested icon component to be installed\n// @vue/component\n\nexport var BIcon = /*#__PURE__*/Vue.extend({\n name: NAME_ICON,\n functional: true,\n props: props,\n render: function render(h, _ref) {\n var data = _ref.data,\n props = _ref.props,\n parent = _ref.parent;\n var icon = pascalCase(trim(props.icon || '')).replace(RX_ICON_PREFIX, ''); // If parent context exists, we check to see if the icon has been registered\n // either locally in the parent component, or globally at the `$root` level\n // If not registered, we render a blank icon\n\n return h(icon ? findIconComponent(parent, \"BIcon\".concat(icon)) || BIconBlank : BIconBlank, mergeData(data, {\n props: _objectSpread(_objectSpread({}, props), {}, {\n icon: null\n })\n }));\n }\n});","import BCardCode from './BCardCode.vue'\r\n\r\nexport default BCardCode\r\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"toastification\"},[_c('div',{staticClass:\"d-flex align-items-start\"},[_c('b-avatar',{staticClass:\"mr-75 flex-shrink-0\",attrs:{\"variant\":_vm.variant,\"size\":\"1.8rem\"}},[_c('feather-icon',{attrs:{\"icon\":_vm.icon,\"size\":\"15\"}})],1),_c('div',{staticClass:\"d-flex flex-grow-1\"},[_c('div',[(_vm.title)?_c('h5',{staticClass:\"mb-0 font-weight-bolder toastification-title\",class:(\"text-\" + _vm.variant),domProps:{\"textContent\":_vm._s(_vm.title)}}):_vm._e(),(_vm.text)?_c('small',{staticClass:\"d-inline-block text-body\",domProps:{\"textContent\":_vm._s(_vm.text)}}):_vm._e()]),_c('span',{staticClass:\"cursor-pointer toastification-close-icon ml-auto \",on:{\"click\":function($event){return _vm.$emit('close-toast')}}},[(!_vm.hideClose)?_c('feather-icon',{staticClass:\"text-body\",attrs:{\"icon\":\"XIcon\"}}):_vm._e()],1)])],1)])}\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 \r\n
\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!./ToastificationContent.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!./ToastificationContent.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ToastificationContent.vue?vue&type=template&id=55dd3057&scoped=true&\"\nimport script from \"./ToastificationContent.vue?vue&type=script&lang=js&\"\nexport * from \"./ToastificationContent.vue?vue&type=script&lang=js&\"\nimport style0 from \"./ToastificationContent.vue?vue&type=style&index=0&id=55dd3057&prod&lang=scss&scoped=true&\"\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 \"55dd3057\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('b-row',[_c('b-col',{attrs:{\"cols\":\"12\"}},[_c('tooltip-position'),_c('tooltip-variant'),_c('tooltip-trigger'),_c('tooltip-option'),_c('tooltip-method'),_c('tooltip-event')],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('b-card-code',{attrs:{\"title\":\"Tooltip Positions\"},scopedSlots:_vm._u([{key:\"code\",fn:function(){return [_vm._v(\" \"+_vm._s(_vm.codePosition)+\" \")]},proxy:true}])},[_c('b-card-text',{staticClass:\"mb-0\"},[_c('span',[_vm._v(\"Twelve options are available for positioning: \")]),_c('code',[_vm._v(\"top, topleft, topright, right, righttop, rightbottom, bottom, bottomleft, bottomright, left, lefttop,\")]),_c('span',[_vm._v(\" and \")]),_c('code',[_vm._v(\"leftbottom\")]),_c('span',[_vm._v(\" aligned. The default position is top.\")])]),_c('div',{staticClass:\"demo-inline-spacing\"},[_c('b-button',{directives:[{name:\"ripple\",rawName:\"v-ripple.400\",value:('rgba(113, 102, 240, 0.15)'),expression:\"'rgba(113, 102, 240, 0.15)'\",modifiers:{\"400\":true}},{name:\"b-tooltip\",rawName:\"v-b-tooltip.hover.top\",value:('Tooltip on top!'),expression:\"'Tooltip on top!'\",modifiers:{\"hover\":true,\"top\":true}}],attrs:{\"variant\":\"outline-primary\"}},[_vm._v(\" Tooltip on top \")]),_c('b-button',{directives:[{name:\"ripple\",rawName:\"v-ripple.400\",value:('rgba(113, 102, 240, 0.15)'),expression:\"'rgba(113, 102, 240, 0.15)'\",modifiers:{\"400\":true}},{name:\"b-tooltip\",rawName:\"v-b-tooltip.hover.right\",value:('Tooltip on right!'),expression:\"'Tooltip on right!'\",modifiers:{\"hover\":true,\"right\":true}}],attrs:{\"variant\":\"outline-primary\"}},[_vm._v(\" Tooltip on right \")]),_c('b-button',{directives:[{name:\"ripple\",rawName:\"v-ripple.400\",value:('rgba(113, 102, 240, 0.15)'),expression:\"'rgba(113, 102, 240, 0.15)'\",modifiers:{\"400\":true}},{name:\"b-tooltip\",rawName:\"v-b-tooltip.hover.left\",value:('Tooltip on left!'),expression:\"'Tooltip on left!'\",modifiers:{\"hover\":true,\"left\":true}}],attrs:{\"variant\":\"outline-primary\"}},[_vm._v(\" Tooltip on left \")]),_c('b-button',{directives:[{name:\"ripple\",rawName:\"v-ripple.400\",value:('rgba(113, 102, 240, 0.15)'),expression:\"'rgba(113, 102, 240, 0.15)'\",modifiers:{\"400\":true}},{name:\"b-tooltip\",rawName:\"v-b-tooltip.hover.bottom\",value:('Tooltip on bottom!'),expression:\"'Tooltip on bottom!'\",modifiers:{\"hover\":true,\"bottom\":true}}],attrs:{\"variant\":\"outline-primary\"}},[_vm._v(\" Tooltip on bottom \")])],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","export const codeTooltipDefault = `\r\n\r\n \r\n \r\n \r\n \r\n Button\r\n \r\n
\r\n\r\n\r\n\r\n`\r\n\r\nexport const codePosition = `\r\n\r\n \r\n \r\n Tooltip on top\r\n \r\n \r\n Tooltip on right\r\n \r\n \r\n Tooltip on left\r\n \r\n \r\n Tooltip on bottom\r\n \r\n
\r\n\r\n\r\n\r\n`\r\n\r\nexport const codeVariantCustom = `\r\n\r\n \r\n\r\n \r\n \r\n Default\r\n \r\n\r\n \r\n \r\n Primary\r\n \r\n\r\n \r\n \r\n Secondary\r\n \r\n\r\n \r\n \r\n Success\r\n \r\n\r\n \r\n \r\n Danger\r\n \r\n\r\n \r\n \r\n Warning\r\n \r\n\r\n \r\n \r\n Info\r\n \r\n\r\n \r\n \r\n Dark\r\n \r\n
\r\n\r\n\r\n\r\n`\r\n\r\nexport const codeTriggers = `\r\n\r\n \r\n \r\n On Cllick Trigger\r\n \r\n \r\n On Hover Trigger\r\n \r\n \r\n Hover + Focus Trigger\r\n \r\n \r\n On Focus Trigger\r\n \r\n
\r\n\r\n\r\n\r\n`\r\n\r\nexport const codeOptions = `\r\n\r\n \r\n \r\n No animation\r\n \r\n \r\n Without Fade Animation class=\"mb-1 mb-md-0\"\r\n \r\n \r\n Delay Tooltip\r\n \r\n \r\n Delay triggers\r\n \r\n
\r\n\r\n\r\n\r\n`\r\n\r\nexport const codeMethods = `\r\n\r\n \r\n \r\n Show Toggle Tooltip\r\n \r\n \r\n tooltip!\r\n \r\n\r\n \r\n Hide Toggle Tooltip\r\n \r\n \r\n tooltip!\r\n \r\n\r\n \r\n Toggle Tooltip\r\n \r\n \r\n tooltip!\r\n \r\n\r\n \r\n I have a tooltip\r\n \r\n\r\n \r\n {{ disabled ? 'Enable' : 'Disable' }} Tooltip by prop\r\n \r\n \r\n Hello World!\r\n \r\n
\r\n\r\n\r\n\r\n`\r\n\r\nexport const codeEvent = `\r\n\r\n \r\n\r\n \r\n \r\n Show Event Tooltip\r\n \r\n \r\n \r\n tooltip!\r\n \r\n\r\n \r\n \r\n Shown Event Tooltip\r\n \r\n \r\n \r\n tooltip!\r\n \r\n\r\n \r\n \r\n Hide Event Tooltip\r\n \r\n \r\n \r\n tooltip!\r\n \r\n\r\n \r\n \r\n Hidden Event Tooltip\r\n \r\n\r\n \r\n \r\n tooltip!\r\n \r\n
\r\n\r\n\r\n\r\n`\r\n","\r\n \r\n \r\n Twelve options are available for positioning: \r\n top, topleft, topright, right, righttop, rightbottom, bottom, bottomleft, bottomright, left, lefttop,
\r\n and \r\n leftbottom
\r\n aligned. The default position is top.\r\n \r\n\r\n \r\n \r\n Tooltip on top\r\n \r\n \r\n Tooltip on right\r\n \r\n \r\n Tooltip on left\r\n \r\n \r\n Tooltip on bottom\r\n \r\n
\r\n\r\n \r\n {{ codePosition }}\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!./TooltipPosition.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!./TooltipPosition.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TooltipPosition.vue?vue&type=template&id=5e609426&\"\nimport script from \"./TooltipPosition.vue?vue&type=script&lang=js&\"\nexport * from \"./TooltipPosition.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","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('b-card-code',{attrs:{\"title\":\"Variants and custom class\"},scopedSlots:_vm._u([{key:\"code\",fn:function(){return [_vm._v(\" \"+_vm._s(_vm.codeVariantCustom)+\" \")]},proxy:true}])},[_c('b-card-text',{staticClass:\"mb-0\"},[_vm._v(\" BootstrapVue's tooltips support contextual color variants via our custom CSS, either by using directive modifiers or config options: \")]),_c('div',{staticClass:\"demo-inline-spacing\"},[_c('b-button',{directives:[{name:\"b-tooltip\",rawName:\"v-b-tooltip.hover\",modifiers:{\"hover\":true}}],attrs:{\"title\":\"Default variant\",\"variant\":\"gradient-primary\"}},[_vm._v(\" Default \")]),_c('b-button',{directives:[{name:\"ripple\",rawName:\"v-ripple.400\",value:('rgba(113, 102, 240, 0.15)'),expression:\"'rgba(113, 102, 240, 0.15)'\",modifiers:{\"400\":true}},{name:\"b-tooltip\",rawName:\"v-b-tooltip.hover.v-primary\",modifiers:{\"hover\":true,\"v-primary\":true}}],attrs:{\"title\":\"Primary variant\",\"variant\":\"outline-primary\"}},[_vm._v(\" Primary \")]),_c('b-button',{directives:[{name:\"ripple\",rawName:\"v-ripple.400\",value:('rgba(186, 191, 199, 0.15)'),expression:\"'rgba(186, 191, 199, 0.15)'\",modifiers:{\"400\":true}},{name:\"b-tooltip\",rawName:\"v-b-tooltip.hover.v-secondary\",modifiers:{\"hover\":true,\"v-secondary\":true}}],attrs:{\"title\":\"Secondary variant\",\"variant\":\"outline-secondary\"}},[_vm._v(\" Secondary \")]),_c('b-button',{directives:[{name:\"ripple\",rawName:\"v-ripple.400\",value:('rgba(40, 199, 111, 0.15)'),expression:\"'rgba(40, 199, 111, 0.15)'\",modifiers:{\"400\":true}},{name:\"b-tooltip\",rawName:\"v-b-tooltip.hover.v-success\",modifiers:{\"hover\":true,\"v-success\":true}}],attrs:{\"title\":\"Success variant\",\"variant\":\"outline-success\"}},[_vm._v(\" Success \")]),_c('b-button',{directives:[{name:\"ripple\",rawName:\"v-ripple.400\",value:('rgba(234, 84, 85, 0.15)'),expression:\"'rgba(234, 84, 85, 0.15)'\",modifiers:{\"400\":true}},{name:\"b-tooltip\",rawName:\"v-b-tooltip.hover.v-danger\",modifiers:{\"hover\":true,\"v-danger\":true}}],attrs:{\"title\":\"Danger variant\",\"variant\":\"outline-danger\"}},[_vm._v(\" Danger \")]),_c('b-button',{directives:[{name:\"ripple\",rawName:\"v-ripple.400\",value:('rgba(255, 159, 67, 0.15)'),expression:\"'rgba(255, 159, 67, 0.15)'\",modifiers:{\"400\":true}},{name:\"b-tooltip\",rawName:\"v-b-tooltip.hover.v-warning\",modifiers:{\"hover\":true,\"v-warning\":true}}],attrs:{\"title\":\"Warning variant\",\"variant\":\"outline-warning\"}},[_vm._v(\" Warning \")]),_c('b-button',{directives:[{name:\"ripple\",rawName:\"v-ripple.400\",value:('rgba(0, 207, 232, 0.15)'),expression:\"'rgba(0, 207, 232, 0.15)'\",modifiers:{\"400\":true}},{name:\"b-tooltip\",rawName:\"v-b-tooltip.hover.v-info\",modifiers:{\"hover\":true,\"v-info\":true}}],attrs:{\"title\":\"Info variant\",\"variant\":\"outline-info\"}},[_vm._v(\" Info \")]),_c('b-button',{directives:[{name:\"ripple\",rawName:\"v-ripple.400\",value:('rgba(30, 30, 30, 0.15)'),expression:\"'rgba(30, 30, 30, 0.15)'\",modifiers:{\"400\":true}},{name:\"b-tooltip\",rawName:\"v-b-tooltip.hover.v-dark\",modifiers:{\"hover\":true,\"v-dark\":true}}],attrs:{\"title\":\"Dark variant\",\"variant\":\"outline-dark\"}},[_vm._v(\" Dark \")])],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n \r\n \r\n BootstrapVue's tooltips support contextual color variants via our custom CSS, either by using directive\r\n modifiers or config options:\r\n \r\n\r\n \r\n\r\n \r\n \r\n Default\r\n \r\n\r\n \r\n \r\n Primary\r\n \r\n\r\n \r\n \r\n Secondary\r\n \r\n\r\n \r\n \r\n Success\r\n \r\n\r\n \r\n \r\n Danger\r\n \r\n\r\n \r\n \r\n Warning\r\n \r\n\r\n \r\n \r\n Info\r\n \r\n\r\n \r\n \r\n Dark\r\n \r\n
\r\n\r\n \r\n {{ codeVariantCustom }}\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!./TooltipVariant.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!./TooltipVariant.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TooltipVariant.vue?vue&type=template&id=13750854&\"\nimport script from \"./TooltipVariant.vue?vue&type=script&lang=js&\"\nexport * from \"./TooltipVariant.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","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('b-card-code',{attrs:{\"title\":\"Tooltip Triggers\"},scopedSlots:_vm._u([{key:\"code\",fn:function(){return [_vm._v(\" \"+_vm._s(_vm.codeTriggers)+\" \")]},proxy:true}])},[_c('b-card-text',{staticClass:\"mb-0\"},[_vm._v(\" Tooltip is triggered using - click | hover | focus | manual options.You may pass multiple triggers; separate them with a space. \")]),_c('div',{staticClass:\"demo-inline-spacing\"},[_c('b-button',{directives:[{name:\"ripple\",rawName:\"v-ripple.400\",value:('rgba(113, 102, 240, 0.15)'),expression:\"'rgba(113, 102, 240, 0.15)'\",modifiers:{\"400\":true}},{name:\"b-tooltip\",rawName:\"v-b-tooltip.click.v-primary\",modifiers:{\"click\":true,\"v-primary\":true}}],attrs:{\"title\":\"On Cllick Trigger\",\"variant\":\"outline-primary\"}},[_vm._v(\" On Cllick Trigger \")]),_c('b-button',{directives:[{name:\"ripple\",rawName:\"v-ripple.400\",value:('rgba(113, 102, 240, 0.15)'),expression:\"'rgba(113, 102, 240, 0.15)'\",modifiers:{\"400\":true}},{name:\"b-tooltip\",rawName:\"v-b-tooltip.hover.v-primary\",modifiers:{\"hover\":true,\"v-primary\":true}}],attrs:{\"title\":\"On Hover Trigger\",\"variant\":\"outline-primary\"}},[_vm._v(\" On Hover Trigger \")]),_c('b-button',{directives:[{name:\"ripple\",rawName:\"v-ripple.400\",value:('rgba(113, 102, 240, 0.15)'),expression:\"'rgba(113, 102, 240, 0.15)'\",modifiers:{\"400\":true}},{name:\"b-tooltip\",rawName:\"v-b-tooltip.hover.focus.v-primary\",modifiers:{\"hover\":true,\"focus\":true,\"v-primary\":true}}],attrs:{\"title\":\"Hover + Focus Trigger\",\"variant\":\"outline-primary\"}},[_vm._v(\" Hover + Focus Trigger \")]),_c('b-button',{directives:[{name:\"ripple\",rawName:\"v-ripple.400\",value:('rgba(113, 102, 240, 0.15)'),expression:\"'rgba(113, 102, 240, 0.15)'\",modifiers:{\"400\":true}},{name:\"b-tooltip\",rawName:\"v-b-tooltip.focus.v-primary\",modifiers:{\"focus\":true,\"v-primary\":true}}],attrs:{\"title\":\"On Focus Trigger\",\"variant\":\"outline-primary\"}},[_vm._v(\" On Focus Trigger \")])],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n \r\n \r\n Tooltip is triggered using - click | hover | focus | manual options.You may pass multiple triggers; separate them\r\n with a space.\r\n \r\n\r\n \r\n \r\n On Cllick Trigger\r\n \r\n \r\n On Hover Trigger\r\n \r\n \r\n Hover + Focus Trigger\r\n \r\n \r\n On Focus Trigger\r\n \r\n
\r\n\r\n \r\n {{ codeTriggers }}\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!./TooltipTrigger.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!./TooltipTrigger.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TooltipTrigger.vue?vue&type=template&id=5ca33244&\"\nimport script from \"./TooltipTrigger.vue?vue&type=script&lang=js&\"\nexport * from \"./TooltipTrigger.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","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('b-card-code',{attrs:{\"title\":\"Tooltip Options\"},scopedSlots:_vm._u([{key:\"code\",fn:function(){return [_vm._v(\" \"+_vm._s(_vm.codeOptions)+\" \")]},proxy:true}])},[_c('b-card-text',{staticClass:\"mb-0\"},[_c('span',[_vm._v(\"Use the \")]),_c('code',[_vm._v(\"nofade\")]),_c('span',[_vm._v(\" prop to turn off animation.\")]),_c('span',[_vm._v(\"Delay showing and hiding the tooltip (ms). If a number is supplied, delay is applied to both hide/show. Object structure is: \")]),_c('code',[_vm._v(\"delay: { \\\"show\\\": 500, \\\"hide\\\": 100 }\")])]),_c('div',{staticClass:\"demo-inline-spacing\"},[_c('b-button',{directives:[{name:\"ripple\",rawName:\"v-ripple.400\",value:('rgba(113, 102, 240, 0.15)'),expression:\"'rgba(113, 102, 240, 0.15)'\",modifiers:{\"400\":true}}],attrs:{\"id\":\"tooltip-target-1\",\"variant\":\"outline-primary\"}},[_vm._v(\" No animation \")]),_c('b-tooltip',{attrs:{\"target\":\"tooltip-target-1\",\"triggers\":\"hover\",\"no-fade\":\"\"}},[_vm._v(\" Without Fade Animation class=\\\"mb-1 mb-md-0\\\" \")]),_c('b-button',{directives:[{name:\"ripple\",rawName:\"v-ripple.400\",value:('rgba(113, 102, 240, 0.15)'),expression:\"'rgba(113, 102, 240, 0.15)'\",modifiers:{\"400\":true}}],attrs:{\"id\":\"tooltip-target-2\",\"variant\":\"outline-primary\"}},[_vm._v(\" Delay Tooltip \")]),_c('b-tooltip',{attrs:{\"target\":\"tooltip-target-2\",\"delay\":_vm.delay}},[_vm._v(\" Delay triggers \")])],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n \r\n \r\n Use the \r\n nofade
\r\n prop to turn off animation.\r\n Delay showing and hiding the tooltip (ms). If a number is supplied, delay is applied to both hide/show.\r\n Object structure is: \r\n delay: { \"show\": 500, \"hide\": 100 }
\r\n \r\n\r\n \r\n \r\n No animation\r\n \r\n \r\n Without Fade Animation class=\"mb-1 mb-md-0\"\r\n \r\n \r\n Delay Tooltip\r\n \r\n \r\n Delay triggers\r\n \r\n
\r\n\r\n \r\n {{ codeOptions }}\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!./TooltipOption.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!./TooltipOption.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TooltipOption.vue?vue&type=template&id=57bfb0f1&\"\nimport script from \"./TooltipOption.vue?vue&type=script&lang=js&\"\nexport * from \"./TooltipOption.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","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('b-card-code',{attrs:{\"title\":\"Tooltip Methods\"},scopedSlots:_vm._u([{key:\"code\",fn:function(){return [_vm._v(\" \"+_vm._s(_vm.codeMethods)+\" \")]},proxy:true}])},[_c('b-card-text',{staticClass:\"mb-0\"},[_vm._v(\" This is considered a “manual” triggering of the tooltip. Tooltips with zero-length titles are never displayed. \")]),_c('div',{staticClass:\"demo-inline-spacing\"},[_c('b-button',{directives:[{name:\"ripple\",rawName:\"v-ripple.400\",value:('rgba(113, 102, 240, 0.15)'),expression:\"'rgba(113, 102, 240, 0.15)'\",modifiers:{\"400\":true}}],attrs:{\"id\":\"tooltip-button-1\",\"variant\":\"outline-primary\"},on:{\"click\":_vm.showTooltip}},[_vm._v(\" Show Toggle Tooltip \")]),_c('b-tooltip',{attrs:{\"target\":\"tooltip-button-1\",\"placement\":\"top\",\"triggers\":\"click\"}},[_vm._v(\" tooltip! \")]),_c('b-button',{directives:[{name:\"ripple\",rawName:\"v-ripple.400\",value:('rgba(113, 102, 240, 0.15)'),expression:\"'rgba(113, 102, 240, 0.15)'\",modifiers:{\"400\":true}}],attrs:{\"id\":\"tooltip-button-2\",\"variant\":\"outline-primary\"},on:{\"click\":_vm.hideTooltip}},[_vm._v(\" Hide Toggle Tooltip \")]),_c('b-tooltip',{attrs:{\"target\":\"tooltip-button-2\",\"placement\":\"top\",\"triggers\":\"hover\"}},[_vm._v(\" tooltip! \")]),_c('b-button',{directives:[{name:\"ripple\",rawName:\"v-ripple.400\",value:('rgba(113, 102, 240, 0.15)'),expression:\"'rgba(113, 102, 240, 0.15)'\",modifiers:{\"400\":true}}],attrs:{\"id\":\"tooltip-button-3\",\"variant\":\"outline-primary\"},on:{\"click\":function($event){_vm.show = !_vm.show}}},[_vm._v(\" Toggle Tooltip \")]),_c('b-tooltip',{attrs:{\"show\":_vm.show,\"target\":\"tooltip-button-3\",\"placement\":\"top\",\"triggers\":\"click\"},on:{\"update:show\":function($event){_vm.show=$event}}},[_vm._v(\" tooltip! \")]),_c('b-button',{directives:[{name:\"ripple\",rawName:\"v-ripple.400\",value:('rgba(113, 102, 240, 0.15)'),expression:\"'rgba(113, 102, 240, 0.15)'\",modifiers:{\"400\":true}}],attrs:{\"id\":\"tooltip-button-disable\",\"variant\":\"outline-primary\"}},[_vm._v(\" I have a tooltip \")]),_c('b-button',{directives:[{name:\"ripple\",rawName:\"v-ripple.400\",value:('rgba(255, 255, 255, 0.15)'),expression:\"'rgba(255, 255, 255, 0.15)'\",modifiers:{\"400\":true}}],attrs:{\"variant\":_vm.disabled ? 'success':'danger'},on:{\"click\":function($event){_vm.disabled = !_vm.disabled}}},[_vm._v(\" \"+_vm._s(_vm.disabled ? 'Enable' : 'Disable')+\" Tooltip by prop \")]),_c('b-tooltip',{ref:\"tooltip\",attrs:{\"disabled\":_vm.disabled,\"target\":\"tooltip-button-disable\"},on:{\"update:disabled\":function($event){_vm.disabled=$event}}},[_c('span',[_vm._v(\"Hello \")]),_c('strong',[_vm._v(\"World!\")])])],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n \r\n \r\n This is considered a “manual” triggering of the tooltip. Tooltips with zero-length titles are never displayed.\r\n \r\n\r\n \r\n \r\n Show Toggle Tooltip\r\n \r\n \r\n tooltip!\r\n \r\n\r\n \r\n Hide Toggle Tooltip\r\n \r\n \r\n tooltip!\r\n \r\n\r\n \r\n Toggle Tooltip\r\n \r\n \r\n tooltip!\r\n \r\n\r\n \r\n I have a tooltip\r\n \r\n\r\n \r\n {{ disabled ? 'Enable' : 'Disable' }} Tooltip by prop\r\n \r\n \r\n Hello World!\r\n \r\n
\r\n\r\n \r\n {{ codeMethods }}\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!./TooltipMethod.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!./TooltipMethod.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TooltipMethod.vue?vue&type=template&id=7d2b81c2&\"\nimport script from \"./TooltipMethod.vue?vue&type=script&lang=js&\"\nexport * from \"./TooltipMethod.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","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('b-card-code',{attrs:{\"title\":\"Tooltip Events\"},scopedSlots:_vm._u([{key:\"code\",fn:function(){return [_vm._v(\" \"+_vm._s(_vm.codeEvent)+\" \")]},proxy:true}])},[_c('div',{staticClass:\"demo-inline-spacing\"},[_c('b-button',{directives:[{name:\"ripple\",rawName:\"v-ripple.400\",value:('rgba(113, 102, 240, 0.15)'),expression:\"'rgba(113, 102, 240, 0.15)'\",modifiers:{\"400\":true}}],attrs:{\"id\":\"tooltip-button-show-event\",\"variant\":\"outline-primary\"}},[_vm._v(\" Show Event Tooltip \")]),_c('b-tooltip',{ref:\"tooltip-show\",attrs:{\"target\":\"tooltip-button-show-event\",\"triggers\":\"click\"},on:{\"show\":_vm.onShow}},[_vm._v(\" tooltip! \")]),_c('b-button',{directives:[{name:\"ripple\",rawName:\"v-ripple.400\",value:('rgba(113, 102, 240, 0.15)'),expression:\"'rgba(113, 102, 240, 0.15)'\",modifiers:{\"400\":true}}],attrs:{\"id\":\"tooltip-button-shown-event\",\"variant\":\"outline-primary\"}},[_vm._v(\" Shown Event Tooltip \")]),_c('b-tooltip',{ref:\"tooltip-shown\",attrs:{\"target\":\"tooltip-button-shown-event\",\"triggers\":\"click\"},on:{\"shown\":_vm.onShown}},[_vm._v(\" tooltip! \")]),_c('b-button',{directives:[{name:\"ripple\",rawName:\"v-ripple.400\",value:('rgba(113, 102, 240, 0.15)'),expression:\"'rgba(113, 102, 240, 0.15)'\",modifiers:{\"400\":true}}],attrs:{\"id\":\"tooltip-button-hide-event\",\"variant\":\"outline-primary\"}},[_vm._v(\" Hide Event Tooltip \")]),_c('b-tooltip',{ref:\"tooltip-hide\",attrs:{\"target\":\"tooltip-button-hide-event\",\"triggers\":\"click\"},on:{\"hide\":_vm.onHide}},[_vm._v(\" tooltip! \")]),_c('b-button',{directives:[{name:\"ripple\",rawName:\"v-ripple.400\",value:('rgba(113, 102, 240, 0.15)'),expression:\"'rgba(113, 102, 240, 0.15)'\",modifiers:{\"400\":true}}],staticClass:\"mb-1 mb-xl-0\",attrs:{\"id\":\"tooltip-button-hidden-event\",\"variant\":\"outline-primary\"}},[_vm._v(\" Hidden Event Tooltip \")]),_c('b-tooltip',{ref:\"tooltip-hidden\",attrs:{\"target\":\"tooltip-button-hidden-event\",\"triggers\":\"click\"},on:{\"hidden\":_vm.onHidden}},[_vm._v(\" tooltip! \")])],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n \r\n \r\n\r\n \r\n \r\n Show Event Tooltip\r\n \r\n \r\n \r\n tooltip!\r\n \r\n\r\n \r\n \r\n Shown Event Tooltip\r\n \r\n \r\n \r\n tooltip!\r\n \r\n\r\n \r\n \r\n Hide Event Tooltip\r\n \r\n \r\n \r\n tooltip!\r\n \r\n\r\n \r\n \r\n Hidden Event Tooltip\r\n \r\n\r\n \r\n \r\n tooltip!\r\n \r\n
\r\n\r\n \r\n {{ codeEvent }}\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!./TooltipEvent.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!./TooltipEvent.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TooltipEvent.vue?vue&type=template&id=dde8983a&\"\nimport script from \"./TooltipEvent.vue?vue&type=script&lang=js&\"\nexport * from \"./TooltipEvent.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","\r\n \r\n \r\n \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!./Tooltip.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!./Tooltip.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Tooltip.vue?vue&type=template&id=ca45edb4&\"\nimport script from \"./Tooltip.vue?vue&type=script&lang=js&\"\nexport * from \"./Tooltip.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","function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport { NAME_TOOLTIP } from '../../constants/components';\nimport { IS_BROWSER } from '../../constants/env';\nimport { EVENT_NAME_SHOW } from '../../constants/events';\nimport { concat } from '../../utils/array';\nimport { getComponentConfig } from '../../utils/config';\nimport { getScopeId } from '../../utils/get-scope-id';\nimport { identity } from '../../utils/identity';\nimport { isFunction, isNumber, isPlainObject, isString, isUndefined, isUndefinedOrNull } from '../../utils/inspect';\nimport { looseEqual } from '../../utils/loose-equal';\nimport { toInteger } from '../../utils/number';\nimport { keys } from '../../utils/object';\nimport { BVTooltip } from '../../components/tooltip/helpers/bv-tooltip'; // Key which we use to store tooltip object on element\n\nvar BV_TOOLTIP = '__BV_Tooltip__'; // Default trigger\n\nvar DefaultTrigger = 'hover focus'; // Valid event triggers\n\nvar validTriggers = {\n focus: true,\n hover: true,\n click: true,\n blur: true,\n manual: true\n}; // Directive modifier test regular expressions. Pre-compile for performance\n\nvar htmlRE = /^html$/i;\nvar noninteractiveRE = /^noninteractive$/i;\nvar noFadeRE = /^nofade$/i;\nvar placementRE = /^(auto|top(left|right)?|bottom(left|right)?|left(top|bottom)?|right(top|bottom)?)$/i;\nvar boundaryRE = /^(window|viewport|scrollParent)$/i;\nvar delayRE = /^d\\d+$/i;\nvar delayShowRE = /^ds\\d+$/i;\nvar delayHideRE = /^dh\\d+$/i;\nvar offsetRE = /^o-?\\d+$/i;\nvar variantRE = /^v-.+$/i;\nvar spacesRE = /\\s+/; // Build a Tooltip config based on bindings (if any)\n// Arguments and modifiers take precedence over passed value config object\n\nvar parseBindings = function parseBindings(bindings, vnode)\n/* istanbul ignore next: not easy to test */\n{\n // We start out with a basic config\n var config = {\n title: undefined,\n trigger: '',\n // Default set below if needed\n placement: 'top',\n fallbackPlacement: 'flip',\n container: false,\n // Default of body\n animation: true,\n offset: 0,\n id: null,\n html: false,\n interactive: true,\n disabled: false,\n delay: getComponentConfig(NAME_TOOLTIP, 'delay', 50),\n boundary: String(getComponentConfig(NAME_TOOLTIP, 'boundary', 'scrollParent')),\n boundaryPadding: toInteger(getComponentConfig(NAME_TOOLTIP, 'boundaryPadding', 5), 0),\n variant: getComponentConfig(NAME_TOOLTIP, 'variant'),\n customClass: getComponentConfig(NAME_TOOLTIP, 'customClass')\n }; // Process `bindings.value`\n\n if (isString(bindings.value) || isNumber(bindings.value)) {\n // Value is tooltip content (HTML optionally supported)\n config.title = bindings.value;\n } else if (isFunction(bindings.value)) {\n // Title generator function\n config.title = bindings.value;\n } else if (isPlainObject(bindings.value)) {\n // Value is config object, so merge\n config = _objectSpread(_objectSpread({}, config), bindings.value);\n } // If title is not provided, try title attribute\n\n\n if (isUndefined(config.title)) {\n // Try attribute\n var data = vnode.data || {};\n config.title = data.attrs && !isUndefinedOrNull(data.attrs.title) ? data.attrs.title : undefined;\n } // Normalize delay\n\n\n if (!isPlainObject(config.delay)) {\n config.delay = {\n show: toInteger(config.delay, 0),\n hide: toInteger(config.delay, 0)\n };\n } // If argument, assume element ID of container element\n\n\n if (bindings.arg) {\n // Element ID specified as arg\n // We must prepend '#' to become a CSS selector\n config.container = \"#\".concat(bindings.arg);\n } // Process modifiers\n\n\n keys(bindings.modifiers).forEach(function (mod) {\n if (htmlRE.test(mod)) {\n // Title allows HTML\n config.html = true;\n } else if (noninteractiveRE.test(mod)) {\n // Noninteractive\n config.interactive = false;\n } else if (noFadeRE.test(mod)) {\n // No animation\n config.animation = false;\n } else if (placementRE.test(mod)) {\n // Placement of tooltip\n config.placement = mod;\n } else if (boundaryRE.test(mod)) {\n // Boundary of tooltip\n mod = mod === 'scrollparent' ? 'scrollParent' : mod;\n config.boundary = mod;\n } else if (delayRE.test(mod)) {\n // Delay value\n var delay = toInteger(mod.slice(1), 0);\n config.delay.show = delay;\n config.delay.hide = delay;\n } else if (delayShowRE.test(mod)) {\n // Delay show value\n config.delay.show = toInteger(mod.slice(2), 0);\n } else if (delayHideRE.test(mod)) {\n // Delay hide value\n config.delay.hide = toInteger(mod.slice(2), 0);\n } else if (offsetRE.test(mod)) {\n // Offset value, negative allowed\n config.offset = toInteger(mod.slice(1), 0);\n } else if (variantRE.test(mod)) {\n // Variant\n config.variant = mod.slice(2) || null;\n }\n }); // Special handling of event trigger modifiers trigger is\n // a space separated list\n\n var selectedTriggers = {}; // Parse current config object trigger\n\n concat(config.trigger || '').filter(identity).join(' ').trim().toLowerCase().split(spacesRE).forEach(function (trigger) {\n if (validTriggers[trigger]) {\n selectedTriggers[trigger] = true;\n }\n }); // Parse modifiers for triggers\n\n keys(bindings.modifiers).forEach(function (mod) {\n mod = mod.toLowerCase();\n\n if (validTriggers[mod]) {\n // If modifier is a valid trigger\n selectedTriggers[mod] = true;\n }\n }); // Sanitize triggers\n\n config.trigger = keys(selectedTriggers).join(' ');\n\n if (config.trigger === 'blur') {\n // Blur by itself is useless, so convert it to 'focus'\n config.trigger = 'focus';\n }\n\n if (!config.trigger) {\n // Use default trigger\n config.trigger = DefaultTrigger;\n } // Return the config\n\n\n return config;\n}; // Add/update Tooltip on our element\n\n\nvar applyTooltip = function applyTooltip(el, bindings, vnode) {\n if (!IS_BROWSER) {\n /* istanbul ignore next */\n return;\n }\n\n var config = parseBindings(bindings, vnode);\n\n if (!el[BV_TOOLTIP]) {\n var $parent = vnode.context;\n el[BV_TOOLTIP] = new BVTooltip({\n parent: $parent,\n // Add the parent's scoped style attribute data\n _scopeId: getScopeId($parent, undefined)\n });\n el[BV_TOOLTIP].__bv_prev_data__ = {};\n el[BV_TOOLTIP].$on(EVENT_NAME_SHOW, function ()\n /* istanbul ignore next: for now */\n {\n // Before showing the tooltip, we update the title if it is a function\n if (isFunction(config.title)) {\n el[BV_TOOLTIP].updateData({\n title: config.title(el)\n });\n }\n });\n }\n\n var data = {\n title: config.title,\n triggers: config.trigger,\n placement: config.placement,\n fallbackPlacement: config.fallbackPlacement,\n variant: config.variant,\n customClass: config.customClass,\n container: config.container,\n boundary: config.boundary,\n delay: config.delay,\n offset: config.offset,\n noFade: !config.animation,\n id: config.id,\n interactive: config.interactive,\n disabled: config.disabled,\n html: config.html\n };\n var oldData = el[BV_TOOLTIP].__bv_prev_data__;\n el[BV_TOOLTIP].__bv_prev_data__ = data;\n\n if (!looseEqual(data, oldData)) {\n // We only update the instance if data has changed\n var newData = {\n target: el\n };\n keys(data).forEach(function (prop) {\n // We only pass data properties that have changed\n if (data[prop] !== oldData[prop]) {\n // if title is a function, we execute it here\n newData[prop] = prop === 'title' && isFunction(data[prop]) ? data[prop](el) : data[prop];\n }\n });\n el[BV_TOOLTIP].updateData(newData);\n }\n}; // Remove Tooltip on our element\n\n\nvar removeTooltip = function removeTooltip(el) {\n if (el[BV_TOOLTIP]) {\n el[BV_TOOLTIP].$destroy();\n el[BV_TOOLTIP] = null;\n }\n\n delete el[BV_TOOLTIP];\n}; // Export our directive\n\n\nexport var VBTooltip = {\n bind: function bind(el, bindings, vnode) {\n applyTooltip(el, bindings, vnode);\n },\n // We use `componentUpdated` here instead of `update`, as the former\n // waits until the containing component and children have finished updating\n componentUpdated: function componentUpdated(el, bindings, vnode) {\n // Performed in a `$nextTick()` to prevent render update loops\n vnode.context.$nextTick(function () {\n applyTooltip(el, bindings, vnode);\n });\n },\n unbind: function unbind(el) {\n removeTooltip(el);\n }\n};","function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n// Tooltip \"Class\" (Built as a renderless Vue instance)\n//\n// Handles trigger events, etc.\n// Instantiates template on demand\nimport { COMPONENT_UID_KEY, Vue } from '../../../vue';\nimport { NAME_MODAL, NAME_TOOLTIP_HELPER } from '../../../constants/components';\nimport { EVENT_NAME_DISABLE, EVENT_NAME_DISABLED, EVENT_NAME_ENABLE, EVENT_NAME_ENABLED, EVENT_NAME_FOCUSIN, EVENT_NAME_FOCUSOUT, EVENT_NAME_HIDDEN, EVENT_NAME_HIDE, EVENT_NAME_MOUSEENTER, EVENT_NAME_MOUSELEAVE, EVENT_NAME_SHOW, EVENT_NAME_SHOWN, EVENT_OPTIONS_NO_CAPTURE, HOOK_EVENT_NAME_BEFORE_DESTROY, HOOK_EVENT_NAME_DESTROYED } from '../../../constants/events';\nimport { arrayIncludes, concat, from as arrayFrom } from '../../../utils/array';\nimport { attemptFocus, closest, contains, getAttr, getById, hasAttr, hasClass, isDisabled, isElement, isVisible, removeAttr, requestAF, select, setAttr } from '../../../utils/dom';\nimport { eventOff, eventOn, eventOnOff, getRootActionEventName, getRootEventName } from '../../../utils/events';\nimport { getScopeId } from '../../../utils/get-scope-id';\nimport { identity } from '../../../utils/identity';\nimport { isFunction, isNumber, isPlainObject, isString, isUndefined, isUndefinedOrNull } from '../../../utils/inspect';\nimport { looseEqual } from '../../../utils/loose-equal';\nimport { mathMax } from '../../../utils/math';\nimport { noop } from '../../../utils/noop';\nimport { toInteger } from '../../../utils/number';\nimport { keys } from '../../../utils/object';\nimport { warn } from '../../../utils/warn';\nimport { BvEvent } from '../../../utils/bv-event.class';\nimport { listenOnRootMixin } from '../../../mixins/listen-on-root';\nimport { BVTooltipTemplate } from './bv-tooltip-template'; // --- Constants ---\n// Modal container selector for appending tooltip/popover\n\nvar MODAL_SELECTOR = '.modal-content'; // Modal `$root` hidden event\n\nvar ROOT_EVENT_NAME_MODAL_HIDDEN = getRootEventName(NAME_MODAL, EVENT_NAME_HIDDEN); // Sidebar container selector for appending tooltip/popover\n\nvar SIDEBAR_SELECTOR = '.b-sidebar'; // For finding the container to append to\n\nvar CONTAINER_SELECTOR = [MODAL_SELECTOR, SIDEBAR_SELECTOR].join(', '); // For dropdown sniffing\n\nvar DROPDOWN_CLASS = 'dropdown';\nvar DROPDOWN_OPEN_SELECTOR = '.dropdown-menu.show'; // Data attribute to temporary store the `title` attribute's value\n\nvar DATA_TITLE_ATTR = 'data-original-title'; // Data specific to popper and template\n// We don't use props, as we need reactivity (we can't pass reactive props)\n\nvar templateData = {\n // Text string or Scoped slot function\n title: '',\n // Text string or Scoped slot function\n content: '',\n // String\n variant: null,\n // String, Array, Object\n customClass: null,\n // String or array of Strings (overwritten by BVPopper)\n triggers: '',\n // String (overwritten by BVPopper)\n placement: 'auto',\n // String or array of strings\n fallbackPlacement: 'flip',\n // Element or Component reference (or function that returns element) of\n // the element that will have the trigger events bound, and is also\n // default element for positioning\n target: null,\n // HTML ID, Element or Component reference\n container: null,\n // 'body'\n // Boolean\n noFade: false,\n // 'scrollParent', 'viewport', 'window', Element, or Component reference\n boundary: 'scrollParent',\n // Tooltip/popover will try and stay away from\n // boundary edge by this many pixels (Number)\n boundaryPadding: 5,\n // Arrow offset (Number)\n offset: 0,\n // Hover/focus delay (Number or Object)\n delay: 0,\n // Arrow of Tooltip/popover will try and stay away from\n // the edge of tooltip/popover edge by this many pixels\n arrowPadding: 6,\n // Interactive state (Boolean)\n interactive: true,\n // Disabled state (Boolean)\n disabled: false,\n // ID to use for tooltip/popover\n id: null,\n // Flag used by directives only, for HTML content\n html: false\n}; // --- Main component ---\n// @vue/component\n\nexport var BVTooltip = /*#__PURE__*/Vue.extend({\n name: NAME_TOOLTIP_HELPER,\n mixins: [listenOnRootMixin],\n data: function data() {\n return _objectSpread(_objectSpread({}, templateData), {}, {\n // State management data\n activeTrigger: {\n // manual: false,\n hover: false,\n click: false,\n focus: false\n },\n localShow: false\n });\n },\n computed: {\n templateType: function templateType() {\n // Overwritten by BVPopover\n return 'tooltip';\n },\n computedId: function computedId() {\n return this.id || \"__bv_\".concat(this.templateType, \"_\").concat(this[COMPONENT_UID_KEY], \"__\");\n },\n computedDelay: function computedDelay() {\n // Normalizes delay into object form\n var delay = {\n show: 0,\n hide: 0\n };\n\n if (isPlainObject(this.delay)) {\n delay.show = mathMax(toInteger(this.delay.show, 0), 0);\n delay.hide = mathMax(toInteger(this.delay.hide, 0), 0);\n } else if (isNumber(this.delay) || isString(this.delay)) {\n delay.show = delay.hide = mathMax(toInteger(this.delay, 0), 0);\n }\n\n return delay;\n },\n computedTriggers: function computedTriggers() {\n // Returns the triggers in sorted array form\n // TODO: Switch this to object form for easier lookup\n return concat(this.triggers).filter(identity).join(' ').trim().toLowerCase().split(/\\s+/).sort();\n },\n isWithActiveTrigger: function isWithActiveTrigger() {\n for (var trigger in this.activeTrigger) {\n if (this.activeTrigger[trigger]) {\n return true;\n }\n }\n\n return false;\n },\n computedTemplateData: function computedTemplateData() {\n var title = this.title,\n content = this.content,\n variant = this.variant,\n customClass = this.customClass,\n noFade = this.noFade,\n interactive = this.interactive;\n return {\n title: title,\n content: content,\n variant: variant,\n customClass: customClass,\n noFade: noFade,\n interactive: interactive\n };\n }\n },\n watch: {\n computedTriggers: function computedTriggers(newTriggers, oldTriggers) {\n var _this = this;\n\n // Triggers have changed, so re-register them\n\n /* istanbul ignore next */\n if (!looseEqual(newTriggers, oldTriggers)) {\n this.$nextTick(function () {\n // Disable trigger listeners\n _this.unListen(); // Clear any active triggers that are no longer in the list of triggers\n\n\n oldTriggers.forEach(function (trigger) {\n if (!arrayIncludes(newTriggers, trigger)) {\n if (_this.activeTrigger[trigger]) {\n _this.activeTrigger[trigger] = false;\n }\n }\n }); // Re-enable the trigger listeners\n\n _this.listen();\n });\n }\n },\n computedTemplateData: function computedTemplateData() {\n // If any of the while open reactive \"props\" change,\n // ensure that the template updates accordingly\n this.handleTemplateUpdate();\n },\n title: function title(newValue, oldValue) {\n // Make sure to hide the tooltip when the title is set empty\n if (newValue !== oldValue && !newValue) {\n this.hide();\n }\n },\n disabled: function disabled(newValue) {\n if (newValue) {\n this.disable();\n } else {\n this.enable();\n }\n }\n },\n created: function created() {\n var _this2 = this;\n\n // Create non-reactive properties\n this.$_tip = null;\n this.$_hoverTimeout = null;\n this.$_hoverState = '';\n this.$_visibleInterval = null;\n this.$_enabled = !this.disabled;\n this.$_noop = noop.bind(this); // Destroy ourselves when the parent is destroyed\n\n if (this.$parent) {\n this.$parent.$once(HOOK_EVENT_NAME_BEFORE_DESTROY, function () {\n _this2.$nextTick(function () {\n // In a `requestAF()` to release control back to application\n requestAF(function () {\n _this2.$destroy();\n });\n });\n });\n }\n\n this.$nextTick(function () {\n var target = _this2.getTarget();\n\n if (target && contains(document.body, target)) {\n // Copy the parent's scoped style attribute\n _this2.scopeId = getScopeId(_this2.$parent); // Set up all trigger handlers and listeners\n\n _this2.listen();\n } else {\n /* istanbul ignore next */\n warn(isString(_this2.target) ? \"Unable to find target element by ID \\\"#\".concat(_this2.target, \"\\\" in document.\") : 'The provided target is no valid HTML element.', _this2.templateType);\n }\n });\n },\n\n /* istanbul ignore next */\n updated: function updated() {\n // Usually called when the slots/data changes\n this.$nextTick(this.handleTemplateUpdate);\n },\n\n /* istanbul ignore next */\n deactivated: function deactivated() {\n // In a keepalive that has been deactivated, so hide\n // the tooltip/popover if it is showing\n this.forceHide();\n },\n beforeDestroy: function beforeDestroy() {\n // Remove all handler/listeners\n this.unListen();\n this.setWhileOpenListeners(false); // Clear any timeouts/intervals\n\n this.clearHoverTimeout();\n this.clearVisibilityInterval(); // Destroy the template\n\n this.destroyTemplate(); // Remove any other private properties created during create\n\n this.$_noop = null;\n },\n methods: {\n // --- Methods for creating and destroying the template ---\n getTemplate: function getTemplate() {\n // Overridden by BVPopover\n return BVTooltipTemplate;\n },\n updateData: function updateData() {\n var _this3 = this;\n\n var data = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n // Method for updating popper/template data\n // We only update data if it exists, and has not changed\n var titleUpdated = false;\n keys(templateData).forEach(function (prop) {\n if (!isUndefined(data[prop]) && _this3[prop] !== data[prop]) {\n _this3[prop] = data[prop];\n\n if (prop === 'title') {\n titleUpdated = true;\n }\n }\n }); // If the title has updated, we may need to handle the `title`\n // attribute on the trigger target\n // We only do this while the template is open\n\n if (titleUpdated && this.localShow) {\n this.fixTitle();\n }\n },\n createTemplateAndShow: function createTemplateAndShow() {\n // Creates the template instance and show it\n var container = this.getContainer();\n var Template = this.getTemplate();\n var $tip = this.$_tip = new Template({\n parent: this,\n // The following is not reactive to changes in the props data\n propsData: {\n // These values cannot be changed while template is showing\n id: this.computedId,\n html: this.html,\n placement: this.placement,\n fallbackPlacement: this.fallbackPlacement,\n target: this.getPlacementTarget(),\n boundary: this.getBoundary(),\n // Ensure the following are integers\n offset: toInteger(this.offset, 0),\n arrowPadding: toInteger(this.arrowPadding, 0),\n boundaryPadding: toInteger(this.boundaryPadding, 0)\n }\n }); // We set the initial reactive data (values that can be changed while open)\n\n this.handleTemplateUpdate(); // Template transition phase events (handled once only)\n // When the template has mounted, but not visibly shown yet\n\n $tip.$once(EVENT_NAME_SHOW, this.onTemplateShow); // When the template has completed showing\n\n $tip.$once(EVENT_NAME_SHOWN, this.onTemplateShown); // When the template has started to hide\n\n $tip.$once(EVENT_NAME_HIDE, this.onTemplateHide); // When the template has completed hiding\n\n $tip.$once(EVENT_NAME_HIDDEN, this.onTemplateHidden); // When the template gets destroyed for any reason\n\n $tip.$once(HOOK_EVENT_NAME_DESTROYED, this.destroyTemplate); // Convenience events from template\n // To save us from manually adding/removing DOM\n // listeners to tip element when it is open\n\n $tip.$on(EVENT_NAME_FOCUSIN, this.handleEvent);\n $tip.$on(EVENT_NAME_FOCUSOUT, this.handleEvent);\n $tip.$on(EVENT_NAME_MOUSEENTER, this.handleEvent);\n $tip.$on(EVENT_NAME_MOUSELEAVE, this.handleEvent); // Mount (which triggers the `show`)\n\n $tip.$mount(container.appendChild(document.createElement('div'))); // Template will automatically remove its markup from DOM when hidden\n },\n hideTemplate: function hideTemplate() {\n // Trigger the template to start hiding\n // The template will emit the `hide` event after this and\n // then emit the `hidden` event once it is fully hidden\n // The `hook:destroyed` will also be called (safety measure)\n this.$_tip && this.$_tip.hide(); // Clear out any stragging active triggers\n\n this.clearActiveTriggers(); // Reset the hover state\n\n this.$_hoverState = '';\n },\n // Destroy the template instance and reset state\n destroyTemplate: function destroyTemplate() {\n this.setWhileOpenListeners(false);\n this.clearHoverTimeout();\n this.$_hoverState = '';\n this.clearActiveTriggers();\n this.localPlacementTarget = null;\n\n try {\n this.$_tip.$destroy();\n } catch (_unused) {}\n\n this.$_tip = null;\n this.removeAriaDescribedby();\n this.restoreTitle();\n this.localShow = false;\n },\n getTemplateElement: function getTemplateElement() {\n return this.$_tip ? this.$_tip.$el : null;\n },\n handleTemplateUpdate: function handleTemplateUpdate() {\n var _this4 = this;\n\n // Update our template title/content \"props\"\n // So that the template updates accordingly\n var $tip = this.$_tip;\n\n if ($tip) {\n var props = ['title', 'content', 'variant', 'customClass', 'noFade', 'interactive']; // Only update the values if they have changed\n\n props.forEach(function (prop) {\n if ($tip[prop] !== _this4[prop]) {\n $tip[prop] = _this4[prop];\n }\n });\n }\n },\n // --- Show/Hide handlers ---\n // Show the tooltip\n show: function show() {\n var target = this.getTarget();\n\n if (!target || !contains(document.body, target) || !isVisible(target) || this.dropdownOpen() || (isUndefinedOrNull(this.title) || this.title === '') && (isUndefinedOrNull(this.content) || this.content === '')) {\n // If trigger element isn't in the DOM or is not visible, or\n // is on an open dropdown toggle, or has no content, then\n // we exit without showing\n return;\n } // If tip already exists, exit early\n\n\n if (this.$_tip || this.localShow) {\n /* istanbul ignore next */\n return;\n } // In the process of showing\n\n\n this.localShow = true; // Create a cancelable BvEvent\n\n var showEvt = this.buildEvent(EVENT_NAME_SHOW, {\n cancelable: true\n });\n this.emitEvent(showEvt); // Don't show if event cancelled\n\n /* istanbul ignore if */\n\n if (showEvt.defaultPrevented) {\n // Destroy the template (if for some reason it was created)\n this.destroyTemplate();\n return;\n } // Fix the title attribute on target\n\n\n this.fixTitle(); // Set aria-describedby on target\n\n this.addAriaDescribedby(); // Create and show the tooltip\n\n this.createTemplateAndShow();\n },\n hide: function hide() {\n var force = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;\n // Hide the tooltip\n var tip = this.getTemplateElement();\n /* istanbul ignore if */\n\n if (!tip || !this.localShow) {\n this.restoreTitle();\n return;\n } // Emit cancelable BvEvent 'hide'\n // We disable cancelling if `force` is true\n\n\n var hideEvt = this.buildEvent(EVENT_NAME_HIDE, {\n cancelable: !force\n });\n this.emitEvent(hideEvt);\n /* istanbul ignore if: ignore for now */\n\n if (hideEvt.defaultPrevented) {\n // Don't hide if event cancelled\n return;\n } // Tell the template to hide\n\n\n this.hideTemplate();\n },\n forceHide: function forceHide() {\n // Forcefully hides/destroys the template, regardless of any active triggers\n var tip = this.getTemplateElement();\n\n if (!tip || !this.localShow) {\n /* istanbul ignore next */\n return;\n } // Disable while open listeners/watchers\n // This is also done in the template `hide` event handler\n\n\n this.setWhileOpenListeners(false); // Clear any hover enter/leave event\n\n this.clearHoverTimeout();\n this.$_hoverState = '';\n this.clearActiveTriggers(); // Disable the fade animation on the template\n\n if (this.$_tip) {\n this.$_tip.noFade = true;\n } // Hide the tip (with force = true)\n\n\n this.hide(true);\n },\n enable: function enable() {\n this.$_enabled = true; // Create a non-cancelable BvEvent\n\n this.emitEvent(this.buildEvent(EVENT_NAME_ENABLED));\n },\n disable: function disable() {\n this.$_enabled = false; // Create a non-cancelable BvEvent\n\n this.emitEvent(this.buildEvent(EVENT_NAME_DISABLED));\n },\n // --- Handlers for template events ---\n // When template is inserted into DOM, but not yet shown\n onTemplateShow: function onTemplateShow() {\n // Enable while open listeners/watchers\n this.setWhileOpenListeners(true);\n },\n // When template show transition completes\n onTemplateShown: function onTemplateShown() {\n var prevHoverState = this.$_hoverState;\n this.$_hoverState = '';\n /* istanbul ignore next: occasional Node 10 coverage error */\n\n if (prevHoverState === 'out') {\n this.leave(null);\n } // Emit a non-cancelable BvEvent 'shown'\n\n\n this.emitEvent(this.buildEvent(EVENT_NAME_SHOWN));\n },\n // When template is starting to hide\n onTemplateHide: function onTemplateHide() {\n // Disable while open listeners/watchers\n this.setWhileOpenListeners(false);\n },\n // When template has completed closing (just before it self destructs)\n onTemplateHidden: function onTemplateHidden() {\n // Destroy the template\n this.destroyTemplate(); // Emit a non-cancelable BvEvent 'shown'\n\n this.emitEvent(this.buildEvent(EVENT_NAME_HIDDEN));\n },\n // --- Helper methods ---\n getTarget: function getTarget() {\n var target = this.target;\n\n if (isString(target)) {\n target = getById(target.replace(/^#/, ''));\n } else if (isFunction(target)) {\n target = target();\n } else if (target) {\n target = target.$el || target;\n }\n\n return isElement(target) ? target : null;\n },\n getPlacementTarget: function getPlacementTarget() {\n // This is the target that the tooltip will be placed on, which may not\n // necessarily be the same element that has the trigger event listeners\n // For now, this is the same as target\n // TODO:\n // Add in child selector support\n // Add in visibility checks for this element\n // Fallback to target if not found\n return this.getTarget();\n },\n getTargetId: function getTargetId() {\n // Returns the ID of the trigger element\n var target = this.getTarget();\n return target && target.id ? target.id : null;\n },\n getContainer: function getContainer() {\n // Handle case where container may be a component ref\n var container = this.container ? this.container.$el || this.container : false;\n var body = document.body;\n var target = this.getTarget(); // If we are in a modal, we append to the modal, If we\n // are in a sidebar, we append to the sidebar, else append\n // to body, unless a container is specified\n // TODO:\n // Template should periodically check to see if it is in dom\n // And if not, self destruct (if container got v-if'ed out of DOM)\n // Or this could possibly be part of the visibility check\n\n return container === false ? closest(CONTAINER_SELECTOR, target) || body :\n /*istanbul ignore next */\n isString(container) ?\n /*istanbul ignore next */\n getById(container.replace(/^#/, '')) || body :\n /*istanbul ignore next */\n body;\n },\n getBoundary: function getBoundary() {\n return this.boundary ? this.boundary.$el || this.boundary : 'scrollParent';\n },\n isInModal: function isInModal() {\n var target = this.getTarget();\n return target && closest(MODAL_SELECTOR, target);\n },\n isDropdown: function isDropdown() {\n // Returns true if trigger is a dropdown\n var target = this.getTarget();\n return target && hasClass(target, DROPDOWN_CLASS);\n },\n dropdownOpen: function dropdownOpen() {\n // Returns true if trigger is a dropdown and the dropdown menu is open\n var target = this.getTarget();\n return this.isDropdown() && target && select(DROPDOWN_OPEN_SELECTOR, target);\n },\n clearHoverTimeout: function clearHoverTimeout() {\n clearTimeout(this.$_hoverTimeout);\n this.$_hoverTimeout = null;\n },\n clearVisibilityInterval: function clearVisibilityInterval() {\n clearInterval(this.$_visibleInterval);\n this.$_visibleInterval = null;\n },\n clearActiveTriggers: function clearActiveTriggers() {\n for (var trigger in this.activeTrigger) {\n this.activeTrigger[trigger] = false;\n }\n },\n addAriaDescribedby: function addAriaDescribedby() {\n // Add aria-describedby on trigger element, without removing any other IDs\n var target = this.getTarget();\n var desc = getAttr(target, 'aria-describedby') || '';\n desc = desc.split(/\\s+/).concat(this.computedId).join(' ').trim(); // Update/add aria-described by\n\n setAttr(target, 'aria-describedby', desc);\n },\n removeAriaDescribedby: function removeAriaDescribedby() {\n var _this5 = this;\n\n // Remove aria-describedby on trigger element, without removing any other IDs\n var target = this.getTarget();\n var desc = getAttr(target, 'aria-describedby') || '';\n desc = desc.split(/\\s+/).filter(function (d) {\n return d !== _this5.computedId;\n }).join(' ').trim(); // Update or remove aria-describedby\n\n if (desc) {\n /* istanbul ignore next */\n setAttr(target, 'aria-describedby', desc);\n } else {\n removeAttr(target, 'aria-describedby');\n }\n },\n fixTitle: function fixTitle() {\n // If the target has a `title` attribute,\n // remove it and store it on a data attribute\n var target = this.getTarget();\n\n if (hasAttr(target, 'title')) {\n // Get `title` attribute value and remove it from target\n var title = getAttr(target, 'title');\n setAttr(target, 'title', ''); // Only set the data attribute when the value is truthy\n\n if (title) {\n setAttr(target, DATA_TITLE_ATTR, title);\n }\n }\n },\n restoreTitle: function restoreTitle() {\n // If the target had a `title` attribute,\n // restore it and remove the data attribute\n var target = this.getTarget();\n\n if (hasAttr(target, DATA_TITLE_ATTR)) {\n // Get data attribute value and remove it from target\n var title = getAttr(target, DATA_TITLE_ATTR);\n removeAttr(target, DATA_TITLE_ATTR); // Only restore the `title` attribute when the value is truthy\n\n if (title) {\n setAttr(target, 'title', title);\n }\n }\n },\n // --- BvEvent helpers ---\n buildEvent: function buildEvent(type) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n // Defaults to a non-cancellable event\n return new BvEvent(type, _objectSpread({\n cancelable: false,\n target: this.getTarget(),\n relatedTarget: this.getTemplateElement() || null,\n componentId: this.computedId,\n vueTarget: this\n }, options));\n },\n emitEvent: function emitEvent(bvEvent) {\n var type = bvEvent.type;\n this.emitOnRoot(getRootEventName(this.templateType, type), bvEvent);\n this.$emit(type, bvEvent);\n },\n // --- Event handler setup methods ---\n listen: function listen() {\n var _this6 = this;\n\n // Enable trigger event handlers\n var el = this.getTarget();\n\n if (!el) {\n /* istanbul ignore next */\n return;\n } // Listen for global show/hide events\n\n\n this.setRootListener(true); // Set up our listeners on the target trigger element\n\n this.computedTriggers.forEach(function (trigger) {\n if (trigger === 'click') {\n eventOn(el, 'click', _this6.handleEvent, EVENT_OPTIONS_NO_CAPTURE);\n } else if (trigger === 'focus') {\n eventOn(el, 'focusin', _this6.handleEvent, EVENT_OPTIONS_NO_CAPTURE);\n eventOn(el, 'focusout', _this6.handleEvent, EVENT_OPTIONS_NO_CAPTURE);\n } else if (trigger === 'blur') {\n // Used to close $tip when element looses focus\n\n /* istanbul ignore next */\n eventOn(el, 'focusout', _this6.handleEvent, EVENT_OPTIONS_NO_CAPTURE);\n } else if (trigger === 'hover') {\n eventOn(el, 'mouseenter', _this6.handleEvent, EVENT_OPTIONS_NO_CAPTURE);\n eventOn(el, 'mouseleave', _this6.handleEvent, EVENT_OPTIONS_NO_CAPTURE);\n }\n }, this);\n },\n\n /* istanbul ignore next */\n unListen: function unListen() {\n var _this7 = this;\n\n // Remove trigger event handlers\n var events = ['click', 'focusin', 'focusout', 'mouseenter', 'mouseleave'];\n var target = this.getTarget(); // Stop listening for global show/hide/enable/disable events\n\n this.setRootListener(false); // Clear out any active target listeners\n\n events.forEach(function (event) {\n target && eventOff(target, event, _this7.handleEvent, EVENT_OPTIONS_NO_CAPTURE);\n }, this);\n },\n setRootListener: function setRootListener(on) {\n // Listen for global `bv::{hide|show}::{tooltip|popover}` hide request event\n var $root = this.$root;\n\n if ($root) {\n var method = on ? '$on' : '$off';\n var type = this.templateType;\n $root[method](getRootActionEventName(type, EVENT_NAME_HIDE), this.doHide);\n $root[method](getRootActionEventName(type, EVENT_NAME_SHOW), this.doShow);\n $root[method](getRootActionEventName(type, EVENT_NAME_DISABLE), this.doDisable);\n $root[method](getRootActionEventName(type, EVENT_NAME_ENABLE), this.doEnable);\n }\n },\n setWhileOpenListeners: function setWhileOpenListeners(on) {\n // Events that are only registered when the template is showing\n // Modal close events\n this.setModalListener(on); // Dropdown open events (if we are attached to a dropdown)\n\n this.setDropdownListener(on); // Periodic $element visibility check\n // For handling when tip target is in , tabs, carousel, etc\n\n this.visibleCheck(on); // On-touch start listeners\n\n this.setOnTouchStartListener(on);\n },\n // Handler for periodic visibility check\n visibleCheck: function visibleCheck(on) {\n var _this8 = this;\n\n this.clearVisibilityInterval();\n var target = this.getTarget();\n var tip = this.getTemplateElement();\n\n if (on) {\n this.$_visibleInterval = setInterval(function () {\n if (tip && _this8.localShow && (!target.parentNode || !isVisible(target))) {\n // Target element is no longer visible or not in DOM, so force-hide the tooltip\n _this8.forceHide();\n }\n }, 100);\n }\n },\n setModalListener: function setModalListener(on) {\n // Handle case where tooltip/target is in a modal\n if (this.isInModal()) {\n // We can listen for modal hidden events on `$root`\n this.$root[on ? '$on' : '$off'](ROOT_EVENT_NAME_MODAL_HIDDEN, this.forceHide);\n }\n },\n\n /* istanbul ignore next: JSDOM doesn't support `ontouchstart` */\n setOnTouchStartListener: function setOnTouchStartListener(on) {\n var _this9 = this;\n\n // If this is a touch-enabled device we add extra empty\n // `mouseover` listeners to the body's immediate children\n // Only needed because of broken event delegation on iOS\n // https://www.quirksmode.org/blog/archives/2014/02/mouse_event_bub.html\n if ('ontouchstart' in document.documentElement) {\n arrayFrom(document.body.children).forEach(function (el) {\n eventOnOff(on, el, 'mouseover', _this9.$_noop);\n });\n }\n },\n setDropdownListener: function setDropdownListener(on) {\n var target = this.getTarget();\n\n if (!target || !this.$root || !this.isDropdown) {\n return;\n } // We can listen for dropdown shown events on its instance\n // TODO:\n // We could grab the ID from the dropdown, and listen for\n // $root events for that particular dropdown id\n // Dropdown shown and hidden events will need to emit\n // Note: Dropdown auto-ID happens in a `$nextTick()` after mount\n // So the ID lookup would need to be done in a `$nextTick()`\n\n\n if (target.__vue__) {\n target.__vue__[on ? '$on' : '$off'](EVENT_NAME_SHOWN, this.forceHide);\n }\n },\n // --- Event handlers ---\n handleEvent: function handleEvent(event) {\n // General trigger event handler\n // target is the trigger element\n var target = this.getTarget();\n\n if (!target || isDisabled(target) || !this.$_enabled || this.dropdownOpen()) {\n // If disabled or not enabled, or if a dropdown that is open, don't do anything\n // If tip is shown before element gets disabled, then tip will not\n // close until no longer disabled or forcefully closed\n return;\n }\n\n var type = event.type;\n var triggers = this.computedTriggers;\n\n if (type === 'click' && arrayIncludes(triggers, 'click')) {\n this.click(event);\n } else if (type === 'mouseenter' && arrayIncludes(triggers, 'hover')) {\n // `mouseenter` is a non-bubbling event\n this.enter(event);\n } else if (type === 'focusin' && arrayIncludes(triggers, 'focus')) {\n // `focusin` is a bubbling event\n // `event` includes `relatedTarget` (element losing focus)\n this.enter(event);\n } else if (type === 'focusout' && (arrayIncludes(triggers, 'focus') || arrayIncludes(triggers, 'blur')) || type === 'mouseleave' && arrayIncludes(triggers, 'hover')) {\n // `focusout` is a bubbling event\n // `mouseleave` is a non-bubbling event\n // `tip` is the template (will be null if not open)\n var tip = this.getTemplateElement(); // `eventTarget` is the element which is losing focus/hover and\n\n var eventTarget = event.target; // `relatedTarget` is the element gaining focus/hover\n\n var relatedTarget = event.relatedTarget;\n /* istanbul ignore next */\n\n if ( // From tip to target\n tip && contains(tip, eventTarget) && contains(target, relatedTarget) || // From target to tip\n tip && contains(target, eventTarget) && contains(tip, relatedTarget) || // Within tip\n tip && contains(tip, eventTarget) && contains(tip, relatedTarget) || // Within target\n contains(target, eventTarget) && contains(target, relatedTarget)) {\n // If focus/hover moves within `tip` and `target`, don't trigger a leave\n return;\n } // Otherwise trigger a leave\n\n\n this.leave(event);\n }\n },\n doHide: function doHide(id) {\n // Programmatically hide tooltip or popover\n if (!id || this.getTargetId() === id || this.computedId === id) {\n // Close all tooltips or popovers, or this specific tip (with ID)\n this.forceHide();\n }\n },\n doShow: function doShow(id) {\n // Programmatically show tooltip or popover\n if (!id || this.getTargetId() === id || this.computedId === id) {\n // Open all tooltips or popovers, or this specific tip (with ID)\n this.show();\n }\n },\n\n /*istanbul ignore next: ignore for now */\n doDisable: function doDisable(id)\n /*istanbul ignore next: ignore for now */\n {\n // Programmatically disable tooltip or popover\n if (!id || this.getTargetId() === id || this.computedId === id) {\n // Disable all tooltips or popovers (no ID), or this specific tip (with ID)\n this.disable();\n }\n },\n\n /*istanbul ignore next: ignore for now */\n doEnable: function doEnable(id)\n /*istanbul ignore next: ignore for now */\n {\n // Programmatically enable tooltip or popover\n if (!id || this.getTargetId() === id || this.computedId === id) {\n // Enable all tooltips or popovers (no ID), or this specific tip (with ID)\n this.enable();\n }\n },\n click: function click(event) {\n if (!this.$_enabled || this.dropdownOpen()) {\n /* istanbul ignore next */\n return;\n } // Get around a WebKit bug where `click` does not trigger focus events\n // On most browsers, `click` triggers a `focusin`/`focus` event first\n // Needed so that trigger 'click blur' works on iOS\n // https://github.com/bootstrap-vue/bootstrap-vue/issues/5099\n // We use `currentTarget` rather than `target` to trigger on the\n // element, not the inner content\n\n\n attemptFocus(event.currentTarget);\n this.activeTrigger.click = !this.activeTrigger.click;\n\n if (this.isWithActiveTrigger) {\n this.enter(null);\n } else {\n /* istanbul ignore next */\n this.leave(null);\n }\n },\n\n /* istanbul ignore next */\n toggle: function toggle() {\n // Manual toggle handler\n if (!this.$_enabled || this.dropdownOpen()) {\n /* istanbul ignore next */\n return;\n } // Should we register as an active trigger?\n // this.activeTrigger.manual = !this.activeTrigger.manual\n\n\n if (this.localShow) {\n this.leave(null);\n } else {\n this.enter(null);\n }\n },\n enter: function enter() {\n var _this10 = this;\n\n var event = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;\n\n // Opening trigger handler\n // Note: Click events are sent with event === null\n if (event) {\n this.activeTrigger[event.type === 'focusin' ? 'focus' : 'hover'] = true;\n }\n /* istanbul ignore next */\n\n\n if (this.localShow || this.$_hoverState === 'in') {\n this.$_hoverState = 'in';\n return;\n }\n\n this.clearHoverTimeout();\n this.$_hoverState = 'in';\n\n if (!this.computedDelay.show) {\n this.show();\n } else {\n // Hide any title attribute while enter delay is active\n this.fixTitle();\n this.$_hoverTimeout = setTimeout(function () {\n /* istanbul ignore else */\n if (_this10.$_hoverState === 'in') {\n _this10.show();\n } else if (!_this10.localShow) {\n _this10.restoreTitle();\n }\n }, this.computedDelay.show);\n }\n },\n leave: function leave() {\n var _this11 = this;\n\n var event = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;\n\n // Closing trigger handler\n // Note: Click events are sent with event === null\n if (event) {\n this.activeTrigger[event.type === 'focusout' ? 'focus' : 'hover'] = false;\n /* istanbul ignore next */\n\n if (event.type === 'focusout' && arrayIncludes(this.computedTriggers, 'blur')) {\n // Special case for `blur`: we clear out the other triggers\n this.activeTrigger.click = false;\n this.activeTrigger.hover = false;\n }\n }\n /* istanbul ignore next: ignore for now */\n\n\n if (this.isWithActiveTrigger) {\n return;\n }\n\n this.clearHoverTimeout();\n this.$_hoverState = 'out';\n\n if (!this.computedDelay.hide) {\n this.hide();\n } else {\n this.$_hoverTimeout = setTimeout(function () {\n if (_this11.$_hoverState === 'out') {\n _this11.hide();\n }\n }, this.computedDelay.hide);\n }\n }\n }\n});","function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport { mergeData } from '../../vue';\nimport { NAME_ROW } from '../../constants/components';\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_NUMBER_STRING, PROP_TYPE_STRING } from '../../constants/props';\nimport { arrayIncludes, concat } from '../../utils/array';\nimport { getBreakpointsUpCached } from '../../utils/config';\nimport { identity } from '../../utils/identity';\nimport { memoize } from '../../utils/memoize';\nimport { create, keys, sortKeys } from '../../utils/object';\nimport { makeProp, makePropsConfigurable, suffixPropName } from '../../utils/props';\nimport { lowerCase, toString, trim } from '../../utils/string'; // --- Constants ---\n\nvar COMMON_ALIGNMENT = ['start', 'end', 'center']; // --- Helper methods ---\n// Compute a `row-cols-{breakpoint}-{cols}` class name\n// Memoized function for better performance on generating class names\n\nvar computeRowColsClass = memoize(function (breakpoint, cols) {\n cols = trim(toString(cols));\n return cols ? lowerCase(['row-cols', breakpoint, cols].filter(identity).join('-')) : null;\n}); // Get the breakpoint name from the `rowCols` prop name\n// Memoized function for better performance on extracting breakpoint names\n\nvar computeRowColsBreakpoint = memoize(function (prop) {\n return lowerCase(prop.replace('cols', ''));\n}); // Cached copy of the `row-cols` breakpoint prop names\n// Will be populated when the props are generated\n\nvar rowColsPropList = []; // --- Props ---\n// Prop generator for lazy generation of props\n\nexport var generateProps = function generateProps() {\n // i.e. 'row-cols-2', 'row-cols-md-4', 'row-cols-xl-6', ...\n var rowColsProps = getBreakpointsUpCached().reduce(function (props, breakpoint) {\n props[suffixPropName(breakpoint, 'cols')] = makeProp(PROP_TYPE_NUMBER_STRING);\n return props;\n }, create(null)); // Cache the row-cols prop names\n\n rowColsPropList = keys(rowColsProps); // Return the generated props\n\n return makePropsConfigurable(sortKeys(_objectSpread(_objectSpread({}, rowColsProps), {}, {\n alignContent: makeProp(PROP_TYPE_STRING, null, function (value) {\n return arrayIncludes(concat(COMMON_ALIGNMENT, 'between', 'around', 'stretch'), value);\n }),\n alignH: makeProp(PROP_TYPE_STRING, null, function (value) {\n return arrayIncludes(concat(COMMON_ALIGNMENT, 'between', 'around'), value);\n }),\n alignV: makeProp(PROP_TYPE_STRING, null, function (value) {\n return arrayIncludes(concat(COMMON_ALIGNMENT, 'baseline', 'stretch'), value);\n }),\n noGutters: makeProp(PROP_TYPE_BOOLEAN, false),\n tag: makeProp(PROP_TYPE_STRING, 'div')\n })), NAME_ROW);\n}; // --- Main component ---\n// We do not use `Vue.extend()` here as that would evaluate the props\n// immediately, which we do not want to happen\n// @vue/component\n\nexport var BRow = {\n name: NAME_ROW,\n functional: true,\n\n get props() {\n // Allow props to be lazy evaled on first access and\n // then they become a non-getter afterwards\n // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Functions/get#Smart_self-overwriting_lazy_getters\n delete this.props;\n this.props = generateProps();\n return this.props;\n },\n\n render: function render(h, _ref) {\n var _classList$push;\n\n var props = _ref.props,\n data = _ref.data,\n children = _ref.children;\n var alignV = props.alignV,\n alignH = props.alignH,\n alignContent = props.alignContent; // Loop through row-cols breakpoint props and generate the classes\n\n var classList = [];\n rowColsPropList.forEach(function (prop) {\n var c = computeRowColsClass(computeRowColsBreakpoint(prop), props[prop]); // If a class is returned, push it onto the array\n\n if (c) {\n classList.push(c);\n }\n });\n classList.push((_classList$push = {\n 'no-gutters': props.noGutters\n }, _defineProperty(_classList$push, \"align-items-\".concat(alignV), alignV), _defineProperty(_classList$push, \"justify-content-\".concat(alignH), alignH), _defineProperty(_classList$push, \"align-content-\".concat(alignContent), alignContent), _classList$push));\n return h(props.tag, mergeData(data, {\n staticClass: 'row',\n class: classList\n }), children);\n }\n};","function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport { mergeData } from '../../vue';\nimport { NAME_COL } from '../../constants/components';\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_BOOLEAN_NUMBER_STRING, PROP_TYPE_NUMBER_STRING, PROP_TYPE_STRING } from '../../constants/props';\nimport { RX_COL_CLASS } from '../../constants/regex';\nimport { arrayIncludes } from '../../utils/array';\nimport { getBreakpointsUpCached } from '../../utils/config';\nimport { identity } from '../../utils/identity';\nimport { isUndefinedOrNull } from '../../utils/inspect';\nimport { memoize } from '../../utils/memoize';\nimport { assign, create, keys, sortKeys } from '../../utils/object';\nimport { makeProp, makePropsConfigurable, suffixPropName } from '../../utils/props';\nimport { lowerCase } from '../../utils/string'; // --- Constants ---\n\nvar ALIGN_SELF_VALUES = ['auto', 'start', 'end', 'center', 'baseline', 'stretch']; // --- Helper methods ---\n// Compute a breakpoint class name\n\nvar computeBreakpoint = function computeBreakpoint(type, breakpoint, value) {\n var className = type;\n\n if (isUndefinedOrNull(value) || value === false) {\n return undefined;\n }\n\n if (breakpoint) {\n className += \"-\".concat(breakpoint);\n } // Handling the boolean style prop when accepting `[Boolean, String, Number]`\n // means Vue will not convert `` to `sm: true` for us\n // Since the default is `false`, '' indicates the prop's presence\n\n\n if (type === 'col' && (value === '' || value === true)) {\n // .col-md\n return lowerCase(className);\n } // .order-md-6\n\n\n className += \"-\".concat(value);\n return lowerCase(className);\n}; // Memoized function for better performance on generating class names\n\n\nvar computeBreakpointClass = memoize(computeBreakpoint); // Cached copy of the breakpoint prop names\n\nvar breakpointPropMap = create(null); // --- Props ---\n// Prop generator for lazy generation of props\n\nexport var generateProps = function generateProps() {\n // Grab the breakpoints from the cached config (exclude the '' (xs) breakpoint)\n var breakpoints = getBreakpointsUpCached().filter(identity); // i.e. 'col-sm', 'col-md-6', 'col-lg-auto', ...\n\n var breakpointCol = breakpoints.reduce(function (props, breakpoint) {\n props[breakpoint] = makeProp(PROP_TYPE_BOOLEAN_NUMBER_STRING);\n return props;\n }, create(null)); // i.e. 'offset-md-1', 'offset-lg-12', ...\n\n var breakpointOffset = breakpoints.reduce(function (props, breakpoint) {\n props[suffixPropName(breakpoint, 'offset')] = makeProp(PROP_TYPE_NUMBER_STRING);\n return props;\n }, create(null)); // i.e. 'order-md-1', 'order-lg-12', ...\n\n var breakpointOrder = breakpoints.reduce(function (props, breakpoint) {\n props[suffixPropName(breakpoint, 'order')] = makeProp(PROP_TYPE_NUMBER_STRING);\n return props;\n }, create(null)); // For loop doesn't need to check `.hasOwnProperty()`\n // when using an object created from `null`\n\n breakpointPropMap = assign(create(null), {\n col: keys(breakpointCol),\n offset: keys(breakpointOffset),\n order: keys(breakpointOrder)\n }); // Return the generated props\n\n return makePropsConfigurable(sortKeys(_objectSpread(_objectSpread(_objectSpread(_objectSpread({}, breakpointCol), breakpointOffset), breakpointOrder), {}, {\n // Flex alignment\n alignSelf: makeProp(PROP_TYPE_STRING, null, function (value) {\n return arrayIncludes(ALIGN_SELF_VALUES, value);\n }),\n // Generic flexbox 'col' (xs)\n col: makeProp(PROP_TYPE_BOOLEAN, false),\n // i.e. 'col-1', 'col-2', 'col-auto', ...\n cols: makeProp(PROP_TYPE_NUMBER_STRING),\n offset: makeProp(PROP_TYPE_NUMBER_STRING),\n order: makeProp(PROP_TYPE_NUMBER_STRING),\n tag: makeProp(PROP_TYPE_STRING, 'div')\n })), NAME_COL);\n}; // --- Main component ---\n// We do not use Vue.extend here as that would evaluate the props\n// immediately, which we do not want to happen\n// @vue/component\n\nexport var BCol = {\n name: NAME_COL,\n functional: true,\n\n get props() {\n // Allow props to be lazy evaled on first access and\n // then they become a non-getter afterwards.\n // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Functions/get#Smart_self-overwriting_lazy_getters\n delete this.props; // eslint-disable-next-line no-return-assign\n\n return this.props = generateProps();\n },\n\n render: function render(h, _ref) {\n var _classList$push;\n\n var props = _ref.props,\n data = _ref.data,\n children = _ref.children;\n var cols = props.cols,\n offset = props.offset,\n order = props.order,\n alignSelf = props.alignSelf;\n var classList = []; // Loop through `col`, `offset`, `order` breakpoint props\n\n for (var type in breakpointPropMap) {\n // Returns colSm, offset, offsetSm, orderMd, etc.\n var _keys = breakpointPropMap[type];\n\n for (var i = 0; i < _keys.length; i++) {\n // computeBreakpoint(col, colSm => Sm, value=[String, Number, Boolean])\n var c = computeBreakpointClass(type, _keys[i].replace(type, ''), props[_keys[i]]); // If a class is returned, push it onto the array.\n\n if (c) {\n classList.push(c);\n }\n }\n }\n\n var hasColClasses = classList.some(function (className) {\n return RX_COL_CLASS.test(className);\n });\n classList.push((_classList$push = {\n // Default to .col if no other col-{bp}-* classes generated nor `cols` specified.\n col: props.col || !hasColClasses && !cols\n }, _defineProperty(_classList$push, \"col-\".concat(cols), cols), _defineProperty(_classList$push, \"offset-\".concat(offset), offset), _defineProperty(_classList$push, \"order-\".concat(order), order), _defineProperty(_classList$push, \"align-self-\".concat(alignSelf), alignSelf), _classList$push));\n return h(props.tag, mergeData(data, {\n class: classList\n }), children);\n }\n};","var _makePropsConfigurabl, _watch;\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport { Vue } from '../../vue';\nimport { NAME_TOOLTIP } from '../../constants/components';\nimport { EVENT_NAME_CLOSE, EVENT_NAME_DISABLE, EVENT_NAME_DISABLED, EVENT_NAME_ENABLE, EVENT_NAME_ENABLED, EVENT_NAME_HIDDEN, EVENT_NAME_HIDE, EVENT_NAME_OPEN, EVENT_NAME_SHOW, EVENT_NAME_SHOWN, MODEL_EVENT_NAME_PREFIX } from '../../constants/events';\nimport { PROP_TYPE_ARRAY_STRING, PROP_TYPE_BOOLEAN, PROP_TYPE_FUNCTION, PROP_TYPE_NUMBER_OBJECT_STRING, PROP_TYPE_NUMBER_STRING, PROP_TYPE_OBJECT, PROP_TYPE_STRING } from '../../constants/props';\nimport { HTMLElement, SVGElement } from '../../constants/safe-types';\nimport { getScopeId } from '../../utils/get-scope-id';\nimport { isUndefinedOrNull } from '../../utils/inspect';\nimport { pick } from '../../utils/object';\nimport { makeProp, makePropsConfigurable } from '../../utils/props';\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot';\nimport { BVTooltip } from './helpers/bv-tooltip'; // --- Constants ---\n\nvar MODEL_PROP_NAME_ENABLED = 'disabled';\nvar MODEL_EVENT_NAME_ENABLED = MODEL_EVENT_NAME_PREFIX + MODEL_PROP_NAME_ENABLED;\nvar MODEL_PROP_NAME_SHOW = 'show';\nvar MODEL_EVENT_NAME_SHOW = MODEL_EVENT_NAME_PREFIX + MODEL_PROP_NAME_SHOW; // --- Props ---\n\nexport var props = makePropsConfigurable((_makePropsConfigurabl = {\n // String: scrollParent, window, or viewport\n // Element: element reference\n // Object: Vue component\n boundary: makeProp([HTMLElement, PROP_TYPE_OBJECT, PROP_TYPE_STRING], 'scrollParent'),\n boundaryPadding: makeProp(PROP_TYPE_NUMBER_STRING, 50),\n // String: HTML ID of container, if null body is used (default)\n // HTMLElement: element reference reference\n // Object: Vue Component\n container: makeProp([HTMLElement, PROP_TYPE_OBJECT, PROP_TYPE_STRING]),\n customClass: makeProp(PROP_TYPE_STRING),\n delay: makeProp(PROP_TYPE_NUMBER_OBJECT_STRING, 50)\n}, _defineProperty(_makePropsConfigurabl, MODEL_PROP_NAME_ENABLED, makeProp(PROP_TYPE_BOOLEAN, false)), _defineProperty(_makePropsConfigurabl, \"fallbackPlacement\", makeProp(PROP_TYPE_ARRAY_STRING, 'flip')), _defineProperty(_makePropsConfigurabl, \"id\", makeProp(PROP_TYPE_STRING)), _defineProperty(_makePropsConfigurabl, \"noFade\", makeProp(PROP_TYPE_BOOLEAN, false)), _defineProperty(_makePropsConfigurabl, \"noninteractive\", makeProp(PROP_TYPE_BOOLEAN, false)), _defineProperty(_makePropsConfigurabl, \"offset\", makeProp(PROP_TYPE_NUMBER_STRING, 0)), _defineProperty(_makePropsConfigurabl, \"placement\", makeProp(PROP_TYPE_STRING, 'top')), _defineProperty(_makePropsConfigurabl, MODEL_PROP_NAME_SHOW, makeProp(PROP_TYPE_BOOLEAN, false)), _defineProperty(_makePropsConfigurabl, \"target\", makeProp([HTMLElement, SVGElement, PROP_TYPE_FUNCTION, PROP_TYPE_OBJECT, PROP_TYPE_STRING], undefined, true)), _defineProperty(_makePropsConfigurabl, \"title\", makeProp(PROP_TYPE_STRING)), _defineProperty(_makePropsConfigurabl, \"triggers\", makeProp(PROP_TYPE_ARRAY_STRING, 'hover focus')), _defineProperty(_makePropsConfigurabl, \"variant\", makeProp(PROP_TYPE_STRING)), _makePropsConfigurabl), NAME_TOOLTIP); // --- Main component ---\n// @vue/component\n\nexport var BTooltip = /*#__PURE__*/Vue.extend({\n name: NAME_TOOLTIP,\n mixins: [normalizeSlotMixin],\n inheritAttrs: false,\n props: props,\n data: function data() {\n return {\n localShow: this[MODEL_PROP_NAME_SHOW],\n localTitle: '',\n localContent: ''\n };\n },\n computed: {\n // Data that will be passed to the template and popper\n templateData: function templateData() {\n return _objectSpread({\n title: this.localTitle,\n content: this.localContent,\n interactive: !this.noninteractive\n }, pick(this.$props, ['boundary', 'boundaryPadding', 'container', 'customClass', 'delay', 'fallbackPlacement', 'id', 'noFade', 'offset', 'placement', 'target', 'target', 'triggers', 'variant', MODEL_PROP_NAME_ENABLED]));\n },\n // Used to watch for changes to the title and content props\n templateTitleContent: function templateTitleContent() {\n var title = this.title,\n content = this.content;\n return {\n title: title,\n content: content\n };\n }\n },\n watch: (_watch = {}, _defineProperty(_watch, MODEL_PROP_NAME_SHOW, function (newValue, oldValue) {\n if (newValue !== oldValue && newValue !== this.localShow && this.$_toolpop) {\n if (newValue) {\n this.$_toolpop.show();\n } else {\n // We use `forceHide()` to override any active triggers\n this.$_toolpop.forceHide();\n }\n }\n }), _defineProperty(_watch, MODEL_PROP_NAME_ENABLED, function (newValue) {\n if (newValue) {\n this.doDisable();\n } else {\n this.doEnable();\n }\n }), _defineProperty(_watch, \"localShow\", function localShow(newValue) {\n // TODO: May need to be done in a `$nextTick()`\n this.$emit(MODEL_EVENT_NAME_SHOW, newValue);\n }), _defineProperty(_watch, \"templateData\", function templateData() {\n var _this = this;\n\n this.$nextTick(function () {\n if (_this.$_toolpop) {\n _this.$_toolpop.updateData(_this.templateData);\n }\n });\n }), _defineProperty(_watch, \"templateTitleContent\", function templateTitleContent() {\n this.$nextTick(this.updateContent);\n }), _watch),\n created: function created() {\n // Create private non-reactive props\n this.$_toolpop = null;\n },\n updated: function updated() {\n // Update the `propData` object\n // Done in a `$nextTick()` to ensure slot(s) have updated\n this.$nextTick(this.updateContent);\n },\n beforeDestroy: function beforeDestroy() {\n // Shutdown our local event listeners\n this.$off(EVENT_NAME_OPEN, this.doOpen);\n this.$off(EVENT_NAME_CLOSE, this.doClose);\n this.$off(EVENT_NAME_DISABLE, this.doDisable);\n this.$off(EVENT_NAME_ENABLE, this.doEnable); // Destroy the tip instance\n\n if (this.$_toolpop) {\n this.$_toolpop.$destroy();\n this.$_toolpop = null;\n }\n },\n mounted: function mounted() {\n var _this2 = this;\n\n // Instantiate a new BVTooltip instance\n // Done in a `$nextTick()` to ensure DOM has completed rendering\n // so that target can be found\n this.$nextTick(function () {\n // Load the on demand child instance\n var Component = _this2.getComponent(); // Ensure we have initial content\n\n\n _this2.updateContent(); // Pass down the scoped style attribute if available\n\n\n var scopeId = getScopeId(_this2) || getScopeId(_this2.$parent); // Create the instance\n\n var $toolpop = _this2.$_toolpop = new Component({\n parent: _this2,\n // Pass down the scoped style ID\n _scopeId: scopeId || undefined\n }); // Set the initial data\n\n $toolpop.updateData(_this2.templateData); // Set listeners\n\n $toolpop.$on(EVENT_NAME_SHOW, _this2.onShow);\n $toolpop.$on(EVENT_NAME_SHOWN, _this2.onShown);\n $toolpop.$on(EVENT_NAME_HIDE, _this2.onHide);\n $toolpop.$on(EVENT_NAME_HIDDEN, _this2.onHidden);\n $toolpop.$on(EVENT_NAME_DISABLED, _this2.onDisabled);\n $toolpop.$on(EVENT_NAME_ENABLED, _this2.onEnabled); // Initially disabled?\n\n if (_this2[MODEL_PROP_NAME_ENABLED]) {\n // Initially disabled\n _this2.doDisable();\n } // Listen to open signals from others\n\n\n _this2.$on(EVENT_NAME_OPEN, _this2.doOpen); // Listen to close signals from others\n\n\n _this2.$on(EVENT_NAME_CLOSE, _this2.doClose); // Listen to disable signals from others\n\n\n _this2.$on(EVENT_NAME_DISABLE, _this2.doDisable); // Listen to enable signals from others\n\n\n _this2.$on(EVENT_NAME_ENABLE, _this2.doEnable); // Initially show tooltip?\n\n\n if (_this2.localShow) {\n $toolpop.show();\n }\n });\n },\n methods: {\n getComponent: function getComponent() {\n // Overridden by BPopover\n return BVTooltip;\n },\n updateContent: function updateContent() {\n // Overridden by BPopover\n // Tooltip: Default slot is `title`\n // Popover: Default slot is `content`, `title` slot is title\n // We pass a scoped slot function reference by default (Vue v2.6x)\n // And pass the title prop as a fallback\n this.setTitle(this.normalizeSlot() || this.title);\n },\n // Helper methods for `updateContent()`\n setTitle: function setTitle(value) {\n value = isUndefinedOrNull(value) ? '' : value; // We only update the value if it has changed\n\n if (this.localTitle !== value) {\n this.localTitle = value;\n }\n },\n setContent: function setContent(value) {\n value = isUndefinedOrNull(value) ? '' : value; // We only update the value if it has changed\n\n if (this.localContent !== value) {\n this.localContent = value;\n }\n },\n // --- Template event handlers ---\n onShow: function onShow(bvEvent) {\n // Placeholder\n this.$emit(EVENT_NAME_SHOW, bvEvent);\n\n if (bvEvent) {\n this.localShow = !bvEvent.defaultPrevented;\n }\n },\n onShown: function onShown(bvEvent) {\n // Tip is now showing\n this.localShow = true;\n this.$emit(EVENT_NAME_SHOWN, bvEvent);\n },\n onHide: function onHide(bvEvent) {\n this.$emit(EVENT_NAME_HIDE, bvEvent);\n },\n onHidden: function onHidden(bvEvent) {\n // Tip is no longer showing\n this.$emit(EVENT_NAME_HIDDEN, bvEvent);\n this.localShow = false;\n },\n onDisabled: function onDisabled(bvEvent) {\n // Prevent possible endless loop if user mistakenly\n // fires `disabled` instead of `disable`\n if (bvEvent && bvEvent.type === EVENT_NAME_DISABLED) {\n this.$emit(MODEL_EVENT_NAME_ENABLED, true);\n this.$emit(EVENT_NAME_DISABLED, bvEvent);\n }\n },\n onEnabled: function onEnabled(bvEvent) {\n // Prevent possible endless loop if user mistakenly\n // fires `enabled` instead of `enable`\n if (bvEvent && bvEvent.type === EVENT_NAME_ENABLED) {\n this.$emit(MODEL_EVENT_NAME_ENABLED, false);\n this.$emit(EVENT_NAME_ENABLED, bvEvent);\n }\n },\n // --- Local event listeners ---\n doOpen: function doOpen() {\n !this.localShow && this.$_toolpop && this.$_toolpop.show();\n },\n doClose: function doClose() {\n this.localShow && this.$_toolpop && this.$_toolpop.hide();\n },\n doDisable: function doDisable() {\n this.$_toolpop && this.$_toolpop.disable();\n },\n doEnable: function doEnable() {\n this.$_toolpop && this.$_toolpop.enable();\n }\n },\n render: function render(h) {\n // Always renders a comment node\n // TODO:\n // Future: Possibly render a target slot (single root element)\n // which we can apply the listeners to (pass `this.$el` to BVTooltip)\n return h();\n }\n});","import { Vue, mergeData } from '../../vue';\nimport { NAME_CARD_TEXT } from '../../constants/components';\nimport { PROP_TYPE_STRING } from '../../constants/props';\nimport { makeProp, makePropsConfigurable } from '../../utils/props'; // --- Props ---\n\nexport var props = makePropsConfigurable({\n textTag: makeProp(PROP_TYPE_STRING, 'p')\n}, NAME_CARD_TEXT); // --- Main component ---\n// @vue/component\n\nexport var BCardText = /*#__PURE__*/Vue.extend({\n name: NAME_CARD_TEXT,\n functional: true,\n props: props,\n render: function render(h, _ref) {\n var props = _ref.props,\n data = _ref.data,\n children = _ref.children;\n return h(props.textTag, mergeData(data, {\n staticClass: 'card-text'\n }), children);\n }\n});","// Base on-demand component for tooltip / popover templates\n//\n// Currently:\n// Responsible for positioning and transitioning the template\n// Templates are only instantiated when shown, and destroyed when hidden\n//\nimport Popper from 'popper.js';\nimport { Vue } from '../../../vue';\nimport { NAME_POPPER } from '../../../constants/components';\nimport { EVENT_NAME_HIDDEN, EVENT_NAME_HIDE, EVENT_NAME_SHOW, EVENT_NAME_SHOWN, HOOK_EVENT_NAME_DESTROYED } from '../../../constants/events';\nimport { PROP_TYPE_ARRAY_STRING, PROP_TYPE_NUMBER_STRING, PROP_TYPE_STRING } from '../../../constants/props';\nimport { HTMLElement, SVGElement } from '../../../constants/safe-types';\nimport { getCS, requestAF, select } from '../../../utils/dom';\nimport { toFloat } from '../../../utils/number';\nimport { makeProp } from '../../../utils/props';\nimport { BVTransition } from '../../transition/bv-transition'; // --- Constants ---\n\nvar AttachmentMap = {\n AUTO: 'auto',\n TOP: 'top',\n RIGHT: 'right',\n BOTTOM: 'bottom',\n LEFT: 'left',\n TOPLEFT: 'top',\n TOPRIGHT: 'top',\n RIGHTTOP: 'right',\n RIGHTBOTTOM: 'right',\n BOTTOMLEFT: 'bottom',\n BOTTOMRIGHT: 'bottom',\n LEFTTOP: 'left',\n LEFTBOTTOM: 'left'\n};\nvar OffsetMap = {\n AUTO: 0,\n TOPLEFT: -1,\n TOP: 0,\n TOPRIGHT: +1,\n RIGHTTOP: -1,\n RIGHT: 0,\n RIGHTBOTTOM: +1,\n BOTTOMLEFT: -1,\n BOTTOM: 0,\n BOTTOMRIGHT: +1,\n LEFTTOP: -1,\n LEFT: 0,\n LEFTBOTTOM: +1\n}; // --- Props ---\n\nexport var props = {\n // The minimum distance (in `px`) from the edge of the\n // tooltip/popover that the arrow can be positioned\n arrowPadding: makeProp(PROP_TYPE_NUMBER_STRING, 6),\n // 'scrollParent', 'viewport', 'window', or `Element`\n boundary: makeProp([HTMLElement, PROP_TYPE_STRING], 'scrollParent'),\n // Tooltip/popover will try and stay away from\n // boundary edge by this many pixels\n boundaryPadding: makeProp(PROP_TYPE_NUMBER_STRING, 5),\n fallbackPlacement: makeProp(PROP_TYPE_ARRAY_STRING, 'flip'),\n offset: makeProp(PROP_TYPE_NUMBER_STRING, 0),\n placement: makeProp(PROP_TYPE_STRING, 'top'),\n // Element that the tooltip/popover is positioned relative to\n target: makeProp([HTMLElement, SVGElement])\n}; // --- Main component ---\n// @vue/component\n\nexport var BVPopper = /*#__PURE__*/Vue.extend({\n name: NAME_POPPER,\n props: props,\n data: function data() {\n return {\n // reactive props set by parent\n noFade: false,\n // State related data\n localShow: true,\n attachment: this.getAttachment(this.placement)\n };\n },\n computed: {\n /* istanbul ignore next */\n templateType: function templateType() {\n // Overridden by template component\n return 'unknown';\n },\n popperConfig: function popperConfig() {\n var _this = this;\n\n var placement = this.placement;\n return {\n placement: this.getAttachment(placement),\n modifiers: {\n offset: {\n offset: this.getOffset(placement)\n },\n flip: {\n behavior: this.fallbackPlacement\n },\n // `arrow.element` can also be a reference to an HTML Element\n // maybe we should make this a `$ref` in the templates?\n arrow: {\n element: '.arrow'\n },\n preventOverflow: {\n padding: this.boundaryPadding,\n boundariesElement: this.boundary\n }\n },\n onCreate: function onCreate(data) {\n // Handle flipping arrow classes\n if (data.originalPlacement !== data.placement) {\n /* istanbul ignore next: can't test in JSDOM */\n _this.popperPlacementChange(data);\n }\n },\n onUpdate: function onUpdate(data) {\n // Handle flipping arrow classes\n _this.popperPlacementChange(data);\n }\n };\n }\n },\n created: function created() {\n var _this2 = this;\n\n // Note: We are created on-demand, and should be guaranteed that\n // DOM is rendered/ready by the time the created hook runs\n this.$_popper = null; // Ensure we show as we mount\n\n this.localShow = true; // Create popper instance before shown\n\n this.$on(EVENT_NAME_SHOW, function (el) {\n _this2.popperCreate(el);\n }); // Self destruct handler\n\n var handleDestroy = function handleDestroy() {\n _this2.$nextTick(function () {\n // In a `requestAF()` to release control back to application\n requestAF(function () {\n _this2.$destroy();\n });\n });\n }; // Self destruct if parent destroyed\n\n\n this.$parent.$once(HOOK_EVENT_NAME_DESTROYED, handleDestroy); // Self destruct after hidden\n\n this.$once(EVENT_NAME_HIDDEN, handleDestroy);\n },\n beforeMount: function beforeMount() {\n // Ensure that the attachment position is correct before mounting\n // as our propsData is added after `new Template({...})`\n this.attachment = this.getAttachment(this.placement);\n },\n updated: function updated() {\n // Update popper if needed\n // TODO: Should this be a watcher on `this.popperConfig` instead?\n this.updatePopper();\n },\n beforeDestroy: function beforeDestroy() {\n this.destroyPopper();\n },\n destroyed: function destroyed() {\n // Make sure template is removed from DOM\n var el = this.$el;\n el && el.parentNode && el.parentNode.removeChild(el);\n },\n methods: {\n // \"Public\" method to trigger hide template\n hide: function hide() {\n this.localShow = false;\n },\n // Private\n getAttachment: function getAttachment(placement) {\n return AttachmentMap[String(placement).toUpperCase()] || 'auto';\n },\n getOffset: function getOffset(placement) {\n if (!this.offset) {\n // Could set a ref for the arrow element\n var arrow = this.$refs.arrow || select('.arrow', this.$el);\n var arrowOffset = toFloat(getCS(arrow).width, 0) + toFloat(this.arrowPadding, 0);\n\n switch (OffsetMap[String(placement).toUpperCase()] || 0) {\n /* istanbul ignore next: can't test in JSDOM */\n case +1:\n /* istanbul ignore next: can't test in JSDOM */\n return \"+50%p - \".concat(arrowOffset, \"px\");\n\n /* istanbul ignore next: can't test in JSDOM */\n\n case -1:\n /* istanbul ignore next: can't test in JSDOM */\n return \"-50%p + \".concat(arrowOffset, \"px\");\n\n default:\n return 0;\n }\n }\n /* istanbul ignore next */\n\n\n return this.offset;\n },\n popperCreate: function popperCreate(el) {\n this.destroyPopper(); // We use `el` rather than `this.$el` just in case the original\n // mountpoint root element type was changed by the template\n\n this.$_popper = new Popper(this.target, el, this.popperConfig);\n },\n destroyPopper: function destroyPopper() {\n this.$_popper && this.$_popper.destroy();\n this.$_popper = null;\n },\n updatePopper: function updatePopper() {\n this.$_popper && this.$_popper.scheduleUpdate();\n },\n popperPlacementChange: function popperPlacementChange(data) {\n // Callback used by popper to adjust the arrow placement\n this.attachment = this.getAttachment(data.placement);\n },\n\n /* istanbul ignore next */\n renderTemplate: function renderTemplate(h) {\n // Will be overridden by templates\n return h('div');\n }\n },\n render: function render(h) {\n var _this3 = this;\n\n var noFade = this.noFade; // Note: 'show' and 'fade' classes are only appled during transition\n\n return h(BVTransition, {\n // Transitions as soon as mounted\n props: {\n appear: true,\n noFade: noFade\n },\n on: {\n // Events used by parent component/instance\n beforeEnter: function beforeEnter(el) {\n return _this3.$emit(EVENT_NAME_SHOW, el);\n },\n afterEnter: function afterEnter(el) {\n return _this3.$emit(EVENT_NAME_SHOWN, el);\n },\n beforeLeave: function beforeLeave(el) {\n return _this3.$emit(EVENT_NAME_HIDE, el);\n },\n afterLeave: function afterLeave(el) {\n return _this3.$emit(EVENT_NAME_HIDDEN, el);\n }\n }\n }, [this.localShow ? this.renderTemplate(h) : h()]);\n }\n});","function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport { Vue } from '../../../vue';\nimport { NAME_TOOLTIP_TEMPLATE } from '../../../constants/components';\nimport { EVENT_NAME_FOCUSIN, EVENT_NAME_FOCUSOUT, EVENT_NAME_MOUSEENTER, EVENT_NAME_MOUSELEAVE } from '../../../constants/events';\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_STRING } from '../../../constants/props';\nimport { isFunction } from '../../../utils/inspect';\nimport { makeProp } from '../../../utils/props';\nimport { scopedStyleMixin } from '../../../mixins/scoped-style';\nimport { BVPopper } from './bv-popper'; // --- Props ---\n\nexport var props = {\n // Used only by the directive versions\n html: makeProp(PROP_TYPE_BOOLEAN, false),\n // Other non-reactive (while open) props are pulled in from BVPopper\n id: makeProp(PROP_TYPE_STRING)\n}; // --- Main component ---\n// @vue/component\n\nexport var BVTooltipTemplate = /*#__PURE__*/Vue.extend({\n name: NAME_TOOLTIP_TEMPLATE,\n extends: BVPopper,\n mixins: [scopedStyleMixin],\n props: props,\n data: function data() {\n // We use data, rather than props to ensure reactivity\n // Parent component will directly set this data\n return {\n title: '',\n content: '',\n variant: null,\n customClass: null,\n interactive: true\n };\n },\n computed: {\n templateType: function templateType() {\n return 'tooltip';\n },\n templateClasses: function templateClasses() {\n var _ref;\n\n var variant = this.variant,\n attachment = this.attachment,\n templateType = this.templateType;\n return [(_ref = {\n // Disables pointer events to hide the tooltip when the user\n // hovers over its content\n noninteractive: !this.interactive\n }, _defineProperty(_ref, \"b-\".concat(templateType, \"-\").concat(variant), variant), _defineProperty(_ref, \"bs-\".concat(templateType, \"-\").concat(attachment), attachment), _ref), this.customClass];\n },\n templateAttributes: function templateAttributes() {\n var id = this.id;\n return _objectSpread(_objectSpread({}, this.$parent.$parent.$attrs), {}, {\n id: id,\n role: 'tooltip',\n tabindex: '-1'\n }, this.scopedStyleAttrs);\n },\n templateListeners: function templateListeners() {\n var _this = this;\n\n // Used for hover/focus trigger listeners\n return {\n mouseenter:\n /* istanbul ignore next */\n function mouseenter(event) {\n _this.$emit(EVENT_NAME_MOUSEENTER, event);\n },\n mouseleave:\n /* istanbul ignore next */\n function mouseleave(event) {\n _this.$emit(EVENT_NAME_MOUSELEAVE, event);\n },\n focusin:\n /* istanbul ignore next */\n function focusin(event) {\n _this.$emit(EVENT_NAME_FOCUSIN, event);\n },\n focusout:\n /* istanbul ignore next */\n function focusout(event) {\n _this.$emit(EVENT_NAME_FOCUSOUT, event);\n }\n };\n }\n },\n methods: {\n renderTemplate: function renderTemplate(h) {\n var title = this.title; // Title can be a scoped slot function\n\n var $title = isFunction(title) ? title({}) : title; // Directive versions only\n\n var domProps = this.html && !isFunction(title) ? {\n innerHTML: title\n } : {};\n return h('div', {\n staticClass: 'tooltip b-tooltip',\n class: this.templateClasses,\n attrs: this.templateAttributes,\n on: this.templateListeners\n }, [h('div', {\n staticClass: 'arrow',\n ref: 'arrow'\n }), h('div', {\n staticClass: 'tooltip-inner',\n domProps: domProps\n }, [$title])]);\n }\n }\n});","function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport { Vue } from '../../vue';\nimport { NAME_AVATAR } from '../../constants/components';\nimport { EVENT_NAME_CLICK, EVENT_NAME_IMG_ERROR } from '../../constants/events';\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_BOOLEAN_STRING, PROP_TYPE_NUMBER_STRING, PROP_TYPE_STRING } from '../../constants/props';\nimport { SLOT_NAME_BADGE } from '../../constants/slots';\nimport { isNumber, isNumeric, isString } from '../../utils/inspect';\nimport { toFloat } from '../../utils/number';\nimport { omit, sortKeys } from '../../utils/object';\nimport { makeProp, makePropsConfigurable, pluckProps } from '../../utils/props';\nimport { isLink } from '../../utils/router';\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot';\nimport { BIcon } from '../../icons/icon';\nimport { BIconPersonFill } from '../../icons/icons';\nimport { BButton } from '../button/button';\nimport { BLink, props as BLinkProps } from '../link/link'; // --- Constants ---\n\nvar CLASS_NAME = 'b-avatar';\nvar SIZES = ['sm', null, 'lg'];\nvar FONT_SIZE_SCALE = 0.4;\nvar BADGE_FONT_SIZE_SCALE = FONT_SIZE_SCALE * 0.7; // --- Helper methods ---\n\nexport var computeSize = function computeSize(value) {\n // Parse to number when value is a float-like string\n value = isString(value) && isNumeric(value) ? toFloat(value, 0) : value; // Convert all numbers to pixel values\n\n return isNumber(value) ? \"\".concat(value, \"px\") : value || null;\n}; // --- Props ---\n\nvar linkProps = omit(BLinkProps, ['active', 'event', 'routerTag']);\nexport var props = makePropsConfigurable(sortKeys(_objectSpread(_objectSpread({}, linkProps), {}, {\n alt: makeProp(PROP_TYPE_STRING, 'avatar'),\n ariaLabel: makeProp(PROP_TYPE_STRING),\n badge: makeProp(PROP_TYPE_BOOLEAN_STRING, false),\n badgeLeft: makeProp(PROP_TYPE_BOOLEAN, false),\n badgeOffset: makeProp(PROP_TYPE_STRING),\n badgeTop: makeProp(PROP_TYPE_BOOLEAN, false),\n badgeVariant: makeProp(PROP_TYPE_STRING, 'primary'),\n button: makeProp(PROP_TYPE_BOOLEAN, false),\n buttonType: makeProp(PROP_TYPE_STRING, 'button'),\n icon: makeProp(PROP_TYPE_STRING),\n rounded: makeProp(PROP_TYPE_BOOLEAN_STRING, false),\n size: makeProp(PROP_TYPE_NUMBER_STRING),\n square: makeProp(PROP_TYPE_BOOLEAN, false),\n src: makeProp(PROP_TYPE_STRING),\n text: makeProp(PROP_TYPE_STRING),\n variant: makeProp(PROP_TYPE_STRING, 'secondary')\n})), NAME_AVATAR); // --- Main component ---\n// @vue/component\n\nexport var BAvatar = /*#__PURE__*/Vue.extend({\n name: NAME_AVATAR,\n mixins: [normalizeSlotMixin],\n inject: {\n bvAvatarGroup: {\n default: null\n }\n },\n props: props,\n data: function data() {\n return {\n localSrc: this.src || null\n };\n },\n computed: {\n computedSize: function computedSize() {\n // Always use the avatar group size\n var bvAvatarGroup = this.bvAvatarGroup;\n return computeSize(bvAvatarGroup ? bvAvatarGroup.size : this.size);\n },\n computedVariant: function computedVariant() {\n var bvAvatarGroup = this.bvAvatarGroup;\n return bvAvatarGroup && bvAvatarGroup.variant ? bvAvatarGroup.variant : this.variant;\n },\n computedRounded: function computedRounded() {\n var bvAvatarGroup = this.bvAvatarGroup;\n var square = bvAvatarGroup && bvAvatarGroup.square ? true : this.square;\n var rounded = bvAvatarGroup && bvAvatarGroup.rounded ? bvAvatarGroup.rounded : this.rounded;\n return square ? '0' : rounded === '' ? true : rounded || 'circle';\n },\n fontStyle: function fontStyle() {\n var size = this.computedSize;\n var fontSize = SIZES.indexOf(size) === -1 ? \"calc(\".concat(size, \" * \").concat(FONT_SIZE_SCALE, \")\") : null;\n return fontSize ? {\n fontSize: fontSize\n } : {};\n },\n marginStyle: function marginStyle() {\n var size = this.computedSize,\n bvAvatarGroup = this.bvAvatarGroup;\n var overlapScale = bvAvatarGroup ? bvAvatarGroup.overlapScale : 0;\n var value = size && overlapScale ? \"calc(\".concat(size, \" * -\").concat(overlapScale, \")\") : null;\n return value ? {\n marginLeft: value,\n marginRight: value\n } : {};\n },\n badgeStyle: function badgeStyle() {\n var size = this.computedSize,\n badgeTop = this.badgeTop,\n badgeLeft = this.badgeLeft,\n badgeOffset = this.badgeOffset;\n var offset = badgeOffset || '0px';\n return {\n fontSize: SIZES.indexOf(size) === -1 ? \"calc(\".concat(size, \" * \").concat(BADGE_FONT_SIZE_SCALE, \" )\") : null,\n top: badgeTop ? offset : null,\n bottom: badgeTop ? null : offset,\n left: badgeLeft ? offset : null,\n right: badgeLeft ? null : offset\n };\n }\n },\n watch: {\n src: function src(newValue, oldValue) {\n if (newValue !== oldValue) {\n this.localSrc = newValue || null;\n }\n }\n },\n methods: {\n onImgError: function onImgError(event) {\n this.localSrc = null;\n this.$emit(EVENT_NAME_IMG_ERROR, event);\n },\n onClick: function onClick(event) {\n this.$emit(EVENT_NAME_CLICK, event);\n }\n },\n render: function render(h) {\n var _class2;\n\n var variant = this.computedVariant,\n disabled = this.disabled,\n rounded = this.computedRounded,\n icon = this.icon,\n src = this.localSrc,\n text = this.text,\n fontStyle = this.fontStyle,\n marginStyle = this.marginStyle,\n size = this.computedSize,\n button = this.button,\n type = this.buttonType,\n badge = this.badge,\n badgeVariant = this.badgeVariant,\n badgeStyle = this.badgeStyle;\n var link = !button && isLink(this);\n var tag = button ? BButton : link ? BLink : 'span';\n var alt = this.alt;\n var ariaLabel = this.ariaLabel || null;\n var $content = null;\n\n if (this.hasNormalizedSlot()) {\n // Default slot overrides props\n $content = h('span', {\n staticClass: 'b-avatar-custom'\n }, [this.normalizeSlot()]);\n } else if (src) {\n $content = h('img', {\n style: variant ? {} : {\n width: '100%',\n height: '100%'\n },\n attrs: {\n src: src,\n alt: alt\n },\n on: {\n error: this.onImgError\n }\n });\n $content = h('span', {\n staticClass: 'b-avatar-img'\n }, [$content]);\n } else if (icon) {\n $content = h(BIcon, {\n props: {\n icon: icon\n },\n attrs: {\n 'aria-hidden': 'true',\n alt: alt\n }\n });\n } else if (text) {\n $content = h('span', {\n staticClass: 'b-avatar-text',\n style: fontStyle\n }, [h('span', text)]);\n } else {\n // Fallback default avatar content\n $content = h(BIconPersonFill, {\n attrs: {\n 'aria-hidden': 'true',\n alt: alt\n }\n });\n }\n\n var $badge = h();\n var hasBadgeSlot = this.hasNormalizedSlot(SLOT_NAME_BADGE);\n\n if (badge || badge === '' || hasBadgeSlot) {\n var badgeText = badge === true ? '' : badge;\n $badge = h('span', {\n staticClass: 'b-avatar-badge',\n class: _defineProperty({}, \"badge-\".concat(badgeVariant), badgeVariant),\n style: badgeStyle\n }, [hasBadgeSlot ? this.normalizeSlot(SLOT_NAME_BADGE) : badgeText]);\n }\n\n var componentData = {\n staticClass: CLASS_NAME,\n class: (_class2 = {}, _defineProperty(_class2, \"\".concat(CLASS_NAME, \"-\").concat(size), size && SIZES.indexOf(size) !== -1), _defineProperty(_class2, \"badge-\".concat(variant), !button && variant), _defineProperty(_class2, \"rounded\", rounded === true), _defineProperty(_class2, \"rounded-\".concat(rounded), rounded && rounded !== true), _defineProperty(_class2, \"disabled\", disabled), _class2),\n style: _objectSpread(_objectSpread({}, marginStyle), {}, {\n width: size,\n height: size\n }),\n attrs: {\n 'aria-label': ariaLabel || null\n },\n props: button ? {\n variant: variant,\n disabled: disabled,\n type: type\n } : link ? pluckProps(linkProps, this) : {},\n on: button || link ? {\n click: this.onClick\n } : {}\n };\n return h(tag, componentData, [$content, $badge]);\n }\n});","export var noop = function noop() {};","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ToastificationContent.vue?vue&type=style&index=0&id=55dd3057&prod&lang=scss&scoped=true&\""],"sourceRoot":""}