@@ -15,43 +15,61 @@ class OneNoteApiResponseTransformer {
15
15
}
16
16
17
17
transformNotebook ( notebook : OneNoteApi . Notebook ) : Notebook {
18
- return {
18
+ var transformed : Notebook = {
19
+ parent : undefined ,
19
20
id : notebook . id ,
20
21
name : notebook . name ,
21
22
expanded : this . defaultExpanded ,
22
- sectionGroups : notebook . sectionGroups . map ( sg => this . transformSectionGroup ( sg ) ) ,
23
- sections : notebook . sections . map ( section => this . transformSection ( section ) )
23
+ sectionGroups : [ ] ,
24
+ sections : [ ]
24
25
} ;
26
+
27
+ transformed . sectionGroups = notebook . sectionGroups . map ( sg => this . transformSectionGroup ( sg , transformed ) ) ;
28
+ transformed . sections = notebook . sections . map ( section => this . transformSection ( section , transformed ) ) ;
29
+
30
+ return transformed ;
25
31
}
26
32
27
- transformSectionGroup ( sectionGroup : OneNoteApi . SectionGroup ) : SectionGroup {
28
- return {
33
+ transformSectionGroup ( sectionGroup : OneNoteApi . SectionGroup , parent : Notebook | SectionGroup ) : SectionGroup {
34
+ var transformed : SectionGroup = {
35
+ parent : parent ,
29
36
id : sectionGroup . id ,
30
37
name : sectionGroup . name ,
31
38
expanded : this . defaultExpanded ,
32
- sectionGroups : sectionGroup . sectionGroups . map ( sg => this . transformSectionGroup ( sg ) ) ,
33
- sections : sectionGroup . sections . map ( section => this . transformSection ( section ) )
39
+ sectionGroups : [ ] ,
40
+ sections : [ ]
34
41
} ;
42
+
43
+ transformed . sectionGroups = sectionGroup . sectionGroups . map ( sg => this . transformSectionGroup ( sg , transformed ) ) ;
44
+ transformed . sections = sectionGroup . sections . map ( section => this . transformSection ( section , transformed ) ) ;
45
+
46
+ return transformed ;
35
47
}
36
48
37
- transformSection ( section : OneNoteApi . Section ) : Section {
49
+ transformSection ( section : OneNoteApi . Section , parent : Notebook | SectionGroup ) : Section {
38
50
// Pages may be undefined (e.g., in the getNotebooks call)
39
- return {
51
+ var transformed : Section = {
52
+ parent : parent ,
40
53
id : section . id ,
41
54
name : section . name ,
42
55
expanded : this . defaultExpanded ,
43
- pages : ! ! section . pages ? section . pages . map ( page => this . transformPage ( page ) ) : undefined
56
+ pages : [ ]
44
57
} ;
58
+
59
+ transformed . pages = ! ! section . pages ? section . pages . map ( page => this . transformPage ( page , transformed ) ) : undefined ;
60
+
61
+ return transformed ;
45
62
}
46
63
47
- transformPages ( pageList : OneNoteApi . Page [ ] ) : Page [ ] {
48
- return pageList . map ( page => this . transformPage ( page ) ) ;
64
+ transformPages ( pageList : OneNoteApi . Page [ ] , parent : Section ) : Page [ ] {
65
+ return pageList . map ( page => this . transformPage ( page , parent ) ) ;
49
66
}
50
67
51
- transformPage ( page : OneNoteApi . Page ) : Page {
68
+ transformPage ( page : OneNoteApi . Page , parent : Section ) : Page {
52
69
return {
70
+ parent : parent ,
53
71
id : page . id ,
54
- title : page . title
72
+ name : page . title
55
73
} ;
56
74
}
57
75
}
0 commit comments