Global setup
Four singletons. Mount each once, anywhere in your app, and every other component reaches it automatically.
TooltipHost
Powers every v-tooltip. Without one mounted, tooltips silently never appear.
<template>
<TooltipHost />
<YourApp />
</template>It takes the same options every individual tooltip can override:
DialogHost
Renders whatever openDialog() or confirmAction() creates imperatively. Not needed for a <Dialog v-model:open> in your own template. No props, no configuration.
<template>
<DialogHost />
<YourApp />
</template>PopoverHost
Renders whatever openPopover() or confirmAction() with surface: 'popover' creates imperatively. Not needed for a <Popover v-model:open> in your own template. No props, no configuration.
<template>
<PopoverHost />
<YourApp />
</template>Toaster
Renders whatever toast() creates. Has real configuration, so it keeps its own page.
<template>
<Toaster />
<YourApp />
</template>All together
Mount all four once, wherever your app's root template lives:
<script setup lang="ts">
import { DialogHost, PopoverHost, Toaster, TooltipHost } from 'vael-ui'
</script>
<template>
<TooltipHost />
<DialogHost />
<PopoverHost />
<Toaster />
<YourApp />
</template>