File tree Expand file tree Collapse file tree 5 files changed +31
-15
lines changed
Expand file tree Collapse file tree 5 files changed +31
-15
lines changed Original file line number Diff line number Diff line change 77const ProjectGenerator = require ( '../../lib/project-generator' ) ;
88const utils = require ( '../../lib/utils' ) ;
99
10- module . exports = class extends ProjectGenerator {
10+ module . exports = class AppGenerator extends ProjectGenerator {
1111 // Note: arguments and options should be defined in the constructor.
1212 constructor ( args , opts ) {
1313 super ( args , opts ) ;
Original file line number Diff line number Diff line change @@ -9,7 +9,7 @@ const utils = require('../../lib/utils');
99
1010const ProjectGenerator = require ( '../../lib/project-generator' ) ;
1111
12- module . exports = class extends ProjectGenerator {
12+ module . exports = class ExtensionGenerator extends ProjectGenerator {
1313 // Note: arguments and options should be defined in the constructor.
1414 constructor ( args , opts ) {
1515 super ( args , opts ) ;
Original file line number Diff line number Diff line change 44// License text available at https://opensource.org/licenses/MIT
55
66'use strict' ;
7- const rename = require ( 'gulp-rename' ) ;
87const BaseGenerator = require ( './base-generator' ) ;
98const utils = require ( './utils' ) ;
109
@@ -61,24 +60,15 @@ module.exports = class ProjectGenerator extends BaseGenerator {
6160 } ) ;
6261
6362 this . _setupRenameTransformer ( ) ;
63+ super . _setupGenerator ( ) ;
6464 }
6565
6666 /**
6767 * Registers a Transform Stream with Yeoman. Removes `.ejs` extension
6868 * from files that have it during project generation.
6969 */
7070 _setupRenameTransformer ( ) {
71- this . registerTransformStream (
72- rename ( function ( file ) {
73- // extname already contains a leading '.'
74- const fileName = `${ file . basename } ${ file . extname } ` ;
75- const result = fileName . match ( / ( .+ ) ( .t s | .j s o n | .j s | .m d ) \. e j s $ / ) ;
76- if ( result ) {
77- file . extname = result [ 2 ] ;
78- file . basename = result [ 1 ] ;
79- }
80- } ) ,
81- ) ;
71+ this . registerTransformStream ( utils . renameEJS ( ) ) ;
8272 }
8373
8474 setOptions ( ) {
Original file line number Diff line number Diff line change @@ -9,6 +9,7 @@ const debug = require('../lib/debug')('utils');
99const fs = require ( 'fs' ) ;
1010const path = require ( 'path' ) ;
1111const util = require ( 'util' ) ;
12+ const stream = require ( 'stream' ) ;
1213var semver = require ( 'semver' ) ;
1314const regenerate = require ( 'regenerate' ) ;
1415const _ = require ( 'lodash' ) ;
@@ -208,3 +209,29 @@ exports.getDependencies = function() {
208209 }
209210 return deps ;
210211} ;
212+
213+ /**
214+ * Rename EJS files
215+ */
216+ exports . renameEJS = function ( ) {
217+ const renameStream = new stream . Transform ( { objectMode : true } ) ;
218+
219+ renameStream . _transform = function ( file , enc , callback ) {
220+ const filePath = file . relative ;
221+ const dirname = path . dirname ( filePath ) ;
222+ let extname = path . extname ( filePath ) ;
223+ let basename = path . basename ( filePath , extname ) ;
224+
225+ // extname already contains a leading '.'
226+ const fileName = `${ basename } ${ extname } ` ;
227+ const result = fileName . match ( / ( .+ ) ( .t s | .j s o n | .j s | .m d ) \. e j s $ / ) ;
228+ if ( result ) {
229+ extname = result [ 2 ] ;
230+ basename = result [ 1 ] ;
231+ file . path = path . join ( file . base , dirname , basename + extname ) ;
232+ }
233+ callback ( null , file ) ;
234+ } ;
235+
236+ return renameStream ;
237+ } ;
Original file line number Diff line number Diff line change 4343 "chalk" : " ^2.3.2" ,
4444 "change-case" : " ^3.0.2" ,
4545 "debug" : " ^3.1.0" ,
46- "gulp-rename" : " ^1.2.2" ,
4746 "lodash" : " ^4.17.5" ,
4847 "minimist" : " ^1.2.0" ,
4948 "pacote" : " ^8.1.1" ,
You can’t perform that action at this time.
0 commit comments