Files
web/packages/design-system/lib/components/Radio/Radio.tsx
Tobias Johansson 0e2192be0f Merged in feat/new-rate-cards (pull request #1600)
feat(SW-1435): Added RateCard component to design system

* feat(SW-1435): Added new component: RateCard to design system

* feat: added reward night points rate card

* fix: set svg icon color to "currentColor" to make them more reusable

* fix: added click handler for info icon

* fix: added selectedRate


Approved-by: Arvid Norlin
2025-03-25 10:41:43 +00:00

32 lines
764 B
TypeScript

import { PropsWithChildren } from 'react'
import { Radio as AriaRadio } from 'react-aria-components'
import styles from './radio.module.css'
import { variants } from './variants'
interface RadioProps extends PropsWithChildren {
value: string
id?: string
isDisabled?: boolean
color?: 'Burgundy'
}
export function Radio({ id, value, children, color, isDisabled }: RadioProps) {
const inputId = id || `radio-${value}`
const classNames = variants({
color,
})
return (
<AriaRadio
id={inputId}
value={value}
isDisabled={isDisabled}
className={`${styles.container} ${isDisabled ? styles.disabled : ''}`}
>
<div className={`${styles.radio} ${classNames}`} />
<div>{children}</div>
</AriaRadio>
)
}