1234567891011121314151617181920212223242526272829303132333435363738 |
- 'use strict';
- var through = require('through2');
- var sourcemap = require('vinyl-sourcemap');
- function sourcemapStream(optResolver) {
- function saveSourcemap(file, enc, callback) {
- var self = this;
- var srcMap = optResolver.resolve('sourcemaps', file);
- if (!srcMap) {
- return callback(null, file);
- }
- var srcMapLocation = (typeof srcMap === 'string' ? srcMap : undefined);
- sourcemap.write(file, srcMapLocation, onWrite);
- function onWrite(sourcemapErr, updatedFile, sourcemapFile) {
- if (sourcemapErr) {
- return callback(sourcemapErr);
- }
- self.push(updatedFile);
- if (sourcemapFile) {
- self.push(sourcemapFile);
- }
- callback();
- }
- }
- return through.obj(saveSourcemap);
- }
- module.exports = sourcemapStream;
|