"use client"; import { IconCloudDownload, IconEye, IconChevronDown, IconGitBranch, IconGitCherryPick, IconGitMerge, IconArrowRight, } from "@tabler/icons-react"; import { Button } from "@kandev/ui/button"; import { HoverCard, HoverCardContent, HoverCardTrigger } from "@kandev/ui/hover-card"; import { DropdownMenu, DropdownMenuContent, DropdownMenuItem, DropdownMenuTrigger, } from "@kandev/ui/dropdown-menu"; import { PanelHeaderBarSplit } from "./panel-primitives"; function BranchHoverCard({ displayBranch, baseBranchDisplay, }: { displayBranch: string; baseBranchDisplay: string; }) { return ( Your code lives in: and will be merged into: {displayBranch} {baseBranchDisplay} ); } function PullDropdown({ behindCount, isLoading, onPull, onRebase, }: { behindCount: number; isLoading: boolean; onPull: () => void; onRebase: () => void; }) { return ( Pull {behindCount > 0 && {behindCount}} Pull {behindCount > 0 && ( {behindCount} behind )} Rebase {behindCount > 0 && ( {behindCount} behind )} ); } export function ChangesPanelHeader({ hasChanges, hasCommits, displayBranch, baseBranchDisplay, behindCount, isLoading, onOpenDiffAll, onOpenReview, onPull, onRebase, }: { hasChanges: boolean; hasCommits: boolean; displayBranch: string | null; baseBranchDisplay: string; behindCount: number; isLoading: boolean; onOpenDiffAll?: () => void; onOpenReview?: () => void; onPull: () => void; onRebase: () => void; }) { return ( Diff Review > ) : undefined } right={ <> {displayBranch && ( )} > } /> ); }