You cannot select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
	
	
		
			47 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			JavaScript
		
	
		
		
			
		
	
	
			47 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			JavaScript
		
	
| 
											11 years ago
										 | /*! | ||
|  |  * Bootstrap Grunt task for generating raw-files.min.js for the Customizer | ||
|  |  * http://getbootstrap.com
 | ||
|  |  * Copyright 2014 Twitter, Inc. | ||
|  |  * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
 | ||
|  |  */ | ||
|  | 
 | ||
|  | /* global btoa: true */ | ||
|  | 
 | ||
|  | 'use strict'; | ||
|  | var fs = require('fs'); | ||
|  | var btoa = require('btoa'); | ||
|  | var glob = require('glob'); | ||
|  | 
 | ||
|  | function getFiles(type) { | ||
|  |   var files = {}; | ||
|  |   var recursive = (type === 'less'); | ||
|  |   var globExpr = (recursive ? '/**/*' : '/*'); | ||
|  |   glob.sync(type + globExpr) | ||
|  |     .filter(function (path) { | ||
|  |       return type === 'fonts' ? true : new RegExp('\\.' + type + '$').test(path); | ||
|  |     }) | ||
|  |     .forEach(function (fullPath) { | ||
|  |       var relativePath = fullPath.replace(/^[^/]+\//, ''); | ||
|  |       files[relativePath] = (type === 'fonts' ? btoa(fs.readFileSync(fullPath)) : fs.readFileSync(fullPath, 'utf8')); | ||
|  |     }); | ||
|  |   return 'var __' + type + ' = ' + JSON.stringify(files) + '\n'; | ||
|  | } | ||
|  | 
 | ||
|  | module.exports = function generateRawFilesJs(grunt, banner) { | ||
|  |   if (!banner) { | ||
|  |     banner = ''; | ||
|  |   } | ||
|  |   var dirs = ['js', 'less', 'fonts']; | ||
|  |   var files = banner + dirs.map(getFiles).reduce(function (combined, file) { | ||
|  |     return combined + file; | ||
|  |   }, ''); | ||
|  |   var rawFilesJs = 'docs/assets/js/raw-files.min.js'; | ||
|  |   try { | ||
|  |     fs.writeFileSync(rawFilesJs, files); | ||
|  |   } | ||
|  |   catch (err) { | ||
|  |     grunt.fail.warn(err); | ||
|  |   } | ||
|  |   grunt.log.writeln('File ' + rawFilesJs.cyan + ' created.'); | ||
|  | }; |