@@ -51,7 +51,7 @@ const LeetCodeTracker = () => {
5151 const [ filterDifficulty , setFilterDifficulty ] = useState ( "All" ) ;
5252 const [ showOnlyDueToday , setShowOnlyDueToday ] = useState ( false ) ;
5353 const [ showExplanation , setShowExplanation ] = useState ( false ) ;
54- const [ selectedList , setSelectedList ] = useState ( "NeetCode 150 " ) ;
54+ const [ selectedList , setSelectedList ] = useState ( "" ) ;
5555
5656
5757// Save progress to localStorage whenever it changes
@@ -123,7 +123,7 @@ const LeetCodeTracker = () => {
123123 } ) ;
124124 } ;
125125
126- const problems = problemLists [ selectedList ] ;
126+ const problems = problemLists [ selectedList ] || [ ] ;
127127 const currentProgress = progress [ selectedList ] || { } ;
128128
129129 const categories = [
@@ -170,24 +170,24 @@ const LeetCodeTracker = () => {
170170 Track your progress with spaced repetition
171171 </ p >
172172 </ div >
173- < div className = "flex flex-col sm:flex-row gap-2 items-start sm:items-center" >
173+ < div className = "flex sm:flex-row gap-2 items-start sm:items-center" >
174174 { /* Dropdown for problem list */ }
175- < div >
176- < label className = "text-gray-700 dark:text-gray-300 font-medium mr-2" >
177- Select List:
178- </ label >
179- < select
180- value = { selectedList }
181- onChange = { ( e ) => setSelectedList ( e . target . value ) }
182- className = "px-4 py-2 cursor-pointer rounded border border-gray-300 dark:border-gray-600 bg-white dark:bg-gray-700 text-gray-800 dark:text-gray-200 focus:outline-none"
183- >
184- { Object . keys ( problemLists ) . map ( ( listName ) => (
185- < option key = { listName } value = { listName } >
186- { listName }
187- </ option >
188- ) ) }
189- </ select >
190- </ div >
175+ < select
176+ id = "problem-list"
177+ value = { selectedList }
178+ title = "Select a problem list"
179+ onChange = { ( e ) => setSelectedList ( e . target . value ) }
180+ className = "px-4 py-2 cursor-pointer rounded border border-gray-300 dark:border-gray-600 bg-white dark:bg-gray-700 text-gray-800 dark:text-gray-200 focus:outline-none"
181+ >
182+ < option value = "" disabled >
183+ Select List
184+ </ option >
185+ { Object . keys ( problemLists ) . map ( ( listName ) => (
186+ < option key = { listName } value = { listName } >
187+ { listName }
188+ </ option >
189+ ) ) }
190+ </ select >
191191
192192 { /* Official Roadmap */ }
193193 < a
@@ -197,9 +197,7 @@ const LeetCodeTracker = () => {
197197 className = "flex items-center gap-2 px-4 py-2 bg-orange-600 hover:bg-orange-700 text-white rounded transition-colors"
198198 title = "View the official NeetCode roadmap"
199199 >
200- < Map size = { 16 } />
201- Official Roadmap
202- < ExternalLink size = { 14 } />
200+ < Map size = { 16 } /> Roadmap < ExternalLink size = { 14 } />
203201 </ a >
204202 </ div >
205203 </ div >
0 commit comments