import { create } from "zustand"; export interface ActiveJob { id: string; type: string; status: string; progress: number; total: number; } interface AppStore { activeJobs: ActiveJob[]; sidebarCollapsed: boolean; addJob: (job: ActiveJob) => void; updateJob: (id: string, updates: Partial) => void; removeJob: (id: string) => void; setSidebarCollapsed: (v: boolean) => void; } export const useAppStore = create((set) => ({ activeJobs: [], sidebarCollapsed: false, addJob: (job) => set((s) => ({ activeJobs: [...s.activeJobs, job] })), updateJob: (id, updates) => set((s) => ({ activeJobs: s.activeJobs.map((j) => (j.id === id ? { ...j, ...updates } : j)), })), removeJob: (id) => set((s) => ({ activeJobs: s.activeJobs.filter((j) => j.id !== id) })), setSidebarCollapsed: (v) => set({ sidebarCollapsed: v }), }));