UNPKG

@ozen-ui/kit

Version:

React component library

24 lines (23 loc) 1.58 kB
import { __assign, __rest } from "tslib"; import React, { forwardRef, useRef } from 'react'; import { useThemeProps } from '../../../../hooks/useThemeProps'; import { cn } from '../../../../utils/classname'; import { Radio } from '../../../RadioNext'; import { useListCardItemAsInteractiveModule } from '../../hooks'; import { useListCardItemContext } from '../../ListCardItemContext'; import { ListCardItemTrailingItem } from '../ListCardItemTrailingItem'; import { LIST_CARD_ITEM_SIZE_TO_TRAILING_RADIO_SIZE } from './constants'; export var cnListCardItemTrailingRadio = cn('ListCardItemTrailingRadio'); export var ListCardItemTrailingRadio = forwardRef(function (inProps, ref) { var props = useThemeProps({ props: inProps, name: 'ListCardItemTrailingRadio', }); var children = props.children, className = props.className, caption = props.caption, disabled = props.disabled, dataTestid = props["data-testid"], other = __rest(props, ["children", "className", "caption", "disabled", 'data-testid']); var size = useListCardItemContext().size; var radioRef = useRef(null); useListCardItemAsInteractiveModule(radioRef, !disabled); return (React.createElement(ListCardItemTrailingItem, { ref: ref, className: cnListCardItemTrailingRadio('', [className]), caption: caption, "data-testid": dataTestid }, React.createElement(Radio, __assign({}, other, { ref: radioRef, size: LIST_CARD_ITEM_SIZE_TO_TRAILING_RADIO_SIZE[size], disabled: disabled }), children))); }); ListCardItemTrailingRadio.displayName = 'ListCardItemTrailingRadio';