UNPKG

@whop/react

Version:

React SDK for building embedded apps on Whop

25 lines (24 loc) 692 B
"use client"; import { useEffect, useRef } from "react"; import { useWebsocket } from "./use-websocket.mjs"; export function useBroadcastWebsocketMessage() { const websocket = useWebsocket(); const queue = useRef([]); useEffect(()=>{ if (websocket.status === "connected") { for (const message of queue.current){ websocket.websocket.broadcast(message); } queue.current = []; } }, [ websocket ]); return (message)=>{ if (websocket.status !== "connected") { queue.current.push(message); } else { websocket.websocket.broadcast(message); } }; }