import { Checkbox, CheckboxSize } from '../../../Checkbox'
import { Info, AlertCircle } from 'lucide-react'
const CheckboxLightHouse = () => {
return (
<>
{/* Basic Checkbox - Small */}
Small Checkbox
{/* Basic Checkbox - Medium */}
Medium Checkbox
{/* Checked Checkbox */}
Checked Checkbox
{/* Unchecked Checkbox */}
Unchecked Checkbox
{/* Default Checked */}
Default Checked
{/* Indeterminate Checkbox */}
Indeterminate Checkbox
{/* Disabled Checkbox */}
Disabled Checkbox
{/* Disabled Checked */}
Disabled Checked
{/* Disabled Indeterminate */}
Disabled Indeterminate
{/* Required Checkbox */}
Required Checkbox
{/* Error Checkbox */}
Error Checkbox
{/* Error Checked */}
Error Checked
{/* With Subtext */}
Checkbox with Subtext
{/* With Subtext - Checked */}
Checked with Subtext
{/* With Subtext - Disabled */}
Disabled with Subtext
{/* With Subtext - Error */}
Error with Subtext
{/* With Slot */}
}>Checkbox with Slot
{/* With Slot - Checked */}
}>
Checked with Slot
{/* With Slot and Subtext */}
}
subtext="This checkbox has both slot and subtext"
>
Checkbox with Slot and Subtext
{/* Small Size with Subtext */}
Small Checkbox
{/* Medium Size with Subtext */}
Medium Checkbox
{/* Required with Subtext */}
Required Checkbox
{/* Error with Subtext */}
Error Checkbox
{/* Disabled with Subtext */}
Disabled Checkbox
{/* With onChange Handler */}
{
console.log('Checkbox changed:', checked)
}}
>
Checkbox with onChange
{/* Controlled Checkbox */}
{
console.log('Controlled checkbox changed:', checked)
}}
>
Controlled Checkbox
{/* Indeterminate with onChange */}
{
console.log('Indeterminate changed:', checked)
}}
>
Indeterminate with onChange
{/* With Name */}
Checkbox with Name
{/* With ID */}
Checkbox with ID
{/* With Name and ID */}
Checkbox with Name and ID
{/* Long Label */}
This is a very long checkbox label that demonstrates how the
component handles longer text content and wraps properly
{/* Long Label with Subtext */}
This is a very long checkbox label that demonstrates how the
component handles longer text content
{/* With MaxLength - Label */}
This is a very long label that will be truncated
{/* With MaxLength - Subtext */}
Checkbox with Truncated Subtext
{/* With MaxLength - Both */}
This is a very long label that will be truncated
{/* Complex Checkbox */}
}
subtext="This is a complex checkbox with all features enabled"
size={CheckboxSize.MEDIUM}
onCheckedChange={(checked) => {
console.log('Complex checkbox changed:', checked)
}}
>
Complex Checkbox Example
{/* All States - Small */}
Small Unchecked
Small Checked
Small Indeterminate
Small Disabled
Small Error
{/* All States - Medium */}
Medium Unchecked
Medium Checked
Medium Indeterminate
Medium Disabled
Medium Error
>
)
}
export default CheckboxLightHouse