'use client'; import { useQueryClient } from '@tanstack/react-query'; import { capitalize } from 'lodash'; import { getDOBWithAgeStringFromPersonalCode, getResultSetName, } from '@kit/doctor/lib/helpers'; import { AnalysisResponse, DoctorFeedback, Order, Patient, } from '@kit/doctor/schema/doctor-analysis-detail-view.schema'; import { useCurrentLocaleLanguageNames } from '@kit/shared/hooks'; import { getFullName } from '@kit/shared/utils'; import { useUser } from '@kit/supabase/hooks/use-user'; import { Trans } from '@kit/ui/trans'; import { bmiFromMetric } from '~/lib/utils'; import AnalysisFeedback from './analysis-feedback'; import DoctorAnalysisWrapper from './doctor-analysis-wrapper'; import DoctorJobSelect from './doctor-job-select'; export default function AnalysisView({ patient, order, analyses, feedback, }: { patient: Patient; order: Order; analyses: AnalysisResponse[]; feedback?: DoctorFeedback; }) { const { data: user } = useUser(); const queryClient = useQueryClient(); const languageNames = useCurrentLocaleLanguageNames(); const isInProgress = !!( !!feedback?.status && feedback?.doctor_user_id && feedback?.status !== 'COMPLETED' ); const isCurrentDoctorJob = !!feedback?.doctor_user_id && feedback?.doctor_user_id === user?.id; if (!patient || !order || !analyses) { return null; } return ( <>