import * as React from 'react';
import { TextButton } from '@box/blueprint-web';
import { TYPE_FOLDER, TYPE_WEBLINK } from '../../../constants';
import type { BoxItem } from '../../../common/types/core';
import './ItemName.scss';
export interface ItemNameProps {
canPreview: boolean;
isTouch: boolean;
item: BoxItem;
onClick: (item: BoxItem) => void;
onFocus?: (item: BoxItem) => void;
}
const ItemName = ({ item, onClick, onFocus, canPreview, isTouch }: ItemNameProps) => {
const { name, type }: BoxItem = item;
const onItemFocus = onFocus ? () => onFocus(item) : null;
const onItemClick = (): void => onClick(item);
return type === TYPE_FOLDER || (!isTouch && (type === TYPE_WEBLINK || canPreview)) ? (
{
event.stopPropagation();
onItemClick();
}}
onFocus={onItemFocus}
>
{name}
) : (
{name}
);
};
export default ItemName;