import { create } from "zustand";

export type FormStatus = "idle" | "submitting" | "success" | "error";

interface UIStore {
  isMenuOpen: boolean;
  activeTab: string;
  formStatus: FormStatus;
  toggleMenu: () => void;
  setActiveTab: (tab: string) => void;
  setFormStatus: (status: FormStatus) => void;
}

export const useUIStore = create<UIStore>((set) => ({
  isMenuOpen: false,
  activeTab: "all",
  formStatus: "idle",
  toggleMenu: () => set((state) => ({ isMenuOpen: !state.isMenuOpen })),
  setActiveTab: (tab) => set({ activeTab: tab }),
  setFormStatus: (status) => set({ formStatus: status }),
}));
