Commit e40c1e5e authored by Chris Rebert's avatar Chris Rebert

add Grunt task for css-flip-ing & add RTL to Gruntfile configs

parent b22f064c
......@@ -184,7 +184,18 @@ module.exports = function (grunt) {
},
files: {
'dist/css/<%= pkg.name %>.min.css': 'dist/css/<%= pkg.name %>.css',
'dist/css/<%= pkg.name %>-theme.min.css': 'dist/css/<%= pkg.name %>-theme.css'
'dist/css/<%= pkg.name %>.rtl.min.css': 'dist/css/<%= pkg.name %>.rtl.css',
'dist/css/<%= pkg.name %>-theme.min.css': 'dist/css/<%= pkg.name %>-theme.css',
'dist/css/<%= pkg.name %>-theme.rtl.min.css': 'dist/css/<%= pkg.name %>-theme.rtl.css'
}
}
},
cssFlip: {
rtl: {
files: {
'dist/css/<%= pkg.name %>.rtl.css': 'dist/css/<%= pkg.name %>.css',
'dist/css/<%= pkg.name %>-theme.rtl.css': 'dist/css/<%= pkg.name %>-theme.css'
}
}
},
......@@ -214,9 +225,13 @@ module.exports = function (grunt) {
files: {
src: [
'dist/css/<%= pkg.name %>.css',
'dist/css/<%= pkg.name %>.rtl.css',
'dist/css/<%= pkg.name %>.min.css',
'dist/css/<%= pkg.name %>.rtl.min.css',
'dist/css/<%= pkg.name %>-theme.css',
'dist/css/<%= pkg.name %>-theme.min.css'
'dist/css/<%= pkg.name %>-theme.rtl.css',
'dist/css/<%= pkg.name %>-theme.min.css',
'dist/css/<%= pkg.name %>-theme.rtl.min.css'
]
}
}
......@@ -229,7 +244,9 @@ module.exports = function (grunt) {
dist: {
files: {
'dist/css/<%= pkg.name %>.css': 'dist/css/<%= pkg.name %>.css',
'dist/css/<%= pkg.name %>-theme.css': 'dist/css/<%= pkg.name %>-theme.css'
'dist/css/<%= pkg.name %>.rtl.css': 'dist/css/<%= pkg.name %>.rtl.css',
'dist/css/<%= pkg.name %>-theme.css': 'dist/css/<%= pkg.name %>-theme.css',
'dist/css/<%= pkg.name %>-theme.rtl.css': 'dist/css/<%= pkg.name %>-theme.rtl.css'
}
},
examples: {
......@@ -362,6 +379,7 @@ module.exports = function (grunt) {
// These plugins provide necessary tasks.
require('load-grunt-tasks')(grunt, {scope: 'devDependencies'});
grunt.loadTasks('./grunt/tasks/');
// Docs HTML validation task
grunt.registerTask('validate-html', ['jekyll', 'validation']);
......@@ -389,7 +407,8 @@ module.exports = function (grunt) {
grunt.registerTask('dist-js', ['concat', 'uglify']);
// CSS distribution task.
grunt.registerTask('dist-css', ['less', 'cssmin', 'csscomb', 'usebanner']);
grunt.registerTask('less-compile', ['less:compileCore', 'less:compileTheme']);
grunt.registerTask('dist-css', ['less-compile', 'cssFlip', 'less:minify', 'cssmin', 'csscomb', 'usebanner']);
// Docs distribution task.
grunt.registerTask('dist-docs', 'copy:docs');
......
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
/*!
* Bootstrap Grunt task for generating RTL CSS from LTR CSS using css-flip
* http://getbootstrap.com
* Copyright 2014 Twitter, Inc.
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
*/
'use strict';
var flip = require('css-flip');
module.exports = function(grunt) {
grunt.registerMultiTask('cssFlip', 'Generates RTL CSS from LTR CSS using css-flip', function () {
this.files.forEach(function (f) {
var unflippedCss = grunt.file.read(f.src);
var flippedCss = null;
try {
flippedCss = flip(unflippedCss);
}
catch (err) {
grunt.fail.warn(err);
}
grunt.file.write(f.dest, flippedCss);
grunt.log.writeln('File ' + f.dest.cyan + ' created.');
});
});
};
......@@ -27,6 +27,7 @@
"devDependencies": {
"btoa": "~1.1.1",
"canonical-json": "~0.0.3",
"css-flip": "~0.3.0",
"grunt": "~0.4.2",
"grunt-banner": "~0.2.0",
"grunt-contrib-clean": "~0.5.0",
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment