feat: initial auth provider

This commit is contained in:
2025-04-03 11:11:44 +03:00
parent cbb28fac6f
commit c2dd2e89b3

View File

@@ -0,0 +1,29 @@
import { signal, Signal } from "@preact/signals";
import { createContext, JSX } from "preact";
import { useContext } from "preact/hooks";
interface AppContextValue {
isLoggedIn: Signal<boolean>;
}
const AppContext = createContext<AppContextValue>({
isLoggedIn: signal(false),
});
const AppProvider = ({ children }: { children: JSX.Element }) => {
const value: AppContextValue = {
isLoggedIn: signal(false),
};
return <AppContext.Provider value={value}>{children}</AppContext.Provider>;
};
const useAppContext = () => {
const context = useContext(AppContext);
if (!context) {
throw new Error("useAppContext must be used within AppProvider");
}
return context;
};
export { AppProvider, useAppContext };