import { ReactNode, useMemo, useRef, useState } from 'react' import { StyledText } from '../../elements/StyledText' import { Box, HStack, SpanBox, VStack } from '../../elements/LayoutPrimitives' import { Dropdown, DropdownOption } from '../../elements/DropdownElements' import { Button, IconButton } from '../../elements/Button' import { CaretRight, Circle, DotsThree, MagnifyingGlass, Plus, X, } from 'phosphor-react' import { useGetSubscriptionsQuery } from '../../../lib/networking/queries/useGetSubscriptionsQuery' import { useGetLabelsQuery } from '../../../lib/networking/queries/useGetLabelsQuery' import { Label } from '../../../lib/networking/fragments/labelFragment' import { ModalContent, ModalOverlay, ModalRoot, } from '../../elements/ModalPrimitives' import { theme } from '../../tokens/stitches.config' import { FormInput } from '../../elements/FormElements' import { SearchBox } from '../../templates/homeFeed/LibraryHeader' type SearchModalProps = { searchTerm: string | undefined applySearchQuery: (searchTerm: string) => void onOpenChange: (open: boolean) => void } export function SearchModal(props: SearchModalProps): JSX.Element { return ( e.preventDefault()} /> { // remove focus from modal ;(document.activeElement as HTMLElement).blur() }} > props.onOpenChange(false)} /> ) }