This plugin resolve dependents of the source file.
var gulp = require('gulp'),
sass = require('gulp-sass'),
path = require('path'),
resolveDependents = require('gulp-resolve-dependents');
function sassResolver(filePath, fileContents){
var match, result = [],
pattern = /import "(.+?)";/mg;
while((match = pattern.exec(fileContents)) !== null){
result.push(path.resolve(path.dirname(filePath), match[1]));
}
return result;
}
gulp.task('default', function(){
gulp.src('./src/lib/example.scss')
.pipe(resolveDependents({
files: './src/**/*.scss',
resolver: sassResolver,
basePath: './src'
}))
.pipe(sass())
.pipe(gulp.dest('./dest/css'));
});
Type: String Project files.
Type: Function(filePath: String, fileContents: String): Array A function that resolve file dependencies.
Type: String Default: proeces.cwd This value is used to set base path of vinyl file and resolve reference path.
Type: Boolean Default: true If set to false, resolveDependents does not push files that was passed from the pipe.