"use client"; import * as RadixPopover from "@radix-ui/react-popover"; import { theme } from "tailwind.config"; import { NestedCardThemeProvider } from "./ThemeManager/ThemeProvider"; import { createContext, useEffect, useState } from "react"; import { PopoverArrow } from "./Icons/PopoverArrow"; export const PopoverOpenContext = createContext(false); export const Popover = (props: { trigger: React.ReactNode; disabled?: boolean; children: React.ReactNode; align?: "start" | "end" | "center"; side?: "top" | "bottom" | "left" | "right"; background?: string; border?: string; className?: string; open?: boolean; onOpenChange?: (open: boolean) => void; onOpenAutoFocus?: (e: Event) => void; asChild?: boolean; arrowFill?: string; }) => { let [open, setOpen] = useState(props.open || false); useEffect(() => { if (props.open !== undefined) setOpen(props.open); }, [props.open]); return ( { setOpen(o); props.onOpenChange?.(o); }} > {props.trigger} {props.children} ); };