import { Radio, RadioGroup, RadioSize } from '../../../Radio'
import { Info, AlertCircle } from 'lucide-react'
const RadioLightHouse = () => {
return (
<>
{/* Basic Radio - Small */}
Small Radio
{/* Basic Radio - Medium */}
Medium Radio
{/* Checked Radio */}
Checked Radio
{/* Unchecked Radio */}
Unchecked Radio
{/* Default Checked */}
Default Checked
{/* Disabled Radio */}
Disabled Radio
{/* Disabled Checked */}
Disabled Checked
{/* Required Radio */}
Required Radio
{/* Error Radio */}
Error Radio
{/* Error Checked */}
Error Checked
{/* With Subtext */}
Radio with Subtext
{/* With Subtext - Checked */}
Checked with Subtext
{/* With Subtext - Disabled */}
Disabled with Subtext
{/* With Subtext - Error */}
Error with Subtext
{/* With Slot */}
}>Radio with Slot
{/* With Slot - Checked */}
}>
Checked with Slot
{/* With Slot and Subtext */}
}
subtext="This radio has both slot and subtext"
>
Radio with Slot and Subtext
{/* Small Size with Subtext */}
Small Radio
{/* Medium Size with Subtext */}
Medium Radio
{/* Required with Subtext */}
Required Radio
{/* Error with Subtext */}
Error Radio
{/* Disabled with Subtext */}
Disabled Radio
{/* With onChange Handler */}
{
console.log('Radio changed:', e.target.value)
}}
>
Radio with onChange
{/* Controlled Radio */}
{
console.log('Controlled radio changed:', e.target.value)
}}
>
Controlled Radio
{/* With Name */}
Radio with Name
{/* With ID */}
Radio with ID
{/* With Name and ID */}
Radio with Name and ID
{/* With Value */}
Radio with Value
{/* Long Label */}
This is a very long radio label that demonstrates how the
component handles longer text content and wraps properly
{/* Long Label with Subtext */}
This is a very long radio 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 */}
Radio with Truncated Subtext
{/* With MaxLength - Both */}
This is a very long label that will be truncated
{/* Complex Radio */}
}
subtext="This is a complex radio with all features enabled"
size={RadioSize.MEDIUM}
name="complex-radio"
value="complex"
onChange={(e) => {
console.log('Complex radio changed:', e.target.value)
}}
>
Complex Radio Example
{/* RadioGroup - Basic */}
Option 1
Option 2
Option 3
{/* RadioGroup - With Default Value */}
Option 1
Option 2
Option 3
{/* RadioGroup - Controlled */}
{
console.log('Group value changed:', value)
}}
>
Option 1
Option 2
Option 3
{/* RadioGroup - Disabled */}
Option 1
Option 2
Option 3
{/* RadioGroup - Required */}
Option 1
Option 2
Option 3
{/* RadioGroup - Error */}
Option 1
Option 2
Option 3
{/* RadioGroup - With Subtext */}
Option 1
Option 2
Option 3
{/* RadioGroup - With Slots */}
}>
Option 1
}>
Option 2
Option 3
{/* RadioGroup - Small Size */}
Option 1
Option 2
Option 3
{/* RadioGroup - Mixed Sizes */}
Small Option
Medium Option
Small Option
{/* All States - Small */}
Small Unchecked
Small Checked
Small Disabled
Small Error
{/* All States - Medium */}
Medium Unchecked
Medium Checked
Medium Disabled
Medium Error
>
)
}
export default RadioLightHouse