Initial import with skill sheet working
This commit is contained in:
46
node_modules/vinyl-fs/lib/src/read-contents/read-stream.js
generated
vendored
Normal file
46
node_modules/vinyl-fs/lib/src/read-contents/read-stream.js
generated
vendored
Normal file
@@ -0,0 +1,46 @@
|
||||
'use strict';
|
||||
|
||||
var fs = require('graceful-fs');
|
||||
var Composer = require('stream-composer');
|
||||
|
||||
var getCodec = require('../../codecs');
|
||||
var DEFAULT_ENCODING = require('../../constants').DEFAULT_ENCODING;
|
||||
|
||||
function streamFile(file, optResolver, onRead) {
|
||||
var encoding = optResolver.resolve('encoding', file);
|
||||
var codec = getCodec(encoding);
|
||||
if (encoding && !codec) {
|
||||
return onRead(new Error('Unsupported encoding: ' + encoding));
|
||||
}
|
||||
|
||||
var filePath = file.path;
|
||||
|
||||
file.contents = new Composer({
|
||||
open: function (cb) {
|
||||
var contents = fs.createReadStream(filePath);
|
||||
var streams = [contents];
|
||||
|
||||
if (encoding) {
|
||||
var removeBOM =
|
||||
codec.bomAware && optResolver.resolve('removeBOM', file);
|
||||
|
||||
if (removeBOM || codec.enc !== DEFAULT_ENCODING) {
|
||||
streams.push(codec.decodeStream({ removeBOM: removeBOM }));
|
||||
streams.push(getCodec(DEFAULT_ENCODING).encodeStream());
|
||||
}
|
||||
}
|
||||
|
||||
if (streams.length > 1) {
|
||||
this.setPipeline(streams);
|
||||
} else {
|
||||
this.setReadable(contents);
|
||||
}
|
||||
|
||||
cb();
|
||||
},
|
||||
});
|
||||
|
||||
onRead();
|
||||
}
|
||||
|
||||
module.exports = streamFile;
|
||||
Reference in New Issue
Block a user