design-react-kit
Version:
Componenti React per Bootstrap 5
28 lines • 1.29 kB
JavaScript
import React from 'react';
import { DropdownToggle as BSDropdownToggle } from 'reactstrap';
import classNames from 'classnames';
import { Icon } from '../Icon/Icon';
export const DropdownToggle = ({ className, testId, children, caret, inNavbar, color = '', tag = 'button' }) => {
const Tag = tag === 'a' || inNavbar ? 'a' : 'button';
const classes = classNames(className, {
'btn-dropdown': Tag === 'a' && !inNavbar,
'dropdown-toggle': true,
btn: tag === 'button' && !inNavbar
});
let colorClass = '';
if (tag === 'button' && color) {
colorClass = `btn-${color}`;
}
const iconClasses = classNames({
'icon-expand': true,
'icon-sm': !inNavbar,
'icon-xs': inNavbar,
'ms-1': inNavbar,
'icon-light': Tag.valueOf() !== 'a' ? true : false,
color: color ? 'white' : 'primary'
});
return (React.createElement(BSDropdownToggle, { tag: Tag, "data-testid": testId, role: Tag.valueOf() === 'a' ? 'button' : 'link', href: Tag.valueOf() === 'a' ? '#' : undefined, className: `${classes} ${colorClass}`, nav: inNavbar },
children,
caret === true ? React.createElement(Icon, { icon: 'it-expand', className: iconClasses }) : null));
};
//# sourceMappingURL=DropdownToggle.js.map