github.com/kayoticsully/syncthing@v0.8.9-0.20140724133906-c45a2fdc03f8/assets/bootstrap-3.1.1/grunt/bs-raw-files-generator.js (about) 1 /* global btoa: true */ 2 /*! 3 * Bootstrap Grunt task for generating raw-files.min.js for the Customizer 4 * http://getbootstrap.com 5 * Copyright 2014 Twitter, Inc. 6 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) 7 */ 8 'use strict'; 9 var btoa = require('btoa'); 10 var fs = require('fs'); 11 12 function getFiles(type) { 13 var files = {}; 14 fs.readdirSync(type) 15 .filter(function (path) { 16 return type === 'fonts' ? true : new RegExp('\\.' + type + '$').test(path); 17 }) 18 .forEach(function (path) { 19 var fullPath = type + '/' + path; 20 files[path] = (type === 'fonts' ? btoa(fs.readFileSync(fullPath)) : fs.readFileSync(fullPath, 'utf8')); 21 }); 22 return 'var __' + type + ' = ' + JSON.stringify(files) + '\n'; 23 } 24 25 module.exports = function generateRawFilesJs(banner) { 26 if (!banner) { 27 banner = ''; 28 } 29 var files = banner + getFiles('js') + getFiles('less') + getFiles('fonts'); 30 fs.writeFileSync('docs/assets/js/raw-files.min.js', files); 31 };