UNPKG

@ozen-ui/kit

Version:

React component library

24 lines (23 loc) 1.4 kB
import { __assign, __rest } from "tslib"; import React, { forwardRef } from 'react'; import { useThemeProps } from '../../../../hooks/useThemeProps'; import { cn } from '../../../../utils/classname'; import { renderContent } from '../../../../utils/renderContent'; import { useListCardItemContext } from '../../ListCardItemContext'; import { ListCardItemTrailingItem } from '../ListCardItemTrailingItem'; import { LIST_CARD_ITEM_SIZE_TO_TRAILING_ICON_SIZE } from './constants'; export var cnListCardItemTrailingIcon = cn('ListCardItemTrailingIcon'); export var ListCardItemTrailingIcon = forwardRef(function (inProps, ref) { var props = useThemeProps({ props: inProps, name: 'ListCardItemTrailingIcon', }); var icon = props.icon, className = props.className, caption = props.caption, dataTestid = props["data-testid"], other = __rest(props, ["icon", "className", "caption", 'data-testid']); var size = useListCardItemContext().size; var renderedIcon = renderContent({ content: icon, props: __assign(__assign({}, other), { size: LIST_CARD_ITEM_SIZE_TO_TRAILING_ICON_SIZE[size] }), }); return (React.createElement(ListCardItemTrailingItem, { ref: ref, className: cnListCardItemTrailingIcon('', [className]), caption: caption, "data-testid": dataTestid }, renderedIcon)); }); ListCardItemTrailingIcon.displayName = 'ListCardItemTrailingIcon';