diff --git a/scripts/docs/gulp-tasks.js b/scripts/docs/gulp-tasks.js index 99400d68fd..db20c16880 100644 --- a/scripts/docs/gulp-tasks.js +++ b/scripts/docs/gulp-tasks.js @@ -31,6 +31,43 @@ module.exports = function(gulp, flags) { .pipe(gulp.dest('dist/ionic-site/docs/v2/dist')); }) + gulp.task('docs.sass-variables', function() { + var fs = require('fs'); + var gutil = require('gulp-util'); + var es = require('event-stream'); + var concat = require('gulp-concat'); + var inspect = require('util').inspect; + + var variables = []; + var outputFile = 'dist/ionic-site/docs/v2/data/sass.json'; + + // todo this is the right one + return gulp.src('ionic/**/*.scss') + .pipe(es.map(function(file, callback) { + // find $ declarations here, pass them along in the pipeline + var contents = file.contents.toString(); + + fs.createReadStream(file.path, {flags: 'r'}) + .pipe(es.split()) + .pipe(es.map(function (line, callback) { + //do something with the line + var firstChar = line.charAt(0); + + if (firstChar == '$') { + var variableLine = line.split(":"); + variables.push({ + "variable": variableLine[0] + }); + } + callback(); + })); + + callback(); + }).on('end', function() { + gutil.log("Writing to file", gutil.colors.cyan(outputFile)); + fs.writeFileSync(outputFile, JSON.stringify(variables)); + })); + }) gulp.task('docs.index', function() { var lunr = require('lunr');