1
1
let fs = require ( 'fs' ) ;
2
- let moment = require ( 'moment' ) ;
3
2
let log = require ( 'n-s-logs' ) ;
3
+ let moment = require ( 'moment' ) ;
4
4
let tool = require ( './util/tool' ) ;
5
5
let exec = require ( 'child_process' ) . exec ;
6
6
7
- var file = { } ;
7
+ let file = { } ;
8
8
9
9
let main = ( fpConfig , conf ) => {
10
10
// config list
11
- var _keys = fpConfig . list ;
11
+ let _keys = fpConfig . list ;
12
12
// page file absolute path
13
- var _cachePath = conf . pageConf ;
13
+ let _cachePath = conf . pageConf ;
14
14
// inquirer answers, about name & path
15
- var _answers = conf . answers ;
15
+ let _answers = conf . answers ;
16
16
// folder path [arr]
17
- var _folderPath = _answers . folderPath ;
17
+ let _folderPath = _answers . folderPath ;
18
18
// page template config
19
- var _tempConf = conf . tempConf ;
19
+ let _tempConf = conf . tempConf ;
20
20
// template names
21
- var _names = conf . names ;
21
+ let _names = conf . names ;
22
22
// folder path [str]
23
- var _folderPathArr = _folderPath . split ( '/' ) ;
24
- var _keysPath = { } , // path about
23
+ let _folderPathArr = _folderPath . split ( '/' ) ;
24
+ let _keysPath = { } , // path about
25
25
_replaceArr = { } ;
26
26
27
27
_keysPath = tool . initPrivKeysPath ( _keys , conf , _folderPathArr , _answers ) ;
@@ -36,11 +36,11 @@ let main = (fpConfig, conf) => {
36
36
if ( stderr ) {
37
37
log . error ( stderr ) ;
38
38
}
39
- var arr = { } ;
40
- var strArr = stdout . toString ( ) . split ( '\n' ) ;
39
+ let arr = { } ;
40
+ let strArr = stdout . toString ( ) . split ( '\n' ) ;
41
41
strArr . forEach ( ( item ) => {
42
- var i = item . indexOf ( '=' ) ;
43
- var _arr = [ item . substring ( 0 , i ) , item . substring ( i + 1 ) ] ;
42
+ let i = item . indexOf ( '=' ) ;
43
+ let _arr = [ item . substring ( 0 , i ) , item . substring ( i + 1 ) ] ;
44
44
if ( arr [ _arr [ 0 ] ] ) {
45
45
arr [ _arr [ 0 ] + '.pro' ] = arr [ _arr [ 0 ] ] ;
46
46
arr [ _arr [ 0 ] ] = _arr [ 1 ] ;
@@ -58,7 +58,11 @@ let main = (fpConfig, conf) => {
58
58
return new Promise ( ( res ) => {
59
59
( async function ( ) {
60
60
for ( let layer of _keysPath [ flag ] ) {
61
- fs . existsSync ( _cachePath [ flag ] + layer ) ? _cachePath [ flag ] = _cachePath [ flag ] + layer + '/' : await mkdir ( layer , flag ) ;
61
+ const _file = `${ _cachePath [ flag ] } ${ layer } ` ;
62
+
63
+ fs . existsSync ( _file )
64
+ ? _cachePath [ flag ] = `${ _file } /`
65
+ : await mkdir ( layer , flag ) ;
62
66
}
63
67
res ( _cachePath [ flag ] ) ;
64
68
} ) ( )
@@ -67,12 +71,13 @@ let main = (fpConfig, conf) => {
67
71
68
72
let mkdir = ( layer , flag ) => {
69
73
return new Promise ( ( res , rej ) => {
70
- fs . mkdir ( _cachePath [ flag ] + layer , ( err ) => {
74
+ const _file = `${ _cachePath [ flag ] } ${ layer } ` ;
75
+ fs . mkdir ( _file , ( err ) => {
71
76
if ( err ) {
72
77
log . error ( err ) ;
73
78
rej ( err ) ;
74
79
}
75
- _cachePath [ flag ] = _cachePath [ flag ] + layer + '/'
80
+ _cachePath [ flag ] = ` ${ _file } /` ;
76
81
res ( _cachePath [ flag ] ) ;
77
82
} ) ;
78
83
} )
@@ -81,8 +86,8 @@ let main = (fpConfig, conf) => {
81
86
let replaceAll = ( flag , replaceList = [ ] , info ) => {
82
87
for ( let layer of _tempConf [ flag ] ) {
83
88
let text = fs . readFileSync ( layer ) . toString ( ) ;
84
- var arr = layer . split ( '/' ) ;
85
- var k = arr [ arr . length - 1 ] . replace ( / \. / g, '' ) ;
89
+ let arr = layer . split ( '/' ) ;
90
+ let k = arr [ arr . length - 1 ] . replace ( / \. / g, '' ) ;
86
91
text = text . replace ( / ~ d a t e ~ / g, moment ( ) . format ( 'YYYY-MM-DD' ) )
87
92
. replace ( / ~ a u t h o r ~ / g, ( info [ 'user.name' ] || '' ) + '(' + ( info [ 'user.email' ] || '' ) + ')' )
88
93
. replace ( / ~ h e a d T i t l e ~ / g, _replaceArr . headTitle )
@@ -93,8 +98,8 @@ let main = (fpConfig, conf) => {
93
98
94
99
if ( replaceList . length ) {
95
100
replaceList . every ( function ( item ) {
96
- var global = item . global ? 'g' : '' ;
97
- var rex = new RegExp ( item . rex , global ) ;
101
+ let global = item . global ? 'g' : '' ;
102
+ let rex = new RegExp ( item . rex , global ) ;
98
103
text = text . replace ( rex , item . str ) ;
99
104
100
105
return true ;
@@ -117,11 +122,19 @@ let main = (fpConfig, conf) => {
117
122
return new Promise ( ( res , rej ) => {
118
123
( async ( ) => {
119
124
for ( let layer of _names [ flag ] ) {
120
- var k = layer . replace ( / \. / g, '' ) ;
121
- await fs . writeFile ( _cachePath [ flag ] + '/' + layer ,
122
- file [ k ] , ( err ) => {
123
- if ( err ) rej ( err )
124
- } )
125
+ const _k = layer . replace ( / \. / g, '' ) ;
126
+ const _file = `${ _cachePath [ flag ] } ${ layer } ` ;
127
+ const _exists = fs . existsSync ( _file ) ;
128
+
129
+ if ( _exists ) {
130
+ log . warn ( `${ _file } already exists.` ) ;
131
+ } else {
132
+ await fs . writeFile ( _file , file [ _k ] , ( err ) => {
133
+ if ( err ) {
134
+ rej ( err ) ;
135
+ }
136
+ } ) ;
137
+ }
125
138
}
126
139
res ( 'succ' ) ;
127
140
} ) ( )
@@ -134,7 +147,7 @@ let main = (fpConfig, conf) => {
134
147
await exists ( i . key ) ;
135
148
await readFile ( i . key ) ;
136
149
await writeFile ( await readFile ( i . key ) , i . key ) ;
137
- log . ok ( ' successfully created ' + i . key + ' directory and associated files' ) ;
150
+ log . ok ( ` successfully created ${ i . key } directory and associated files` ) ;
138
151
file = { } ;
139
152
} catch ( err ) {
140
153
log . error ( err ) ;
0 commit comments