import { CheckIcon, ChevronDown, MonitorIcon } from "./Icons"; import { useRowMenu } from "./useRowMenu"; export type CaptureSource = "full-screen" | "window" | "region"; const LABELS: Record = { "full-screen": "Full screen", window: "Window", region: "Region", }; export function SourceRow({ value, onChange, includeRegion = false, }: { value: CaptureSource; onChange: (v: CaptureSource) => void; includeRegion?: boolean; }) { const { open, setOpen, rowRef } = useRowMenu(); const options = ( includeRegion ? Object.keys(LABELS) : Object.keys(LABELS).filter((key) => key !== "region") ) as CaptureSource[]; return (
{open ? (
{options.map((key) => { const isSelected = key === value; return ( ); })}
) : null}
); }