@@ -42,8 +42,9 @@ export class LeetCodeTreeDataProvider implements vscode.TreeDataProvider<LeetCod
4242 private treeData : {
4343 Difficulty : Map < string , list . IProblem [ ] > ,
4444 Tag : Map < string , list . IProblem [ ] > ,
45- Company : Map < string , list . IProblem [ ] >
46- }
45+ Company : Map < string , list . IProblem [ ] > ,
46+ Favorite : list . IProblem [ ]
47+ } ;
4748
4849 private onDidChangeTreeDataEvent : vscode . EventEmitter < any > = new vscode . EventEmitter < any > ( ) ;
4950 // tslint:disable-next-line:member-ordering
@@ -104,6 +105,10 @@ export class LeetCodeTreeDataProvider implements vscode.TreeDataProvider<LeetCod
104105 id : "Root" ,
105106 name : "Company" ,
106107 } ) , false ) ,
108+ new LeetCodeNode ( Object . assign ( { } , list . IProblemDefault , {
109+ id : "Root" ,
110+ name : "Favorite" ,
111+ } ) , false ) ,
107112 ]
108113 resolve ( nodes ) ;
109114 } ) ;
@@ -113,6 +118,8 @@ export class LeetCodeTreeDataProvider implements vscode.TreeDataProvider<LeetCod
113118 case "Tag" :
114119 case "Company" :
115120 return this . composeCategoryNodes ( element ) ;
121+ case "Favorite" :
122+ return this . treeData . Favorite . map ( p => new LeetCodeNode ( p ) ) ;
116123 default : // Second and lower levels
117124 return element . isProblem ? [ ] : this . composeProblemNodes ( element ) ;
118125 }
@@ -123,9 +130,11 @@ export class LeetCodeTreeDataProvider implements vscode.TreeDataProvider<LeetCod
123130 this . treeData = {
124131 Difficulty : new Map ( ) ,
125132 Tag : new Map ( ) ,
126- Company : new Map ( )
133+ Company : new Map ( ) ,
134+ Favorite : [ ]
127135 }
128136 for ( const problem of await list . listProblems ( ) ) {
137+ // Add problems according to category
129138 const categories = [
130139 [ "Difficulty" , [ problem . difficulty ] ] ,
131140 [ "Tag" , problem . tags ] ,
@@ -143,6 +152,10 @@ export class LeetCodeTreeDataProvider implements vscode.TreeDataProvider<LeetCod
143152 }
144153 }
145154 }
155+ // Add favorite problems
156+ if ( problem . favorite ) {
157+ this . treeData . Favorite . push ( problem )
158+ }
146159 }
147160 }
148161
0 commit comments