import React, { useState } from 'react' import { Bookmark } from './Settings' interface BookmarksBarProps { bookmarks: Bookmark[] onOpen: (b: Bookmark) => void onRemove: (index: number) => void } const BookmarksBar: React.FC = ({ bookmarks, onOpen, onRemove }) => { const [expanded, setExpanded] = useState(false) if (!bookmarks.length) return null return (
setExpanded(e => !e)}> Закладки ({bookmarks.length}) {expanded ? : }
{bookmarks.map((b, i) => { const hasMoviePoster = !!b.poster && b.poster !== b.siteIcon return (
onOpen(b)}>
{b.poster ? {b.title} { const t = e.currentTarget t.style.display = 'none' const ph = t.nextElementSibling as HTMLElement | null if (ph) ph.style.display = 'flex' }} /> : null}
{b.title.charAt(0).toUpperCase()}
{b.title}
{b.source && (
{hasMoviePoster && b.siteIcon && ( { e.currentTarget.style.display = 'none' }} /> )} {b.source}
)}
) })}
) } export default BookmarksBar