import { useRouter } from 'next/router'; import { useState } from 'react'; import { BuildingOffice2Icon, CalendarDaysIcon, PencilSquareIcon, TrashIcon, } from '@heroicons/react/24/outline'; import { Button, Dialog, Spinner, Tabs } from '@tih/ui'; import ProfilePhotoHolder from '~/components/offers/profile/ProfilePhotoHolder'; import type { BackgroundDisplayData } from '~/components/offers/types'; import { getProfileEditPath } from '~/utils/offers/link'; import type { ProfileDetailTab } from '../constants'; import { profileDetailTabs } from '../constants'; type ProfileHeaderProps = Readonly<{ background?: BackgroundDisplayData; handleDelete: () => void; isEditable: boolean; isLoading: boolean; selectedTab: ProfileDetailTab; setSelectedTab: (tab: ProfileDetailTab) => void; }>; export default function ProfileHeader({ background, handleDelete, isEditable, isLoading, selectedTab, setSelectedTab, }: ProfileHeaderProps) { const [isDialogOpen, setIsDialogOpen] = useState(false); const router = useRouter(); const { offerProfileId = '', token = '' } = router.query; const handleEditClick = () => { router.push(getProfileEditPath(offerProfileId as string, token as string)); }; function renderActionList() { return (
{/*
); } if (isLoading) { return (
); } if (!background) { return null; } const { experiences, totalYoe, specificYoes, profileName } = background; return (

{profileName ?? 'anonymous'}

{isEditable && (
{renderActionList()}
)}
{(experiences[0]?.companyName || experiences[0]?.jobLevel || experiences[0]?.jobTitle) && (
Current: {`${experiences[0].companyName || ''} ${ experiences[0].jobLevel || '' } ${experiences[0].jobTitle || ''}`}
)}
YOE: {totalYoe} {specificYoes && specificYoes.length > 0 && specificYoes.map(({ domain, yoe }) => { return ( {`${domain}: ${yoe}`} ); })}
setSelectedTab(value)} />
); }