@@ -69,9 +69,9 @@ var ui_builder = function () {
6969 */
7070 function writeFile ( filePath , data , callback ) {
7171 if ( callback ) {
72- fs . outputFile ( filePath , data , callback ) ;
72+ fs . outputFileSync ( filePath , data , callback ) ;
7373 } else {
74- fs . outputFile ( filePath , data ) ;
74+ fs . outputFileSync ( filePath , data ) ;
7575 }
7676 }
7777
@@ -82,7 +82,6 @@ var ui_builder = function () {
8282 * @returns boolean - whether or not the pattern is excluded
8383 */
8484 function isPatternExcluded ( pattern , patternlab ) {
85- var styleGuideExcludes = patternlab . config . styleGuideExcludes ;
8685 var isOmitted ;
8786
8887 // skip underscore-prefixed files
@@ -103,16 +102,6 @@ var ui_builder = function () {
103102 return true ;
104103 }
105104
106- //this pattern is a member of any excluded pattern groups
107- isOmitted = styleGuideExcludes && styleGuideExcludes . length && _ . some ( styleGuideExcludes , function ( exclude ) {
108- return exclude === pattern . patternGroup ; } ) ;
109- if ( isOmitted ) {
110- if ( patternlab . config . debug ) {
111- console . log ( 'Omitting ' + pattern . patternPartial + ' from styleguide patterns its patternGroup is specified in styleguideExcludes.' ) ;
112- }
113- return true ;
114- }
115-
116105 //this pattern is contained with a directory prefixed with an underscore (a handy way to hide whole directories from the nav
117106 isOmitted = pattern . relPath . charAt ( 0 ) === '_' || pattern . relPath . indexOf ( '/_' ) > - 1 ;
118107 if ( isOmitted ) {
@@ -464,6 +453,7 @@ var ui_builder = function () {
464453
465454 var p ;
466455 var typePatterns = [ ] ;
456+ var styleGuideExcludes = patternlab . config . styleGuideExcludes ;
467457
468458 _ . forOwn ( patternTypeObj , function ( patternSubtypes , patternSubtype ) {
469459
@@ -493,7 +483,6 @@ var ui_builder = function () {
493483 return true ; //stop yelling at us eslint we know we know
494484 } ) ;
495485
496-
497486 //do not create a viewall page for flat patterns
498487 if ( ! writeViewAllFile || ! p ) {
499488 return false ;
@@ -510,7 +499,19 @@ var ui_builder = function () {
510499 var viewAllHTML = buildViewAllHTML ( patternlab , typePatterns , patternType ) ;
511500 writeFile ( paths . public . patterns + p . subdir + '/index.html' , mainPageHeadHtml + viewAllHTML + footerHTML ) ;
512501
513- patterns = patterns . concat ( typePatterns ) ;
502+ //determine if we should omit this patterntype completely from the viewall page
503+ var omitPatternType = styleGuideExcludes && styleGuideExcludes . length
504+ && _ . some ( styleGuideExcludes , function ( exclude ) {
505+ return exclude === patternType ;
506+ } ) ;
507+ if ( omitPatternType ) {
508+ if ( patternlab . config . debug ) {
509+ console . log ( 'Omitting ' + patternType + ' from building a viewall page because its patternGroup is specified in styleguideExcludes.' ) ;
510+ }
511+ } else {
512+ patterns = patterns . concat ( typePatterns ) ;
513+ }
514+
514515 return true ; //stop yelling at us eslint we know we know
515516 } ) ;
516517 return patterns ;
0 commit comments