@@ -4,6 +4,7 @@ var path = require('path');
4
4
var fs = require ( 'fs-extra' ) ;
5
5
var ae = require ( './annotation_exporter' ) ;
6
6
var of = require ( './object_factory' ) ;
7
+ var Pattern = of . Pattern ;
7
8
var pa = require ( './pattern_assembler' ) ;
8
9
var pattern_assembler = new pa ( ) ;
9
10
var eol = require ( 'os' ) . EOL ;
@@ -264,13 +265,27 @@ function buildFooterHTML(patternlab, patternPartial) {
264
265
return footerHTML ;
265
266
}
266
267
267
- function buildViewAllHTML ( patternlab , patterns , patternPartial ) {
268
-
268
+ function insertPatternSubtypeDocumentationPattern ( patternlab , patterns , patternPartial ) {
269
269
//attempt to find a subtype pattern before rendering
270
270
var subtypePattern = patternlab . subtypePatterns [ patternPartial ] ;
271
271
if ( subtypePattern ) {
272
272
patterns . unshift ( subtypePattern ) ;
273
- } // confirm else scenario
273
+ } else {
274
+ var stubbedSubtypePattern = Pattern . createEmpty ( {
275
+ patternSectionSubtype : true ,
276
+ isPattern : false ,
277
+ patternPartial : 'viewall-' + patternPartial ,
278
+ patternName : patterns [ 0 ] . patternSubGroup ,
279
+ patternLink : patterns [ 0 ] . flatPatternPath + '/index.html'
280
+ } ) ;
281
+ patterns . unshift ( stubbedSubtypePattern ) ;
282
+ }
283
+ return patterns ;
284
+ }
285
+
286
+ function buildViewAllHTML ( patternlab , patterns , patternPartial ) {
287
+
288
+ patterns = insertPatternSubtypeDocumentationPattern ( patternlab , patterns , patternPartial )
274
289
275
290
var viewAllHTML = pattern_assembler . renderPattern ( patternlab . viewAll ,
276
291
{
@@ -395,7 +410,7 @@ function buildViewAllPages(mainPageHeadHtml, patternlab, patterns) {
395
410
var viewAllHTML = buildViewAllHTML ( patternlab , viewAllPatterns , patternPartial ) ;
396
411
397
412
fs . outputFileSync ( paths . public . patterns + pattern . flatPatternPath + '/index.html' , mainPageHeadHtml + viewAllHTML + footerHTML ) ;
398
- }
413
+ }
399
414
}
400
415
}
401
416
@@ -451,7 +466,6 @@ function buildFrontEnd(patternlab) {
451
466
} ) ;
452
467
453
468
//build the styleguide
454
-
455
469
var styleguideHtml = pattern_assembler . renderPattern ( patternlab . viewAll ,
456
470
{
457
471
partials : styleguidePatterns ,
0 commit comments