UNPKG

@aotearoan/neon

Version:

Neon is a lightweight design library of Vue 3 components with minimal dependencies.

3 lines (2 loc) 1.17 kB
"use strict";const e=require("vue"),r=require("../../../model/common/position/NeonPosition.cjs.js"),p=require("../../../model/feedback/tooltip/NeonTooltipStyle.cjs.js"),s=require("../../../utils/feedback/tooltip/NeonTooltipPlacementUtils.cjs.js"),m=require("../../../model/common/accessibility/NeonOutlineStyle.cjs.js"),f=require("../../../model/common/color/NeonFunctionalColor.cjs.js"),y=e.defineComponent({name:"NeonTooltip",props:{id:{type:String,default:null},placement:{type:String,default:r.NeonPosition.Top},tooltipStyle:{type:String,default:p.NeonTooltipStyle.Tooltip},outlineStyle:{type:String,default:m.NeonOutlineStyle.Text},outlineColor:{type:String,default:f.NeonFunctionalColor.Primary},placementContainer:{type:Object,default:null}},setup(o){const l=e.ref(null),n=e.ref(null),i=e.ref(o.placement),t=e.ref(!1),a=()=>{i.value=s.NeonTooltipPlacementUtils.calculatePlacement(l.value,n.value,o.placement,o.placementContainer)},c=()=>{t.value=!0,setTimeout(a)},u=()=>{t.value=!1};return{tooltip:l,tooltipPlacement:i,content:n,open:t,toggleTooltip:()=>{t.value?u():c()},closeTooltip:u,openTooltip:c}}});module.exports=y; //# sourceMappingURL=NeonTooltip.cjs.js.map