UNPKG

@trail-ui/react

Version:
35 lines (34 loc) 1.4 kB
// src/multiselect/tw-popover.tsx import { Popover as RACPopover, composeRenderProps, useSlottedContext, PopoverContext } from "react-aria-components"; import { twMerge } from "tailwind-merge"; import { jsx } from "react/jsx-runtime"; function Popover({ children, className, ...props }) { const popoverContext = useSlottedContext(PopoverContext); const isSubmenu = (popoverContext == null ? void 0 : popoverContext.trigger) === "SubmenuTrigger"; let offset = 8; offset = props.offset !== void 0 ? props.offset : isSubmenu ? offset - 14 : offset; return /* @__PURE__ */ jsx( RACPopover, { ...props, offset, className: composeRenderProps(className, (className2, renderProps) => { return twMerge( "ring-foreground/10 dark:ring-foreground/15 rounded text-[12px] shadow-md ring-1 dark:ring-inset", renderProps.isEntering && "duration-50 animate-in fade-in placement-left:slide-in-from-right-1 placement-right:slide-in-from-left-1 placement-top:slide-in-from-bottom-1 placement-bottom:slide-in-from-top-1 ease-out", renderProps.isExiting && "duration-50 animate-out fade-out placement-left:slide-out-to-right-1 placement-right:slide-out-to-left-1 placement-top:slide-out-to-bottom-1 placement-bottom:slide-out-to-top-1 ease-in", className2 ); }), children } ); } export { Popover };