This document describes the current embedding contract for overlay and floating components in @codemonster-ru/vueforge-core.
These components support the same teleport contract:
VfDialogVfDrawerVfDropdownVfPopoverVfTooltip
Available props:
teleportTo?: string | HTMLElement | null | falsedisableTeleport?: boolean
Behavior:
- default: render through
Teleportintobody disableTeleport: render in placeteleportTo: render into a custom targetteleportTo={false}orteleportTo={null}: render in place
VfDrawer also supports shell-friendly embedding controls:
offsetTop?: string | numberbodyPadding?: string | number
Useful CSS variables:
--vf-drawer-offset-top--vf-drawer-body-padding--vf-drawer-radius-top-left--vf-drawer-radius-top-right--vf-drawer-radius-bottom-left--vf-drawer-radius-bottom-right
VfDrawer forwards class, style, and data-* attrs to the root overlay element, so shell packages can adapt it without brittle selectors.
Overlay and floating layers now use theme tokens instead of hardcoded z-index values:
zOverlayzDrawerzDropdownzPopoverzTooltip
The fallback CSS variables are:
--vf-z-overlay--vf-z-drawer--vf-z-dropdown--vf-z-popover--vf-z-tooltip