import { useContext, useState } from "react"; import { createHousehold, joinHousehold } from "../../api/households"; import { HouseholdContext } from "../../context/HouseholdContext"; import "../../styles/components/manage/CreateJoinHousehold.css"; export default function CreateJoinHousehold({ onClose }) { const { refreshHouseholds } = useContext(HouseholdContext); const [mode, setMode] = useState("create"); // "create" or "join" const [householdName, setHouseholdName] = useState(""); const [inviteCode, setInviteCode] = useState(""); const [loading, setLoading] = useState(false); const [error, setError] = useState(""); const handleCreate = async (e) => { e.preventDefault(); if (!householdName.trim()) return; setLoading(true); setError(""); try { await createHousehold(householdName); await refreshHouseholds(); onClose(); } catch (err) { console.error("Failed to create household:", err); setError(err.response?.data?.message || "Failed to create household"); } finally { setLoading(false); } }; const handleJoin = async (e) => { e.preventDefault(); if (!inviteCode.trim()) return; setLoading(true); setError(""); try { await joinHousehold(inviteCode); await refreshHouseholds(); onClose(); } catch (err) { console.error("Failed to join household:", err); setError(err.response?.data?.message || "Failed to join household"); } finally { setLoading(false); } }; return (