@ozen-ui/kit
Version:
React component library
24 lines (23 loc) • 1.4 kB
JavaScript
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';