public/vendor/bootstrap/Gruntfile.js in twigg-app-0.0.1 vs public/vendor/bootstrap/Gruntfile.js in twigg-app-0.0.2

- old
+ new

@@ -81,13 +81,32 @@ options: { compress: true }, src: ['less/bootstrap.less'], dest: 'dist/css/<%= pkg.name %>.min.css' + }, + theme: { + src: ['less/theme.less'], + dest: 'dist/css/<%= pkg.name %>-theme.css' + }, + theme_min: { + options: { + compress: true + }, + src: ['less/theme.less'], + dest: 'dist/css/<%= pkg.name %>-theme.min.css' } }, + copy: { + fonts: { + expand: true, + src: ["fonts/*"], + dest: 'dist/' + } + }, + qunit: { options: { inject: 'js/tests/unit/phantom.js' }, files: ['js/tests/*.html'] @@ -106,11 +125,11 @@ docs: {} }, validation: { options: { - reset: true, + reset: true }, files: { src: ["_gh_pages/**/*.html"] } }, @@ -134,25 +153,25 @@ // These plugins provide necessary tasks. grunt.loadNpmTasks('grunt-contrib-clean'); grunt.loadNpmTasks('grunt-contrib-concat'); grunt.loadNpmTasks('grunt-contrib-connect'); + grunt.loadNpmTasks('grunt-contrib-copy'); grunt.loadNpmTasks('grunt-contrib-jshint'); grunt.loadNpmTasks('grunt-contrib-qunit'); grunt.loadNpmTasks('grunt-contrib-uglify'); grunt.loadNpmTasks('grunt-contrib-watch'); grunt.loadNpmTasks('grunt-html-validation'); grunt.loadNpmTasks('grunt-jekyll'); grunt.loadNpmTasks('grunt-recess'); grunt.loadNpmTasks('browserstack-runner'); - // Docs HTML validation task - grunt.registerTask('validate-docs', ['jekyll', 'validation']); + grunt.registerTask('validate-html', ['jekyll', 'validation']); // Test task. - var testSubtasks = ['jshint', 'qunit', 'validate-docs']; + var testSubtasks = ['dist-css', 'jshint', 'qunit', 'validate-html']; // Only run BrowserStack tests under Travis if (process.env.TRAVIS) { // Only run BrowserStack tests if this is a mainline commit in twbs/bootstrap, or you have your own BrowserStack key if ((process.env.TRAVIS_REPO_SLUG === 'twbs/bootstrap' && process.env.TRAVIS_PULL_REQUEST === 'false') || process.env.TWBS_HAVE_OWN_BROWSERSTACK_KEY) { testSubtasks.push('browserstack_runner'); @@ -164,32 +183,35 @@ grunt.registerTask('dist-js', ['concat', 'uglify']); // CSS distribution task. grunt.registerTask('dist-css', ['recess']); + // Fonts distribution task. + grunt.registerTask('dist-fonts', ['copy']); + // Full distribution task. - grunt.registerTask('dist', ['clean', 'dist-css', 'dist-js']); + grunt.registerTask('dist', ['clean', 'dist-css', 'dist-fonts', 'dist-js']); // Default task. - grunt.registerTask('default', ['test', 'dist']); + grunt.registerTask('default', ['test', 'dist', 'build-customizer']); // task for building customizer grunt.registerTask('build-customizer', 'Add scripts/less files to customizer.', function () { var fs = require('fs') function getFiles(type) { var files = {} fs.readdirSync(type) .filter(function (path) { - return new RegExp('\\.' + type + '$').test(path) + return type == 'fonts' ? true : new RegExp('\\.' + type + '$').test(path) }) .forEach(function (path) { return files[path] = fs.readFileSync(type + '/' + path, 'utf8') }) return 'var __' + type + ' = ' + JSON.stringify(files) + '\n' } var customize = fs.readFileSync('customize.html', 'utf-8') - var files = '<!-- generated -->\n<script id="files">\n' + getFiles('js') + getFiles('less') + '<\/script>\n<!-- /generated -->' - fs.writeFileSync('customize.html', customize.replace(/<!-- generated -->(.|[\n\r])*<!-- \/generated -->/, files)) + var files = getFiles('js') + getFiles('less') + getFiles('fonts') + fs.writeFileSync('assets/js/raw-files.js', files) }); -}; +}; \ No newline at end of file