mirror of
https://github.com/twbs/bootstrap.git
synced 2025-01-18 10:52:19 +01:00
Merge branch 'v4-dev' of https://github.com/twbs/bootstrap into v4-dev
This commit is contained in:
commit
dcd020b3f7
@ -28,10 +28,6 @@ restrictions:
|
||||
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.
|
||||
|
||||
* 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/>.
|
||||
Instead, please email any questions or feedback regarding those themes to `themes AT getbootstrap DOT com`.
|
||||
|
||||
|
24
Gruntfile.js
24
Gruntfile.js
@ -148,20 +148,6 @@ module.exports = function (grunt) {
|
||||
}
|
||||
},
|
||||
|
||||
jekyll: {
|
||||
options: {
|
||||
bundleExec: true,
|
||||
config: '_config.yml',
|
||||
incremental: false
|
||||
},
|
||||
docs: {},
|
||||
github: {
|
||||
options: {
|
||||
raw: 'github: true'
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
watch: {
|
||||
src: {
|
||||
files: '<%= concat.bootstrap.src %>',
|
||||
@ -209,6 +195,12 @@ module.exports = function (grunt) {
|
||||
htmllint: {
|
||||
command: 'npm run htmllint'
|
||||
},
|
||||
jekyll: {
|
||||
command: 'npm run jekyll'
|
||||
},
|
||||
'jekyll-github': {
|
||||
command: 'npm run jekyll-github'
|
||||
},
|
||||
sass: {
|
||||
command: 'npm run sass'
|
||||
},
|
||||
@ -271,7 +263,7 @@ module.exports = function (grunt) {
|
||||
require('time-grunt')(grunt)
|
||||
|
||||
// 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) {
|
||||
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('docs-js', ['exec:uglify-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'])
|
||||
|
||||
|
@ -560,17 +560,17 @@ Use contextual classes to color table rows or individual cells.
|
||||
<!-- On rows -->
|
||||
<tr class="table-active">...</tr>
|
||||
<tr class="table-success">...</tr>
|
||||
<tr class="table-info">...</tr>
|
||||
<tr class="table-warning">...</tr>
|
||||
<tr class="table-danger">...</tr>
|
||||
<tr class="table-info">...</tr>
|
||||
|
||||
<!-- On cells (`td` or `th`) -->
|
||||
<tr>
|
||||
<td class="table-active">...</td>
|
||||
<td class="table-success">...</td>
|
||||
<td class="table-info">...</td>
|
||||
<td class="table-warning">...</td>
|
||||
<td class="table-danger">...</td>
|
||||
<td class="table-info">...</td>
|
||||
</tr>
|
||||
{% endhighlight %}
|
||||
|
||||
|
@ -2,67 +2,58 @@
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
|
||||
<title>Bootstrap Plugin Test Suite</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
|
||||
<!-- jQuery -->
|
||||
<script src="../../docs/assets/js/vendor/jquery-slim.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 -->
|
||||
<link rel="stylesheet" href="vendor/qunit.css" media="screen">
|
||||
<script src="vendor/qunit.js"></script>
|
||||
|
||||
<script>
|
||||
// See https://github.com/axemclion/grunt-saucelabs#test-result-details-with-qunit
|
||||
var log = []
|
||||
// Disable jQuery event aliases to ensure we don't accidentally use any of them
|
||||
[
|
||||
'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
|
||||
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 = []
|
||||
for (var i = 0, len = log.length; i < len; i++) {
|
||||
for (var i = 0; i < log.length; i++) {
|
||||
var details = log[i]
|
||||
tests.push({
|
||||
name: details.name,
|
||||
@ -77,9 +68,8 @@
|
||||
window.global_test_results = testResults
|
||||
})
|
||||
|
||||
QUnit.testStart(function (testDetails) {
|
||||
$(window).scrollTop(0)
|
||||
QUnit.log(function (details) {
|
||||
QUnit.testStart(function(testDetails) {
|
||||
QUnit.log(function(details) {
|
||||
if (!details.result) {
|
||||
details.name = testDetails.name
|
||||
log.push(details)
|
||||
@ -89,51 +79,23 @@
|
||||
|
||||
// Cleanup
|
||||
QUnit.testDone(function () {
|
||||
$('#qunit-fixture').empty()
|
||||
$('#modal-test, .modal-backdrop').remove()
|
||||
})
|
||||
|
||||
// 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)) {
|
||||
QUnit.begin(function() {
|
||||
$('#qunit-fixture').css({ top: 0, left: 0 })
|
||||
})
|
||||
|
||||
QUnit.done(function () {
|
||||
QUnit.done(function() {
|
||||
$('#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>
|
||||
|
||||
<!-- es6 Plugin sources -->
|
||||
<!-- Transpiled Plugins -->
|
||||
<script src="../../js/dist/util.js"></script>
|
||||
<script src="../../js/dist/alert.js"></script>
|
||||
<script src="../../js/dist/button.js"></script>
|
||||
@ -146,7 +108,7 @@
|
||||
<script src="../../js/dist/tooltip.js"></script>
|
||||
<script src="../../js/dist/popover.js"></script>
|
||||
|
||||
<!-- Unit tests -->
|
||||
<!-- Unit Tests -->
|
||||
<script src="unit/alert.js"></script>
|
||||
<script src="unit/button.js"></script>
|
||||
<script src="unit/carousel.js"></script>
|
||||
@ -157,7 +119,6 @@
|
||||
<script src="unit/tab.js"></script>
|
||||
<script src="unit/tooltip.js"></script>
|
||||
<script src="unit/popover.js"></script>
|
||||
|
||||
</head>
|
||||
<body>
|
||||
<div id="qunit-container">
|
||||
|
@ -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",
|
||||
"htmlhint": "htmlhint --config docs/.htmlhintrc _gh_pages/",
|
||||
"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-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",
|
||||
@ -67,7 +69,6 @@
|
||||
"grunt-contrib-qunit": "^1.2.0",
|
||||
"grunt-contrib-watch": "^1.0.0",
|
||||
"grunt-exec": "^1.0.1",
|
||||
"grunt-jekyll": "^0.4.6",
|
||||
"grunt-saucelabs": "^9.0.0",
|
||||
"grunt-stamp": "^0.3.0",
|
||||
"htmlhint": "^0.9.13",
|
||||
|
@ -145,9 +145,7 @@
|
||||
background-size: $custom-select-bg-size;
|
||||
border: $custom-select-border-width solid $custom-select-border-color;
|
||||
@include border-radius($custom-select-border-radius);
|
||||
// Use vendor prefixes as `appearance` isn't part of the CSS spec.
|
||||
-moz-appearance: none;
|
||||
-webkit-appearance: none;
|
||||
appearance: none;
|
||||
|
||||
&:focus {
|
||||
border-color: $custom-select-focus-border-color;
|
||||
|
Loading…
x
Reference in New Issue
Block a user