@@ -4,6 +4,14 @@ import { useEffect, useState } from "react";
44import ConceptList from "@/components/ConceptList" ;
55import NotesList from "@/components/NotesList" ;
66import { Note , Concept } from "@/types/OmopTables" ;
7+ import { Card , CardContent , CardHeader , CardTitle } from "@/components/ui/card" ;
8+ import {
9+ Select ,
10+ SelectContent ,
11+ SelectItem ,
12+ SelectTrigger ,
13+ SelectValue ,
14+ } from "@/components/ui/select" ;
715
816export default function Home ( ) {
917 const [ concepts , setConcepts ] = useState < Concept [ ] > ( [ ] ) ;
@@ -41,29 +49,50 @@ export default function Home() {
4149 } ;
4250
4351 return (
44- < div className = "min-h-screen bg-gray-100 p-6" >
45- < h1 className = "text-3xl font-bold mb-6" > Open Case Reports</ h1 >
46-
47- < div className = "bg-white p-4 rounded-xl shadow mb-6 flex gap-4" >
48- < label className = "font-semibold" > Domain:</ label >
49- < select
50- className = "border rounded-lg px-3 py-2"
51- value = { domain }
52- onChange = { ( e ) => setDomain ( e . target . value ) }
53- >
54- < option > All</ option >
55- < option > Condition</ option >
56- < option > Drug</ option >
57- </ select >
52+ < div className = "min-h-screen bg-muted/40 p-6" >
53+ < div className = "mb-6" >
54+ < h1 className = "text-3xl font-bold tracking-tight" > Open Case Reports</ h1 >
55+ < p className = "text-muted-foreground" >
56+ Browse common terms and find associated Case Reports
57+ </ p >
5858 </ div >
5959
60- < div className = "grid grid-cols-3 gap-6" >
61- < ConceptList concepts = { concepts } onSelect = { loadNotes } />
62- < NotesList
63- notes = { notes }
64- conceptId = { selectedConcept }
65- conceptName = { conceptName }
66- />
60+ < Card className = "mb-6" >
61+ < CardHeader className = "pb-3" >
62+ < CardTitle className = "text-2xl" > Filters</ CardTitle >
63+ </ CardHeader >
64+
65+ < CardContent >
66+ < div className = "flex items-center gap-4" >
67+ < span className = "text-lg font-medium" > Domain</ span >
68+
69+ < Select value = { domain } onValueChange = { setDomain } >
70+ < SelectTrigger className = "w-[200px]" >
71+ < SelectValue placeholder = "Select domain" />
72+ </ SelectTrigger >
73+
74+ < SelectContent >
75+ < SelectItem value = "All" > All</ SelectItem >
76+ < SelectItem value = "Condition" > Condition</ SelectItem >
77+ < SelectItem value = "Drug" > Drug</ SelectItem >
78+ </ SelectContent >
79+ </ Select >
80+ </ div >
81+ </ CardContent >
82+ </ Card >
83+
84+ < div className = "grid grid-cols-1 md:grid-cols-3 gap-6" >
85+ < Card className = "p-0 md:col-span-1" >
86+ < ConceptList concepts = { concepts } onSelect = { loadNotes } />
87+ </ Card >
88+
89+ < Card className = "p-0 md:col-span-2" >
90+ < NotesList
91+ notes = { notes }
92+ conceptId = { selectedConcept }
93+ conceptName = { conceptName }
94+ />
95+ </ Card >
6796 </ div >
6897 </ div >
6998 ) ;
0 commit comments