@@ -24,6 +24,37 @@ function isPatternExcluded(pattern) {
2424 return pattern . fileName . charAt ( 0 ) === '_' ;
2525}
2626
27+ // Returns the array of patterns to be rendered in the styleguide view and
28+ // linked to in the pattern navigation. Checks if patterns are excluded.
29+ function assembleStyleguidePatterns ( patternlab ) {
30+ var styleguideExcludes = patternlab . config . styleGuideExcludes ;
31+ var styleguidePatterns = [ ] ;
32+
33+ if ( styleguideExcludes && styleguideExcludes . length ) {
34+ for ( var i = 0 ; i < patternlab . patterns . length ; i ++ ) {
35+
36+ // skip underscore-prefixed files
37+ if ( isPatternExcluded ( patternlab . patterns [ i ] ) ) {
38+ if ( patternlab . config . debug ) {
39+ console . log ( 'Omitting ' + patternlab . patterns [ i ] . key + " from styleguide pattern exclusion." ) ;
40+ }
41+ continue ;
42+ }
43+
44+ var key = patternlab . patterns [ i ] . key ;
45+ var typeKey = key . substring ( 0 , key . indexOf ( '-' ) ) ;
46+ var isExcluded = ( styleguideExcludes . indexOf ( typeKey ) > - 1 ) ;
47+ if ( ! isExcluded ) {
48+ styleguidePatterns . push ( patternlab . patterns [ i ] ) ;
49+ }
50+ }
51+ } else {
52+ styleguidePatterns = patternlab . patterns ;
53+ }
54+
55+ return styleguidePatterns ;
56+ }
57+
2758
2859// MAIN BUILDER FUNCTION
2960
@@ -35,7 +66,6 @@ function buildFrontEnd(patternlab) {
3566 var mh = require ( './media_hunter' ) ;
3667 var pattern_assembler = new pa ( ) ;
3768 var media_hunter = new mh ( ) ;
38- var styleGuideExcludes = patternlab . config . styleGuideExcludes ;
3969 var styleguidePatterns = [ ] ;
4070 var paths = patternlab . config . paths ;
4171 var i ;
@@ -62,27 +92,7 @@ function buildFrontEnd(patternlab) {
6292 media_hunter . find_media_queries ( './source/css' , patternlab ) ;
6393
6494 // check if patterns are excluded, if not add them to styleguidePatterns
65- if ( styleGuideExcludes && styleGuideExcludes . length ) {
66- for ( i = 0 ; i < patternlab . patterns . length ; i ++ ) {
67-
68- // skip underscore-prefixed files
69- if ( isPatternExcluded ( patternlab . patterns [ i ] ) ) {
70- if ( patternlab . config . debug ) {
71- console . log ( 'Omitting ' + patternlab . patterns [ i ] . key + " from styleguide pattern exclusion." ) ;
72- }
73- continue ;
74- }
75-
76- var key = patternlab . patterns [ i ] . key ;
77- var typeKey = key . substring ( 0 , key . indexOf ( '-' ) ) ;
78- var isExcluded = ( styleGuideExcludes . indexOf ( typeKey ) > - 1 ) ;
79- if ( ! isExcluded ) {
80- styleguidePatterns . push ( patternlab . patterns [ i ] ) ;
81- }
82- }
83- } else {
84- styleguidePatterns = patternlab . patterns ;
85- }
95+ styleguidePatterns = assembleStyleguidePatterns ( patternlab ) ;
8696
8797 //also add the cachebuster value. slight chance this could collide with a user that has defined cacheBuster as a value
8898 patternlab . data . cacheBuster = patternlab . cacheBuster ;
0 commit comments