import { Trans } from "@lingui/macro" import { Group } from "@mantine/core" import { Constants } from "app/constants" import { markEntriesUpToEntry, markEntry, starEntry } from "app/entries/thunks" import { redirectToFeed } from "app/redirect/thunks" import { useAppDispatch, useAppSelector } from "app/store" import type { Entry } from "app/types" import { truncate } from "app/utils" import { useBrowserExtension } from "hooks/useBrowserExtension" import { useColorScheme } from "hooks/useColorScheme" import { Item, Menu, Separator } from "react-contexify" import { TbArrowBarToDown, TbExternalLink, TbEyeCheck, TbEyeOff, TbRss, TbStar, TbStarOff } from "react-icons/tb" import { tss } from "tss" interface FeedEntryContextMenuProps { entry: Entry } const iconSize = 16 const useStyles = tss.create(({ theme, colorScheme }) => ({ menu: { // apply mantine theme from MenuItem.styles.ts fontSize: theme.fontSizes.sm, "--contexify-item-color": `${colorScheme === "dark" ? theme.colors.dark[0] : theme.black} !important`, "--contexify-activeItem-color": `${colorScheme === "dark" ? theme.colors.dark[0] : theme.black} !important`, "--contexify-activeItem-bgColor": `${colorScheme === "dark" ? theme.colors.dark[4] : theme.colors.gray[1]} !important`, }, })) export function FeedEntryContextMenu(props: FeedEntryContextMenuProps) { const colorScheme = useColorScheme() const { classes } = useStyles() const sourceType = useAppSelector(state => state.entries.source.type) const dispatch = useAppDispatch() const { openLinkInBackgroundTab } = useBrowserExtension() return (
) }