// Tremor Raw Popover [v0.0.0] import React from "react"; import * as PopoverPrimitives from "@radix-ui/react-popover"; import { cx } from "../../lib/utils"; const Popover = ( props: React.ComponentPropsWithoutRef ) => { return ; }; Popover.displayName = "Popover"; const PopoverTrigger = React.forwardRef< React.ElementRef, React.ComponentPropsWithoutRef >((props, forwardedRef) => { return ; }); PopoverTrigger.displayName = "PopoverTrigger"; const PopoverAnchor = React.forwardRef< React.ElementRef, React.ComponentPropsWithoutRef >((props, forwardedRef) => { return ; }); PopoverAnchor.displayName = "PopoverAnchor"; const PopoverClose = React.forwardRef< React.ElementRef, React.ComponentPropsWithoutRef >((props, forwardedRef) => { return ; }); PopoverClose.displayName = "PopoverClose"; interface ContentProps extends React.ComponentPropsWithoutRef { container?: any } const PopoverContent = React.forwardRef< React.ElementRef, ContentProps >( ( { className, sideOffset = 10, side = "bottom", align = "center", collisionPadding, avoidCollisions, container, ...props }: ContentProps, forwardedRef ) => { return ( { event.stopPropagation(); const isScrollingDown = event.deltaY > 0; if (isScrollingDown) { event.currentTarget.dispatchEvent( new KeyboardEvent("keydown", { key: "ArrowDown" }) ); } else { event.currentTarget.dispatchEvent( new KeyboardEvent("keydown", { key: "ArrowUp" }) ); } }} {...props} /> ); } ); PopoverContent.displayName = "PopoverContent"; export { Popover, PopoverAnchor, PopoverClose, PopoverContent, PopoverTrigger };