UNPKG

@assistant-ui/react

Version:

Open-source TypeScript/React library for building production-grade AI chat experiences

25 lines (17 loc) • 744 B
"use client"; import { Collection } from "radix-ui/internal"; import { createContext, useContext, type RefObject } from "react"; const [collection, useThreadListCollection] = Collection.createCollection<HTMLButtonElement>("ThreadList"); export const ThreadListCollection = collection; export { useThreadListCollection }; type ThreadListItemFocus = { triggerRef: RefObject<HTMLButtonElement | null>; moreRef: RefObject<HTMLButtonElement | null>; }; const ThreadListItemFocusContext = createContext<ThreadListItemFocus | null>( null, ); export const ThreadListItemFocusProvider = ThreadListItemFocusContext.Provider; export const useThreadListItemFocus = (): ThreadListItemFocus | null => useContext(ThreadListItemFocusContext);