2023-12-15 17:34:50 +03:00
|
|
|
import clsx from 'clsx';
|
|
|
|
|
2023-12-13 14:32:57 +03:00
|
|
|
import { EducationIcon, GroupIcon, SubscribedIcon } from '@/components/Icons';
|
|
|
|
import { ICurrentUser, ILibraryItem } from '@/models/library';
|
|
|
|
import { prefixes } from '@/utils/constants';
|
2023-12-05 01:22:44 +03:00
|
|
|
|
|
|
|
interface ItemIconsProps {
|
|
|
|
user?: ICurrentUser
|
|
|
|
item: ILibraryItem
|
|
|
|
}
|
|
|
|
|
|
|
|
function ItemIcons({ user, item }: ItemIconsProps) {
|
|
|
|
return (
|
|
|
|
<div
|
2023-12-15 17:34:50 +03:00
|
|
|
className={clsx(
|
|
|
|
'min-w-[2.75rem]',
|
|
|
|
'inline-flex gap-1'
|
|
|
|
)}
|
2023-12-05 01:22:44 +03:00
|
|
|
id={`${prefixes.library_list}${item.id}`}
|
|
|
|
>
|
|
|
|
{(user && user.subscriptions.includes(item.id)) ?
|
|
|
|
<span title='Отслеживаемая'>
|
|
|
|
<SubscribedIcon size={3} />
|
|
|
|
</span> : null}
|
|
|
|
{item.is_common ?
|
|
|
|
<span title='Общедоступная'>
|
|
|
|
<GroupIcon size={3}/>
|
|
|
|
</span> : null}
|
|
|
|
{item.is_canonical ?
|
|
|
|
<span title='Неизменная'>
|
|
|
|
<EducationIcon size={3}/>
|
|
|
|
</span> : null}
|
|
|
|
</div>);
|
|
|
|
}
|
|
|
|
|
2023-12-13 14:32:57 +03:00
|
|
|
export default ItemIcons;
|