diff --git a/backend/src/services/perplexity.service.ts b/backend/src/services/perplexity.service.ts index 49471923..fc0c5327 100644 --- a/backend/src/services/perplexity.service.ts +++ b/backend/src/services/perplexity.service.ts @@ -154,11 +154,11 @@ export class PerplexityService { */ async explainMedicalText(medicalText: string): Promise { const systemPrompt = - 'You are an AI assistant that specializes in explaining complex medical information in simple terms. ' + - 'Your goal is to help patients understand their medical reports by translating medical jargon into plain language. ' + - 'Be accurate, comprehensive, but easy to understand. Use everyday analogies when helpful.'; + 'You are an AI assistant that specializes in explaining complex medical information in simple terms.\n' + + 'Your goal is to help patients understand their medical reports by translating medical jargon into plain language.\n' + + 'You must be accurate, concise, comprehensive, and easy to understand. Use everyday analogies when helpful.\n'; - const userPrompt = `Please explain the following medical text in simple terms:\n\n${medicalText}`; + const userPrompt = `Please explain the following medical text in simple terms, in a single paragraph that's between 100 to 500 characters:\n\n${medicalText}`; const messages: PerplexityMessage[] = [ { role: 'system', content: systemPrompt }, @@ -166,6 +166,6 @@ export class PerplexityService { ]; const response = await this.createChatCompletion(messages); - return response.choices[0].message.content; + return response.choices[0].message.content.trim(); } } diff --git a/frontend/src/common/components/AIAssistant/AIAssistantModal.scss b/frontend/src/common/components/AIAssistant/AIAssistantModal.scss index 1e9a391e..4cc4f3e3 100644 --- a/frontend/src/common/components/AIAssistant/AIAssistantModal.scss +++ b/frontend/src/common/components/AIAssistant/AIAssistantModal.scss @@ -5,7 +5,9 @@ --box-shadow: 0 -0.25rem 1rem rgba(0, 0, 0, 0.1); --backdrop-opacity: 0.3; align-items: flex-end; - transition: --height 0.3s ease-out, --max-height 0.3s ease-out; + transition: + --height 0.3s ease-out, + --max-height 0.3s ease-out; &.expanded { --height: 85vh; diff --git a/frontend/src/common/hooks/useFileUpload.ts b/frontend/src/common/hooks/useFileUpload.ts index 435bd3c0..fc9d36de 100644 --- a/frontend/src/common/hooks/useFileUpload.ts +++ b/frontend/src/common/hooks/useFileUpload.ts @@ -99,7 +99,7 @@ export const useFileUpload = ({ setError( validation.errorKey ? t(validation.errorKey, validation.params) - : validation.error ?? t('upload.error.unknown'), + : (validation.error ?? t('upload.error.unknown')), ); return; } diff --git a/frontend/src/pages/Chat/__tests__/ChatPage.test.tsx b/frontend/src/pages/Chat/__tests__/ChatPage.test.tsx index c1a21f81..693d1fc9 100644 --- a/frontend/src/pages/Chat/__tests__/ChatPage.test.tsx +++ b/frontend/src/pages/Chat/__tests__/ChatPage.test.tsx @@ -34,12 +34,11 @@ interface MockComponentProps { vi.mock('@ionic/react', () => { const createMockComponent = (name: string) => - ({ className, children, ...props }: MockComponentProps) => - ( -
- {children} -
- ); + ({ className, children, ...props }: MockComponentProps) => ( +
+ {children} +
+ ); return { IonPage: createMockComponent('ion-page'), diff --git a/frontend/src/pages/Processing/ProcessingPage.scss b/frontend/src/pages/Processing/ProcessingPage.scss index 0a4160f0..2594fc14 100644 --- a/frontend/src/pages/Processing/ProcessingPage.scss +++ b/frontend/src/pages/Processing/ProcessingPage.scss @@ -64,7 +64,9 @@ height: 180px; border-radius: 50%; background: radial-gradient(circle at 30% 30%, #4f7dff 10%, #c97eff 40%, #ff8afc 80%); - box-shadow: 0 0 40px rgba(201, 126, 255, 0.5), 0 0 80px rgba(201, 126, 255, 0.3); + box-shadow: + 0 0 40px rgba(201, 126, 255, 0.5), + 0 0 80px rgba(201, 126, 255, 0.3); position: relative; overflow: hidden; animation: pulse 3s infinite ease-in-out; @@ -155,7 +157,9 @@ font-weight: 500; font-size: 1rem; cursor: pointer; - transition: background-color 0.2s, color 0.2s; + transition: + background-color 0.2s, + color 0.2s; &:hover { background-color: var(--ion-color-primary-tint); diff --git a/frontend/src/pages/Upload/__tests__/UploadPage.test.tsx b/frontend/src/pages/Upload/__tests__/UploadPage.test.tsx index 10e593c2..f27ed2b7 100644 --- a/frontend/src/pages/Upload/__tests__/UploadPage.test.tsx +++ b/frontend/src/pages/Upload/__tests__/UploadPage.test.tsx @@ -57,6 +57,9 @@ vi.mock('common/components/Upload/UploadModal', () => { labValues: [], summary: 'Test report summary', filePath: '/reports/test-report.pdf', + originalFilename: 'test-report.pdf', + fileSize: 1024, + confidence: 0.95, updatedAt: '2023-01-01', };