import Layout from "../../components/layout"; import { useUser } from "@auth0/nextjs-auth0/client"; import { Box, Grid, Card, CardContent, Typography, List, ListItem, ListItemButton, ListItemIcon, ListItemText, Table, TableBody, TableCell, TableContainer, TableHead, TableRow, Paper, Button, Tabs, Tab, CircularProgress } from "@mui/material"; import { useState, useEffect } from "react"; import { useRouter } from 'next/router' import { fetchSeller } from "../../services/DiscoveryService"; import ServicePortfolio from "../../components/servicePortfolio"; import ServicePanel from "../../components/servicePanel"; import ArtistPortfolio from "../../components/artistPortfolio"; import Accordion from '@mui/material/Accordion'; import AccordionSummary from '@mui/material/AccordionSummary'; import AccordionDetails from '@mui/material/AccordionDetails'; import ExpandMoreIcon from '@mui/icons-material/ExpandMore'; interface TabPanelProps { children?: React.ReactNode; index: number; value: number; } function a11yProps(index: number) { return { id: `simple-tab-${index}`, 'aria-controls': `simple-tabpanel-${index}`, }; } function createData( serviceName: string, rating: number, review: string ) { return { serviceName, rating, review }; } function CustomTabPanel(props: TabPanelProps) { const { children, value, index, ...other } = props; return ( ); } const SellerProfile = () => { const { user, isLoading } = useUser(); const router = useRouter() const { id } = router.query console.log(router.query) const [sellerData, setSellerData] = useState([]); const [loading, setLoading] = useState(true); // State for loading indicator useEffect(() => { const getData = async () => { if(id){ const data = await fetchSeller(id); setSellerData(data); setLoading(false); // Once data is fetched, set loading to false } } getData(); }, [id]); const handleChange = (event: React.SyntheticEvent, newValue: number) => { setValue(newValue); }; const [value, setValue] = useState(0); return ( {loading ? ( // Render loading indicator if loading is true Loading... ) : ( {sellerData.name} Biography {sellerData.biography} Social Media )} ); }; export default SellerProfile;