UNPKG

bootstrap-vue-next

Version:

BootstrapVueNext is an early and lovely component library for Vue 3 & Nuxt 3 based on Bootstrap 5 and Typescript.

3 lines (2 loc) 1.46 kB
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("vue"),o=require("../../../keys-dS8HZUdm.js"),t={install(t){const p=e.ref(new Map),r=e.ref(new Map);t.provide(o.popoverPluginKey,{popovers:p,tooltips:r,tooltip:o=>{var t;const p=e.toRef(o.props),l=e.toRef(o.target),n=(null==(t=p.value)?void 0:t.id)||Symbol("Tooltip controller");return e.watch(l,(t=>{t?r.value.set(n,{component:o.component?e.markRaw(o.component):void 0,props:{...p.value,_modelValue:!1,_target:t}}):r.value.delete(n)}),{immediate:!0}),e.watch(p,(t=>{const p=r.value.get(n);p&&r.value.set(n,{component:o.component?e.markRaw(o.component):void 0,props:{...p.props,...t}})})),n},popover:o=>{var t;const r=e.toRef(o.props),l=e.toRef(o.target),n=(null==(t=r.value)?void 0:t.id)||Symbol("Popover controller");return e.watch(l,(t=>{t?p.value.set(n,{component:o.component?e.markRaw(o.component):void 0,props:{...r.value,_target:t,_modelValue:!1}}):p.value.delete(n)}),{immediate:!0}),e.watch(r,(t=>{const r=p.value.get(n);r&&p.value.set(n,{component:o.component?e.markRaw(o.component):void 0,props:{...r.props,...t}})})),n},setPopover:(e,o)=>{const t=p.value.get(e);(null==t?void 0:t.props)&&(t.props={...t.props,...o})},setTooltip:(e,o)=>{const t=r.value.get(e);(null==t?void 0:t.props)&&(t.props={...t.props,...o})},removePopover:e=>p.value.delete(e),removeTooltip:e=>r.value.delete(e)})}};exports.popoverPlugin=t; //# sourceMappingURL=index.umd.js.map