@ozen-ui/kit
Version:
React component library
24 lines (23 loc) • 1.58 kB
JavaScript
import { __assign, __rest } from "tslib";
import React, { forwardRef, useRef } from 'react';
import { useThemeProps } from '../../../../hooks/useThemeProps';
import { cn } from '../../../../utils/classname';
import { Toggle } from '../../../ToggleNext';
import { useListCardItemAsInteractiveModule } from '../../hooks';
import { useListCardItemContext } from '../../ListCardItemContext';
import { ListCardItemControlItem } from '../ListCardItemControlItem';
import { LIST_CARD_ITEM_SIZE_TO_CONTROL_TOGGLE_SIZE } from './constants';
export var cnListCardItemControlToggle = cn('ListCardItemControlToggle');
export var ListCardItemControlToggle = forwardRef(function (inProps, ref) {
var props = useThemeProps({
props: inProps,
name: 'ListCardItemControlToggle',
});
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 toggleRef = useRef(null);
useListCardItemAsInteractiveModule(toggleRef, !disabled);
return (React.createElement(ListCardItemControlItem, { ref: ref, className: cnListCardItemControlToggle('', [className]), caption: caption, "data-testid": dataTestid },
React.createElement(Toggle, __assign({}, other, { ref: toggleRef, size: LIST_CARD_ITEM_SIZE_TO_CONTROL_TOGGLE_SIZE[size], disabled: disabled }), children)));
});
ListCardItemControlToggle.displayName = 'ListCardItemControlToggle';