"use client" import * as React from "react" import { Example, ExampleWrapper, } from "@/registry/bases/base/components/example" import { Checkbox } from "@/registry/bases/base/ui/checkbox" import { Field, FieldContent, FieldDescription, FieldGroup, FieldLabel, FieldTitle, } from "@/registry/bases/base/ui/field" import { Table, TableBody, TableCell, TableHead, TableHeader, TableRow, } from "@/registry/bases/base/ui/table" export default function CheckboxExample() { return ( ) } function CheckboxBasic() { return ( Accept terms and conditions ) } function CheckboxWithDescription() { return ( Accept terms and conditions By clicking this checkbox, you agree to the terms and conditions. ) } function CheckboxInvalid() { return ( Accept terms and conditions ) } function CheckboxDisabled() { return ( Enable notifications ) } function CheckboxWithTitle() { return ( Enable notifications You can enable or disable notifications at any time. Enable notifications You can enable or disable notifications at any time. ) } const tableData = [ { id: "1", name: "Sarah Chen", email: "sarah.chen@example.com", role: "Admin", }, { id: "2", name: "Marcus Rodriguez", email: "marcus.rodriguez@example.com", role: "User", }, { id: "3", name: "Priya Patel", email: "priya.patel@example.com", role: "User", }, { id: "4", name: "David Kim", email: "david.kim@example.com", role: "Editor", }, ] function CheckboxInTable() { const [selectedRows, setSelectedRows] = React.useState>( new Set(["1"]) ) const selectAll = selectedRows.size === tableData.length const handleSelectAll = (checked: boolean) => { if (checked) { setSelectedRows(new Set(tableData.map((row) => row.id))) } else { setSelectedRows(new Set()) } } const handleSelectRow = (id: string, checked: boolean) => { const newSelected = new Set(selectedRows) if (checked) { newSelected.add(id) } else { newSelected.delete(id) } setSelectedRows(newSelected) } return ( Name Email Role {tableData.map((row) => ( handleSelectRow(row.id, checked === true) } /> {row.name} {row.email} {row.role} ))}
) } function CheckboxGroup() { return ( Show these items on the desktop: Hard disks External disks CDs, DVDs, and iPods Connected servers ) }