Перейти к содержимому
Yuva chat hookМеню

Yuva chat hook

A React hook over the useyuva headless client for live chat: the session, conversation list, one thread with realtime messages, typing, read state, sending text and files, rating and attachment download. Labels with English defaults.

loading

    Предпросмотр работает на примерах данных. Ему не нужны ни сеть, ни канал.

    Установка

    Выполните это в проекте shadcn. Файлы копируются в ваш собственный код.

    Shell
    npx shadcn@latest add https://useyuva.com/r/use-yuva-chat.json

    Использование

    tsx
    import { useYuvaChat } from "@/hooks/use-yuva-chat"
    
    const chat = useYuvaChat({ server, channel })

    Props

    UseYuvaChatOptions

    PropТип
    server?string
    channel?string
    client?YuvaClient
    identityToken?IdentityTokenSource | null
    helpArticleId?string

    YuvaChatState

    PropТип
    loadingboolean
    errorunknown
    inboxClientInbox | null
    contactClientContact | null
    connectionConnectionState["state"]
    conversationsClientConversation[]
    hasMoreConversationsboolean
    loadMoreConversations() => Promise<void>
    activeIdstring | null
    conversationClientConversation | null
    open(id: string | null) => Promise<void>
    removedboolean
    threadLoadingboolean
    messagesYuvaChatMessage[]
    hasEarlierboolean
    loadEarlier() => Promise<void>
    typingClientMessage["author"] | null
    memberReadAtstring | null
    send(input: YuvaChatSendInput) => Promise<void>
    retry(id: string) => Promise<void>
    discard(id: string) => void
    setTyping(on: boolean) => void
    markRead() => Promise<void>
    rate(rating: Rating, comment?: string) => Promise<void>
    openAttachment(attachment: ClientAttachment) => Promise<void>
    saveEmail(email: string) => Promise<void>

    Зависимости

    Установка этого элемента добавляет также следующее.

    Пакеты npm