"use client"; import { IconGitPullRequest } from "@tabler/icons-react"; import { forwardRef, type FocusEventHandler, type MouseEventHandler, type PointerEventHandler, type ReactNode, type Ref, } from "react"; import { Drawer, DrawerContent, DrawerDescription, DrawerHeader, DrawerTitle, DrawerTrigger, } from "@kandev/ui/drawer"; import { Tooltip, TooltipContent, TooltipTrigger } from "@kandev/ui/tooltip"; import { useTranslation } from "react-i18next"; import { cn } from "@/lib/utils"; import type { TaskPR } from "@/lib/types/github"; import type { TaskPRTooltipHydrationStatus } from "@/hooks/domains/github/use-task-pr-tooltip-hydration"; import { useChangeRequestTaskTooltipState } from "@/components/integrations/use-change-request-task-tooltip-state"; import type { TaskPRAutomationSummary, TaskPRInfo } from "./pr-task-automation"; export type PRTaskIconDisclosureProps = { taskId: string; prInfo?: TaskPRInfo; prs: TaskPR[]; hasFullData: boolean; singlePR: TaskPR | null; readyToMerge: boolean; allReadyToMerge: boolean; displayState: string | undefined; displayCount: number; iconColor: string; ariaLabel: string; icon: ReactNode; content: ReactNode; }; export function AutomationIndicatorDots({ autoFixEnabled, autoMergeEnabled, }: Pick) { return ( <> {autoFixEnabled && (