Clean up unused imports and refactor type definitions

- Remove unused `cn` import from theme-selector - Remove unused `Slot`
import from badge - Remove unused `X` icon import from switch - Replace
empty interface extends with type alias in input - Replace empty
interface extends with type alias in textarea - Add "secondary" variant
to button type props - Replace "brand" variant with "default" in
client-list and invoice cards
This commit is contained in:
2025-11-25 02:01:16 -05:00
parent 75ce36cf9c
commit 35ca35c28a
9 changed files with 9 additions and 13 deletions

View File

@@ -9,7 +9,7 @@ import { Download, Loader2 } from "lucide-react";
interface PDFDownloadButtonProps {
invoiceId: string;
variant?: "default" | "outline" | "ghost" | "icon";
variant?: "default" | "outline" | "ghost" | "icon" | "secondary";
className?: string;
}

View File

@@ -9,7 +9,6 @@ import {
DropdownMenuTrigger,
} from "~/components/ui/dropdown-menu";
import { Button } from "~/components/ui/button";
import { cn } from "~/lib/utils";
export function ThemeSelector() {
const { theme, setTheme } = useTheme();

View File

@@ -102,7 +102,7 @@ export function ClientList() {
</CardHeader>
<CardContent className="text-center">
<Link href="/dashboard/clients/new">
<Button variant="brand" className="h-12 w-full">
<Button variant="default" className="h-12 w-full">
<Plus className="mr-2 h-4 w-4" />
Add Your First Client
</Button>
@@ -131,7 +131,7 @@ export function ClientList() {
</div>
</div>
<Link href="/dashboard/clients/new">
<Button variant="brand" className="h-12 w-full sm:w-auto">
<Button variant="default" className="h-12 w-full sm:w-auto">
<Plus className="mr-2 h-4 w-4" />
Add Client
</Button>

View File

@@ -63,7 +63,7 @@ export function CurrentOpenInvoiceCard() {
No open invoice found. Create a new invoice to start tracking your
time.
</p>
<Button asChild variant="brand">
<Button asChild variant="default">
<Link href="/dashboard/invoices/new">
<Plus className="mr-2 h-4 w-4" />
Create New Invoice
@@ -133,7 +133,7 @@ export function CurrentOpenInvoiceCard() {
View
</Link>
</Button>
<Button asChild variant="brand" size="sm" className="flex-1">
<Button asChild variant="default" size="sm" className="flex-1">
<Link href={`/dashboard/invoices/${currentInvoice.id}`}>
<Edit className="mr-2 h-3 w-3" />
Continue

View File

@@ -7,7 +7,7 @@ import { Send, Loader2, Mail, MailCheck } from "lucide-react";
interface EnhancedSendInvoiceButtonProps {
invoiceId: string;
variant?: "default" | "outline" | "ghost" | "icon";
variant?: "default" | "outline" | "ghost" | "icon" | "secondary";
className?: string;
showResend?: boolean;
size?: "default" | "sm" | "lg" | "icon";

View File

@@ -1,5 +1,4 @@
import * as React from "react";
import { Slot } from "@radix-ui/react-slot";
import { cva, type VariantProps } from "class-variance-authority";
import { cn } from "~/lib/utils";

View File

@@ -1,8 +1,7 @@
import { cn } from "~/lib/utils";
import * as React from "react";
export interface InputProps
extends React.InputHTMLAttributes<HTMLInputElement> {}
export type InputProps = React.InputHTMLAttributes<HTMLInputElement>;
const Input = React.forwardRef<HTMLInputElement, InputProps>(
({ className, type, ...props }, ref) => {

View File

@@ -1,7 +1,7 @@
"use client";
import * as SwitchPrimitive from "@radix-ui/react-switch";
import { Check, X } from "lucide-react";
import { Check } from "lucide-react";
import * as React from "react";
import { cn } from "~/lib/utils";

View File

@@ -2,8 +2,7 @@ import * as React from "react";
import { cn } from "~/lib/utils";
export interface TextareaProps
extends React.TextareaHTMLAttributes<HTMLTextAreaElement> {}
export type TextareaProps = React.TextareaHTMLAttributes<HTMLTextAreaElement>;
const Textarea = React.forwardRef<HTMLTextAreaElement, TextareaProps>(
({ className, ...props }, ref) => {