"use client"; import { useState, ReactNode, useEffect } from "react"; import { Box, Tabs, Tab } from "@mui/material"; import { useTranslation } from "react-i18next"; import { useSearchParams, useRouter } from "next/navigation"; interface WarehouseTabsProps { tab0Content: ReactNode; tab1Content: ReactNode; } function TabPanel({ children, value, index, }: { children?: ReactNode; value: number; index: number; }) { return ( ); } export default function WarehouseTabs({ tab0Content, tab1Content }: WarehouseTabsProps) { const { t } = useTranslation("warehouse"); const searchParams = useSearchParams(); const router = useRouter(); const [currentTab, setCurrentTab] = useState(() => { const tab = searchParams.get("tab"); return tab === "1" ? 1 : 0; }); useEffect(() => { const tab = searchParams.get("tab"); setCurrentTab(tab === "1" ? 1 : 0); }, [searchParams]); const handleTabChange = (_e: React.SyntheticEvent, newValue: number) => { setCurrentTab(newValue); const params = new URLSearchParams(searchParams.toString()); if (newValue === 0) params.delete("tab"); else params.set("tab", String(newValue)); router.push(`?${params.toString()}`, { scroll: false }); }; return ( {tab0Content} {tab1Content} ); }