38 lines
869 B
Vue
38 lines
869 B
Vue
<script lang="ts" setup>
|
|
|
|
// type
|
|
type Props = {
|
|
title?: string
|
|
}
|
|
|
|
// prop
|
|
const props = defineProps<Props>();
|
|
const { title } = toRefs(props);
|
|
|
|
</script>
|
|
|
|
<template>
|
|
<TooltipProvider
|
|
:disabled="!title"
|
|
:delay-duration="0"
|
|
>
|
|
<TooltipRoot>
|
|
<TooltipTrigger>
|
|
<slot />
|
|
</TooltipTrigger>
|
|
<TooltipPortal>
|
|
<TooltipContent
|
|
class="bg-black text-white px-4 py-3 rounded-full"
|
|
:side-offset="5"
|
|
>
|
|
{{ title }}
|
|
<TooltipArrow
|
|
class="fill-black"
|
|
:width="12"
|
|
:height="6"
|
|
/>
|
|
</TooltipContent>
|
|
</TooltipPortal>
|
|
</TooltipRoot>
|
|
</TooltipProvider>
|
|
</template> |