import React, { createContext, useContext } from "react"; import { Outlet } from "react-router-dom"; import { useSettings, type FormValues, type ConfigMeta } from "@/hooks/use-settings"; import { Form } from "@/components/ui/form"; import { SectionHeader } from "@/components/section-header"; import { Button } from "@/components/ui/button"; import { Save, Loader2 } from "lucide-react"; interface SettingsContextType { form: ReturnType["form"]; meta: ConfigMeta | null; } const SettingsContext = createContext(null); export const useSettingsForm = () => { const context = useContext(SettingsContext); if (!context) throw new Error("useSettingsForm must be used within SettingsLayout"); return context; }; export function SettingsLayout() { const { form, meta, loading, isSaving, saveSettings } = useSettings(); if (loading) { return (

Loading configuration...

); } return (
); }