fix(ui): add cursor-pointer to base button variants

This commit is contained in:
Yunxiao Xu
2026-02-23 05:03:05 -08:00
parent 2c44df3a5c
commit 1394c0496a
2 changed files with 22 additions and 1 deletions

View File

@@ -1,7 +1,7 @@
import { cva } from "class-variance-authority" import { cva } from "class-variance-authority"
export const buttonVariants = cva( export const buttonVariants = cva(
"inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive", "inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-all cursor-pointer disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",
{ {
variants: { variants: {
variant: { variant: {

View File

@@ -0,0 +1,21 @@
import { render, screen } from "@testing-library/react"
import { describe, expect, it } from "vitest"
import { Button } from "./button"
describe("Button component", () => {
it("renders with a pointer cursor", () => {
render(<Button>Click me</Button>)
const button = screen.getByRole("button", { name: /click me/i })
expect(button).toHaveClass("cursor-pointer")
})
it("renders different variants with a pointer cursor", () => {
const { rerender } = render(<Button variant="outline">Outline</Button>)
let button = screen.getByRole("button", { name: /outline/i })
expect(button).toHaveClass("cursor-pointer")
rerender(<Button variant="destructive">Destructive</Button>)
button = screen.getByRole("button", { name: /destructive/i })
expect(button).toHaveClass("cursor-pointer")
})
})