@@ -184,87 +184,99 @@ const patternlab_module = function (config) {
184
184
//diveSync again to recursively include partials, filling out the
185
185
//extendedTemplate property of the patternlab.patterns elements
186
186
// TODO we can reduce the time needed by only processing changed patterns and their partials
187
- patternlab . processAllPatternsRecursive ( paths . source . patterns , patternlab ) ;
188
-
189
- //take the user defined head and foot and process any data and patterns that apply
190
- const headPatternPromise = processMetaPattern ( `_00-head.${ patternlab . config . patternExtension } ` , 'userHead' , patternlab ) ;
191
- const footPatternPromise = processMetaPattern ( `_01-foot.${ patternlab . config . patternExtension } ` , 'userFoot' , patternlab ) ;
192
-
193
- return Promise . all ( [ headPatternPromise , footPatternPromise ] ) . then ( ( ) => {
194
-
195
- //cascade any patternStates
196
- lineage_hunter . cascade_pattern_states ( patternlab ) ;
197
-
198
- //set pattern-specific header if necessary
199
- let head ;
200
- if ( patternlab . userHead ) {
201
- head = patternlab . userHead ;
202
- } else {
203
- head = patternlab . header ;
204
- }
205
-
206
- //set the pattern-specific header by compiling the general-header with data, and then adding it to the meta header
207
- return render ( Pattern . createEmpty ( { extendedTemplate : patternlab . header } ) , {
208
- cacheBuster : patternlab . cacheBuster
209
- } ) . then ( ( results ) => {
210
- patternlab . data . patternLabHead = results ;
211
-
212
- // If deletePatternDir == true or graph needs to be updated
213
- // rebuild all patterns
214
- let patternsToBuild = null ;
215
-
216
- // If deletePatternDir == true or graph needs to be updated
217
- // rebuild all patterns
218
- patternsToBuild = null ;
219
-
220
- if ( patternlab . incrementalBuildsEnabled ) {
221
- // When the graph was loaded from file, some patterns might have been moved/deleted between runs
222
- // so the graph data become out of sync
223
- patternlab . graph . sync ( ) . forEach ( n => {
224
- logger . info ( "[Deleted/Moved] " + n ) ;
225
- } ) ;
226
-
227
- // TODO Find created or deleted files
228
- const now = new Date ( ) . getTime ( ) ;
229
- markModifiedPatterns ( now , patternlab ) ;
230
- patternsToBuild = patternlab . graph . compileOrder ( ) ;
187
+ return patternlab . processAllPatternsRecursive ( paths . source . patterns ) . then ( ( ) => {
188
+
189
+ console . log ( '+++++++++++++++++++++?????????' )
190
+
191
+ //take the user defined head and foot and process any data and patterns that apply
192
+ const headPatternPromise = processMetaPattern ( `_00-head.${ patternlab . config . patternExtension } ` , 'userHead' , patternlab ) ;
193
+ const footPatternPromise = processMetaPattern ( `_01-foot.${ patternlab . config . patternExtension } ` , 'userFoot' , patternlab ) ;
194
+
195
+ return Promise . all ( [ headPatternPromise , footPatternPromise ] ) . then ( ( ) => {
196
+
197
+ //cascade any patternStates
198
+ lineage_hunter . cascade_pattern_states ( patternlab ) ;
199
+
200
+ //set pattern-specific header if necessary
201
+ let head ;
202
+ if ( patternlab . userHead ) {
203
+ head = patternlab . userHead ;
231
204
} else {
232
- // build all patterns, mark all to be rebuilt
233
- patternsToBuild = patternlab . patterns ;
234
- for ( const p of patternsToBuild ) {
235
- p . compileState = CompileState . NEEDS_REBUILD ;
236
- }
205
+ head = patternlab . header ;
237
206
}
238
207
239
- //render all patterns last, so lineageR works
240
- return patternsToBuild
241
- . reduce ( ( previousPromise , pattern ) => {
242
- return previousPromise . then ( ( ) => patternlab . renderSinglePattern ( pattern , head ) ) ;
243
- } , Promise . resolve ( ) )
244
- . then ( ( ) => {
245
- // Saves the pattern graph when all files have been compiled
246
- PatternGraph . storeToFile ( patternlab ) ;
247
- if ( patternlab . config . exportToGraphViz ) {
248
- PatternGraph . exportToDot ( patternlab , "dependencyGraph.dot" ) ;
249
- logger . info ( `Exported pattern graph to ${ path . join ( config . paths . public . root , "dependencyGraph.dot" ) } ` ) ;
208
+ //set the pattern-specific header by compiling the general-header with data, and then adding it to the meta header
209
+ return render ( Pattern . createEmpty ( { extendedTemplate : patternlab . header } ) , {
210
+ cacheBuster : patternlab . cacheBuster
211
+ } ) . then ( ( results ) => {
212
+ patternlab . data . patternLabHead = results ;
213
+
214
+ // If deletePatternDir == true or graph needs to be updated
215
+ // rebuild all patterns
216
+ let patternsToBuild = null ;
217
+
218
+ // If deletePatternDir == true or graph needs to be updated
219
+ // rebuild all patterns
220
+ patternsToBuild = null ;
221
+
222
+ console . log ( '222' , patternlab . incrementalBuildsEnabled )
223
+
224
+ if ( patternlab . incrementalBuildsEnabled ) {
225
+ // When the graph was loaded from file, some patterns might have been moved/deleted between runs
226
+ // so the graph data become out of sync
227
+ patternlab . graph . sync ( ) . forEach ( n => {
228
+ logger . info ( "[Deleted/Moved] " + n ) ;
229
+ } ) ;
230
+
231
+ // TODO Find created or deleted files
232
+ const now = new Date ( ) . getTime ( ) ;
233
+ markModifiedPatterns ( now , patternlab ) ;
234
+ patternsToBuild = patternlab . graph . compileOrder ( ) ;
235
+ } else {
236
+ // build all patterns, mark all to be rebuilt
237
+ patternsToBuild = patternlab . patterns ;
238
+ for ( const p of patternsToBuild ) {
239
+ p . compileState = CompileState . NEEDS_REBUILD ;
250
240
}
241
+ }
251
242
252
- //export patterns if necessary
253
- pattern_exporter . export_patterns ( patternlab ) ;
254
-
255
- } ) . catch ( reason => {
256
- console . log ( reason ) ;
257
- logger . error ( 'Error rendering patterns' ) ;
258
- } ) ;
243
+ //render all patterns last, so lineageR works
244
+
245
+ console . log ( 243 , patternsToBuild )
246
+
247
+ return patternsToBuild
248
+ . reduce ( ( previousPromise , pattern ) => {
249
+ return previousPromise . then ( ( ) => patternlab . renderSinglePattern ( pattern , head ) ) ;
250
+ } , Promise . resolve ( ) )
251
+ . then ( ( ) => {
252
+ // Saves the pattern graph when all files have been compiled
253
+ PatternGraph . storeToFile ( patternlab ) ;
254
+ if ( patternlab . config . exportToGraphViz ) {
255
+ PatternGraph . exportToDot ( patternlab , "dependencyGraph.dot" ) ;
256
+ logger . info ( `Exported pattern graph to ${ path . join ( config . paths . public . root , "dependencyGraph.dot" ) } ` ) ;
257
+ }
258
+
259
+ //export patterns if necessary
260
+ pattern_exporter . export_patterns ( patternlab ) ;
261
+
262
+ } ) . catch ( reason => {
263
+ console . log ( reason ) ;
264
+ logger . error ( 'Error rendering patterns' ) ;
265
+ } ) ;
266
+
267
+ } ) . catch ( reason => {
268
+ console . log ( reason ) ;
269
+ logger . error ( 'Error rendering pattern lab header' ) ;
270
+ } ) ;
259
271
260
272
} ) . catch ( reason => {
261
273
console . log ( reason ) ;
262
- logger . error ( 'Error rendering pattern lab header ' ) ;
274
+ logger . error ( 'Error processing meta patterns ' ) ;
263
275
} ) ;
264
276
265
277
} ) . catch ( reason => {
266
278
console . log ( reason ) ;
267
- logger . error ( 'Error processing meta patterns' ) ;
279
+ logger . error ( 'Error processing patterns recursively ' ) ;
268
280
} ) ;
269
281
270
282
} ) . catch ( reason => {
0 commit comments