@@ -16,20 +16,31 @@ module.exports.workdir = function(workdir) {
16
16
//////////////////////////////////////////////////////////////////////////////
17
17
/**
18
18
* alias can be configured at: options.alias > currConfig.alias > currConfig.include (later can override former)
19
+ * NOTE: options.alias and currConfig.alias can be: { name1: alias1, ... } or ['name1:alias1', ...]
19
20
**/
20
21
function getAliasConfigs ( options , currConfig ) {
21
- var aliasConfigs = { } ;
22
-
23
- _ . forEach ( ( options . alias || [ ] ) . concat ( currConfig . alias || [ ] ) . concat ( currConfig . include || [ ] ) ,
24
- function ( rawname ) {
22
+ var aliasConfigs = { } ,
23
+ optAlias = { } , confAlias = { } , incAlias = { } ;
24
+
25
+ if ( _ . isArray ( options . alias ) ) {
26
+ _ . forEach ( options . alias || [ ] , function ( rawname ) {
27
+ optAlias [ rawname . split ( ':' ) [ 0 ] ] = rawname . split ( ':' ) [ 1 ] ;
28
+ } ) ;
29
+ } else optAlias = options . alias ;
30
+
31
+ if ( _ . isArray ( currConfig . alias ) ) {
32
+ _ . forEach ( currConfig . alias || [ ] , function ( rawname ) {
33
+ confAlias [ rawname . split ( ':' ) [ 0 ] ] = rawname . split ( ':' ) [ 1 ] ;
34
+ } ) ;
35
+ } else confAlias = currConfig . alias ;
36
+
37
+ _ . forEach ( currConfig . include || [ ] , function ( rawname ) {
25
38
if ( rawname . indexOf ( ':' ) > 0 ) {
26
- var name = rawname . split ( ':' ) [ 0 ] ,
27
- alias = rawname . split ( ':' ) [ 1 ] ;
28
- aliasConfigs [ name ] = alias ;
39
+ incAlias [ rawname . split ( ':' ) [ 0 ] ] = rawname . split ( ':' ) [ 1 ] ;
29
40
}
30
41
} ) ;
31
-
32
- return aliasConfigs ;
42
+
43
+ return _ . extend ( aliasConfigs , optAlias , confAlias , incAlias ) ;
33
44
}
34
45
35
46
function getWorkingLists ( options ) {
0 commit comments