Merge pull request #987 from ONLYOFFICE/feature/bootstrap-version-3-4-1
Feature/bootstrap version 3 4 1
2
vendor/bootstrap/.gitignore
vendored
|
@ -37,5 +37,7 @@ Thumbs.db
|
||||||
docs/.jekyll-metadata
|
docs/.jekyll-metadata
|
||||||
|
|
||||||
# Folders to ignore
|
# Folders to ignore
|
||||||
|
/.bundle/
|
||||||
bower_components
|
bower_components
|
||||||
node_modules
|
node_modules
|
||||||
|
/vendor/
|
||||||
|
|
12
vendor/bootstrap/.hound.yml
vendored
|
@ -1,12 +0,0 @@
|
||||||
fail_on_violations: true
|
|
||||||
|
|
||||||
scss:
|
|
||||||
enabled: false
|
|
||||||
|
|
||||||
javascript:
|
|
||||||
enabled: true
|
|
||||||
config_file: js/.jshintrc
|
|
||||||
|
|
||||||
jscs:
|
|
||||||
enabled: true
|
|
||||||
config_file: js/.jscsrc
|
|
38
vendor/bootstrap/.travis.yml
vendored
|
@ -1,41 +1,23 @@
|
||||||
sudo: required
|
|
||||||
dist: trusty
|
|
||||||
language: node_js
|
language: node_js
|
||||||
git:
|
git:
|
||||||
depth: 10
|
depth: 3
|
||||||
node_js:
|
node_js:
|
||||||
- "0.12"
|
- "6"
|
||||||
|
env:
|
||||||
|
matrix:
|
||||||
|
- TWBS_TEST=core
|
||||||
|
- TWBS_TEST=validate-html
|
||||||
|
- TWBS_TEST=browserstack
|
||||||
before_install:
|
before_install:
|
||||||
# Remove ./node_modules/.bin from PATH so node-which doesn't replace Unix which and cause RVM to barf. See https://github.com/travis-ci/travis-ci/issues/5092
|
|
||||||
- export PATH=$(python -c 'from sys import argv;from collections import OrderedDict as od;print(":".join(od((p,None) for p in argv[1].split(":") if p.startswith("/")).keys()))' "$PATH")
|
|
||||||
- rvm install 2.2
|
|
||||||
- rvm use 2.2 --fuzzy
|
|
||||||
- "export TRAVIS_COMMIT_MSG=\"$(git log --format=%B --no-merges -n 1)\""
|
- "export TRAVIS_COMMIT_MSG=\"$(git log --format=%B --no-merges -n 1)\""
|
||||||
- echo "$TRAVIS_COMMIT_MSG" | grep '\[skip validator\]'; export TWBS_DO_VALIDATOR=$?; true
|
- echo "$TRAVIS_COMMIT_MSG" | grep '\[skip validator\]'; export TWBS_DO_VALIDATOR=$?; true
|
||||||
- echo "$TRAVIS_COMMIT_MSG" | grep '\[skip sauce\]'; export TWBS_DO_SAUCE=$?; true
|
- echo "$TRAVIS_COMMIT_MSG" | grep '\[skip browserstack\]'; export TWBS_DO_BROWSERSTACK=$?; true
|
||||||
- if [ "$TRAVIS_REPO_SLUG" = twbs-savage/bootstrap ]; then export TWBS_DO_VALIDATOR=0; fi
|
|
||||||
install:
|
install:
|
||||||
- bundle install --deployment --jobs=1
|
- bundle install --deployment --jobs=3 --retry=3 --clean
|
||||||
- cp grunt/npm-shrinkwrap.json ./
|
|
||||||
- npm install
|
- npm install
|
||||||
cache:
|
cache:
|
||||||
directories:
|
directories:
|
||||||
- node_modules
|
- node_modules
|
||||||
- vendor/bundle
|
- vendor/bundle
|
||||||
env:
|
|
||||||
global:
|
|
||||||
- NPM_CONFIG_PROGRESS="false"
|
|
||||||
- SAUCE_USERNAME="bootstrap"
|
|
||||||
- secure: "pJkBwnuae9dKU5tEcCqccfS1QQw7/meEcfz63fM7ba7QJNjoA6BaXj08L5Z3Vb5vBmVPwBawxo5Hp0jC0r/Z/O0hGnAmz/Cz09L+cy7dSAZ9x4hvZePSja/UAusaB5ogMoO8l2b773MzgQeSmrLbExr9BWLeqEfjC2hFgdgHLaQ="
|
|
||||||
- secure: "RKWpS+P20b4tG9tawzCMJSmQftoonmC7tJzyGYiHuEM1TcpHALLBcnzKlr/+DiPTfzDJWY4kS8pxfhK4uXOe8OHnhpMNub7LEWtFPePlZIervOJcsOydaQocTKqVVWD6OUubMeQmQ+tZmvmpjoJ1uPPEbFs9ciF7+dv3U5tLUZ0="
|
|
||||||
- secure: "XswSKBY0HJ/aO9VOBeWlvGpqSFF/DsJmNKz7o5RkJMJX340qe44J929uUNwwOwlv9YrgptzC2W6l8bpmZQV+p6IYs99SoSA8CCaUfIJaqeU9x/UiT5vIHgqaNax+vFJwvzHLpF5v/ggFqFEKCd54gCDasePLTztHeC4oL104iaQ="
|
|
||||||
matrix:
|
|
||||||
- TWBS_TEST=core
|
|
||||||
- TWBS_TEST=validate-html
|
|
||||||
- TWBS_TEST=sauce-js-unit
|
|
||||||
matrix:
|
|
||||||
fast_finish: true
|
|
||||||
notifications:
|
notifications:
|
||||||
slack: heybb:iz4wwosL0N0EdaX1gvgkU0NH
|
email: false
|
||||||
webhooks:
|
|
||||||
- http://savage1.twbsapps.com/savage/travis
|
|
||||||
|
|
4
vendor/bootstrap/CHANGELOG.md
vendored
|
@ -1,5 +1,5 @@
|
||||||
Bootstrap uses [GitHub's Releases feature](https://github.com/blog/1547-release-your-software) for its changelogs.
|
Bootstrap uses [GitHub's Releases feature](https://blog.github.com/2013-07-02-release-your-software/) for its changelogs.
|
||||||
|
|
||||||
See [the Releases section of our GitHub project](https://github.com/twbs/bootstrap/releases) for changelogs for each release version of Bootstrap.
|
See [the Releases section of our GitHub project](https://github.com/twbs/bootstrap/releases) for changelogs for each release version of Bootstrap.
|
||||||
|
|
||||||
Release announcement posts on [the official Bootstrap blog](http://blog.getbootstrap.com) contain summaries of the most noteworthy changes made in each release.
|
Release announcement posts on [the official Bootstrap blog](https://blog.getbootstrap.com/) contain summaries of the most noteworthy changes made in each release.
|
||||||
|
|
26
vendor/bootstrap/CONTRIBUTING.md
vendored
|
@ -25,14 +25,14 @@ restrictions:
|
||||||
respect the opinions of others.
|
respect the opinions of others.
|
||||||
|
|
||||||
* Please **do not** post comments consisting solely of "+1" or ":thumbsup:".
|
* Please **do not** post comments consisting solely of "+1" or ":thumbsup:".
|
||||||
Use [GitHub's "reactions" feature](https://github.com/blog/2119-add-reactions-to-pull-requests-issues-and-comments)
|
Use [GitHub's "reactions" feature](https://blog.github.com/2016-03-10-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
|
* Please **do not** open issues or pull requests regarding the code in
|
||||||
[`Normalize`](https://github.com/necolas/normalize.css) (open them in
|
[`Normalize`](https://github.com/necolas/normalize.css) (open them in
|
||||||
their respective repositories).
|
their respective repositories).
|
||||||
|
|
||||||
* Please **do not** open issues regarding the official themes offered on <http://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`.
|
||||||
|
|
||||||
|
|
||||||
|
@ -62,7 +62,7 @@ Good bug reports are extremely helpful, so thanks!
|
||||||
|
|
||||||
Guidelines for bug reports:
|
Guidelines for bug reports:
|
||||||
|
|
||||||
0. **Validate and lint your code** — [validate your HTML](http://html5.validator.nu)
|
0. **Validate and lint your code** — [validate your HTML](https://html5.validator.nu/)
|
||||||
and [lint your HTML](https://github.com/twbs/bootlint) to ensure your
|
and [lint your HTML](https://github.com/twbs/bootlint) to ensure your
|
||||||
problem isn't caused by a simple error in your own code.
|
problem isn't caused by a simple error in your own code.
|
||||||
|
|
||||||
|
@ -105,7 +105,7 @@ Example:
|
||||||
### Reporting upstream browser bugs
|
### Reporting upstream browser bugs
|
||||||
|
|
||||||
Sometimes bugs reported to us are actually caused by bugs in the browser(s) themselves, not bugs in Bootstrap per se.
|
Sometimes bugs reported to us are actually caused by bugs in the browser(s) themselves, not bugs in Bootstrap per se.
|
||||||
When feasible, we aim to report such upstream bugs to the relevant browser vendor(s), and then list them on our [Wall of Browser Bugs](http://getbootstrap.com/browser-bugs/) and [document them in MDN](https://developer.mozilla.org/en-US/docs/Web).
|
When feasible, we aim to report such upstream bugs to the relevant browser vendor(s), and then list them on our [Wall of Browser Bugs](https://getbootstrap.com/docs/3.4/browser-bugs/) and [document them in MDN](https://developer.mozilla.org/en-US/docs/Web).
|
||||||
|
|
||||||
| Vendor(s) | Browser(s) | Rendering engine | Bug reporting website(s) | Notes |
|
| Vendor(s) | Browser(s) | Rendering engine | Bug reporting website(s) | Notes |
|
||||||
| ------------- | ---------------------------- | ---------------- | ------------------------------------------------------------------------------------- | -------------------------------------------------------- |
|
| ------------- | ---------------------------- | ---------------- | ------------------------------------------------------------------------------------- | -------------------------------------------------------- |
|
||||||
|
@ -199,7 +199,7 @@ included in the project:
|
||||||
4. Commit your changes in logical chunks. Please adhere to these [git commit
|
4. Commit your changes in logical chunks. Please adhere to these [git commit
|
||||||
message guidelines](http://tbaggery.com/2008/04/19/a-note-about-git-commit-messages.html)
|
message guidelines](http://tbaggery.com/2008/04/19/a-note-about-git-commit-messages.html)
|
||||||
or your code is unlikely to be merged into the main project. Use Git's
|
or your code is unlikely to be merged into the main project. Use Git's
|
||||||
[interactive rebase](https://help.github.com/articles/interactive-rebase)
|
[interactive rebase](https://help.github.com/articles/about-git-rebase/)
|
||||||
feature to tidy up your commits before making them public.
|
feature to tidy up your commits before making them public.
|
||||||
|
|
||||||
5. Locally merge (or rebase) the upstream development branch into your topic branch:
|
5. Locally merge (or rebase) the upstream development branch into your topic branch:
|
||||||
|
@ -223,16 +223,6 @@ includes code changes) and under the terms of the
|
||||||
[Creative Commons Attribution 3.0 Unported License](docs/LICENSE)
|
[Creative Commons Attribution 3.0 Unported License](docs/LICENSE)
|
||||||
(if it includes documentation changes).
|
(if it includes documentation changes).
|
||||||
|
|
||||||
### Pull request bots
|
|
||||||
|
|
||||||
[@twbs-rorschach](https://github.com/twbs-rorschach) is a Bootstrap bot that hangs out in our GitHub issue tracker and automatically checks all pull requests for a few simple common mistakes. It's possible that Rorschach might leave a comment on your pull request and then close it. If that happens, simply fix the problem(s) mentioned in the comment (there should be link(s) in the comment explaining the problem(s) in detail) and then either:
|
|
||||||
|
|
||||||
* Push the revised version to your pull request's branch and post a comment on the pull request saying that you've fixed the problem(s). One of the Bootstrap Core Team members will then come along and reopen your pull request.
|
|
||||||
* Or you can just open a new pull request for your revised version.
|
|
||||||
|
|
||||||
[@twbs-savage](https://github.com/twbs-savage) is a Bootstrap bot that automatically runs cross-browser tests (via [Sauce](https://saucelabs.com) and Travis CI) on JavaScript pull requests. Savage will leave a comment on pull requests stating whether cross-browser JS tests passed or failed, with a link to the full Travis build details. If your pull request fails, check the Travis log to see which browser + OS combinations failed. Each browser test in the Travis log includes a link to a Sauce page with details about the test. On those details pages, you can watch a screencast of the test run to see exactly which unit tests failed.
|
|
||||||
|
|
||||||
|
|
||||||
## Code guidelines
|
## Code guidelines
|
||||||
|
|
||||||
### HTML
|
### HTML
|
||||||
|
@ -247,8 +237,8 @@ includes code changes) and under the terms of the
|
||||||
|
|
||||||
[Adhere to the Code Guide.](http://codeguide.co/#css)
|
[Adhere to the Code Guide.](http://codeguide.co/#css)
|
||||||
|
|
||||||
- When feasible, default color palettes should comply with [WCAG color contrast guidelines](http://www.w3.org/TR/WCAG20/#visual-audio-contrast).
|
- When feasible, default color palettes should comply with [WCAG color contrast guidelines](https://www.w3.org/TR/WCAG20/#visual-audio-contrast).
|
||||||
- Except in rare cases, don't remove default `:focus` styles (via e.g. `outline: none;`) without providing alternative styles. See [this A11Y Project post](http://a11yproject.com/posts/never-remove-css-outlines) for more details.
|
- Except in rare cases, don't remove default `:focus` styles (via e.g. `outline: none;`) without providing alternative styles. See [this A11Y Project post](https://a11yproject.com/posts/never-remove-css-outlines/) for more details.
|
||||||
|
|
||||||
### JS
|
### JS
|
||||||
|
|
||||||
|
@ -256,7 +246,7 @@ includes code changes) and under the terms of the
|
||||||
- 2 spaces (no tabs)
|
- 2 spaces (no tabs)
|
||||||
- strict mode
|
- strict mode
|
||||||
- "Attractive"
|
- "Attractive"
|
||||||
- Don't use [jQuery event alias convenience methods](https://github.com/jquery/jquery/blob/master/src/event/alias.js) (such as `$().focus()`). Instead, use [`$().trigger(eventType, ...)`](http://api.jquery.com/trigger/) or [`$().on(eventType, ...)`](http://api.jquery.com/on/), depending on whether you're firing an event or listening for an event. (For example, `$().trigger('focus')` or `$().on('focus', function (event) { /* handle focus event */ })`) We do this to be compatible with custom builds of jQuery where the event aliases module has been excluded.
|
- Don't use [jQuery event alias convenience methods](https://github.com/jquery/jquery/blob/master/src/event/alias.js) (such as `$().focus()`). Instead, use [`$().trigger(eventType, ...)`](https://api.jquery.com/trigger/) or [`$().on(eventType, ...)`](https://api.jquery.com/on/), depending on whether you're firing an event or listening for an event. (For example, `$().trigger('focus')` or `$().on('focus', function (event) { /* handle focus event */ })`) We do this to be compatible with custom builds of jQuery where the event aliases module has been excluded.
|
||||||
|
|
||||||
### Checking coding style
|
### Checking coding style
|
||||||
|
|
||||||
|
|
6
vendor/bootstrap/Gemfile
vendored
|
@ -1,6 +1,8 @@
|
||||||
source 'https://rubygems.org'
|
source 'https://rubygems.org'
|
||||||
|
|
||||||
group :development, :test do
|
group :development, :test do
|
||||||
gem 'jekyll', '~> 3.1.2'
|
gem 'jekyll', '~> 3.8.5'
|
||||||
gem 'jekyll-sitemap', '~> 0.11.0'
|
gem 'jekyll-redirect-from', '~> 0.14.0'
|
||||||
|
gem 'jekyll-sitemap', '~> 1.2.0'
|
||||||
|
gem 'wdm', '~> 0.1.1', :install_if => Gem.win_platform?
|
||||||
end
|
end
|
||||||
|
|
81
vendor/bootstrap/Gemfile.lock
vendored
|
@ -1,43 +1,74 @@
|
||||||
GEM
|
GEM
|
||||||
remote: https://rubygems.org/
|
remote: https://rubygems.org/
|
||||||
specs:
|
specs:
|
||||||
addressable (2.4.0)
|
addressable (2.6.0)
|
||||||
colorator (0.1)
|
public_suffix (>= 2.0.2, < 4.0)
|
||||||
ffi (1.9.14-x64-mingw32)
|
colorator (1.1.0)
|
||||||
jekyll (3.1.6)
|
concurrent-ruby (1.1.4)
|
||||||
colorator (~> 0.1)
|
em-websocket (0.5.1)
|
||||||
|
eventmachine (>= 0.12.9)
|
||||||
|
http_parser.rb (~> 0.6.0)
|
||||||
|
eventmachine (1.2.7)
|
||||||
|
eventmachine (1.2.7-x64-mingw32)
|
||||||
|
ffi (1.10.0)
|
||||||
|
ffi (1.10.0-x64-mingw32)
|
||||||
|
forwardable-extended (2.6.0)
|
||||||
|
http_parser.rb (0.6.0)
|
||||||
|
i18n (0.9.5)
|
||||||
|
concurrent-ruby (~> 1.0)
|
||||||
|
jekyll (3.8.5)
|
||||||
|
addressable (~> 2.4)
|
||||||
|
colorator (~> 1.0)
|
||||||
|
em-websocket (~> 0.5)
|
||||||
|
i18n (~> 0.7)
|
||||||
jekyll-sass-converter (~> 1.0)
|
jekyll-sass-converter (~> 1.0)
|
||||||
jekyll-watch (~> 1.1)
|
jekyll-watch (~> 2.0)
|
||||||
kramdown (~> 1.3)
|
kramdown (~> 1.14)
|
||||||
liquid (~> 3.0)
|
liquid (~> 4.0)
|
||||||
mercenary (~> 0.3.3)
|
mercenary (~> 0.3.3)
|
||||||
rouge (~> 1.7)
|
pathutil (~> 0.9)
|
||||||
|
rouge (>= 1.7, < 4)
|
||||||
safe_yaml (~> 1.0)
|
safe_yaml (~> 1.0)
|
||||||
jekyll-sass-converter (1.4.0)
|
jekyll-redirect-from (0.14.0)
|
||||||
|
jekyll (~> 3.3)
|
||||||
|
jekyll-sass-converter (1.5.2)
|
||||||
sass (~> 3.4)
|
sass (~> 3.4)
|
||||||
jekyll-sitemap (0.11.0)
|
jekyll-sitemap (1.2.0)
|
||||||
addressable (~> 2.4.0)
|
jekyll (~> 3.3)
|
||||||
jekyll-watch (1.4.0)
|
jekyll-watch (2.1.2)
|
||||||
listen (~> 3.0, < 3.1)
|
listen (~> 3.0)
|
||||||
kramdown (1.11.1)
|
kramdown (1.17.0)
|
||||||
liquid (3.0.6)
|
liquid (4.0.1)
|
||||||
listen (3.0.8)
|
listen (3.1.5)
|
||||||
rb-fsevent (~> 0.9, >= 0.9.4)
|
rb-fsevent (~> 0.9, >= 0.9.4)
|
||||||
rb-inotify (~> 0.9, >= 0.9.7)
|
rb-inotify (~> 0.9, >= 0.9.7)
|
||||||
|
ruby_dep (~> 1.2)
|
||||||
mercenary (0.3.6)
|
mercenary (0.3.6)
|
||||||
rb-fsevent (0.9.7)
|
pathutil (0.16.2)
|
||||||
rb-inotify (0.9.7)
|
forwardable-extended (~> 2.6)
|
||||||
ffi (>= 0.5.0)
|
public_suffix (3.0.3)
|
||||||
rouge (1.11.1)
|
rb-fsevent (0.10.3)
|
||||||
|
rb-inotify (0.10.0)
|
||||||
|
ffi (~> 1.0)
|
||||||
|
rouge (3.3.0)
|
||||||
|
ruby_dep (1.5.0)
|
||||||
safe_yaml (1.0.4)
|
safe_yaml (1.0.4)
|
||||||
sass (3.4.22)
|
sass (3.7.3)
|
||||||
|
sass-listen (~> 4.0.0)
|
||||||
|
sass-listen (4.0.0)
|
||||||
|
rb-fsevent (~> 0.9, >= 0.9.4)
|
||||||
|
rb-inotify (~> 0.9, >= 0.9.7)
|
||||||
|
wdm (0.1.1)
|
||||||
|
|
||||||
PLATFORMS
|
PLATFORMS
|
||||||
|
ruby
|
||||||
x64-mingw32
|
x64-mingw32
|
||||||
|
|
||||||
DEPENDENCIES
|
DEPENDENCIES
|
||||||
jekyll (~> 3.1.2)
|
jekyll (~> 3.8.5)
|
||||||
jekyll-sitemap (~> 0.11.0)
|
jekyll-redirect-from (~> 0.14.0)
|
||||||
|
jekyll-sitemap (~> 1.2.0)
|
||||||
|
wdm (~> 0.1.1)
|
||||||
|
|
||||||
BUNDLED WITH
|
BUNDLED WITH
|
||||||
1.12.5
|
1.17.3
|
||||||
|
|
267
vendor/bootstrap/Gruntfile.js
vendored
|
@ -1,7 +1,7 @@
|
||||||
/*!
|
/*!
|
||||||
* Bootstrap's Gruntfile
|
* Bootstrap's Gruntfile
|
||||||
* http://getbootstrap.com
|
* https://getbootstrap.com/
|
||||||
* Copyright 2013-2016 Twitter, Inc.
|
* Copyright 2013-2019 Twitter, Inc.
|
||||||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
@ -104,7 +104,7 @@ module.exports = function (grunt) {
|
||||||
banner: '<%= banner %>\n<%= jqueryCheck %>\n<%= jqueryVersionCheck %>',
|
banner: '<%= banner %>\n<%= jqueryCheck %>\n<%= jqueryVersionCheck %>',
|
||||||
stripBanners: false
|
stripBanners: false
|
||||||
},
|
},
|
||||||
bootstrap: {
|
core: {
|
||||||
src: [
|
src: [
|
||||||
'js/transition.js',
|
'js/transition.js',
|
||||||
'js/alert.js',
|
'js/alert.js',
|
||||||
|
@ -125,78 +125,90 @@ module.exports = function (grunt) {
|
||||||
|
|
||||||
uglify: {
|
uglify: {
|
||||||
options: {
|
options: {
|
||||||
compress: {
|
compress: true,
|
||||||
warnings: false
|
|
||||||
},
|
|
||||||
mangle: true,
|
mangle: true,
|
||||||
preserveComments: /^!|@preserve|@license|@cc_on/i
|
ie8: true,
|
||||||
|
output: {
|
||||||
|
comments: /^!|@preserve|@license|@cc_on/i
|
||||||
|
}
|
||||||
},
|
},
|
||||||
core: {
|
core: {
|
||||||
src: '<%= concat.bootstrap.dest %>',
|
src: '<%= concat.core.dest %>',
|
||||||
dest: 'dist/js/<%= pkg.name %>.min.js'
|
dest: 'dist/js/<%= pkg.name %>.min.js'
|
||||||
},
|
},
|
||||||
customize: {
|
customize: {
|
||||||
src: configBridge.paths.customizerJs,
|
src: configBridge.paths.customizerJs,
|
||||||
dest: 'docs/assets/js/customize.min.js'
|
dest: 'docs/assets/js/customize.min.js'
|
||||||
},
|
},
|
||||||
docsJs: {
|
docs: {
|
||||||
src: configBridge.paths.docsJs,
|
src: configBridge.paths.docsJs,
|
||||||
dest: 'docs/assets/js/docs.min.js'
|
dest: 'docs/assets/js/docs.min.js'
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
qunit: {
|
|
||||||
options: {
|
|
||||||
inject: 'js/tests/unit/phantom.js'
|
|
||||||
},
|
|
||||||
files: 'js/tests/index.html'
|
|
||||||
},
|
|
||||||
|
|
||||||
less: {
|
less: {
|
||||||
compileCore: {
|
|
||||||
options: {
|
options: {
|
||||||
|
ieCompat: true,
|
||||||
strictMath: true,
|
strictMath: true,
|
||||||
sourceMap: true,
|
sourceMap: true,
|
||||||
outputSourceFiles: true,
|
outputSourceFiles: true
|
||||||
|
},
|
||||||
|
core: {
|
||||||
|
options: {
|
||||||
sourceMapURL: '<%= pkg.name %>.css.map',
|
sourceMapURL: '<%= pkg.name %>.css.map',
|
||||||
sourceMapFilename: 'dist/css/<%= pkg.name %>.css.map'
|
sourceMapFilename: 'dist/css/<%= pkg.name %>.css.map'
|
||||||
},
|
},
|
||||||
src: 'less/bootstrap.less',
|
src: 'less/bootstrap.less',
|
||||||
dest: 'dist/css/<%= pkg.name %>.css'
|
dest: 'dist/css/<%= pkg.name %>.css'
|
||||||
},
|
},
|
||||||
compileTheme: {
|
theme: {
|
||||||
options: {
|
options: {
|
||||||
strictMath: true,
|
|
||||||
sourceMap: true,
|
|
||||||
outputSourceFiles: true,
|
|
||||||
sourceMapURL: '<%= pkg.name %>-theme.css.map',
|
sourceMapURL: '<%= pkg.name %>-theme.css.map',
|
||||||
sourceMapFilename: 'dist/css/<%= pkg.name %>-theme.css.map'
|
sourceMapFilename: 'dist/css/<%= pkg.name %>-theme.css.map'
|
||||||
},
|
},
|
||||||
src: 'less/theme.less',
|
src: 'less/theme.less',
|
||||||
dest: 'dist/css/<%= pkg.name %>-theme.css'
|
dest: 'dist/css/<%= pkg.name %>-theme.css'
|
||||||
|
},
|
||||||
|
docs: {
|
||||||
|
options: {
|
||||||
|
sourceMapURL: 'docs.css.map',
|
||||||
|
sourceMapFilename: 'docs/assets/css/docs.css.map'
|
||||||
|
},
|
||||||
|
src: 'docs/assets/less/docs.less',
|
||||||
|
dest: 'docs/assets/css/docs.css'
|
||||||
|
},
|
||||||
|
docsIe: {
|
||||||
|
options: {
|
||||||
|
sourceMap: false
|
||||||
|
},
|
||||||
|
src: 'docs/assets/less/ie10-viewport-bug-workaround.less',
|
||||||
|
dest: 'docs/assets/css/ie10-viewport-bug-workaround.css'
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
autoprefixer: {
|
postcss: {
|
||||||
options: {
|
options: {
|
||||||
browsers: configBridge.config.autoprefixerBrowsers
|
map: {
|
||||||
|
inline: false,
|
||||||
|
sourcesContent: true
|
||||||
|
},
|
||||||
|
processors: [
|
||||||
|
require('autoprefixer')(configBridge.config.autoprefixer)
|
||||||
|
]
|
||||||
},
|
},
|
||||||
core: {
|
core: {
|
||||||
options: {
|
|
||||||
map: true
|
|
||||||
},
|
|
||||||
src: 'dist/css/<%= pkg.name %>.css'
|
src: 'dist/css/<%= pkg.name %>.css'
|
||||||
},
|
},
|
||||||
theme: {
|
theme: {
|
||||||
options: {
|
|
||||||
map: true
|
|
||||||
},
|
|
||||||
src: 'dist/css/<%= pkg.name %>-theme.css'
|
src: 'dist/css/<%= pkg.name %>-theme.css'
|
||||||
},
|
},
|
||||||
docs: {
|
docs: {
|
||||||
src: ['docs/assets/css/src/docs.css']
|
src: 'docs/assets/css/docs.css'
|
||||||
},
|
},
|
||||||
examples: {
|
examples: {
|
||||||
|
options: {
|
||||||
|
map: false
|
||||||
|
},
|
||||||
expand: true,
|
expand: true,
|
||||||
cwd: 'docs/examples/',
|
cwd: 'docs/examples/',
|
||||||
src: ['**/*.css'],
|
src: ['**/*.css'],
|
||||||
|
@ -204,76 +216,47 @@ module.exports = function (grunt) {
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
csslint: {
|
stylelint: {
|
||||||
options: {
|
options: {
|
||||||
csslintrc: 'less/.csslintrc'
|
configFile: 'grunt/.stylelintrc',
|
||||||
|
reportNeedlessDisables: false
|
||||||
},
|
},
|
||||||
dist: [
|
dist: [
|
||||||
'dist/css/bootstrap.css',
|
'less/**/*.less'
|
||||||
'dist/css/bootstrap-theme.css'
|
],
|
||||||
|
docs: [
|
||||||
|
'docs/assets/less/**/*.less'
|
||||||
],
|
],
|
||||||
examples: [
|
examples: [
|
||||||
'docs/examples/**/*.css'
|
'docs/examples/**/*.css'
|
||||||
],
|
]
|
||||||
docs: {
|
|
||||||
options: {
|
|
||||||
ids: false,
|
|
||||||
'overqualified-elements': false
|
|
||||||
},
|
|
||||||
src: 'docs/assets/css/src/docs.css'
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
|
|
||||||
cssmin: {
|
cssmin: {
|
||||||
options: {
|
options: {
|
||||||
// TODO: disable `zeroUnits` optimization once clean-css 3.2 is released
|
|
||||||
// and then simplify the fix for https://github.com/twbs/bootstrap/issues/14837 accordingly
|
|
||||||
compatibility: 'ie8',
|
compatibility: 'ie8',
|
||||||
keepSpecialComments: '*',
|
|
||||||
sourceMap: true,
|
sourceMap: true,
|
||||||
sourceMapInlineSources: true,
|
sourceMapInlineSources: true,
|
||||||
advanced: false
|
level: {
|
||||||
|
1: {
|
||||||
|
specialComments: 'all'
|
||||||
|
}
|
||||||
|
}
|
||||||
},
|
},
|
||||||
minifyCore: {
|
core: {
|
||||||
src: 'dist/css/<%= pkg.name %>.css',
|
src: 'dist/css/<%= pkg.name %>.css',
|
||||||
dest: 'dist/css/<%= pkg.name %>.min.css'
|
dest: 'dist/css/<%= pkg.name %>.min.css'
|
||||||
},
|
},
|
||||||
minifyTheme: {
|
theme: {
|
||||||
src: 'dist/css/<%= pkg.name %>-theme.css',
|
src: 'dist/css/<%= pkg.name %>-theme.css',
|
||||||
dest: 'dist/css/<%= pkg.name %>-theme.min.css'
|
dest: 'dist/css/<%= pkg.name %>-theme.min.css'
|
||||||
},
|
},
|
||||||
docs: {
|
docs: {
|
||||||
src: [
|
src: 'docs/assets/css/docs.css',
|
||||||
'docs/assets/css/ie10-viewport-bug-workaround.css',
|
|
||||||
'docs/assets/css/src/pygments-manni.css',
|
|
||||||
'docs/assets/css/src/docs.css'
|
|
||||||
],
|
|
||||||
dest: 'docs/assets/css/docs.min.css'
|
dest: 'docs/assets/css/docs.min.css'
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
csscomb: {
|
|
||||||
options: {
|
|
||||||
config: 'less/.csscomb.json'
|
|
||||||
},
|
|
||||||
dist: {
|
|
||||||
expand: true,
|
|
||||||
cwd: 'dist/css/',
|
|
||||||
src: ['*.css', '!*.min.css'],
|
|
||||||
dest: 'dist/css/'
|
|
||||||
},
|
|
||||||
examples: {
|
|
||||||
expand: true,
|
|
||||||
cwd: 'docs/examples/',
|
|
||||||
src: '**/*.css',
|
|
||||||
dest: 'docs/examples/'
|
|
||||||
},
|
|
||||||
docs: {
|
|
||||||
src: 'docs/assets/css/src/docs.css',
|
|
||||||
dest: 'docs/assets/css/src/docs.css'
|
|
||||||
}
|
|
||||||
},
|
|
||||||
|
|
||||||
copy: {
|
copy: {
|
||||||
fonts: {
|
fonts: {
|
||||||
expand: true,
|
expand: true,
|
||||||
|
@ -313,41 +296,6 @@ module.exports = function (grunt) {
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
htmlmin: {
|
|
||||||
dist: {
|
|
||||||
options: {
|
|
||||||
collapseBooleanAttributes: true,
|
|
||||||
collapseWhitespace: true,
|
|
||||||
conservativeCollapse: true,
|
|
||||||
decodeEntities: false,
|
|
||||||
minifyCSS: {
|
|
||||||
compatibility: 'ie8',
|
|
||||||
keepSpecialComments: 0
|
|
||||||
},
|
|
||||||
minifyJS: true,
|
|
||||||
minifyURLs: false,
|
|
||||||
processConditionalComments: true,
|
|
||||||
removeAttributeQuotes: true,
|
|
||||||
removeComments: true,
|
|
||||||
removeOptionalAttributes: true,
|
|
||||||
removeOptionalTags: true,
|
|
||||||
removeRedundantAttributes: true,
|
|
||||||
removeScriptTypeAttributes: true,
|
|
||||||
removeStyleLinkTypeAttributes: true,
|
|
||||||
removeTagWhitespace: false,
|
|
||||||
sortAttributes: true,
|
|
||||||
sortClassName: true
|
|
||||||
},
|
|
||||||
expand: true,
|
|
||||||
cwd: '_gh_pages',
|
|
||||||
dest: '_gh_pages',
|
|
||||||
src: [
|
|
||||||
'**/*.html',
|
|
||||||
'!examples/**/*.html'
|
|
||||||
]
|
|
||||||
}
|
|
||||||
},
|
|
||||||
|
|
||||||
pug: {
|
pug: {
|
||||||
options: {
|
options: {
|
||||||
pretty: true,
|
pretty: true,
|
||||||
|
@ -366,67 +314,40 @@ module.exports = function (grunt) {
|
||||||
htmllint: {
|
htmllint: {
|
||||||
options: {
|
options: {
|
||||||
ignore: [
|
ignore: [
|
||||||
'Attribute "autocomplete" not allowed on element "button" at this point.',
|
|
||||||
'Attribute "autocomplete" is only allowed when the input type is "color", "date", "datetime", "datetime-local", "email", "hidden", "month", "number", "password", "range", "search", "tel", "text", "time", "url", or "week".',
|
|
||||||
'Element "img" is missing required attribute "src".'
|
'Element "img" is missing required attribute "src".'
|
||||||
]
|
],
|
||||||
|
noLangDetect: true
|
||||||
},
|
},
|
||||||
src: '_gh_pages/**/*.html'
|
src: ['_gh_pages/**/*.html', 'js/tests/**/*.html']
|
||||||
},
|
},
|
||||||
|
|
||||||
watch: {
|
watch: {
|
||||||
src: {
|
src: {
|
||||||
files: '<%= jshint.core.src %>',
|
files: '<%= jshint.core.src %>',
|
||||||
tasks: ['jshint:core', 'qunit', 'concat']
|
tasks: ['jshint:core', 'exec:karma', 'concat']
|
||||||
},
|
},
|
||||||
test: {
|
test: {
|
||||||
files: '<%= jshint.test.src %>',
|
files: '<%= jshint.test.src %>',
|
||||||
tasks: ['jshint:test', 'qunit']
|
tasks: ['jshint:test', 'exec:karma']
|
||||||
},
|
},
|
||||||
less: {
|
less: {
|
||||||
files: 'less/**/*.less',
|
files: 'less/**/*.less',
|
||||||
tasks: 'less'
|
tasks: ['less', 'copy']
|
||||||
}
|
|
||||||
},
|
},
|
||||||
|
docs: {
|
||||||
'saucelabs-qunit': {
|
files: 'docs/assets/less/**/*.less',
|
||||||
all: {
|
tasks: ['less']
|
||||||
options: {
|
|
||||||
build: process.env.TRAVIS_JOB_ID,
|
|
||||||
throttled: 10,
|
|
||||||
maxRetries: 3,
|
|
||||||
maxPollRetries: 4,
|
|
||||||
urls: ['http://127.0.0.1:3000/js/tests/index.html?hidepassed'],
|
|
||||||
browsers: grunt.file.readYAML('grunt/sauce_browsers.yml')
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
exec: {
|
exec: {
|
||||||
npmUpdate: {
|
browserstack: {
|
||||||
command: 'npm update'
|
command: 'cross-env BROWSER=true karma start grunt/karma.conf.js'
|
||||||
}
|
|
||||||
},
|
},
|
||||||
|
karma: {
|
||||||
compress: {
|
command: 'karma start grunt/karma.conf.js'
|
||||||
main: {
|
|
||||||
options: {
|
|
||||||
archive: 'bootstrap-<%= pkg.version %>-dist.zip',
|
|
||||||
mode: 'zip',
|
|
||||||
level: 9,
|
|
||||||
pretty: true
|
|
||||||
},
|
|
||||||
files: [
|
|
||||||
{
|
|
||||||
expand: true,
|
|
||||||
cwd: 'dist/',
|
|
||||||
src: ['**'],
|
|
||||||
dest: 'bootstrap-<%= pkg.version %>-dist'
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
||||||
|
@ -441,16 +362,14 @@ module.exports = function (grunt) {
|
||||||
return !process.env.TWBS_TEST || process.env.TWBS_TEST === subset;
|
return !process.env.TWBS_TEST || process.env.TWBS_TEST === subset;
|
||||||
};
|
};
|
||||||
var isUndefOrNonZero = function (val) {
|
var isUndefOrNonZero = function (val) {
|
||||||
return val === undefined || val !== '0';
|
return typeof val === 'undefined' || val !== '0';
|
||||||
};
|
};
|
||||||
|
|
||||||
// Test task.
|
// Test task.
|
||||||
var testSubtasks = [];
|
var testSubtasks = [];
|
||||||
// Skip core tests if running a different subset of the test suite
|
// Skip core tests if running a different subset of the test suite
|
||||||
if (runSubset('core') &&
|
if (runSubset('core')) {
|
||||||
// Skip core tests if this is a Savage build
|
testSubtasks = testSubtasks.concat(['dist-css', 'dist-js', 'stylelint:dist', 'test-js', 'docs']);
|
||||||
process.env.TRAVIS_REPO_SLUG !== 'twbs-savage/bootstrap') {
|
|
||||||
testSubtasks = testSubtasks.concat(['dist-css', 'dist-js', 'csslint:dist', 'test-js', 'docs']);
|
|
||||||
}
|
}
|
||||||
// Skip HTML validation if running a different subset of the test suite
|
// Skip HTML validation if running a different subset of the test suite
|
||||||
if (runSubset('validate-html') &&
|
if (runSubset('validate-html') &&
|
||||||
|
@ -458,24 +377,23 @@ module.exports = function (grunt) {
|
||||||
isUndefOrNonZero(process.env.TWBS_DO_VALIDATOR)) {
|
isUndefOrNonZero(process.env.TWBS_DO_VALIDATOR)) {
|
||||||
testSubtasks.push('validate-html');
|
testSubtasks.push('validate-html');
|
||||||
}
|
}
|
||||||
// Only run Sauce Labs tests if there's a Sauce access key
|
// Only run BrowserStack tests if there's a BrowserStack access key
|
||||||
if (typeof process.env.SAUCE_ACCESS_KEY !== 'undefined' &&
|
if (typeof process.env.BROWSER_STACK_USERNAME !== 'undefined' &&
|
||||||
// Skip Sauce if running a different subset of the test suite
|
// Skip BrowserStack if running a different subset of the test suite
|
||||||
runSubset('sauce-js-unit') &&
|
runSubset('browserstack') &&
|
||||||
// Skip Sauce on Travis when [skip sauce] is in the commit message
|
// Skip BrowserStack on Travis when [skip browserstack] is in the commit message
|
||||||
isUndefOrNonZero(process.env.TWBS_DO_SAUCE)) {
|
isUndefOrNonZero(process.env.TWBS_DO_BROWSERSTACK)) {
|
||||||
testSubtasks.push('connect');
|
testSubtasks.push('exec:browserstack');
|
||||||
testSubtasks.push('saucelabs-qunit');
|
|
||||||
}
|
}
|
||||||
|
|
||||||
grunt.registerTask('test', testSubtasks);
|
grunt.registerTask('test', testSubtasks);
|
||||||
grunt.registerTask('test-js', ['jshint:core', 'jshint:test', 'jshint:grunt', 'jscs:core', 'jscs:test', 'jscs:grunt', 'qunit']);
|
grunt.registerTask('test-js', ['jshint:core', 'jshint:test', 'jshint:grunt', 'jscs:core', 'jscs:test', 'jscs:grunt', 'exec:karma']);
|
||||||
|
|
||||||
// JS distribution task.
|
// JS distribution task.
|
||||||
grunt.registerTask('dist-js', ['concat', 'uglify:core', 'commonjs']);
|
grunt.registerTask('dist-js', ['concat', 'uglify:core', 'commonjs']);
|
||||||
|
|
||||||
// CSS distribution task.
|
// CSS distribution task.
|
||||||
grunt.registerTask('less-compile', ['less:compileCore', 'less:compileTheme']);
|
grunt.registerTask('dist-css', ['less:core', 'less:theme', 'postcss:core', 'postcss:theme', 'cssmin:core', 'cssmin:theme']);
|
||||||
grunt.registerTask('dist-css', ['less-compile', 'autoprefixer:core', 'autoprefixer:theme', 'csscomb:dist', 'cssmin:minifyCore', 'cssmin:minifyTheme']);
|
|
||||||
|
|
||||||
// Full distribution task.
|
// Full distribution task.
|
||||||
grunt.registerTask('dist', ['clean:dist', 'dist-css', 'copy:fonts', 'dist-js']);
|
grunt.registerTask('dist', ['clean:dist', 'dist-css', 'copy:fonts', 'dist-js']);
|
||||||
|
@ -483,7 +401,9 @@ module.exports = function (grunt) {
|
||||||
// Default task.
|
// Default task.
|
||||||
grunt.registerTask('default', ['clean:dist', 'copy:fonts', 'test']);
|
grunt.registerTask('default', ['clean:dist', 'copy:fonts', 'test']);
|
||||||
|
|
||||||
grunt.registerTask('build-glyphicons-data', function () { generateGlyphiconsData.call(this, grunt); });
|
grunt.registerTask('build-glyphicons-data', function () {
|
||||||
|
generateGlyphiconsData.call(this, grunt);
|
||||||
|
});
|
||||||
|
|
||||||
// task for building customizer
|
// task for building customizer
|
||||||
grunt.registerTask('build-customizer', ['build-customizer-html', 'build-raw-files']);
|
grunt.registerTask('build-customizer', ['build-customizer-html', 'build-raw-files']);
|
||||||
|
@ -494,18 +414,17 @@ module.exports = function (grunt) {
|
||||||
});
|
});
|
||||||
|
|
||||||
grunt.registerTask('commonjs', 'Generate CommonJS entrypoint module in dist dir.', function () {
|
grunt.registerTask('commonjs', 'Generate CommonJS entrypoint module in dist dir.', function () {
|
||||||
var srcFiles = grunt.config.get('concat.bootstrap.src');
|
var srcFiles = grunt.config.get('concat.core.src');
|
||||||
var destFilepath = 'dist/js/npm.js';
|
var destFilepath = 'dist/js/npm.js';
|
||||||
generateCommonJSModule(grunt, srcFiles, destFilepath);
|
generateCommonJSModule(grunt, srcFiles, destFilepath);
|
||||||
});
|
});
|
||||||
|
|
||||||
// Docs task.
|
// Docs task.
|
||||||
grunt.registerTask('docs-css', ['autoprefixer:docs', 'autoprefixer:examples', 'csscomb:docs', 'csscomb:examples', 'cssmin:docs']);
|
grunt.registerTask('docs-css', ['less:docs', 'less:docsIe', 'postcss:docs', 'postcss:examples', 'cssmin:docs']);
|
||||||
grunt.registerTask('lint-docs-css', ['csslint:docs', 'csslint:examples']);
|
grunt.registerTask('lint-docs-css', ['stylelint:docs', 'stylelint:examples']);
|
||||||
grunt.registerTask('docs-js', ['uglify:docsJs', 'uglify:customize']);
|
grunt.registerTask('docs-js', ['uglify:docs', 'uglify:customize']);
|
||||||
grunt.registerTask('lint-docs-js', ['jshint:assets', 'jscs:assets']);
|
grunt.registerTask('lint-docs-js', ['jshint:assets', 'jscs:assets']);
|
||||||
grunt.registerTask('docs', ['docs-css', 'lint-docs-css', 'docs-js', 'lint-docs-js', 'clean:docs', 'copy:docs', 'build-glyphicons-data', 'build-customizer']);
|
grunt.registerTask('docs', ['docs-css', 'lint-docs-css', 'docs-js', 'lint-docs-js', 'clean:docs', 'copy:docs', 'build-glyphicons-data', 'build-customizer']);
|
||||||
grunt.registerTask('docs-github', ['jekyll:github', 'htmlmin']);
|
|
||||||
|
|
||||||
grunt.registerTask('prep-release', ['dist', 'docs', 'docs-github', 'compress']);
|
grunt.registerTask('prep-release', ['dist', 'docs', 'jekyll:github']);
|
||||||
};
|
};
|
||||||
|
|
4
vendor/bootstrap/ISSUE_TEMPLATE.md
vendored
|
@ -1,7 +1,7 @@
|
||||||
Before opening an issue:
|
Before opening an issue:
|
||||||
|
|
||||||
- [Search for duplicate or closed issues](https://github.com/twbs/bootstrap/issues?utf8=%E2%9C%93&q=is%3Aissue)
|
- [Search for duplicate or closed issues](https://github.com/twbs/bootstrap/issues?utf8=%E2%9C%93&q=is%3Aissue)
|
||||||
- [Validate](http://validator.w3.org/nu/) and [lint](https://github.com/twbs/bootlint#in-the-browser) any HTML to avoid common problems
|
- [Validate](https://validator.w3.org/nu/) and [lint](https://github.com/twbs/bootlint#in-the-browser) any HTML to avoid common problems
|
||||||
- Prepare a [reduced test case](https://css-tricks.com/reduced-test-cases/) for any bugs
|
- Prepare a [reduced test case](https://css-tricks.com/reduced-test-cases/) for any bugs
|
||||||
- Read the [contributing guidelines](https://github.com/twbs/bootstrap/blob/master/CONTRIBUTING.md)
|
- Read the [contributing guidelines](https://github.com/twbs/bootstrap/blob/master/CONTRIBUTING.md)
|
||||||
|
|
||||||
|
@ -14,7 +14,7 @@ When reporting a bug, include:
|
||||||
|
|
||||||
- Operating system and version (Windows, Mac OS X, Android, iOS, Win10 Mobile)
|
- Operating system and version (Windows, Mac OS X, Android, iOS, Win10 Mobile)
|
||||||
- Browser and version (Chrome, Firefox, Safari, IE, MS Edge, Opera 15+, Android Browser)
|
- Browser and version (Chrome, Firefox, Safari, IE, MS Edge, Opera 15+, Android Browser)
|
||||||
- Reduced test cases and potential fixes using [JS Bin](https://jsbin.com)
|
- Reduced test cases and potential fixes using [JS Bin](https://jsbin.com/)
|
||||||
|
|
||||||
When suggesting a feature, include:
|
When suggesting a feature, include:
|
||||||
|
|
||||||
|
|
2
vendor/bootstrap/LICENSE
vendored
|
@ -1,6 +1,6 @@
|
||||||
The MIT License (MIT)
|
The MIT License (MIT)
|
||||||
|
|
||||||
Copyright (c) 2011-2016 Twitter, Inc.
|
Copyright (c) 2011-2019 Twitter, Inc.
|
||||||
|
|
||||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
of this software and associated documentation files (the "Software"), to deal
|
of this software and associated documentation files (the "Software"), to deal
|
||||||
|
|
53
vendor/bootstrap/README.md
vendored
|
@ -1,16 +1,15 @@
|
||||||
# [Bootstrap](http://getbootstrap.com)
|
# [Bootstrap](https://getbootstrap.com/)
|
||||||
|
|
||||||
[](https://bootstrap-slack.herokuapp.com)
|
[](https://bootstrap-slack.herokuapp.com/)
|
||||||

|

|
||||||
[](https://www.npmjs.com/package/bootstrap)
|
[](https://www.npmjs.com/package/bootstrap)
|
||||||
[](https://travis-ci.org/twbs/bootstrap)
|
[](https://travis-ci.org/twbs/bootstrap)
|
||||||
[](https://david-dm.org/twbs/bootstrap#info=devDependencies)
|
[](https://david-dm.org/twbs/bootstrap#info=devDependencies)
|
||||||
[](https://www.nuget.org/packages/Bootstrap)
|
[](https://www.nuget.org/packages/Bootstrap)
|
||||||
[](https://saucelabs.com/u/bootstrap)
|
|
||||||
|
|
||||||
Bootstrap is a sleek, intuitive, and powerful front-end framework for faster and easier web development, created by [Mark Otto](https://twitter.com/mdo) and [Jacob Thornton](https://twitter.com/fat), and maintained by the [core team](https://github.com/orgs/twbs/people) with the massive support and involvement of the community.
|
Bootstrap is a sleek, intuitive, and powerful front-end framework for faster and easier web development, created by [Mark Otto](https://twitter.com/mdo) and [Jacob Thornton](https://twitter.com/fat), and maintained by the [core team](https://github.com/orgs/twbs/people) with the massive support and involvement of the community.
|
||||||
|
|
||||||
To get started, check out <http://getbootstrap.com>!
|
To get started, check out <https://getbootstrap.com/>!
|
||||||
|
|
||||||
|
|
||||||
## Table of contents
|
## Table of contents
|
||||||
|
@ -22,6 +21,7 @@ To get started, check out <http://getbootstrap.com>!
|
||||||
* [Community](#community)
|
* [Community](#community)
|
||||||
* [Versioning](#versioning)
|
* [Versioning](#versioning)
|
||||||
* [Creators](#creators)
|
* [Creators](#creators)
|
||||||
|
* [Thanks](#thanks)
|
||||||
* [Copyright and license](#copyright-and-license)
|
* [Copyright and license](#copyright-and-license)
|
||||||
|
|
||||||
|
|
||||||
|
@ -29,14 +29,14 @@ To get started, check out <http://getbootstrap.com>!
|
||||||
|
|
||||||
Several quick start options are available:
|
Several quick start options are available:
|
||||||
|
|
||||||
* [Download the latest release](https://github.com/twbs/bootstrap/archive/v3.3.7.zip).
|
* [Download the latest release](https://github.com/twbs/bootstrap/archive/v3.4.1.zip).
|
||||||
* Clone the repo: `git clone https://github.com/twbs/bootstrap.git`.
|
* Clone the repo: `git clone https://github.com/twbs/bootstrap.git`.
|
||||||
* Install with [Bower](http://bower.io): `bower install bootstrap`.
|
* Install with [Bower](https://bower.io/): `bower install bootstrap`.
|
||||||
* Install with [npm](https://www.npmjs.com): `npm install bootstrap@3`.
|
* Install with [npm](https://www.npmjs.com/): `npm install bootstrap@3`.
|
||||||
* Install with [Meteor](https://www.meteor.com): `meteor add twbs:bootstrap`.
|
* Install with [Meteor](https://www.meteor.com/): `meteor add twbs:bootstrap`.
|
||||||
* Install with [Composer](https://getcomposer.org): `composer require twbs/bootstrap`.
|
* Install with [Composer](https://getcomposer.org/): `composer require twbs/bootstrap`.
|
||||||
|
|
||||||
Read the [Getting started page](http://getbootstrap.com/getting-started/) for information on the framework contents, templates and examples, and more.
|
Read the [Getting started page](https://getbootstrap.com/docs/3.4/getting-started/) for information on the framework contents, templates and examples, and more.
|
||||||
|
|
||||||
### What's included
|
### What's included
|
||||||
|
|
||||||
|
@ -64,7 +64,7 @@ bootstrap/
|
||||||
└── glyphicons-halflings-regular.woff2
|
└── glyphicons-halflings-regular.woff2
|
||||||
```
|
```
|
||||||
|
|
||||||
We provide compiled CSS and JS (`bootstrap.*`), as well as compiled and minified CSS and JS (`bootstrap.min.*`). CSS [source maps](https://developer.chrome.com/devtools/docs/css-preprocessors) (`bootstrap.*.map`) are available for use with certain browsers' developer tools. Fonts from Glyphicons are included, as is the optional Bootstrap theme.
|
We provide compiled CSS and JS (`bootstrap.*`), as well as compiled and minified CSS and JS (`bootstrap.min.*`). CSS [source maps](https://developers.google.com/web/tools/chrome-devtools/javascript/source-maps) (`bootstrap.*.map`) are available for use with certain browsers' developer tools. Fonts from Glyphicons are included, as is the optional Bootstrap theme.
|
||||||
|
|
||||||
|
|
||||||
## Bugs and feature requests
|
## Bugs and feature requests
|
||||||
|
@ -76,20 +76,20 @@ Note that **feature requests must target [Bootstrap v4](https://github.com/twbs/
|
||||||
|
|
||||||
## Documentation
|
## Documentation
|
||||||
|
|
||||||
Bootstrap's documentation, included in this repo in the root directory, is built with [Jekyll](http://jekyllrb.com) and publicly hosted on GitHub Pages at <http://getbootstrap.com>. The docs may also be run locally.
|
Bootstrap's documentation, included in this repo in the root directory, is built with [Jekyll](https://jekyllrb.com/) and publicly hosted on GitHub Pages at <https://getbootstrap.com/>. The docs may also be run locally.
|
||||||
|
|
||||||
### Running documentation locally
|
### Running documentation locally
|
||||||
|
|
||||||
1. If necessary, [install Jekyll](http://jekyllrb.com/docs/installation) and other Ruby dependencies with `bundle install`.
|
1. If necessary, [install Jekyll](https://jekyllrb.com/docs/installation/) and other Ruby dependencies with `bundle install`.
|
||||||
**Note for Windows users:** Read [this unofficial guide](http://jekyll-windows.juthilo.com/) to get Jekyll up and running without problems.
|
**Note for Windows users:** Read [this guide](https://jekyllrb.com/docs/installation/windows/) to get Jekyll up and running without problems.
|
||||||
2. From the root `/bootstrap` directory, run `bundle exec jekyll serve` in the command line.
|
2. From the root `/bootstrap` directory, run `bundle exec jekyll serve` in the command line.
|
||||||
4. Open `http://localhost:9001` in your browser, and voilà.
|
4. Open `http://localhost:9001` in your browser, and voilà.
|
||||||
|
|
||||||
Learn more about using Jekyll by reading its [documentation](http://jekyllrb.com/docs/home/).
|
Learn more about using Jekyll by reading its [documentation](https://jekyllrb.com/docs/).
|
||||||
|
|
||||||
### Documentation for previous releases
|
### Documentation for previous releases
|
||||||
|
|
||||||
Documentation for v2.3.2 has been made available for the time being at <http://getbootstrap.com/2.3.2/> while folks transition to Bootstrap 3.
|
Documentation for v2.3.2 has been made available for the time being at <https://getbootstrap.com/2.3.2/> while folks transition to Bootstrap 3.
|
||||||
|
|
||||||
[Previous releases](https://github.com/twbs/bootstrap/releases) and their documentation are also available for download.
|
[Previous releases](https://github.com/twbs/bootstrap/releases) and their documentation are also available for download.
|
||||||
|
|
||||||
|
@ -102,7 +102,7 @@ Moreover, if your pull request contains JavaScript patches or features, you must
|
||||||
|
|
||||||
**Bootstrap v3 is now closed off to new features.** It has gone into maintenance mode so that we can focus our efforts on [Bootstrap v4](https://github.com/twbs/bootstrap/tree/v4-dev), the future of the framework. Pull requests which add new features (rather than fix bugs) should target [Bootstrap v4 (the `v4-dev` git branch)](https://github.com/twbs/bootstrap/tree/v4-dev) instead.
|
**Bootstrap v3 is now closed off to new features.** It has gone into maintenance mode so that we can focus our efforts on [Bootstrap v4](https://github.com/twbs/bootstrap/tree/v4-dev), the future of the framework. Pull requests which add new features (rather than fix bugs) should target [Bootstrap v4 (the `v4-dev` git branch)](https://github.com/twbs/bootstrap/tree/v4-dev) instead.
|
||||||
|
|
||||||
Editor preferences are available in the [editor config](https://github.com/twbs/bootstrap/blob/master/.editorconfig) for easy use in common text editors. Read more and download plugins at <http://editorconfig.org>.
|
Editor preferences are available in the [editor config](https://github.com/twbs/bootstrap/blob/master/.editorconfig) for easy use in common text editors. Read more and download plugins at <https://editorconfig.org/>.
|
||||||
|
|
||||||
|
|
||||||
## Community
|
## Community
|
||||||
|
@ -110,18 +110,25 @@ Editor preferences are available in the [editor config](https://github.com/twbs/
|
||||||
Get updates on Bootstrap's development and chat with the project maintainers and community members.
|
Get updates on Bootstrap's development and chat with the project maintainers and community members.
|
||||||
|
|
||||||
* Follow [@getbootstrap on Twitter](https://twitter.com/getbootstrap).
|
* Follow [@getbootstrap on Twitter](https://twitter.com/getbootstrap).
|
||||||
* Read and subscribe to [The Official Bootstrap Blog](http://blog.getbootstrap.com).
|
* Read and subscribe to [The Official Bootstrap Blog](https://blog.getbootstrap.com/).
|
||||||
* Join [the official Slack room](https://bootstrap-slack.herokuapp.com).
|
* Join [the official Slack room](https://bootstrap-slack.herokuapp.com/).
|
||||||
* Chat with fellow Bootstrappers in IRC. On the `irc.freenode.net` server, in the `##bootstrap` channel.
|
* Chat with fellow Bootstrappers in IRC. On the `irc.freenode.net` server, in the `##bootstrap` channel.
|
||||||
* Implementation help may be found at Stack Overflow (tagged [`twitter-bootstrap-3`](https://stackoverflow.com/questions/tagged/twitter-bootstrap-3)).
|
* Implementation help may be found at Stack Overflow (tagged [`twitter-bootstrap-3`](https://stackoverflow.com/questions/tagged/twitter-bootstrap-3)).
|
||||||
* Developers should use the keyword `bootstrap` on packages which modify or add to the functionality of Bootstrap when distributing through [npm](https://www.npmjs.com/browse/keyword/bootstrap) or similar delivery mechanisms for maximum discoverability.
|
* Developers should use the keyword `bootstrap` on packages which modify or add to the functionality of Bootstrap when distributing through [npm](https://www.npmjs.com/search?q=keywords:bootstrap) or similar delivery mechanisms for maximum discoverability.
|
||||||
|
|
||||||
|
|
||||||
## Versioning
|
## Versioning
|
||||||
|
|
||||||
For transparency into our release cycle and in striving to maintain backward compatibility, Bootstrap is maintained under [the Semantic Versioning guidelines](http://semver.org/). Sometimes we screw up, but we'll adhere to those rules whenever possible.
|
For transparency into our release cycle and in striving to maintain backward compatibility, Bootstrap is maintained under [the Semantic Versioning guidelines](https://semver.org/). Sometimes we screw up, but we'll adhere to those rules whenever possible.
|
||||||
|
|
||||||
See [the Releases section of our GitHub project](https://github.com/twbs/bootstrap/releases) for changelogs for each release version of Bootstrap. Release announcement posts on [the official Bootstrap blog](http://blog.getbootstrap.com) contain summaries of the most noteworthy changes made in each release.
|
See [the Releases section of our GitHub project](https://github.com/twbs/bootstrap/releases) for changelogs for each release version of Bootstrap. Release announcement posts on [the official Bootstrap blog](https://blog.getbootstrap.com/) contain summaries of the most noteworthy changes made in each release.
|
||||||
|
|
||||||
|
|
||||||
|
## Thanks
|
||||||
|
|
||||||
|
<img src="https://live.browserstack.com/images/opensource/browserstack-logo.svg" alt="BrowserStack Logo" width="490" height="106">
|
||||||
|
|
||||||
|
Thanks to [BrowserStack](https://www.browserstack.com/) for providing the infrastructure that allows us to test in real browsers!
|
||||||
|
|
||||||
|
|
||||||
## Creators
|
## Creators
|
||||||
|
@ -139,4 +146,4 @@ See [the Releases section of our GitHub project](https://github.com/twbs/bootstr
|
||||||
|
|
||||||
## Copyright and license
|
## Copyright and license
|
||||||
|
|
||||||
Code and documentation copyright 2011-2016 Twitter, Inc. Code released under [the MIT license](https://github.com/twbs/bootstrap/blob/master/LICENSE). Docs released under [Creative Commons](https://github.com/twbs/bootstrap/blob/master/docs/LICENSE).
|
Code and documentation copyright 2011-2019 Twitter, Inc. Code released under [the MIT license](https://github.com/twbs/bootstrap/blob/master/LICENSE). Docs released under [Creative Commons](https://github.com/twbs/bootstrap/blob/master/docs/LICENSE).
|
||||||
|
|
35
vendor/bootstrap/_config.yml
vendored
|
@ -10,31 +10,36 @@ source: docs
|
||||||
destination: _gh_pages
|
destination: _gh_pages
|
||||||
host: 0.0.0.0
|
host: 0.0.0.0
|
||||||
port: 9001
|
port: 9001
|
||||||
url: http://getbootstrap.com
|
url: https://getbootstrap.com
|
||||||
|
baseurl: /docs/3.4
|
||||||
encoding: UTF-8
|
encoding: UTF-8
|
||||||
|
exclude:
|
||||||
|
- assets/less/
|
||||||
|
|
||||||
gems:
|
plugins:
|
||||||
|
- jekyll-redirect-from
|
||||||
- jekyll-sitemap
|
- jekyll-sitemap
|
||||||
|
|
||||||
# Custom vars
|
# Custom vars
|
||||||
current_version: 3.3.7
|
current_version: 3.4.1
|
||||||
|
docs_version: 3.4
|
||||||
repo: https://github.com/twbs/bootstrap
|
repo: https://github.com/twbs/bootstrap
|
||||||
sass_repo: https://github.com/twbs/bootstrap-sass
|
sass_repo: https://github.com/twbs/bootstrap-sass
|
||||||
|
|
||||||
download:
|
download:
|
||||||
source: https://github.com/twbs/bootstrap/archive/v3.3.7.zip
|
source: https://github.com/twbs/bootstrap/archive/v3.4.1.zip
|
||||||
dist: https://github.com/twbs/bootstrap/releases/download/v3.3.7/bootstrap-3.3.7-dist.zip
|
dist: https://github.com/twbs/bootstrap/releases/download/v3.4.1/bootstrap-3.4.1-dist.zip
|
||||||
sass: https://github.com/twbs/bootstrap-sass/archive/v3.3.7.tar.gz
|
sass: https://github.com/twbs/bootstrap-sass/archive/v3.4.1.tar.gz
|
||||||
|
|
||||||
blog: http://blog.getbootstrap.com
|
blog: https://blog.getbootstrap.com
|
||||||
expo: http://expo.getbootstrap.com
|
expo: https://expo.getbootstrap.com
|
||||||
themes: http://themes.getbootstrap.com
|
themes: https://themes.getbootstrap.com
|
||||||
|
|
||||||
cdn:
|
cdn:
|
||||||
# See https://www.srihash.org for info on how to generate the hashes
|
# See https://www.srihash.org for info on how to generate the hashes
|
||||||
css: https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css
|
css: https://stackpath.bootstrapcdn.com/bootstrap/3.4.1/css/bootstrap.min.css
|
||||||
css_hash: "sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u"
|
css_hash: "sha384-HSMxcRTRxnN+Bdg0JdbxYKrThecOKuH5zCYotlSAcp1+c8xmyTe9GYg1l9a69psu"
|
||||||
css_theme: https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap-theme.min.css
|
css_theme: https://stackpath.bootstrapcdn.com/bootstrap/3.4.1/css/bootstrap-theme.min.css
|
||||||
css_theme_hash: "sha384-rHyoN1iRsVXV4nD0JutlnGaslCJuC7uwjduW9SVrLvRYooPp2bWYgmgJQIXwl/Sp"
|
css_theme_hash: "sha384-6pzBo3FDv/PJ8r2KRkGHifhEocL+1X2rVCTTkUfGk7/0pbek5mMa1upzvWbrUbOZ"
|
||||||
js: https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js
|
js: https://stackpath.bootstrapcdn.com/bootstrap/3.4.1/js/bootstrap.min.js
|
||||||
js_hash: "sha384-Tc5IQib027qvyjSMfHjOMaLkfuWVxZxUPnCJA7l2mCWNIpG9mGCD8wGNIcPD7Txa"
|
js_hash: "sha384-aJ21OjlMXNL5UyIl/XNwTMqvzeRMZH2w8c5cRVpzpU8Y5bApTppSuUkhZXN0VxHd"
|
||||||
|
|
2
vendor/bootstrap/bower.json
vendored
|
@ -11,7 +11,7 @@
|
||||||
"framework",
|
"framework",
|
||||||
"web"
|
"web"
|
||||||
],
|
],
|
||||||
"homepage": "http://getbootstrap.com",
|
"homepage": "https://getbootstrap.com/",
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"moduleType": "globals",
|
"moduleType": "globals",
|
||||||
"main": [
|
"main": [
|
||||||
|
|
4
vendor/bootstrap/composer.json
vendored
|
@ -11,7 +11,7 @@
|
||||||
"framework",
|
"framework",
|
||||||
"web"
|
"web"
|
||||||
],
|
],
|
||||||
"homepage": "http://getbootstrap.com",
|
"homepage": "https://getbootstrap.com/",
|
||||||
"authors": [
|
"authors": [
|
||||||
{
|
{
|
||||||
"name": "Mark Otto",
|
"name": "Mark Otto",
|
||||||
|
@ -28,7 +28,7 @@
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"extra": {
|
"extra": {
|
||||||
"branch-alias": {
|
"branch-alias": {
|
||||||
"dev-master": "3.3.x-dev"
|
"dev-master": "3.4.x-dev"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"replace": {
|
"replace": {
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
/*!
|
/*!
|
||||||
* Bootstrap v3.3.7 (http://getbootstrap.com)
|
* Bootstrap v3.4.1 (https://getbootstrap.com/)
|
||||||
* Copyright 2011-2016 Twitter, Inc.
|
* Copyright 2011-2019 Twitter, Inc.
|
||||||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
||||||
*/
|
*/
|
||||||
.btn-default,
|
.btn-default,
|
||||||
|
@ -9,9 +9,9 @@
|
||||||
.btn-info,
|
.btn-info,
|
||||||
.btn-warning,
|
.btn-warning,
|
||||||
.btn-danger {
|
.btn-danger {
|
||||||
text-shadow: 0 -1px 0 rgba(0, 0, 0, .2);
|
text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.2);
|
||||||
-webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, .15), 0 1px 1px rgba(0, 0, 0, .075);
|
-webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);
|
||||||
box-shadow: inset 0 1px 0 rgba(255, 255, 255, .15), 0 1px 1px rgba(0, 0, 0, .075);
|
box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);
|
||||||
}
|
}
|
||||||
.btn-default:active,
|
.btn-default:active,
|
||||||
.btn-primary:active,
|
.btn-primary:active,
|
||||||
|
@ -25,8 +25,8 @@
|
||||||
.btn-info.active,
|
.btn-info.active,
|
||||||
.btn-warning.active,
|
.btn-warning.active,
|
||||||
.btn-danger.active {
|
.btn-danger.active {
|
||||||
-webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125);
|
-webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
|
||||||
box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125);
|
box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
|
||||||
}
|
}
|
||||||
.btn-default.disabled,
|
.btn-default.disabled,
|
||||||
.btn-primary.disabled,
|
.btn-primary.disabled,
|
||||||
|
@ -62,7 +62,6 @@ fieldset[disabled] .btn-danger {
|
||||||
background-image: none;
|
background-image: none;
|
||||||
}
|
}
|
||||||
.btn-default {
|
.btn-default {
|
||||||
text-shadow: 0 1px 0 #fff;
|
|
||||||
background-image: -webkit-linear-gradient(top, #fff 0%, #e0e0e0 100%);
|
background-image: -webkit-linear-gradient(top, #fff 0%, #e0e0e0 100%);
|
||||||
background-image: -o-linear-gradient(top, #fff 0%, #e0e0e0 100%);
|
background-image: -o-linear-gradient(top, #fff 0%, #e0e0e0 100%);
|
||||||
background-image: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#e0e0e0));
|
background-image: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#e0e0e0));
|
||||||
|
@ -71,6 +70,7 @@ fieldset[disabled] .btn-danger {
|
||||||
filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
|
filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
|
||||||
background-repeat: repeat-x;
|
background-repeat: repeat-x;
|
||||||
border-color: #dbdbdb;
|
border-color: #dbdbdb;
|
||||||
|
text-shadow: 0 1px 0 #fff;
|
||||||
border-color: #ccc;
|
border-color: #ccc;
|
||||||
}
|
}
|
||||||
.btn-default:hover,
|
.btn-default:hover,
|
||||||
|
@ -311,41 +311,41 @@ fieldset[disabled] .btn-danger.active {
|
||||||
}
|
}
|
||||||
.thumbnail,
|
.thumbnail,
|
||||||
.img-thumbnail {
|
.img-thumbnail {
|
||||||
-webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, .075);
|
-webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.075);
|
||||||
box-shadow: 0 1px 2px rgba(0, 0, 0, .075);
|
box-shadow: 0 1px 2px rgba(0, 0, 0, 0.075);
|
||||||
}
|
}
|
||||||
.dropdown-menu > li > a:hover,
|
.dropdown-menu > li > a:hover,
|
||||||
.dropdown-menu > li > a:focus {
|
.dropdown-menu > li > a:focus {
|
||||||
background-color: #e8e8e8;
|
|
||||||
background-image: -webkit-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%);
|
background-image: -webkit-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%);
|
||||||
background-image: -o-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%);
|
background-image: -o-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%);
|
||||||
background-image: -webkit-gradient(linear, left top, left bottom, from(#f5f5f5), to(#e8e8e8));
|
background-image: -webkit-gradient(linear, left top, left bottom, from(#f5f5f5), to(#e8e8e8));
|
||||||
background-image: linear-gradient(to bottom, #f5f5f5 0%, #e8e8e8 100%);
|
background-image: linear-gradient(to bottom, #f5f5f5 0%, #e8e8e8 100%);
|
||||||
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#ffe8e8e8', GradientType=0);
|
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#ffe8e8e8', GradientType=0);
|
||||||
background-repeat: repeat-x;
|
background-repeat: repeat-x;
|
||||||
|
background-color: #e8e8e8;
|
||||||
}
|
}
|
||||||
.dropdown-menu > .active > a,
|
.dropdown-menu > .active > a,
|
||||||
.dropdown-menu > .active > a:hover,
|
.dropdown-menu > .active > a:hover,
|
||||||
.dropdown-menu > .active > a:focus {
|
.dropdown-menu > .active > a:focus {
|
||||||
background-color: #2e6da4;
|
|
||||||
background-image: -webkit-linear-gradient(top, #337ab7 0%, #2e6da4 100%);
|
background-image: -webkit-linear-gradient(top, #337ab7 0%, #2e6da4 100%);
|
||||||
background-image: -o-linear-gradient(top, #337ab7 0%, #2e6da4 100%);
|
background-image: -o-linear-gradient(top, #337ab7 0%, #2e6da4 100%);
|
||||||
background-image: -webkit-gradient(linear, left top, left bottom, from(#337ab7), to(#2e6da4));
|
background-image: -webkit-gradient(linear, left top, left bottom, from(#337ab7), to(#2e6da4));
|
||||||
background-image: linear-gradient(to bottom, #337ab7 0%, #2e6da4 100%);
|
background-image: linear-gradient(to bottom, #337ab7 0%, #2e6da4 100%);
|
||||||
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0);
|
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0);
|
||||||
background-repeat: repeat-x;
|
background-repeat: repeat-x;
|
||||||
|
background-color: #2e6da4;
|
||||||
}
|
}
|
||||||
.navbar-default {
|
.navbar-default {
|
||||||
background-image: -webkit-linear-gradient(top, #fff 0%, #f8f8f8 100%);
|
background-image: -webkit-linear-gradient(top, #ffffff 0%, #f8f8f8 100%);
|
||||||
background-image: -o-linear-gradient(top, #fff 0%, #f8f8f8 100%);
|
background-image: -o-linear-gradient(top, #ffffff 0%, #f8f8f8 100%);
|
||||||
background-image: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#f8f8f8));
|
background-image: -webkit-gradient(linear, left top, left bottom, from(#ffffff), to(#f8f8f8));
|
||||||
background-image: linear-gradient(to bottom, #fff 0%, #f8f8f8 100%);
|
background-image: linear-gradient(to bottom, #ffffff 0%, #f8f8f8 100%);
|
||||||
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#fff8f8f8', GradientType=0);
|
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#fff8f8f8', GradientType=0);
|
||||||
filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
|
|
||||||
background-repeat: repeat-x;
|
background-repeat: repeat-x;
|
||||||
|
filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
|
||||||
border-radius: 4px;
|
border-radius: 4px;
|
||||||
-webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, .15), 0 1px 5px rgba(0, 0, 0, .075);
|
-webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 5px rgba(0, 0, 0, 0.075);
|
||||||
box-shadow: inset 0 1px 0 rgba(255, 255, 255, .15), 0 1px 5px rgba(0, 0, 0, .075);
|
box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 5px rgba(0, 0, 0, 0.075);
|
||||||
}
|
}
|
||||||
.navbar-default .navbar-nav > .open > a,
|
.navbar-default .navbar-nav > .open > a,
|
||||||
.navbar-default .navbar-nav > .active > a {
|
.navbar-default .navbar-nav > .active > a {
|
||||||
|
@ -355,12 +355,12 @@ fieldset[disabled] .btn-danger.active {
|
||||||
background-image: linear-gradient(to bottom, #dbdbdb 0%, #e2e2e2 100%);
|
background-image: linear-gradient(to bottom, #dbdbdb 0%, #e2e2e2 100%);
|
||||||
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdbdbdb', endColorstr='#ffe2e2e2', GradientType=0);
|
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdbdbdb', endColorstr='#ffe2e2e2', GradientType=0);
|
||||||
background-repeat: repeat-x;
|
background-repeat: repeat-x;
|
||||||
-webkit-box-shadow: inset 0 3px 9px rgba(0, 0, 0, .075);
|
-webkit-box-shadow: inset 0 3px 9px rgba(0, 0, 0, 0.075);
|
||||||
box-shadow: inset 0 3px 9px rgba(0, 0, 0, .075);
|
box-shadow: inset 0 3px 9px rgba(0, 0, 0, 0.075);
|
||||||
}
|
}
|
||||||
.navbar-brand,
|
.navbar-brand,
|
||||||
.navbar-nav > li > a {
|
.navbar-nav > li > a {
|
||||||
text-shadow: 0 1px 0 rgba(255, 255, 255, .25);
|
text-shadow: 0 1px 0 rgba(255, 255, 255, 0.25);
|
||||||
}
|
}
|
||||||
.navbar-inverse {
|
.navbar-inverse {
|
||||||
background-image: -webkit-linear-gradient(top, #3c3c3c 0%, #222 100%);
|
background-image: -webkit-linear-gradient(top, #3c3c3c 0%, #222 100%);
|
||||||
|
@ -368,8 +368,8 @@ fieldset[disabled] .btn-danger.active {
|
||||||
background-image: -webkit-gradient(linear, left top, left bottom, from(#3c3c3c), to(#222));
|
background-image: -webkit-gradient(linear, left top, left bottom, from(#3c3c3c), to(#222));
|
||||||
background-image: linear-gradient(to bottom, #3c3c3c 0%, #222 100%);
|
background-image: linear-gradient(to bottom, #3c3c3c 0%, #222 100%);
|
||||||
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff3c3c3c', endColorstr='#ff222222', GradientType=0);
|
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff3c3c3c', endColorstr='#ff222222', GradientType=0);
|
||||||
filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
|
|
||||||
background-repeat: repeat-x;
|
background-repeat: repeat-x;
|
||||||
|
filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
|
||||||
border-radius: 4px;
|
border-radius: 4px;
|
||||||
}
|
}
|
||||||
.navbar-inverse .navbar-nav > .open > a,
|
.navbar-inverse .navbar-nav > .open > a,
|
||||||
|
@ -380,12 +380,12 @@ fieldset[disabled] .btn-danger.active {
|
||||||
background-image: linear-gradient(to bottom, #080808 0%, #0f0f0f 100%);
|
background-image: linear-gradient(to bottom, #080808 0%, #0f0f0f 100%);
|
||||||
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff080808', endColorstr='#ff0f0f0f', GradientType=0);
|
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff080808', endColorstr='#ff0f0f0f', GradientType=0);
|
||||||
background-repeat: repeat-x;
|
background-repeat: repeat-x;
|
||||||
-webkit-box-shadow: inset 0 3px 9px rgba(0, 0, 0, .25);
|
-webkit-box-shadow: inset 0 3px 9px rgba(0, 0, 0, 0.25);
|
||||||
box-shadow: inset 0 3px 9px rgba(0, 0, 0, .25);
|
box-shadow: inset 0 3px 9px rgba(0, 0, 0, 0.25);
|
||||||
}
|
}
|
||||||
.navbar-inverse .navbar-brand,
|
.navbar-inverse .navbar-brand,
|
||||||
.navbar-inverse .navbar-nav > li > a {
|
.navbar-inverse .navbar-nav > li > a {
|
||||||
text-shadow: 0 -1px 0 rgba(0, 0, 0, .25);
|
text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
|
||||||
}
|
}
|
||||||
.navbar-static-top,
|
.navbar-static-top,
|
||||||
.navbar-fixed-top,
|
.navbar-fixed-top,
|
||||||
|
@ -406,9 +406,9 @@ fieldset[disabled] .btn-danger.active {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
.alert {
|
.alert {
|
||||||
text-shadow: 0 1px 0 rgba(255, 255, 255, .2);
|
text-shadow: 0 1px 0 rgba(255, 255, 255, 0.2);
|
||||||
-webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, .25), 0 1px 2px rgba(0, 0, 0, .05);
|
-webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25), 0 1px 2px rgba(0, 0, 0, 0.05);
|
||||||
box-shadow: inset 0 1px 0 rgba(255, 255, 255, .25), 0 1px 2px rgba(0, 0, 0, .05);
|
box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25), 0 1px 2px rgba(0, 0, 0, 0.05);
|
||||||
}
|
}
|
||||||
.alert-success {
|
.alert-success {
|
||||||
background-image: -webkit-linear-gradient(top, #dff0d8 0%, #c8e5bc 100%);
|
background-image: -webkit-linear-gradient(top, #dff0d8 0%, #c8e5bc 100%);
|
||||||
|
@ -495,14 +495,14 @@ fieldset[disabled] .btn-danger.active {
|
||||||
background-repeat: repeat-x;
|
background-repeat: repeat-x;
|
||||||
}
|
}
|
||||||
.progress-bar-striped {
|
.progress-bar-striped {
|
||||||
background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent);
|
background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
|
||||||
background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent);
|
background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
|
||||||
background-image: linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent);
|
background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
|
||||||
}
|
}
|
||||||
.list-group {
|
.list-group {
|
||||||
border-radius: 4px;
|
border-radius: 4px;
|
||||||
-webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, .075);
|
-webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.075);
|
||||||
box-shadow: 0 1px 2px rgba(0, 0, 0, .075);
|
box-shadow: 0 1px 2px rgba(0, 0, 0, 0.075);
|
||||||
}
|
}
|
||||||
.list-group-item.active,
|
.list-group-item.active,
|
||||||
.list-group-item.active:hover,
|
.list-group-item.active:hover,
|
||||||
|
@ -522,8 +522,8 @@ fieldset[disabled] .btn-danger.active {
|
||||||
text-shadow: none;
|
text-shadow: none;
|
||||||
}
|
}
|
||||||
.panel {
|
.panel {
|
||||||
-webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, .05);
|
-webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
|
||||||
box-shadow: 0 1px 2px rgba(0, 0, 0, .05);
|
box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
|
||||||
}
|
}
|
||||||
.panel-default > .panel-heading {
|
.panel-default > .panel-heading {
|
||||||
background-image: -webkit-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%);
|
background-image: -webkit-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%);
|
||||||
|
@ -581,7 +581,7 @@ fieldset[disabled] .btn-danger.active {
|
||||||
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffe8e8e8', endColorstr='#fff5f5f5', GradientType=0);
|
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffe8e8e8', endColorstr='#fff5f5f5', GradientType=0);
|
||||||
background-repeat: repeat-x;
|
background-repeat: repeat-x;
|
||||||
border-color: #dcdcdc;
|
border-color: #dcdcdc;
|
||||||
-webkit-box-shadow: inset 0 1px 3px rgba(0, 0, 0, .05), 0 1px 0 rgba(255, 255, 255, .1);
|
-webkit-box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.05), 0 1px 0 rgba(255, 255, 255, 0.1);
|
||||||
box-shadow: inset 0 1px 3px rgba(0, 0, 0, .05), 0 1px 0 rgba(255, 255, 255, .1);
|
box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.05), 0 1px 0 rgba(255, 255, 255, 0.1);
|
||||||
}
|
}
|
||||||
/*# sourceMappingURL=bootstrap-theme.css.map */
|
/*# sourceMappingURL=bootstrap-theme.css.map */
|
BIN
vendor/bootstrap/dist/css/bootstrap-theme.css.map
vendored
BIN
vendor/bootstrap/dist/css/bootstrap.css.map
vendored
6
vendor/bootstrap/dist/css/bootstrap.min.css
vendored
BIN
vendor/bootstrap/dist/css/bootstrap.min.css.map
vendored
|
@ -1,6 +1,6 @@
|
||||||
/*!
|
/*!
|
||||||
* Bootstrap v3.3.7 (http://getbootstrap.com)
|
* Bootstrap v3.4.1 (https://getbootstrap.com/)
|
||||||
* Copyright 2011-2016 Twitter, Inc.
|
* Copyright 2011-2019 Twitter, Inc.
|
||||||
* Licensed under the MIT license
|
* Licensed under the MIT license
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
@ -17,10 +17,10 @@ if (typeof jQuery === 'undefined') {
|
||||||
}(jQuery);
|
}(jQuery);
|
||||||
|
|
||||||
/* ========================================================================
|
/* ========================================================================
|
||||||
* Bootstrap: transition.js v3.3.7
|
* Bootstrap: transition.js v3.4.1
|
||||||
* http://getbootstrap.com/javascript/#transitions
|
* https://getbootstrap.com/docs/3.4/javascript/#transitions
|
||||||
* ========================================================================
|
* ========================================================================
|
||||||
* Copyright 2011-2016 Twitter, Inc.
|
* Copyright 2011-2019 Twitter, Inc.
|
||||||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
||||||
* ======================================================================== */
|
* ======================================================================== */
|
||||||
|
|
||||||
|
@ -28,7 +28,7 @@ if (typeof jQuery === 'undefined') {
|
||||||
+function ($) {
|
+function ($) {
|
||||||
'use strict';
|
'use strict';
|
||||||
|
|
||||||
// CSS TRANSITION SUPPORT (Shoutout: http://www.modernizr.com/)
|
// CSS TRANSITION SUPPORT (Shoutout: https://modernizr.com/)
|
||||||
// ============================================================
|
// ============================================================
|
||||||
|
|
||||||
function transitionEnd() {
|
function transitionEnd() {
|
||||||
|
@ -50,7 +50,7 @@ if (typeof jQuery === 'undefined') {
|
||||||
return false // explicit for ie8 ( ._.)
|
return false // explicit for ie8 ( ._.)
|
||||||
}
|
}
|
||||||
|
|
||||||
// http://blog.alexmaccaw.com/css-transitions
|
// https://blog.alexmaccaw.com/css-transitions
|
||||||
$.fn.emulateTransitionEnd = function (duration) {
|
$.fn.emulateTransitionEnd = function (duration) {
|
||||||
var called = false
|
var called = false
|
||||||
var $el = this
|
var $el = this
|
||||||
|
@ -77,10 +77,10 @@ if (typeof jQuery === 'undefined') {
|
||||||
}(jQuery);
|
}(jQuery);
|
||||||
|
|
||||||
/* ========================================================================
|
/* ========================================================================
|
||||||
* Bootstrap: alert.js v3.3.7
|
* Bootstrap: alert.js v3.4.1
|
||||||
* http://getbootstrap.com/javascript/#alerts
|
* https://getbootstrap.com/docs/3.4/javascript/#alerts
|
||||||
* ========================================================================
|
* ========================================================================
|
||||||
* Copyright 2011-2016 Twitter, Inc.
|
* Copyright 2011-2019 Twitter, Inc.
|
||||||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
||||||
* ======================================================================== */
|
* ======================================================================== */
|
||||||
|
|
||||||
|
@ -96,7 +96,7 @@ if (typeof jQuery === 'undefined') {
|
||||||
$(el).on('click', dismiss, this.close)
|
$(el).on('click', dismiss, this.close)
|
||||||
}
|
}
|
||||||
|
|
||||||
Alert.VERSION = '3.3.7'
|
Alert.VERSION = '3.4.1'
|
||||||
|
|
||||||
Alert.TRANSITION_DURATION = 150
|
Alert.TRANSITION_DURATION = 150
|
||||||
|
|
||||||
|
@ -109,7 +109,8 @@ if (typeof jQuery === 'undefined') {
|
||||||
selector = selector && selector.replace(/.*(?=#[^\s]*$)/, '') // strip for ie7
|
selector = selector && selector.replace(/.*(?=#[^\s]*$)/, '') // strip for ie7
|
||||||
}
|
}
|
||||||
|
|
||||||
var $parent = $(selector === '#' ? [] : selector)
|
selector = selector === '#' ? [] : selector
|
||||||
|
var $parent = $(document).find(selector)
|
||||||
|
|
||||||
if (e) e.preventDefault()
|
if (e) e.preventDefault()
|
||||||
|
|
||||||
|
@ -172,10 +173,10 @@ if (typeof jQuery === 'undefined') {
|
||||||
}(jQuery);
|
}(jQuery);
|
||||||
|
|
||||||
/* ========================================================================
|
/* ========================================================================
|
||||||
* Bootstrap: button.js v3.3.7
|
* Bootstrap: button.js v3.4.1
|
||||||
* http://getbootstrap.com/javascript/#buttons
|
* https://getbootstrap.com/docs/3.4/javascript/#buttons
|
||||||
* ========================================================================
|
* ========================================================================
|
||||||
* Copyright 2011-2016 Twitter, Inc.
|
* Copyright 2011-2019 Twitter, Inc.
|
||||||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
||||||
* ======================================================================== */
|
* ======================================================================== */
|
||||||
|
|
||||||
|
@ -192,7 +193,7 @@ if (typeof jQuery === 'undefined') {
|
||||||
this.isLoading = false
|
this.isLoading = false
|
||||||
}
|
}
|
||||||
|
|
||||||
Button.VERSION = '3.3.7'
|
Button.VERSION = '3.4.1'
|
||||||
|
|
||||||
Button.DEFAULTS = {
|
Button.DEFAULTS = {
|
||||||
loadingText: 'loading...'
|
loadingText: 'loading...'
|
||||||
|
@ -298,10 +299,10 @@ if (typeof jQuery === 'undefined') {
|
||||||
}(jQuery);
|
}(jQuery);
|
||||||
|
|
||||||
/* ========================================================================
|
/* ========================================================================
|
||||||
* Bootstrap: carousel.js v3.3.7
|
* Bootstrap: carousel.js v3.4.1
|
||||||
* http://getbootstrap.com/javascript/#carousel
|
* https://getbootstrap.com/docs/3.4/javascript/#carousel
|
||||||
* ========================================================================
|
* ========================================================================
|
||||||
* Copyright 2011-2016 Twitter, Inc.
|
* Copyright 2011-2019 Twitter, Inc.
|
||||||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
||||||
* ======================================================================== */
|
* ======================================================================== */
|
||||||
|
|
||||||
|
@ -329,7 +330,7 @@ if (typeof jQuery === 'undefined') {
|
||||||
.on('mouseleave.bs.carousel', $.proxy(this.cycle, this))
|
.on('mouseleave.bs.carousel', $.proxy(this.cycle, this))
|
||||||
}
|
}
|
||||||
|
|
||||||
Carousel.VERSION = '3.3.7'
|
Carousel.VERSION = '3.4.1'
|
||||||
|
|
||||||
Carousel.TRANSITION_DURATION = 600
|
Carousel.TRANSITION_DURATION = 600
|
||||||
|
|
||||||
|
@ -443,7 +444,9 @@ if (typeof jQuery === 'undefined') {
|
||||||
var slidEvent = $.Event('slid.bs.carousel', { relatedTarget: relatedTarget, direction: direction }) // yes, "slid"
|
var slidEvent = $.Event('slid.bs.carousel', { relatedTarget: relatedTarget, direction: direction }) // yes, "slid"
|
||||||
if ($.support.transition && this.$element.hasClass('slide')) {
|
if ($.support.transition && this.$element.hasClass('slide')) {
|
||||||
$next.addClass(type)
|
$next.addClass(type)
|
||||||
|
if (typeof $next === 'object' && $next.length) {
|
||||||
$next[0].offsetWidth // force reflow
|
$next[0].offsetWidth // force reflow
|
||||||
|
}
|
||||||
$active.addClass(direction)
|
$active.addClass(direction)
|
||||||
$next.addClass(direction)
|
$next.addClass(direction)
|
||||||
$active
|
$active
|
||||||
|
@ -505,10 +508,17 @@ if (typeof jQuery === 'undefined') {
|
||||||
// =================
|
// =================
|
||||||
|
|
||||||
var clickHandler = function (e) {
|
var clickHandler = function (e) {
|
||||||
var href
|
|
||||||
var $this = $(this)
|
var $this = $(this)
|
||||||
var $target = $($this.attr('data-target') || (href = $this.attr('href')) && href.replace(/.*(?=#[^\s]+$)/, '')) // strip for ie7
|
var href = $this.attr('href')
|
||||||
|
if (href) {
|
||||||
|
href = href.replace(/.*(?=#[^\s]+$)/, '') // strip for ie7
|
||||||
|
}
|
||||||
|
|
||||||
|
var target = $this.attr('data-target') || href
|
||||||
|
var $target = $(document).find(target)
|
||||||
|
|
||||||
if (!$target.hasClass('carousel')) return
|
if (!$target.hasClass('carousel')) return
|
||||||
|
|
||||||
var options = $.extend({}, $target.data(), $this.data())
|
var options = $.extend({}, $target.data(), $this.data())
|
||||||
var slideIndex = $this.attr('data-slide-to')
|
var slideIndex = $this.attr('data-slide-to')
|
||||||
if (slideIndex) options.interval = false
|
if (slideIndex) options.interval = false
|
||||||
|
@ -536,10 +546,10 @@ if (typeof jQuery === 'undefined') {
|
||||||
}(jQuery);
|
}(jQuery);
|
||||||
|
|
||||||
/* ========================================================================
|
/* ========================================================================
|
||||||
* Bootstrap: collapse.js v3.3.7
|
* Bootstrap: collapse.js v3.4.1
|
||||||
* http://getbootstrap.com/javascript/#collapse
|
* https://getbootstrap.com/docs/3.4/javascript/#collapse
|
||||||
* ========================================================================
|
* ========================================================================
|
||||||
* Copyright 2011-2016 Twitter, Inc.
|
* Copyright 2011-2019 Twitter, Inc.
|
||||||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
||||||
* ======================================================================== */
|
* ======================================================================== */
|
||||||
|
|
||||||
|
@ -567,7 +577,7 @@ if (typeof jQuery === 'undefined') {
|
||||||
if (this.options.toggle) this.toggle()
|
if (this.options.toggle) this.toggle()
|
||||||
}
|
}
|
||||||
|
|
||||||
Collapse.VERSION = '3.3.7'
|
Collapse.VERSION = '3.4.1'
|
||||||
|
|
||||||
Collapse.TRANSITION_DURATION = 350
|
Collapse.TRANSITION_DURATION = 350
|
||||||
|
|
||||||
|
@ -674,7 +684,7 @@ if (typeof jQuery === 'undefined') {
|
||||||
}
|
}
|
||||||
|
|
||||||
Collapse.prototype.getParent = function () {
|
Collapse.prototype.getParent = function () {
|
||||||
return $(this.options.parent)
|
return $(document).find(this.options.parent)
|
||||||
.find('[data-toggle="collapse"][data-parent="' + this.options.parent + '"]')
|
.find('[data-toggle="collapse"][data-parent="' + this.options.parent + '"]')
|
||||||
.each($.proxy(function (i, element) {
|
.each($.proxy(function (i, element) {
|
||||||
var $element = $(element)
|
var $element = $(element)
|
||||||
|
@ -697,7 +707,7 @@ if (typeof jQuery === 'undefined') {
|
||||||
var target = $trigger.attr('data-target')
|
var target = $trigger.attr('data-target')
|
||||||
|| (href = $trigger.attr('href')) && href.replace(/.*(?=#[^\s]+$)/, '') // strip for ie7
|
|| (href = $trigger.attr('href')) && href.replace(/.*(?=#[^\s]+$)/, '') // strip for ie7
|
||||||
|
|
||||||
return $(target)
|
return $(document).find(target)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -749,10 +759,10 @@ if (typeof jQuery === 'undefined') {
|
||||||
}(jQuery);
|
}(jQuery);
|
||||||
|
|
||||||
/* ========================================================================
|
/* ========================================================================
|
||||||
* Bootstrap: dropdown.js v3.3.7
|
* Bootstrap: dropdown.js v3.4.1
|
||||||
* http://getbootstrap.com/javascript/#dropdowns
|
* https://getbootstrap.com/docs/3.4/javascript/#dropdowns
|
||||||
* ========================================================================
|
* ========================================================================
|
||||||
* Copyright 2011-2016 Twitter, Inc.
|
* Copyright 2011-2019 Twitter, Inc.
|
||||||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
||||||
* ======================================================================== */
|
* ======================================================================== */
|
||||||
|
|
||||||
|
@ -769,7 +779,7 @@ if (typeof jQuery === 'undefined') {
|
||||||
$(element).on('click.bs.dropdown', this.toggle)
|
$(element).on('click.bs.dropdown', this.toggle)
|
||||||
}
|
}
|
||||||
|
|
||||||
Dropdown.VERSION = '3.3.7'
|
Dropdown.VERSION = '3.4.1'
|
||||||
|
|
||||||
function getParent($this) {
|
function getParent($this) {
|
||||||
var selector = $this.attr('data-target')
|
var selector = $this.attr('data-target')
|
||||||
|
@ -779,7 +789,7 @@ if (typeof jQuery === 'undefined') {
|
||||||
selector = selector && /#[A-Za-z]/.test(selector) && selector.replace(/.*(?=#[^\s]*$)/, '') // strip for ie7
|
selector = selector && /#[A-Za-z]/.test(selector) && selector.replace(/.*(?=#[^\s]*$)/, '') // strip for ie7
|
||||||
}
|
}
|
||||||
|
|
||||||
var $parent = selector && $(selector)
|
var $parent = selector !== '#' ? $(document).find(selector) : null
|
||||||
|
|
||||||
return $parent && $parent.length ? $parent : $this.parent()
|
return $parent && $parent.length ? $parent : $this.parent()
|
||||||
}
|
}
|
||||||
|
@ -915,10 +925,10 @@ if (typeof jQuery === 'undefined') {
|
||||||
}(jQuery);
|
}(jQuery);
|
||||||
|
|
||||||
/* ========================================================================
|
/* ========================================================================
|
||||||
* Bootstrap: modal.js v3.3.7
|
* Bootstrap: modal.js v3.4.1
|
||||||
* http://getbootstrap.com/javascript/#modals
|
* https://getbootstrap.com/docs/3.4/javascript/#modals
|
||||||
* ========================================================================
|
* ========================================================================
|
||||||
* Copyright 2011-2016 Twitter, Inc.
|
* Copyright 2011-2019 Twitter, Inc.
|
||||||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
||||||
* ======================================================================== */
|
* ======================================================================== */
|
||||||
|
|
||||||
|
@ -939,6 +949,7 @@ if (typeof jQuery === 'undefined') {
|
||||||
this.originalBodyPad = null
|
this.originalBodyPad = null
|
||||||
this.scrollbarWidth = 0
|
this.scrollbarWidth = 0
|
||||||
this.ignoreBackdropClick = false
|
this.ignoreBackdropClick = false
|
||||||
|
this.fixedContent = '.navbar-fixed-top, .navbar-fixed-bottom'
|
||||||
|
|
||||||
if (this.options.remote) {
|
if (this.options.remote) {
|
||||||
this.$element
|
this.$element
|
||||||
|
@ -949,7 +960,7 @@ if (typeof jQuery === 'undefined') {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
Modal.VERSION = '3.3.7'
|
Modal.VERSION = '3.4.1'
|
||||||
|
|
||||||
Modal.TRANSITION_DURATION = 300
|
Modal.TRANSITION_DURATION = 300
|
||||||
Modal.BACKDROP_TRANSITION_DURATION = 150
|
Modal.BACKDROP_TRANSITION_DURATION = 150
|
||||||
|
@ -1185,11 +1196,26 @@ if (typeof jQuery === 'undefined') {
|
||||||
Modal.prototype.setScrollbar = function () {
|
Modal.prototype.setScrollbar = function () {
|
||||||
var bodyPad = parseInt((this.$body.css('padding-right') || 0), 10)
|
var bodyPad = parseInt((this.$body.css('padding-right') || 0), 10)
|
||||||
this.originalBodyPad = document.body.style.paddingRight || ''
|
this.originalBodyPad = document.body.style.paddingRight || ''
|
||||||
if (this.bodyIsOverflowing) this.$body.css('padding-right', bodyPad + this.scrollbarWidth)
|
var scrollbarWidth = this.scrollbarWidth
|
||||||
|
if (this.bodyIsOverflowing) {
|
||||||
|
this.$body.css('padding-right', bodyPad + scrollbarWidth)
|
||||||
|
$(this.fixedContent).each(function (index, element) {
|
||||||
|
var actualPadding = element.style.paddingRight
|
||||||
|
var calculatedPadding = $(element).css('padding-right')
|
||||||
|
$(element)
|
||||||
|
.data('padding-right', actualPadding)
|
||||||
|
.css('padding-right', parseFloat(calculatedPadding) + scrollbarWidth + 'px')
|
||||||
|
})
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
Modal.prototype.resetScrollbar = function () {
|
Modal.prototype.resetScrollbar = function () {
|
||||||
this.$body.css('padding-right', this.originalBodyPad)
|
this.$body.css('padding-right', this.originalBodyPad)
|
||||||
|
$(this.fixedContent).each(function (index, element) {
|
||||||
|
var padding = $(element).data('padding-right')
|
||||||
|
$(element).removeData('padding-right')
|
||||||
|
element.style.paddingRight = padding ? padding : ''
|
||||||
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
Modal.prototype.measureScrollbar = function () { // thx walsh
|
Modal.prototype.measureScrollbar = function () { // thx walsh
|
||||||
|
@ -1238,7 +1264,10 @@ if (typeof jQuery === 'undefined') {
|
||||||
$(document).on('click.bs.modal.data-api', '[data-toggle="modal"]', function (e) {
|
$(document).on('click.bs.modal.data-api', '[data-toggle="modal"]', function (e) {
|
||||||
var $this = $(this)
|
var $this = $(this)
|
||||||
var href = $this.attr('href')
|
var href = $this.attr('href')
|
||||||
var $target = $($this.attr('data-target') || (href && href.replace(/.*(?=#[^\s]+$)/, ''))) // strip for ie7
|
var target = $this.attr('data-target') ||
|
||||||
|
(href && href.replace(/.*(?=#[^\s]+$)/, '')) // strip for ie7
|
||||||
|
|
||||||
|
var $target = $(document).find(target)
|
||||||
var option = $target.data('bs.modal') ? 'toggle' : $.extend({ remote: !/#/.test(href) && href }, $target.data(), $this.data())
|
var option = $target.data('bs.modal') ? 'toggle' : $.extend({ remote: !/#/.test(href) && href }, $target.data(), $this.data())
|
||||||
|
|
||||||
if ($this.is('a')) e.preventDefault()
|
if ($this.is('a')) e.preventDefault()
|
||||||
|
@ -1255,18 +1284,148 @@ if (typeof jQuery === 'undefined') {
|
||||||
}(jQuery);
|
}(jQuery);
|
||||||
|
|
||||||
/* ========================================================================
|
/* ========================================================================
|
||||||
* Bootstrap: tooltip.js v3.3.7
|
* Bootstrap: tooltip.js v3.4.1
|
||||||
* http://getbootstrap.com/javascript/#tooltip
|
* https://getbootstrap.com/docs/3.4/javascript/#tooltip
|
||||||
* Inspired by the original jQuery.tipsy by Jason Frame
|
* Inspired by the original jQuery.tipsy by Jason Frame
|
||||||
* ========================================================================
|
* ========================================================================
|
||||||
* Copyright 2011-2016 Twitter, Inc.
|
* Copyright 2011-2019 Twitter, Inc.
|
||||||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
||||||
* ======================================================================== */
|
* ======================================================================== */
|
||||||
|
|
||||||
|
|
||||||
+function ($) {
|
+function ($) {
|
||||||
'use strict';
|
'use strict';
|
||||||
|
|
||||||
|
var DISALLOWED_ATTRIBUTES = ['sanitize', 'whiteList', 'sanitizeFn']
|
||||||
|
|
||||||
|
var uriAttrs = [
|
||||||
|
'background',
|
||||||
|
'cite',
|
||||||
|
'href',
|
||||||
|
'itemtype',
|
||||||
|
'longdesc',
|
||||||
|
'poster',
|
||||||
|
'src',
|
||||||
|
'xlink:href'
|
||||||
|
]
|
||||||
|
|
||||||
|
var ARIA_ATTRIBUTE_PATTERN = /^aria-[\w-]*$/i
|
||||||
|
|
||||||
|
var DefaultWhitelist = {
|
||||||
|
// Global attributes allowed on any supplied element below.
|
||||||
|
'*': ['class', 'dir', 'id', 'lang', 'role', ARIA_ATTRIBUTE_PATTERN],
|
||||||
|
a: ['target', 'href', 'title', 'rel'],
|
||||||
|
area: [],
|
||||||
|
b: [],
|
||||||
|
br: [],
|
||||||
|
col: [],
|
||||||
|
code: [],
|
||||||
|
div: [],
|
||||||
|
em: [],
|
||||||
|
hr: [],
|
||||||
|
h1: [],
|
||||||
|
h2: [],
|
||||||
|
h3: [],
|
||||||
|
h4: [],
|
||||||
|
h5: [],
|
||||||
|
h6: [],
|
||||||
|
i: [],
|
||||||
|
img: ['src', 'alt', 'title', 'width', 'height'],
|
||||||
|
li: [],
|
||||||
|
ol: [],
|
||||||
|
p: [],
|
||||||
|
pre: [],
|
||||||
|
s: [],
|
||||||
|
small: [],
|
||||||
|
span: [],
|
||||||
|
sub: [],
|
||||||
|
sup: [],
|
||||||
|
strong: [],
|
||||||
|
u: [],
|
||||||
|
ul: []
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* A pattern that recognizes a commonly useful subset of URLs that are safe.
|
||||||
|
*
|
||||||
|
* Shoutout to Angular 7 https://github.com/angular/angular/blob/7.2.4/packages/core/src/sanitization/url_sanitizer.ts
|
||||||
|
*/
|
||||||
|
var SAFE_URL_PATTERN = /^(?:(?:https?|mailto|ftp|tel|file):|[^&:/?#]*(?:[/?#]|$))/gi
|
||||||
|
|
||||||
|
/**
|
||||||
|
* A pattern that matches safe data URLs. Only matches image, video and audio types.
|
||||||
|
*
|
||||||
|
* Shoutout to Angular 7 https://github.com/angular/angular/blob/7.2.4/packages/core/src/sanitization/url_sanitizer.ts
|
||||||
|
*/
|
||||||
|
var DATA_URL_PATTERN = /^data:(?:image\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\/(?:mpeg|mp4|ogg|webm)|audio\/(?:mp3|oga|ogg|opus));base64,[a-z0-9+/]+=*$/i
|
||||||
|
|
||||||
|
function allowedAttribute(attr, allowedAttributeList) {
|
||||||
|
var attrName = attr.nodeName.toLowerCase()
|
||||||
|
|
||||||
|
if ($.inArray(attrName, allowedAttributeList) !== -1) {
|
||||||
|
if ($.inArray(attrName, uriAttrs) !== -1) {
|
||||||
|
return Boolean(attr.nodeValue.match(SAFE_URL_PATTERN) || attr.nodeValue.match(DATA_URL_PATTERN))
|
||||||
|
}
|
||||||
|
|
||||||
|
return true
|
||||||
|
}
|
||||||
|
|
||||||
|
var regExp = $(allowedAttributeList).filter(function (index, value) {
|
||||||
|
return value instanceof RegExp
|
||||||
|
})
|
||||||
|
|
||||||
|
// Check if a regular expression validates the attribute.
|
||||||
|
for (var i = 0, l = regExp.length; i < l; i++) {
|
||||||
|
if (attrName.match(regExp[i])) {
|
||||||
|
return true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return false
|
||||||
|
}
|
||||||
|
|
||||||
|
function sanitizeHtml(unsafeHtml, whiteList, sanitizeFn) {
|
||||||
|
if (unsafeHtml.length === 0) {
|
||||||
|
return unsafeHtml
|
||||||
|
}
|
||||||
|
|
||||||
|
if (sanitizeFn && typeof sanitizeFn === 'function') {
|
||||||
|
return sanitizeFn(unsafeHtml)
|
||||||
|
}
|
||||||
|
|
||||||
|
// IE 8 and below don't support createHTMLDocument
|
||||||
|
if (!document.implementation || !document.implementation.createHTMLDocument) {
|
||||||
|
return unsafeHtml
|
||||||
|
}
|
||||||
|
|
||||||
|
var createdDocument = document.implementation.createHTMLDocument('sanitization')
|
||||||
|
createdDocument.body.innerHTML = unsafeHtml
|
||||||
|
|
||||||
|
var whitelistKeys = $.map(whiteList, function (el, i) { return i })
|
||||||
|
var elements = $(createdDocument.body).find('*')
|
||||||
|
|
||||||
|
for (var i = 0, len = elements.length; i < len; i++) {
|
||||||
|
var el = elements[i]
|
||||||
|
var elName = el.nodeName.toLowerCase()
|
||||||
|
|
||||||
|
if ($.inArray(elName, whitelistKeys) === -1) {
|
||||||
|
el.parentNode.removeChild(el)
|
||||||
|
|
||||||
|
continue
|
||||||
|
}
|
||||||
|
|
||||||
|
var attributeList = $.map(el.attributes, function (el) { return el })
|
||||||
|
var whitelistedAttributes = [].concat(whiteList['*'] || [], whiteList[elName] || [])
|
||||||
|
|
||||||
|
for (var j = 0, len2 = attributeList.length; j < len2; j++) {
|
||||||
|
if (!allowedAttribute(attributeList[j], whitelistedAttributes)) {
|
||||||
|
el.removeAttribute(attributeList[j].nodeName)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return createdDocument.body.innerHTML
|
||||||
|
}
|
||||||
|
|
||||||
// TOOLTIP PUBLIC CLASS DEFINITION
|
// TOOLTIP PUBLIC CLASS DEFINITION
|
||||||
// ===============================
|
// ===============================
|
||||||
|
|
||||||
|
@ -1282,7 +1441,7 @@ if (typeof jQuery === 'undefined') {
|
||||||
this.init('tooltip', element, options)
|
this.init('tooltip', element, options)
|
||||||
}
|
}
|
||||||
|
|
||||||
Tooltip.VERSION = '3.3.7'
|
Tooltip.VERSION = '3.4.1'
|
||||||
|
|
||||||
Tooltip.TRANSITION_DURATION = 150
|
Tooltip.TRANSITION_DURATION = 150
|
||||||
|
|
||||||
|
@ -1299,7 +1458,10 @@ if (typeof jQuery === 'undefined') {
|
||||||
viewport: {
|
viewport: {
|
||||||
selector: 'body',
|
selector: 'body',
|
||||||
padding: 0
|
padding: 0
|
||||||
}
|
},
|
||||||
|
sanitize : true,
|
||||||
|
sanitizeFn : null,
|
||||||
|
whiteList : DefaultWhitelist
|
||||||
}
|
}
|
||||||
|
|
||||||
Tooltip.prototype.init = function (type, element, options) {
|
Tooltip.prototype.init = function (type, element, options) {
|
||||||
|
@ -1307,7 +1469,7 @@ if (typeof jQuery === 'undefined') {
|
||||||
this.type = type
|
this.type = type
|
||||||
this.$element = $(element)
|
this.$element = $(element)
|
||||||
this.options = this.getOptions(options)
|
this.options = this.getOptions(options)
|
||||||
this.$viewport = this.options.viewport && $($.isFunction(this.options.viewport) ? this.options.viewport.call(this, this.$element) : (this.options.viewport.selector || this.options.viewport))
|
this.$viewport = this.options.viewport && $(document).find($.isFunction(this.options.viewport) ? this.options.viewport.call(this, this.$element) : (this.options.viewport.selector || this.options.viewport))
|
||||||
this.inState = { click: false, hover: false, focus: false }
|
this.inState = { click: false, hover: false, focus: false }
|
||||||
|
|
||||||
if (this.$element[0] instanceof document.constructor && !this.options.selector) {
|
if (this.$element[0] instanceof document.constructor && !this.options.selector) {
|
||||||
|
@ -1340,7 +1502,15 @@ if (typeof jQuery === 'undefined') {
|
||||||
}
|
}
|
||||||
|
|
||||||
Tooltip.prototype.getOptions = function (options) {
|
Tooltip.prototype.getOptions = function (options) {
|
||||||
options = $.extend({}, this.getDefaults(), this.$element.data(), options)
|
var dataAttributes = this.$element.data()
|
||||||
|
|
||||||
|
for (var dataAttr in dataAttributes) {
|
||||||
|
if (dataAttributes.hasOwnProperty(dataAttr) && $.inArray(dataAttr, DISALLOWED_ATTRIBUTES) !== -1) {
|
||||||
|
delete dataAttributes[dataAttr]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
options = $.extend({}, this.getDefaults(), dataAttributes, options)
|
||||||
|
|
||||||
if (options.delay && typeof options.delay == 'number') {
|
if (options.delay && typeof options.delay == 'number') {
|
||||||
options.delay = {
|
options.delay = {
|
||||||
|
@ -1349,6 +1519,10 @@ if (typeof jQuery === 'undefined') {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (options.sanitize) {
|
||||||
|
options.template = sanitizeHtml(options.template, options.whiteList, options.sanitizeFn)
|
||||||
|
}
|
||||||
|
|
||||||
return options
|
return options
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1460,7 +1634,7 @@ if (typeof jQuery === 'undefined') {
|
||||||
.addClass(placement)
|
.addClass(placement)
|
||||||
.data('bs.' + this.type, this)
|
.data('bs.' + this.type, this)
|
||||||
|
|
||||||
this.options.container ? $tip.appendTo(this.options.container) : $tip.insertAfter(this.$element)
|
this.options.container ? $tip.appendTo($(document).find(this.options.container)) : $tip.insertAfter(this.$element)
|
||||||
this.$element.trigger('inserted.bs.' + this.type)
|
this.$element.trigger('inserted.bs.' + this.type)
|
||||||
|
|
||||||
var pos = this.getPosition()
|
var pos = this.getPosition()
|
||||||
|
@ -1562,7 +1736,16 @@ if (typeof jQuery === 'undefined') {
|
||||||
var $tip = this.tip()
|
var $tip = this.tip()
|
||||||
var title = this.getTitle()
|
var title = this.getTitle()
|
||||||
|
|
||||||
$tip.find('.tooltip-inner')[this.options.html ? 'html' : 'text'](title)
|
if (this.options.html) {
|
||||||
|
if (this.options.sanitize) {
|
||||||
|
title = sanitizeHtml(title, this.options.whiteList, this.options.sanitizeFn)
|
||||||
|
}
|
||||||
|
|
||||||
|
$tip.find('.tooltip-inner').html(title)
|
||||||
|
} else {
|
||||||
|
$tip.find('.tooltip-inner').text(title)
|
||||||
|
}
|
||||||
|
|
||||||
$tip.removeClass('fade in top bottom left right')
|
$tip.removeClass('fade in top bottom left right')
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1743,6 +1926,9 @@ if (typeof jQuery === 'undefined') {
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Tooltip.prototype.sanitizeHtml = function (unsafeHtml) {
|
||||||
|
return sanitizeHtml(unsafeHtml, this.options.whiteList, this.options.sanitizeFn)
|
||||||
|
}
|
||||||
|
|
||||||
// TOOLTIP PLUGIN DEFINITION
|
// TOOLTIP PLUGIN DEFINITION
|
||||||
// =========================
|
// =========================
|
||||||
|
@ -1776,10 +1962,10 @@ if (typeof jQuery === 'undefined') {
|
||||||
}(jQuery);
|
}(jQuery);
|
||||||
|
|
||||||
/* ========================================================================
|
/* ========================================================================
|
||||||
* Bootstrap: popover.js v3.3.7
|
* Bootstrap: popover.js v3.4.1
|
||||||
* http://getbootstrap.com/javascript/#popovers
|
* https://getbootstrap.com/docs/3.4/javascript/#popovers
|
||||||
* ========================================================================
|
* ========================================================================
|
||||||
* Copyright 2011-2016 Twitter, Inc.
|
* Copyright 2011-2019 Twitter, Inc.
|
||||||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
||||||
* ======================================================================== */
|
* ======================================================================== */
|
||||||
|
|
||||||
|
@ -1796,7 +1982,7 @@ if (typeof jQuery === 'undefined') {
|
||||||
|
|
||||||
if (!$.fn.tooltip) throw new Error('Popover requires tooltip.js')
|
if (!$.fn.tooltip) throw new Error('Popover requires tooltip.js')
|
||||||
|
|
||||||
Popover.VERSION = '3.3.7'
|
Popover.VERSION = '3.4.1'
|
||||||
|
|
||||||
Popover.DEFAULTS = $.extend({}, $.fn.tooltip.Constructor.DEFAULTS, {
|
Popover.DEFAULTS = $.extend({}, $.fn.tooltip.Constructor.DEFAULTS, {
|
||||||
placement: 'right',
|
placement: 'right',
|
||||||
|
@ -1822,10 +2008,25 @@ if (typeof jQuery === 'undefined') {
|
||||||
var title = this.getTitle()
|
var title = this.getTitle()
|
||||||
var content = this.getContent()
|
var content = this.getContent()
|
||||||
|
|
||||||
$tip.find('.popover-title')[this.options.html ? 'html' : 'text'](title)
|
if (this.options.html) {
|
||||||
$tip.find('.popover-content').children().detach().end()[ // we use append for html objects to maintain js events
|
var typeContent = typeof content
|
||||||
this.options.html ? (typeof content == 'string' ? 'html' : 'append') : 'text'
|
|
||||||
|
if (this.options.sanitize) {
|
||||||
|
title = this.sanitizeHtml(title)
|
||||||
|
|
||||||
|
if (typeContent === 'string') {
|
||||||
|
content = this.sanitizeHtml(content)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
$tip.find('.popover-title').html(title)
|
||||||
|
$tip.find('.popover-content').children().detach().end()[
|
||||||
|
typeContent === 'string' ? 'html' : 'append'
|
||||||
](content)
|
](content)
|
||||||
|
} else {
|
||||||
|
$tip.find('.popover-title').text(title)
|
||||||
|
$tip.find('.popover-content').children().detach().end().text(content)
|
||||||
|
}
|
||||||
|
|
||||||
$tip.removeClass('fade top bottom left right in')
|
$tip.removeClass('fade top bottom left right in')
|
||||||
|
|
||||||
|
@ -1885,10 +2086,10 @@ if (typeof jQuery === 'undefined') {
|
||||||
}(jQuery);
|
}(jQuery);
|
||||||
|
|
||||||
/* ========================================================================
|
/* ========================================================================
|
||||||
* Bootstrap: scrollspy.js v3.3.7
|
* Bootstrap: scrollspy.js v3.4.1
|
||||||
* http://getbootstrap.com/javascript/#scrollspy
|
* https://getbootstrap.com/docs/3.4/javascript/#scrollspy
|
||||||
* ========================================================================
|
* ========================================================================
|
||||||
* Copyright 2011-2016 Twitter, Inc.
|
* Copyright 2011-2019 Twitter, Inc.
|
||||||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
||||||
* ======================================================================== */
|
* ======================================================================== */
|
||||||
|
|
||||||
|
@ -1914,7 +2115,7 @@ if (typeof jQuery === 'undefined') {
|
||||||
this.process()
|
this.process()
|
||||||
}
|
}
|
||||||
|
|
||||||
ScrollSpy.VERSION = '3.3.7'
|
ScrollSpy.VERSION = '3.4.1'
|
||||||
|
|
||||||
ScrollSpy.DEFAULTS = {
|
ScrollSpy.DEFAULTS = {
|
||||||
offset: 10
|
offset: 10
|
||||||
|
@ -2058,10 +2259,10 @@ if (typeof jQuery === 'undefined') {
|
||||||
}(jQuery);
|
}(jQuery);
|
||||||
|
|
||||||
/* ========================================================================
|
/* ========================================================================
|
||||||
* Bootstrap: tab.js v3.3.7
|
* Bootstrap: tab.js v3.4.1
|
||||||
* http://getbootstrap.com/javascript/#tabs
|
* https://getbootstrap.com/docs/3.4/javascript/#tabs
|
||||||
* ========================================================================
|
* ========================================================================
|
||||||
* Copyright 2011-2016 Twitter, Inc.
|
* Copyright 2011-2019 Twitter, Inc.
|
||||||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
||||||
* ======================================================================== */
|
* ======================================================================== */
|
||||||
|
|
||||||
|
@ -2078,7 +2279,7 @@ if (typeof jQuery === 'undefined') {
|
||||||
// jscs:enable requireDollarBeforejQueryAssignment
|
// jscs:enable requireDollarBeforejQueryAssignment
|
||||||
}
|
}
|
||||||
|
|
||||||
Tab.VERSION = '3.3.7'
|
Tab.VERSION = '3.4.1'
|
||||||
|
|
||||||
Tab.TRANSITION_DURATION = 150
|
Tab.TRANSITION_DURATION = 150
|
||||||
|
|
||||||
|
@ -2107,7 +2308,7 @@ if (typeof jQuery === 'undefined') {
|
||||||
|
|
||||||
if (showEvent.isDefaultPrevented() || hideEvent.isDefaultPrevented()) return
|
if (showEvent.isDefaultPrevented() || hideEvent.isDefaultPrevented()) return
|
||||||
|
|
||||||
var $target = $(selector)
|
var $target = $(document).find(selector)
|
||||||
|
|
||||||
this.activate($this.closest('li'), $ul)
|
this.activate($this.closest('li'), $ul)
|
||||||
this.activate($target, $target.parent(), function () {
|
this.activate($target, $target.parent(), function () {
|
||||||
|
@ -2214,10 +2415,10 @@ if (typeof jQuery === 'undefined') {
|
||||||
}(jQuery);
|
}(jQuery);
|
||||||
|
|
||||||
/* ========================================================================
|
/* ========================================================================
|
||||||
* Bootstrap: affix.js v3.3.7
|
* Bootstrap: affix.js v3.4.1
|
||||||
* http://getbootstrap.com/javascript/#affix
|
* https://getbootstrap.com/docs/3.4/javascript/#affix
|
||||||
* ========================================================================
|
* ========================================================================
|
||||||
* Copyright 2011-2016 Twitter, Inc.
|
* Copyright 2011-2019 Twitter, Inc.
|
||||||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
||||||
* ======================================================================== */
|
* ======================================================================== */
|
||||||
|
|
||||||
|
@ -2231,7 +2432,9 @@ if (typeof jQuery === 'undefined') {
|
||||||
var Affix = function (element, options) {
|
var Affix = function (element, options) {
|
||||||
this.options = $.extend({}, Affix.DEFAULTS, options)
|
this.options = $.extend({}, Affix.DEFAULTS, options)
|
||||||
|
|
||||||
this.$target = $(this.options.target)
|
var target = this.options.target === Affix.DEFAULTS.target ? $(this.options.target) : $(document).find(this.options.target)
|
||||||
|
|
||||||
|
this.$target = target
|
||||||
.on('scroll.bs.affix.data-api', $.proxy(this.checkPosition, this))
|
.on('scroll.bs.affix.data-api', $.proxy(this.checkPosition, this))
|
||||||
.on('click.bs.affix.data-api', $.proxy(this.checkPositionWithEventLoop, this))
|
.on('click.bs.affix.data-api', $.proxy(this.checkPositionWithEventLoop, this))
|
||||||
|
|
||||||
|
@ -2243,7 +2446,7 @@ if (typeof jQuery === 'undefined') {
|
||||||
this.checkPosition()
|
this.checkPosition()
|
||||||
}
|
}
|
||||||
|
|
||||||
Affix.VERSION = '3.3.7'
|
Affix.VERSION = '3.4.1'
|
||||||
|
|
||||||
Affix.RESET = 'affix affix-top affix-bottom'
|
Affix.RESET = 'affix affix-top affix-bottom'
|
||||||
|
|
||||||
|
|
7
vendor/bootstrap/dist/js/bootstrap.min.js
vendored
2
vendor/bootstrap/docs/LICENSE
vendored
|
@ -316,4 +316,4 @@ Creative Commons Notice
|
||||||
available upon request from time to time. For the avoidance of doubt,
|
available upon request from time to time. For the avoidance of doubt,
|
||||||
this trademark restriction does not form part of this License.
|
this trademark restriction does not form part of this License.
|
||||||
|
|
||||||
Creative Commons may be contacted at http://creativecommons.org/.
|
Creative Commons may be contacted at https://creativecommons.org/.
|
||||||
|
|
10
vendor/bootstrap/docs/_data/browser-bugs.yml
vendored
|
@ -1,3 +1,13 @@
|
||||||
|
-
|
||||||
|
browser: >
|
||||||
|
Microsoft Edge
|
||||||
|
summary: >
|
||||||
|
Visual artifacts in scrollable modal dialogs
|
||||||
|
upstream_bug: >
|
||||||
|
Edge#9011176
|
||||||
|
origin: >
|
||||||
|
Bootstrap#20755
|
||||||
|
|
||||||
-
|
-
|
||||||
browser: >
|
browser: >
|
||||||
Microsoft Edge
|
Microsoft Edge
|
||||||
|
|
14
vendor/bootstrap/docs/_data/browser-features.yml
vendored
|
@ -18,6 +18,16 @@
|
||||||
origin: >
|
origin: >
|
||||||
Bootstrap#17021
|
Bootstrap#17021
|
||||||
|
|
||||||
|
-
|
||||||
|
browser: >
|
||||||
|
Microsoft Edge
|
||||||
|
summary: >
|
||||||
|
Implement the HTML5 [`<dialog>` element](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/dialog)
|
||||||
|
upstream_bug: >
|
||||||
|
UserVoice#6508895
|
||||||
|
origin: >
|
||||||
|
Bootstrap#20175
|
||||||
|
|
||||||
-
|
-
|
||||||
browser: >
|
browser: >
|
||||||
Firefox
|
Firefox
|
||||||
|
@ -32,7 +42,7 @@
|
||||||
browser: >
|
browser: >
|
||||||
Firefox
|
Firefox
|
||||||
summary: >
|
summary: >
|
||||||
Implement the [`of <selector-list>` clause](http://caniuse.com/#feat=css-nth-child-of) of the `:nth-child()` pseudo-class
|
Implement the [`of <selector-list>` clause](https://caniuse.com/#feat=css-nth-child-of) of the `:nth-child()` pseudo-class
|
||||||
upstream_bug: >
|
upstream_bug: >
|
||||||
Mozilla#854148
|
Mozilla#854148
|
||||||
origin: >
|
origin: >
|
||||||
|
@ -52,7 +62,7 @@
|
||||||
browser: >
|
browser: >
|
||||||
Chrome
|
Chrome
|
||||||
summary: >
|
summary: >
|
||||||
Implement the [`of <selector-list>` clause](http://caniuse.com/#feat=css-nth-child-of) of the `:nth-child()` pseudo-class
|
Implement the [`of <selector-list>` clause](https://caniuse.com/#feat=css-nth-child-of) of the `:nth-child()` pseudo-class
|
||||||
upstream_bug: >
|
upstream_bug: >
|
||||||
Chromium#304163
|
Chromium#304163
|
||||||
origin: >
|
origin: >
|
||||||
|
|
27
vendor/bootstrap/docs/_data/core-team.yml
vendored
|
@ -1,27 +0,0 @@
|
||||||
- name: Mark Otto
|
|
||||||
user: mdo
|
|
||||||
gravatar: bc4ab438f7a4ce1c406aadc688427f2c
|
|
||||||
|
|
||||||
- name: Jacob Thornton
|
|
||||||
user: fat
|
|
||||||
gravatar: a98244cbdacaf1c0b55499466002f7a8
|
|
||||||
|
|
||||||
- name: Chris Rebert
|
|
||||||
user: cvrebert
|
|
||||||
gravatar: edec428c425453955f770095a7d26c50
|
|
||||||
|
|
||||||
- name: Julian Thilo
|
|
||||||
user: juthilo
|
|
||||||
gravatar: 0f7dd3ce58a416be5685ea6194f82b11
|
|
||||||
|
|
||||||
- name: XhmikosR
|
|
||||||
user: xhmikosr
|
|
||||||
gravatar: e37759b1ea0125d4e97b1e00b5eed26f
|
|
||||||
|
|
||||||
- name: Heinrich Fenkart
|
|
||||||
user: hnrch02
|
|
||||||
gravatar: 0d53f5d3d3d28bd470f394d98f7ef48f
|
|
||||||
|
|
||||||
- name: Patrick H. Lauke
|
|
||||||
user: patrickhlauke
|
|
||||||
gravatar: 357f279672db832fc41a5a2f36559fcb
|
|
11
vendor/bootstrap/docs/_data/showcase.yml
vendored
|
@ -1,19 +1,14 @@
|
||||||
- name: Lyft
|
- name: Lyft
|
||||||
url: https://www.lyft.com
|
url: https://www.lyft.com
|
||||||
expo_url: http://expo.getbootstrap.com/2014/10/29/lyft/
|
expo_url: https://expo.getbootstrap.com/2014/10/29/lyft/
|
||||||
img: lyft
|
img: lyft
|
||||||
|
|
||||||
- name: Vogue
|
- name: Vogue
|
||||||
url: http://www.vogue.com
|
url: http://www.vogue.com
|
||||||
expo_url: http://expo.getbootstrap.com/2014/09/30/vogue/
|
expo_url: https://expo.getbootstrap.com/2014/09/30/vogue/
|
||||||
img: vogue
|
img: vogue
|
||||||
|
|
||||||
- name: Riot Design
|
|
||||||
url: http://riotdesign.eu/en/
|
|
||||||
expo_url: http://expo.getbootstrap.com/2014/03/13/riot-design/
|
|
||||||
img: riot
|
|
||||||
|
|
||||||
- name: Newsweek
|
- name: Newsweek
|
||||||
url: http://www.newsweek.com/
|
url: http://www.newsweek.com/
|
||||||
expo_url: http://expo.getbootstrap.com/2014/02/12/newsweek/
|
expo_url: https://expo.getbootstrap.com/2014/02/12/newsweek/
|
||||||
img: newsweek
|
img: newsweek
|
||||||
|
|
20
vendor/bootstrap/docs/_data/team.yml
vendored
Normal file
|
@ -0,0 +1,20 @@
|
||||||
|
- name: Mark Otto
|
||||||
|
user: mdo
|
||||||
|
|
||||||
|
- name: Jacob Thornton
|
||||||
|
user: fat
|
||||||
|
|
||||||
|
- name: Chris Rebert
|
||||||
|
user: cvrebert
|
||||||
|
|
||||||
|
- name: XhmikosR
|
||||||
|
user: xhmikosr
|
||||||
|
|
||||||
|
- name: Patrick H. Lauke
|
||||||
|
user: patrickhlauke
|
||||||
|
|
||||||
|
- name: Johann-S
|
||||||
|
user: johann-s
|
||||||
|
|
||||||
|
- name: Andres Galante
|
||||||
|
user: andresgalante
|
13
vendor/bootstrap/docs/_data/translations.yml
vendored
|
@ -1,12 +1,7 @@
|
||||||
- name: Chinese
|
- name: Chinese
|
||||||
code: zh
|
code: zh
|
||||||
description: Bootstrap 中文文档
|
description: Bootstrap 中文文档
|
||||||
url: http://v3.bootcss.com/
|
url: https://v3.bootcss.com/
|
||||||
|
|
||||||
- name: Chinese (Traditional)
|
|
||||||
code: zh-TW
|
|
||||||
description: Bootstrap 3 中文手冊
|
|
||||||
url: https://kkbruce.tw/bs3/
|
|
||||||
|
|
||||||
- name: Danish
|
- name: Danish
|
||||||
code: da
|
code: da
|
||||||
|
@ -26,7 +21,7 @@
|
||||||
- name: Italian
|
- name: Italian
|
||||||
code: it
|
code: it
|
||||||
description: Bootstrap in Italiano
|
description: Bootstrap in Italiano
|
||||||
url: http://www.hackerstribe.com/guide/IT-bootstrap-3.1.1/
|
url: https://www.hackerstribe.com/guide/IT-bootstrap-3.1.1/
|
||||||
|
|
||||||
- name: Korean
|
- name: Korean
|
||||||
code: ko
|
code: ko
|
||||||
|
@ -36,7 +31,7 @@
|
||||||
- name: Brazilian Portuguese
|
- name: Brazilian Portuguese
|
||||||
code: pt-BR
|
code: pt-BR
|
||||||
description: Bootstrap em Português do Brasil
|
description: Bootstrap em Português do Brasil
|
||||||
url: http://bootstrapbrasil.github.io/
|
url: https://getbootstrap.com.br/
|
||||||
|
|
||||||
- name: Russian
|
- name: Russian
|
||||||
code: ru
|
code: ru
|
||||||
|
@ -56,7 +51,7 @@
|
||||||
- name: Ukrainian
|
- name: Ukrainian
|
||||||
code: uk
|
code: uk
|
||||||
description: Bootstrap українською
|
description: Bootstrap українською
|
||||||
url: http://twbs.docs.org.ua
|
url: https://twbs.docs.org.ua/
|
||||||
|
|
||||||
- name: Vietnamese
|
- name: Vietnamese
|
||||||
code: vi
|
code: vi
|
||||||
|
|
2
vendor/bootstrap/docs/_includes/ads.html
vendored
|
@ -1 +1 @@
|
||||||
<div id="carbonads-container"><div class="carbonad"><div id="azcarbon"></div><script>var z = document.createElement("script"); z.async = true; z.src = "http://engine.carbonads.com/z/32341/azcarbon_2_1_0_HORIZ"; var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(z, s);</script></div></div>
|
<script async src="https://cdn.carbonads.com/carbon.js?zoneid=1673&serve=C6AILKT&placement=getbootstrapcom" id="_carbonads_js"></script>
|
||||||
|
|
|
@ -36,7 +36,7 @@
|
||||||
<p>Build on any alert by adding an optional <code>.alert-dismissible</code> and close button.</p>
|
<p>Build on any alert by adding an optional <code>.alert-dismissible</code> and close button.</p>
|
||||||
<div class="bs-callout bs-callout-info" id="callout-alerts-dismiss-plugin">
|
<div class="bs-callout bs-callout-info" id="callout-alerts-dismiss-plugin">
|
||||||
<h4>Requires JavaScript alert plugin</h4>
|
<h4>Requires JavaScript alert plugin</h4>
|
||||||
<p>For fully functioning, dismissible alerts, you must use the <a href="../javascript/#alerts">alerts JavaScript plugin</a>.</p>
|
<p>For fully functioning, dismissible alerts, you must use the <a href="{{ site.baseurl }}/javascript/#alerts">alerts JavaScript plugin</a>.</p>
|
||||||
</div>
|
</div>
|
||||||
<div class="bs-example" data-example-id="dismissible-alert-css">
|
<div class="bs-example" data-example-id="dismissible-alert-css">
|
||||||
<div class="alert alert-warning alert-dismissible" role="alert">
|
<div class="alert alert-warning alert-dismissible" role="alert">
|
||||||
|
|
|
@ -5,7 +5,7 @@
|
||||||
|
|
||||||
<div class="bs-callout bs-callout-danger" id="callout-btndropdown-dependency">
|
<div class="bs-callout bs-callout-danger" id="callout-btndropdown-dependency">
|
||||||
<h4>Plugin dependency</h4>
|
<h4>Plugin dependency</h4>
|
||||||
<p>Button dropdowns require the <a href="../javascript/#dropdowns">dropdown plugin</a> to be included in your version of Bootstrap.</p>
|
<p>Button dropdowns require the <a href="{{ site.baseurl }}/javascript/#dropdowns">dropdown plugin</a> to be included in your version of Bootstrap.</p>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<h2 id="btn-dropdowns-single">Single button dropdowns</h2>
|
<h2 id="btn-dropdowns-single">Single button dropdowns</h2>
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
<div class="bs-docs-section">
|
<div class="bs-docs-section">
|
||||||
<h1 id="btn-groups" class="page-header">Button groups</h1>
|
<h1 id="btn-groups" class="page-header">Button groups</h1>
|
||||||
|
|
||||||
<p class="lead">Group a series of buttons together on a single line with the button group. Add on optional JavaScript radio and checkbox style behavior with <a href="../javascript/#buttons">our buttons plugin</a>.</p>
|
<p class="lead">Group a series of buttons together on a single line with the button group. Add on optional JavaScript radio and checkbox style behavior with <a href="{{ site.baseurl }}/javascript/#buttons">our buttons plugin</a>.</p>
|
||||||
|
|
||||||
<div class="bs-callout bs-callout-warning" id="callout-btn-group-tooltips">
|
<div class="bs-callout bs-callout-warning" id="callout-btn-group-tooltips">
|
||||||
<h4>Tooltips & popovers in button groups require special setting</h4>
|
<h4>Tooltips & popovers in button groups require special setting</h4>
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
<div class="bs-docs-section">
|
<div class="bs-docs-section">
|
||||||
<h1 id="dropdowns" class="page-header">Dropdowns</h1>
|
<h1 id="dropdowns" class="page-header">Dropdowns</h1>
|
||||||
|
|
||||||
<p class="lead">Toggleable, contextual menu for displaying lists of links. Made interactive with the <a href="../javascript/#dropdowns">dropdown JavaScript plugin</a>.</p>
|
<p class="lead">Toggleable, contextual menu for displaying lists of links. Made interactive with the <a href="{{ site.baseurl }}/javascript/#dropdowns">dropdown JavaScript plugin</a>.</p>
|
||||||
|
|
||||||
<h2 id="dropdowns-example">Example</h2>
|
<h2 id="dropdowns-example">Example</h2>
|
||||||
<p>Wrap the dropdown's trigger and the dropdown menu within <code>.dropdown</code>, or another element that declares <code>position: relative;</code>. Then add the menu's HTML.</p>
|
<p>Wrap the dropdown's trigger and the dropdown menu within <code>.dropdown</code>, or another element that declares <code>position: relative;</code>. Then add the menu's HTML.</p>
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
<h1 id="glyphicons" class="page-header">Glyphicons</h1>
|
<h1 id="glyphicons" class="page-header">Glyphicons</h1>
|
||||||
|
|
||||||
<h2 id="glyphicons-glyphs">Available glyphs</h2>
|
<h2 id="glyphicons-glyphs">Available glyphs</h2>
|
||||||
<p>Includes over 250 glyphs in font format from the Glyphicon Halflings set. <a href="http://glyphicons.com/">Glyphicons</a> Halflings are normally not available for free, but their creator has made them available for Bootstrap free of cost. As a thank you, we only ask that you include a link back to <a href="http://glyphicons.com/">Glyphicons</a> whenever possible.</p>
|
<p>Includes over 250 glyphs in font format from the Glyphicon Halflings set. <a href="https://www.glyphicons.com/">Glyphicons</a> Halflings are normally not available for free, but their creator has made them available for Bootstrap free of cost. As a thank you, we only ask that you include a link back to <a href="https://www.glyphicons.com/">Glyphicons</a> whenever possible.</p>
|
||||||
<div class="bs-glyphicons">
|
<div class="bs-glyphicons">
|
||||||
<ul class="bs-glyphicons-list">
|
<ul class="bs-glyphicons-list">
|
||||||
{% for iconClassName in site.data.glyphicons %}
|
{% for iconClassName in site.data.glyphicons %}
|
||||||
|
@ -30,7 +30,7 @@
|
||||||
<p>Bootstrap assumes icon font files will be located in the <code>../fonts/</code> directory, relative to the compiled CSS files. Moving or renaming those font files means updating the CSS in one of three ways:</p>
|
<p>Bootstrap assumes icon font files will be located in the <code>../fonts/</code> directory, relative to the compiled CSS files. Moving or renaming those font files means updating the CSS in one of three ways:</p>
|
||||||
<ul>
|
<ul>
|
||||||
<li>Change the <code>@icon-font-path</code> and/or <code>@icon-font-name</code> variables in the source Less files.</li>
|
<li>Change the <code>@icon-font-path</code> and/or <code>@icon-font-name</code> variables in the source Less files.</li>
|
||||||
<li>Utilize the <a href="http://lesscss.org/usage/#command-line-usage-relative-urls">relative URLs option</a> provided by the Less compiler.</li>
|
<li>Utilize the <a href="http://lesscss.org/usage/#less-options-relative-urls">relative URLs option</a> provided by the Less compiler.</li>
|
||||||
<li>Change the <code>url()</code> paths in the compiled CSS.</li>
|
<li>Change the <code>url()</code> paths in the compiled CSS.</li>
|
||||||
</ul>
|
</ul>
|
||||||
<p>Use whatever option best suits your specific development setup.</p>
|
<p>Use whatever option best suits your specific development setup.</p>
|
||||||
|
|
|
@ -10,14 +10,14 @@
|
||||||
<p>Since Bootstrap doesn't know how much space the content in your navbar needs, you might run into issues with content wrapping into a second row. To resolve this, you can:</p>
|
<p>Since Bootstrap doesn't know how much space the content in your navbar needs, you might run into issues with content wrapping into a second row. To resolve this, you can:</p>
|
||||||
<ol type="a">
|
<ol type="a">
|
||||||
<li>Reduce the amount or width of navbar items.</li>
|
<li>Reduce the amount or width of navbar items.</li>
|
||||||
<li>Hide certain navbar items at certain screen sizes using <a href="../css/#responsive-utilities">responsive utility classes</a>.</li>
|
<li>Hide certain navbar items at certain screen sizes using <a href="{{ site.baseurl }}/css/#responsive-utilities">responsive utility classes</a>.</li>
|
||||||
<li>Change the point at which your navbar switches between collapsed and horizontal mode. Customize the <code>@grid-float-breakpoint</code> variable or add your own media query.</li>
|
<li>Change the point at which your navbar switches between collapsed and horizontal mode. Customize the <code>@grid-float-breakpoint</code> variable or add your own media query.</li>
|
||||||
</ol>
|
</ol>
|
||||||
</div>
|
</div>
|
||||||
<div class="bs-callout bs-callout-danger" id="callout-navbar-js">
|
<div class="bs-callout bs-callout-danger" id="callout-navbar-js">
|
||||||
<h4>Requires JavaScript plugin</h4>
|
<h4>Requires JavaScript plugin</h4>
|
||||||
<p>If JavaScript is disabled and the viewport is narrow enough that the navbar collapses, it will be impossible to expand the navbar and view the content within the <code>.navbar-collapse</code>.</p>
|
<p>If JavaScript is disabled and the viewport is narrow enough that the navbar collapses, it will be impossible to expand the navbar and view the content within the <code>.navbar-collapse</code>.</p>
|
||||||
<p>The responsive navbar requires the <a href="../javascript/#collapse">collapse plugin</a> to be included in your version of Bootstrap.</p>
|
<p>The responsive navbar requires the <a href="{{ site.baseurl }}/javascript/#collapse">collapse plugin</a> to be included in your version of Bootstrap.</p>
|
||||||
</div>
|
</div>
|
||||||
<div class="bs-callout bs-callout-info" id="callout-navbar-breakpoint">
|
<div class="bs-callout bs-callout-info" id="callout-navbar-breakpoint">
|
||||||
<h4>Changing the collapsed mobile navbar breakpoint</h4>
|
<h4>Changing the collapsed mobile navbar breakpoint</h4>
|
||||||
|
@ -203,7 +203,7 @@
|
||||||
|
|
||||||
<div class="bs-callout bs-callout-warning" id="callout-navbar-mobile-caveats">
|
<div class="bs-callout bs-callout-warning" id="callout-navbar-mobile-caveats">
|
||||||
<h4>Mobile device caveats</h4>
|
<h4>Mobile device caveats</h4>
|
||||||
<p>There are some caveats regarding using form controls within fixed elements on mobile devices. <a href="../getting-started/#support-fixed-position-keyboards">See our browser support docs</a> for details.</p>
|
<p>There are some caveats regarding using form controls within fixed elements on mobile devices. <a href="{{ site.baseurl }}/getting-started/#support-fixed-position-keyboards">See our browser support docs</a> for details.</p>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="bs-callout bs-callout-warning" id="callout-navbar-form-labels">
|
<div class="bs-callout bs-callout-warning" id="callout-navbar-form-labels">
|
||||||
|
@ -238,7 +238,7 @@
|
||||||
|
|
||||||
<div class="bs-callout bs-callout-warning" id="callout-navbar-btn-context">
|
<div class="bs-callout bs-callout-warning" id="callout-navbar-btn-context">
|
||||||
<h4>Context-specific usage</h4>
|
<h4>Context-specific usage</h4>
|
||||||
<p>Like the standard <a href="../css/#buttons">button classes</a>, <code>.navbar-btn</code> can be used on <code><a></code> and <code><input></code> elements. However, neither <code>.navbar-btn</code> nor the standard button classes should be used on <code><a></code> elements within <code>.navbar-nav</code>.</p>
|
<p>Like the standard <a href="{{ site.baseurl }}/css/#buttons">button classes</a>, <code>.navbar-btn</code> can be used on <code><a></code> and <code><input></code> elements. However, neither <code>.navbar-btn</code> nor the standard button classes should be used on <code><a></code> elements within <code>.navbar-nav</code>.</p>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<h2 id="navbar-text">Text</h2>
|
<h2 id="navbar-text">Text</h2>
|
||||||
|
|
|
@ -5,7 +5,7 @@
|
||||||
|
|
||||||
<div class="bs-callout bs-callout-info" id="callout-navs-tabs-plugin">
|
<div class="bs-callout bs-callout-info" id="callout-navs-tabs-plugin">
|
||||||
<h4>Using navs for tab panels requires JavaScript tabs plugin</h4>
|
<h4>Using navs for tab panels requires JavaScript tabs plugin</h4>
|
||||||
<p>For tabs with tabbable areas, you must use the <a href="../javascript/#tabs">tabs JavaScript plugin</a>. The markup will also require additional <code>role</code> and ARIA attributes – see the plugin's <a href="../javascript/#tabs-usage">example markup</a> for further details.</p>
|
<p>For tabs with tabbable areas, you must use the <a href="{{ site.baseurl }}/javascript/#tabs">tabs JavaScript plugin</a>. The markup will also require additional <code>role</code> and ARIA attributes – see the plugin's <a href="{{ site.baseurl }}/javascript/#tabs-usage">example markup</a> for further details.</p>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="bs-callout bs-callout-warning" id="callout-navs-accessibility">
|
<div class="bs-callout bs-callout-warning" id="callout-navs-accessibility">
|
||||||
|
@ -67,7 +67,7 @@
|
||||||
<p><strong class="text-danger">Justified navbar nav links are currently not supported.</strong></p>
|
<p><strong class="text-danger">Justified navbar nav links are currently not supported.</strong></p>
|
||||||
<div class="bs-callout bs-callout-warning" id="callout-navs-justified-safari">
|
<div class="bs-callout bs-callout-warning" id="callout-navs-justified-safari">
|
||||||
<h4>Safari and responsive justified navs</h4>
|
<h4>Safari and responsive justified navs</h4>
|
||||||
<p>As of v9.1.2, Safari exhibits a bug in which resizing your browser horizontally causes rendering errors in the justified nav that are cleared upon refreshing. This bug is also shown in the <a href="../examples/justified-nav/">justified nav example</a>.</p>
|
<p>As of v9.1.2, Safari exhibits a bug in which resizing your browser horizontally causes rendering errors in the justified nav that are cleared upon refreshing. This bug is also shown in the <a href="{{ site.baseurl }}/examples/justified-nav/">justified nav example</a>.</p>
|
||||||
</div>
|
</div>
|
||||||
<div class="bs-example" data-example-id="simple-nav-justified">
|
<div class="bs-example" data-example-id="simple-nav-justified">
|
||||||
<ul class="nav nav-tabs nav-justified">
|
<ul class="nav nav-tabs nav-justified">
|
||||||
|
@ -117,7 +117,7 @@
|
||||||
|
|
||||||
|
|
||||||
<h2 id="nav-dropdowns">Using dropdowns</h2>
|
<h2 id="nav-dropdowns">Using dropdowns</h2>
|
||||||
<p>Add dropdown menus with a little extra HTML and the <a href="../javascript/#dropdowns">dropdowns JavaScript plugin</a>.</p>
|
<p>Add dropdown menus with a little extra HTML and the <a href="{{ site.baseurl }}/javascript/#dropdowns">dropdowns JavaScript plugin</a>.</p>
|
||||||
|
|
||||||
<h3>Tabs with dropdowns</h3>
|
<h3>Tabs with dropdowns</h3>
|
||||||
<div class="bs-example" data-example-id="nav-tabs-with-dropdown">
|
<div class="bs-example" data-example-id="nav-tabs-with-dropdown">
|
||||||
|
|
|
@ -10,7 +10,7 @@
|
||||||
|
|
||||||
<div class="bs-callout bs-callout-info">
|
<div class="bs-callout bs-callout-info">
|
||||||
<h4 id="callout-progress-csp">Content Security Policy (CSP) compatibility</h4>
|
<h4 id="callout-progress-csp">Content Security Policy (CSP) compatibility</h4>
|
||||||
<p>If your website has a <a href="https://developer.mozilla.org/en-US/docs/Web/Security/CSP">Content Security Policy (CSP)</a> which doesn't allow <code>style-src 'unsafe-inline'</code>, then you won't be able to use inline <code>style</code> attributes to set progress bar widths as shown in our examples below. Alternative methods for setting the widths that are compatible with strict CSPs include using a little custom JavaScript (that sets <code>element.style.width</code>) or using custom CSS classes.</p>
|
<p>If your website has a <a href="https://developer.mozilla.org/en-US/docs/Web/HTTP/CSP">Content Security Policy (CSP)</a> which doesn't allow <code>style-src 'unsafe-inline'</code>, then you won't be able to use inline <code>style</code> attributes to set progress bar widths as shown in our examples below. Alternative methods for setting the widths that are compatible with strict CSPs include using a little custom JavaScript (that sets <code>element.style.width</code>) or using custom CSS classes.</p>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<h2 id="progress-basic">Basic example</h2>
|
<h2 id="progress-basic">Basic example</h2>
|
||||||
|
@ -173,7 +173,7 @@
|
||||||
<div class="progress">
|
<div class="progress">
|
||||||
<div class="progress-bar progress-bar-striped" role="progressbar" aria-valuenow="45" aria-valuemin="0" aria-valuemax="100" style="width: 45%"><span class="sr-only">45% Complete</span></div>
|
<div class="progress-bar progress-bar-striped" role="progressbar" aria-valuenow="45" aria-valuemin="0" aria-valuemax="100" style="width: 45%"><span class="sr-only">45% Complete</span></div>
|
||||||
</div>
|
</div>
|
||||||
<button type="button" class="btn btn-default bs-docs-activate-animated-progressbar" data-toggle="button" aria-pressed="false" autocomplete="off">Toggle animation</button>
|
<button type="button" class="btn btn-default bs-docs-activate-animated-progressbar" data-toggle="button" aria-pressed="false">Toggle animation</button>
|
||||||
</div>
|
</div>
|
||||||
{% highlight html %}
|
{% highlight html %}
|
||||||
<div class="progress">
|
<div class="progress">
|
||||||
|
|
|
@ -6,7 +6,7 @@
|
||||||
<p><strong>Pro-Tip!</strong> You don't need to include <code>frameborder="0"</code> in your <code><iframe></code>s as we override that for you.</p>
|
<p><strong>Pro-Tip!</strong> You don't need to include <code>frameborder="0"</code> in your <code><iframe></code>s as we override that for you.</p>
|
||||||
<div class="bs-example" data-example-id="responsive-embed-16by9-iframe-youtube">
|
<div class="bs-example" data-example-id="responsive-embed-16by9-iframe-youtube">
|
||||||
<div class="embed-responsive embed-responsive-16by9">
|
<div class="embed-responsive embed-responsive-16by9">
|
||||||
<iframe class="embed-responsive-item" src="//www.youtube.com/embed/zpOULjyy-n8?rel=0" allowfullscreen></iframe>
|
<iframe class="embed-responsive-item" src="https://www.youtube.com/embed/zpOULjyy-n8?rel=0" allowfullscreen></iframe>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
{% highlight html %}
|
{% highlight html %}
|
||||||
|
|
|
@ -1,8 +1,8 @@
|
||||||
<div class="bs-docs-section">
|
<div class="bs-docs-section">
|
||||||
<h1 id="thumbnails" class="page-header">Thumbnails</h1>
|
<h1 id="thumbnails" class="page-header">Thumbnails</h1>
|
||||||
|
|
||||||
<p class="lead">Extend Bootstrap's <a href="../css/#grid">grid system</a> with the thumbnail component to easily display grids of images, videos, text, and more.</p>
|
<p class="lead">Extend Bootstrap's <a href="{{ site.baseurl }}/css/#grid">grid system</a> with the thumbnail component to easily display grids of images, videos, text, and more.</p>
|
||||||
<p>If you're looking for Pinterest-like presentation of thumbnails of varying heights and/or widths, you'll need to use a third-party plugin such as <a href="http://masonry.desandro.com">Masonry</a>, <a href="http://isotope.metafizzy.co">Isotope</a>, or <a href="http://salvattore.com">Salvattore</a>.</p>
|
<p>If you're looking for Pinterest-like presentation of thumbnails of varying heights and/or widths, you'll need to use a third-party plugin such as <a href="https://masonry.desandro.com/">Masonry</a>, <a href="https://isotope.metafizzy.co/">Isotope</a>, or <a href="https://salvattore.js.org/">Salvattore</a>.</p>
|
||||||
|
|
||||||
<h2 id="thumbnails-default">Default example</h2>
|
<h2 id="thumbnails-default">Default example</h2>
|
||||||
<p>By default, Bootstrap's thumbnails are designed to showcase linked images with minimal required markup.</p>
|
<p>By default, Bootstrap's thumbnails are designed to showcase linked images with minimal required markup.</p>
|
||||||
|
|
11
vendor/bootstrap/docs/_includes/css/forms.html
vendored
|
@ -51,7 +51,7 @@
|
||||||
{% endhighlight %}
|
{% endhighlight %}
|
||||||
<div class="bs-callout bs-callout-warning" id="callout-formgroup-inputgroup">
|
<div class="bs-callout bs-callout-warning" id="callout-formgroup-inputgroup">
|
||||||
<h4>Don't mix form groups with input groups</h4>
|
<h4>Don't mix form groups with input groups</h4>
|
||||||
<p>Do not mix form groups directly with <a href="/components/#input-groups">input groups</a>. Instead, nest the input group inside of the form group.</p>
|
<p>Do not mix form groups directly with <a href="{{ site.baseurl }}/components/#input-groups">input groups</a>. Instead, nest the input group inside of the form group.</p>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
@ -240,7 +240,7 @@
|
||||||
{% endhighlight %}
|
{% endhighlight %}
|
||||||
<div class="bs-callout bs-callout-info" id="callout-xref-input-group">
|
<div class="bs-callout bs-callout-info" id="callout-xref-input-group">
|
||||||
<h4>Input groups</h4>
|
<h4>Input groups</h4>
|
||||||
<p>To add integrated text or buttons before and/or after any text-based <code><input></code>, <a href="../components/#input-groups">check out the input group component</a>.</p>
|
<p>To add integrated text or buttons before and/or after any text-based <code><input></code>, <a href="{{ site.baseurl }}/components/#input-groups">check out the input group component</a>.</p>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<h3>Textarea</h3>
|
<h3>Textarea</h3>
|
||||||
|
@ -625,7 +625,7 @@
|
||||||
</form>
|
</form>
|
||||||
</div><!-- /.bs-example -->
|
</div><!-- /.bs-example -->
|
||||||
{% highlight html %}
|
{% highlight html %}
|
||||||
<label class="sr-only" for="inputHelpBlock">Input with help text</label>
|
<label for="inputHelpBlock">Input with help text</label>
|
||||||
<input type="text" id="inputHelpBlock" class="form-control" aria-describedby="helpBlock">
|
<input type="text" id="inputHelpBlock" class="form-control" aria-describedby="helpBlock">
|
||||||
...
|
...
|
||||||
<span id="helpBlock" class="help-block">A block of help text that breaks onto a new line and may extend beyond one line.</span>
|
<span id="helpBlock" class="help-block">A block of help text that breaks onto a new line and may extend beyond one line.</span>
|
||||||
|
@ -639,7 +639,7 @@
|
||||||
<div class="bs-callout bs-callout-warning" id="callout-form-validation-state-accessibility">
|
<div class="bs-callout bs-callout-warning" id="callout-form-validation-state-accessibility">
|
||||||
<h4>Conveying validation state to assistive technologies and colorblind users</h4>
|
<h4>Conveying validation state to assistive technologies and colorblind users</h4>
|
||||||
<p>Using these validation styles to denote the state of a form control only provides a visual, color-based indication, which will not be conveyed to users of assistive technologies - such as screen readers - or to colorblind users.</p>
|
<p>Using these validation styles to denote the state of a form control only provides a visual, color-based indication, which will not be conveyed to users of assistive technologies - such as screen readers - or to colorblind users.</p>
|
||||||
<p>Ensure that an alternative indication of state is also provided. For instance, you can include a hint about state in the form control's <code><label></code> text itself (as is the case in the following code example), include a <a href="../components/#glyphicons">Glyphicon</a> (with appropriate alternative text using the <code>.sr-only</code> class - see the <a href="../components/#glyphicons-examples">Glyphicon examples</a>), or by providing an additional <a href="#forms-help-text">help text</a> block. Specifically for assistive technologies, invalid form controls can also be assigned an <code>aria-invalid="true"</code> attribute.</p>
|
<p>Ensure that an alternative indication of state is also provided. For instance, you can include a hint about state in the form control's <code><label></code> text itself (as is the case in the following code example), include a <a href="{{ site.baseurl }}/components/#glyphicons">Glyphicon</a> (with appropriate alternative text using the <code>.sr-only</code> class - see the <a href="{{ site.baseurl }}/components/#glyphicons-examples">Glyphicon examples</a>), or by providing an additional <a href="#forms-help-text">help text</a> block. Specifically for assistive technologies, invalid form controls can also be assigned an <code>aria-invalid="true"</code> attribute.</p>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="bs-example" data-example-id="form-validation-states">
|
<div class="bs-example" data-example-id="form-validation-states">
|
||||||
|
@ -728,7 +728,7 @@
|
||||||
<p><strong class="text-danger">Feedback icons only work with textual <code><input class="form-control"></code> elements.</strong></p>
|
<p><strong class="text-danger">Feedback icons only work with textual <code><input class="form-control"></code> elements.</strong></p>
|
||||||
<div class="bs-callout bs-callout-warning" id="callout-has-feedback-icon-positioning">
|
<div class="bs-callout bs-callout-warning" id="callout-has-feedback-icon-positioning">
|
||||||
<h4>Icons, labels, and input groups</h4>
|
<h4>Icons, labels, and input groups</h4>
|
||||||
<p>Manual positioning of feedback icons is required for inputs without a label and for <a href="../components#input-groups">input groups</a> with an add-on on the right. You are strongly encouraged to provide labels for all inputs for accessibility reasons. If you wish to prevent labels from being displayed, hide them with the <code>.sr-only</code> class. If you must do without labels, adjust the <code>top</code> value of the feedback icon. For input groups, adjust the <code>right</code> value to an appropriate pixel value depending on the width of your addon.</p>
|
<p>Manual positioning of feedback icons is required for inputs without a label and for <a href="{{ site.baseurl }}/components/#input-groups">input groups</a> with an add-on on the right. You are strongly encouraged to provide labels for all inputs for accessibility reasons. If you wish to prevent labels from being displayed, hide them with the <code>.sr-only</code> class. If you must do without labels, adjust the <code>top</code> value of the feedback icon. For input groups, adjust the <code>right</code> value to an appropriate pixel value depending on the width of your addon.</p>
|
||||||
</div>
|
</div>
|
||||||
<div class="bs-callout bs-callout-warning" id="callout-has-feedback-icon-accessibility">
|
<div class="bs-callout bs-callout-warning" id="callout-has-feedback-icon-accessibility">
|
||||||
<h4>Conveying the icon's meaning to assistive technologies</h4>
|
<h4>Conveying the icon's meaning to assistive technologies</h4>
|
||||||
|
@ -1026,4 +1026,3 @@
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
{% endhighlight %}
|
{% endhighlight %}
|
||||||
|
|
||||||
|
|
34
vendor/bootstrap/docs/_includes/css/grid.html
vendored
|
@ -292,7 +292,7 @@
|
||||||
<div class="col-xs-6 col-sm-3">.col-xs-6 .col-sm-3</div>
|
<div class="col-xs-6 col-sm-3">.col-xs-6 .col-sm-3</div>
|
||||||
</div>
|
</div>
|
||||||
{% endhighlight %}
|
{% endhighlight %}
|
||||||
<p>In addition to column clearing at responsive breakpoints, you may need to <strong>reset offsets, pushes, or pulls</strong>. See this in action in <a href="../examples/grid/">the grid example</a>.</p>
|
<p>In addition to column clearing at responsive breakpoints, you may need to <strong>reset offsets, pushes, or pulls</strong>. See this in action in <a href="{{ site.baseurl }}/examples/grid/">the grid example</a>.</p>
|
||||||
{% highlight html %}
|
{% highlight html %}
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-sm-5 col-md-6">.col-sm-5 .col-md-6</div>
|
<div class="col-sm-5 col-md-6">.col-sm-5 .col-md-6</div>
|
||||||
|
@ -306,6 +306,38 @@
|
||||||
{% endhighlight %}
|
{% endhighlight %}
|
||||||
|
|
||||||
|
|
||||||
|
<h2 id="grid-remove-gutters">Remove gutters</h2>
|
||||||
|
<p>Remove the gutters from a row and it's columns with the <code>.row-no-gutters</code> class.</p>
|
||||||
|
<div class="row row-no-gutters show-grid">
|
||||||
|
<div class="col-xs-12 col-md-8">.col-xs-12 .col-md-8</div>
|
||||||
|
<div class="col-xs-6 col-md-4">.col-xs-6 .col-md-4</div>
|
||||||
|
</div>
|
||||||
|
<div class="row row-no-gutters show-grid">
|
||||||
|
<div class="col-xs-6 col-md-4">.col-xs-6 .col-md-4</div>
|
||||||
|
<div class="col-xs-6 col-md-4">.col-xs-6 .col-md-4</div>
|
||||||
|
<div class="col-xs-6 col-md-4">.col-xs-6 .col-md-4</div>
|
||||||
|
</div>
|
||||||
|
<div class="row row-no-gutters show-grid">
|
||||||
|
<div class="col-xs-6">.col-xs-6</div>
|
||||||
|
<div class="col-xs-6">.col-xs-6</div>
|
||||||
|
</div>
|
||||||
|
{% highlight html %}
|
||||||
|
<div class="row row-no-gutters">
|
||||||
|
<div class="col-xs-12 col-md-8">.col-xs-12 .col-md-8</div>
|
||||||
|
<div class="col-xs-6 col-md-4">.col-xs-6 .col-md-4</div>
|
||||||
|
</div>
|
||||||
|
<div class="row row-no-gutters">
|
||||||
|
<div class="col-xs-6 col-md-4">.col-xs-6 .col-md-4</div>
|
||||||
|
<div class="col-xs-6 col-md-4">.col-xs-6 .col-md-4</div>
|
||||||
|
<div class="col-xs-6 col-md-4">.col-xs-6 .col-md-4</div>
|
||||||
|
</div>
|
||||||
|
<div class="row row-no-gutters">
|
||||||
|
<div class="col-xs-6">.col-xs-6</div>
|
||||||
|
<div class="col-xs-6">.col-xs-6</div>
|
||||||
|
</div>
|
||||||
|
{% endhighlight %}
|
||||||
|
|
||||||
|
|
||||||
<h2 id="grid-offsetting">Offsetting columns</h2>
|
<h2 id="grid-offsetting">Offsetting columns</h2>
|
||||||
<p>Move columns to the right using <code>.col-md-offset-*</code> classes. These classes increase the left margin of a column by <code>*</code> columns. For example, <code>.col-md-offset-4</code> moves <code>.col-md-4</code> over four columns.</p>
|
<p>Move columns to the right using <code>.col-md-offset-*</code> classes. These classes increase the left margin of a column by <code>*</code> columns. For example, <code>.col-md-offset-4</code> moves <code>.col-md-4</code> over four columns.</p>
|
||||||
<div class="row show-grid">
|
<div class="row show-grid">
|
||||||
|
|
|
@ -64,7 +64,7 @@
|
||||||
|
|
||||||
|
|
||||||
<h3 id="helper-classes-carets">Carets</h3>
|
<h3 id="helper-classes-carets">Carets</h3>
|
||||||
<p>Use carets to indicate dropdown functionality and direction. Note that the default caret will reverse automatically in <a href="../components/#btn-dropdowns-dropup">dropup menus</a>.</p>
|
<p>Use carets to indicate dropdown functionality and direction. Note that the default caret will reverse automatically in <a href="{{ site.baseurl }}/components/#btn-dropdowns-dropup">dropup menus</a>.</p>
|
||||||
<div class="bs-example" data-example-id="caret">
|
<div class="bs-example" data-example-id="caret">
|
||||||
<span class="caret"></span>
|
<span class="caret"></span>
|
||||||
</div>
|
</div>
|
||||||
|
@ -99,7 +99,7 @@
|
||||||
|
|
||||||
<div class="bs-callout bs-callout-warning" id="callout-helper-pull-navbar">
|
<div class="bs-callout bs-callout-warning" id="callout-helper-pull-navbar">
|
||||||
<h4>Not for use in navbars</h4>
|
<h4>Not for use in navbars</h4>
|
||||||
<p>To align components in navbars with utility classes, use <code>.navbar-left</code> or <code>.navbar-right</code> instead. <a href="../components/#navbar-component-alignment">See the navbar docs</a> for details.</p>
|
<p>To align components in navbars with utility classes, use <code>.navbar-left</code> or <code>.navbar-right</code> instead. <a href="{{ site.baseurl }}/components/#navbar-component-alignment">See the navbar docs</a> for details.</p>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
@ -180,7 +180,7 @@
|
||||||
|
|
||||||
|
|
||||||
<h3 id="helper-classes-screen-readers">Screen reader and keyboard navigation content</h3>
|
<h3 id="helper-classes-screen-readers">Screen reader and keyboard navigation content</h3>
|
||||||
<p>Hide an element to all devices <strong>except screen readers</strong> with <code>.sr-only</code>. Combine <code>.sr-only</code> with <code>.sr-only-focusable</code> to show the element again when it's focused (e.g. by a keyboard-only user). Necessary for following <a href="../getting-started/#accessibility">accessibility best practices</a>. Can also be used as mixins.</p>
|
<p>Hide an element to all devices <strong>except screen readers</strong> with <code>.sr-only</code>. Combine <code>.sr-only</code> with <code>.sr-only-focusable</code> to show the element again when it's focused (e.g. by a keyboard-only user). Necessary for following <a href="{{ site.baseurl }}/getting-started/#accessibility">accessibility best practices</a>. Can also be used as mixins.</p>
|
||||||
{% highlight html %}
|
{% highlight html %}
|
||||||
<a class="sr-only sr-only-focusable" href="#content">Skip to main content</a>
|
<a class="sr-only sr-only-focusable" href="#content">Skip to main content</a>
|
||||||
{% endhighlight %}
|
{% endhighlight %}
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
|
|
||||||
<h2 id="images-responsive">Responsive images</h2>
|
<h2 id="images-responsive">Responsive images</h2>
|
||||||
<p>Images in Bootstrap 3 can be made responsive-friendly via the addition of the <code>.img-responsive</code> class. This applies <code>max-width: 100%;</code>, <code>height: auto;</code> and <code>display: block;</code> to the image so that it scales nicely to the parent element.</p>
|
<p>Images in Bootstrap 3 can be made responsive-friendly via the addition of the <code>.img-responsive</code> class. This applies <code>max-width: 100%;</code>, <code>height: auto;</code> and <code>display: block;</code> to the image so that it scales nicely to the parent element.</p>
|
||||||
<p>To center images which use the <code>.img-responsive</code> class, use <code>.center-block</code> instead of <code>.text-center</code>. <a href="../css/#helper-classes-center">See the helper classes section</a> for more details about <code>.center-block</code> usage.</p>
|
<p>To center images which use the <code>.img-responsive</code> class, use <code>.center-block</code> instead of <code>.text-center</code>. <a href="{{ site.baseurl }}/css/#helper-classes-center">See the helper classes section</a> for more details about <code>.center-block</code> usage.</p>
|
||||||
<div class="bs-callout bs-callout-warning" id="callout-images-ie-svg">
|
<div class="bs-callout bs-callout-warning" id="callout-images-ie-svg">
|
||||||
<h4>SVG images and IE 8-10</h4>
|
<h4>SVG images and IE 8-10</h4>
|
||||||
<p>In Internet Explorer 8-10, SVG images with <code>.img-responsive</code> are disproportionately sized. To fix this, add <code>width: 100% \9;</code> where necessary. Bootstrap doesn't apply this automatically as it causes complications to other image formats.</p>
|
<p>In Internet Explorer 8-10, SVG images with <code>.img-responsive</code> are disproportionately sized. To fix this, add <code>width: 100% \9;</code> where necessary. Bootstrap doesn't apply this automatically as it causes complications to other image formats.</p>
|
||||||
|
|
|
@ -7,11 +7,11 @@
|
||||||
|
|
||||||
|
|
||||||
<h2 id="less-bootstrap">Compiling Bootstrap</h2>
|
<h2 id="less-bootstrap">Compiling Bootstrap</h2>
|
||||||
<p>Bootstrap can be used in at least two ways: with the compiled CSS or with the source Less files. To compile the Less files, <a href="../getting-started/#grunt">consult the Getting Started section</a> for how to setup your development environment to run the necessary commands.</p>
|
<p>Bootstrap can be used in at least two ways: with the compiled CSS or with the source Less files. To compile the Less files, <a href="{{ site.baseurl }}/getting-started/#grunt">consult the Getting Started section</a> for how to setup your development environment to run the necessary commands.</p>
|
||||||
<p>Third party compilation tools may work with Bootstrap, but they are not supported by our core team.</p>
|
<p>Third party compilation tools may work with Bootstrap, but they are not supported by our core team.</p>
|
||||||
|
|
||||||
<h2 id="less-variables">Variables</h2>
|
<h2 id="less-variables">Variables</h2>
|
||||||
<p>Variables are used throughout the entire project as a way to centralize and share commonly used values like colors, spacing, or font stacks. For a complete breakdown, please see <a href="../customize/#less-variables-section">the Customizer</a>.</p>
|
<p>Variables are used throughout the entire project as a way to centralize and share commonly used values like colors, spacing, or font stacks. For a complete breakdown, please see <a href="{{ site.baseurl }}/customize/#less-variables-section">the Customizer</a>.</p>
|
||||||
|
|
||||||
<h3 id="less-variables-colors">Colors</h3>
|
<h3 id="less-variables-colors">Colors</h3>
|
||||||
<p>Easily make use of two color schemes: grayscale and semantic. Grayscale colors provide quick access to commonly used shades of black while semantic include various colors assigned to meaningful contextual values.</p>
|
<p>Easily make use of two color schemes: grayscale and semantic. Grayscale colors provide quick access to commonly used shades of black while semantic include various colors assigned to meaningful contextual values.</p>
|
||||||
|
@ -161,7 +161,7 @@ a {
|
||||||
|
|
||||||
|
|
||||||
<h3 id="less-mixins-box-sizing">Box-sizing</h3>
|
<h3 id="less-mixins-box-sizing">Box-sizing</h3>
|
||||||
<p>Reset your components' box model with a single mixin. For context, see this <a href="https://developer.mozilla.org/en-US/docs/CSS/box-sizing" target="_blank">helpful article from Mozilla</a>.</p>
|
<p>Reset your components' box model with a single mixin. For context, see this <a href="https://developer.mozilla.org/en-US/docs/Web/CSS/box-sizing" rel="noopener" target="_blank">helpful article from Mozilla</a>.</p>
|
||||||
<p>The mixin is <strong>deprecated</strong> as of v3.2.0, with the introduction of Autoprefixer. To preserve backwards-compatibility, Bootstrap will continue to use the mixin internally until Bootstrap v4.</p>
|
<p>The mixin is <strong>deprecated</strong> as of v3.2.0, with the introduction of Autoprefixer. To preserve backwards-compatibility, Bootstrap will continue to use the mixin internally until Bootstrap v4.</p>
|
||||||
{% highlight scss %}
|
{% highlight scss %}
|
||||||
.box-sizing(@box-model) {
|
.box-sizing(@box-model) {
|
||||||
|
@ -390,7 +390,7 @@ a {
|
||||||
<p>Utility mixins are mixins that combine otherwise unrelated CSS properties to achieve a specific goal or task.</p>
|
<p>Utility mixins are mixins that combine otherwise unrelated CSS properties to achieve a specific goal or task.</p>
|
||||||
|
|
||||||
<h3 id="less-mixins-clearfix">Clearfix</h3>
|
<h3 id="less-mixins-clearfix">Clearfix</h3>
|
||||||
<p>Forget adding <code>class="clearfix"</code> to any element and instead add the <code>.clearfix()</code> mixin where appropriate. Uses the <a href="http://nicolasgallagher.com/micro-clearfix-hack/" target="_blank">micro clearfix</a> from <a href="https://twitter.com/necolas" target="_blank">Nicolas Gallagher</a>.</p>
|
<p>Forget adding <code>class="clearfix"</code> to any element and instead add the <code>.clearfix()</code> mixin where appropriate. Uses the <a href="http://nicolasgallagher.com/micro-clearfix-hack/" rel="noopener" target="_blank">micro clearfix</a> from <a href="https://twitter.com/necolas" rel="noopener" target="_blank">Nicolas Gallagher</a>.</p>
|
||||||
{% highlight scss %}
|
{% highlight scss %}
|
||||||
// Mixin
|
// Mixin
|
||||||
.clearfix() {
|
.clearfix() {
|
||||||
|
|
|
@ -6,7 +6,7 @@
|
||||||
<h2 id="overview-doctype">HTML5 doctype</h2>
|
<h2 id="overview-doctype">HTML5 doctype</h2>
|
||||||
<p>Bootstrap makes use of certain HTML elements and CSS properties that require the use of the HTML5 doctype. Include it at the beginning of all your projects.</p>
|
<p>Bootstrap makes use of certain HTML elements and CSS properties that require the use of the HTML5 doctype. Include it at the beginning of all your projects.</p>
|
||||||
{% highlight html %}
|
{% highlight html %}
|
||||||
<!DOCTYPE html>
|
<!doctype html>
|
||||||
<html lang="en">
|
<html lang="en">
|
||||||
...
|
...
|
||||||
</html>
|
</html>
|
||||||
|
@ -33,7 +33,7 @@
|
||||||
<p>These styles can be found within <code>scaffolding.less</code>.</p>
|
<p>These styles can be found within <code>scaffolding.less</code>.</p>
|
||||||
|
|
||||||
<h2 id="overview-normalize">Normalize.css</h2>
|
<h2 id="overview-normalize">Normalize.css</h2>
|
||||||
<p>For improved cross-browser rendering, we use <a href="http://necolas.github.io/normalize.css/" target="_blank">Normalize.css</a>, a project by <a href="https://twitter.com/necolas" target="_blank">Nicolas Gallagher</a> and <a href="https://twitter.com/jon_neal" target="_blank">Jonathan Neal</a>.</p>
|
<p>For improved cross-browser rendering, we use <a href="https://necolas.github.io/normalize.css/" rel="noopener" target="_blank">Normalize.css</a>, a project by <a href="https://twitter.com/necolas" rel="noopener" target="_blank">Nicolas Gallagher</a> and <a href="https://twitter.com/jon_neal" rel="noopener" target="_blank">Jonathan Neal</a>.</p>
|
||||||
|
|
||||||
<h2 id="overview-container">Containers</h2>
|
<h2 id="overview-container">Containers</h2>
|
||||||
<p>Bootstrap requires a containing element to wrap site contents and house our grid system. You may choose one of two containers to use in your projects. Note that, due to <code>padding</code> and more, neither container is nestable.</p>
|
<p>Bootstrap requires a containing element to wrap site contents and house our grid system. You may choose one of two containers to use in your projects. Note that, due to <code>padding</code> and more, neither container is nestable.</p>
|
||||||
|
|
|
@ -113,7 +113,7 @@
|
||||||
<div class="clearfix"></div>
|
<div class="clearfix"></div>
|
||||||
<div class="col-xs-4">
|
<div class="col-xs-4">
|
||||||
<label for="input-@font-size-small">@font-size-small</label>
|
<label for="input-@font-size-small">@font-size-small</label>
|
||||||
<input class="form-control" id="input-@font-size-small" type="text" value="ceil((@font-size-base * 0.85))" data-var="@font-size-small"/>
|
<input class="form-control" id="input-@font-size-small" type="text" value="ceil((@font-size-base * .85))" data-var="@font-size-small"/>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-xs-4">
|
<div class="col-xs-4">
|
||||||
<label for="input-@font-size-h1">@font-size-h1</label>
|
<label for="input-@font-size-h1">@font-size-h1</label>
|
||||||
|
@ -139,7 +139,7 @@
|
||||||
<div class="clearfix"></div>
|
<div class="clearfix"></div>
|
||||||
<div class="col-xs-4">
|
<div class="col-xs-4">
|
||||||
<label for="input-@font-size-h6">@font-size-h6</label>
|
<label for="input-@font-size-h6">@font-size-h6</label>
|
||||||
<input class="form-control" id="input-@font-size-h6" type="text" value="ceil((@font-size-base * 0.85))" data-var="@font-size-h6"/>
|
<input class="form-control" id="input-@font-size-h6" type="text" value="ceil((@font-size-base * .85))" data-var="@font-size-h6"/>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-xs-4">
|
<div class="col-xs-4">
|
||||||
<label for="input-@line-height-base">@line-height-base</label>
|
<label for="input-@line-height-base">@line-height-base</label>
|
||||||
|
@ -520,7 +520,7 @@
|
||||||
</div>
|
</div>
|
||||||
<div class="col-xs-4">
|
<div class="col-xs-4">
|
||||||
<label for="input-@dropdown-border">@dropdown-border</label>
|
<label for="input-@dropdown-border">@dropdown-border</label>
|
||||||
<input class="form-control" id="input-@dropdown-border" type="text" aria-describedby="help-block-@dropdown-border" value="rgba(0,0,0,.15)" data-var="@dropdown-border"/>
|
<input class="form-control" id="input-@dropdown-border" type="text" aria-describedby="help-block-@dropdown-border" value="rgba(0, 0, 0, .15)" data-var="@dropdown-border"/>
|
||||||
<p class="help-block" id="help-block-@dropdown-border">Dropdown menu <code>border-color</code>.</p>
|
<p class="help-block" id="help-block-@dropdown-border">Dropdown menu <code>border-color</code>.</p>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-xs-4">
|
<div class="col-xs-4">
|
||||||
|
@ -1167,7 +1167,7 @@
|
||||||
</div>
|
</div>
|
||||||
<div class="col-xs-4">
|
<div class="col-xs-4">
|
||||||
<label for="input-@popover-border-color">@popover-border-color</label>
|
<label for="input-@popover-border-color">@popover-border-color</label>
|
||||||
<input class="form-control" id="input-@popover-border-color" type="text" aria-describedby="help-block-@popover-border-color" value="rgba(0,0,0,.2)" data-var="@popover-border-color"/>
|
<input class="form-control" id="input-@popover-border-color" type="text" aria-describedby="help-block-@popover-border-color" value="rgba(0, 0, 0, .2)" data-var="@popover-border-color"/>
|
||||||
<p class="help-block" id="help-block-@popover-border-color">Popover border color</p>
|
<p class="help-block" id="help-block-@popover-border-color">Popover border color</p>
|
||||||
</div>
|
</div>
|
||||||
<div class="clearfix"></div>
|
<div class="clearfix"></div>
|
||||||
|
@ -1279,7 +1279,7 @@
|
||||||
</div>
|
</div>
|
||||||
<div class="col-xs-4">
|
<div class="col-xs-4">
|
||||||
<label for="input-@modal-content-border-color">@modal-content-border-color</label>
|
<label for="input-@modal-content-border-color">@modal-content-border-color</label>
|
||||||
<input class="form-control" id="input-@modal-content-border-color" type="text" aria-describedby="help-block-@modal-content-border-color" value="rgba(0,0,0,.2)" data-var="@modal-content-border-color"/>
|
<input class="form-control" id="input-@modal-content-border-color" type="text" aria-describedby="help-block-@modal-content-border-color" value="rgba(0, 0, 0, .2)" data-var="@modal-content-border-color"/>
|
||||||
<p class="help-block" id="help-block-@modal-content-border-color">Modal content border color</p>
|
<p class="help-block" id="help-block-@modal-content-border-color">Modal content border color</p>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-xs-4">
|
<div class="col-xs-4">
|
||||||
|
@ -1743,7 +1743,7 @@
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-xs-4">
|
<div class="col-xs-4">
|
||||||
<label for="input-@carousel-text-shadow">@carousel-text-shadow</label>
|
<label for="input-@carousel-text-shadow">@carousel-text-shadow</label>
|
||||||
<input class="form-control" id="input-@carousel-text-shadow" type="text" value="0 1px 2px rgba(0,0,0,.6)" data-var="@carousel-text-shadow"/>
|
<input class="form-control" id="input-@carousel-text-shadow" type="text" value="0 1px 2px rgba(0, 0, 0, .6)" data-var="@carousel-text-shadow"/>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-xs-4">
|
<div class="col-xs-4">
|
||||||
<label for="input-@carousel-control-color">@carousel-control-color</label>
|
<label for="input-@carousel-control-color">@carousel-control-color</label>
|
||||||
|
|
46
vendor/bootstrap/docs/_includes/footer.html
vendored
|
@ -6,13 +6,13 @@
|
||||||
<ul class="bs-docs-footer-links">
|
<ul class="bs-docs-footer-links">
|
||||||
<li><a href="{{ site.repo }}">GitHub</a></li>
|
<li><a href="{{ site.repo }}">GitHub</a></li>
|
||||||
<li><a href="https://twitter.com/getbootstrap">Twitter</a></li>
|
<li><a href="https://twitter.com/getbootstrap">Twitter</a></li>
|
||||||
<li><a href="../getting-started/#examples">Examples</a></li>
|
<li><a href="{{ site.baseurl }}/getting-started/#examples">Examples</a></li>
|
||||||
<li><a href="../about/">About</a></li>
|
<li><a href="{{ site.baseurl }}/about/">About</a></li>
|
||||||
</ul>
|
</ul>
|
||||||
|
|
||||||
<p>Designed and built with all the love in the world by <a href="https://twitter.com/mdo" target="_blank">@mdo</a> and <a href="https://twitter.com/fat" target="_blank">@fat</a>. Maintained by the <a href="https://github.com/orgs/twbs/people">core team</a> with the help of <a href="https://github.com/twbs/bootstrap/graphs/contributors">our contributors</a>.</p>
|
<p>Designed and built with all the love in the world by <a href="https://twitter.com/mdo" rel="noopener" target="_blank">@mdo</a> and <a href="https://twitter.com/fat" rel="noopener" target="_blank">@fat</a>. Maintained by the <a href="https://github.com/orgs/twbs/people">core team</a> with the help of <a href="https://github.com/twbs/bootstrap/graphs/contributors">our contributors</a>.</p>
|
||||||
|
|
||||||
<p>Code licensed <a rel="license" href="https://github.com/twbs/bootstrap/blob/master/LICENSE" target="_blank">MIT</a>, docs <a rel="license" href="https://creativecommons.org/licenses/by/3.0/" target="_blank">CC BY 3.0</a>.</p>
|
<p>Code licensed <a href="https://github.com/twbs/bootstrap/blob/master/LICENSE" rel="license noopener" target="_blank">MIT</a>, docs <a href="https://creativecommons.org/licenses/by/3.0/" rel="license noopener" target="_blank">CC BY 3.0</a>.</p>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</footer>
|
</footer>
|
||||||
|
@ -20,48 +20,34 @@
|
||||||
<!-- Bootstrap core JavaScript
|
<!-- Bootstrap core JavaScript
|
||||||
================================================== -->
|
================================================== -->
|
||||||
<!-- Placed at the end of the document so the pages load faster -->
|
<!-- Placed at the end of the document so the pages load faster -->
|
||||||
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
|
<script src="https://code.jquery.com/jquery-1.12.4.min.js" integrity="sha384-nvAa0+6Qg9clwYCGGPpDQLVpLNn0fRaROjHqs13t4Ggj3Ez50XnGQqc/r8MhnRDZ" crossorigin="anonymous"></script>
|
||||||
<script>window.jQuery || document.write('<script src="../assets/js/vendor/jquery.min.js"><\/script>')</script>
|
<script>window.jQuery || document.write('<script src="{{ site.baseurl }}/assets/js/vendor/jquery.min.js"><\/script>')</script>
|
||||||
|
|
||||||
{% if site.github %}
|
{% if site.github %}
|
||||||
<script src="../dist/js/bootstrap.min.js"></script>
|
<script src="{{ site.baseurl }}/dist/js/bootstrap.min.js"></script>
|
||||||
{% else %}
|
{% else %}
|
||||||
<script src="../dist/js/bootstrap.js"></script>
|
<script src="{{ site.baseurl }}/dist/js/bootstrap.js"></script>
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
|
{% if page.layout == "default" %}
|
||||||
|
<script src="https://cdn.jsdelivr.net/docsearch.js/2/docsearch.min.js"></script>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
{% if site.github %}
|
{% if site.github %}
|
||||||
<script src="../assets/js/docs.min.js"></script>
|
<script src="{{ site.baseurl }}/assets/js/docs.min.js"></script>
|
||||||
{% else %}
|
{% else %}
|
||||||
{% for file in site.data.configBridge.paths.docsJs %}
|
{% for file in site.data.configBridge.paths.docsJs %}
|
||||||
<script src="{{ file }}"></script>
|
<script src="{{ file | replace_first: '..', site.baseurl }}"></script>
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
{% if page.slug == "customize" %}
|
{% if page.slug == "customize" %}
|
||||||
<script>var __configBridge = {{ site.data.configBridge.config | jsonify }}</script>
|
<script>var __configBridge = {{ site.data.configBridge.config | jsonify }}</script>
|
||||||
{% if site.github %}
|
{% if site.github %}
|
||||||
<script src="../assets/js/customize.min.js"></script>
|
<script src="{{ site.baseurl }}/assets/js/customize.min.js"></script>
|
||||||
{% else %}
|
{% else %}
|
||||||
{% for file in site.data.configBridge.paths.customizerJs %}
|
{% for file in site.data.configBridge.paths.customizerJs %}
|
||||||
<script src="{{ file }}"></script>
|
<script src="{{ file | replace_first: '..', site.baseurl }}"></script>
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
<!-- IE10 viewport hack for Surface/desktop Windows 8 bug -->
|
|
||||||
<script src="../assets/js/ie10-viewport-bug-workaround.js"></script>
|
|
||||||
|
|
||||||
<!-- Analytics
|
|
||||||
================================================== -->
|
|
||||||
<script>
|
|
||||||
var _gauges = _gauges || [];
|
|
||||||
(function() {
|
|
||||||
var t = document.createElement('script');
|
|
||||||
t.async = true;
|
|
||||||
t.id = 'gauges-tracker';
|
|
||||||
t.setAttribute('data-site-id', '4f0dc9fef5a1f55508000013');
|
|
||||||
t.src = '//secure.gaug.es/track.js';
|
|
||||||
var s = document.getElementsByTagName('script')[0];
|
|
||||||
s.parentNode.insertBefore(t, s);
|
|
||||||
})();
|
|
||||||
</script>
|
|
||||||
|
|
|
@ -3,9 +3,9 @@
|
||||||
<p class="lead">Bootstrap follows common web standards and—with minimal extra effort—can be used to create sites that are accessible to those using <abbr title="Assistive Technology" class="initialism">AT</abbr>.</p>
|
<p class="lead">Bootstrap follows common web standards and—with minimal extra effort—can be used to create sites that are accessible to those using <abbr title="Assistive Technology" class="initialism">AT</abbr>.</p>
|
||||||
|
|
||||||
<h2>Skip navigation</h2>
|
<h2>Skip navigation</h2>
|
||||||
<p>If your navigation contains many links and comes before the main content in the DOM, add a <code>Skip to main content</code> link before the navigation (for a simple explanation, see this <a href="http://a11yproject.com/posts/skip-nav-links">A11Y Project article on skip navigation links</a>). Using the <code>.sr-only</code> class will visually hide the skip link, and the <code>.sr-only-focusable</code> class will ensure that the link becomes visible once focused (for sighted keyboard users).</p>
|
<p>If your navigation contains many links and comes before the main content in the DOM, add a <code>Skip to main content</code> link before the navigation (for a simple explanation, see this <a href="https://a11yproject.com/posts/skip-nav-links/">A11Y Project article on skip navigation links</a>). Using the <code>.sr-only</code> class will visually hide the skip link, and the <code>.sr-only-focusable</code> class will ensure that the link becomes visible once focused (for sighted keyboard users).</p>
|
||||||
<div class="bs-callout bs-callout-danger" id="callout-skiplinks">
|
<div class="bs-callout bs-callout-danger" id="callout-skiplinks">
|
||||||
<p>Due to long-standing shortcomings/bugs in Chrome (see <a href="https://code.google.com/p/chromium/issues/detail?id=262171" title="Chromium bug tracker - Issue 262171: Focus should cycle from named anchor">issue 262171 in the Chromium bug tracker</a>) and Internet Explorer (see this article on <a href="http://accessibleculture.org/articles/2010/05/in-page-links/">in-page links and focus order</a>), you will need to make sure that the target of your skip link is at least programmatically focusable by adding <code>tabindex="-1"</code>.</p>
|
<p>Due to long-standing shortcomings/bugs in Chrome (see <a href="https://bugs.chromium.org/p/chromium/issues/detail?id=262171" title="Chromium bug tracker - Issue 262171: Focus should cycle from named anchor">issue 262171 in the Chromium bug tracker</a>) and Internet Explorer (see this article on <a href="http://accessibleculture.org/articles/2010/05/in-page-links/">in-page links and focus order</a>), you will need to make sure that the target of your skip link is at least programmatically focusable by adding <code>tabindex="-1"</code>.</p>
|
||||||
<p>In addition, you may want to explicitly suppress a visible focus indication on the target (particularly as Chrome currently also sets focus on elements with <code>tabindex="-1"</code> when they are clicked with the mouse) with <code>#content:focus { outline: none; }</code>.</p>
|
<p>In addition, you may want to explicitly suppress a visible focus indication on the target (particularly as Chrome currently also sets focus on elements with <code>tabindex="-1"</code> when they are clicked with the mouse) with <code>#content:focus { outline: none; }</code>.</p>
|
||||||
<p>Note that this bug will also affect any other in-page links your site may be using, rendering them useless for keyboard users. You may consider adding a similar stop-gap fix to all other named anchors / fragment identifiers that act as link targets.</p>
|
<p>Note that this bug will also affect any other in-page links your site may be using, rendering them useless for keyboard users. You may consider adding a similar stop-gap fix to all other named anchors / fragment identifiers that act as link targets.</p>
|
||||||
</div>
|
</div>
|
||||||
|
@ -21,17 +21,17 @@
|
||||||
|
|
||||||
<h2>Nested headings</h2>
|
<h2>Nested headings</h2>
|
||||||
<p>When nesting headings (<code><h1></code> - <code><h6></code>), your primary document header should be an <code><h1></code>. Subsequent headings should make logical use of <code><h2></code> - <code><h6></code> such that screen readers can construct a table of contents for your pages.</p>
|
<p>When nesting headings (<code><h1></code> - <code><h6></code>), your primary document header should be an <code><h1></code>. Subsequent headings should make logical use of <code><h2></code> - <code><h6></code> such that screen readers can construct a table of contents for your pages.</p>
|
||||||
<p>Learn more at <a href="http://squizlabs.github.io/HTML_CodeSniffer/Standards/Section508/">HTML CodeSniffer</a> and <a href="http://accessibility.psu.edu/headings">Penn State's AccessAbility</a>.</p>
|
<p>Learn more at <a href="https://squizlabs.github.io/HTML_CodeSniffer/Standards/Section508/">HTML CodeSniffer</a> and <a href="http://accessibility.psu.edu/headings/">Penn State's AccessAbility</a>.</p>
|
||||||
|
|
||||||
<h2>Color contrast</h2>
|
<h2>Color contrast</h2>
|
||||||
<p>Currently, some of the default color combinations available in Bootstrap (such as the various <a href="../css/#buttons">styled button</a> classes, some of the code highlighting colors used for <a href="../css/#code-block">basic code blocks</a>, the <code>.bg-primary</code> <a href="../css/#helper-classes-backgrounds">contextual background</a> helper class, and the default link color when used on a white background) have a low contrast ratio (below the <a href="http://www.w3.org/TR/WCAG20/#visual-audio-contrast-contrast">recommended ratio of 4.5:1</a>). This can cause problems to users with low vision or who are color blind. These default colors may need to be modified to increase their contrast and legibility.</p>
|
<p>Currently, some of the default color combinations available in Bootstrap (such as the various <a href="{{ site.baseurl }}/css/#buttons">styled button</a> classes, some of the code highlighting colors used for <a href="{{ site.baseurl }}/css/#code-block">basic code blocks</a>, the <code>.bg-primary</code> <a href="{{ site.baseurl }}/css/#helper-classes-backgrounds">contextual background</a> helper class, and the default link color when used on a white background) have a low contrast ratio (below the <a href="https://www.w3.org/TR/WCAG20/#visual-audio-contrast-contrast">recommended ratio of 4.5:1</a>). This can cause problems to users with low vision or who are color blind. These default colors may need to be modified to increase their contrast and legibility.</p>
|
||||||
|
|
||||||
<h2>Additional resources</h2>
|
<h2>Additional resources</h2>
|
||||||
<ul>
|
<ul>
|
||||||
<li><a href="https://github.com/squizlabs/HTML_CodeSniffer">"HTML Codesniffer" bookmarklet for identifying accessibility issues</a></li>
|
<li><a href="https://github.com/squizlabs/HTML_CodeSniffer">"HTML Codesniffer" bookmarklet for identifying accessibility issues</a></li>
|
||||||
<li><a href="https://chrome.google.com/webstore/detail/accessibility-developer-t/fpkknkljclfencbdbgkenhalefipecmb?hl=en">Chrome's Accessibility Developer Tools extension</a></li>
|
<li><a href="https://chrome.google.com/webstore/detail/accessibility-developer-t/fpkknkljclfencbdbgkenhalefipecmb?hl=en">Chrome's Accessibility Developer Tools extension</a></li>
|
||||||
<li><a href="http://www.paciellogroup.com/resources/contrastanalyser/">Colour Contrast Analyser</a></li>
|
<li><a href="https://developer.paciellogroup.com/resources/contrastanalyser/">Colour Contrast Analyser</a></li>
|
||||||
<li><a href="http://a11yproject.com/">The A11Y Project</a></li>
|
<li><a href="https://a11yproject.com/">The A11Y Project</a></li>
|
||||||
<li><a href="https://developer.mozilla.org/en-US/docs/Accessibility">MDN accessibility documentation</a></li>
|
<li><a href="https://developer.mozilla.org/en-US/docs/Web/Accessibility">MDN accessibility documentation</a></li>
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -75,10 +75,10 @@
|
||||||
|
|
||||||
<p>On Windows, <strong>we support Internet Explorer 8-11</strong>.</p>
|
<p>On Windows, <strong>we support Internet Explorer 8-11</strong>.</p>
|
||||||
|
|
||||||
<p>For Firefox, in addition to the latest normal stable release, we also support the latest <a href="https://www.mozilla.org/en-US/firefox/organizations/faq/">Extended Support Release (ESR)</a> version of Firefox.</p>
|
<p>For Firefox, in addition to the latest normal stable release, we also support the latest <a href="https://www.mozilla.org/en-US/firefox/organizations/">Extended Support Release (ESR)</a> version of Firefox.</p>
|
||||||
|
|
||||||
<p>Unofficially, Bootstrap should look and behave well enough in Chromium and Chrome for Linux, Firefox for Linux, and Internet Explorer 7, as well as Microsoft Edge, though they are not officially supported.</p>
|
<p>Unofficially, Bootstrap should look and behave well enough in Chromium and Chrome for Linux, Firefox for Linux, and Internet Explorer 7, as well as Microsoft Edge, though they are not officially supported.</p>
|
||||||
<p>For a list of some of the browser bugs that Bootstrap has to grapple with, see our <a href="../browser-bugs/">Wall of browser bugs</a>.</p>
|
<p>For a list of some of the browser bugs that Bootstrap has to grapple with, see our <a href="{{ site.baseurl }}/browser-bugs/">Wall of browser bugs</a>.</p>
|
||||||
|
|
||||||
<h2 id="support-ie8-ie9">Internet Explorer 8 and 9</h2>
|
<h2 id="support-ie8-ie9">Internet Explorer 8 and 9</h2>
|
||||||
<p>Internet Explorer 8 and 9 are also supported, however, please be aware that some CSS3 properties and HTML5 elements are not fully supported by these browsers. In addition, <strong>Internet Explorer 8 requires the use of <a href="https://github.com/scottjehl/Respond">Respond.js</a> to enable media query support.</strong></p>
|
<p>Internet Explorer 8 and 9 are also supported, however, please be aware that some CSS3 properties and HTML5 elements are not fully supported by these browsers. In addition, <strong>Internet Explorer 8 requires the use of <a href="https://github.com/scottjehl/Respond">Respond.js</a> to enable media query support.</strong></p>
|
||||||
|
@ -119,7 +119,7 @@
|
||||||
</table>
|
</table>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<p>Visit <a href="http://caniuse.com/">Can I use...</a> for details on browser support of CSS3 and HTML5 features.</p>
|
<p>Visit <a href="https://caniuse.com/">Can I use...</a> for details on browser support of CSS3 and HTML5 features.</p>
|
||||||
|
|
||||||
<h2 id="support-ie8-respondjs">Internet Explorer 8 and Respond.js</h2>
|
<h2 id="support-ie8-respondjs">Internet Explorer 8 and Respond.js</h2>
|
||||||
<p>Beware of the following caveats when using Respond.js in your development and production environments for Internet Explorer 8.</p>
|
<p>Beware of the following caveats when using Respond.js in your development and production environments for Internet Explorer 8.</p>
|
||||||
|
@ -143,14 +143,14 @@
|
||||||
{% endhighlight %}
|
{% endhighlight %}
|
||||||
<p>Confirm the document mode by opening the debugging tools: press <kbd>F12</kbd> and check the "Document Mode".</p>
|
<p>Confirm the document mode by opening the debugging tools: press <kbd>F12</kbd> and check the "Document Mode".</p>
|
||||||
<p>This tag is included in all of Bootstrap's documentation and examples to ensure the best rendering possible in each supported version of Internet Explorer.</p>
|
<p>This tag is included in all of Bootstrap's documentation and examples to ensure the best rendering possible in each supported version of Internet Explorer.</p>
|
||||||
<p>See <a href="https://stackoverflow.com/questions/6771258/whats-the-difference-if-meta-http-equiv-x-ua-compatible-content-ie-edge">this StackOverflow question</a> for more information.</p>
|
<p>See <a href="https://stackoverflow.com/questions/6771258/what-does-meta-http-equiv-x-ua-compatible-content-ie-edge-do">this StackOverflow question</a> for more information.</p>
|
||||||
|
|
||||||
<h2 id="support-ie10-width">Internet Explorer 10 in Windows 8 and Windows Phone 8</h2>
|
<h2 id="support-ie10-width">Internet Explorer 10 in Windows 8 and Windows Phone 8</h2>
|
||||||
<p>Internet Explorer 10 doesn't differentiate <strong>device width</strong> from <strong>viewport width</strong>, and thus doesn't properly apply the media queries in Bootstrap's CSS. Normally you'd just add a quick snippet of CSS to fix this:</p>
|
<p>Internet Explorer 10 doesn't differentiate <strong>device width</strong> from <strong>viewport width</strong>, and thus doesn't properly apply the media queries in Bootstrap's CSS. Normally you'd just add a quick snippet of CSS to fix this:</p>
|
||||||
{% highlight scss %}
|
{% highlight scss %}
|
||||||
@-ms-viewport { width: device-width; }
|
@-ms-viewport { width: device-width; }
|
||||||
{% endhighlight %}
|
{% endhighlight %}
|
||||||
<p>However, this doesn't work for devices running Windows Phone 8 versions older than <a href="http://blogs.windows.com/windows_phone/b/wpdev/archive/2013/10/14/introducing-windows-phone-preview-for-developers.aspx">Update 3 (a.k.a. GDR3)</a>, as it causes such devices to show a mostly desktop view instead of narrow "phone" view. To address this, you'll need to <strong>include the following CSS and JavaScript to work around the bug</strong>.</p>
|
<p>However, this doesn't work for devices running Windows Phone 8 versions older than <a href="https://blogs.windows.com/buildingapps/2013/10/14/introducing-windows-phone-preview-for-developers/">Update 3 (a.k.a. GDR3)</a>, as it causes such devices to show a mostly desktop view instead of narrow "phone" view. To address this, you'll need to <strong>include the following CSS and JavaScript to work around the bug</strong>.</p>
|
||||||
{% highlight scss %}
|
{% highlight scss %}
|
||||||
@-ms-viewport { width: device-width; }
|
@-ms-viewport { width: device-width; }
|
||||||
@-o-viewport { width: device-width; }
|
@-o-viewport { width: device-width; }
|
||||||
|
@ -158,7 +158,7 @@
|
||||||
{% endhighlight %}
|
{% endhighlight %}
|
||||||
|
|
||||||
{% highlight js %}
|
{% highlight js %}
|
||||||
// Copyright 2014-2015 Twitter, Inc.
|
// Copyright 2014-2019 Twitter, Inc.
|
||||||
// Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
// Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
||||||
if (navigator.userAgent.match(/IEMobile\/10\.0/)) {
|
if (navigator.userAgent.match(/IEMobile\/10\.0/)) {
|
||||||
var msViewportStyle = document.createElement('style')
|
var msViewportStyle = document.createElement('style')
|
||||||
|
@ -170,7 +170,7 @@ if (navigator.userAgent.match(/IEMobile\/10\.0/)) {
|
||||||
document.querySelector('head').appendChild(msViewportStyle)
|
document.querySelector('head').appendChild(msViewportStyle)
|
||||||
}
|
}
|
||||||
{% endhighlight %}
|
{% endhighlight %}
|
||||||
<p>For more information and usage guidelines, read <a href="http://timkadlec.com/2013/01/windows-phone-8-and-device-width/">Windows Phone 8 and Device-Width</a>.</p>
|
<p>For more information and usage guidelines, read <a href="https://timkadlec.com/2013/01/windows-phone-8-and-device-width/">Windows Phone 8 and Device-Width</a>.</p>
|
||||||
<p>As a heads up, we include this in all of Bootstrap's documentation and examples as a demonstration.</p>
|
<p>As a heads up, we include this in all of Bootstrap's documentation and examples as a demonstration.</p>
|
||||||
|
|
||||||
<h2 id="support-safari-percentages">Safari percent rounding</h2>
|
<h2 id="support-safari-percentages">Safari percent rounding</h2>
|
||||||
|
@ -228,7 +228,7 @@ $(function () {
|
||||||
})
|
})
|
||||||
</script>
|
</script>
|
||||||
{% endhighlight %}
|
{% endhighlight %}
|
||||||
<p>Want to see an example? <a href="http://jsbin.com/kuvoz/1">Check out this JS Bin demo.</a></p>
|
<p>Want to see an example? <a href="http://output.jsbin.com/kuvoz/1">Check out this JS Bin demo.</a></p>
|
||||||
|
|
||||||
<h2 id="support-validators">Validators</h2>
|
<h2 id="support-validators">Validators</h2>
|
||||||
<p>In order to provide the best possible experience to old and buggy browsers, Bootstrap uses <a href="http://browserhacks.com">CSS browser hacks</a> in several places to target special CSS to certain browser versions in order to work around bugs in the browsers themselves. These hacks understandably cause CSS validators to complain that they are invalid. In a couple places, we also use bleeding-edge CSS features that aren't yet fully standardized, but these are used purely for progressive enhancement.</p>
|
<p>In order to provide the best possible experience to old and buggy browsers, Bootstrap uses <a href="http://browserhacks.com">CSS browser hacks</a> in several places to target special CSS to certain browser versions in order to work around bugs in the browsers themselves. These hacks understandably cause CSS validators to complain that they are invalid. In a couple places, we also use bleeding-edge CSS features that aren't yet fully standardized, but these are used purely for progressive enhancement.</p>
|
||||||
|
|
|
@ -3,11 +3,11 @@
|
||||||
|
|
||||||
<p class="lead">Stay up to date on the development of Bootstrap and reach out to the community with these helpful resources.</p>
|
<p class="lead">Stay up to date on the development of Bootstrap and reach out to the community with these helpful resources.</p>
|
||||||
<ul>
|
<ul>
|
||||||
<li>Read and subscribe to <a href="http://blog.getbootstrap.com/">The Official Bootstrap Blog</a>.</li>
|
<li>Read and subscribe to <a href="https://blog.getbootstrap.com/">The Official Bootstrap Blog</a>.</li>
|
||||||
<li>Chat with fellow Bootstrappers using IRC in the <code>irc.freenode.net</code> server, in the <a href="irc://irc.freenode.net/%23bootstrap">##bootstrap channel</a>.</li>
|
<li>Chat with fellow Bootstrappers using IRC in the <code>irc.freenode.net</code> server, in the <a href="irc://irc.freenode.net/%23bootstrap">##bootstrap channel</a>.</li>
|
||||||
<li>For help using Bootstrap, ask on <a href="https://stackoverflow.com/questions/tagged/twitter-bootstrap-3">StackOverflow using the tag <code>twitter-bootstrap-3</code></a>.</li>
|
<li>For help using Bootstrap, ask on <a href="https://stackoverflow.com/questions/tagged/twitter-bootstrap-3">StackOverflow using the tag <code>twitter-bootstrap-3</code></a>.</li>
|
||||||
<li>Developers should use the keyword <code>bootstrap</code> on packages which modify or add to the functionality of Bootstrap when distributing through <a href="https://www.npmjs.com/browse/keyword/bootstrap">npm</a> or similar delivery mechanisms for maximum discoverability.</li>
|
<li>Developers should use the keyword <code>bootstrap</code> on packages which modify or add to the functionality of Bootstrap when distributing through <a href="https://www.npmjs.com/search?q=keywords:bootstrap">npm</a> or similar delivery mechanisms for maximum discoverability.</li>
|
||||||
<li>Find inspiring examples of people building with Bootstrap at the <a href="http://expo.getbootstrap.com">Bootstrap Expo</a>.</li>
|
<li>Find inspiring examples of people building with Bootstrap at the <a href="https://expo.getbootstrap.com/">Bootstrap Expo</a>.</li>
|
||||||
</ul>
|
</ul>
|
||||||
<p>You can also follow <a href="https://twitter.com/getbootstrap">@getbootstrap on Twitter</a> for the latest gossip and awesome music videos.</p>
|
<p>You can also follow <a href="https://twitter.com/getbootstrap">@getbootstrap on Twitter</a> for the latest gossip and awesome music videos.</p>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -2,11 +2,11 @@
|
||||||
<h1 id="disable-responsive" class="page-header">Disabling responsiveness</h1>
|
<h1 id="disable-responsive" class="page-header">Disabling responsiveness</h1>
|
||||||
|
|
||||||
<p class="lead">Bootstrap automatically adapts your pages for various screen sizes.
|
<p class="lead">Bootstrap automatically adapts your pages for various screen sizes.
|
||||||
Here's how to disable this feature so your page works like <a href="../examples/non-responsive/">this non-responsive example</a>.</p>
|
Here's how to disable this feature so your page works like <a href="{{ site.baseurl }}/examples/non-responsive/">this non-responsive example</a>.</p>
|
||||||
|
|
||||||
<h2>Steps to disable page responsiveness</h2>
|
<h2>Steps to disable page responsiveness</h2>
|
||||||
<ol>
|
<ol>
|
||||||
<li>Omit the viewport <code><meta></code> mentioned in <a href="../css/#overview-mobile">the CSS docs</a></li>
|
<li>Omit the viewport <code><meta></code> mentioned in <a href="{{ site.baseurl }}/css/#overview-mobile">the CSS docs</a></li>
|
||||||
<li>Override the <code>width</code> on the <code>.container</code> for each grid tier with a single width, for example <code>width: 970px !important;</code> Be sure that this comes after the default Bootstrap CSS. You can optionally avoid the <code>!important</code> with media queries or some selector-fu.</li>
|
<li>Override the <code>width</code> on the <code>.container</code> for each grid tier with a single width, for example <code>width: 970px !important;</code> Be sure that this comes after the default Bootstrap CSS. You can optionally avoid the <code>!important</code> with media queries or some selector-fu.</li>
|
||||||
<li>If using navbars, remove all navbar collapsing and expanding behavior.</li>
|
<li>If using navbars, remove all navbar collapsing and expanding behavior.</li>
|
||||||
<li>For grid layouts, use <code>.col-xs-*</code> classes in addition to, or in place of, the medium/large ones. Don't worry, the extra-small device grid scales to all resolutions.</li>
|
<li>For grid layouts, use <code>.col-xs-*</code> classes in addition to, or in place of, the medium/large ones. Don't worry, the extra-small device grid scales to all resolutions.</li>
|
||||||
|
@ -17,6 +17,6 @@
|
||||||
<h2>Bootstrap template with responsiveness disabled</h2>
|
<h2>Bootstrap template with responsiveness disabled</h2>
|
||||||
<p>We've applied these steps to an example. Read its source code to see the specific changes implemented.</p>
|
<p>We've applied these steps to an example. Read its source code to see the specific changes implemented.</p>
|
||||||
<p>
|
<p>
|
||||||
<a href="../examples/non-responsive/" class="btn btn-primary">View non-responsive example</a>
|
<a href="{{ site.baseurl }}/examples/non-responsive/" class="btn btn-primary">View non-responsive example</a>
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -27,8 +27,8 @@
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<h2 id="download-cdn">Bootstrap CDN</h2>
|
<h2 id="download-cdn">BootstrapCDN</h2>
|
||||||
<p>The folks over at <a href="https://www.maxcdn.com/">MaxCDN</a> graciously provide CDN support for Bootstrap's CSS and JavaScript. Just use these <a href="https://www.bootstrapcdn.com/">Bootstrap CDN</a> links.</p>
|
<p>The folks over at <a href="https://www.stackpath.com/">StackPath</a> graciously provide CDN support for Bootstrap's CSS and JavaScript. Just use these <a href="https://www.bootstrapcdn.com/">BootstrapCDN</a> links.</p>
|
||||||
{% highlight html %}
|
{% highlight html %}
|
||||||
<!-- Latest compiled and minified CSS -->
|
<!-- Latest compiled and minified CSS -->
|
||||||
<link rel="stylesheet" href="{{ site.cdn.css }}" integrity="{{ site.cdn.css_hash }}" crossorigin="anonymous">
|
<link rel="stylesheet" href="{{ site.cdn.css }}" integrity="{{ site.cdn.css_hash }}" crossorigin="anonymous">
|
||||||
|
@ -41,23 +41,23 @@
|
||||||
{% endhighlight %}
|
{% endhighlight %}
|
||||||
|
|
||||||
<h2 id="download-bower">Install with Bower</h2>
|
<h2 id="download-bower">Install with Bower</h2>
|
||||||
<p>You can also install and manage Bootstrap's Less, CSS, JavaScript, and fonts using <a href="http://bower.io">Bower</a>:</p>
|
<p>You can also install and manage Bootstrap's Less, CSS, JavaScript, and fonts using <a href="https://bower.io/">Bower</a>:</p>
|
||||||
{% highlight bash %}$ bower install bootstrap{% endhighlight %}
|
{% highlight bash %}bower install bootstrap{% endhighlight %}
|
||||||
|
|
||||||
<h2 id="download-npm">Install with npm</h2>
|
<h2 id="download-npm">Install with npm</h2>
|
||||||
<p>You can also install Bootstrap using <a href="https://www.npmjs.com">npm</a>:</p>
|
<p>You can also install Bootstrap using <a href="https://www.npmjs.com/">npm</a>:</p>
|
||||||
{% highlight bash %}$ npm install bootstrap@3{% endhighlight %}
|
{% highlight bash %}npm install bootstrap@3{% endhighlight %}
|
||||||
<p><code>require('bootstrap')</code> will load all of Bootstrap's jQuery plugins onto the jQuery object. The <code>bootstrap</code> module itself does not export anything. You can manually load Bootstrap's jQuery plugins individually by loading the <code>/js/*.js</code> files under the package's top-level directory.</p>
|
<p><code>require('bootstrap')</code> will load all of Bootstrap's jQuery plugins onto the jQuery object. The <code>bootstrap</code> module itself does not export anything. You can manually load Bootstrap's jQuery plugins individually by loading the <code>/js/*.js</code> files under the package's top-level directory.</p>
|
||||||
<p>Bootstrap's <code>package.json</code> contains some additional metadata under the following keys:</p>
|
<p>Bootstrap's <code>package.json</code> contains some additional metadata under the following keys:</p>
|
||||||
<ul>
|
<ul>
|
||||||
<li><code>less</code> - path to Bootstrap's main <a href="http://lesscss.org">Less</a> source file</li>
|
<li><code>less</code> - path to Bootstrap's main <a href="http://lesscss.org/">Less</a> source file</li>
|
||||||
<li><code>style</code> - path to Bootstrap's non-minified CSS that's been precompiled using the default settings (no customization)</li>
|
<li><code>style</code> - path to Bootstrap's non-minified CSS that's been precompiled using the default settings (no customization)</li>
|
||||||
</ul>
|
</ul>
|
||||||
|
|
||||||
<h2 id="download-composer">Install with Composer</h2>
|
<h2 id="download-composer">Install with Composer</h2>
|
||||||
<p>You can also install and manage Bootstrap's Less, CSS, JavaScript, and fonts using <a href="https://getcomposer.org">Composer</a>:</p>
|
<p>You can also install and manage Bootstrap's Less, CSS, JavaScript, and fonts using <a href="https://getcomposer.org/">Composer</a>:</p>
|
||||||
{% highlight bash %}$ composer require twbs/bootstrap{% endhighlight %}
|
{% highlight bash %}composer require twbs/bootstrap{% endhighlight %}
|
||||||
|
|
||||||
<h2 id="download-autoprefixer">Autoprefixer required for Less/Sass</h2>
|
<h2 id="download-autoprefixer">Autoprefixer required for Less/Sass</h2>
|
||||||
<p>Bootstrap uses <a href="https://github.com/postcss/autoprefixer">Autoprefixer</a> to deal with <a href="http://webdesign.about.com/od/css/a/css-vendor-prefixes.htm">CSS vendor prefixes</a>. If you're compiling Bootstrap from its Less/Sass source and not using our Gruntfile, you'll need to integrate Autoprefixer into your build process yourself. If you're using precompiled Bootstrap or using our Gruntfile, you don't need to worry about this because Autoprefixer is already integrated into our Gruntfile.</p>
|
<p>Bootstrap uses <a href="https://github.com/postcss/autoprefixer">Autoprefixer</a> to deal with <a href="https://www.lifewire.com/css-vendor-prefixes-3466867">CSS vendor prefixes</a>. If you're compiling Bootstrap from its Less/Sass source and not using our Gruntfile, you'll need to integrate Autoprefixer into your build process yourself. If you're using precompiled Bootstrap or using our Gruntfile, you don't need to worry about this because Autoprefixer is already integrated into our Gruntfile.</p>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -9,14 +9,14 @@
|
||||||
<div class="row bs-examples">
|
<div class="row bs-examples">
|
||||||
<div class="col-xs-6 col-md-4">
|
<div class="col-xs-6 col-md-4">
|
||||||
<a class="thumbnail" href="../examples/starter-template/">
|
<a class="thumbnail" href="../examples/starter-template/">
|
||||||
<img src="../examples/screenshots/starter-template.jpg" alt="Starter template example">
|
<img src="../examples/screenshots/starter-template.jpg" alt="Starter template example" width="800" height="600">
|
||||||
</a>
|
</a>
|
||||||
<h3>Starter template</h3>
|
<h3>Starter template</h3>
|
||||||
<p>Nothing but the basics: compiled CSS and JavaScript along with a container.</p>
|
<p>Nothing but the basics: compiled CSS and JavaScript along with a container.</p>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-xs-6 col-md-4">
|
<div class="col-xs-6 col-md-4">
|
||||||
<a class="thumbnail" href="../examples/theme/">
|
<a class="thumbnail" href="../examples/theme/">
|
||||||
<img src="../examples/screenshots/theme.jpg" alt="Bootstrap theme example">
|
<img src="../examples/screenshots/theme.jpg" alt="Bootstrap theme example" width="800" height="600">
|
||||||
</a>
|
</a>
|
||||||
<h3>Bootstrap theme</h3>
|
<h3>Bootstrap theme</h3>
|
||||||
<p>Load the optional Bootstrap theme for a visually enhanced experience.</p>
|
<p>Load the optional Bootstrap theme for a visually enhanced experience.</p>
|
||||||
|
@ -25,14 +25,14 @@
|
||||||
|
|
||||||
<div class="col-xs-6 col-md-4">
|
<div class="col-xs-6 col-md-4">
|
||||||
<a class="thumbnail" href="../examples/grid/">
|
<a class="thumbnail" href="../examples/grid/">
|
||||||
<img src="../examples/screenshots/grid.jpg" alt="Multiple grids example">
|
<img src="../examples/screenshots/grid.jpg" alt="Multiple grids example" width="800" height="600">
|
||||||
</a>
|
</a>
|
||||||
<h3>Grids</h3>
|
<h3>Grids</h3>
|
||||||
<p>Multiple examples of grid layouts with all four tiers, nesting, and more.</p>
|
<p>Multiple examples of grid layouts with all four tiers, nesting, and more.</p>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-xs-6 col-md-4">
|
<div class="col-xs-6 col-md-4">
|
||||||
<a class="thumbnail" href="../examples/jumbotron/">
|
<a class="thumbnail" href="../examples/jumbotron/">
|
||||||
<img src="../examples/screenshots/jumbotron.jpg" alt="Jumbotron example">
|
<img src="../examples/screenshots/jumbotron.jpg" alt="Jumbotron example" width="800" height="600">
|
||||||
</a>
|
</a>
|
||||||
<h3>Jumbotron</h3>
|
<h3>Jumbotron</h3>
|
||||||
<p>Build around the jumbotron with a navbar and some basic grid columns.</p>
|
<p>Build around the jumbotron with a navbar and some basic grid columns.</p>
|
||||||
|
@ -41,7 +41,7 @@
|
||||||
|
|
||||||
<div class="col-xs-6 col-md-4">
|
<div class="col-xs-6 col-md-4">
|
||||||
<a class="thumbnail" href="../examples/jumbotron-narrow/">
|
<a class="thumbnail" href="../examples/jumbotron-narrow/">
|
||||||
<img src="../examples/screenshots/jumbotron-narrow.jpg" alt="Narrow jumbotron example">
|
<img src="../examples/screenshots/jumbotron-narrow.jpg" alt="Narrow jumbotron example" width="800" height="600">
|
||||||
</a>
|
</a>
|
||||||
<h3>Narrow jumbotron</h3>
|
<h3>Narrow jumbotron</h3>
|
||||||
<p>Build a more custom page by narrowing the default container and jumbotron.</p>
|
<p>Build a more custom page by narrowing the default container and jumbotron.</p>
|
||||||
|
@ -52,14 +52,14 @@
|
||||||
<div class="row bs-examples">
|
<div class="row bs-examples">
|
||||||
<div class="col-xs-6 col-md-4">
|
<div class="col-xs-6 col-md-4">
|
||||||
<a class="thumbnail" href="../examples/navbar/">
|
<a class="thumbnail" href="../examples/navbar/">
|
||||||
<img src="../examples/screenshots/navbar.jpg" alt="Navbar example">
|
<img src="../examples/screenshots/navbar.jpg" alt="Navbar example" width="800" height="600">
|
||||||
</a>
|
</a>
|
||||||
<h3>Navbar</h3>
|
<h3>Navbar</h3>
|
||||||
<p>Super basic template that includes the navbar along with some additional content.</p>
|
<p>Super basic template that includes the navbar along with some additional content.</p>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-xs-6 col-md-4">
|
<div class="col-xs-6 col-md-4">
|
||||||
<a class="thumbnail" href="../examples/navbar-static-top/">
|
<a class="thumbnail" href="../examples/navbar-static-top/">
|
||||||
<img src="../examples/screenshots/navbar-static.jpg" alt="Static top navbar example">
|
<img src="../examples/screenshots/navbar-static.jpg" alt="Static top navbar example" width="800" height="600">
|
||||||
</a>
|
</a>
|
||||||
<h3>Static top navbar</h3>
|
<h3>Static top navbar</h3>
|
||||||
<p>Super basic template with a static top navbar along with some additional content.</p>
|
<p>Super basic template with a static top navbar along with some additional content.</p>
|
||||||
|
@ -68,7 +68,7 @@
|
||||||
|
|
||||||
<div class="col-xs-6 col-md-4">
|
<div class="col-xs-6 col-md-4">
|
||||||
<a class="thumbnail" href="../examples/navbar-fixed-top/">
|
<a class="thumbnail" href="../examples/navbar-fixed-top/">
|
||||||
<img src="../examples/screenshots/navbar-fixed.jpg" alt="Fixed navbar example">
|
<img src="../examples/screenshots/navbar-fixed.jpg" alt="Fixed navbar example" width="800" height="600">
|
||||||
</a>
|
</a>
|
||||||
<h3>Fixed navbar</h3>
|
<h3>Fixed navbar</h3>
|
||||||
<p>Super basic template with a fixed top navbar along with some additional content.</p>
|
<p>Super basic template with a fixed top navbar along with some additional content.</p>
|
||||||
|
@ -79,14 +79,14 @@
|
||||||
<div class="row bs-examples">
|
<div class="row bs-examples">
|
||||||
<div class="col-xs-6 col-md-4">
|
<div class="col-xs-6 col-md-4">
|
||||||
<a class="thumbnail" href="../examples/cover/">
|
<a class="thumbnail" href="../examples/cover/">
|
||||||
<img src="../examples/screenshots/cover.jpg" alt="A one-page template example">
|
<img src="../examples/screenshots/cover.jpg" alt="A one-page template example" width="800" height="600">
|
||||||
</a>
|
</a>
|
||||||
<h3>Cover</h3>
|
<h3>Cover</h3>
|
||||||
<p>A one-page template for building simple and beautiful home pages.</p>
|
<p>A one-page template for building simple and beautiful home pages.</p>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-xs-6 col-md-4">
|
<div class="col-xs-6 col-md-4">
|
||||||
<a class="thumbnail" href="../examples/carousel/">
|
<a class="thumbnail" href="../examples/carousel/">
|
||||||
<img src="../examples/screenshots/carousel.jpg" alt="Carousel example">
|
<img src="../examples/screenshots/carousel.jpg" alt="Carousel example" width="800" height="600">
|
||||||
</a>
|
</a>
|
||||||
<h3>Carousel</h3>
|
<h3>Carousel</h3>
|
||||||
<p>Customize the navbar and carousel, then add some new components.</p>
|
<p>Customize the navbar and carousel, then add some new components.</p>
|
||||||
|
@ -95,14 +95,14 @@
|
||||||
|
|
||||||
<div class="col-xs-6 col-md-4">
|
<div class="col-xs-6 col-md-4">
|
||||||
<a class="thumbnail" href="../examples/blog/">
|
<a class="thumbnail" href="../examples/blog/">
|
||||||
<img src="../examples/screenshots/blog.jpg" alt="Blog layout example">
|
<img src="../examples/screenshots/blog.jpg" alt="Blog layout example" width="800" height="600">
|
||||||
</a>
|
</a>
|
||||||
<h3>Blog</h3>
|
<h3>Blog</h3>
|
||||||
<p>Simple two-column blog layout with custom navigation, header, and type.</p>
|
<p>Simple two-column blog layout with custom navigation, header, and type.</p>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-xs-6 col-md-4">
|
<div class="col-xs-6 col-md-4">
|
||||||
<a class="thumbnail" href="../examples/dashboard/">
|
<a class="thumbnail" href="../examples/dashboard/">
|
||||||
<img src="../examples/screenshots/dashboard.jpg" alt="Dashboard example">
|
<img src="../examples/screenshots/dashboard.jpg" alt="Dashboard example" width="800" height="600">
|
||||||
</a>
|
</a>
|
||||||
<h3>Dashboard</h3>
|
<h3>Dashboard</h3>
|
||||||
<p>Basic structure for an admin dashboard with fixed sidebar and navbar.</p>
|
<p>Basic structure for an admin dashboard with fixed sidebar and navbar.</p>
|
||||||
|
@ -111,30 +111,30 @@
|
||||||
|
|
||||||
<div class="col-xs-6 col-md-4">
|
<div class="col-xs-6 col-md-4">
|
||||||
<a class="thumbnail" href="../examples/signin/">
|
<a class="thumbnail" href="../examples/signin/">
|
||||||
<img src="../examples/screenshots/sign-in.jpg" alt="Sign-in page example">
|
<img src="../examples/screenshots/sign-in.jpg" alt="Sign-in page example" width="800" height="600">
|
||||||
</a>
|
</a>
|
||||||
<h3>Sign-in page</h3>
|
<h3>Sign-in page</h3>
|
||||||
<p>Custom form layout and design for a simple sign in form.</p>
|
<p>Custom form layout and design for a simple sign in form.</p>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-xs-6 col-md-4">
|
<div class="col-xs-6 col-md-4">
|
||||||
<a class="thumbnail" href="../examples/justified-nav/">
|
<a class="thumbnail" href="../examples/justified-nav/">
|
||||||
<img src="../examples/screenshots/justified-nav.jpg" alt="Justified nav example">
|
<img src="../examples/screenshots/justified-nav.jpg" alt="Justified nav example" width="800" height="600">
|
||||||
</a>
|
</a>
|
||||||
<h3>Justified nav</h3>
|
<h3>Justified nav</h3>
|
||||||
<p>Create a custom navbar with justified links. Heads up! <a href="../components/#nav-justified">Not too Safari friendly.</a></p>
|
<p>Create a custom navbar with justified links. Heads up! <a href="{{ site.baseurl }}/components/#nav-justified">Not too Safari friendly.</a></p>
|
||||||
</div>
|
</div>
|
||||||
<div class="clearfix visible-xs"></div>
|
<div class="clearfix visible-xs"></div>
|
||||||
|
|
||||||
<div class="col-xs-6 col-md-4">
|
<div class="col-xs-6 col-md-4">
|
||||||
<a class="thumbnail" href="../examples/sticky-footer/">
|
<a class="thumbnail" href="../examples/sticky-footer/">
|
||||||
<img src="../examples/screenshots/sticky-footer.jpg" alt="Sticky footer example">
|
<img src="../examples/screenshots/sticky-footer.jpg" alt="Sticky footer example" width="800" height="600">
|
||||||
</a>
|
</a>
|
||||||
<h3>Sticky footer</h3>
|
<h3>Sticky footer</h3>
|
||||||
<p>Attach a footer to the bottom of the viewport when the content is shorter than it.</p>
|
<p>Attach a footer to the bottom of the viewport when the content is shorter than it.</p>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-xs-6 col-md-4">
|
<div class="col-xs-6 col-md-4">
|
||||||
<a class="thumbnail" href="../examples/sticky-footer-navbar/">
|
<a class="thumbnail" href="../examples/sticky-footer-navbar/">
|
||||||
<img src="../examples/screenshots/sticky-footer-navbar.jpg" alt="Sticky footer with navbar example">
|
<img src="../examples/screenshots/sticky-footer-navbar.jpg" alt="Sticky footer with navbar example" width="800" height="600">
|
||||||
</a>
|
</a>
|
||||||
<h3>Sticky footer with navbar</h3>
|
<h3>Sticky footer with navbar</h3>
|
||||||
<p>Attach a footer to the bottom of the viewport with a fixed navbar at the top.</p>
|
<p>Attach a footer to the bottom of the viewport with a fixed navbar at the top.</p>
|
||||||
|
@ -145,14 +145,14 @@
|
||||||
<div class="row bs-examples">
|
<div class="row bs-examples">
|
||||||
<div class="col-xs-6 col-md-4">
|
<div class="col-xs-6 col-md-4">
|
||||||
<a class="thumbnail" href="../examples/non-responsive/">
|
<a class="thumbnail" href="../examples/non-responsive/">
|
||||||
<img src="../examples/screenshots/non-responsive.jpg" alt="Non-responsive example">
|
<img src="../examples/screenshots/non-responsive.jpg" alt="Non-responsive example" width="800" height="600">
|
||||||
</a>
|
</a>
|
||||||
<h3>Non-responsive Bootstrap</h3>
|
<h3>Non-responsive Bootstrap</h3>
|
||||||
<p>Easily disable the responsiveness of Bootstrap <a href="#disable-responsive">per our docs</a>.</p>
|
<p>Easily disable the responsiveness of Bootstrap <a href="#disable-responsive">per our docs</a>.</p>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-xs-6 col-md-4">
|
<div class="col-xs-6 col-md-4">
|
||||||
<a class="thumbnail" href="../examples/offcanvas/">
|
<a class="thumbnail" href="../examples/offcanvas/">
|
||||||
<img src="../examples/screenshots/offcanvas.jpg" alt="Off-canvas navigation example">
|
<img src="../examples/screenshots/offcanvas.jpg" alt="Off-canvas navigation example" width="800" height="600">
|
||||||
</a>
|
</a>
|
||||||
<h3>Off-canvas</h3>
|
<h3>Off-canvas</h3>
|
||||||
<p>Build a toggleable off-canvas navigation menu for use with Bootstrap.</p>
|
<p>Build a toggleable off-canvas navigation menu for use with Bootstrap.</p>
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
<div class="bs-docs-section">
|
<div class="bs-docs-section">
|
||||||
<h1 id="grunt" class="page-header">Compiling CSS and JavaScript</h1>
|
<h1 id="grunt" class="page-header">Compiling CSS and JavaScript</h1>
|
||||||
|
|
||||||
<p class="lead">Bootstrap uses <a href="http://gruntjs.com">Grunt</a> for its build system, with convenient methods for working with the framework. It's how we compile our code, run tests, and more.</p>
|
<p class="lead">Bootstrap uses <a href="https://gruntjs.com/">Grunt</a> for its build system, with convenient methods for working with the framework. It's how we compile our code, run tests, and more.</p>
|
||||||
|
|
||||||
<h2 id="grunt-installing">Installing Grunt</h2>
|
<h2 id="grunt-installing">Installing Grunt</h2>
|
||||||
<p>To install Grunt, you must <strong>first <a href="https://nodejs.org/download/">download and install node.js</a></strong> (which includes npm). npm stands for <a href="https://www.npmjs.com/">node packaged modules</a> and is a way to manage development dependencies through node.js.</p>
|
<p>To install Grunt, you must <strong>first <a href="https://nodejs.org/download/">download and install node.js</a></strong> (which includes npm). npm stands for <a href="https://www.npmjs.com/">node packaged modules</a> and is a way to manage development dependencies through node.js.</p>
|
||||||
|
@ -22,13 +22,13 @@
|
||||||
<p>Watches the Less source files and automatically recompiles them to CSS whenever you save a change.</p>
|
<p>Watches the Less source files and automatically recompiles them to CSS whenever you save a change.</p>
|
||||||
|
|
||||||
<h3><code>grunt test</code> (Run tests)</h3>
|
<h3><code>grunt test</code> (Run tests)</h3>
|
||||||
<p>Runs <a href="http://jshint.com">JSHint</a> and runs the <a href="http://qunitjs.com">QUnit</a> tests headlessly in <a href="http://phantomjs.org">PhantomJS</a>.</p>
|
<p>Runs <a href="https://jshint.com/">JSHint</a> and runs the <a href="https://qunitjs.com/">QUnit</a> tests in real browsers thanks to <a href="https://karma-runner.github.io/2.0/index.html">Karma</a>.</p>
|
||||||
|
|
||||||
<h3><code>grunt docs</code> (Build & test the docs assets)</h3>
|
<h3><code>grunt docs</code> (Build & test the docs assets)</h3>
|
||||||
<p>Builds and tests CSS, JavaScript, and other assets which are used when running the documentation locally via <code>bundle exec jekyll serve</code>.</p>
|
<p>Builds and tests CSS, JavaScript, and other assets which are used when running the documentation locally via <code>bundle exec jekyll serve</code>.</p>
|
||||||
|
|
||||||
<h3><code>grunt</code> (Build absolutely everything and run tests)</h3>
|
<h3><code>grunt</code> (Build absolutely everything and run tests)</h3>
|
||||||
<p>Compiles and minifies CSS and JavaScript, builds the documentation website, runs the HTML5 validator against the docs, regenerates the Customizer assets, and more. Requires <a href="http://jekyllrb.com/docs/installation/">Jekyll</a>. Usually only necessary if you're hacking on Bootstrap itself.</p>
|
<p>Compiles and minifies CSS and JavaScript, builds the documentation website, runs the HTML5 validator against the docs, regenerates the Customizer assets, and more. Requires <a href="https://jekyllrb.com/docs/installation/">Jekyll</a>. Usually only necessary if you're hacking on Bootstrap itself.</p>
|
||||||
|
|
||||||
<h2 id="grunt-troubleshooting">Troubleshooting</h2>
|
<h2 id="grunt-troubleshooting">Troubleshooting</h2>
|
||||||
<p>Should you encounter problems with installing dependencies or running Grunt commands, first delete the <code>/node_modules/</code> directory generated by npm. Then, rerun <code>npm install</code>.</p>
|
<p>Should you encounter problems with installing dependencies or running Grunt commands, first delete the <code>/node_modules/</code> directory generated by npm. Then, rerun <code>npm install</code>.</p>
|
||||||
|
|
|
@ -5,7 +5,7 @@
|
||||||
|
|
||||||
<p>Copy the HTML below to begin working with a minimal Bootstrap document.</p>
|
<p>Copy the HTML below to begin working with a minimal Bootstrap document.</p>
|
||||||
{% highlight html %}
|
{% highlight html %}
|
||||||
<!DOCTYPE html>
|
<!doctype html>
|
||||||
<html lang="en">
|
<html lang="en">
|
||||||
<head>
|
<head>
|
||||||
<meta charset="utf-8">
|
<meta charset="utf-8">
|
||||||
|
@ -15,7 +15,7 @@
|
||||||
<title>Bootstrap 101 Template</title>
|
<title>Bootstrap 101 Template</title>
|
||||||
|
|
||||||
<!-- Bootstrap -->
|
<!-- Bootstrap -->
|
||||||
<link href="css/bootstrap.min.css" rel="stylesheet">
|
<link rel="stylesheet" href="{{ site.cdn.css }}" integrity="{{ site.cdn.css_hash }}" crossorigin="anonymous">
|
||||||
|
|
||||||
<!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries -->
|
<!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries -->
|
||||||
<!-- WARNING: Respond.js doesn't work if you view the page via file:// -->
|
<!-- WARNING: Respond.js doesn't work if you view the page via file:// -->
|
||||||
|
@ -28,9 +28,9 @@
|
||||||
<h1>Hello, world!</h1>
|
<h1>Hello, world!</h1>
|
||||||
|
|
||||||
<!-- jQuery (necessary for Bootstrap's JavaScript plugins) -->
|
<!-- jQuery (necessary for Bootstrap's JavaScript plugins) -->
|
||||||
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
|
<script src="https://code.jquery.com/jquery-1.12.4.min.js" integrity="sha384-nvAa0+6Qg9clwYCGGPpDQLVpLNn0fRaROjHqs13t4Ggj3Ez50XnGQqc/r8MhnRDZ" crossorigin="anonymous"></script>
|
||||||
<!-- Include all compiled plugins (below), or include individual files as needed -->
|
<!-- Include all compiled plugins (below), or include individual files as needed -->
|
||||||
<script src="js/bootstrap.min.js"></script>
|
<script src="{{ site.cdn.js }}" integrity="{{ site.cdn.js_hash }}" crossorigin="anonymous"></script>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
{% endhighlight %}
|
{% endhighlight %}
|
||||||
|
|
|
@ -2,5 +2,5 @@
|
||||||
<h1 id="tools" class="page-header">Tools</h1>
|
<h1 id="tools" class="page-header">Tools</h1>
|
||||||
|
|
||||||
<h2 id="tools-bootlint">Bootlint</h2>
|
<h2 id="tools-bootlint">Bootlint</h2>
|
||||||
<p><strong><a href="https://github.com/twbs/bootlint">Bootlint</a></strong> is the official Bootstrap HTML <a href="http://en.wikipedia.org/wiki/Lint_(software)">linter</a> tool. It automatically checks for several common HTML mistakes in webpages that are using Bootstrap in a fairly "vanilla" way. Vanilla Bootstrap's components/widgets require their parts of the DOM to conform to certain structures. Bootlint checks that instances of Bootstrap components have correctly-structured HTML. Consider adding Bootlint to your Bootstrap web development toolchain so that none of the common mistakes slow down your project's development.</p>
|
<p><strong><a href="https://github.com/twbs/bootlint">Bootlint</a></strong> is the official Bootstrap HTML <a href="https://en.wikipedia.org/wiki/Lint_(software)">linter</a> tool. It automatically checks for several common HTML mistakes in webpages that are using Bootstrap in a fairly "vanilla" way. Vanilla Bootstrap's components/widgets require their parts of the DOM to conform to certain structures. Bootlint checks that instances of Bootstrap components have correctly-structured HTML. Consider adding Bootlint to your Bootstrap web development toolchain so that none of the common mistakes slow down your project's development.</p>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -5,14 +5,14 @@
|
||||||
|
|
||||||
<div class="bs-callout bs-callout-warning" id="jquery-required">
|
<div class="bs-callout bs-callout-warning" id="jquery-required">
|
||||||
<h4>jQuery required</h4>
|
<h4>jQuery required</h4>
|
||||||
<p>Please note that <strong>all JavaScript plugins require jQuery</strong> to be included, as shown in the <a href="#template">starter template</a>. <a href="{{ site.repo }}/blob/v{{ site.current_version }}/bower.json">Consult our <code>bower.json</code></a> to see which versions of jQuery are supported.</p>
|
<p>Please note that <strong>all JavaScript plugins require jQuery</strong> to be included, as shown in the <a href="#template">starter template</a>. <a href="{{ site.repo }}/blob/master/bower.json">Consult our <code>bower.json</code></a> to see which versions of jQuery are supported.</p>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<h2 id="whats-included-precompiled">Precompiled Bootstrap</h2>
|
<h2 id="whats-included-precompiled">Precompiled Bootstrap</h2>
|
||||||
<p>Once downloaded, unzip the compressed folder to see the structure of (the compiled) Bootstrap. You'll see something like this:</p>
|
<p>Once downloaded, unzip the compressed folder to see the structure of (the compiled) Bootstrap. You'll see something like this:</p>
|
||||||
<!-- NOTE: This info is intentionally duplicated in the README.
|
<!-- NOTE: This info is intentionally duplicated in the README.
|
||||||
Copy any changes made here over to the README too. -->
|
Copy any changes made here over to the README too. -->
|
||||||
{% highlight bash %}
|
{% highlight text %}
|
||||||
bootstrap/
|
bootstrap/
|
||||||
├── css/
|
├── css/
|
||||||
│ ├── bootstrap.css
|
│ ├── bootstrap.css
|
||||||
|
@ -35,11 +35,11 @@ bootstrap/
|
||||||
{% endhighlight %}
|
{% endhighlight %}
|
||||||
<!-- NOTE: This info is intentionally duplicated in the README.
|
<!-- NOTE: This info is intentionally duplicated in the README.
|
||||||
Copy any changes made here over to the README too. -->
|
Copy any changes made here over to the README too. -->
|
||||||
<p>This is the most basic form of Bootstrap: precompiled files for quick drop-in usage in nearly any web project. We provide compiled CSS and JS (<code>bootstrap.*</code>), as well as compiled and minified CSS and JS (<code>bootstrap.min.*</code>). CSS <a href="https://developer.chrome.com/devtools/docs/css-preprocessors">source maps</a> (<code>bootstrap.*.map</code>) are available for use with certain browsers' developer tools. Fonts from Glyphicons are included, as is the optional Bootstrap theme.</p>
|
<p>This is the most basic form of Bootstrap: precompiled files for quick drop-in usage in nearly any web project. We provide compiled CSS and JS (<code>bootstrap.*</code>), as well as compiled and minified CSS and JS (<code>bootstrap.min.*</code>). CSS <a href="https://developers.google.com/web/tools/chrome-devtools/javascript/source-maps">source maps</a> (<code>bootstrap.*.map</code>) are available for use with certain browsers' developer tools. Fonts from Glyphicons are included, as is the optional Bootstrap theme.</p>
|
||||||
|
|
||||||
<h2 id="whats-included-source">Bootstrap source code</h2>
|
<h2 id="whats-included-source">Bootstrap source code</h2>
|
||||||
<p>The Bootstrap source code download includes the precompiled CSS, JavaScript, and font assets, along with source Less, JavaScript, and documentation. More specifically, it includes the following and more:</p>
|
<p>The Bootstrap source code download includes the precompiled CSS, JavaScript, and font assets, along with source Less, JavaScript, and documentation. More specifically, it includes the following and more:</p>
|
||||||
{% highlight bash %}
|
{% highlight text %}
|
||||||
bootstrap/
|
bootstrap/
|
||||||
├── less/
|
├── less/
|
||||||
├── js/
|
├── js/
|
||||||
|
|
32
vendor/bootstrap/docs/_includes/header.html
vendored
|
@ -14,29 +14,31 @@
|
||||||
|
|
||||||
<!-- Bootstrap core CSS -->
|
<!-- Bootstrap core CSS -->
|
||||||
{% if site.github %}
|
{% if site.github %}
|
||||||
<link href="../dist/css/bootstrap.min.css" rel="stylesheet">
|
<link href="{{ site.baseurl }}/dist/css/bootstrap.min.css" rel="stylesheet">
|
||||||
{% else %}
|
{% else %}
|
||||||
<link href="../dist/css/bootstrap.css" rel="stylesheet">
|
<link href="{{ site.baseurl }}/dist/css/bootstrap.css" rel="stylesheet">
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
{% if page.slug == "css" or page.slug == "components" or page.slug == "js" %}
|
{% if page.slug == "css" or page.slug == "components" or page.slug == "js" %}
|
||||||
<!-- Optional Bootstrap Theme -->
|
<!-- Optional Bootstrap Theme -->
|
||||||
{% if site.github %}
|
{% if site.github %}
|
||||||
<link href="data:text/css;charset=utf-8," data-href="../dist/css/bootstrap-theme.min.css" rel="stylesheet" id="bs-theme-stylesheet">
|
<link href="data:text/css;charset=utf-8," data-href="{{ site.baseurl }}/dist/css/bootstrap-theme.min.css" rel="stylesheet" id="bs-theme-stylesheet">
|
||||||
{% else %}
|
{% else %}
|
||||||
<link href="data:text/css;charset=utf-8," data-href="../dist/css/bootstrap-theme.css" rel="stylesheet" id="bs-theme-stylesheet">
|
<link href="data:text/css;charset=utf-8," data-href="{{ site.baseurl }}/dist/css/bootstrap-theme.css" rel="stylesheet" id="bs-theme-stylesheet">
|
||||||
|
{% endif %}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
|
{% if page.layout == "default" %}
|
||||||
|
<link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/2/docsearch.min.css">
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
<!-- Documentation extras -->
|
<!-- Documentation extras -->
|
||||||
{% if site.github %}
|
{% if site.github %}
|
||||||
<link href="../assets/css/docs.min.css" rel="stylesheet">
|
<link href="{{ site.baseurl }}/assets/css/docs.min.css" rel="stylesheet">
|
||||||
{% else %}
|
{% else %}
|
||||||
<link href="../assets/css/ie10-viewport-bug-workaround.css" rel="stylesheet">
|
<link href="{{ site.baseurl }}/assets/css/docs.css" rel="stylesheet">
|
||||||
<link href="../assets/css/src/pygments-manni.css" rel="stylesheet">
|
|
||||||
<link href="../assets/css/src/docs.css" rel="stylesheet">
|
|
||||||
{% endif %}
|
{% endif %}
|
||||||
<!--[if lt IE 9]><script src="../assets/js/ie8-responsive-file-warning.js"></script><![endif]-->
|
<!--[if lt IE 9]><script src="{{ site.baseurl }}/assets/js/ie8-responsive-file-warning.js"></script><![endif]-->
|
||||||
<script src="../assets/js/ie-emulation-modes-warning.js"></script>
|
|
||||||
|
|
||||||
<!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries -->
|
<!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries -->
|
||||||
<!--[if lt IE 9]>
|
<!--[if lt IE 9]>
|
||||||
|
@ -45,14 +47,14 @@
|
||||||
<![endif]-->
|
<![endif]-->
|
||||||
|
|
||||||
<!-- Favicons -->
|
<!-- Favicons -->
|
||||||
<link rel="apple-touch-icon" href="/apple-touch-icon.png">
|
<link rel="apple-touch-icon" href="{{ site.baseurl }}/apple-touch-icon.png">
|
||||||
<link rel="icon" href="/favicon.ico">
|
<link rel="icon" href="{{ site.baseurl }}/favicon.ico">
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
|
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
|
||||||
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
|
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
|
||||||
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
|
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
|
||||||
})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
|
})(window,document,'script','https://www.google-analytics.com/analytics.js','ga');
|
||||||
ga('create', 'UA-146052-10', 'getbootstrap.com');
|
ga('create', 'UA-146052-10', 'getbootstrap.com');
|
||||||
ga('send', 'pageview');
|
ga('send', 'pageview');
|
||||||
</script>
|
</script>
|
||||||
|
|
34
vendor/bootstrap/docs/_includes/js/buttons.html
vendored
|
@ -16,12 +16,12 @@
|
||||||
<p>For the sake of this demonstration, we are using <code>data-loading-text</code> and <code>$().button('loading')</code>, but that's not the only state you can use. <a href="#buttons-methods">See more on this below in the <code>$().button(string)</code> documentation</a>.</p>
|
<p>For the sake of this demonstration, we are using <code>data-loading-text</code> and <code>$().button('loading')</code>, but that's not the only state you can use. <a href="#buttons-methods">See more on this below in the <code>$().button(string)</code> documentation</a>.</p>
|
||||||
</div>
|
</div>
|
||||||
<div class="bs-example">
|
<div class="bs-example">
|
||||||
<button type="button" id="loading-example-btn" data-loading-text="Loading..." class="btn btn-primary" autocomplete="off">
|
<button type="button" id="loading-example-btn" data-loading-text="Loading..." class="btn btn-primary">
|
||||||
Loading state
|
Loading state
|
||||||
</button>
|
</button>
|
||||||
</div><!-- /example -->
|
</div><!-- /example -->
|
||||||
{% highlight html %}
|
{% highlight html %}
|
||||||
<button type="button" id="myButton" data-loading-text="Loading..." class="btn btn-primary" autocomplete="off">
|
<button type="button" id="myButton" data-loading-text="Loading..." class="btn btn-primary">
|
||||||
Loading state
|
Loading state
|
||||||
</button>
|
</button>
|
||||||
|
|
||||||
|
@ -41,12 +41,12 @@
|
||||||
<p>For pre-toggled buttons, you must add the <code>.active</code> class and the <code>aria-pressed="true"</code> attribute to the <code>button</code> yourself.</p>
|
<p>For pre-toggled buttons, you must add the <code>.active</code> class and the <code>aria-pressed="true"</code> attribute to the <code>button</code> yourself.</p>
|
||||||
</div>
|
</div>
|
||||||
<div class="bs-example">
|
<div class="bs-example">
|
||||||
<button type="button" class="btn btn-primary" data-toggle="button" aria-pressed="false" autocomplete="off">
|
<button type="button" class="btn btn-primary" data-toggle="button" aria-pressed="false">
|
||||||
Single toggle
|
Single toggle
|
||||||
</button>
|
</button>
|
||||||
</div><!-- /example -->
|
</div><!-- /example -->
|
||||||
{% highlight html %}
|
{% highlight html %}
|
||||||
<button type="button" class="btn btn-primary" data-toggle="button" aria-pressed="false" autocomplete="off">
|
<button type="button" class="btn btn-primary" data-toggle="button" aria-pressed="false">
|
||||||
Single toggle
|
Single toggle
|
||||||
</button>
|
</button>
|
||||||
{% endhighlight %}
|
{% endhighlight %}
|
||||||
|
@ -64,26 +64,26 @@
|
||||||
<div class="bs-example" data-example-id="buttons-checkbox">
|
<div class="bs-example" data-example-id="buttons-checkbox">
|
||||||
<div class="btn-group" data-toggle="buttons">
|
<div class="btn-group" data-toggle="buttons">
|
||||||
<label class="btn btn-primary active">
|
<label class="btn btn-primary active">
|
||||||
<input type="checkbox" checked autocomplete="off"> Checkbox 1 (pre-checked)
|
<input type="checkbox" checked> Checkbox 1 (pre-checked)
|
||||||
</label>
|
</label>
|
||||||
<label class="btn btn-primary">
|
<label class="btn btn-primary">
|
||||||
<input type="checkbox" autocomplete="off"> Checkbox 2
|
<input type="checkbox"> Checkbox 2
|
||||||
</label>
|
</label>
|
||||||
<label class="btn btn-primary">
|
<label class="btn btn-primary">
|
||||||
<input type="checkbox" autocomplete="off"> Checkbox 3
|
<input type="checkbox"> Checkbox 3
|
||||||
</label>
|
</label>
|
||||||
</div>
|
</div>
|
||||||
</div><!-- /example -->
|
</div><!-- /example -->
|
||||||
{% highlight html %}
|
{% highlight html %}
|
||||||
<div class="btn-group" data-toggle="buttons">
|
<div class="btn-group" data-toggle="buttons">
|
||||||
<label class="btn btn-primary active">
|
<label class="btn btn-primary active">
|
||||||
<input type="checkbox" autocomplete="off" checked> Checkbox 1 (pre-checked)
|
<input type="checkbox" checked> Checkbox 1 (pre-checked)
|
||||||
</label>
|
</label>
|
||||||
<label class="btn btn-primary">
|
<label class="btn btn-primary">
|
||||||
<input type="checkbox" autocomplete="off"> Checkbox 2
|
<input type="checkbox"> Checkbox 2
|
||||||
</label>
|
</label>
|
||||||
<label class="btn btn-primary">
|
<label class="btn btn-primary">
|
||||||
<input type="checkbox" autocomplete="off"> Checkbox 3
|
<input type="checkbox"> Checkbox 3
|
||||||
</label>
|
</label>
|
||||||
</div>
|
</div>
|
||||||
{% endhighlight %}
|
{% endhighlight %}
|
||||||
|
@ -91,26 +91,26 @@
|
||||||
<div class="bs-example" data-example-id="buttons-radio">
|
<div class="bs-example" data-example-id="buttons-radio">
|
||||||
<div class="btn-group" data-toggle="buttons">
|
<div class="btn-group" data-toggle="buttons">
|
||||||
<label class="btn btn-primary active">
|
<label class="btn btn-primary active">
|
||||||
<input type="radio" name="options" id="option1" autocomplete="off" checked> Radio 1 (preselected)
|
<input type="radio" name="options" id="option1" checked> Radio 1 (preselected)
|
||||||
</label>
|
</label>
|
||||||
<label class="btn btn-primary">
|
<label class="btn btn-primary">
|
||||||
<input type="radio" name="options" id="option2" autocomplete="off"> Radio 2
|
<input type="radio" name="options" id="option2"> Radio 2
|
||||||
</label>
|
</label>
|
||||||
<label class="btn btn-primary">
|
<label class="btn btn-primary">
|
||||||
<input type="radio" name="options" id="option3" autocomplete="off"> Radio 3
|
<input type="radio" name="options" id="option3"> Radio 3
|
||||||
</label>
|
</label>
|
||||||
</div>
|
</div>
|
||||||
</div><!-- /example -->
|
</div><!-- /example -->
|
||||||
{% highlight html %}
|
{% highlight html %}
|
||||||
<div class="btn-group" data-toggle="buttons">
|
<div class="btn-group" data-toggle="buttons">
|
||||||
<label class="btn btn-primary active">
|
<label class="btn btn-primary active">
|
||||||
<input type="radio" name="options" id="option1" autocomplete="off" checked> Radio 1 (preselected)
|
<input type="radio" name="options" id="option1" checked> Radio 1 (preselected)
|
||||||
</label>
|
</label>
|
||||||
<label class="btn btn-primary">
|
<label class="btn btn-primary">
|
||||||
<input type="radio" name="options" id="option2" autocomplete="off"> Radio 2
|
<input type="radio" name="options" id="option2"> Radio 2
|
||||||
</label>
|
</label>
|
||||||
<label class="btn btn-primary">
|
<label class="btn btn-primary">
|
||||||
<input type="radio" name="options" id="option3" autocomplete="off"> Radio 3
|
<input type="radio" name="options" id="option3"> Radio 3
|
||||||
</label>
|
</label>
|
||||||
</div>
|
</div>
|
||||||
{% endhighlight %}
|
{% endhighlight %}
|
||||||
|
@ -126,7 +126,7 @@
|
||||||
<p>Swaps text to any data defined text state.</p>
|
<p>Swaps text to any data defined text state.</p>
|
||||||
|
|
||||||
{% highlight html %}
|
{% highlight html %}
|
||||||
<button type="button" id="myStateButton" data-complete-text="finished!" class="btn btn-primary" autocomplete="off">
|
<button type="button" id="myStateButton" data-complete-text="finished!" class="btn btn-primary">
|
||||||
...
|
...
|
||||||
</button>
|
</button>
|
||||||
|
|
||||||
|
|
|
@ -134,7 +134,7 @@
|
||||||
<p>To keep URLs intact with link buttons, use the <code>data-target</code> attribute instead of <code>href="#"</code>.</p>
|
<p>To keep URLs intact with link buttons, use the <code>data-target</code> attribute instead of <code>href="#"</code>.</p>
|
||||||
{% highlight html %}
|
{% highlight html %}
|
||||||
<div class="dropdown">
|
<div class="dropdown">
|
||||||
<a id="dLabel" data-target="#" href="http://example.com" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">
|
<a id="dLabel" data-target="#" href="http://example.com/" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">
|
||||||
Dropdown trigger
|
Dropdown trigger
|
||||||
<span class="caret"></span>
|
<span class="caret"></span>
|
||||||
</a>
|
</a>
|
||||||
|
|
10
vendor/bootstrap/docs/_includes/js/modal.html
vendored
|
@ -12,7 +12,7 @@
|
||||||
</div>
|
</div>
|
||||||
<div class="bs-callout bs-callout-warning" id="callout-modal-mobile-caveats">
|
<div class="bs-callout bs-callout-warning" id="callout-modal-mobile-caveats">
|
||||||
<h4>Mobile device caveats</h4>
|
<h4>Mobile device caveats</h4>
|
||||||
<p>There are some caveats regarding using modals on mobile devices. <a href="../getting-started/#support-fixed-position-keyboards">See our browser support docs</a> for details.</p>
|
<p>There are some caveats regarding using modals on mobile devices. <a href="{{ site.baseurl }}/getting-started/#support-fixed-position-keyboards">See our browser support docs</a> for details.</p>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<p><strong class="text-danger">Due to how HTML5 defines its semantics, the <code>autofocus</code> HTML attribute has no effect in Bootstrap modals.</strong> To achieve the same effect, use some custom JavaScript:</p>
|
<p><strong class="text-danger">Due to how HTML5 defines its semantics, the <code>autofocus</code> HTML attribute has no effect in Bootstrap modals.</strong> To achieve the same effect, use some custom JavaScript:</p>
|
||||||
|
@ -160,7 +160,7 @@ $('#myModal').on('shown.bs.modal', function () {
|
||||||
<!-- Large modal -->
|
<!-- Large modal -->
|
||||||
<button type="button" class="btn btn-primary" data-toggle="modal" data-target=".bs-example-modal-lg">Large modal</button>
|
<button type="button" class="btn btn-primary" data-toggle="modal" data-target=".bs-example-modal-lg">Large modal</button>
|
||||||
|
|
||||||
<div class="modal fade bs-example-modal-lg" tabindex="-1" role="dialog" aria-labelledby="myLargeModalLabel">
|
<div class="modal fade" tabindex="-1" role="dialog" aria-labelledby="myLargeModalLabel">
|
||||||
<div class="modal-dialog modal-lg" role="document">
|
<div class="modal-dialog modal-lg" role="document">
|
||||||
<div class="modal-content">
|
<div class="modal-content">
|
||||||
...
|
...
|
||||||
|
@ -171,7 +171,7 @@ $('#myModal').on('shown.bs.modal', function () {
|
||||||
<!-- Small modal -->
|
<!-- Small modal -->
|
||||||
<button type="button" class="btn btn-primary" data-toggle="modal" data-target=".bs-example-modal-sm">Small modal</button>
|
<button type="button" class="btn btn-primary" data-toggle="modal" data-target=".bs-example-modal-sm">Small modal</button>
|
||||||
|
|
||||||
<div class="modal fade bs-example-modal-sm" tabindex="-1" role="dialog" aria-labelledby="mySmallModalLabel">
|
<div class="modal fade" tabindex="-1" role="dialog" aria-labelledby="mySmallModalLabel">
|
||||||
<div class="modal-dialog modal-sm" role="document">
|
<div class="modal-dialog modal-sm" role="document">
|
||||||
<div class="modal-content">
|
<div class="modal-content">
|
||||||
...
|
...
|
||||||
|
@ -311,7 +311,7 @@ $('#myModal').on('shown.bs.modal', function () {
|
||||||
{% endhighlight %}
|
{% endhighlight %}
|
||||||
|
|
||||||
<h2 id="modals-related-target">Varying modal content based on trigger button</h2>
|
<h2 id="modals-related-target">Varying modal content based on trigger button</h2>
|
||||||
<p>Have a bunch of buttons that all trigger the same modal, just with slightly different contents? Use <code>event.relatedTarget</code> and <a href="https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/Using_data_attributes">HTML <code>data-*</code> attributes</a> (possibly <a href="http://api.jquery.com/data/">via jQuery</a>) to vary the contents of the modal depending on which button was clicked. See the Modal Events docs for details on <code>relatedTarget</code>,</p>
|
<p>Have a bunch of buttons that all trigger the same modal, just with slightly different contents? Use <code>event.relatedTarget</code> and <a href="https://developer.mozilla.org/en-US/docs/Learn/HTML/Howto/Use_data_attributes">HTML <code>data-*</code> attributes</a> (possibly <a href="https://api.jquery.com/data/">via jQuery</a>) to vary the contents of the modal depending on which button was clicked. See the Modal Events docs for details on <code>relatedTarget</code>,</p>
|
||||||
<div class="bs-example">
|
<div class="bs-example">
|
||||||
<button type="button" class="btn btn-primary" data-toggle="modal" data-target="#exampleModal" data-whatever="@mdo">Open modal for @mdo</button>
|
<button type="button" class="btn btn-primary" data-toggle="modal" data-target="#exampleModal" data-whatever="@mdo">Open modal for @mdo</button>
|
||||||
<button type="button" class="btn btn-primary" data-toggle="modal" data-target="#exampleModal" data-whatever="@fat">Open modal for @fat</button>
|
<button type="button" class="btn btn-primary" data-toggle="modal" data-target="#exampleModal" data-whatever="@fat">Open modal for @fat</button>
|
||||||
|
@ -439,7 +439,7 @@ $('#exampleModal').on('show.bs.modal', function (event) {
|
||||||
<td>path</td>
|
<td>path</td>
|
||||||
<td>false</td>
|
<td>false</td>
|
||||||
<td>
|
<td>
|
||||||
<p><strong class="text-danger">This option is deprecated since v3.3.0 and has been removed in v4.</strong> We recommend instead using client-side templating or a data binding framework, or calling <a href="http://api.jquery.com/load/">jQuery.load</a> yourself.</p>
|
<p><strong class="text-danger">This option is deprecated since v3.3.0 and has been removed in v4.</strong> We recommend instead using client-side templating or a data binding framework, or calling <a href="https://api.jquery.com/load/">jQuery.load</a> yourself.</p>
|
||||||
<p>If a remote URL is provided, <strong>content will be loaded one time</strong> via jQuery's <code>load</code> method and injected into the <code>.modal-content</code> div. If you're using the data-api, you may alternatively use the <code>href</code> attribute to specify the remote source. An example of this is shown below:</p>
|
<p>If a remote URL is provided, <strong>content will be loaded one time</strong> via jQuery's <code>load</code> method and injected into the <code>.modal-content</code> div. If you're using the data-api, you may alternatively use the <code>href</code> attribute to specify the remote source. An example of this is shown below:</p>
|
||||||
{% highlight html %}
|
{% highlight html %}
|
||||||
<a data-toggle="modal" href="remote.html" data-target="#modal">Click me</a>
|
<a data-toggle="modal" href="remote.html" data-target="#modal">Click me</a>
|
||||||
|
|
77
vendor/bootstrap/docs/_includes/js/overview.html
vendored
|
@ -11,7 +11,7 @@
|
||||||
|
|
||||||
<div class="bs-callout bs-callout-danger" id="callout-overview-dependencies">
|
<div class="bs-callout bs-callout-danger" id="callout-overview-dependencies">
|
||||||
<h4>Plugin dependencies</h4>
|
<h4>Plugin dependencies</h4>
|
||||||
<p>Some plugins and CSS components depend on other plugins. If you include plugins individually, make sure to check for these dependencies in the docs. Also note that all plugins depend on jQuery (this means jQuery must be included <strong>before</strong> the plugin files). <a href="{{ site.repo }}/blob/v{{ site.current_version }}/bower.json">Consult our <code>bower.json</code></a> to see which versions of jQuery are supported.</p>
|
<p>Some plugins and CSS components depend on other plugins. If you include plugins individually, make sure to check for these dependencies in the docs. Also note that all plugins depend on jQuery (this means jQuery must be included <strong>before</strong> the plugin files). <a href="{{ site.repo }}/blob/master/bower.json">Consult our <code>bower.json</code></a> to see which versions of jQuery are supported.</p>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<h2 id="js-data-attrs">Data attributes</h2>
|
<h2 id="js-data-attrs">Data attributes</h2>
|
||||||
|
@ -70,6 +70,81 @@ $('#myModal').on('show.bs.modal', function (e) {
|
||||||
})
|
})
|
||||||
{% endhighlight %}
|
{% endhighlight %}
|
||||||
|
|
||||||
|
<h2 id="js-sanitizer">Sanitizer</h2>
|
||||||
|
|
||||||
|
<p>Tooltips and Popovers use our built-in sanitizer to sanitize options which accept HTML.</p>
|
||||||
|
<p>The default <code>whiteList</code> value is the following:</p>
|
||||||
|
|
||||||
|
{% highlight js %}
|
||||||
|
var ARIA_ATTRIBUTE_PATTERN = /^aria-[\w-]*$/i
|
||||||
|
var DefaultWhitelist = {
|
||||||
|
// Global attributes allowed on any supplied element below.
|
||||||
|
'*': ['class', 'dir', 'id', 'lang', 'role', ARIA_ATTRIBUTE_PATTERN],
|
||||||
|
a: ['target', 'href', 'title', 'rel'],
|
||||||
|
area: [],
|
||||||
|
b: [],
|
||||||
|
br: [],
|
||||||
|
col: [],
|
||||||
|
code: [],
|
||||||
|
div: [],
|
||||||
|
em: [],
|
||||||
|
hr: [],
|
||||||
|
h1: [],
|
||||||
|
h2: [],
|
||||||
|
h3: [],
|
||||||
|
h4: [],
|
||||||
|
h5: [],
|
||||||
|
h6: [],
|
||||||
|
i: [],
|
||||||
|
img: ['src', 'alt', 'title', 'width', 'height'],
|
||||||
|
li: [],
|
||||||
|
ol: [],
|
||||||
|
p: [],
|
||||||
|
pre: [],
|
||||||
|
s: [],
|
||||||
|
small: [],
|
||||||
|
span: [],
|
||||||
|
sub: [],
|
||||||
|
sup: [],
|
||||||
|
strong: [],
|
||||||
|
u: [],
|
||||||
|
ul: []
|
||||||
|
}
|
||||||
|
{% endhighlight %}
|
||||||
|
|
||||||
|
<p>If you want to add new values to this default <code>whiteList</code> you can do the following:</p>
|
||||||
|
|
||||||
|
{% highlight js %}
|
||||||
|
var myDefaultWhiteList = $.fn.tooltip.Constructor.DEFAULTS.whiteList
|
||||||
|
|
||||||
|
// To allow table elements
|
||||||
|
myDefaultWhiteList.table = []
|
||||||
|
|
||||||
|
// To allow td elements and data-option attributes on td elements
|
||||||
|
myDefaultWhiteList.td = ['data-option']
|
||||||
|
|
||||||
|
// You can push your custom regex to validate your attributes.
|
||||||
|
// Be careful about your regular expressions being too lax
|
||||||
|
var myCustomRegex = /^data-my-app-[\w-]+/
|
||||||
|
myDefaultWhiteList['*'].push(myCustomRegex)
|
||||||
|
{% endhighlight %}
|
||||||
|
|
||||||
|
<p>If you want to bypass our sanitizer because you prefer to use a dedicated library, for example <a href="https://www.npmjs.com/package/dompurify">DOMPurify</a>, you should do the following:</p>
|
||||||
|
|
||||||
|
{% highlight js %}
|
||||||
|
$('#yourTooltip').tooltip({
|
||||||
|
sanitizeFn: function (content) {
|
||||||
|
return DOMPurify.sanitize(content)
|
||||||
|
}
|
||||||
|
})
|
||||||
|
{% endhighlight %}
|
||||||
|
|
||||||
|
<div class="bs-callout bs-callout-danger" id="callout-sanitizer-no-createhtmldocument">
|
||||||
|
<h4>Browsers without <code>document.implementation.createHTMLDocument</code></h4>
|
||||||
|
<p>In case of browsers that don't support <code>document.implementation.createHTMLDocument</code>, like Internet Explorer 8, the built-in sanitize function returns the HTML as is.</p>
|
||||||
|
<p>If you want to perform sanitization in this case, please specify <code>sanitizeFn</code> and use an external library like <a href="https://www.npmjs.com/package/dompurify">DOMPurify</a>.</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
<h2 id="js-version-nums">Version numbers</h2>
|
<h2 id="js-version-nums">Version numbers</h2>
|
||||||
<p>The version of each of Bootstrap's jQuery plugins can be accessed via the <code>VERSION</code> property of the plugin's constructor. For example, for the tooltip plugin:</p>
|
<p>The version of each of Bootstrap's jQuery plugins can be accessed via the <code>VERSION</code> property of the plugin's constructor. For example, for the tooltip plugin:</p>
|
||||||
{% highlight js %}
|
{% highlight js %}
|
||||||
|
|
25
vendor/bootstrap/docs/_includes/js/popovers.html
vendored
|
@ -123,7 +123,7 @@ sagittis lacus vel augue laoreet rutrum faucibus.">
|
||||||
<p>Use the <code>focus</code> trigger to dismiss popovers on the next click that the user makes.</p>
|
<p>Use the <code>focus</code> trigger to dismiss popovers on the next click that the user makes.</p>
|
||||||
<div class="bs-callout bs-callout-danger" id="callout-popover-dismiss-click">
|
<div class="bs-callout bs-callout-danger" id="callout-popover-dismiss-click">
|
||||||
<h4>Specific markup required for dismiss-on-next-click</h4>
|
<h4>Specific markup required for dismiss-on-next-click</h4>
|
||||||
<p>For proper cross-browser and cross-platform behavior, you must use the <code><a></code> tag, <i>not</i> the <code><button></code> tag, and you also must include the <code>role="button"</code> and <a href="https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes#tabindex"><code>tabindex</code></a> attributes.</p>
|
<p>For proper cross-browser and cross-platform behavior, you must use the <code><a></code> tag, <i>not</i> the <code><button></code> tag, and you also must include the <code>role="button"</code> and <a href="https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/tabindex"><code>tabindex</code></a> attributes.</p>
|
||||||
</div>
|
</div>
|
||||||
<div class="bs-example bs-example-padded-bottom">
|
<div class="bs-example bs-example-padded-bottom">
|
||||||
<a tabindex="0" class="btn btn-lg btn-danger bs-docs-popover" role="button" data-toggle="popover" data-trigger="focus" title="Dismissible popover" data-content="And here's some amazing content. It's very engaging. Right?">Dismissible popover</a>
|
<a tabindex="0" class="btn btn-lg btn-danger bs-docs-popover" role="button" data-toggle="popover" data-trigger="focus" title="Dismissible popover" data-content="And here's some amazing content. It's very engaging. Right?">Dismissible popover</a>
|
||||||
|
@ -139,6 +139,11 @@ sagittis lacus vel augue laoreet rutrum faucibus.">
|
||||||
|
|
||||||
<h3 id="popovers-options">Options</h3>
|
<h3 id="popovers-options">Options</h3>
|
||||||
<p>Options can be passed via data attributes or JavaScript. For data attributes, append the option name to <code>data-</code>, as in <code>data-animation=""</code>.</p>
|
<p>Options can be passed via data attributes or JavaScript. For data attributes, append the option name to <code>data-</code>, as in <code>data-animation=""</code>.</p>
|
||||||
|
|
||||||
|
<div class="bs-callout bs-callout-warning" id="callout-popover-disabled-options">
|
||||||
|
<p>Note that for security reasons the <code>sanitize</code>, <code>sanitizeFn</code> and <code>whiteList</code> options cannot be supplied using data attributes.</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
<div class="table-responsive">
|
<div class="table-responsive">
|
||||||
<table class="table table-bordered table-striped js-options-table js-options-table">
|
<table class="table table-bordered table-striped js-options-table js-options-table">
|
||||||
<thead>
|
<thead>
|
||||||
|
@ -240,6 +245,24 @@ sagittis lacus vel augue laoreet rutrum faucibus.">
|
||||||
<p>If a function is given, it is called with the triggering element DOM node as its only argument. The <code>this</code> context is set to the popover instance.</p>
|
<p>If a function is given, it is called with the triggering element DOM node as its only argument. The <code>this</code> context is set to the popover instance.</p>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>sanitize</td>
|
||||||
|
<td>boolean</td>
|
||||||
|
<td>true</td>
|
||||||
|
<td>Enable or disable the sanitization. If activated <code>'template'</code>, <code>'content'</code> and <code>'title'</code> options will be sanitized.</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>whiteList</td>
|
||||||
|
<td>object</td>
|
||||||
|
<td><a href="#js-sanitizer">Default value</a></td>
|
||||||
|
<td>Object which contains allowed attributes and tags</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>sanitizeFn</td>
|
||||||
|
<td>null | function</td>
|
||||||
|
<td>null</td>
|
||||||
|
<td>Here you can supply your own sanitize function. This can be useful if you prefer to use a dedicated library to perform sanitization.</td>
|
||||||
|
</tr>
|
||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
</div><!-- /.table-responsive -->
|
</div><!-- /.table-responsive -->
|
||||||
|
|
|
@ -53,7 +53,7 @@
|
||||||
|
|
||||||
<div class="bs-callout bs-callout-warning" id="callout-scrollspy-needs-nav">
|
<div class="bs-callout bs-callout-warning" id="callout-scrollspy-needs-nav">
|
||||||
<h4>Requires Bootstrap nav</h4>
|
<h4>Requires Bootstrap nav</h4>
|
||||||
<p>Scrollspy currently requires the use of a <a href="../components/#nav">Bootstrap nav component</a> for proper highlighting of active links.</p>
|
<p>Scrollspy currently requires the use of a <a href="{{ site.baseurl }}/components/#nav">Bootstrap nav component</a> for proper highlighting of active links.</p>
|
||||||
</div>
|
</div>
|
||||||
<div class="bs-callout bs-callout-danger" id="callout-scrollspy-target-ids">
|
<div class="bs-callout bs-callout-danger" id="callout-scrollspy-target-ids">
|
||||||
<h4>Resolvable ID targets required</h4>
|
<h4>Resolvable ID targets required</h4>
|
||||||
|
@ -61,7 +61,7 @@
|
||||||
</div>
|
</div>
|
||||||
<div class="bs-callout bs-callout-info" id="callout-scrollspy-invisible-targets">
|
<div class="bs-callout bs-callout-info" id="callout-scrollspy-invisible-targets">
|
||||||
<h4>Non-<code>:visible</code> target elements ignored</h4>
|
<h4>Non-<code>:visible</code> target elements ignored</h4>
|
||||||
<p>Target elements that are not <a href="http://api.jquery.com/visible-selector/"><code>:visible</code> according to jQuery</a> will be ignored and their corresponding nav items will never be highlighted.</p>
|
<p>Target elements that are not <a href="https://api.jquery.com/visible-selector/"><code>:visible</code> according to jQuery</a> will be ignored and their corresponding nav items will never be highlighted.</p>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<h3>Requires relative positioning</h3>
|
<h3>Requires relative positioning</h3>
|
||||||
|
|
4
vendor/bootstrap/docs/_includes/js/tabs.html
vendored
|
@ -33,7 +33,7 @@
|
||||||
|
|
||||||
<div class="bs-callout bs-callout-info" id="callout-tabs-extends-component">
|
<div class="bs-callout bs-callout-info" id="callout-tabs-extends-component">
|
||||||
<h4>Extends tabbed navigation</h4>
|
<h4>Extends tabbed navigation</h4>
|
||||||
<p>This plugin extends the <a href="../components/#nav-tabs">tabbed navigation component</a> to add tabbable areas.</p>
|
<p>This plugin extends the <a href="{{ site.baseurl }}/components/#nav-tabs">tabbed navigation component</a> to add tabbable areas.</p>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
@ -57,7 +57,7 @@ $('#myTabs li:eq(2) a').tab('show') // Select third tab (0-indexed)
|
||||||
{% endhighlight %}
|
{% endhighlight %}
|
||||||
|
|
||||||
<h3>Markup</h3>
|
<h3>Markup</h3>
|
||||||
<p>You can activate a tab or pill navigation without writing any JavaScript by simply specifying <code>data-toggle="tab"</code> or <code>data-toggle="pill"</code> on an element. Adding the <code>nav</code> and <code>nav-tabs</code> classes to the tab <code>ul</code> will apply the Bootstrap <a href="../components/#nav-tabs">tab styling</a>, while adding the <code>nav</code> and <code>nav-pills</code> classes will apply <a href="../components/#nav-pills">pill styling</a>.</p>
|
<p>You can activate a tab or pill navigation without writing any JavaScript by simply specifying <code>data-toggle="tab"</code> or <code>data-toggle="pill"</code> on an element. Adding the <code>nav</code> and <code>nav-tabs</code> classes to the tab <code>ul</code> will apply the Bootstrap <a href="{{ site.baseurl }}/components/#nav-tabs">tab styling</a>, while adding the <code>nav</code> and <code>nav-pills</code> classes will apply <a href="{{ site.baseurl }}/components/#nav-pills">pill styling</a>.</p>
|
||||||
{% highlight html %}
|
{% highlight html %}
|
||||||
<div>
|
<div>
|
||||||
|
|
||||||
|
|
25
vendor/bootstrap/docs/_includes/js/tooltips.html
vendored
|
@ -115,6 +115,11 @@ $('#example').tooltip(options)
|
||||||
|
|
||||||
<h3 id="tooltips-options">Options</h3>
|
<h3 id="tooltips-options">Options</h3>
|
||||||
<p>Options can be passed via data attributes or JavaScript. For data attributes, append the option name to <code>data-</code>, as in <code>data-animation=""</code>.</p>
|
<p>Options can be passed via data attributes or JavaScript. For data attributes, append the option name to <code>data-</code>, as in <code>data-animation=""</code>.</p>
|
||||||
|
|
||||||
|
<div class="bs-callout bs-callout-warning" id="callout-tooltip-disabled-options">
|
||||||
|
<p>Note that for security reasons the <code>sanitize</code>, <code>sanitizeFn</code> and <code>whiteList</code> options cannot be supplied using data attributes.</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
<div class="table-responsive">
|
<div class="table-responsive">
|
||||||
<table class="table table-bordered table-striped js-options-table">
|
<table class="table table-bordered table-striped js-options-table">
|
||||||
<thead>
|
<thead>
|
||||||
|
@ -169,7 +174,7 @@ $('#example').tooltip(options)
|
||||||
<td>selector</td>
|
<td>selector</td>
|
||||||
<td>string</td>
|
<td>string</td>
|
||||||
<td>false</td>
|
<td>false</td>
|
||||||
<td>If a selector is provided, tooltip objects will be delegated to the specified targets. In practice, this is used to enable dynamic HTML content to have tooltips added. See <a href="https://github.com/twbs/bootstrap/issues/4215">this</a> and <a href="http://jsbin.com/zopod/1/edit">an informative example</a>.</td>
|
<td>If a selector is provided, tooltip objects will be delegated to the specified targets. In practice, this is used to also apply tooltips to dynamically added DOM elements (<code>jQuery.on</code> support). See <a href="https://github.com/twbs/bootstrap/issues/4215">this</a> and <a href="http://jsbin.com/zopod/1/edit">an informative example</a>.</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td>template</td>
|
<td>template</td>
|
||||||
|
@ -206,6 +211,24 @@ $('#example').tooltip(options)
|
||||||
<p>If a function is given, it is called with the triggering element DOM node as its only argument. The <code>this</code> context is set to the tooltip instance.</p>
|
<p>If a function is given, it is called with the triggering element DOM node as its only argument. The <code>this</code> context is set to the tooltip instance.</p>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>sanitize</td>
|
||||||
|
<td>boolean</td>
|
||||||
|
<td>true</td>
|
||||||
|
<td>Enable or disable the sanitization. If activated <code>'template'</code>, <code>'content'</code> and <code>'title'</code> options will be sanitized.</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>whiteList</td>
|
||||||
|
<td>object</td>
|
||||||
|
<td><a href="#js-sanitizer">Default value</a></td>
|
||||||
|
<td>Object which contains allowed attributes and tags</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>sanitizeFn</td>
|
||||||
|
<td>null | function</td>
|
||||||
|
<td>null</td>
|
||||||
|
<td>Here you can supply your own sanitize function. This can be useful if you prefer to use a dedicated library to perform sanitization.</td>
|
||||||
|
</tr>
|
||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
</div><!-- /.table-responsive -->
|
</div><!-- /.table-responsive -->
|
||||||
|
|
1
vendor/bootstrap/docs/_includes/nav/css.html
vendored
|
@ -20,6 +20,7 @@
|
||||||
<li><a href="#grid-example-mixed-complete">Ex: Mobile, tablet, desktop</a></li>
|
<li><a href="#grid-example-mixed-complete">Ex: Mobile, tablet, desktop</a></li>
|
||||||
<li><a href="#grid-example-wrapping">Ex: Column wrapping</a></li>
|
<li><a href="#grid-example-wrapping">Ex: Column wrapping</a></li>
|
||||||
<li><a href="#grid-responsive-resets">Responsive column resets</a></li>
|
<li><a href="#grid-responsive-resets">Responsive column resets</a></li>
|
||||||
|
<li><a href="#grid-remove-gutters">Remove gutters</a></li>
|
||||||
<li><a href="#grid-offsetting">Offsetting columns</a></li>
|
<li><a href="#grid-offsetting">Offsetting columns</a></li>
|
||||||
<li><a href="#grid-nesting">Nesting columns</a></li>
|
<li><a href="#grid-nesting">Nesting columns</a></li>
|
||||||
<li><a href="#grid-column-ordering">Column ordering</a></li>
|
<li><a href="#grid-column-ordering">Column ordering</a></li>
|
||||||
|
|
|
@ -6,6 +6,7 @@
|
||||||
<li><a href="#js-programmatic-api">Programmatic API</a></li>
|
<li><a href="#js-programmatic-api">Programmatic API</a></li>
|
||||||
<li><a href="#js-noconflict">No conflict</a></li>
|
<li><a href="#js-noconflict">No conflict</a></li>
|
||||||
<li><a href="#js-events">Events</a></li>
|
<li><a href="#js-events">Events</a></li>
|
||||||
|
<li><a href="#js-sanitizer">Sanitizer</a></li>
|
||||||
<li><a href="#js-version-nums">Version numbers</a></li>
|
<li><a href="#js-version-nums">Version numbers</a></li>
|
||||||
<li><a href="#js-disabled">When JavaScript is disabled</a></li>
|
<li><a href="#js-disabled">When JavaScript is disabled</a></li>
|
||||||
<li><a href="#callout-third-party-libs">Third-party libraries</a></li>
|
<li><a href="#callout-third-party-libs">Third-party libraries</a></li>
|
||||||
|
|
25
vendor/bootstrap/docs/_includes/nav/main.html
vendored
|
@ -7,27 +7,40 @@
|
||||||
<span class="icon-bar"></span>
|
<span class="icon-bar"></span>
|
||||||
<span class="icon-bar"></span>
|
<span class="icon-bar"></span>
|
||||||
</button>
|
</button>
|
||||||
<a href="../" class="navbar-brand">Bootstrap</a>
|
<a href="{{ site.baseurl }}/" class="navbar-brand">Bootstrap</a>
|
||||||
</div>
|
</div>
|
||||||
<nav id="bs-navbar" class="collapse navbar-collapse">
|
<nav id="bs-navbar" class="collapse navbar-collapse">
|
||||||
<ul class="nav navbar-nav">
|
<ul class="nav navbar-nav">
|
||||||
<li{% if page.slug == "getting-started" %} class="active"{% endif %}>
|
<li{% if page.slug == "getting-started" %} class="active"{% endif %}>
|
||||||
<a href="../getting-started/">Getting started</a>
|
<a href="{{ site.baseurl }}/getting-started/">Getting started</a>
|
||||||
</li>
|
</li>
|
||||||
<li{% if page.slug == "css" %} class="active"{% endif %}>
|
<li{% if page.slug == "css" %} class="active"{% endif %}>
|
||||||
<a href="../css/">CSS</a>
|
<a href="{{ site.baseurl }}/css/">CSS</a>
|
||||||
</li>
|
</li>
|
||||||
<li{% if page.slug == "components" %} class="active"{% endif %}>
|
<li{% if page.slug == "components" %} class="active"{% endif %}>
|
||||||
<a href="../components/">Components</a>
|
<a href="{{ site.baseurl }}/components/">Components</a>
|
||||||
</li>
|
</li>
|
||||||
<li{% if page.slug == "js" %} class="active"{% endif %}>
|
<li{% if page.slug == "js" %} class="active"{% endif %}>
|
||||||
<a href="../javascript/">JavaScript</a>
|
<a href="{{ site.baseurl }}/javascript/">JavaScript</a>
|
||||||
</li>
|
</li>
|
||||||
<li{% if page.slug == "customize" %} class="active"{% endif %}>
|
<li{% if page.slug == "customize" %} class="active"{% endif %}>
|
||||||
<a href="../customize/">Customize</a>
|
<a href="{{ site.baseurl }}/customize/">Customize</a>
|
||||||
</li>
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
<ul class="nav navbar-nav navbar-right">
|
<ul class="nav navbar-nav navbar-right">
|
||||||
|
<li class="dropdown">
|
||||||
|
<a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">
|
||||||
|
v{{ site.current_version }} <span class="caret"></span>
|
||||||
|
</a>
|
||||||
|
<ul class="dropdown-menu">
|
||||||
|
<li><a href="https://getbootstrap.com/">Latest (4.x)</a></li>
|
||||||
|
<li><a href="https://v4-alpha.getbootstrap.com/">v4 Alpha 6</a></li>
|
||||||
|
<li class="divider"></li>
|
||||||
|
<li class="active"><a href="https://getbootstrap.com/docs/{{ site.docs_version }}/">v{{ site.current_version }}</a></li>
|
||||||
|
<li><a href="https://getbootstrap.com/docs/3.3/">v3.3.7</a></li>
|
||||||
|
<li><a href="https://getbootstrap.com/2.3.2/">v2.3.2</a></li>
|
||||||
|
</ul>
|
||||||
|
</li>
|
||||||
<li><a href="{{ site.themes }}" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Themes')">Themes</a></li>
|
<li><a href="{{ site.themes }}" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Themes')">Themes</a></li>
|
||||||
<li><a href="{{ site.expo }}" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Expo');">Expo</a></li>
|
<li><a href="{{ site.expo }}" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Expo');">Expo</a></li>
|
||||||
<li><a href="{{ site.blog }}" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Blog');">Blog</a></li>
|
<li><a href="{{ site.blog }}" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Blog');">Blog</a></li>
|
||||||
|
|
5
vendor/bootstrap/docs/_includes/skippy.html
vendored
Normal file
|
@ -0,0 +1,5 @@
|
||||||
|
<a id="skippy" class="sr-only sr-only-focusable text-center" href="#content">
|
||||||
|
<div class="container">
|
||||||
|
<span class="skiplink-text">Skip to main content</span>
|
||||||
|
</div>
|
||||||
|
</a>
|
1
vendor/bootstrap/docs/_includes/v4.html
vendored
Normal file
|
@ -0,0 +1 @@
|
||||||
|
<a href="https://getbootstrap.com/" class="v4-tease">Looking for Bootstrap 4?</a>
|
13
vendor/bootstrap/docs/_layouts/default.html
vendored
|
@ -1,17 +1,14 @@
|
||||||
<!DOCTYPE html>
|
<!doctype html>
|
||||||
<html lang="en">
|
<html lang="en">
|
||||||
<head>
|
<head>
|
||||||
<!-- Meta, title, CSS, favicons, etc. -->
|
|
||||||
{% include header.html %}
|
{% include header.html %}
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
<a id="skippy" class="sr-only sr-only-focusable" href="#content"><div class="container"><span class="skiplink-text">Skip to main content</span></div></a>
|
{% include skippy.html %}
|
||||||
<a href="http://blog.getbootstrap.com/2015/12/08/bootstrap-4-alpha-2/" class="v4-tease">Aww yeah, Bootstrap 4 is coming!</a>
|
{% include v4.html %}
|
||||||
|
|
||||||
<!-- Docs master nav -->
|
|
||||||
{% include nav/main.html %}
|
{% include nav/main.html %}
|
||||||
|
|
||||||
<!-- Docs page layout -->
|
|
||||||
<div class="bs-docs-header" id="content" tabindex="-1">
|
<div class="bs-docs-header" id="content" tabindex="-1">
|
||||||
<div class="container">
|
<div class="container">
|
||||||
<h1>{{ page.title }}</h1>
|
<h1>{{ page.title }}</h1>
|
||||||
|
@ -29,6 +26,10 @@
|
||||||
{% unless page.fullwidth == true %}
|
{% unless page.fullwidth == true %}
|
||||||
<div class="col-md-3" role="complementary">
|
<div class="col-md-3" role="complementary">
|
||||||
<nav class="bs-docs-sidebar hidden-print hidden-xs hidden-sm">
|
<nav class="bs-docs-sidebar hidden-print hidden-xs hidden-sm">
|
||||||
|
<form class="bs-docs-search">
|
||||||
|
<input type="search" class="form-control" id="search-input" placeholder="Search..." aria-label="Search for..." autocomplete="off">
|
||||||
|
</form>
|
||||||
|
|
||||||
<ul class="nav bs-docs-sidenav">
|
<ul class="nav bs-docs-sidenav">
|
||||||
{% if page.slug == "getting-started" %}
|
{% if page.slug == "getting-started" %}
|
||||||
{% include nav/getting-started.html %}
|
{% include nav/getting-started.html %}
|
||||||
|
|
9
vendor/bootstrap/docs/_layouts/home.html
vendored
|
@ -1,17 +1,14 @@
|
||||||
<!DOCTYPE html>
|
<!doctype html>
|
||||||
<html lang="en">
|
<html lang="en">
|
||||||
<head>
|
<head>
|
||||||
<!-- Meta, title, CSS, favicons, etc. -->
|
|
||||||
{% include header.html %}
|
{% include header.html %}
|
||||||
</head>
|
</head>
|
||||||
<body class="bs-docs-home">
|
<body class="bs-docs-home">
|
||||||
<a id="skippy" class="sr-only sr-only-focusable" href="#content"><div class="container"><span class="skiplink-text">Skip to main content</span></div></a>
|
{% include skippy.html %}
|
||||||
<a href="http://blog.getbootstrap.com/2015/12/08/bootstrap-4-alpha-2/" class="v4-tease">Aww yeah, Bootstrap 4 is coming!</a>
|
{% include v4.html %}
|
||||||
|
|
||||||
<!-- Docs master nav -->
|
|
||||||
{% include nav/main.html %}
|
{% include nav/main.html %}
|
||||||
|
|
||||||
<!-- Page content of course! -->
|
|
||||||
{{ content }}
|
{{ content }}
|
||||||
|
|
||||||
{% include footer.html %}
|
{% include footer.html %}
|
||||||
|
|
2
vendor/bootstrap/docs/_plugins/bugify.rb
vendored
|
@ -15,7 +15,7 @@ module Jekyll
|
||||||
upstream_map.each do |key, data|
|
upstream_map.each do |key, data|
|
||||||
url = data.is_a?(Array) ? data[0] : data
|
url = data.is_a?(Array) ? data[0] : data
|
||||||
label = data.is_a?(Array) ? "#{data[1]} " : ""
|
label = data.is_a?(Array) ? "#{data[1]} " : ""
|
||||||
input = input.gsub(/#{key}#(\d+)/, "<a href=\"#{url}\\1\">#{label}#\\1</a>")
|
input = input.gsub(/#{key}#(\d+)/, "<a href=\"#{url}\\1#{key === 'Edge' ? '/' : ''}\">#{label}#\\1</a>")
|
||||||
end
|
end
|
||||||
|
|
||||||
return input
|
return input
|
||||||
|
|
14
vendor/bootstrap/docs/about.html
vendored
|
@ -12,8 +12,8 @@ lead: "Learn about the project's history, meet the maintaining teams, and find o
|
||||||
<h1 id="history" class="page-header">History</h1>
|
<h1 id="history" class="page-header">History</h1>
|
||||||
|
|
||||||
<p class="lead">Originally created by a designer and a developer at Twitter, Bootstrap has become one of the most popular front-end frameworks and open source projects in the world.</p>
|
<p class="lead">Originally created by a designer and a developer at Twitter, Bootstrap has become one of the most popular front-end frameworks and open source projects in the world.</p>
|
||||||
<p>Bootstrap was created at Twitter in mid-2010 by <a href="https://twitter.com/mdo">@mdo</a> and <a href="https://twitter.com/fat">@fat</a>. Prior to being an open-sourced framework, Bootstrap was known as <em>Twitter Blueprint</em>. A few months into development, Twitter held its <a href="https://blog.twitter.com/2010/hack-week">first Hack Week</a> and the project exploded as developers of all skill levels jumped in without any external guidance. It served as the style guide for internal tools development at the company for over a year before its public release, and continues to do so today.</p>
|
<p>Bootstrap was created at Twitter in mid-2010 by <a href="https://twitter.com/mdo">@mdo</a> and <a href="https://twitter.com/fat">@fat</a>. Prior to being an open-sourced framework, Bootstrap was known as <em>Twitter Blueprint</em>. A few months into development, Twitter held its <a href="https://blog.twitter.com/engineering/en_us/a/2010/hack-week.html">first Hack Week</a> and the project exploded as developers of all skill levels jumped in without any external guidance. It served as the style guide for internal tools development at the company for over a year before its public release, and continues to do so today.</p>
|
||||||
<p>Originally <a href="https://blog.twitter.com/2011/bootstrap-twitter">released</a> on <a href="https://twitter.com/mdo/statuses/104620039650557952"><time datetime="2011-08-19 11:25">Friday, August 19, 2011</time></a>, we've since had over <a href="https://github.com/twbs/bootstrap/releases">twenty releases</a>, including two major rewrites with v2 and v3. With Bootstrap 2, we added responsive functionality to the entire framework as an optional stylesheet. Building on that with Bootstrap 3, we rewrote the library once more to make it responsive by default with a mobile first approach.</p>
|
<p>Originally <a href="https://blog.twitter.com/developer/en_us/a/2011/bootstrap-twitter.html">released</a> on <time datetime="2011-08-19 11:25">Friday, August 19, 2011</time>, we've since had over <a href="https://github.com/twbs/bootstrap/releases">twenty releases</a>, including two major rewrites with v2 and v3. With Bootstrap 2, we added responsive functionality to the entire framework as an optional stylesheet. Building on that with Bootstrap 3, we rewrote the library once more to make it responsive by default with a mobile first approach.</p>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
@ -26,11 +26,10 @@ lead: "Learn about the project's history, meet the maintaining teams, and find o
|
||||||
|
|
||||||
<h2 id="team-core">Core team</h2>
|
<h2 id="team-core">Core team</h2>
|
||||||
<div class="list-group bs-team">
|
<div class="list-group bs-team">
|
||||||
{% for member in site.data.core-team %}
|
{% for member in site.data.team %}
|
||||||
<div class="list-group-item">
|
<div class="list-group-item">
|
||||||
<iframe class="github-btn" src="https://ghbtns.com/github-btn.html?user={{ member.user }}&type=follow"></iframe>
|
|
||||||
<a class="team-member" href="https://github.com/{{ member.user }}">
|
<a class="team-member" href="https://github.com/{{ member.user }}">
|
||||||
<img src="https://secure.gravatar.com/avatar/{{ member.gravatar }}.jpg?s=32" alt="@{{ member.user }} avatar" width="32" height="32">
|
<img src="https://github.com/{{ member.user }}.png?s=64" alt="@{{ member.user }} avatar" width="32" height="32">
|
||||||
<strong>{{ member.name }}</strong> <small>@{{ member.user }}</small>
|
<strong>{{ member.name }}</strong> <small>@{{ member.user }}</small>
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
|
@ -42,9 +41,8 @@ lead: "Learn about the project's history, meet the maintaining teams, and find o
|
||||||
<div class="list-group bs-team">
|
<div class="list-group bs-team">
|
||||||
{% for member in site.data.sass-team %}
|
{% for member in site.data.sass-team %}
|
||||||
<div class="list-group-item">
|
<div class="list-group-item">
|
||||||
<iframe class="github-btn" src="https://ghbtns.com/github-btn.html?user={{ member.user }}&type=follow"></iframe>
|
|
||||||
<a class="team-member" href="https://github.com/{{ member.user }}">
|
<a class="team-member" href="https://github.com/{{ member.user }}">
|
||||||
<img src="https://secure.gravatar.com/avatar/{{ member.gravatar }}.jpg?s=32" alt="@{{ member.user }} avatar" width="32" height="32">
|
<img src="https://github.com/{{ member.user }}.png?s=64" alt="@{{ member.user }} avatar" width="32" height="32">
|
||||||
<strong>{{ member.name }}</strong> <small>@{{ member.user }}</small>
|
<strong>{{ member.name }}</strong> <small>@{{ member.user }}</small>
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
|
@ -59,7 +57,7 @@ lead: "Learn about the project's history, meet the maintaining teams, and find o
|
||||||
<div class="bs-docs-section">
|
<div class="bs-docs-section">
|
||||||
<h1 id="brand" class="page-header">Brand guidelines</h1>
|
<h1 id="brand" class="page-header">Brand guidelines</h1>
|
||||||
|
|
||||||
<p class="lead">Have a need for Bootstrap's brand resources? Great! We have only a few guidelines we follow, and in turn ask you to follow as well. These guidelines were inspired by MailChimp's <a href="http://mailchimp.com/about/brand-assets/" target="_blank">Brand Assets</a>.</p>
|
<p class="lead">Have a need for Bootstrap's brand resources? Great! We have only a few guidelines we follow, and in turn ask you to follow as well. These guidelines were inspired by MailChimp's <a href="https://mailchimp.com/about/brand-assets/" rel="noopener" target="_blank">Brand Assets</a>.</p>
|
||||||
|
|
||||||
<h2>Mark and logo</h2>
|
<h2>Mark and logo</h2>
|
||||||
<p>Use either the Bootstrap mark (a capital <strong>B</strong>) or the standard logo (just <strong>Bootstrap</strong>). It should always appear in Helvetica Neue Bold. <strong>Do not use the Twitter bird</strong> in association with Bootstrap.</p>
|
<p>Use either the Bootstrap mark (a capital <strong>B</strong>) or the standard logo (just <strong>Bootstrap</strong>). It should always appear in Helvetica Neue Bold. <strong>Do not use the Twitter bird</strong> in association with Bootstrap.</p>
|
||||||
|
|
|
@ -1,20 +1,6 @@
|
||||||
<?xml version="1.0" encoding="utf-8"?>
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 180 612 612">
|
||||||
<!-- Generator: Adobe Illustrator 17.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
<g fill="#FFF">
|
||||||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
<path d="M510 186c25.5 0 49.6 10 67.8 28.2S606 256.5 606 282v408c0 25.5-10 49.6-28.2 67.8S535.5 786 510 786H102c-25.5 0-49.6-10-67.8-28.2S6 715.5 6 690V282c0-25.5 10-49.6 28.2-67.8S76.5 186 102 186h408m0-6H102C45.9 180 0 225.9 0 282v408c0 56.1 45.9 102 102 102h408c56.1 0 102-45.9 102-102V282c0-56.1-45.9-102-102-102z"/>
|
||||||
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
|
<path d="M166.3 313h173.5c32 0 57.7 7.3 77 22s29 36.8 29 66.5c0 18-4.4 33.4-13.2 46.2-8.8 12.8-21.4 22.8-37.8 29.8v1c22 4.7 38.7 15.1 50 31.2 11.3 16.2 17 36.4 17 60.8 0 14-2.5 27.1-7.5 39.2-5 12.2-12.8 22.7-23.5 31.5s-24.3 15.8-41 21-36.5 7.8-59.5 7.8h-164V313zm62.5 149.5h102c15 0 27.5-4.2 37.5-12.8s15-20.8 15-36.8c0-18-4.5-30.7-13.5-38s-22-11-39-11h-102v98.6zm0 156.5h110.5c19 0 33.8-4.9 44.2-14.8 10.5-9.8 15.8-23.8 15.8-41.8 0-17.7-5.2-31.2-15.8-40.8s-25.2-14.2-44.2-14.2H228.8V619z"/>
|
||||||
viewBox="0 180 612 612" enable-background="new 0 180 612 612" xml:space="preserve">
|
|
||||||
<g id="outline" sodipodi:docname="twitter_bootstrap_logo.svg" inkscape:version="0.48.1 r9760" xmlns:svg="http://www.w3.org/2000/svg" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:cc="http://creativecommons.org/ns#" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape">
|
|
||||||
<g id="bg_1_">
|
|
||||||
<path fill="#FFFFFF" d="M510,186c25.5,0,49.6,10,67.8,28.2S606,256.5,606,282v408c0,25.5-10,49.6-28.2,67.8S535.5,786,510,786H102
|
|
||||||
c-25.5,0-49.6-10-67.8-28.2S6,715.5,6,690V282c0-25.5,10-49.6,28.2-67.8S76.5,186,102,186H510 M510,180H102
|
|
||||||
C45.9,180,0,225.9,0,282v408c0,56.1,45.9,102,102,102h408c56.1,0,102-45.9,102-102V282C612,225.9,566.1,180,510,180L510,180z"/>
|
|
||||||
</g>
|
</g>
|
||||||
<g id="B_2_" enable-background="new ">
|
|
||||||
<path fill="#FFFFFF" d="M166.3,313h173.5c32,0,57.7,7.3,77,22s29,36.8,29,66.5c0,18-4.4,33.4-13.2,46.2
|
|
||||||
c-8.8,12.8-21.4,22.8-37.8,29.8v1c22,4.7,38.7,15.1,50,31.2c11.3,16.2,17,36.4,17,60.8c0,14-2.5,27.1-7.5,39.2
|
|
||||||
c-5,12.2-12.8,22.7-23.5,31.5s-24.3,15.8-41,21s-36.5,7.8-59.5,7.8h-164L166.3,313L166.3,313z M228.8,462.5h102
|
|
||||||
c15,0,27.5-4.2,37.5-12.8s15-20.8,15-36.8c0-18-4.5-30.7-13.5-38s-22-11-39-11h-102L228.8,462.5L228.8,462.5z M228.8,619h110.5
|
|
||||||
c19,0,33.8-4.9,44.2-14.8c10.5-9.8,15.8-23.8,15.8-41.8c0-17.7-5.2-31.2-15.8-40.8s-25.2-14.2-44.2-14.2H228.8V619z"/>
|
|
||||||
</g>
|
|
||||||
</g>
|
|
||||||
</svg>
|
</svg>
|
||||||
|
|
Before Width: | Height: | Size: 1.8 KiB After Width: | Height: | Size: 918 B |
|
@ -1,18 +1,6 @@
|
||||||
<?xml version="1.0" encoding="utf-8"?>
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 180 612 612">
|
||||||
<!-- Generator: Adobe Illustrator 17.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
<g fill="#FFF">
|
||||||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
<path d="M383.5 521.8c-10.5-9.5-25.2-14.2-44.2-14.2H228.8V619h110.5c19 0 33.8-4.9 44.2-14.8 10.5-9.8 15.8-23.8 15.8-41.8-.1-17.6-5.3-31.2-15.8-40.6zm-15.3-72c10-8.5 15-20.8 15-36.8 0-18-4.5-30.7-13.5-38s-22-11-39-11h-102v98.5h102c15 0 27.5-4.3 37.5-12.7z"/>
|
||||||
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
|
<path d="M510 180H102C45.9 180 0 225.9 0 282v408c0 56.1 45.9 102 102 102h408c56.1 0 102-45.9 102-102V282c0-56.1-45.9-102-102-102zm-55.8 429.8c-5 12.2-12.8 22.7-23.5 31.5s-24.3 15.8-41 21-36.5 7.8-59.5 7.8h-164V313h173.5c32 0 57.7 7.3 77 22s29 36.8 29 66.5c0 18-4.4 33.4-13.2 46.2-8.8 12.8-21.4 22.8-37.8 29.8v1c22 4.7 38.7 15.1 50 31.2 11.3 16.2 17 36.4 17 60.8 0 14-2.5 27.1-7.5 39.3z"/>
|
||||||
viewBox="0 180 612 612" enable-background="new 0 180 612 612" xml:space="preserve">
|
|
||||||
<g id="punchout" sodipodi:docname="twitter_bootstrap_logo.svg" inkscape:version="0.48.1 r9760" xmlns:svg="http://www.w3.org/2000/svg" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:cc="http://creativecommons.org/ns#" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape">
|
|
||||||
<g>
|
|
||||||
<path fill="#FFFFFF" d="M383.5,521.8c-10.5-9.5-25.2-14.2-44.2-14.2H228.8V619h110.5c19,0,33.8-4.9,44.2-14.8
|
|
||||||
c10.5-9.8,15.8-23.8,15.8-41.8C399.2,544.8,394,531.2,383.5,521.8z"/>
|
|
||||||
<path fill="#FFFFFF" d="M368.2,449.8c10-8.5,15-20.8,15-36.8c0-18-4.5-30.7-13.5-38s-22-11-39-11h-102v98.5h102
|
|
||||||
C345.7,462.5,358.2,458.2,368.2,449.8z"/>
|
|
||||||
<path fill="#FFFFFF" d="M510,180H102C45.9,180,0,225.9,0,282v408c0,56.1,45.9,102,102,102h408c56.1,0,102-45.9,102-102V282
|
|
||||||
C612,225.9,566.1,180,510,180z M454.2,609.8c-5,12.2-12.8,22.7-23.5,31.5s-24.3,15.8-41,21s-36.5,7.8-59.5,7.8h-164V313h173.5
|
|
||||||
c32,0,57.7,7.3,77,22s29,36.8,29,66.5c0,18-4.4,33.4-13.2,46.2c-8.8,12.8-21.4,22.8-37.8,29.8v1c22,4.7,38.7,15.1,50,31.2
|
|
||||||
c11.3,16.2,17,36.4,17,60.8C461.7,584.5,459.2,597.6,454.2,609.8z"/>
|
|
||||||
</g>
|
</g>
|
||||||
</g>
|
|
||||||
</svg>
|
</svg>
|
||||||
|
|
Before Width: | Height: | Size: 1.6 KiB After Width: | Height: | Size: 752 B |
|
@ -1,17 +1,4 @@
|
||||||
<?xml version="1.0" encoding="utf-8"?>
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 612 612">
|
||||||
<!-- Generator: Adobe Illustrator 17.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
<path fill="#563D7C" d="M612 510c0 56.1-45.9 102-102 102H102C45.9 612 0 566.1 0 510V102C0 45.9 45.9 0 102 0h408c56.1 0 102 45.9 102 102v408z"/>
|
||||||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
<path fill="#FFF" d="M166.3 133h173.5c32 0 57.7 7.3 77 22s29 36.8 29 66.5c0 18-4.4 33.4-13.2 46.2-8.8 12.8-21.4 22.8-37.8 29.8v1c22 4.7 38.7 15.1 50 31.2 11.3 16.2 17 36.4 17 60.8 0 14-2.5 27.1-7.5 39.2-5 12.2-12.8 22.7-23.5 31.5s-24.3 15.8-41 21-36.5 7.8-59.5 7.8h-164V133zm62.5 149.5h102c15 0 27.5-4.2 37.5-12.8s15-20.8 15-36.8c0-18-4.5-30.7-13.5-38s-22-11-39-11h-102v98.6zm0 156.5h110.5c19 0 33.8-4.9 44.2-14.8 10.5-9.8 15.8-23.8 15.8-41.8 0-17.7-5.2-31.2-15.8-40.8s-25.2-14.2-44.2-14.2H228.8V439z"/>
|
||||||
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
|
|
||||||
viewBox="0 0 612 612" enable-background="new 0 0 612 612" xml:space="preserve">
|
|
||||||
<g id="solid" sodipodi:docname="twitter_bootstrap_logo.svg" inkscape:version="0.48.1 r9760" xmlns:svg="http://www.w3.org/2000/svg" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:cc="http://creativecommons.org/ns#" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape">
|
|
||||||
<path id="bg" fill="#563D7C" d="M612,510c0,56.1-45.9,102-102,102H102C45.9,612,0,566.1,0,510V102C0,45.9,45.9,0,102,0h408
|
|
||||||
c56.1,0,102,45.9,102,102V510z"/>
|
|
||||||
<g id="B" enable-background="new ">
|
|
||||||
<path fill="#FFFFFF" d="M166.3,133h173.5c32,0,57.7,7.3,77,22s29,36.8,29,66.5c0,18-4.4,33.4-13.2,46.2
|
|
||||||
c-8.8,12.8-21.4,22.8-37.8,29.8v1c22,4.7,38.7,15.1,50,31.2c11.3,16.2,17,36.4,17,60.8c0,14-2.5,27.1-7.5,39.2
|
|
||||||
c-5,12.2-12.8,22.7-23.5,31.5s-24.3,15.8-41,21s-36.5,7.8-59.5,7.8h-164L166.3,133L166.3,133z M228.8,282.5h102
|
|
||||||
c15,0,27.5-4.2,37.5-12.8s15-20.8,15-36.8c0-18-4.5-30.7-13.5-38s-22-11-39-11h-102L228.8,282.5L228.8,282.5z M228.8,439h110.5
|
|
||||||
c19,0,33.8-4.9,44.2-14.8c10.5-9.8,15.8-23.8,15.8-41.8c0-17.7-5.2-31.2-15.8-40.8s-25.2-14.2-44.2-14.2H228.8V439z"/>
|
|
||||||
</g>
|
|
||||||
</g>
|
|
||||||
</svg>
|
</svg>
|
||||||
|
|
Before Width: | Height: | Size: 1.6 KiB After Width: | Height: | Size: 722 B |
BIN
vendor/bootstrap/docs/assets/css/docs.css.map
vendored
Normal file
14
vendor/bootstrap/docs/assets/css/docs.min.css
vendored
BIN
vendor/bootstrap/docs/assets/css/docs.min.css.map
vendored
|
@ -1,13 +1,14 @@
|
||||||
/*!
|
/*!
|
||||||
* IE10 viewport hack for Surface/desktop Windows 8 bug
|
* IE10 viewport hack for Surface/desktop Windows 8 bug
|
||||||
* Copyright 2014-2015 Twitter, Inc.
|
* Copyright 2014-2019 Twitter, Inc.
|
||||||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
||||||
*/
|
*/
|
||||||
|
@-ms-viewport {
|
||||||
/*
|
width: device-width;
|
||||||
* See the Getting Started docs for more information:
|
}
|
||||||
* http://getbootstrap.com/getting-started/#support-ie10-width
|
@-o-viewport {
|
||||||
*/
|
width: device-width;
|
||||||
@-ms-viewport { width: device-width; }
|
}
|
||||||
@-o-viewport { width: device-width; }
|
@viewport {
|
||||||
@viewport { width: device-width; }
|
width: device-width;
|
||||||
|
}
|
||||||
|
|
|
@ -1,66 +0,0 @@
|
||||||
.hll { background-color: #ffffcc }
|
|
||||||
/*{ background: #f0f3f3; }*/
|
|
||||||
.c { color: #999; } /* Comment */
|
|
||||||
.err { color: #AA0000; background-color: #FFAAAA } /* Error */
|
|
||||||
.k { color: #006699; } /* Keyword */
|
|
||||||
.o { color: #555555 } /* Operator */
|
|
||||||
.cm { color: #999; } /* Comment.Multiline */ /* Edited to remove italics and make into comment */
|
|
||||||
.cp { color: #009999 } /* Comment.Preproc */
|
|
||||||
.c1 { color: #999; } /* Comment.Single */
|
|
||||||
.cs { color: #999; } /* Comment.Special */
|
|
||||||
.gd { background-color: #FFCCCC; border: 1px solid #CC0000 } /* Generic.Deleted */
|
|
||||||
.ge { font-style: italic } /* Generic.Emph */
|
|
||||||
.gr { color: #FF0000 } /* Generic.Error */
|
|
||||||
.gh { color: #003300; } /* Generic.Heading */
|
|
||||||
.gi { background-color: #CCFFCC; border: 1px solid #00CC00 } /* Generic.Inserted */
|
|
||||||
.go { color: #AAAAAA } /* Generic.Output */
|
|
||||||
.gp { color: #000099; } /* Generic.Prompt */
|
|
||||||
.gs { } /* Generic.Strong */
|
|
||||||
.gu { color: #003300; } /* Generic.Subheading */
|
|
||||||
.gt { color: #99CC66 } /* Generic.Traceback */
|
|
||||||
.kc { color: #006699; } /* Keyword.Constant */
|
|
||||||
.kd { color: #006699; } /* Keyword.Declaration */
|
|
||||||
.kn { color: #006699; } /* Keyword.Namespace */
|
|
||||||
.kp { color: #006699 } /* Keyword.Pseudo */
|
|
||||||
.kr { color: #006699; } /* Keyword.Reserved */
|
|
||||||
.kt { color: #007788; } /* Keyword.Type */
|
|
||||||
.m { color: #FF6600 } /* Literal.Number */
|
|
||||||
.s { color: #d44950 } /* Literal.String */
|
|
||||||
.na { color: #4f9fcf } /* Name.Attribute */
|
|
||||||
.nb { color: #336666 } /* Name.Builtin */
|
|
||||||
.nc { color: #00AA88; } /* Name.Class */
|
|
||||||
.no { color: #336600 } /* Name.Constant */
|
|
||||||
.nd { color: #9999FF } /* Name.Decorator */
|
|
||||||
.ni { color: #999999; } /* Name.Entity */
|
|
||||||
.ne { color: #CC0000; } /* Name.Exception */
|
|
||||||
.nf { color: #CC00FF } /* Name.Function */
|
|
||||||
.nl { color: #9999FF } /* Name.Label */
|
|
||||||
.nn { color: #00CCFF; } /* Name.Namespace */
|
|
||||||
.nt { color: #2f6f9f; } /* Name.Tag */
|
|
||||||
.nv { color: #003333 } /* Name.Variable */
|
|
||||||
.ow { color: #000000; } /* Operator.Word */
|
|
||||||
.w { color: #bbbbbb } /* Text.Whitespace */
|
|
||||||
.mf { color: #FF6600 } /* Literal.Number.Float */
|
|
||||||
.mh { color: #FF6600 } /* Literal.Number.Hex */
|
|
||||||
.mi { color: #FF6600 } /* Literal.Number.Integer */
|
|
||||||
.mo { color: #FF6600 } /* Literal.Number.Oct */
|
|
||||||
.sb { color: #CC3300 } /* Literal.String.Backtick */
|
|
||||||
.sc { color: #CC3300 } /* Literal.String.Char */
|
|
||||||
.sd { color: #CC3300; font-style: italic } /* Literal.String.Doc */
|
|
||||||
.s2 { color: #CC3300 } /* Literal.String.Double */
|
|
||||||
.se { color: #CC3300; } /* Literal.String.Escape */
|
|
||||||
.sh { color: #CC3300 } /* Literal.String.Heredoc */
|
|
||||||
.si { color: #AA0000 } /* Literal.String.Interpol */
|
|
||||||
.sx { color: #CC3300 } /* Literal.String.Other */
|
|
||||||
.sr { color: #33AAAA } /* Literal.String.Regex */
|
|
||||||
.s1 { color: #CC3300 } /* Literal.String.Single */
|
|
||||||
.ss { color: #FFCC33 } /* Literal.String.Symbol */
|
|
||||||
.bp { color: #336666 } /* Name.Builtin.Pseudo */
|
|
||||||
.vc { color: #003333 } /* Name.Variable.Class */
|
|
||||||
.vg { color: #003333 } /* Name.Variable.Global */
|
|
||||||
.vi { color: #003333 } /* Name.Variable.Instance */
|
|
||||||
.il { color: #FF6600 } /* Literal.Number.Integer.Long */
|
|
||||||
|
|
||||||
.css .o,
|
|
||||||
.css .o + .nt,
|
|
||||||
.css .nt + .nt { color: #999; }
|
|
BIN
vendor/bootstrap/docs/assets/flash/ZeroClipboard.swf
vendored
BIN
vendor/bootstrap/docs/assets/img/bs-themes.png
vendored
Normal file
After Width: | Height: | Size: 174 KiB |
BIN
vendor/bootstrap/docs/assets/img/devices.png
vendored
Before Width: | Height: | Size: 6.5 KiB After Width: | Height: | Size: 3.2 KiB |
BIN
vendor/bootstrap/docs/assets/img/expo-lyft.jpg
vendored
Before Width: | Height: | Size: 156 KiB After Width: | Height: | Size: 156 KiB |
BIN
vendor/bootstrap/docs/assets/img/expo-newsweek.jpg
vendored
Before Width: | Height: | Size: 197 KiB After Width: | Height: | Size: 197 KiB |
BIN
vendor/bootstrap/docs/assets/img/expo-riot.jpg
vendored
Before Width: | Height: | Size: 158 KiB |
BIN
vendor/bootstrap/docs/assets/img/expo-vogue.jpg
vendored
Before Width: | Height: | Size: 194 KiB After Width: | Height: | Size: 194 KiB |
93
vendor/bootstrap/docs/assets/js/customize.min.js
vendored
34
vendor/bootstrap/docs/assets/js/docs.min.js
vendored
|
@ -2,7 +2,7 @@
|
||||||
// IT'S JUST JUNK FOR OUR DOCS!
|
// IT'S JUST JUNK FOR OUR DOCS!
|
||||||
// ++++++++++++++++++++++++++++++++++++++++++
|
// ++++++++++++++++++++++++++++++++++++++++++
|
||||||
/*!
|
/*!
|
||||||
* Copyright 2014-2015 Twitter, Inc.
|
* Copyright 2014-2019 Twitter, Inc.
|
||||||
*
|
*
|
||||||
* Licensed under the Creative Commons Attribution 3.0 Unported License. For
|
* Licensed under the Creative Commons Attribution 3.0 Unported License. For
|
||||||
* details, see https://creativecommons.org/licenses/by/3.0/.
|
* details, see https://creativecommons.org/licenses/by/3.0/.
|
||||||
|
|
|
@ -1,11 +1,11 @@
|
||||||
/*!
|
/*!
|
||||||
* IE10 viewport hack for Surface/desktop Windows 8 bug
|
* IE10 viewport hack for Surface/desktop Windows 8 bug
|
||||||
* Copyright 2014-2015 Twitter, Inc.
|
* Copyright 2014-2019 Twitter, Inc.
|
||||||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
||||||
*/
|
*/
|
||||||
|
|
||||||
// See the Getting Started docs for more information:
|
// See the Getting Started docs for more information:
|
||||||
// http://getbootstrap.com/getting-started/#support-ie10-width
|
// https://getbootstrap.com/docs/3.4/getting-started/#support-ie10-width
|
||||||
|
|
||||||
(function () {
|
(function () {
|
||||||
'use strict';
|
'use strict';
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
// IT'S JUST JUNK FOR OUR DOCS!
|
// IT'S JUST JUNK FOR OUR DOCS!
|
||||||
// ++++++++++++++++++++++++++++++++++++++++++
|
// ++++++++++++++++++++++++++++++++++++++++++
|
||||||
/*!
|
/*!
|
||||||
* Copyright 2011-2015 Twitter, Inc.
|
* Copyright 2011-2019 Twitter, Inc.
|
||||||
*
|
*
|
||||||
* Licensed under the Creative Commons Attribution 3.0 Unported License. For
|
* Licensed under the Creative Commons Attribution 3.0 Unported License. For
|
||||||
* details, see https://creativecommons.org/licenses/by/3.0/.
|
* details, see https://creativecommons.org/licenses/by/3.0/.
|
||||||
|
|