import {createContext, useEffect, useState} from "react";

export type EventContextType = {
    event: string;
}

export const EventContext = createContext<EventContextType>(null as unknown as EventContextType);

export default function EventProvider({ children }: { children: React.ReactNode }) {
    const [event, setEvent] = useState<string | null>(null);

    useEffect(() => {
        const event = document.cookie
            .split("; ")
            .find((row) => row.startsWith("event="))
            ?.split("=")[1];

        if (event) {
            setEvent(decodeURI(event));
        }
    }, []);

    if (!event) {
        return 'loading...';
    }

    return <EventContext.Provider value={{event}}>
        {children}
    </EventContext.Provider>;
}
