UNPKG

@ozen-ui/kit

Version:

React component library

24 lines (23 loc) 1.39 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 { ListCardItemControlItem } from '../ListCardItemControlItem'; import { LIST_CARD_ITEM_SIZE_TO_CONTROL_ICON_SIZE } from './constants'; export var cnListCardItemControlIcon = cn('ListCardItemControlIcon'); export var ListCardItemControlIcon = forwardRef(function (inProps, ref) { var props = useThemeProps({ props: inProps, name: 'ListCardItemControlIcon', }); 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_CONTROL_ICON_SIZE[size] }), }); return (React.createElement(ListCardItemControlItem, { ref: ref, className: cnListCardItemControlIcon('', [className]), caption: caption, "data-testid": dataTestid }, renderedIcon)); }); ListCardItemControlIcon.displayName = 'ListCardItemControlIcon';