UNPKG

@volverjs/ui-vue

Version:

@volverjs/ui-vue is a lightweight Vue 3 component library to accompany @volverjs/style.

2 lines (1 loc) 1.42 kB
!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e(require("vue")):"function"==typeof define&&define.amd?define(["vue"],e):(t="undefined"!=typeof globalThis?globalThis:t||self).VvTooltip=e(t.vue)}(this,function(t){"use strict";var e=(t=>(t.local="local",t.session="session",t))(e||{}),o=(t=>(t.left="left",t.right="right",t.top="top",t.bottom="bottom",t))(o||{}),n=(t=>(t.before="before",t.after="after",t))(n||{}),r=(t=>(t.button="button",t.submit="submit",t.reset="reset",t))(r||{}),i=(t=>(t.nuxtLink="nuxt-link",t.routerLink="router-link",t.a="a",t.button="button",t))(i||{});const u={modifiers:{type:[String,Array],default:void 0}};n.before,o.bottom,r.button,i.button,e.local;const l={...u,position:{type:String,default:o.bottom},value:{type:String}};return t.defineComponent({name:"VvTooltip",props:l,setup(e){const o=e,{modifiers:n}=t.toRefs(o),r=function(e,o,n){return t.computed(()=>{const r={[e]:!0},i="string"==typeof o?.value?o.value.split(" "):o?.value;return i&&Array.isArray(i)&&i.forEach(t=>{t&&(r[`${e}--${t}`]=!0)}),n&&Object.keys(n.value).forEach(o=>{r[`${e}--${o}`]=t.unref(n.value[o])}),r})}("vv-tooltip",n,t.computed(()=>({[o.position]:!0})));return(e,o)=>(t.openBlock(),t.createElementBlock("span",{class:t.normalizeClass(t.unref(r)),role:"tooltip",inert:""},[t.renderSlot(e.$slots,"default",{},()=>[t.createTextVNode(t.toDisplayString(e.value),1)])],2))}})});