"use client"; import { IconGitCommit, IconGitPullRequest, IconLoader2, IconCheck } from "@tabler/icons-react"; import { Button } from "@kandev/ui/button"; import { Dialog, DialogContent, DialogHeader, DialogTitle, DialogFooter, DialogClose, } from "@kandev/ui/dialog"; import { AlertDialog, AlertDialogAction, AlertDialogCancel, AlertDialogContent, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogTitle, } from "@kandev/ui/alert-dialog"; import { Checkbox } from "@kandev/ui/checkbox"; import { Label } from "@kandev/ui/label"; import { Textarea } from "@kandev/ui/textarea"; // --- Discard Confirmation Dialog --- type DiscardDialogProps = { open: boolean; onOpenChange: (open: boolean) => void; fileToDiscard: string | null; onConfirm: () => void; }; export function DiscardDialog({ open, onOpenChange, fileToDiscard, onConfirm, }: DiscardDialogProps) { return ( Discard changes? This will permanently discard all changes to{" "} {fileToDiscard}. This action cannot be undone. Cancel Discard ); } // --- Commit Dialog --- type CommitDialogProps = { open: boolean; onOpenChange: (open: boolean) => void; commitMessage: string; onCommitMessageChange: (value: string) => void; onCommit: () => void; isLoading: boolean; stagedFileCount: number; stagedAdditions: number; stagedDeletions: number; }; export function CommitDialog({ open, onOpenChange, commitMessage, onCommitMessageChange, onCommit, isLoading, stagedFileCount, stagedAdditions, stagedDeletions, }: CommitDialogProps) { return ( Commit Changes