Radix popover in a Sheet
Keep Radix positioning and focus behavior while enrolling its portaled Content in Velvet dismissal ownership.
Team access
Radix owns positioning; Velvet owns dismissal order.
What stays true
- Wrap Content, not Portal
- Shared scope
- First Escape closes the popover
Try it deliberately
- The adapter is headless and adds no Radix peer dependency to Velvet.
- forceMount keeps the DOM-bearing surface available through its controlled lifecycle.