// Adapted from Base UI compositions (MIT). See THIRD_PARTY_NOTICES.md. "use client"; import type { ComponentProps } from "react"; import { ContextMenu as Primitive } from "./_ynrlib/base-ui.js"; export const ContextMenu = Primitive.Root; export function ContextMenuTrigger({ className, ...props }: ComponentProps) { return ( `ynr-context-menu-trigger ${className(state) ?? ""}` : `ynr-context-menu-trigger ${className ?? ""}` } /> ); } export const ContextMenuPortal = Primitive.Portal; export function ContextMenuPositioner({ className, ...props }: ComponentProps) { return ( `ynr-context-menu-positioner ${className(state) ?? ""}` : `ynr-context-menu-positioner ${className ?? ""}` } /> ); } export function ContextMenuPopup({ className, ...props }: ComponentProps) { return ( `ynr-context-menu-popup ${className(state) ?? ""}` : `ynr-context-menu-popup ${className ?? ""}` } /> ); } export function ContextMenuItem({ className, ...props }: ComponentProps) { return ( `ynr-context-menu-item ${className(state) ?? ""}` : `ynr-context-menu-item ${className ?? ""}` } /> ); } export function ContextMenuLinkItem({ className, ...props }: ComponentProps) { return ( `ynr-context-menu-link-item ${className(state) ?? ""}` : `ynr-context-menu-link-item ${className ?? ""}` } /> ); } export function ContextMenuSeparator({ className, ...props }: ComponentProps) { return ( `ynr-context-menu-separator ${className(state) ?? ""}` : `ynr-context-menu-separator ${className ?? ""}` } /> ); } export function ContextMenuGroup({ className, ...props }: ComponentProps) { return ( `ynr-context-menu-group ${className(state) ?? ""}` : `ynr-context-menu-group ${className ?? ""}` } /> ); } export function ContextMenuGroupLabel({ className, ...props }: ComponentProps) { return ( `ynr-context-menu-group-label ${className(state) ?? ""}` : `ynr-context-menu-group-label ${className ?? ""}` } /> ); } export function ContextMenuCheckboxItem({ className, ...props }: ComponentProps) { return ( `ynr-context-menu-checkbox-item ${className(state) ?? ""}` : `ynr-context-menu-checkbox-item ${className ?? ""}` } /> ); } export function ContextMenuCheckboxItemIndicator({ className, ...props }: ComponentProps) { return ( `ynr-context-menu-checkbox-item-indicator ${className(state) ?? ""}` : `ynr-context-menu-checkbox-item-indicator ${className ?? ""}` } /> ); } export function ContextMenuRadioGroup({ className, ...props }: ComponentProps) { return ( `ynr-context-menu-radio-group ${className(state) ?? ""}` : `ynr-context-menu-radio-group ${className ?? ""}` } /> ); } export function ContextMenuRadioItem({ className, ...props }: ComponentProps) { return ( `ynr-context-menu-radio-item ${className(state) ?? ""}` : `ynr-context-menu-radio-item ${className ?? ""}` } /> ); } export function ContextMenuRadioItemIndicator({ className, ...props }: ComponentProps) { return ( `ynr-context-menu-radio-item-indicator ${className(state) ?? ""}` : `ynr-context-menu-radio-item-indicator ${className ?? ""}` } /> ); } export const ContextMenuSubmenuRoot = Primitive.SubmenuRoot; export function ContextMenuSubmenuTrigger({ className, ...props }: ComponentProps) { return ( `ynr-context-menu-submenu-trigger ${className(state) ?? ""}` : `ynr-context-menu-submenu-trigger ${className ?? ""}` } /> ); }