2
0
mirror of https://github.com/tenrok/bootstrap.git synced 2026-06-14 18:42:30 +03:00

Merge branch 'v4-dev' of https://github.com/twbs/bootstrap into v4-dev

This commit is contained in:
Mark Otto
2017-02-26 15:35:17 -08:00
6 changed files with 58 additions and 110 deletions
-4
View File
@@ -28,10 +28,6 @@ restrictions:
Use [GitHub's "reactions" feature](https://github.com/blog/2119-add-reactions-to-pull-requests-issues-and-comments) Use [GitHub's "reactions" feature](https://github.com/blog/2119-add-reactions-to-pull-requests-issues-and-comments)
instead. We reserve the right to delete comments which violate this rule. instead. We reserve the right to delete comments which violate this rule.
* Please **do not** open issues or pull requests regarding the code in
[`Normalize`](https://github.com/necolas/normalize.css) (open them in
its repository).
* Please **do not** open issues regarding the official themes offered on <https://themes.getbootstrap.com/>. * Please **do not** open issues regarding the official themes offered on <https://themes.getbootstrap.com/>.
Instead, please email any questions or feedback regarding those themes to `themes AT getbootstrap DOT com`. Instead, please email any questions or feedback regarding those themes to `themes AT getbootstrap DOT com`.
+8 -16
View File
@@ -148,20 +148,6 @@ module.exports = function (grunt) {
} }
}, },
jekyll: {
options: {
bundleExec: true,
config: '_config.yml',
incremental: false
},
docs: {},
github: {
options: {
raw: 'github: true'
}
}
},
watch: { watch: {
src: { src: {
files: '<%= concat.bootstrap.src %>', files: '<%= concat.bootstrap.src %>',
@@ -209,6 +195,12 @@ module.exports = function (grunt) {
htmllint: { htmllint: {
command: 'npm run htmllint' command: 'npm run htmllint'
}, },
jekyll: {
command: 'npm run jekyll'
},
'jekyll-github': {
command: 'npm run jekyll-github'
},
sass: { sass: {
command: 'npm run sass' command: 'npm run sass'
}, },
@@ -271,7 +263,7 @@ module.exports = function (grunt) {
require('time-grunt')(grunt) require('time-grunt')(grunt)
// Docs HTML validation task // Docs HTML validation task
grunt.registerTask('validate-html', ['jekyll:docs', 'exec:htmllint', 'exec:htmlhint']) grunt.registerTask('validate-html', ['exec:jekyll', 'exec:htmllint', 'exec:htmlhint'])
var runSubset = function (subset) { var runSubset = function (subset) {
return !process.env.TWBS_TEST || process.env.TWBS_TEST === subset return !process.env.TWBS_TEST || process.env.TWBS_TEST === subset
@@ -329,7 +321,7 @@ module.exports = function (grunt) {
grunt.registerTask('lint-docs-css', ['exec:scss-lint-docs']) grunt.registerTask('lint-docs-css', ['exec:scss-lint-docs'])
grunt.registerTask('docs-js', ['exec:uglify-docs']) grunt.registerTask('docs-js', ['exec:uglify-docs'])
grunt.registerTask('docs', ['lint-docs-css', 'docs-css', 'docs-js', 'clean:docs', 'copy:docs']) grunt.registerTask('docs', ['lint-docs-css', 'docs-css', 'docs-js', 'clean:docs', 'copy:docs'])
grunt.registerTask('docs-github', ['jekyll:github']) grunt.registerTask('docs-github', ['exec:jekyll-github'])
grunt.registerTask('prep-release', ['dist', 'docs', 'docs-github', 'compress']) grunt.registerTask('prep-release', ['dist', 'docs', 'docs-github', 'compress'])
+2 -2
View File
@@ -560,17 +560,17 @@ Use contextual classes to color table rows or individual cells.
<!-- On rows --> <!-- On rows -->
<tr class="table-active">...</tr> <tr class="table-active">...</tr>
<tr class="table-success">...</tr> <tr class="table-success">...</tr>
<tr class="table-info">...</tr>
<tr class="table-warning">...</tr> <tr class="table-warning">...</tr>
<tr class="table-danger">...</tr> <tr class="table-danger">...</tr>
<tr class="table-info">...</tr>
<!-- On cells (`td` or `th`) --> <!-- On cells (`td` or `th`) -->
<tr> <tr>
<td class="table-active">...</td> <td class="table-active">...</td>
<td class="table-success">...</td> <td class="table-success">...</td>
<td class="table-info">...</td>
<td class="table-warning">...</td> <td class="table-warning">...</td>
<td class="table-danger">...</td> <td class="table-danger">...</td>
<td class="table-info">...</td>
</tr> </tr>
{% endhighlight %} {% endhighlight %}
+45 -84
View File
@@ -2,67 +2,58 @@
<html> <html>
<head> <head>
<meta charset="utf-8"> <meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<title>Bootstrap Plugin Test Suite</title> <title>Bootstrap Plugin Test Suite</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<!-- jQuery --> <!-- jQuery -->
<script src="../../docs/assets/js/vendor/jquery-slim.min.js"></script> <script src="../../docs/assets/js/vendor/jquery-slim.min.js"></script>
<script src="../../docs/assets/js/vendor/tether.min.js"></script> <script src="../../docs/assets/js/vendor/tether.min.js"></script>
<script>
// Disable jQuery event aliases to ensure we don't accidentally use any of them
(function () {
var eventAliases = [
'blur',
'focus',
'focusin',
'focusout',
'load',
'resize',
'scroll',
'unload',
'click',
'dblclick',
'mousedown',
'mouseup',
'mousemove',
'mouseover',
'mouseout',
'mouseenter',
'mouseleave',
'change',
'select',
'submit',
'keydown',
'keypress',
'keyup',
'error',
'contextmenu',
'hover',
'bind',
'unbind',
'delegate',
'undelegate'
]
for (var i = 0; i < eventAliases.length; i++) {
var eventAlias = eventAliases[i]
$.fn[eventAlias] = function () {
throw new Error('Using the ".' + eventAlias + '()" method is not allowed, so that Bootstrap can be compatible with custom jQuery builds which exclude the "event aliases" module that defines said method. See https://github.com/twbs/bootstrap/blob/master/CONTRIBUTING.md#js')
}
}
})()
</script>
<!-- QUnit --> <!-- QUnit -->
<link rel="stylesheet" href="vendor/qunit.css" media="screen"> <link rel="stylesheet" href="vendor/qunit.css" media="screen">
<script src="vendor/qunit.js"></script> <script src="vendor/qunit.js"></script>
<script> <script>
// See https://github.com/axemclion/grunt-saucelabs#test-result-details-with-qunit // Disable jQuery event aliases to ensure we don't accidentally use any of them
var log = [] [
'blur',
'focus',
'focusin',
'focusout',
'resize',
'scroll',
'click',
'dblclick',
'mousedown',
'mouseup',
'mousemove',
'mouseover',
'mouseout',
'mouseenter',
'mouseleave',
'change',
'select',
'submit',
'keydown',
'keypress',
'keyup',
'contextmenu'
].forEach(function(eventAlias) {
$.fn[eventAlias] = function() {
throw new Error('Using the ".' + eventAlias + '()" method is not allowed, so that Bootstrap can be compatible with custom jQuery builds which exclude the "event aliases" module that defines said method. See https://github.com/twbs/bootstrap/blob/master/CONTRIBUTING.md#js')
}
})
// Require assert.expect in each test // Require assert.expect in each test
QUnit.config.requireExpects = true QUnit.config.requireExpects = true
QUnit.done(function (testResults) {
// See https://github.com/axemclion/grunt-saucelabs#test-result-details-with-qunit
var log = []
var testName
QUnit.done(function(testResults) {
var tests = [] var tests = []
for (var i = 0, len = log.length; i < len; i++) { for (var i = 0; i < log.length; i++) {
var details = log[i] var details = log[i]
tests.push({ tests.push({
name: details.name, name: details.name,
@@ -77,9 +68,8 @@
window.global_test_results = testResults window.global_test_results = testResults
}) })
QUnit.testStart(function (testDetails) { QUnit.testStart(function(testDetails) {
$(window).scrollTop(0) QUnit.log(function(details) {
QUnit.log(function (details) {
if (!details.result) { if (!details.result) {
details.name = testDetails.name details.name = testDetails.name
log.push(details) log.push(details)
@@ -89,51 +79,23 @@
// Cleanup // Cleanup
QUnit.testDone(function () { QUnit.testDone(function () {
$('#qunit-fixture').empty()
$('#modal-test, .modal-backdrop').remove() $('#modal-test, .modal-backdrop').remove()
}) })
// Display fixture on-screen on iOS to avoid false positives // Display fixture on-screen on iOS to avoid false positives
// See https://github.com/twbs/bootstrap/pull/15955
if (/iPhone|iPad|iPod/.test(navigator.userAgent)) { if (/iPhone|iPad|iPod/.test(navigator.userAgent)) {
QUnit.begin(function() { QUnit.begin(function() {
$('#qunit-fixture').css({ top: 0, left: 0 }) $('#qunit-fixture').css({ top: 0, left: 0 })
}) })
QUnit.done(function () { QUnit.done(function() {
$('#qunit-fixture').css({ top: '', left: '' }) $('#qunit-fixture').css({ top: '', left: '' })
}) })
} }
// Disable deprecated global QUnit method aliases in preparation for QUnit v2
(function () {
var methodNames = [
'async',
'asyncTest',
'deepEqual',
'equal',
'expect',
'module',
'notDeepEqual',
'notEqual',
'notPropEqual',
'notStrictEqual',
'ok',
'propEqual',
'push',
'start',
'stop',
'strictEqual',
'test',
'throws'
];
for (var i = 0; i < methodNames.length; i++) {
var methodName = methodNames[i];
window[methodName] = undefined;
}
})();
</script> </script>
<!-- es6 Plugin sources --> <!-- Transpiled Plugins -->
<script src="../../js/dist/util.js"></script> <script src="../../js/dist/util.js"></script>
<script src="../../js/dist/alert.js"></script> <script src="../../js/dist/alert.js"></script>
<script src="../../js/dist/button.js"></script> <script src="../../js/dist/button.js"></script>
@@ -146,7 +108,7 @@
<script src="../../js/dist/tooltip.js"></script> <script src="../../js/dist/tooltip.js"></script>
<script src="../../js/dist/popover.js"></script> <script src="../../js/dist/popover.js"></script>
<!-- Unit tests --> <!-- Unit Tests -->
<script src="unit/alert.js"></script> <script src="unit/alert.js"></script>
<script src="unit/button.js"></script> <script src="unit/button.js"></script>
<script src="unit/carousel.js"></script> <script src="unit/carousel.js"></script>
@@ -157,7 +119,6 @@
<script src="unit/tab.js"></script> <script src="unit/tab.js"></script>
<script src="unit/tooltip.js"></script> <script src="unit/tooltip.js"></script>
<script src="unit/popover.js"></script> <script src="unit/popover.js"></script>
</head> </head>
<body> <body>
<div id="qunit-container"> <div id="qunit-container">
+2 -1
View File
@@ -23,6 +23,8 @@
"eslint": "eslint --ignore-path .eslintignore js && eslint --config js/tests/.eslintrc.json --env node grunt Gruntfile.js && eslint --config js/tests/.eslintrc.json docs/assets/js/src docs/assets/js/ie-emulation-modes-warning.js docs/assets/js/ie10-viewport-bug-workaround.js", "eslint": "eslint --ignore-path .eslintignore js && eslint --config js/tests/.eslintrc.json --env node grunt Gruntfile.js && eslint --config js/tests/.eslintrc.json docs/assets/js/src docs/assets/js/ie-emulation-modes-warning.js docs/assets/js/ie10-viewport-bug-workaround.js",
"htmlhint": "htmlhint --config docs/.htmlhintrc _gh_pages/", "htmlhint": "htmlhint --config docs/.htmlhintrc _gh_pages/",
"htmllint": "htmllint --rc docs/.htmllintrc _gh_pages/**/*.html js/tests/visual/*.html", "htmllint": "htmllint --rc docs/.htmllintrc _gh_pages/**/*.html js/tests/visual/*.html",
"jekyll": "bundle exec jekyll build",
"jekyll-github": "shx echo 'github: true' > $npm_config_tmp/twbsjekyll.yml && npm run jekyll -- --config _config.yml,$npm_config_tmp/twbsjekyll.yml && shx rm $npm_config_tmp/twbsjekyll.yml",
"postcss": "postcss --config grunt/postcss.js --replace dist/css/*.css", "postcss": "postcss --config grunt/postcss.js --replace dist/css/*.css",
"postcss-docs": "postcss --config grunt/postcss.js --no-map --replace docs/assets/css/docs.min.css && postcss --config grunt/postcss.js --no-map --replace docs/examples/**/*.css", "postcss-docs": "postcss --config grunt/postcss.js --no-map --replace docs/assets/css/docs.min.css && postcss --config grunt/postcss.js --no-map --replace docs/examples/**/*.css",
"sass": "node-sass --output-style expanded --source-map true --precision 6 scss/bootstrap.scss dist/css/bootstrap.css && node-sass --output-style expanded --source-map true --precision 6 scss/bootstrap-grid.scss dist/css/bootstrap-grid.css && node-sass --output-style expanded --source-map true --precision 6 scss/bootstrap-reboot.scss dist/css/bootstrap-reboot.css", "sass": "node-sass --output-style expanded --source-map true --precision 6 scss/bootstrap.scss dist/css/bootstrap.css && node-sass --output-style expanded --source-map true --precision 6 scss/bootstrap-grid.scss dist/css/bootstrap-grid.css && node-sass --output-style expanded --source-map true --precision 6 scss/bootstrap-reboot.scss dist/css/bootstrap-reboot.css",
@@ -67,7 +69,6 @@
"grunt-contrib-qunit": "^1.2.0", "grunt-contrib-qunit": "^1.2.0",
"grunt-contrib-watch": "^1.0.0", "grunt-contrib-watch": "^1.0.0",
"grunt-exec": "^1.0.1", "grunt-exec": "^1.0.1",
"grunt-jekyll": "^0.4.6",
"grunt-saucelabs": "^9.0.0", "grunt-saucelabs": "^9.0.0",
"grunt-stamp": "^0.3.0", "grunt-stamp": "^0.3.0",
"htmlhint": "^0.9.13", "htmlhint": "^0.9.13",
+1 -3
View File
@@ -145,9 +145,7 @@
background-size: $custom-select-bg-size; background-size: $custom-select-bg-size;
border: $custom-select-border-width solid $custom-select-border-color; border: $custom-select-border-width solid $custom-select-border-color;
@include border-radius($custom-select-border-radius); @include border-radius($custom-select-border-radius);
// Use vendor prefixes as `appearance` isn't part of the CSS spec. appearance: none;
-moz-appearance: none;
-webkit-appearance: none;
&:focus { &:focus {
border-color: $custom-select-focus-border-color; border-color: $custom-select-focus-border-color;