From f0ec5ba9eaa9472c6fc9ce7be422f39addef876f Mon Sep 17 00:00:00 2001 From: Jackson Harper Date: Sat, 25 Feb 2023 19:31:06 +0800 Subject: [PATCH] Add ReaderHeader --- .../templates/reader/ReaderHeader.tsx | 158 ++++++++++++++++++ 1 file changed, 158 insertions(+) create mode 100644 packages/web/components/templates/reader/ReaderHeader.tsx diff --git a/packages/web/components/templates/reader/ReaderHeader.tsx b/packages/web/components/templates/reader/ReaderHeader.tsx new file mode 100644 index 000000000..6e36d8189 --- /dev/null +++ b/packages/web/components/templates/reader/ReaderHeader.tsx @@ -0,0 +1,158 @@ +import { + InputHTMLAttributes, + ReactNode, + useCallback, + useEffect, + useRef, + useState, +} from 'react' +import { StyledText } from '../../elements/StyledText' +import { Box, HStack, SpanBox, VStack } from '../../elements/LayoutPrimitives' +import { SearchIcon } from '../../elements/images/SearchIcon' +import { theme, ThemeId } from '../../tokens/stitches.config' +import { Dropdown, DropdownOption } from '../../elements/DropdownElements' +import { FormInput } from '../../elements/FormElements' +import { searchBarCommands } from '../../../lib/keyboardShortcuts/navigationShortcuts' +import { useKeyboardShortcuts } from '../../../lib/keyboardShortcuts/useKeyboardShortcuts' +import { Button, IconButton } from '../../elements/Button' +import { + DotsThree, + DotsThreeOutline, + MagnifyingGlass, + TextAa, + Textbox, + X, +} from 'phosphor-react' +import { OmnivoreNameLogo } from '../../elements/images/OmnivoreNameLogo' +import { OmnivoreFullLogo } from '../../elements/images/OmnivoreFullLogo' +import { AvatarDropdown } from '../../elements/AvatarDropdown' +import { ListSelectorIcon } from '../../elements/images/ListSelectorIcon' +import { GridSelectorIcon } from '../../elements/images/GridSelectorIcon' +import { DropdownMenu, HeaderDropdownAction } from '../../patterns/DropdownMenu' +import { updateTheme } from '../../../lib/themeUpdater' +import { useRouter } from 'next/router' +import { PrimaryDropdown } from '../PrimaryDropdown' +import { TooltipWrapped } from '../../elements/Tooltip' + +const HEADER_HEIGHT = '105px' +const MOBILE_HEIGHT = '48px' + +export function ReaderHeader(): JSX.Element { + return ( + <> + + + + + + + + ) +} + +// Displays the full logo on larger screens, small logo on mobile +function LogoBox(): JSX.Element { + return ( + <> + + + + + + + + ) +} + +function ControlButtonBox(): JSX.Element { + return ( + <> + + + + + + + + + + ) +}