/* Copyright 2024 Milton Moura SPDX-License-Identifier: AGPL-3.0-only Please see LICENSE in the repository root for full details. */ import React, { createContext, useContext, useState, ReactNode } from "react"; interface ReactionsContextType { raisedHands: string[]; setRaisedHands: React.Dispatch>; supportsReactions: boolean; setSupportsReactions: React.Dispatch>; } const ReactionsContext = createContext( undefined, ); export const useReactions = (): ReactionsContextType => { const context = useContext(ReactionsContext); if (!context) { throw new Error("useReactions must be used within a ReactionsProvider"); } return context; }; export const ReactionsProvider = ({ children, }: { children: ReactNode; }): JSX.Element => { const [raisedHands, setRaisedHands] = useState([]); const [supportsReactions, setSupportsReactions] = useState(true); return ( {children} ); };