"use client" import { createContext, useContext, useState, type ReactNode } from "react" type ViewMode = "list" | "grid" interface ViewContextType { viewMode: ViewMode toggleViewMode: () => void setViewMode: (mode: ViewMode) => void } const ViewContext = createContext(undefined) export function ViewProvider({ children }: { children: ReactNode }) { const [viewMode, setViewMode] = useState("list") const toggleViewMode = () => { setViewMode(viewMode === "list" ? "grid" : "list") } return ( {children} ) } export function useView() { const context = useContext(ViewContext) if (context === undefined) { throw new Error("useView must be used within a ViewProvider") } return context }