diff options
Diffstat (limited to 'node_modules/gulp-rename/index.js')
-rw-r--r-- | node_modules/gulp-rename/index.js | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/node_modules/gulp-rename/index.js b/node_modules/gulp-rename/index.js index 77f812d41..c249a71ad 100644 --- a/node_modules/gulp-rename/index.js +++ b/node_modules/gulp-rename/index.js @@ -3,12 +3,14 @@ var Stream = require('stream'); var Path = require('path'); -function gulpRename(obj) { +function gulpRename(obj, options) { + + options = options || {}; var stream = new Stream.Transform({objectMode: true}); function parsePath(path) { - var extname = Path.extname(path); + var extname = options.multiExt ? Path.basename(path).slice(Path.basename(path).indexOf('.')) : Path.extname(path); return { dirname: Path.dirname(path), basename: Path.basename(path, extname), @@ -16,8 +18,10 @@ function gulpRename(obj) { }; } - stream._transform = function(file, unused, callback) { + stream._transform = function (originalFile, unused, callback) { + + var file = originalFile.clone({contents: false}); var parsedPath = parsePath(file.relative); var path; @@ -29,7 +33,7 @@ function gulpRename(obj) { } else if (type === 'function') { - obj(parsedPath); + obj(parsedPath, file); path = Path.join(parsedPath.dirname, parsedPath.basename + parsedPath.extname); } else if (type === 'object' && obj !== undefined && obj !== null) { |