import { z } from "zod/v4"; import type { JSX } from "solid-js"; import type { ComponentMeta } from "../../meta"; export const PopoverRootPropsSchema = z.object({ open: z.boolean().optional(), defaultOpen: z.boolean().optional(), modal: z.boolean().optional(), }); export interface PopoverRootProps extends z.infer { onOpenChange?: (open: boolean) => void; children: JSX.Element; } export const PopoverMeta: ComponentMeta = { name: "Popover", description: "Floating content panel anchored to a trigger element, for interactive content", parts: ["Root", "Trigger", "Portal", "Content", "Arrow", "Close", "Title", "Description"] as const, requiredParts: ["Root", "Trigger", "Content"] as const, } as const;