an app to share curated trails sidetrail.app
1

Configure Feed

Select the types of activity you want to include in your feed.

1"use client"; 2 3import { createContext, useContext, useState, ReactNode } from "react"; 4 5type LoginModalContextType = { 6 isOpen: boolean; 7 openLoginModal: () => void; 8 closeLoginModal: () => void; 9}; 10 11const LoginModalContext = createContext<LoginModalContextType | null>(null); 12 13export function LoginModalProvider({ children }: { children: ReactNode }) { 14 const [isOpen, setIsOpen] = useState(false); 15 16 const openLoginModal = () => setIsOpen(true); 17 const closeLoginModal = () => setIsOpen(false); 18 19 return ( 20 <LoginModalContext.Provider value={{ isOpen, openLoginModal, closeLoginModal }}> 21 {children} 22 </LoginModalContext.Provider> 23 ); 24} 25 26export function useLoginModal() { 27 const context = useContext(LoginModalContext); 28 if (!context) { 29 throw new Error("useLoginModal must be used within a LoginModalProvider"); 30 } 31 return context; 32}