import { create } from "zustand"; import { produce } from "immer"; import { QuizSettings, QuizSettingsConfig } from "@model/settingsData"; import { AnyTypedQuizQuestion } from ".."; export type QuizStore = QuizSettings & { quizId: string; preview: boolean; changeFaviconAndTitle: boolean; }; export const useQuizStore = create(() => ({ settings: {} as QuizSettingsConfig, questions: [], quizId: "", preview: false, changeFaviconAndTitle: false, cnt: 0, recentlyCompleted: false, show_badge: false, })); export const setQuizData = (data: QuizSettings) => { console.log("zusstand"); console.log(data); useQuizStore.setState((state: QuizStore) => ({ ...state, ...data })); }; export const addQuestion = (newQuestion: AnyTypedQuizQuestion) => useQuizStore.setState( produce((state: QuizStore) => { state.questions.push(newQuestion); }) ); export const addquizid = (id: string) => useQuizStore.setState( produce((state: QuizStore) => { state.quizId = id; }) );