UNPKG

@yext/search-ui-react

Version:

A library of React Components for powering Yext Search integrations

21 lines (18 loc) 709 B
import { createContext, useContext } from 'react'; /** * The Context responsible for the Dropdown state. */ export type DropdownContextType = { isActive: boolean, screenReaderUUID?: string, toggleDropdown: (visible: boolean) => void, onSelect?: (value: string, index: number, focusedItemData: Record<string, unknown> | undefined) => void }; export const DropdownContext = createContext<DropdownContextType | null>(null); export function useDropdownContext(): DropdownContextType { const dropdownContextInstance = useContext(DropdownContext); if (dropdownContextInstance === null) { throw new Error('Tried to use DropdownContext when none exists.'); } return dropdownContextInstance; }