import PropTypes from 'prop-types'; import * as React from 'react'; import PlainButton from '../../../components/plain-button'; import IconChevron from '../../../icons/general/IconChevron'; import { ItemTypePropType } from '../prop-types'; import { TYPE_FOLDER } from '../../../constants'; const ITEM_LIST_NAME_CLASS = 'item-list-name'; const ItemListName = ({ itemId = '', type, name, label = '', isSelected = false, onClick, linkRenderer }) => { const isFolder = type === TYPE_FOLDER; const linkProps = { className: `lnk ${ITEM_LIST_NAME_CLASS}`, onClick, children: [ {name}, , ], }; const renderLink = () => (linkRenderer ? linkRenderer({ ...linkProps, itemId }) : ); return (
{isFolder ? renderLink() : {name}} {!!label && {label}}
); }; ItemListName.propTypes = { itemId: PropTypes.string, type: ItemTypePropType, name: PropTypes.string.isRequired, label: PropTypes.string, isSelected: PropTypes.bool, onClick: PropTypes.func, linkRenderer: PropTypes.func, }; export default ItemListName;