'use client'; import React from 'react'; import { useScopedI18n } from '@/locales/client'; import { calculateADHDResults } from '../../test/private/ADHDCalculator'; function useLabels() { const t = useScopedI18n('components.adhdResult'); return { totalScore: t('totalScore'), inattention: t('inattention'), hyperactivity: t('hyperactivity'), partAScore: t('partAScore'), screeningResult: t('screeningResult'), severityLevel: t('severityLevel'), positiveScreen: t('positiveScreen'), negativeScreen: t('negativeScreen'), partAPositiveResponses: t('partAPositiveResponses'), basedOnTotalScore: t('basedOnTotalScore'), recommendations: t('recommendations'), importantNotes: t('importantNotes'), severityLevels: { low: t('severityLevels.low'), mild: t('severityLevels.mild'), moderate: t('severityLevels.moderate'), high: t('severityLevels.high'), }, notes: { screening: t('notes.screening'), symptoms: t('notes.symptoms'), evaluation: t('notes.evaluation'), }, recommendationTexts: { positive: t('recommendationTexts.positive'), negative: t('recommendationTexts.negative'), }, }; } export function ADHDResult({ answers, }: { answers: string[]; }) { const labels = useLabels(); // Convert answers array to object format expected by calculator const answersObj: { [key: number]: string } = {}; answers.forEach((answer, index) => { answersObj[index + 1] = answer; }); const results = calculateADHDResults({ answers: answersObj, questions: [] }); const getSeverityColor = (severity: string) => { switch (severity) { case 'low': return 'text-green-600'; case 'mild': return 'text-yellow-600'; case 'moderate': return 'text-orange-600'; case 'high': return 'text-red-600'; default: return 'text-gray-600'; } }; const getSeverityLabel = (severity: string) => { return labels.severityLevels[severity as keyof typeof labels.severityLevels] || 'Unknown'; }; return (
{labels.partAPositiveResponses}: {results.partAPositive}/6
{labels.basedOnTotalScore}: {results.totalScore}/72
{results.screeningPositive ? labels.recommendationTexts.positive : labels.recommendationTexts.negative}