Commit 25ec09f0 authored by Mark Otto's avatar Mark Otto

Merge pull request #11790 from twbs/drop_recess_for_less

Drop grunt-recess for grunt-contrib-less
parents 7d4171cc d466d527
{
"always-semicolon": true,
"block-indent": 2,
"colon-space": true,
"color-case": "lower",
"color-shorthand": true,
"combinator-space": true,
"element-case": "lower",
"eof-newline": true,
"leading-zero": false,
"remove-empty-rulesets": true,
"rule-indent": 2,
"stick-brace": true,
"strip-spaces": true,
"unitless-zero": true,
"vendor-prefix-align": true,
"sort-order": [
[
"position",
"top",
"right",
"bottom",
"left",
"z-index",
"display",
"float",
"width",
"min-width",
"max-width",
"height",
"min-height",
"max-height",
"-webkit-box-sizing",
"-moz-box-sizing",
"box-sizing",
"padding",
"padding-top",
"padding-right",
"padding-bottom",
"padding-left",
"margin",
"margin-top",
"margin-right",
"margin-bottom",
"margin-left",
"overflow",
"overflow-x",
"overflow-y",
"-ms-overflow-x",
"-ms-overflow-y",
"clip",
"clear",
"font",
"font-family",
"font-size",
"font-style",
"font-weight",
"font-variant",
"font-size-adjust",
"font-stretch",
"font-effect",
"font-emphasize",
"font-emphasize-position",
"font-emphasize-style",
"font-smooth",
"-webkit-hyphens",
"-moz-hyphens",
"hyphens",
"line-height",
"color",
"text-align",
"-webkit-text-align-last",
"-moz-text-align-last",
"-ms-text-align-last",
"text-align-last",
"text-emphasis",
"text-emphasis-color",
"text-emphasis-style",
"text-emphasis-position",
"text-decoration",
"text-indent",
"text-justify",
"text-outline",
"-ms-text-overflow",
"text-overflow",
"text-overflow-ellipsis",
"text-overflow-mode",
"text-shadow",
"text-transform",
"text-wrap",
"letter-spacing",
"-ms-word-break",
"word-break",
"word-spacing",
"-ms-word-wrap",
"word-wrap",
"-moz-tab-size",
"-o-tab-size",
"tab-size",
"white-space",
"vertical-align",
"list-style",
"list-style-position",
"list-style-type",
"list-style-image",
"pointer-events",
"cursor",
"visibility",
"zoom",
"flex-direction",
"flex-order",
"flex-pack",
"flex-align",
"table-layout",
"empty-cells",
"caption-side",
"border-spacing",
"border-collapse",
"content",
"quotes",
"counter-reset",
"counter-increment",
"resize",
"-webkit-user-select",
"-moz-user-select",
"-ms-user-select",
"user-select",
"nav-index",
"nav-up",
"nav-right",
"nav-down",
"nav-left",
"filter:progid:DXImageTransform.Microsoft.AlphaImageLoader",
"background",
"background-color",
"-ms-filter:\\'progid:DXImageTransform.Microsoft.gradient",
"filter:progid:DXImageTransform.Microsoft.gradient",
"background-image",
"background-repeat",
"background-attachment",
"background-position",
"background-position-x",
"background-position-y",
"-webkit-background-clip",
"-moz-background-clip",
"background-clip",
"background-origin",
"-webkit-background-size",
"-moz-background-size",
"-o-background-size",
"background-size",
"border",
"border-color",
"border-style",
"border-width",
"border-top",
"border-top-color",
"border-top-style",
"border-top-width",
"border-right",
"border-right-color",
"border-right-style",
"border-right-width",
"border-bottom",
"border-bottom-color",
"border-bottom-style",
"border-bottom-width",
"border-left",
"border-left-color",
"border-left-style",
"border-left-width",
"border-radius",
"border-top-left-radius",
"border-top-right-radius",
"border-bottom-right-radius",
"border-bottom-left-radius",
"-webkit-border-image",
"-moz-border-image",
"-o-border-image",
"border-image",
"-webkit-border-image-source",
"-moz-border-image-source",
"-o-border-image-source",
"border-image-source",
"-webkit-border-image-slice",
"-moz-border-image-slice",
"-o-border-image-slice",
"border-image-slice",
"-webkit-border-image-width",
"-moz-border-image-width",
"-o-border-image-width",
"border-image-width",
"-webkit-border-image-outset",
"-moz-border-image-outset",
"-o-border-image-outset",
"border-image-outset",
"-webkit-border-image-repeat",
"-moz-border-image-repeat",
"-o-border-image-repeat",
"border-image-repeat",
"outline",
"outline-width",
"outline-style",
"outline-color",
"outline-offset",
"-webkit-box-shadow",
"-moz-box-shadow",
"box-shadow",
"filter:progid:DXImageTransform.Microsoft.Alpha(Opacity",
"-ms-filter:\\'progid:DXImageTransform.Microsoft.Alpha",
"opacity",
"-ms-interpolation-mode",
"-webkit-transition",
"-moz-transition",
"-ms-transition",
"-o-transition",
"transition",
"-webkit-transition-delay",
"-moz-transition-delay",
"-ms-transition-delay",
"-o-transition-delay",
"transition-delay",
"-webkit-transition-timing-function",
"-moz-transition-timing-function",
"-ms-transition-timing-function",
"-o-transition-timing-function",
"transition-timing-function",
"-webkit-transition-duration",
"-moz-transition-duration",
"-ms-transition-duration",
"-o-transition-duration",
"transition-duration",
"-webkit-transition-property",
"-moz-transition-property",
"-ms-transition-property",
"-o-transition-property",
"transition-property",
"-webkit-transform",
"-moz-transform",
"-ms-transform",
"-o-transform",
"transform",
"-webkit-transform-origin",
"-moz-transform-origin",
"-ms-transform-origin",
"-o-transform-origin",
"transform-origin",
"-webkit-animation",
"-moz-animation",
"-ms-animation",
"-o-animation",
"animation",
"-webkit-animation-name",
"-moz-animation-name",
"-ms-animation-name",
"-o-animation-name",
"animation-name",
"-webkit-animation-duration",
"-moz-animation-duration",
"-ms-animation-duration",
"-o-animation-duration",
"animation-duration",
"-webkit-animation-play-state",
"-moz-animation-play-state",
"-ms-animation-play-state",
"-o-animation-play-state",
"animation-play-state",
"-webkit-animation-timing-function",
"-moz-animation-timing-function",
"-ms-animation-timing-function",
"-o-animation-timing-function",
"animation-timing-function",
"-webkit-animation-delay",
"-moz-animation-delay",
"-ms-animation-delay",
"-o-animation-delay",
"animation-delay",
"-webkit-animation-iteration-count",
"-moz-animation-iteration-count",
"-ms-animation-iteration-count",
"-o-animation-iteration-count",
"animation-iteration-count",
"-webkit-animation-direction",
"-moz-animation-direction",
"-ms-animation-direction",
"-o-animation-direction",
"animation-direction"
]
]
}
{
"adjoining-classes": false,
"box-sizing": false,
"box-model": false,
"compatible-vendor-prefixes": false,
"floats": false,
"font-sizes": false,
"gradients": false,
"important": false,
"known-properties": false,
"outline-none": false,
"qualified-headings": false,
"regex-selectors": false,
"text-indent": false,
"unique-headings": false,
"universal-selector": false,
"unqualified-attributes": false
}
...@@ -58,6 +58,13 @@ module.exports = function (grunt) { ...@@ -58,6 +58,13 @@ module.exports = function (grunt) {
} }
}, },
csslint: {
options: {
csslintrc: '.csslintrc'
},
src: ['dist/css/bootstrap.css', 'dist/css/bootstrap-theme.css']
},
concat: { concat: {
options: { options: {
banner: '<%= banner %><%= jqueryCheck %>', banner: '<%= banner %><%= jqueryCheck %>',
...@@ -103,32 +110,51 @@ module.exports = function (grunt) { ...@@ -103,32 +110,51 @@ module.exports = function (grunt) {
} }
}, },
recess: { less: {
options: { compile: {
compile: true, files: {
banner: '<%= banner %>' 'dist/css/<%= pkg.name %>.css': 'less/bootstrap.less',
}, 'dist/css/<%= pkg.name %>-theme.css': 'less/theme.less'
bootstrap: { }
src: ['less/bootstrap.less'],
dest: 'dist/css/<%= pkg.name %>.css'
}, },
min: { minify: {
options: { options: {
compress: true cleancss: true,
report: 'min'
}, },
src: ['less/bootstrap.less'], files: {
dest: 'dist/css/<%= pkg.name %>.min.css' 'dist/css/<%= pkg.name %>.min.css': 'dist/css/<%= pkg.name %>.css',
}, 'dist/css/<%= pkg.name %>-theme.min.css': 'dist/css/<%= pkg.name %>-theme.css'
theme: { }
src: ['less/theme.less'], }
dest: 'dist/css/<%= pkg.name %>-theme.css' },
},
theme_min: { usebanner: {
dist: {
options: {
position: 'top',
banner: '<%= banner %>'
},
files: {
src: [
'dist/css/<%= pkg.name %>.css',
'dist/css/<%= pkg.name %>.min.css',
'dist/css/<%= pkg.name %>-theme.css',
'dist/css/<%= pkg.name %>-theme.min.css',
]
}
}
},
csscomb: {
sort: {
options: { options: {
compress: true sortOrder: '.csscomb.json'
}, },
src: ['less/theme.less'], files: {
dest: 'dist/css/<%= pkg.name %>-theme.min.css' 'dist/css/<%= pkg.name %>.css': ['dist/css/<%= pkg.name %>.css'],
'dist/css/<%= pkg.name %>-theme.css': ['dist/css/<%= pkg.name %>-theme.css'],
}
} }
}, },
...@@ -182,9 +208,9 @@ module.exports = function (grunt) { ...@@ -182,9 +208,9 @@ module.exports = function (grunt) {
files: '<%= jshint.test.src %>', files: '<%= jshint.test.src %>',
tasks: ['jshint:test', 'qunit'] tasks: ['jshint:test', 'qunit']
}, },
recess: { less: {
files: 'less/*.less', files: 'less/*.less',
tasks: ['recess'] tasks: ['less']
} }
}, },
...@@ -296,18 +322,21 @@ module.exports = function (grunt) { ...@@ -296,18 +322,21 @@ module.exports = function (grunt) {
// These plugins provide necessary tasks. // These plugins provide necessary tasks.
grunt.loadNpmTasks('grunt-banner');
grunt.loadNpmTasks('grunt-contrib-clean'); grunt.loadNpmTasks('grunt-contrib-clean');
grunt.loadNpmTasks('grunt-contrib-concat'); grunt.loadNpmTasks('grunt-contrib-concat');
grunt.loadNpmTasks('grunt-contrib-connect'); grunt.loadNpmTasks('grunt-contrib-connect');
grunt.loadNpmTasks('grunt-contrib-copy'); grunt.loadNpmTasks('grunt-contrib-copy');
grunt.loadNpmTasks('grunt-contrib-csslint');
grunt.loadNpmTasks('grunt-contrib-jshint'); grunt.loadNpmTasks('grunt-contrib-jshint');
grunt.loadNpmTasks('grunt-contrib-less');
grunt.loadNpmTasks('grunt-contrib-qunit'); grunt.loadNpmTasks('grunt-contrib-qunit');
grunt.loadNpmTasks('grunt-contrib-uglify'); grunt.loadNpmTasks('grunt-contrib-uglify');
grunt.loadNpmTasks('grunt-contrib-watch'); grunt.loadNpmTasks('grunt-contrib-watch');
grunt.loadNpmTasks('grunt-csscomb');
grunt.loadNpmTasks('grunt-html-validation'); grunt.loadNpmTasks('grunt-html-validation');
grunt.loadNpmTasks('grunt-jekyll'); grunt.loadNpmTasks('grunt-jekyll');
grunt.loadNpmTasks('grunt-jscs-checker'); grunt.loadNpmTasks('grunt-jscs-checker');
grunt.loadNpmTasks('grunt-recess');
grunt.loadNpmTasks('grunt-saucelabs'); grunt.loadNpmTasks('grunt-saucelabs');
grunt.loadNpmTasks('grunt-sed'); grunt.loadNpmTasks('grunt-sed');
...@@ -327,7 +356,7 @@ module.exports = function (grunt) { ...@@ -327,7 +356,7 @@ module.exports = function (grunt) {
grunt.registerTask('dist-js', ['concat', 'uglify']); grunt.registerTask('dist-js', ['concat', 'uglify']);
// CSS distribution task. // CSS distribution task.
grunt.registerTask('dist-css', ['recess']); grunt.registerTask('dist-css', ['less', 'csscomb', 'usebanner']);
// Fonts distribution task. // Fonts distribution task.
grunt.registerTask('dist-fonts', ['copy']); grunt.registerTask('dist-fonts', ['copy']);
......
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This source diff could not be displayed because it is too large. You can view the blob instead.
This diff is collapsed.
...@@ -37,7 +37,7 @@ ...@@ -37,7 +37,7 @@
// Optional: Group multiple button groups together for a toolbar // Optional: Group multiple button groups together for a toolbar
.btn-toolbar { .btn-toolbar {
.clearfix(); &:extend(.clearfix all);
.btn-group { .btn-group {
float: left; float: left;
...@@ -157,7 +157,7 @@ ...@@ -157,7 +157,7 @@
// Clear floats so dropdown menus can be properly placed // Clear floats so dropdown menus can be properly placed
> .btn-group { > .btn-group {
.clearfix(); &:extend(.clearfix all);
> .btn { > .btn {
float: none; float: none;
} }
......
...@@ -598,14 +598,14 @@ ...@@ -598,14 +598,14 @@
margin-left: auto; margin-left: auto;
padding-left: (@grid-gutter-width / 2); padding-left: (@grid-gutter-width / 2);
padding-right: (@grid-gutter-width / 2); padding-right: (@grid-gutter-width / 2);
.clearfix(); &:extend(.clearfix all);
} }
// Creates a wrapper for a series of columns // Creates a wrapper for a series of columns
.make-row(@gutter: @grid-gutter-width) { .make-row(@gutter: @grid-gutter-width) {
margin-left: (@gutter / -2); margin-left: (@gutter / -2);
margin-right: (@gutter / -2); margin-right: (@gutter / -2);
.clearfix(); &:extend(.clearfix all);
} }
// Generate the extra small columns // Generate the extra small columns
......
...@@ -98,7 +98,7 @@ ...@@ -98,7 +98,7 @@
padding: (@modal-inner-padding - 1) @modal-inner-padding @modal-inner-padding; padding: (@modal-inner-padding - 1) @modal-inner-padding @modal-inner-padding;
text-align: right; // right align buttons text-align: right; // right align buttons
border-top: 1px solid @modal-footer-border-color; border-top: 1px solid @modal-footer-border-color;
.clearfix(); // clear it in case folks use .pull-* classes on buttons &:extend(.clearfix all); // clear it in case folks use .pull-* classes on buttons
// Properly space out buttons // Properly space out buttons
.btn + .btn { .btn + .btn {
......
...@@ -15,7 +15,7 @@ ...@@ -15,7 +15,7 @@
border: 1px solid transparent; border: 1px solid transparent;
// Prevent floats from breaking the navbar // Prevent floats from breaking the navbar
.clearfix(); &:extend(.clearfix all);
@media (min-width: @grid-float-breakpoint) { @media (min-width: @grid-float-breakpoint) {
border-radius: @navbar-border-radius; border-radius: @navbar-border-radius;
...@@ -29,7 +29,7 @@ ...@@ -29,7 +29,7 @@
// styling of responsive aspects. // styling of responsive aspects.
.navbar-header { .navbar-header {
.clearfix(); &:extend(.clearfix all);
@media (min-width: @grid-float-breakpoint) { @media (min-width: @grid-float-breakpoint) {
float: left; float: left;
...@@ -54,7 +54,7 @@ ...@@ -54,7 +54,7 @@
padding-left: @navbar-padding-horizontal; padding-left: @navbar-padding-horizontal;
border-top: 1px solid transparent; border-top: 1px solid transparent;
box-shadow: inset 0 1px 0 rgba(255,255,255,.1); box-shadow: inset 0 1px 0 rgba(255,255,255,.1);
.clearfix(); &:extend(.clearfix all);
-webkit-overflow-scrolling: touch; -webkit-overflow-scrolling: touch;
&.in { &.in {
......
...@@ -10,7 +10,7 @@ ...@@ -10,7 +10,7 @@
margin-bottom: 0; margin-bottom: 0;
padding-left: 0; // Override default ul/ol padding-left: 0; // Override default ul/ol
list-style: none; list-style: none;
.clearfix(); &:extend(.clearfix all);
> li { > li {
position: relative; position: relative;
......
...@@ -8,7 +8,7 @@ ...@@ -8,7 +8,7 @@
margin: @line-height-computed 0; margin: @line-height-computed 0;
list-style: none; list-style: none;
text-align: center; text-align: center;
.clearfix(); &:extend(.clearfix all);
li { li {
display: inline; display: inline;
> a, > a,
......
...@@ -15,7 +15,7 @@ ...@@ -15,7 +15,7 @@
// Panel contents // Panel contents
.panel-body { .panel-body {
padding: 15px; padding: 15px;
.clearfix(); &:extend(.clearfix all);
} }
......
...@@ -202,7 +202,7 @@ dd { ...@@ -202,7 +202,7 @@ dd {
} }
dd { dd {
margin-left: @component-offset-horizontal; margin-left: @component-offset-horizontal;
.clearfix(); // Clear the floated `dt` if an empty `dd` is present &:extend(.clearfix all); // Clear the floated `dt` if an empty `dd` is present
} }
} }
} }
......
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