import { Separator } from "@radix-ui/react-separator" import { ArchiveBox, DotsThree, HighlighterCircle, TagSimple, TextAa } from "phosphor-react" import { ArticleAttributes } from "../../../lib/networking/queries/useGetArticleQuery" import { Button } from "../../elements/Button" import { Dropdown } from "../../elements/DropdownElements" import { Box, SpanBox } from "../../elements/LayoutPrimitives" import { TooltipWrapped } from "../../elements/Tooltip" import { styled, theme } from "../../tokens/stitches.config" import { SetLabelsControl } from "./SetLabelsControl" import { ReaderSettingsControl } from "./ReaderSettingsControl" export type ArticleActionsMenuLayout = 'top' | 'side' type ArticleActionsMenuProps = { article?: ArticleAttributes layout: ArticleActionsMenuLayout lineHeight: number marginWidth: number showReaderDisplaySettings?: boolean articleActionHandler: (action: string, arg?: unknown) => void } type MenuSeparatorProps = { layout: ArticleActionsMenuLayout } const MenuSeparator = (props: MenuSeparatorProps): JSX.Element => { const LineSeparator = styled(Separator, { width: '100%', margin: 0, borderBottom: `1px solid ${theme.colors.grayLine.toString()}`, my: '8px', }) return (props.layout == 'side' ? : <>) } type ActionDropdownProps = { layout: ArticleActionsMenuLayout triggerElement: JSX.Element children: JSX.Element } const ActionDropdown = (props: ActionDropdownProps): JSX.Element => { return {props.children} } export function ArticleActionsMenu(props: ArticleActionsMenuProps): JSX.Element { return ( <> {props.showReaderDisplaySettings && ( <> } > )} {props.article ? ( } > ) : ( )} {/* */} ) }