frontAnswerer/lib/contexts/QuizDataContext.ts

19 lines
637 B
TypeScript
Raw Normal View History

import { QuizSettings } from "@model/settingsData";
2025-04-30 17:59:50 +00:00
import { createContext, useContext, useMemo } from "react";
2025-04-22 19:29:34 +00:00
import { AnyTypedQuizQuestion } from "..";
2025-04-30 17:59:50 +00:00
export type QuizSettingsContextValue = QuizSettings & {
quizId: string;
preview: boolean;
changeFaviconAndTitle: boolean;
addQuestion: (newQuestion: AnyTypedQuizQuestion) => void;
};
export const QuizSettingsContext = createContext<QuizSettingsContextValue | null>(null);
export const useQuizSettings = () => {
const quizSettings = useContext(QuizSettingsContext);
if (quizSettings === null) throw new Error("QuizSettings context is null");
return quizSettings;
};