import React, { type FC } from 'react'; import Box from '@mui/material/Box'; import ButtonGroup from '@mui/material/ButtonGroup'; import classNames from 'classnames'; import { appRouter } from 'components/router/appRouter'; import itemHelper from 'components/itemHelper'; import { playbackManager } from 'components/playback/playbackmanager'; import PlayedButton from 'elements/emby-playstatebutton/PlayedButton'; import FavoriteButton from 'elements/emby-ratingbutton/FavoriteButton'; import PlayArrowIconButton from '../../common/PlayArrowIconButton'; import MoreVertIconButton from '../../common/MoreVertIconButton'; import type { ItemDto } from 'types/itemDto'; import type { CardOptions } from 'types/cardOptions'; interface CardHoverMenuProps { item: ItemDto; cardOptions: CardOptions; } const CardHoverMenu: FC = ({ item, cardOptions }) => { const url = appRouter.getRouteUrl(item, { parentId: cardOptions.parentId }); const btnCssClass = 'paper-icon-button-light cardOverlayButton cardOverlayButton-hover itemAction'; const centerPlayButtonClass = classNames( btnCssClass, 'cardOverlayFab-primary' ); const { IsFavorite, Played } = item.UserData ?? {}; return ( {playbackManager.canPlay(item) && ( )} {itemHelper.canMarkPlayed(item) && cardOptions.enablePlayedButton !== false && ( )} {itemHelper.canRate(item) && cardOptions.enableRatingButton !== false && ( )} ); }; export default CardHoverMenu;