'use client'; import Link from 'next/link'; import { useEffect, useState } from 'react'; import { UserRound } from 'lucide-react'; import { AssessmentProfile } from '@/lib/assessment-types'; import { ensureActiveProfile, getProfiles, setActiveProfileId, } from '@/lib/assessment-db'; interface ProfilePickerProps { onChange?: (profile: AssessmentProfile) => void; } export function ProfilePicker({ onChange }: ProfilePickerProps) { const [profiles, setProfiles] = useState([]); const [active, setActive] = useState(''); useEffect(() => { let mounted = true; async function load() { const profile = await ensureActiveProfile(); const all = await getProfiles(); if (!mounted) return; setProfiles(all); setActive(profile.id); onChange?.(profile); } void load(); return () => { mounted = false; }; }, [onChange]); const select = (profileId: string) => { const profile = profiles.find((item) => item.id === profileId); if (!profile) return; setActive(profileId); setActiveProfileId(profileId); onChange?.(profile); }; return (
本次记录到
管理档案
); }