@@ -29,23 +29,22 @@ module.exports = ({ ontologies }) => {
29
29
return actual . data === expected
30
30
}
31
31
if ( expected instanceof RegExp ) {
32
- console . log ( 'expected is regex' , entry , key )
33
32
return ! ! actual . data . match ( expected )
34
33
}
35
34
if ( expected instanceof Function ) {
36
35
return expected ( actual . data )
37
36
}
38
37
if ( typeof expected === 'object' ) {
39
- console . log ( 'expected is object' , entry , key )
40
38
return SubOntologies . match ( actual , expected )
41
39
}
42
40
} )
43
41
} ,
44
42
45
43
reduce : ( model , entry ) => {
46
- return model
44
+ console . log ( 'SubOntologies.reduce' , model , entry )
45
+ return undefined
47
46
if ( ! SubOntologies . match ( entry ) ) {
48
- return model
47
+ return undefined
49
48
}
50
49
const subOntology = ontologies . get ( entry . data . name . data )
51
50
return {
@@ -75,23 +74,19 @@ module.exports = ({ ontologies }) => {
75
74
76
75
match : ( entry , _schema ) => {
77
76
const schema = _schema || HomepageCenter . schema ( entry )
78
- console . log ( 'HomepageCenter.match schema' , schema )
79
77
return Object . keys ( schema ) . every ( ( key ) => {
80
78
const expected = schema [ key ]
81
79
const actual = entry [ key ]
82
80
if ( typeof expected === 'string' ) {
83
- console . log ( 'expected is string' , entry , key )
84
81
return ( actual . data || actual ) === expected
85
82
}
86
83
if ( expected instanceof RegExp ) {
87
- console . log ( 'expected is regex' , entry , key )
88
84
return ! ! ( actual . data || actual ) . match ( expected )
89
85
}
90
86
if ( expected instanceof Function ) {
91
87
return expected ( actual . data || actual )
92
88
}
93
89
if ( key === 'data' ) {
94
- console . log ( 'expected is object' , entry , key )
95
90
return HomepageCenter . match ( actual , expected )
96
91
}
97
92
} )
@@ -101,7 +96,7 @@ module.exports = ({ ontologies }) => {
101
96
console . log ( 'HomepageCenter.reduce' , model , entry )
102
97
if ( ! HomepageCenter . match ( entry ) ) {
103
98
console . log ( 'HomepageCenter other' )
104
- return model
99
+ return undefined
105
100
}
106
101
const homepage = new Models . Homepage ( entry )
107
102
console . log ( 'HomepageCenter homepage' , homepage )
@@ -136,23 +131,19 @@ module.exports = ({ ontologies }) => {
136
131
137
132
match : ( entry , _schema ) => {
138
133
const schema = _schema || Subpages . schema ( entry )
139
- console . log ( 'Subpages.match schema' , schema )
140
134
return Object . keys ( schema ) . every ( ( key ) => {
141
135
const expected = schema [ key ]
142
136
const actual = entry [ key ]
143
137
if ( typeof expected === 'string' ) {
144
- console . log ( 'expected is string' , entry , key )
145
138
return ( actual . data || actual ) === expected
146
139
}
147
140
if ( expected instanceof RegExp ) {
148
- console . log ( 'expected is regex' , entry , key )
149
141
return ! ! ( actual . data || actual ) . match ( expected )
150
142
}
151
143
if ( expected instanceof Function ) {
152
144
return expected ( actual . data || actual )
153
145
}
154
146
if ( key === 'data' ) {
155
- console . log ( 'expected is object' , entry , key )
156
147
return Subpages . match ( actual , expected )
157
148
}
158
149
} )
@@ -162,7 +153,7 @@ module.exports = ({ ontologies }) => {
162
153
console . log ( 'Subpages.reduce' , model , entry )
163
154
if ( ! Subpages . match ( entry ) ) {
164
155
console . log ( 'Subpages other' )
165
- return model
156
+ return undefined
166
157
}
167
158
const subpage = new Models . Subpage ( entry )
168
159
console . log ( 'Subpages subpage' , subpage )
@@ -178,7 +169,7 @@ module.exports = ({ ontologies }) => {
178
169
} ,
179
170
180
171
render : async ( renderer , model ) => {
181
- console . log ( 'subpages.render contentModel' , model )
172
+ console . log ( 'renderSubpages contentModel' , model )
182
173
await Subpages . view ( renderer , model )
183
174
}
184
175
}
@@ -189,16 +180,33 @@ module.exports = ({ ontologies }) => {
189
180
this . contentModel = contentTree . tree . reduce ( ( model , entry ) => {
190
181
console . log ( 'portal.contentTree.reduce' , model , entry )
191
182
192
- const maybeWithSubOntologies = SubOntologies . reduce ( model , entry )
193
- console . log ( 'portal.contentTree.reduce withSubOntologies' , maybeWithSubOntologies , entry )
183
+ const withSubOntologies = SubOntologies . reduce ( model , entry )
184
+ if ( withSubOntologies ) {
185
+ console . log ( 'portal.contentTree.reduce withSubOntologies' , withSubOntologies )
186
+ return withSubOntologies
187
+ }
188
+
189
+ const withHomepage = HomepageCenter . reduce (
190
+ ( withSubOntologies || model ) ,
191
+ entry
192
+ )
193
+ if ( withHomepage ) {
194
+ console . log ( 'portal.contentTree.reduce withHomepage' , withHomepage )
195
+ return withHomepage
196
+ }
194
197
195
- const maybeWithHomepage = HomepageCenter . reduce ( maybeWithSubOntologies , entry )
196
- console . log ( 'portal.contentTree.reduce withHomepage' , maybeWithHomepage , entry )
198
+ const withSubpages = Subpages . reduce (
199
+ ( withHomepage || withSubOntologies || model ) ,
200
+ entry
201
+ )
202
+ if ( withSubpages ) {
203
+ console . log ( 'portal.contentTree.reduce withSubpages' , withSubpages )
204
+ return withSubpages
205
+ }
197
206
198
- const maybeWithSubpages = Subpages . reduce ( maybeWithHomepage , entry , entry )
199
- console . log ( 'portal.contentTree.reduce withSubpages' , maybeWithSubpages )
207
+ // localAssets
200
208
201
- return maybeWithSubpages
209
+ return model
202
210
} , { } )
203
211
console . log ( 'portal.contentModel' , JSON . stringify ( this . contentModel , null , 2 ) )
204
212
}
0 commit comments