Move to bootstrap 3.3.6, with a simpler way to maintain our customized version
in the future (described in bootstrap/README-DATATRACKER.rst). Commit ready for merge. - Legacy-Id: 10532
This commit is contained in:
parent
808196bc0c
commit
b1901d3066
5
bootstrap/CHANGELOG.md
Executable file
5
bootstrap/CHANGELOG.md
Executable file
|
@ -0,0 +1,5 @@
|
|||
Bootstrap uses [GitHub's Releases feature](https://github.com/blog/1547-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.
|
||||
|
||||
Release announcement posts on [the official Bootstrap blog](http://blog.getbootstrap.com) contain summaries of the most noteworthy changes made in each release.
|
|
@ -18,8 +18,8 @@ the preferred channel for [bug reports](#bug-reports), [features requests](#feat
|
|||
and [submitting pull requests](#pull-requests), but please respect the following
|
||||
restrictions:
|
||||
|
||||
* Please **do not** use the issue tracker for personal support requests. Stack
|
||||
Overflow ([`twitter-bootstrap-3`](http://stackoverflow.com/questions/tagged/twitter-bootstrap-3) tag) or [IRC](README.md#community) are better places to get help.
|
||||
* Please **do not** use the issue tracker for personal support requests. Stack
|
||||
Overflow ([`twitter-bootstrap-3`](https://stackoverflow.com/questions/tagged/twitter-bootstrap-3) tag), [Slack](https://bootstrap-slack.herokuapp.com/) or [IRC](README.md#community) are better places to get help.
|
||||
|
||||
* Please **do not** derail or troll issues. Keep the discussion on topic and
|
||||
respect the opinions of others.
|
||||
|
@ -28,6 +28,8 @@ restrictions:
|
|||
[`Normalize`](https://github.com/necolas/normalize.css) (open them in
|
||||
their respective repositories).
|
||||
|
||||
* Please **do not** open issues regarding the official themes offered on <http://themes.getbootstrap.com/>. Instead, please email any questions or feedback regarding those themes to `themes AT getbootstrap DOT com`.
|
||||
|
||||
|
||||
## Issues and labels
|
||||
|
||||
|
@ -66,7 +68,7 @@ Guidelines for bug reports:
|
|||
latest `master` or development branch in the repository.
|
||||
|
||||
3. **Isolate the problem** — ideally create a [reduced test
|
||||
case](http://css-tricks.com/6263-reduced-test-cases/) and a live example.
|
||||
case](https://css-tricks.com/reduced-test-cases/) and a live example.
|
||||
[This JS Bin](http://jsbin.com/lefey/1/edit?html,output) is a helpful template.
|
||||
|
||||
|
||||
|
@ -105,7 +107,7 @@ When feasible, we aim to report such upstream bugs to the relevant browser vendo
|
|||
| Mozilla | Firefox | Gecko | https://bugzilla.mozilla.org/enter_bug.cgi | "Core" is normally the right product option to choose. |
|
||||
| Apple | Safari | WebKit | https://bugs.webkit.org/enter_bug.cgi?product=WebKit <br> https://bugreport.apple.com | In Apple's bug reporter, choose "Safari" as the product. |
|
||||
| Google, Opera | Chrome, Chromium, Opera v15+ | Blink | https://code.google.com/p/chromium/issues/list | Click the "New issue" button. |
|
||||
| Microsoft | Internet Explorer | Trident | https://connect.microsoft.com/IE/feedback/LoadSubmitFeedbackForm | |
|
||||
| Microsoft | Internet Explorer / Edge | Trident/EdgeHTML | https://connect.microsoft.com/IE/feedback/LoadSubmitFeedbackForm | |
|
||||
|
||||
### Issues bots
|
||||
|
||||
|
@ -149,7 +151,7 @@ documentation source files and is managed separately by the Bootstrap Core Team.
|
|||
Adhering to the following process is the best way to get your work
|
||||
included in the project:
|
||||
|
||||
1. [Fork](http://help.github.com/fork-a-repo/) the project, clone your fork,
|
||||
1. [Fork](https://help.github.com/fork-a-repo/) the project, clone your fork,
|
||||
and configure the remotes:
|
||||
|
||||
```bash
|
||||
|
|
|
@ -231,6 +231,7 @@ module.exports = function (grunt) {
|
|||
// and then simplify the fix for https://github.com/twbs/bootstrap/issues/14837 accordingly
|
||||
compatibility: 'ie8',
|
||||
keepSpecialComments: '*',
|
||||
sourceMap: true,
|
||||
advanced: false
|
||||
},
|
||||
minifyCore: {
|
||||
|
@ -243,6 +244,7 @@ module.exports = function (grunt) {
|
|||
},
|
||||
docs: {
|
||||
src: [
|
||||
'docs/assets/css/ie10-viewport-bug-workaround.css',
|
||||
'docs/assets/css/src/pygments-manni.css',
|
||||
'docs/assets/css/src/docs.css'
|
||||
],
|
||||
|
@ -348,7 +350,7 @@ module.exports = function (grunt) {
|
|||
options: {
|
||||
ignore: [
|
||||
'Attribute "autocomplete" not allowed on element "button" at this point.',
|
||||
'Attribute "autocomplete" not allowed on element "input" at this point.',
|
||||
'Attribute "autocomplete" is only allowed when the input type is "color", "date", "datetime", "datetime-local", "email", "month", "number", "password", "range", "search", "tel", "text", "time", "url", or "week".',
|
||||
'Element "img" is missing required attribute "src".'
|
||||
]
|
||||
},
|
||||
|
|
|
@ -4,27 +4,19 @@ _______________________
|
|||
Content
|
||||
=======
|
||||
|
||||
The files in this directory are modified versions of bootstrap_. This is
|
||||
a cumbersome way to customize bootsrap, but as of the time of writing this
|
||||
(03 Apr 2015), there seems to be no provision for including modifications
|
||||
within the distributed build environment without either editing files in
|
||||
place, or copying and modifying parts of the build environment.
|
||||
The files in this directory are standard drop of the bootstrap sources (at the
|
||||
moment 3.3.6). All modifications are contained in less/ietf.less, which
|
||||
overrides variables defined in less/variables.less and adds a few additional
|
||||
styles that complement those defined in other less files (mostly, the various
|
||||
*-pass styles.)
|
||||
|
||||
Bootstrap 3.3.4 was added in [9374], see the changes with::
|
||||
When upgrading to a new version of bootstrap, make sure to add
|
||||
|
||||
$ svn diff -r 9374:9894 bootstrap/less/
|
||||
@import "ietf.less"
|
||||
|
||||
Bootstrap 3.3.5 was added in [9894] and [9895], see the changes since then with::
|
||||
after each import of less/variables.less. At the moment, the only two locations
|
||||
where this occurs are in less/theme.less and less/bootstrap.less.
|
||||
|
||||
$ svn diff -r 9895 bootstrap/less/
|
||||
|
||||
Modifications done::
|
||||
|
||||
less/variables.less # modified with our datatracker-specific changes
|
||||
less/buttons.less # added .btn-pass
|
||||
less/labels.less # added .label-pass
|
||||
less/panels.less # added .panel-pass
|
||||
less/mixins/forms.less # modified inline label background-color
|
||||
|
||||
Setup
|
||||
=====
|
||||
|
|
|
@ -1,36 +1,40 @@
|
|||
# [Bootstrap](http://getbootstrap.com)
|
||||
|
||||
[](https://bootstrap-slack.herokuapp.com)
|
||||

|
||||
[](https://www.npmjs.com/package/bootstrap)
|
||||
[](https://travis-ci.org/twbs/bootstrap)
|
||||
[](https://david-dm.org/twbs/bootstrap#info=devDependencies)
|
||||
[](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.
|
||||
|
||||
To get started, check out <http://getbootstrap.com>!
|
||||
|
||||
|
||||
## Table of contents
|
||||
|
||||
- [Quick start](#quick-start)
|
||||
- [Bugs and feature requests](#bugs-and-feature-requests)
|
||||
- [Documentation](#documentation)
|
||||
- [Contributing](#contributing)
|
||||
- [Community](#community)
|
||||
- [Versioning](#versioning)
|
||||
- [Creators](#creators)
|
||||
- [Copyright and license](#copyright-and-license)
|
||||
* [Quick start](#quick-start)
|
||||
* [Bugs and feature requests](#bugs-and-feature-requests)
|
||||
* [Documentation](#documentation)
|
||||
* [Contributing](#contributing)
|
||||
* [Community](#community)
|
||||
* [Versioning](#versioning)
|
||||
* [Creators](#creators)
|
||||
* [Copyright and license](#copyright-and-license)
|
||||
|
||||
|
||||
## Quick start
|
||||
|
||||
Several quick start options are available:
|
||||
|
||||
- [Download the latest release](https://github.com/twbs/bootstrap/archive/v3.3.5.zip).
|
||||
- Clone the repo: `git clone https://github.com/twbs/bootstrap.git`.
|
||||
- Install with [Bower](http://bower.io): `bower install bootstrap`.
|
||||
- Install with [npm](https://www.npmjs.com): `npm install bootstrap`.
|
||||
- Install with [Meteor](https://www.meteor.com): `meteor add twbs:bootstrap`.
|
||||
- Install with [Composer](https://getcomposer.org): `composer require twbs/bootstrap`.
|
||||
* [Download the latest release](https://github.com/twbs/bootstrap/archive/v3.3.6.zip).
|
||||
* Clone the repo: `git clone https://github.com/twbs/bootstrap.git`.
|
||||
* Install with [Bower](http://bower.io): `bower install bootstrap`.
|
||||
* Install with [npm](https://www.npmjs.com): `npm install bootstrap`.
|
||||
* Install with [Meteor](https://www.meteor.com): `meteor add 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.
|
||||
|
||||
|
@ -44,9 +48,11 @@ bootstrap/
|
|||
│ ├── bootstrap.css
|
||||
│ ├── bootstrap.css.map
|
||||
│ ├── bootstrap.min.css
|
||||
│ ├── bootstrap.min.css.map
|
||||
│ ├── bootstrap-theme.css
|
||||
│ ├── bootstrap-theme.css.map
|
||||
│ └── bootstrap-theme.min.css
|
||||
│ ├── bootstrap-theme.min.css
|
||||
│ └── bootstrap-theme.min.css.map
|
||||
├── js/
|
||||
│ ├── bootstrap.js
|
||||
│ └── bootstrap.min.js
|
||||
|
@ -61,7 +67,6 @@ bootstrap/
|
|||
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.
|
||||
|
||||
|
||||
|
||||
## Bugs and feature requests
|
||||
|
||||
Have a bug or a feature request? Please first read the [issue guidelines](https://github.com/twbs/bootstrap/blob/master/CONTRIBUTING.md#using-the-issue-tracker) and search for existing and closed issues. If your problem or idea is not addressed yet, [please open a new issue](https://github.com/twbs/bootstrap/issues/new).
|
||||
|
@ -73,11 +78,11 @@ Bootstrap's documentation, included in this repo in the root directory, is built
|
|||
|
||||
### Running documentation locally
|
||||
|
||||
1. If necessary, [install Jekyll](http://jekyllrb.com/docs/installation) (requires v2.5.x).
|
||||
- **Windows users:** Read [this unofficial guide](http://jekyll-windows.juthilo.com/) to get Jekyll up and running without problems.
|
||||
1. If necessary, [install Jekyll](http://jekyllrb.com/docs/installation) (requires v3.0.x).
|
||||
**Note for Windows users:** Read [this unofficial guide](http://jekyll-windows.juthilo.com/) to get Jekyll up and running without problems.
|
||||
2. Install the Ruby-based syntax highlighter, [Rouge](https://github.com/jneen/rouge), with `gem install rouge`.
|
||||
3. From the root `/bootstrap` directory, run `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/).
|
||||
|
||||
|
@ -88,7 +93,6 @@ Documentation for v2.3.2 has been made available for the time being at <http://g
|
|||
[Previous releases](https://github.com/twbs/bootstrap/releases) and their documentation are also available for download.
|
||||
|
||||
|
||||
|
||||
## Contributing
|
||||
|
||||
Please read through our [contributing guidelines](https://github.com/twbs/bootstrap/blob/master/CONTRIBUTING.md). Included are directions for opening issues, coding standards, and notes on development.
|
||||
|
@ -98,38 +102,36 @@ Moreover, if your pull request contains JavaScript patches or features, you must
|
|||
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>.
|
||||
|
||||
|
||||
|
||||
## Community
|
||||
|
||||
Get updates on Bootstrap's development and chat with the project maintainers and community members.
|
||||
|
||||
- Follow [@getbootstrap on Twitter](https://twitter.com/getbootstrap).
|
||||
- Read and subscribe to [The Official Bootstrap Blog](http://blog.getbootstrap.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.
|
||||
- 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.
|
||||
|
||||
* Follow [@getbootstrap on Twitter](https://twitter.com/getbootstrap).
|
||||
* Read and subscribe to [The Official Bootstrap Blog](http://blog.getbootstrap.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.
|
||||
* 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.
|
||||
|
||||
|
||||
## 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.
|
||||
|
||||
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.
|
||||
|
||||
|
||||
## Creators
|
||||
|
||||
**Mark Otto**
|
||||
|
||||
- <https://twitter.com/mdo>
|
||||
- <https://github.com/mdo>
|
||||
* <https://twitter.com/mdo>
|
||||
* <https://github.com/mdo>
|
||||
|
||||
**Jacob Thornton**
|
||||
|
||||
- <https://twitter.com/fat>
|
||||
- <https://github.com/fat>
|
||||
|
||||
* <https://twitter.com/fat>
|
||||
* <https://github.com/fat>
|
||||
|
||||
|
||||
## Copyright and license
|
||||
|
|
|
@ -14,19 +14,23 @@ url: http://getbootstrap.com
|
|||
encoding: UTF-8
|
||||
|
||||
# Custom vars
|
||||
current_version: 3.3.4
|
||||
current_version: 3.3.6
|
||||
repo: https://github.com/twbs/bootstrap
|
||||
sass_repo: https://github.com/twbs/bootstrap-sass
|
||||
|
||||
download:
|
||||
source: https://github.com/twbs/bootstrap/archive/v3.3.4.zip
|
||||
dist: https://github.com/twbs/bootstrap/releases/download/v3.3.4/bootstrap-3.3.4-dist.zip
|
||||
sass: https://github.com/twbs/bootstrap-sass/archive/v3.3.4.tar.gz
|
||||
source: https://github.com/twbs/bootstrap/archive/v3.3.6.zip
|
||||
dist: https://github.com/twbs/bootstrap/releases/download/v3.3.6/bootstrap-3.3.6-dist.zip
|
||||
sass: https://github.com/twbs/bootstrap-sass/archive/v3.3.6.tar.gz
|
||||
|
||||
blog: http://blog.getbootstrap.com
|
||||
expo: http://expo.getbootstrap.com
|
||||
|
||||
cdn:
|
||||
css: https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/css/bootstrap.min.css
|
||||
css_theme: https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/css/bootstrap-theme.min.css
|
||||
js: https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/js/bootstrap.min.js
|
||||
# See https://www.srihash.org for info on how to generate the hashes
|
||||
css: https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css
|
||||
css_hash: "sha512-dTfge/zgoMYpP7QbHy4gWMEGsbsdZeCXz7irItjcC3sPUFtf0kuFbDz/ixG7ArTxmDjLXDmezHubeNikyKGVyQ=="
|
||||
css_theme: https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap-theme.min.css
|
||||
css_theme_hash: "sha384-aUGj/X2zp5rLCbBxumKTCw2Z50WgIr1vs/PFN4praOTvYXWlVyh2UtNUU0KAUhAX"
|
||||
js: https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js
|
||||
js_hash: "sha512-K1qjQ+NcF2TYO/eI3M6v8EiNYZfA95pQumfvcVrTHtwQVDG+aHRqLi/ETn2uB+1JqwYqVG3LIvdm9lj6imS/pQ=="
|
||||
|
|
|
@ -29,6 +29,6 @@
|
|||
"test-infra"
|
||||
],
|
||||
"dependencies": {
|
||||
"jquery": ">= 1.9.1"
|
||||
"jquery": "1.9.1 - 2"
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,8 +1,97 @@
|
|||
/*!
|
||||
* Bootstrap v3.3.5 (http://getbootstrap.com)
|
||||
* Bootstrap v3.3.6 (http://getbootstrap.com)
|
||||
* Copyright 2011-2015 Twitter, Inc.
|
||||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
||||
*/
|
||||
.btn-pass {
|
||||
color: #fff;
|
||||
background-color: #76dc4c;
|
||||
border-color: #66d837;
|
||||
}
|
||||
.btn-pass:focus,
|
||||
.btn-pass.focus {
|
||||
color: #fff;
|
||||
background-color: #58cd28;
|
||||
border-color: #347817;
|
||||
}
|
||||
.btn-pass:hover {
|
||||
color: #fff;
|
||||
background-color: #58cd28;
|
||||
border-color: #4caf22;
|
||||
}
|
||||
.btn-pass:active,
|
||||
.btn-pass.active,
|
||||
.open > .dropdown-toggle.btn-pass {
|
||||
color: #fff;
|
||||
background-color: #58cd28;
|
||||
border-color: #4caf22;
|
||||
}
|
||||
.btn-pass:active:hover,
|
||||
.btn-pass.active:hover,
|
||||
.open > .dropdown-toggle.btn-pass:hover,
|
||||
.btn-pass:active:focus,
|
||||
.btn-pass.active:focus,
|
||||
.open > .dropdown-toggle.btn-pass:focus,
|
||||
.btn-pass:active.focus,
|
||||
.btn-pass.active.focus,
|
||||
.open > .dropdown-toggle.btn-pass.focus {
|
||||
color: #fff;
|
||||
background-color: #4caf22;
|
||||
border-color: #347817;
|
||||
}
|
||||
.btn-pass:active,
|
||||
.btn-pass.active,
|
||||
.open > .dropdown-toggle.btn-pass {
|
||||
background-image: none;
|
||||
}
|
||||
.btn-pass.disabled:hover,
|
||||
.btn-pass[disabled]:hover,
|
||||
fieldset[disabled] .btn-pass:hover,
|
||||
.btn-pass.disabled:focus,
|
||||
.btn-pass[disabled]:focus,
|
||||
fieldset[disabled] .btn-pass:focus,
|
||||
.btn-pass.disabled.focus,
|
||||
.btn-pass[disabled].focus,
|
||||
fieldset[disabled] .btn-pass.focus {
|
||||
background-color: #76dc4c;
|
||||
border-color: #66d837;
|
||||
}
|
||||
.btn-pass .badge {
|
||||
color: #76dc4c;
|
||||
background-color: #fff;
|
||||
}
|
||||
.label-pass {
|
||||
background-color: #76dc4c;
|
||||
}
|
||||
.label-pass[href]:hover,
|
||||
.label-pass[href]:focus {
|
||||
background-color: #58cd28;
|
||||
}
|
||||
.label-info {
|
||||
background-color: #f0c905;
|
||||
}
|
||||
.label-info[href]:hover,
|
||||
.label-info[href]:focus {
|
||||
background-color: #be9f04;
|
||||
}
|
||||
.panel-pass {
|
||||
border-color: #76dc4c;
|
||||
}
|
||||
.panel-pass > .panel-heading {
|
||||
color: #000;
|
||||
background-color: #b5f29c;
|
||||
border-color: #76dc4c;
|
||||
}
|
||||
.panel-pass > .panel-heading + .panel-collapse > .panel-body {
|
||||
border-top-color: #76dc4c;
|
||||
}
|
||||
.panel-pass > .panel-heading .badge {
|
||||
color: #b5f29c;
|
||||
background-color: #000;
|
||||
}
|
||||
.panel-pass > .panel-footer + .panel-collapse > .panel-body {
|
||||
border-bottom-color: #76dc4c;
|
||||
}
|
||||
.btn-default,
|
||||
.btn-primary,
|
||||
.btn-success,
|
||||
|
|
2
bootstrap/dist/css/bootstrap-theme.css.map
vendored
2
bootstrap/dist/css/bootstrap-theme.css.map
vendored
File diff suppressed because one or more lines are too long
5
bootstrap/dist/css/bootstrap-theme.min.css
vendored
5
bootstrap/dist/css/bootstrap-theme.min.css
vendored
File diff suppressed because one or more lines are too long
1
bootstrap/dist/css/bootstrap-theme.min.css.map
vendored
Executable file
1
bootstrap/dist/css/bootstrap-theme.min.css.map
vendored
Executable file
File diff suppressed because one or more lines are too long
|
@ -1,8 +1,97 @@
|
|||
/*!
|
||||
* Bootstrap v3.3.5 (http://getbootstrap.com)
|
||||
* Bootstrap v3.3.6 (http://getbootstrap.com)
|
||||
* Copyright 2011-2015 Twitter, Inc.
|
||||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
||||
*/
|
||||
.btn-pass {
|
||||
color: #fff;
|
||||
background-color: #76dc4c;
|
||||
border-color: #66d837;
|
||||
}
|
||||
.btn-pass:focus,
|
||||
.btn-pass.focus {
|
||||
color: #fff;
|
||||
background-color: #58cd28;
|
||||
border-color: #347817;
|
||||
}
|
||||
.btn-pass:hover {
|
||||
color: #fff;
|
||||
background-color: #58cd28;
|
||||
border-color: #4caf22;
|
||||
}
|
||||
.btn-pass:active,
|
||||
.btn-pass.active,
|
||||
.open > .dropdown-toggle.btn-pass {
|
||||
color: #fff;
|
||||
background-color: #58cd28;
|
||||
border-color: #4caf22;
|
||||
}
|
||||
.btn-pass:active:hover,
|
||||
.btn-pass.active:hover,
|
||||
.open > .dropdown-toggle.btn-pass:hover,
|
||||
.btn-pass:active:focus,
|
||||
.btn-pass.active:focus,
|
||||
.open > .dropdown-toggle.btn-pass:focus,
|
||||
.btn-pass:active.focus,
|
||||
.btn-pass.active.focus,
|
||||
.open > .dropdown-toggle.btn-pass.focus {
|
||||
color: #fff;
|
||||
background-color: #4caf22;
|
||||
border-color: #347817;
|
||||
}
|
||||
.btn-pass:active,
|
||||
.btn-pass.active,
|
||||
.open > .dropdown-toggle.btn-pass {
|
||||
background-image: none;
|
||||
}
|
||||
.btn-pass.disabled:hover,
|
||||
.btn-pass[disabled]:hover,
|
||||
fieldset[disabled] .btn-pass:hover,
|
||||
.btn-pass.disabled:focus,
|
||||
.btn-pass[disabled]:focus,
|
||||
fieldset[disabled] .btn-pass:focus,
|
||||
.btn-pass.disabled.focus,
|
||||
.btn-pass[disabled].focus,
|
||||
fieldset[disabled] .btn-pass.focus {
|
||||
background-color: #76dc4c;
|
||||
border-color: #66d837;
|
||||
}
|
||||
.btn-pass .badge {
|
||||
color: #76dc4c;
|
||||
background-color: #fff;
|
||||
}
|
||||
.label-pass {
|
||||
background-color: #76dc4c;
|
||||
}
|
||||
.label-pass[href]:hover,
|
||||
.label-pass[href]:focus {
|
||||
background-color: #58cd28;
|
||||
}
|
||||
.label-info {
|
||||
background-color: #f0c905;
|
||||
}
|
||||
.label-info[href]:hover,
|
||||
.label-info[href]:focus {
|
||||
background-color: #be9f04;
|
||||
}
|
||||
.panel-pass {
|
||||
border-color: #76dc4c;
|
||||
}
|
||||
.panel-pass > .panel-heading {
|
||||
color: #000;
|
||||
background-color: #b5f29c;
|
||||
border-color: #76dc4c;
|
||||
}
|
||||
.panel-pass > .panel-heading + .panel-collapse > .panel-body {
|
||||
border-top-color: #76dc4c;
|
||||
}
|
||||
.panel-pass > .panel-heading .badge {
|
||||
color: #b5f29c;
|
||||
background-color: #000;
|
||||
}
|
||||
.panel-pass > .panel-footer + .panel-collapse > .panel-body {
|
||||
border-bottom-color: #76dc4c;
|
||||
}
|
||||
/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */
|
||||
html {
|
||||
font-family: sans-serif;
|
||||
|
@ -279,10 +368,10 @@ th {
|
|||
-moz-osx-font-smoothing: grayscale;
|
||||
}
|
||||
.glyphicon-asterisk:before {
|
||||
content: "\2a";
|
||||
content: "\002a";
|
||||
}
|
||||
.glyphicon-plus:before {
|
||||
content: "\2b";
|
||||
content: "\002b";
|
||||
}
|
||||
.glyphicon-euro:before,
|
||||
.glyphicon-eur:before {
|
||||
|
@ -2582,6 +2671,10 @@ output {
|
|||
.form-control::-webkit-input-placeholder {
|
||||
color: #999;
|
||||
}
|
||||
.form-control::-ms-expand {
|
||||
background-color: transparent;
|
||||
border: 0;
|
||||
}
|
||||
.form-control[disabled],
|
||||
.form-control[readonly],
|
||||
fieldset[disabled] .form-control {
|
||||
|
@ -2819,7 +2912,6 @@ select[multiple].input-lg {
|
|||
.has-success.radio-inline label,
|
||||
.has-success.checkbox-inline label {
|
||||
color: #000;
|
||||
background-color: #b5f29c;
|
||||
}
|
||||
.has-success .form-control {
|
||||
border-color: #000;
|
||||
|
@ -2850,7 +2942,6 @@ select[multiple].input-lg {
|
|||
.has-warning.radio-inline label,
|
||||
.has-warning.checkbox-inline label {
|
||||
color: #050200;
|
||||
background-color: #f9c0a4;
|
||||
}
|
||||
.has-warning .form-control {
|
||||
border-color: #050200;
|
||||
|
@ -2881,7 +2972,6 @@ select[multiple].input-lg {
|
|||
.has-error.radio-inline label,
|
||||
.has-error.checkbox-inline label {
|
||||
color: #000;
|
||||
background-color: #ff6c5f;
|
||||
}
|
||||
.has-error .form-control {
|
||||
border-color: #000;
|
||||
|
@ -2991,7 +3081,7 @@ select[multiple].input-lg {
|
|||
}
|
||||
@media (min-width: 768px) {
|
||||
.form-horizontal .form-group-lg .control-label {
|
||||
padding-top: 14.333333px;
|
||||
padding-top: 11px;
|
||||
font-size: 17.83810673px;
|
||||
}
|
||||
}
|
||||
|
@ -3099,9 +3189,6 @@ fieldset[disabled] a.btn {
|
|||
.open > .dropdown-toggle.btn-default {
|
||||
background-image: none;
|
||||
}
|
||||
.btn-default.disabled,
|
||||
.btn-default[disabled],
|
||||
fieldset[disabled] .btn-default,
|
||||
.btn-default.disabled:hover,
|
||||
.btn-default[disabled]:hover,
|
||||
fieldset[disabled] .btn-default:hover,
|
||||
|
@ -3110,13 +3197,7 @@ fieldset[disabled] .btn-default:hover,
|
|||
fieldset[disabled] .btn-default:focus,
|
||||
.btn-default.disabled.focus,
|
||||
.btn-default[disabled].focus,
|
||||
fieldset[disabled] .btn-default.focus,
|
||||
.btn-default.disabled:active,
|
||||
.btn-default[disabled]:active,
|
||||
fieldset[disabled] .btn-default:active,
|
||||
.btn-default.disabled.active,
|
||||
.btn-default[disabled].active,
|
||||
fieldset[disabled] .btn-default.active {
|
||||
fieldset[disabled] .btn-default.focus {
|
||||
background-color: #fff;
|
||||
border-color: #ccc;
|
||||
}
|
||||
|
@ -3165,9 +3246,6 @@ fieldset[disabled] .btn-default.active {
|
|||
.open > .dropdown-toggle.btn-primary {
|
||||
background-image: none;
|
||||
}
|
||||
.btn-primary.disabled,
|
||||
.btn-primary[disabled],
|
||||
fieldset[disabled] .btn-primary,
|
||||
.btn-primary.disabled:hover,
|
||||
.btn-primary[disabled]:hover,
|
||||
fieldset[disabled] .btn-primary:hover,
|
||||
|
@ -3176,13 +3254,7 @@ fieldset[disabled] .btn-primary:hover,
|
|||
fieldset[disabled] .btn-primary:focus,
|
||||
.btn-primary.disabled.focus,
|
||||
.btn-primary[disabled].focus,
|
||||
fieldset[disabled] .btn-primary.focus,
|
||||
.btn-primary.disabled:active,
|
||||
.btn-primary[disabled]:active,
|
||||
fieldset[disabled] .btn-primary:active,
|
||||
.btn-primary.disabled.active,
|
||||
.btn-primary[disabled].active,
|
||||
fieldset[disabled] .btn-primary.active {
|
||||
fieldset[disabled] .btn-primary.focus {
|
||||
background-color: #6b5bad;
|
||||
border-color: #5f4f9f;
|
||||
}
|
||||
|
@ -3231,9 +3303,6 @@ fieldset[disabled] .btn-primary.active {
|
|||
.open > .dropdown-toggle.btn-success {
|
||||
background-image: none;
|
||||
}
|
||||
.btn-success.disabled,
|
||||
.btn-success[disabled],
|
||||
fieldset[disabled] .btn-success,
|
||||
.btn-success.disabled:hover,
|
||||
.btn-success[disabled]:hover,
|
||||
fieldset[disabled] .btn-success:hover,
|
||||
|
@ -3242,13 +3311,7 @@ fieldset[disabled] .btn-success:hover,
|
|||
fieldset[disabled] .btn-success:focus,
|
||||
.btn-success.disabled.focus,
|
||||
.btn-success[disabled].focus,
|
||||
fieldset[disabled] .btn-success.focus,
|
||||
.btn-success.disabled:active,
|
||||
.btn-success[disabled]:active,
|
||||
fieldset[disabled] .btn-success:active,
|
||||
.btn-success.disabled.active,
|
||||
.btn-success[disabled].active,
|
||||
fieldset[disabled] .btn-success.active {
|
||||
fieldset[disabled] .btn-success.focus {
|
||||
background-color: #3abf03;
|
||||
border-color: #32a602;
|
||||
}
|
||||
|
@ -3256,72 +3319,6 @@ fieldset[disabled] .btn-success.active {
|
|||
color: #3abf03;
|
||||
background-color: #fff;
|
||||
}
|
||||
.btn-pass {
|
||||
color: #fff;
|
||||
background-color: #76dc4c;
|
||||
border-color: #66d837;
|
||||
}
|
||||
.btn-pass:focus,
|
||||
.btn-pass.focus {
|
||||
color: #fff;
|
||||
background-color: #58cd28;
|
||||
border-color: #347817;
|
||||
}
|
||||
.btn-pass:hover {
|
||||
color: #fff;
|
||||
background-color: #58cd28;
|
||||
border-color: #4caf22;
|
||||
}
|
||||
.btn-pass:active,
|
||||
.btn-pass.active,
|
||||
.open > .dropdown-toggle.btn-pass {
|
||||
color: #fff;
|
||||
background-color: #58cd28;
|
||||
border-color: #4caf22;
|
||||
}
|
||||
.btn-pass:active:hover,
|
||||
.btn-pass.active:hover,
|
||||
.open > .dropdown-toggle.btn-pass:hover,
|
||||
.btn-pass:active:focus,
|
||||
.btn-pass.active:focus,
|
||||
.open > .dropdown-toggle.btn-pass:focus,
|
||||
.btn-pass:active.focus,
|
||||
.btn-pass.active.focus,
|
||||
.open > .dropdown-toggle.btn-pass.focus {
|
||||
color: #fff;
|
||||
background-color: #4caf22;
|
||||
border-color: #347817;
|
||||
}
|
||||
.btn-pass:active,
|
||||
.btn-pass.active,
|
||||
.open > .dropdown-toggle.btn-pass {
|
||||
background-image: none;
|
||||
}
|
||||
.btn-pass.disabled,
|
||||
.btn-pass[disabled],
|
||||
fieldset[disabled] .btn-pass,
|
||||
.btn-pass.disabled:hover,
|
||||
.btn-pass[disabled]:hover,
|
||||
fieldset[disabled] .btn-pass:hover,
|
||||
.btn-pass.disabled:focus,
|
||||
.btn-pass[disabled]:focus,
|
||||
fieldset[disabled] .btn-pass:focus,
|
||||
.btn-pass.disabled.focus,
|
||||
.btn-pass[disabled].focus,
|
||||
fieldset[disabled] .btn-pass.focus,
|
||||
.btn-pass.disabled:active,
|
||||
.btn-pass[disabled]:active,
|
||||
fieldset[disabled] .btn-pass:active,
|
||||
.btn-pass.disabled.active,
|
||||
.btn-pass[disabled].active,
|
||||
fieldset[disabled] .btn-pass.active {
|
||||
background-color: #76dc4c;
|
||||
border-color: #66d837;
|
||||
}
|
||||
.btn-pass .badge {
|
||||
color: #76dc4c;
|
||||
background-color: #fff;
|
||||
}
|
||||
.btn-info {
|
||||
color: #fff;
|
||||
background-color: #f6d73c;
|
||||
|
@ -3363,9 +3360,6 @@ fieldset[disabled] .btn-pass.active {
|
|||
.open > .dropdown-toggle.btn-info {
|
||||
background-image: none;
|
||||
}
|
||||
.btn-info.disabled,
|
||||
.btn-info[disabled],
|
||||
fieldset[disabled] .btn-info,
|
||||
.btn-info.disabled:hover,
|
||||
.btn-info[disabled]:hover,
|
||||
fieldset[disabled] .btn-info:hover,
|
||||
|
@ -3374,13 +3368,7 @@ fieldset[disabled] .btn-info:hover,
|
|||
fieldset[disabled] .btn-info:focus,
|
||||
.btn-info.disabled.focus,
|
||||
.btn-info[disabled].focus,
|
||||
fieldset[disabled] .btn-info.focus,
|
||||
.btn-info.disabled:active,
|
||||
.btn-info[disabled]:active,
|
||||
fieldset[disabled] .btn-info:active,
|
||||
.btn-info.disabled.active,
|
||||
.btn-info[disabled].active,
|
||||
fieldset[disabled] .btn-info.active {
|
||||
fieldset[disabled] .btn-info.focus {
|
||||
background-color: #f6d73c;
|
||||
border-color: #f5d224;
|
||||
}
|
||||
|
@ -3429,9 +3417,6 @@ fieldset[disabled] .btn-info.active {
|
|||
.open > .dropdown-toggle.btn-warning {
|
||||
background-image: none;
|
||||
}
|
||||
.btn-warning.disabled,
|
||||
.btn-warning[disabled],
|
||||
fieldset[disabled] .btn-warning,
|
||||
.btn-warning.disabled:hover,
|
||||
.btn-warning[disabled]:hover,
|
||||
fieldset[disabled] .btn-warning:hover,
|
||||
|
@ -3440,13 +3425,7 @@ fieldset[disabled] .btn-warning:hover,
|
|||
fieldset[disabled] .btn-warning:focus,
|
||||
.btn-warning.disabled.focus,
|
||||
.btn-warning[disabled].focus,
|
||||
fieldset[disabled] .btn-warning.focus,
|
||||
.btn-warning.disabled:active,
|
||||
.btn-warning[disabled]:active,
|
||||
fieldset[disabled] .btn-warning:active,
|
||||
.btn-warning.disabled.active,
|
||||
.btn-warning[disabled].active,
|
||||
fieldset[disabled] .btn-warning.active {
|
||||
fieldset[disabled] .btn-warning.focus {
|
||||
background-color: #f69f74;
|
||||
border-color: #f48e5c;
|
||||
}
|
||||
|
@ -3495,9 +3474,6 @@ fieldset[disabled] .btn-warning.active {
|
|||
.open > .dropdown-toggle.btn-danger {
|
||||
background-image: none;
|
||||
}
|
||||
.btn-danger.disabled,
|
||||
.btn-danger[disabled],
|
||||
fieldset[disabled] .btn-danger,
|
||||
.btn-danger.disabled:hover,
|
||||
.btn-danger[disabled]:hover,
|
||||
fieldset[disabled] .btn-danger:hover,
|
||||
|
@ -3506,13 +3482,7 @@ fieldset[disabled] .btn-danger:hover,
|
|||
fieldset[disabled] .btn-danger:focus,
|
||||
.btn-danger.disabled.focus,
|
||||
.btn-danger[disabled].focus,
|
||||
fieldset[disabled] .btn-danger.focus,
|
||||
.btn-danger.disabled:active,
|
||||
.btn-danger[disabled]:active,
|
||||
fieldset[disabled] .btn-danger:active,
|
||||
.btn-danger.disabled.active,
|
||||
.btn-danger[disabled].active,
|
||||
fieldset[disabled] .btn-danger.active {
|
||||
fieldset[disabled] .btn-danger.focus {
|
||||
background-color: #e12817;
|
||||
border-color: #ca2415;
|
||||
}
|
||||
|
@ -3886,6 +3856,7 @@ tbody.collapse.in {
|
|||
border-radius: 0;
|
||||
}
|
||||
.btn-group-vertical > .btn:first-child:not(:last-child) {
|
||||
border-top-left-radius: 4px;
|
||||
border-top-right-radius: 4px;
|
||||
border-bottom-right-radius: 0;
|
||||
border-bottom-left-radius: 0;
|
||||
|
@ -3893,6 +3864,7 @@ tbody.collapse.in {
|
|||
.btn-group-vertical > .btn:last-child:not(:first-child) {
|
||||
border-top-left-radius: 0;
|
||||
border-top-right-radius: 0;
|
||||
border-bottom-right-radius: 4px;
|
||||
border-bottom-left-radius: 4px;
|
||||
}
|
||||
.btn-group-vertical > .btn-group:not(:first-child):not(:last-child) > .btn {
|
||||
|
@ -3950,6 +3922,9 @@ tbody.collapse.in {
|
|||
width: 100%;
|
||||
margin-bottom: 0;
|
||||
}
|
||||
.input-group .form-control:focus {
|
||||
z-index: 3;
|
||||
}
|
||||
.input-group-lg > .form-control,
|
||||
.input-group-lg > .input-group-addon,
|
||||
.input-group-lg > .input-group-btn > .btn {
|
||||
|
@ -4861,7 +4836,7 @@ fieldset[disabled] .navbar-inverse .btn-link:focus {
|
|||
.pagination > li > span:hover,
|
||||
.pagination > li > a:focus,
|
||||
.pagination > li > span:focus {
|
||||
z-index: 3;
|
||||
z-index: 2;
|
||||
color: #271673;
|
||||
background-color: #eee;
|
||||
border-color: #ddd;
|
||||
|
@ -4872,7 +4847,7 @@ fieldset[disabled] .navbar-inverse .btn-link:focus {
|
|||
.pagination > .active > span:hover,
|
||||
.pagination > .active > a:focus,
|
||||
.pagination > .active > span:focus {
|
||||
z-index: 2;
|
||||
z-index: 3;
|
||||
color: #fff;
|
||||
cursor: default;
|
||||
background-color: #54478e;
|
||||
|
@ -5005,13 +4980,6 @@ a.label:focus {
|
|||
.label-success[href]:focus {
|
||||
background-color: #2b8d02;
|
||||
}
|
||||
.label-pass {
|
||||
background-color: #76dc4c;
|
||||
}
|
||||
.label-pass[href]:hover,
|
||||
.label-pass[href]:focus {
|
||||
background-color: #58cd28;
|
||||
}
|
||||
.label-info {
|
||||
background-color: #f0c905;
|
||||
}
|
||||
|
@ -5100,6 +5068,8 @@ a.badge:focus {
|
|||
}
|
||||
.container .jumbotron,
|
||||
.container-fluid .jumbotron {
|
||||
padding-right: 15px;
|
||||
padding-left: 15px;
|
||||
border-radius: 6px;
|
||||
}
|
||||
.jumbotron .container {
|
||||
|
@ -5858,24 +5828,6 @@ button.list-group-item-danger.active:focus {
|
|||
.panel-success > .panel-footer + .panel-collapse > .panel-body {
|
||||
border-bottom-color: #b6ef85;
|
||||
}
|
||||
.panel-pass {
|
||||
border-color: #76dc4c;
|
||||
}
|
||||
.panel-pass > .panel-heading {
|
||||
color: #000;
|
||||
background-color: #b5f29c;
|
||||
border-color: #76dc4c;
|
||||
}
|
||||
.panel-pass > .panel-heading + .panel-collapse > .panel-body {
|
||||
border-top-color: #76dc4c;
|
||||
}
|
||||
.panel-pass > .panel-heading .badge {
|
||||
color: #b5f29c;
|
||||
background-color: #000;
|
||||
}
|
||||
.panel-pass > .panel-footer + .panel-collapse > .panel-body {
|
||||
border-bottom-color: #76dc4c;
|
||||
}
|
||||
.panel-info {
|
||||
border-color: #fbe4b6;
|
||||
}
|
||||
|
@ -6072,7 +6024,6 @@ button.close {
|
|||
opacity: .5;
|
||||
}
|
||||
.modal-header {
|
||||
min-height: 16.42857143px;
|
||||
padding: 15px;
|
||||
border-bottom: 1px solid #e5e5e5;
|
||||
}
|
||||
|
@ -6465,6 +6416,7 @@ button.close {
|
|||
color: #fff;
|
||||
text-align: center;
|
||||
text-shadow: 0 1px 2px rgba(0, 0, 0, .6);
|
||||
background-color: rgba(0, 0, 0, 0);
|
||||
filter: alpha(opacity=50);
|
||||
opacity: .5;
|
||||
}
|
||||
|
@ -6578,16 +6530,16 @@ button.close {
|
|||
.carousel-control .icon-next {
|
||||
width: 30px;
|
||||
height: 30px;
|
||||
margin-top: -15px;
|
||||
margin-top: -10px;
|
||||
font-size: 30px;
|
||||
}
|
||||
.carousel-control .glyphicon-chevron-left,
|
||||
.carousel-control .icon-prev {
|
||||
margin-left: -15px;
|
||||
margin-left: -10px;
|
||||
}
|
||||
.carousel-control .glyphicon-chevron-right,
|
||||
.carousel-control .icon-next {
|
||||
margin-right: -15px;
|
||||
margin-right: -10px;
|
||||
}
|
||||
.carousel-caption {
|
||||
right: 20%;
|
||||
|
@ -6626,6 +6578,8 @@ button.close {
|
|||
.pager:after,
|
||||
.panel-body:before,
|
||||
.panel-body:after,
|
||||
.modal-header:before,
|
||||
.modal-header:after,
|
||||
.modal-footer:before,
|
||||
.modal-footer:after {
|
||||
display: table;
|
||||
|
@ -6645,6 +6599,7 @@ button.close {
|
|||
.navbar-collapse:after,
|
||||
.pager:after,
|
||||
.panel-body:after,
|
||||
.modal-header:after,
|
||||
.modal-footer:after {
|
||||
clear: both;
|
||||
}
|
||||
|
|
2
bootstrap/dist/css/bootstrap.css.map
vendored
2
bootstrap/dist/css/bootstrap.css.map
vendored
File diff suppressed because one or more lines are too long
5
bootstrap/dist/css/bootstrap.min.css
vendored
5
bootstrap/dist/css/bootstrap.min.css
vendored
File diff suppressed because one or more lines are too long
1
bootstrap/dist/css/bootstrap.min.css.map
vendored
Executable file
1
bootstrap/dist/css/bootstrap.min.css.map
vendored
Executable file
File diff suppressed because one or more lines are too long
|
@ -1,5 +1,5 @@
|
|||
/*!
|
||||
* Bootstrap v3.3.5 (http://getbootstrap.com)
|
||||
* Bootstrap v3.3.6 (http://getbootstrap.com)
|
||||
* Copyright 2011-2015 Twitter, Inc.
|
||||
* Licensed under the MIT license
|
||||
*/
|
||||
|
@ -11,13 +11,13 @@ if (typeof jQuery === 'undefined') {
|
|||
+function ($) {
|
||||
'use strict';
|
||||
var version = $.fn.jquery.split(' ')[0].split('.')
|
||||
if ((version[0] < 2 && version[1] < 9) || (version[0] == 1 && version[1] == 9 && version[2] < 1)) {
|
||||
throw new Error('Bootstrap\'s JavaScript requires jQuery version 1.9.1 or higher')
|
||||
if ((version[0] < 2 && version[1] < 9) || (version[0] == 1 && version[1] == 9 && version[2] < 1) || (version[0] > 2)) {
|
||||
throw new Error('Bootstrap\'s JavaScript requires jQuery version 1.9.1 or higher, but lower than version 3')
|
||||
}
|
||||
}(jQuery);
|
||||
|
||||
/* ========================================================================
|
||||
* Bootstrap: transition.js v3.3.5
|
||||
* Bootstrap: transition.js v3.3.6
|
||||
* http://getbootstrap.com/javascript/#transitions
|
||||
* ========================================================================
|
||||
* Copyright 2011-2015 Twitter, Inc.
|
||||
|
@ -77,7 +77,7 @@ if (typeof jQuery === 'undefined') {
|
|||
}(jQuery);
|
||||
|
||||
/* ========================================================================
|
||||
* Bootstrap: alert.js v3.3.5
|
||||
* Bootstrap: alert.js v3.3.6
|
||||
* http://getbootstrap.com/javascript/#alerts
|
||||
* ========================================================================
|
||||
* Copyright 2011-2015 Twitter, Inc.
|
||||
|
@ -96,7 +96,7 @@ if (typeof jQuery === 'undefined') {
|
|||
$(el).on('click', dismiss, this.close)
|
||||
}
|
||||
|
||||
Alert.VERSION = '3.3.5'
|
||||
Alert.VERSION = '3.3.6'
|
||||
|
||||
Alert.TRANSITION_DURATION = 150
|
||||
|
||||
|
@ -172,7 +172,7 @@ if (typeof jQuery === 'undefined') {
|
|||
}(jQuery);
|
||||
|
||||
/* ========================================================================
|
||||
* Bootstrap: button.js v3.3.5
|
||||
* Bootstrap: button.js v3.3.6
|
||||
* http://getbootstrap.com/javascript/#buttons
|
||||
* ========================================================================
|
||||
* Copyright 2011-2015 Twitter, Inc.
|
||||
|
@ -192,7 +192,7 @@ if (typeof jQuery === 'undefined') {
|
|||
this.isLoading = false
|
||||
}
|
||||
|
||||
Button.VERSION = '3.3.5'
|
||||
Button.VERSION = '3.3.6'
|
||||
|
||||
Button.DEFAULTS = {
|
||||
loadingText: 'loading...'
|
||||
|
@ -293,7 +293,7 @@ if (typeof jQuery === 'undefined') {
|
|||
}(jQuery);
|
||||
|
||||
/* ========================================================================
|
||||
* Bootstrap: carousel.js v3.3.5
|
||||
* Bootstrap: carousel.js v3.3.6
|
||||
* http://getbootstrap.com/javascript/#carousel
|
||||
* ========================================================================
|
||||
* Copyright 2011-2015 Twitter, Inc.
|
||||
|
@ -324,7 +324,7 @@ if (typeof jQuery === 'undefined') {
|
|||
.on('mouseleave.bs.carousel', $.proxy(this.cycle, this))
|
||||
}
|
||||
|
||||
Carousel.VERSION = '3.3.5'
|
||||
Carousel.VERSION = '3.3.6'
|
||||
|
||||
Carousel.TRANSITION_DURATION = 600
|
||||
|
||||
|
@ -531,7 +531,7 @@ if (typeof jQuery === 'undefined') {
|
|||
}(jQuery);
|
||||
|
||||
/* ========================================================================
|
||||
* Bootstrap: collapse.js v3.3.5
|
||||
* Bootstrap: collapse.js v3.3.6
|
||||
* http://getbootstrap.com/javascript/#collapse
|
||||
* ========================================================================
|
||||
* Copyright 2011-2015 Twitter, Inc.
|
||||
|
@ -561,7 +561,7 @@ if (typeof jQuery === 'undefined') {
|
|||
if (this.options.toggle) this.toggle()
|
||||
}
|
||||
|
||||
Collapse.VERSION = '3.3.5'
|
||||
Collapse.VERSION = '3.3.6'
|
||||
|
||||
Collapse.TRANSITION_DURATION = 350
|
||||
|
||||
|
@ -743,7 +743,7 @@ if (typeof jQuery === 'undefined') {
|
|||
}(jQuery);
|
||||
|
||||
/* ========================================================================
|
||||
* Bootstrap: dropdown.js v3.3.5
|
||||
* Bootstrap: dropdown.js v3.3.6
|
||||
* http://getbootstrap.com/javascript/#dropdowns
|
||||
* ========================================================================
|
||||
* Copyright 2011-2015 Twitter, Inc.
|
||||
|
@ -763,7 +763,7 @@ if (typeof jQuery === 'undefined') {
|
|||
$(element).on('click.bs.dropdown', this.toggle)
|
||||
}
|
||||
|
||||
Dropdown.VERSION = '3.3.5'
|
||||
Dropdown.VERSION = '3.3.6'
|
||||
|
||||
function getParent($this) {
|
||||
var selector = $this.attr('data-target')
|
||||
|
@ -795,7 +795,7 @@ if (typeof jQuery === 'undefined') {
|
|||
if (e.isDefaultPrevented()) return
|
||||
|
||||
$this.attr('aria-expanded', 'false')
|
||||
$parent.removeClass('open').trigger('hidden.bs.dropdown', relatedTarget)
|
||||
$parent.removeClass('open').trigger($.Event('hidden.bs.dropdown', relatedTarget))
|
||||
})
|
||||
}
|
||||
|
||||
|
@ -829,7 +829,7 @@ if (typeof jQuery === 'undefined') {
|
|||
|
||||
$parent
|
||||
.toggleClass('open')
|
||||
.trigger('shown.bs.dropdown', relatedTarget)
|
||||
.trigger($.Event('shown.bs.dropdown', relatedTarget))
|
||||
}
|
||||
|
||||
return false
|
||||
|
@ -909,7 +909,7 @@ if (typeof jQuery === 'undefined') {
|
|||
}(jQuery);
|
||||
|
||||
/* ========================================================================
|
||||
* Bootstrap: modal.js v3.3.5
|
||||
* Bootstrap: modal.js v3.3.6
|
||||
* http://getbootstrap.com/javascript/#modals
|
||||
* ========================================================================
|
||||
* Copyright 2011-2015 Twitter, Inc.
|
||||
|
@ -943,7 +943,7 @@ if (typeof jQuery === 'undefined') {
|
|||
}
|
||||
}
|
||||
|
||||
Modal.VERSION = '3.3.5'
|
||||
Modal.VERSION = '3.3.6'
|
||||
|
||||
Modal.TRANSITION_DURATION = 300
|
||||
Modal.BACKDROP_TRANSITION_DURATION = 150
|
||||
|
@ -1247,7 +1247,7 @@ if (typeof jQuery === 'undefined') {
|
|||
}(jQuery);
|
||||
|
||||
/* ========================================================================
|
||||
* Bootstrap: tooltip.js v3.3.5
|
||||
* Bootstrap: tooltip.js v3.3.6
|
||||
* http://getbootstrap.com/javascript/#tooltip
|
||||
* Inspired by the original jQuery.tipsy by Jason Frame
|
||||
* ========================================================================
|
||||
|
@ -1274,7 +1274,7 @@ if (typeof jQuery === 'undefined') {
|
|||
this.init('tooltip', element, options)
|
||||
}
|
||||
|
||||
Tooltip.VERSION = '3.3.5'
|
||||
Tooltip.VERSION = '3.3.6'
|
||||
|
||||
Tooltip.TRANSITION_DURATION = 150
|
||||
|
||||
|
@ -1762,7 +1762,7 @@ if (typeof jQuery === 'undefined') {
|
|||
}(jQuery);
|
||||
|
||||
/* ========================================================================
|
||||
* Bootstrap: popover.js v3.3.5
|
||||
* Bootstrap: popover.js v3.3.6
|
||||
* http://getbootstrap.com/javascript/#popovers
|
||||
* ========================================================================
|
||||
* Copyright 2011-2015 Twitter, Inc.
|
||||
|
@ -1782,7 +1782,7 @@ if (typeof jQuery === 'undefined') {
|
|||
|
||||
if (!$.fn.tooltip) throw new Error('Popover requires tooltip.js')
|
||||
|
||||
Popover.VERSION = '3.3.5'
|
||||
Popover.VERSION = '3.3.6'
|
||||
|
||||
Popover.DEFAULTS = $.extend({}, $.fn.tooltip.Constructor.DEFAULTS, {
|
||||
placement: 'right',
|
||||
|
@ -1871,7 +1871,7 @@ if (typeof jQuery === 'undefined') {
|
|||
}(jQuery);
|
||||
|
||||
/* ========================================================================
|
||||
* Bootstrap: scrollspy.js v3.3.5
|
||||
* Bootstrap: scrollspy.js v3.3.6
|
||||
* http://getbootstrap.com/javascript/#scrollspy
|
||||
* ========================================================================
|
||||
* Copyright 2011-2015 Twitter, Inc.
|
||||
|
@ -1900,7 +1900,7 @@ if (typeof jQuery === 'undefined') {
|
|||
this.process()
|
||||
}
|
||||
|
||||
ScrollSpy.VERSION = '3.3.5'
|
||||
ScrollSpy.VERSION = '3.3.6'
|
||||
|
||||
ScrollSpy.DEFAULTS = {
|
||||
offset: 10
|
||||
|
@ -2044,7 +2044,7 @@ if (typeof jQuery === 'undefined') {
|
|||
}(jQuery);
|
||||
|
||||
/* ========================================================================
|
||||
* Bootstrap: tab.js v3.3.5
|
||||
* Bootstrap: tab.js v3.3.6
|
||||
* http://getbootstrap.com/javascript/#tabs
|
||||
* ========================================================================
|
||||
* Copyright 2011-2015 Twitter, Inc.
|
||||
|
@ -2064,7 +2064,7 @@ if (typeof jQuery === 'undefined') {
|
|||
// jscs:enable requireDollarBeforejQueryAssignment
|
||||
}
|
||||
|
||||
Tab.VERSION = '3.3.5'
|
||||
Tab.VERSION = '3.3.6'
|
||||
|
||||
Tab.TRANSITION_DURATION = 150
|
||||
|
||||
|
@ -2200,7 +2200,7 @@ if (typeof jQuery === 'undefined') {
|
|||
}(jQuery);
|
||||
|
||||
/* ========================================================================
|
||||
* Bootstrap: affix.js v3.3.5
|
||||
* Bootstrap: affix.js v3.3.6
|
||||
* http://getbootstrap.com/javascript/#affix
|
||||
* ========================================================================
|
||||
* Copyright 2011-2015 Twitter, Inc.
|
||||
|
@ -2229,7 +2229,7 @@ if (typeof jQuery === 'undefined') {
|
|||
this.checkPosition()
|
||||
}
|
||||
|
||||
Affix.VERSION = '3.3.5'
|
||||
Affix.VERSION = '3.3.6'
|
||||
|
||||
Affix.RESET = 'affix affix-top affix-bottom'
|
||||
|
||||
|
|
6
bootstrap/dist/js/bootstrap.min.js
vendored
6
bootstrap/dist/js/bootstrap.min.js
vendored
File diff suppressed because one or more lines are too long
|
@ -37,10 +37,10 @@
|
|||
"+function ($) {",
|
||||
" 'use strict';",
|
||||
" var version = $.fn.jquery.split(' ')[0].split('.')",
|
||||
" if ((version[0] < 2 && version[1] < 9) || (version[0] == 1 && version[1] == 9 && version[2] < 1)) {",
|
||||
" throw new Error('Bootstrap\\'s JavaScript requires jQuery version 1.9.1 or higher')",
|
||||
" if ((version[0] < 2 && version[1] < 9) || (version[0] == 1 && version[1] == 9 && version[2] < 1) || (version[0] > 2)) {",
|
||||
" throw new Error('Bootstrap\\'s JavaScript requires jQuery version 1.9.1 or higher, but lower than version 3')",
|
||||
" }",
|
||||
"}(jQuery);\n\n"
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/* ========================================================================
|
||||
* Bootstrap: affix.js v3.3.5
|
||||
* Bootstrap: affix.js v3.3.6
|
||||
* http://getbootstrap.com/javascript/#affix
|
||||
* ========================================================================
|
||||
* Copyright 2011-2015 Twitter, Inc.
|
||||
|
@ -28,7 +28,7 @@
|
|||
this.checkPosition()
|
||||
}
|
||||
|
||||
Affix.VERSION = '3.3.5'
|
||||
Affix.VERSION = '3.3.6'
|
||||
|
||||
Affix.RESET = 'affix affix-top affix-bottom'
|
||||
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/* ========================================================================
|
||||
* Bootstrap: alert.js v3.3.5
|
||||
* Bootstrap: alert.js v3.3.6
|
||||
* http://getbootstrap.com/javascript/#alerts
|
||||
* ========================================================================
|
||||
* Copyright 2011-2015 Twitter, Inc.
|
||||
|
@ -18,7 +18,7 @@
|
|||
$(el).on('click', dismiss, this.close)
|
||||
}
|
||||
|
||||
Alert.VERSION = '3.3.5'
|
||||
Alert.VERSION = '3.3.6'
|
||||
|
||||
Alert.TRANSITION_DURATION = 150
|
||||
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/* ========================================================================
|
||||
* Bootstrap: button.js v3.3.5
|
||||
* Bootstrap: button.js v3.3.6
|
||||
* http://getbootstrap.com/javascript/#buttons
|
||||
* ========================================================================
|
||||
* Copyright 2011-2015 Twitter, Inc.
|
||||
|
@ -19,7 +19,7 @@
|
|||
this.isLoading = false
|
||||
}
|
||||
|
||||
Button.VERSION = '3.3.5'
|
||||
Button.VERSION = '3.3.6'
|
||||
|
||||
Button.DEFAULTS = {
|
||||
loadingText: 'loading...'
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/* ========================================================================
|
||||
* Bootstrap: carousel.js v3.3.5
|
||||
* Bootstrap: carousel.js v3.3.6
|
||||
* http://getbootstrap.com/javascript/#carousel
|
||||
* ========================================================================
|
||||
* Copyright 2011-2015 Twitter, Inc.
|
||||
|
@ -30,7 +30,7 @@
|
|||
.on('mouseleave.bs.carousel', $.proxy(this.cycle, this))
|
||||
}
|
||||
|
||||
Carousel.VERSION = '3.3.5'
|
||||
Carousel.VERSION = '3.3.6'
|
||||
|
||||
Carousel.TRANSITION_DURATION = 600
|
||||
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/* ========================================================================
|
||||
* Bootstrap: collapse.js v3.3.5
|
||||
* Bootstrap: collapse.js v3.3.6
|
||||
* http://getbootstrap.com/javascript/#collapse
|
||||
* ========================================================================
|
||||
* Copyright 2011-2015 Twitter, Inc.
|
||||
|
@ -29,7 +29,7 @@
|
|||
if (this.options.toggle) this.toggle()
|
||||
}
|
||||
|
||||
Collapse.VERSION = '3.3.5'
|
||||
Collapse.VERSION = '3.3.6'
|
||||
|
||||
Collapse.TRANSITION_DURATION = 350
|
||||
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/* ========================================================================
|
||||
* Bootstrap: dropdown.js v3.3.5
|
||||
* Bootstrap: dropdown.js v3.3.6
|
||||
* http://getbootstrap.com/javascript/#dropdowns
|
||||
* ========================================================================
|
||||
* Copyright 2011-2015 Twitter, Inc.
|
||||
|
@ -19,7 +19,7 @@
|
|||
$(element).on('click.bs.dropdown', this.toggle)
|
||||
}
|
||||
|
||||
Dropdown.VERSION = '3.3.5'
|
||||
Dropdown.VERSION = '3.3.6'
|
||||
|
||||
function getParent($this) {
|
||||
var selector = $this.attr('data-target')
|
||||
|
@ -51,7 +51,7 @@
|
|||
if (e.isDefaultPrevented()) return
|
||||
|
||||
$this.attr('aria-expanded', 'false')
|
||||
$parent.removeClass('open').trigger('hidden.bs.dropdown', relatedTarget)
|
||||
$parent.removeClass('open').trigger($.Event('hidden.bs.dropdown', relatedTarget))
|
||||
})
|
||||
}
|
||||
|
||||
|
@ -85,7 +85,7 @@
|
|||
|
||||
$parent
|
||||
.toggleClass('open')
|
||||
.trigger('shown.bs.dropdown', relatedTarget)
|
||||
.trigger($.Event('shown.bs.dropdown', relatedTarget))
|
||||
}
|
||||
|
||||
return false
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/* ========================================================================
|
||||
* Bootstrap: modal.js v3.3.5
|
||||
* Bootstrap: modal.js v3.3.6
|
||||
* http://getbootstrap.com/javascript/#modals
|
||||
* ========================================================================
|
||||
* Copyright 2011-2015 Twitter, Inc.
|
||||
|
@ -33,7 +33,7 @@
|
|||
}
|
||||
}
|
||||
|
||||
Modal.VERSION = '3.3.5'
|
||||
Modal.VERSION = '3.3.6'
|
||||
|
||||
Modal.TRANSITION_DURATION = 300
|
||||
Modal.BACKDROP_TRANSITION_DURATION = 150
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/* ========================================================================
|
||||
* Bootstrap: popover.js v3.3.5
|
||||
* Bootstrap: popover.js v3.3.6
|
||||
* http://getbootstrap.com/javascript/#popovers
|
||||
* ========================================================================
|
||||
* Copyright 2011-2015 Twitter, Inc.
|
||||
|
@ -19,7 +19,7 @@
|
|||
|
||||
if (!$.fn.tooltip) throw new Error('Popover requires tooltip.js')
|
||||
|
||||
Popover.VERSION = '3.3.5'
|
||||
Popover.VERSION = '3.3.6'
|
||||
|
||||
Popover.DEFAULTS = $.extend({}, $.fn.tooltip.Constructor.DEFAULTS, {
|
||||
placement: 'right',
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/* ========================================================================
|
||||
* Bootstrap: scrollspy.js v3.3.5
|
||||
* Bootstrap: scrollspy.js v3.3.6
|
||||
* http://getbootstrap.com/javascript/#scrollspy
|
||||
* ========================================================================
|
||||
* Copyright 2011-2015 Twitter, Inc.
|
||||
|
@ -28,7 +28,7 @@
|
|||
this.process()
|
||||
}
|
||||
|
||||
ScrollSpy.VERSION = '3.3.5'
|
||||
ScrollSpy.VERSION = '3.3.6'
|
||||
|
||||
ScrollSpy.DEFAULTS = {
|
||||
offset: 10
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/* ========================================================================
|
||||
* Bootstrap: tab.js v3.3.5
|
||||
* Bootstrap: tab.js v3.3.6
|
||||
* http://getbootstrap.com/javascript/#tabs
|
||||
* ========================================================================
|
||||
* Copyright 2011-2015 Twitter, Inc.
|
||||
|
@ -19,7 +19,7 @@
|
|||
// jscs:enable requireDollarBeforejQueryAssignment
|
||||
}
|
||||
|
||||
Tab.VERSION = '3.3.5'
|
||||
Tab.VERSION = '3.3.6'
|
||||
|
||||
Tab.TRANSITION_DURATION = 150
|
||||
|
||||
|
|
|
@ -20,6 +20,7 @@ To run the unit test suite via a real web browser, open `index.html` in the brow
|
|||
|
||||
**Note:** Your new unit tests should fail before your changes are applied to the plugin, and should pass after your changes are applied to the plugin.
|
||||
|
||||
|
||||
## What should a unit test look like?
|
||||
|
||||
* Each test should have a unique name clearly stating what unit is being tested.
|
||||
|
|
|
@ -54,7 +54,7 @@
|
|||
<script>
|
||||
// See https://github.com/axemclion/grunt-saucelabs#test-result-details-with-qunit
|
||||
var log = []
|
||||
// Require assert.expect in each test.
|
||||
// Require assert.expect in each test
|
||||
QUnit.config.requireExpects = true
|
||||
QUnit.done(function (testResults) {
|
||||
var tests = []
|
||||
|
|
|
@ -130,19 +130,6 @@ $(function () {
|
|||
assert.strictEqual($btn.attr('aria-pressed'), 'true', 'btn aria-pressed state is true')
|
||||
})
|
||||
|
||||
QUnit.test('should toggle active when btn children are clicked within btn-group', function (assert) {
|
||||
assert.expect(2)
|
||||
var $btngroup = $('<div class="btn-group" data-toggle="buttons"/>')
|
||||
var $btn = $('<button class="btn">fat</button>')
|
||||
var $inner = $('<i/>')
|
||||
$btngroup
|
||||
.append($btn.append($inner))
|
||||
.appendTo('#qunit-fixture')
|
||||
assert.ok(!$btn.hasClass('active'), 'btn does not have active class')
|
||||
$inner.trigger('click')
|
||||
assert.ok($btn.hasClass('active'), 'btn has class active')
|
||||
})
|
||||
|
||||
QUnit.test('should check for closest matching toggle', function (assert) {
|
||||
assert.expect(12)
|
||||
var groupHTML = '<div class="btn-group" data-toggle="buttons">'
|
||||
|
@ -167,13 +154,13 @@ $(function () {
|
|||
assert.ok(!$btn2.find('input').prop('checked'), 'btn2 is not checked')
|
||||
$btn2.find('input').trigger('click')
|
||||
assert.ok(!$btn1.hasClass('active'), 'btn1 does not have active class')
|
||||
assert.ok(!$btn1.find('input').prop('checked'), 'btn1 is checked')
|
||||
assert.ok(!$btn1.find('input').prop('checked'), 'btn1 is not checked')
|
||||
assert.ok($btn2.hasClass('active'), 'btn2 has active class')
|
||||
assert.ok($btn2.find('input').prop('checked'), 'btn2 is checked')
|
||||
|
||||
$btn2.find('input').trigger('click') // clicking an already checked radio should not un-check it
|
||||
assert.ok(!$btn1.hasClass('active'), 'btn1 does not have active class')
|
||||
assert.ok(!$btn1.find('input').prop('checked'), 'btn1 is checked')
|
||||
assert.ok(!$btn1.find('input').prop('checked'), 'btn1 is not checked')
|
||||
assert.ok($btn2.hasClass('active'), 'btn2 has active class')
|
||||
assert.ok($btn2.find('input').prop('checked'), 'btn2 is checked')
|
||||
})
|
||||
|
|
|
@ -82,7 +82,7 @@ $(function () {
|
|||
assert.expect(1)
|
||||
var done = assert.async()
|
||||
|
||||
var $target = $('<a data-toggle="collapse" class="collapsed" href="#test1"/>').appendTo('#qunit-fixture')
|
||||
var $target = $('<a role="button" data-toggle="collapse" class="collapsed" href="#test1"/>').appendTo('#qunit-fixture')
|
||||
|
||||
$('<div id="test1"/>')
|
||||
.appendTo('#qunit-fixture')
|
||||
|
@ -98,7 +98,7 @@ $(function () {
|
|||
assert.expect(1)
|
||||
var done = assert.async()
|
||||
|
||||
var $target = $('<a data-toggle="collapse" href="#test1"/>').appendTo('#qunit-fixture')
|
||||
var $target = $('<a role="button" data-toggle="collapse" href="#test1"/>').appendTo('#qunit-fixture')
|
||||
|
||||
$('<div id="test1" class="in"/>')
|
||||
.appendTo('#qunit-fixture')
|
||||
|
@ -114,8 +114,8 @@ $(function () {
|
|||
assert.expect(2)
|
||||
var done = assert.async()
|
||||
|
||||
var $target = $('<a data-toggle="collapse" class="collapsed" href="#test1"/>').appendTo('#qunit-fixture')
|
||||
var $alt = $('<a data-toggle="collapse" class="collapsed" href="#test1"/>').appendTo('#qunit-fixture')
|
||||
var $target = $('<a role="button" data-toggle="collapse" class="collapsed" href="#test1"/>').appendTo('#qunit-fixture')
|
||||
var $alt = $('<a role="button" data-toggle="collapse" class="collapsed" href="#test1"/>').appendTo('#qunit-fixture')
|
||||
|
||||
$('<div id="test1"/>')
|
||||
.appendTo('#qunit-fixture')
|
||||
|
@ -132,8 +132,8 @@ $(function () {
|
|||
assert.expect(2)
|
||||
var done = assert.async()
|
||||
|
||||
var $target = $('<a data-toggle="collapse" href="#test1"/>').appendTo('#qunit-fixture')
|
||||
var $alt = $('<a data-toggle="collapse" href="#test1"/>').appendTo('#qunit-fixture')
|
||||
var $target = $('<a role="button" data-toggle="collapse" href="#test1"/>').appendTo('#qunit-fixture')
|
||||
var $alt = $('<a role="button" data-toggle="collapse" href="#test1"/>').appendTo('#qunit-fixture')
|
||||
|
||||
$('<div id="test1" class="in"/>')
|
||||
.appendTo('#qunit-fixture')
|
||||
|
@ -215,15 +215,15 @@ $(function () {
|
|||
+ '</div>'
|
||||
var $groups = $(accordionHTML).appendTo('#qunit-fixture').find('.panel')
|
||||
|
||||
var $target1 = $('<a data-toggle="collapse" href="#body1" data-parent="#accordion"/>').appendTo($groups.eq(0))
|
||||
var $target1 = $('<a role="button" data-toggle="collapse" href="#body1" data-parent="#accordion"/>').appendTo($groups.eq(0))
|
||||
|
||||
$('<div id="body1" class="in"/>').appendTo($groups.eq(0))
|
||||
|
||||
var $target2 = $('<a class="collapsed" data-toggle="collapse" href="#body2" data-parent="#accordion"/>').appendTo($groups.eq(1))
|
||||
var $target2 = $('<a class="collapsed" data-toggle="collapse" role="button" href="#body2" data-parent="#accordion"/>').appendTo($groups.eq(1))
|
||||
|
||||
$('<div id="body2"/>').appendTo($groups.eq(1))
|
||||
|
||||
var $target3 = $('<a class="collapsed" data-toggle="collapse" href="#body3" data-parent="#accordion"/>').appendTo($groups.eq(2))
|
||||
var $target3 = $('<a class="collapsed" data-toggle="collapse" role="button" href="#body3" data-parent="#accordion"/>').appendTo($groups.eq(2))
|
||||
|
||||
$('<div id="body3"/>')
|
||||
.appendTo($groups.eq(2))
|
||||
|
@ -249,15 +249,15 @@ $(function () {
|
|||
+ '</div>'
|
||||
var $groups = $(accordionHTML).appendTo('#qunit-fixture').find('.panel')
|
||||
|
||||
var $target1 = $('<a data-toggle="collapse" href="#body1" data-parent=".accordion"/>').appendTo($groups.eq(0))
|
||||
var $target1 = $('<a role="button" data-toggle="collapse" href="#body1" data-parent=".accordion"/>').appendTo($groups.eq(0))
|
||||
|
||||
$('<div id="body1" class="in"/>').appendTo($groups.eq(0))
|
||||
|
||||
var $target2 = $('<a class="collapsed" data-toggle="collapse" href="#body2" data-parent=".accordion"/>').appendTo($groups.eq(1))
|
||||
var $target2 = $('<a class="collapsed" data-toggle="collapse" role="button" href="#body2" data-parent=".accordion"/>').appendTo($groups.eq(1))
|
||||
|
||||
$('<div id="body2"/>').appendTo($groups.eq(1))
|
||||
|
||||
var $target3 = $('<a class="collapsed" data-toggle="collapse" href="#body3" data-parent=".accordion"/>').appendTo($groups.eq(2))
|
||||
var $target3 = $('<a class="collapsed" data-toggle="collapse" role="button" href="#body3" data-parent=".accordion"/>').appendTo($groups.eq(2))
|
||||
|
||||
$('<div id="body3"/>')
|
||||
.appendTo($groups.eq(2))
|
||||
|
@ -276,7 +276,7 @@ $(function () {
|
|||
assert.expect(1)
|
||||
var done = assert.async()
|
||||
|
||||
var $target = $('<a data-toggle="collapse" class="collapsed" href="#test1" aria-expanded="false"/>').appendTo('#qunit-fixture')
|
||||
var $target = $('<a role="button" data-toggle="collapse" class="collapsed" href="#test1" aria-expanded="false"/>').appendTo('#qunit-fixture')
|
||||
|
||||
$('<div id="test1"/>')
|
||||
.appendTo('#qunit-fixture')
|
||||
|
@ -292,7 +292,7 @@ $(function () {
|
|||
assert.expect(1)
|
||||
var done = assert.async()
|
||||
|
||||
var $target = $('<a data-toggle="collapse" href="#test1" aria-expanded="true"/>').appendTo('#qunit-fixture')
|
||||
var $target = $('<a role="button" data-toggle="collapse" href="#test1" aria-expanded="true"/>').appendTo('#qunit-fixture')
|
||||
|
||||
$('<div id="test1" class="in"/>')
|
||||
.appendTo('#qunit-fixture')
|
||||
|
@ -308,8 +308,8 @@ $(function () {
|
|||
assert.expect(2)
|
||||
var done = assert.async()
|
||||
|
||||
var $target = $('<a data-toggle="collapse" class="collapsed" href="#test1" aria-expanded="false"/>').appendTo('#qunit-fixture')
|
||||
var $alt = $('<a data-toggle="collapse" class="collapsed" href="#test1" aria-expanded="false"/>').appendTo('#qunit-fixture')
|
||||
var $target = $('<a role="button" data-toggle="collapse" class="collapsed" href="#test1" aria-expanded="false"/>').appendTo('#qunit-fixture')
|
||||
var $alt = $('<a role="button" data-toggle="collapse" class="collapsed" href="#test1" aria-expanded="false"/>').appendTo('#qunit-fixture')
|
||||
|
||||
$('<div id="test1"/>')
|
||||
.appendTo('#qunit-fixture')
|
||||
|
@ -326,8 +326,8 @@ $(function () {
|
|||
assert.expect(2)
|
||||
var done = assert.async()
|
||||
|
||||
var $target = $('<a data-toggle="collapse" href="#test1" aria-expanded="true"/>').appendTo('#qunit-fixture')
|
||||
var $alt = $('<a data-toggle="collapse" href="#test1" aria-expanded="true"/>').appendTo('#qunit-fixture')
|
||||
var $target = $('<a role="button" data-toggle="collapse" href="#test1" aria-expanded="true"/>').appendTo('#qunit-fixture')
|
||||
var $alt = $('<a role="button" data-toggle="collapse" href="#test1" aria-expanded="true"/>').appendTo('#qunit-fixture')
|
||||
|
||||
$('<div id="test1" class="in"/>')
|
||||
.appendTo('#qunit-fixture')
|
||||
|
@ -351,15 +351,15 @@ $(function () {
|
|||
+ '</div>'
|
||||
var $groups = $(accordionHTML).appendTo('#qunit-fixture').find('.panel')
|
||||
|
||||
var $target1 = $('<a data-toggle="collapse" href="#body1" data-parent="#accordion"/>').appendTo($groups.eq(0))
|
||||
var $target1 = $('<a role="button" data-toggle="collapse" href="#body1" data-parent="#accordion"/>').appendTo($groups.eq(0))
|
||||
|
||||
$('<div id="body1" aria-expanded="true" class="in"/>').appendTo($groups.eq(0))
|
||||
|
||||
var $target2 = $('<a class="collapsed" data-toggle="collapse" href="#body2" data-parent="#accordion"/>').appendTo($groups.eq(1))
|
||||
var $target2 = $('<a class="collapsed" data-toggle="collapse" role="button" href="#body2" data-parent="#accordion"/>').appendTo($groups.eq(1))
|
||||
|
||||
$('<div id="body2" aria-expanded="false"/>').appendTo($groups.eq(1))
|
||||
|
||||
var $target3 = $('<a class="collapsed" data-toggle="collapse" href="#body3" data-parent="#accordion"/>').appendTo($groups.eq(2))
|
||||
var $target3 = $('<a class="collapsed" data-toggle="collapse" role="button" href="#body3" data-parent="#accordion"/>').appendTo($groups.eq(2))
|
||||
|
||||
$('<div id="body3" aria-expanded="false"/>')
|
||||
.appendTo($groups.eq(2))
|
||||
|
@ -385,7 +385,7 @@ $(function () {
|
|||
var showFired = false
|
||||
var $groups = $(accordionHTML).appendTo('#qunit-fixture').find('.panel')
|
||||
|
||||
var $target1 = $('<a data-toggle="collapse" href="#body1" data-parent="#accordion"/>').appendTo($groups.eq(0))
|
||||
var $target1 = $('<a role="button" data-toggle="collapse" href="#body1" data-parent="#accordion"/>').appendTo($groups.eq(0))
|
||||
|
||||
$('<div id="body1" class="collapse"/>')
|
||||
.appendTo($groups.eq(0))
|
||||
|
@ -393,7 +393,7 @@ $(function () {
|
|||
showFired = true
|
||||
})
|
||||
|
||||
var $target2 = $('<a data-toggle="collapse" href="#body2" data-parent="#accordion"/>').appendTo($groups.eq(1))
|
||||
var $target2 = $('<a role="button" data-toggle="collapse" href="#body2" data-parent="#accordion"/>').appendTo($groups.eq(1))
|
||||
var $body2 = $('<div id="body2" class="collapse"/>').appendTo($groups.eq(1))
|
||||
|
||||
$target2.trigger('click')
|
||||
|
@ -414,7 +414,7 @@ $(function () {
|
|||
assert.expect(1)
|
||||
var done = assert.async()
|
||||
|
||||
var $target = $('<a data-toggle="collapse" href="#test1"/>').appendTo('#qunit-fixture')
|
||||
var $target = $('<a role="button" data-toggle="collapse" href="#test1"/>').appendTo('#qunit-fixture')
|
||||
|
||||
$('<div id="test1" class="in"/>')
|
||||
.appendTo('#qunit-fixture')
|
||||
|
@ -429,7 +429,7 @@ $(function () {
|
|||
assert.expect(1)
|
||||
var done = assert.async()
|
||||
|
||||
var $target = $('<a data-toggle="collapse" class="collapsed" href="#test1"/>').appendTo('#qunit-fixture')
|
||||
var $target = $('<a role="button" data-toggle="collapse" class="collapsed" href="#test1"/>').appendTo('#qunit-fixture')
|
||||
|
||||
$('<div id="test1"/>')
|
||||
.appendTo('#qunit-fixture')
|
||||
|
|
|
@ -186,7 +186,7 @@ $(function () {
|
|||
+ '<li><a href="#menu1">Menu 1</a></li>'
|
||||
+ '<li class="dropdown" id="testmenu">'
|
||||
+ '<a class="dropdown-toggle" data-toggle="dropdown" href="#testmenu">Test menu <span class="caret"/></a>'
|
||||
+ '<ul class="dropdown-menu" role="menu">'
|
||||
+ '<ul class="dropdown-menu">'
|
||||
+ '<li><a href="#sub1">Submenu 1</a></li>'
|
||||
+ '</ul>'
|
||||
+ '</li>'
|
||||
|
@ -286,6 +286,38 @@ $(function () {
|
|||
$(document.body).trigger('click')
|
||||
})
|
||||
|
||||
QUnit.test('should fire shown and hidden event with a relatedTarget', function (assert) {
|
||||
assert.expect(2)
|
||||
var dropdownHTML = '<ul class="tabs">'
|
||||
+ '<li class="dropdown">'
|
||||
+ '<a href="#" class="dropdown-toggle" data-toggle="dropdown">Dropdown</a>'
|
||||
+ '<ul class="dropdown-menu">'
|
||||
+ '<li><a href="#">Secondary link</a></li>'
|
||||
+ '<li><a href="#">Something else here</a></li>'
|
||||
+ '<li class="divider"/>'
|
||||
+ '<li><a href="#">Another link</a></li>'
|
||||
+ '</ul>'
|
||||
+ '</li>'
|
||||
+ '</ul>'
|
||||
var $dropdown = $(dropdownHTML)
|
||||
.appendTo('#qunit-fixture')
|
||||
.find('[data-toggle="dropdown"]')
|
||||
.bootstrapDropdown()
|
||||
var done = assert.async()
|
||||
|
||||
$dropdown.parent('.dropdown')
|
||||
.on('hidden.bs.dropdown', function (e) {
|
||||
assert.strictEqual(e.relatedTarget, $dropdown[0])
|
||||
done()
|
||||
})
|
||||
.on('shown.bs.dropdown', function (e) {
|
||||
assert.strictEqual(e.relatedTarget, $dropdown[0])
|
||||
$(document.body).trigger('click')
|
||||
})
|
||||
|
||||
$dropdown.trigger('click')
|
||||
})
|
||||
|
||||
QUnit.test('should ignore keyboard events within <input>s and <textarea>s', function (assert) {
|
||||
assert.expect(3)
|
||||
var done = assert.async()
|
||||
|
@ -293,7 +325,7 @@ $(function () {
|
|||
var dropdownHTML = '<ul class="tabs">'
|
||||
+ '<li class="dropdown">'
|
||||
+ '<a href="#" class="dropdown-toggle" data-toggle="dropdown">Dropdown</a>'
|
||||
+ '<ul class="dropdown-menu" role="menu">'
|
||||
+ '<ul class="dropdown-menu">'
|
||||
+ '<li><a href="#">Secondary link</a></li>'
|
||||
+ '<li><a href="#">Something else here</a></li>'
|
||||
+ '<li class="divider"/>'
|
||||
|
@ -333,7 +365,7 @@ $(function () {
|
|||
var dropdownHTML = '<ul class="tabs">'
|
||||
+ '<li class="dropdown">'
|
||||
+ '<a href="#" class="dropdown-toggle" data-toggle="dropdown">Dropdown</a>'
|
||||
+ '<ul class="dropdown-menu" role="menu">'
|
||||
+ '<ul class="dropdown-menu">'
|
||||
+ '<li class="disabled"><a href="#">Disabled link</a></li>'
|
||||
+ '<li><a href="#">Another link</a></li>'
|
||||
+ '</ul>'
|
||||
|
@ -350,4 +382,42 @@ $(function () {
|
|||
|
||||
assert.ok(!$(document.activeElement).parent().is('.disabled'), '.disabled is not focused')
|
||||
})
|
||||
|
||||
QUnit.test('should not close the dropdown if the user clicks on a text field', function (assert) {
|
||||
assert.expect(1)
|
||||
var dropdownHTML = '<div class="btn-group">'
|
||||
+ '<button type="button" data-toggle="dropdown">Dropdown</button>'
|
||||
+ '<ul class="dropdown-menu">'
|
||||
+ '<li><input id="textField" type="text" /></li>'
|
||||
+ '</ul>'
|
||||
+ '</div>'
|
||||
var $dropdown = $(dropdownHTML)
|
||||
.appendTo('#qunit-fixture')
|
||||
.find('[data-toggle="dropdown"]')
|
||||
.bootstrapDropdown()
|
||||
.trigger('click')
|
||||
|
||||
$('#textField').trigger('click')
|
||||
|
||||
assert.ok($dropdown.parent('.btn-group').hasClass('open'), 'dropdown menu is open')
|
||||
})
|
||||
|
||||
QUnit.test('should not close the dropdown if the user clicks on a textarea', function (assert) {
|
||||
assert.expect(1)
|
||||
var dropdownHTML = '<div class="btn-group">'
|
||||
+ '<button type="button" data-toggle="dropdown">Dropdown</button>'
|
||||
+ '<ul class="dropdown-menu">'
|
||||
+ '<li><textarea id="textArea"></textarea></li>'
|
||||
+ '</ul>'
|
||||
+ '</div>'
|
||||
var $dropdown = $(dropdownHTML)
|
||||
.appendTo('#qunit-fixture')
|
||||
.find('[data-toggle="dropdown"]')
|
||||
.bootstrapDropdown()
|
||||
.trigger('click')
|
||||
|
||||
$('#textArea').trigger('click')
|
||||
|
||||
assert.ok($dropdown.parent('.btn-group').hasClass('open'), 'dropdown menu is open')
|
||||
})
|
||||
})
|
||||
|
|
|
@ -49,18 +49,6 @@ $(function () {
|
|||
.bootstrapModal('show')
|
||||
})
|
||||
|
||||
QUnit.test('should set aria-hidden to false when show method is called', function (assert) {
|
||||
assert.expect(1)
|
||||
var done = assert.async()
|
||||
|
||||
$('<div id="modal-test"/>')
|
||||
.on('shown.bs.modal', function () {
|
||||
assert.strictEqual($('#modal-test').attr('aria-hidden'), 'false', 'aria-hidden is set to string "false" when modal shown')
|
||||
done()
|
||||
})
|
||||
.bootstrapModal('show')
|
||||
})
|
||||
|
||||
QUnit.test('should fire show event', function (assert) {
|
||||
assert.expect(1)
|
||||
var done = assert.async()
|
||||
|
@ -106,22 +94,6 @@ $(function () {
|
|||
.bootstrapModal('show')
|
||||
})
|
||||
|
||||
QUnit.test('should set aria-hidden to true when hide is called', function (assert) {
|
||||
assert.expect(2)
|
||||
var done = assert.async()
|
||||
|
||||
$('<div id="modal-test"/>')
|
||||
.on('shown.bs.modal', function () {
|
||||
assert.strictEqual($('#modal-test').length, 1, 'modal has been inserted into the dom')
|
||||
$(this).bootstrapModal('hide')
|
||||
})
|
||||
.on('hidden.bs.modal', function () {
|
||||
assert.strictEqual($('#modal-test').attr('aria-hidden'), 'true', 'aria-hidden is set to string "true" when modal shown')
|
||||
done()
|
||||
})
|
||||
.bootstrapModal('show')
|
||||
})
|
||||
|
||||
QUnit.test('should toggle when toggle is called', function (assert) {
|
||||
assert.expect(3)
|
||||
var done = assert.async()
|
||||
|
@ -194,16 +166,16 @@ $(function () {
|
|||
assert.expect(3)
|
||||
var done = assert.async()
|
||||
|
||||
var div = $('<div id="modal-test"/>')
|
||||
div
|
||||
var $div = $('<div id="modal-test"/>')
|
||||
$div
|
||||
.on('shown.bs.modal', function () {
|
||||
assert.ok($('#modal-test').length, 'modal insterted into dom')
|
||||
assert.ok($('#modal-test').is(':visible'), 'modal visible')
|
||||
div.trigger($.Event('keydown', { which: 27 }))
|
||||
$div.trigger($.Event('keydown', { which: 27 }))
|
||||
|
||||
setTimeout(function () {
|
||||
assert.ok(!$('#modal-test').is(':visible'), 'modal hidden')
|
||||
div.remove()
|
||||
$div.remove()
|
||||
done()
|
||||
}, 0)
|
||||
})
|
||||
|
@ -214,16 +186,16 @@ $(function () {
|
|||
assert.expect(3)
|
||||
var done = assert.async()
|
||||
|
||||
var div = $('<div id="modal-test"/>')
|
||||
div
|
||||
var $div = $('<div id="modal-test"/>')
|
||||
$div
|
||||
.on('shown.bs.modal', function () {
|
||||
assert.ok($('#modal-test').length, 'modal inserted into dom')
|
||||
assert.ok($('#modal-test').is(':visible'), 'modal visible')
|
||||
div.trigger($.Event('keyup', { which: 27 }))
|
||||
$div.trigger($.Event('keyup', { which: 27 }))
|
||||
|
||||
setTimeout(function () {
|
||||
assert.ok($('#modal-test').is(':visible'), 'modal still visible')
|
||||
div.remove()
|
||||
assert.ok($div.is(':visible'), 'modal still visible')
|
||||
$div.remove()
|
||||
done()
|
||||
}, 0)
|
||||
})
|
||||
|
|
|
@ -52,9 +52,9 @@
|
|||
|
||||
QUnit.moduleDone(function (obj) {
|
||||
if (obj.failed === 0) {
|
||||
console.log('\r\u2714 All tests passed in "' + obj.name + '" module')
|
||||
console.log('\r\u221A All tests passed in "' + obj.name + '" module')
|
||||
} else {
|
||||
console.log('\u2716 ' + obj.failed + ' tests failed in "' + obj.name + '" module')
|
||||
console.log('\u00D7 ' + obj.failed + ' tests failed in "' + obj.name + '" module')
|
||||
}
|
||||
sendMessage('qunit.moduleDone', obj.name, obj.failed, obj.passed, obj.total)
|
||||
})
|
||||
|
|
|
@ -187,7 +187,7 @@ $(function () {
|
|||
|
||||
QUnit.test('should render popover element using delegated selector', function (assert) {
|
||||
assert.expect(2)
|
||||
var $div = $('<div><a href="#" title="mdo" data-content="http://twitter.com/mdo">@mdo</a></div>')
|
||||
var $div = $('<div><a href="#" title="mdo" data-content="https://twitter.com/mdo">@mdo</a></div>')
|
||||
.appendTo('#qunit-fixture')
|
||||
.bootstrapPopover({
|
||||
selector: 'a',
|
||||
|
@ -259,4 +259,32 @@ $(function () {
|
|||
assert.strictEqual($popover.data('bs.popover'), undefined, 'should not initialize the popover')
|
||||
})
|
||||
|
||||
QUnit.test('should throw an error when template contains multiple top-level elements', function (assert) {
|
||||
assert.expect(1)
|
||||
assert.throws(function () {
|
||||
$('<span data-toggle="popover" data-title="some title" data-content="some content">some text</span>')
|
||||
.appendTo('#qunit-fixture')
|
||||
.bootstrapPopover({ template: '<div>Foo</div><div>Bar</div>' })
|
||||
.bootstrapPopover('show')
|
||||
}, new Error('popover `template` option must consist of exactly 1 top-level element!'))
|
||||
})
|
||||
|
||||
QUnit.test('should fire inserted event', function (assert) {
|
||||
assert.expect(2)
|
||||
var done = assert.async()
|
||||
|
||||
$('<a href="#">@Johann-S</a>')
|
||||
.appendTo('#qunit-fixture')
|
||||
.on('inserted.bs.popover', function () {
|
||||
assert.notEqual($('.popover').length, 0, 'popover was inserted')
|
||||
assert.ok(true, 'inserted event fired')
|
||||
done()
|
||||
})
|
||||
.bootstrapPopover({
|
||||
title: 'Test',
|
||||
content: 'Test'
|
||||
})
|
||||
.bootstrapPopover('show')
|
||||
})
|
||||
|
||||
})
|
||||
|
|
|
@ -139,6 +139,20 @@ $(function () {
|
|||
.bootstrapTooltip('show')
|
||||
})
|
||||
|
||||
QUnit.test('should fire inserted event', function (assert) {
|
||||
assert.expect(2)
|
||||
var done = assert.async()
|
||||
|
||||
$('<div title="tooltip title"/>')
|
||||
.appendTo('#qunit-fixture')
|
||||
.on('inserted.bs.tooltip', function () {
|
||||
assert.notEqual($('.tooltip').length, 0, 'tooltip was inserted')
|
||||
assert.ok(true, 'inserted event fired')
|
||||
done()
|
||||
})
|
||||
.bootstrapTooltip('show')
|
||||
})
|
||||
|
||||
QUnit.test('should fire shown event', function (assert) {
|
||||
assert.expect(1)
|
||||
var done = assert.async()
|
||||
|
@ -362,23 +376,19 @@ $(function () {
|
|||
assert.strictEqual($('.tooltip').length, 0, 'tooltip removed from dom')
|
||||
})
|
||||
|
||||
QUnit.test('should be placed dynamically with the dynamic placement option', function (assert) {
|
||||
QUnit.test('should be placed dynamically to viewport with the dynamic placement option', function (assert) {
|
||||
assert.expect(6)
|
||||
var $style = $('<style> a[rel="tooltip"] { display: inline-block; position: absolute; } </style>')
|
||||
var $style = $('<style> div[rel="tooltip"] { position: absolute; } #qunit-fixture { top: inherit; left: inherit } </style>').appendTo('head')
|
||||
var $container = $('<div/>')
|
||||
.css({
|
||||
position: 'absolute',
|
||||
overflow: 'hidden',
|
||||
width: 600,
|
||||
height: 400,
|
||||
top: 0,
|
||||
left: 0
|
||||
position: 'relative',
|
||||
height: '100%'
|
||||
})
|
||||
.appendTo(document.body)
|
||||
.appendTo('#qunit-fixture')
|
||||
|
||||
var $topTooltip = $('<div style="left: 0; top: 0;" rel="tooltip" title="Top tooltip">Top Dynamic Tooltip</div>')
|
||||
.appendTo($container)
|
||||
.bootstrapTooltip({ placement: 'auto' })
|
||||
.bootstrapTooltip({ placement: 'auto', viewport: '#qunit-fixture' })
|
||||
|
||||
$topTooltip.bootstrapTooltip('show')
|
||||
assert.ok($('.tooltip').is('.bottom'), 'top positioned tooltip is dynamically positioned to bottom')
|
||||
|
@ -388,7 +398,7 @@ $(function () {
|
|||
|
||||
var $rightTooltip = $('<div style="right: 0;" rel="tooltip" title="Right tooltip">Right Dynamic Tooltip</div>')
|
||||
.appendTo($container)
|
||||
.bootstrapTooltip({ placement: 'right auto' })
|
||||
.bootstrapTooltip({ placement: 'right auto', viewport: '#qunit-fixture' })
|
||||
|
||||
$rightTooltip.bootstrapTooltip('show')
|
||||
assert.ok($('.tooltip').is('.left'), 'right positioned tooltip is dynamically positioned left')
|
||||
|
@ -398,7 +408,7 @@ $(function () {
|
|||
|
||||
var $leftTooltip = $('<div style="left: 0;" rel="tooltip" title="Left tooltip">Left Dynamic Tooltip</div>')
|
||||
.appendTo($container)
|
||||
.bootstrapTooltip({ placement: 'auto left' })
|
||||
.bootstrapTooltip({ placement: 'auto left', viewport: '#qunit-fixture' })
|
||||
|
||||
$leftTooltip.bootstrapTooltip('show')
|
||||
assert.ok($('.tooltip').is('.right'), 'left positioned tooltip is dynamically positioned right')
|
||||
|
@ -436,6 +446,31 @@ $(function () {
|
|||
$styles.remove()
|
||||
})
|
||||
|
||||
QUnit.test('should position tip on top if viewport has enough space and is not parent', function (assert) {
|
||||
assert.expect(2)
|
||||
var styles = '<style>'
|
||||
+ '#section { height: 300px; border: 1px solid red; margin-top: 100px; }'
|
||||
+ 'div[rel="tooltip"] { width: 150px; border: 1px solid blue; }'
|
||||
+ '</style>'
|
||||
var $styles = $(styles).appendTo('head')
|
||||
|
||||
var $container = $('<div id="section"/>').appendTo('#qunit-fixture')
|
||||
var $target = $('<div rel="tooltip" title="tip"/>')
|
||||
.appendTo($container)
|
||||
.bootstrapTooltip({
|
||||
placement: 'auto top',
|
||||
viewport: '#qunit-fixture'
|
||||
})
|
||||
|
||||
$target.bootstrapTooltip('show')
|
||||
assert.ok($('.tooltip').is('.top'), 'top positioned tooltip is dynamically positioned to top')
|
||||
|
||||
$target.bootstrapTooltip('hide')
|
||||
assert.strictEqual($('.tooltip').length, 0, 'tooltip removed from dom')
|
||||
|
||||
$styles.remove()
|
||||
})
|
||||
|
||||
QUnit.test('should position tip on bottom if the tip\'s dimension exceeds the viewport area and placement is "auto top"', function (assert) {
|
||||
assert.expect(2)
|
||||
var styles = '<style>'
|
||||
|
@ -719,6 +754,65 @@ $(function () {
|
|||
$styles.remove()
|
||||
})
|
||||
|
||||
QUnit.test('should get viewport element from function', function (assert) {
|
||||
assert.expect(3)
|
||||
var styles = '<style>'
|
||||
+ '.tooltip, .tooltip .tooltip-inner { width: 200px; height: 200px; max-width: none; }'
|
||||
+ '.container-viewport { position: absolute; top: 50px; left: 60px; width: 300px; height: 300px; }'
|
||||
+ 'a[rel="tooltip"] { position: fixed; }'
|
||||
+ '</style>'
|
||||
var $styles = $(styles).appendTo('head')
|
||||
|
||||
var $container = $('<div class="container-viewport"/>').appendTo(document.body)
|
||||
var $target = $('<a href="#" rel="tooltip" title="tip" style="top: 50px; left: 350px;"/>').appendTo($container)
|
||||
$target
|
||||
.bootstrapTooltip({
|
||||
placement: 'bottom',
|
||||
viewport: function ($element) {
|
||||
assert.strictEqual($element[0], $target[0], 'viewport function was passed target as argument')
|
||||
return ($element.closest('.container-viewport'))
|
||||
}
|
||||
})
|
||||
|
||||
$target.bootstrapTooltip('show')
|
||||
var $tooltip = $container.find('.tooltip')
|
||||
assert.strictEqual(Math.round($tooltip.offset().left), Math.round(60 + $container.width() - $tooltip[0].offsetWidth))
|
||||
|
||||
$target.bootstrapTooltip('hide')
|
||||
assert.strictEqual($('.tooltip').length, 0, 'tooltip removed from dom')
|
||||
|
||||
$container.remove()
|
||||
$styles.remove()
|
||||
})
|
||||
|
||||
QUnit.test('should not misplace the tip when the right edge offset is greater or equal than the viewport width', function (assert) {
|
||||
assert.expect(2)
|
||||
var styles = '<style>'
|
||||
+ '.tooltip, .tooltip *, .tooltip *:before, .tooltip *:after { box-sizing: border-box; }'
|
||||
+ '.container-viewport, .container-viewport *, .container-viewport *:before, .container-viewport *:after { box-sizing: border-box; }'
|
||||
+ '.tooltip, .tooltip .tooltip-inner { width: 50px; height: 50px; max-width: none; background: red; }'
|
||||
+ '.container-viewport { padding: 100px; margin-left: 100px; width: 100px; }'
|
||||
+ '</style>'
|
||||
var $styles = $(styles).appendTo('head')
|
||||
|
||||
var $container = $('<div class="container-viewport"/>').appendTo(document.body)
|
||||
var $target = $('<a href="#" rel="tooltip" title="tip">foobar</a>')
|
||||
.appendTo($container)
|
||||
.bootstrapTooltip({
|
||||
viewport: '.container-viewport'
|
||||
})
|
||||
|
||||
$target.bootstrapTooltip('show')
|
||||
var $tooltip = $container.find('.tooltip')
|
||||
assert.strictEqual(Math.round($tooltip.offset().left), Math.round($target.position().left + $target.width() / 2 - $tooltip[0].offsetWidth / 2))
|
||||
|
||||
$target.bootstrapTooltip('hide')
|
||||
assert.strictEqual($('.tooltip').length, 0, 'tooltip removed from dom')
|
||||
|
||||
$container.remove()
|
||||
$styles.remove()
|
||||
})
|
||||
|
||||
QUnit.test('should not error when trying to show an auto-placed tooltip that has been removed from the dom', function (assert) {
|
||||
assert.expect(1)
|
||||
var passed = true
|
||||
|
@ -1180,4 +1274,52 @@ $(function () {
|
|||
assert.strictEqual($tooltip.data('bs.tooltip'), undefined, 'should not initialize the tooltip')
|
||||
})
|
||||
|
||||
QUnit.test('should throw an error when template contains multiple top-level elements', function (assert) {
|
||||
assert.expect(1)
|
||||
assert.throws(function () {
|
||||
$('<a href="#" data-toggle="tooltip" title="Another tooltip"></a>')
|
||||
.appendTo('#qunit-fixture')
|
||||
.bootstrapTooltip({ template: '<div>Foo</div><div>Bar</div>' })
|
||||
.bootstrapTooltip('show')
|
||||
}, new Error('tooltip `template` option must consist of exactly 1 top-level element!'))
|
||||
})
|
||||
|
||||
QUnit.test('should not remove tooltip if multiple triggers are set and one is still active', function (assert) {
|
||||
assert.expect(41)
|
||||
var $el = $('<button>Trigger</button>')
|
||||
.appendTo('#qunit-fixture')
|
||||
.bootstrapTooltip({ trigger: 'click hover focus', animation: false })
|
||||
var tooltip = $el.data('bs.tooltip')
|
||||
var $tooltip = tooltip.tip()
|
||||
|
||||
function showingTooltip() { return $tooltip.hasClass('in') || tooltip.hoverState == 'in' }
|
||||
|
||||
var tests = [
|
||||
['mouseenter', 'mouseleave'],
|
||||
|
||||
['focusin', 'focusout'],
|
||||
|
||||
['click', 'click'],
|
||||
|
||||
['mouseenter', 'focusin', 'focusout', 'mouseleave'],
|
||||
['mouseenter', 'focusin', 'mouseleave', 'focusout'],
|
||||
|
||||
['focusin', 'mouseenter', 'mouseleave', 'focusout'],
|
||||
['focusin', 'mouseenter', 'focusout', 'mouseleave'],
|
||||
|
||||
['click', 'focusin', 'mouseenter', 'focusout', 'mouseleave', 'click'],
|
||||
['mouseenter', 'click', 'focusin', 'focusout', 'mouseleave', 'click'],
|
||||
['mouseenter', 'focusin', 'click', 'click', 'mouseleave', 'focusout']
|
||||
]
|
||||
|
||||
assert.ok(!showingTooltip())
|
||||
|
||||
$.each(tests, function (idx, triggers) {
|
||||
for (var i = 0, len = triggers.length; i < len; i++) {
|
||||
$el.trigger(triggers[i]);
|
||||
assert.equal(i < (len - 1), showingTooltip())
|
||||
}
|
||||
})
|
||||
})
|
||||
|
||||
})
|
||||
|
|
10
bootstrap/js/tests/vendor/jquery.min.js
vendored
10
bootstrap/js/tests/vendor/jquery.min.js
vendored
File diff suppressed because one or more lines are too long
317
bootstrap/js/tests/visual/affix-with-sticky-footer.html
Executable file
317
bootstrap/js/tests/visual/affix-with-sticky-footer.html
Executable file
|
@ -0,0 +1,317 @@
|
|||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<title>Affix</title>
|
||||
<link rel="stylesheet" href="../../../dist/css/bootstrap.min.css">
|
||||
|
||||
<style>
|
||||
html {
|
||||
position: relative;
|
||||
min-height: 100%;
|
||||
}
|
||||
body {
|
||||
/* Margin bottom by footer height */
|
||||
margin-bottom: 200px;
|
||||
}
|
||||
.footer {
|
||||
position: absolute;
|
||||
bottom: 0;
|
||||
width: 100%;
|
||||
/* Set the fixed height of the footer here */
|
||||
height: 200px;
|
||||
background-color: #f5f5f5;
|
||||
}
|
||||
/* Test Styles */
|
||||
.affixed-element-top.affix {
|
||||
top: 10px;
|
||||
}
|
||||
.affixed-element-top.affix-bottom {
|
||||
position: absolute;
|
||||
}
|
||||
.affixed-element-bottom {
|
||||
margin-bottom: 0;
|
||||
}
|
||||
.affixed-element-bottom.affix {
|
||||
bottom: 10px;
|
||||
}
|
||||
.affixed-element-bottom.affix-bottom {
|
||||
position: relative;
|
||||
}
|
||||
.grow-btn, .shrink-btn {
|
||||
color: #FFF;
|
||||
}
|
||||
.grow-btn {
|
||||
background-color: #2ECC40;
|
||||
}
|
||||
.grow-btn:hover {
|
||||
background-color: #3D9970;
|
||||
}
|
||||
.shrink-btn {
|
||||
background-color: #FF4136;
|
||||
}
|
||||
.shrink-btn:hover {
|
||||
background-color: #85144B;
|
||||
}
|
||||
</style>
|
||||
|
||||
<!-- 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:// -->
|
||||
<!--[if lt IE 9]>
|
||||
<script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
|
||||
<script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
|
||||
<![endif]-->
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div class="container">
|
||||
|
||||
<div class="page-header js-page-header">
|
||||
<h1>Affix <small>Bootstrap Visual Test</small></h1>
|
||||
</div>
|
||||
|
||||
<div class="col-md-3">
|
||||
<ul class="list-group affixed-element-top js-affixed-element-top">
|
||||
<li class="list-group-item">Cras justo odio</li>
|
||||
<li class="list-group-item">Dapibus ac facilisis in</li>
|
||||
<li class="list-group-item">Morbi leo risus</li>
|
||||
<li class="list-group-item">Porta ac consectetur ac</li>
|
||||
<li class="list-group-item">Vestibulum at eros</li>
|
||||
<li class="list-group-item">Cras justo odio</li>
|
||||
<li class="list-group-item">Dapibus ac facilisis in</li>
|
||||
<li class="list-group-item">Morbi leo risus</li>
|
||||
<li class="list-group-item">Porta ac consectetur ac</li>
|
||||
<li class="list-group-item">Vestibulum at eros</li>
|
||||
<li class="list-group-item">Cras justo odio</li>
|
||||
<li class="list-group-item">Dapibus ac facilisis in</li>
|
||||
<li class="list-group-item">Morbi leo risus</li>
|
||||
<li class="list-group-item">Porta ac consectetur ac</li>
|
||||
<li class="list-group-item">Vestibulum at eros</li>
|
||||
<li class="list-group-item">Porta ac consectetur ac</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class="col-md-6 js-content">
|
||||
|
||||
<p>Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor. Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Duis mollis, est non commodo luctus, nisi erat porttitor ligula, eget lacinia odio sem nec elit. Donec ullamcorper nulla non metus auctor fringilla. Nulla vitae elit libero, a pharetra augue. Maecenas sed diam eget risus varius blandit sit amet non magna.</p>
|
||||
|
||||
<p>Nullam id dolor id nibh ultricies vehicula ut id elit. Etiam porta sem malesuada magna mollis euismod. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Curabitur blandit tempus porttitor. Cras justo odio, dapibus ac facilisis in, egestas eget quam.</p>
|
||||
|
||||
<p>Sed posuere consectetur est at lobortis. Maecenas faucibus mollis interdum. Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor. Nulla vitae elit libero, a pharetra augue. Nulla vitae elit libero, a pharetra augue.</p>
|
||||
|
||||
<p>Aenean lacinia bibendum nulla sed consectetur. Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum. Nulla vitae elit libero, a pharetra augue. Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh, ut fermentum massa justo sit amet risus. Cras mattis consectetur purus sit amet fermentum. Sed posuere consectetur est at lobortis. Morbi leo risus, porta ac consectetur ac, vestibulum at eros.</p>
|
||||
|
||||
<p>Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor. Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Duis mollis, est non commodo luctus, nisi erat porttitor ligula, eget lacinia odio sem nec elit. Donec ullamcorper nulla non metus auctor fringilla. Nulla vitae elit libero, a pharetra augue. Maecenas sed diam eget risus varius blandit sit amet non magna.</p>
|
||||
|
||||
<p>Nullam id dolor id nibh ultricies vehicula ut id elit. Etiam porta sem malesuada magna mollis euismod. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Curabitur blandit tempus porttitor. Cras justo odio, dapibus ac facilisis in, egestas eget quam.</p>
|
||||
|
||||
<p>Sed posuere consectetur est at lobortis. Maecenas faucibus mollis interdum. Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor. Nulla vitae elit libero, a pharetra augue. Nulla vitae elit libero, a pharetra augue.</p>
|
||||
|
||||
<p>Aenean lacinia bibendum nulla sed consectetur. Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum. Nulla vitae elit libero, a pharetra augue. Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh, ut fermentum massa justo sit amet risus. Cras mattis consectetur purus sit amet fermentum. Sed posuere consectetur est at lobortis. Morbi leo risus, porta ac consectetur ac, vestibulum at eros.</p>
|
||||
|
||||
<p>Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor. Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Duis mollis, est non commodo luctus, nisi erat porttitor ligula, eget lacinia odio sem nec elit. Donec ullamcorper nulla non metus auctor fringilla. Nulla vitae elit libero, a pharetra augue. Maecenas sed diam eget risus varius blandit sit amet non magna.</p>
|
||||
|
||||
<p>Nullam id dolor id nibh ultricies vehicula ut id elit. Etiam porta sem malesuada magna mollis euismod. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Curabitur blandit tempus porttitor. Cras justo odio, dapibus ac facilisis in, egestas eget quam.</p>
|
||||
|
||||
<p>Sed posuere consectetur est at lobortis. Maecenas faucibus mollis interdum. Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor. Nulla vitae elit libero, a pharetra augue. Nulla vitae elit libero, a pharetra augue.</p>
|
||||
|
||||
<p>Aenean lacinia bibendum nulla sed consectetur. Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum. Nulla vitae elit libero, a pharetra augue. Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh, ut fermentum massa justo sit amet risus. Cras mattis consectetur purus sit amet fermentum. Sed posuere consectetur est at lobortis. Morbi leo risus, porta ac consectetur ac, vestibulum at eros.</p>
|
||||
|
||||
<p>Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor. Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Duis mollis, est non commodo luctus, nisi erat porttitor ligula, eget lacinia odio sem nec elit. Donec ullamcorper nulla non metus auctor fringilla. Nulla vitae elit libero, a pharetra augue. Maecenas sed diam eget risus varius blandit sit amet non magna.</p>
|
||||
|
||||
<p>Nullam id dolor id nibh ultricies vehicula ut id elit. Etiam porta sem malesuada magna mollis euismod. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Curabitur blandit tempus porttitor. Cras justo odio, dapibus ac facilisis in, egestas eget quam.</p>
|
||||
|
||||
<p>Sed posuere consectetur est at lobortis. Maecenas faucibus mollis interdum. Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor. Nulla vitae elit libero, a pharetra augue. Nulla vitae elit libero, a pharetra augue.</p>
|
||||
|
||||
<p>Aenean lacinia bibendum nulla sed consectetur. Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum. Nulla vitae elit libero, a pharetra augue. Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh, ut fermentum massa justo sit amet risus. Cras mattis consectetur purus sit amet fermentum. Sed posuere consectetur est at lobortis. Morbi leo risus, porta ac consectetur ac, vestibulum at eros.</p>
|
||||
<p>Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor. Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Duis mollis, est non commodo luctus, nisi erat porttitor ligula, eget lacinia odio sem nec elit. Donec ullamcorper nulla non metus auctor fringilla. Nulla vitae elit libero, a pharetra augue. Maecenas sed diam eget risus varius blandit sit amet non magna.</p>
|
||||
|
||||
<p>Nullam id dolor id nibh ultricies vehicula ut id elit. Etiam porta sem malesuada magna mollis euismod. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Curabitur blandit tempus porttitor. Cras justo odio, dapibus ac facilisis in, egestas eget quam.</p>
|
||||
|
||||
<p>Sed posuere consectetur est at lobortis. Maecenas faucibus mollis interdum. Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor. Nulla vitae elit libero, a pharetra augue. Nulla vitae elit libero, a pharetra augue.</p>
|
||||
|
||||
<p>Aenean lacinia bibendum nulla sed consectetur. Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum. Nulla vitae elit libero, a pharetra augue. Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh, ut fermentum massa justo sit amet risus. Cras mattis consectetur purus sit amet fermentum. Sed posuere consectetur est at lobortis. Morbi leo risus, porta ac consectetur ac, vestibulum at eros.</p>
|
||||
|
||||
<p>Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor. Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Duis mollis, est non commodo luctus, nisi erat porttitor ligula, eget lacinia odio sem nec elit. Donec ullamcorper nulla non metus auctor fringilla. Nulla vitae elit libero, a pharetra augue. Maecenas sed diam eget risus varius blandit sit amet non magna.</p>
|
||||
|
||||
<p>Nullam id dolor id nibh ultricies vehicula ut id elit. Etiam porta sem malesuada magna mollis euismod. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Curabitur blandit tempus porttitor. Cras justo odio, dapibus ac facilisis in, egestas eget quam.</p>
|
||||
|
||||
<p>Sed posuere consectetur est at lobortis. Maecenas faucibus mollis interdum. Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor. Nulla vitae elit libero, a pharetra augue. Nulla vitae elit libero, a pharetra augue.</p>
|
||||
|
||||
<p>Aenean lacinia bibendum nulla sed consectetur. Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum. Nulla vitae elit libero, a pharetra augue. Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh, ut fermentum massa justo sit amet risus. Cras mattis consectetur purus sit amet fermentum. Sed posuere consectetur est at lobortis. Morbi leo risus, porta ac consectetur ac, vestibulum at eros.</p>
|
||||
<p>Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor. Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Duis mollis, est non commodo luctus, nisi erat porttitor ligula, eget lacinia odio sem nec elit. Donec ullamcorper nulla non metus auctor fringilla. Nulla vitae elit libero, a pharetra augue. Maecenas sed diam eget risus varius blandit sit amet non magna.</p>
|
||||
|
||||
<p>Nullam id dolor id nibh ultricies vehicula ut id elit. Etiam porta sem malesuada magna mollis euismod. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Curabitur blandit tempus porttitor. Cras justo odio, dapibus ac facilisis in, egestas eget quam.</p>
|
||||
|
||||
<p>Sed posuere consectetur est at lobortis. Maecenas faucibus mollis interdum. Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor. Nulla vitae elit libero, a pharetra augue. Nulla vitae elit libero, a pharetra augue.</p>
|
||||
|
||||
<p>Aenean lacinia bibendum nulla sed consectetur. Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum. Nulla vitae elit libero, a pharetra augue. Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh, ut fermentum massa justo sit amet risus. Cras mattis consectetur purus sit amet fermentum. Sed posuere consectetur est at lobortis. Morbi leo risus, porta ac consectetur ac, vestibulum at eros.</p>
|
||||
|
||||
<p>Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor. Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Duis mollis, est non commodo luctus, nisi erat porttitor ligula, eget lacinia odio sem nec elit. Donec ullamcorper nulla non metus auctor fringilla. Nulla vitae elit libero, a pharetra augue. Maecenas sed diam eget risus varius blandit sit amet non magna.</p>
|
||||
|
||||
<p>Nullam id dolor id nibh ultricies vehicula ut id elit. Etiam porta sem malesuada magna mollis euismod. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Curabitur blandit tempus porttitor. Cras justo odio, dapibus ac facilisis in, egestas eget quam.</p>
|
||||
|
||||
<p>Sed posuere consectetur est at lobortis. Maecenas faucibus mollis interdum. Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor. Nulla vitae elit libero, a pharetra augue. Nulla vitae elit libero, a pharetra augue.</p>
|
||||
|
||||
<p>Aenean lacinia bibendum nulla sed consectetur. Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum. Nulla vitae elit libero, a pharetra augue. Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh, ut fermentum massa justo sit amet risus. Cras mattis consectetur purus sit amet fermentum. Sed posuere consectetur est at lobortis. Morbi leo risus, porta ac consectetur ac, vestibulum at eros.</p>
|
||||
<p>Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor. Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Duis mollis, est non commodo luctus, nisi erat porttitor ligula, eget lacinia odio sem nec elit. Donec ullamcorper nulla non metus auctor fringilla. Nulla vitae elit libero, a pharetra augue. Maecenas sed diam eget risus varius blandit sit amet non magna.</p>
|
||||
|
||||
<p>Nullam id dolor id nibh ultricies vehicula ut id elit. Etiam porta sem malesuada magna mollis euismod. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Curabitur blandit tempus porttitor. Cras justo odio, dapibus ac facilisis in, egestas eget quam.</p>
|
||||
|
||||
<p>Sed posuere consectetur est at lobortis. Maecenas faucibus mollis interdum. Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor. Nulla vitae elit libero, a pharetra augue. Nulla vitae elit libero, a pharetra augue.</p>
|
||||
|
||||
<p>Aenean lacinia bibendum nulla sed consectetur. Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum. Nulla vitae elit libero, a pharetra augue. Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh, ut fermentum massa justo sit amet risus. Cras mattis consectetur purus sit amet fermentum. Sed posuere consectetur est at lobortis. Morbi leo risus, porta ac consectetur ac, vestibulum at eros.</p>
|
||||
|
||||
<p>Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor. Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Duis mollis, est non commodo luctus, nisi erat porttitor ligula, eget lacinia odio sem nec elit. Donec ullamcorper nulla non metus auctor fringilla. Nulla vitae elit libero, a pharetra augue. Maecenas sed diam eget risus varius blandit sit amet non magna.</p>
|
||||
|
||||
<p>Nullam id dolor id nibh ultricies vehicula ut id elit. Etiam porta sem malesuada magna mollis euismod. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Curabitur blandit tempus porttitor. Cras justo odio, dapibus ac facilisis in, egestas eget quam.</p>
|
||||
|
||||
<p>Sed posuere consectetur est at lobortis. Maecenas faucibus mollis interdum. Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor. Nulla vitae elit libero, a pharetra augue. Nulla vitae elit libero, a pharetra augue.</p>
|
||||
|
||||
<p>Aenean lacinia bibendum nulla sed consectetur. Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum. Nulla vitae elit libero, a pharetra augue. Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh, ut fermentum massa justo sit amet risus. Cras mattis consectetur purus sit amet fermentum. Sed posuere consectetur est at lobortis. Morbi leo risus, porta ac consectetur ac, vestibulum at eros.</p>
|
||||
<p>Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor. Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Duis mollis, est non commodo luctus, nisi erat porttitor ligula, eget lacinia odio sem nec elit. Donec ullamcorper nulla non metus auctor fringilla. Nulla vitae elit libero, a pharetra augue. Maecenas sed diam eget risus varius blandit sit amet non magna.</p>
|
||||
|
||||
<p>Nullam id dolor id nibh ultricies vehicula ut id elit. Etiam porta sem malesuada magna mollis euismod. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Curabitur blandit tempus porttitor. Cras justo odio, dapibus ac facilisis in, egestas eget quam.</p>
|
||||
|
||||
<p>Sed posuere consectetur est at lobortis. Maecenas faucibus mollis interdum. Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor. Nulla vitae elit libero, a pharetra augue. Nulla vitae elit libero, a pharetra augue.</p>
|
||||
|
||||
<p>Aenean lacinia bibendum nulla sed consectetur. Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum. Nulla vitae elit libero, a pharetra augue. Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh, ut fermentum massa justo sit amet risus. Cras mattis consectetur purus sit amet fermentum. Sed posuere consectetur est at lobortis. Morbi leo risus, porta ac consectetur ac, vestibulum at eros.</p>
|
||||
|
||||
<p>Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor. Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Duis mollis, est non commodo luctus, nisi erat porttitor ligula, eget lacinia odio sem nec elit. Donec ullamcorper nulla non metus auctor fringilla. Nulla vitae elit libero, a pharetra augue. Maecenas sed diam eget risus varius blandit sit amet non magna.</p>
|
||||
|
||||
<p>Nullam id dolor id nibh ultricies vehicula ut id elit. Etiam porta sem malesuada magna mollis euismod. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Curabitur blandit tempus porttitor. Cras justo odio, dapibus ac facilisis in, egestas eget quam.</p>
|
||||
|
||||
<p>Sed posuere consectetur est at lobortis. Maecenas faucibus mollis interdum. Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor. Nulla vitae elit libero, a pharetra augue. Nulla vitae elit libero, a pharetra augue.</p>
|
||||
|
||||
<p>Aenean lacinia bibendum nulla sed consectetur. Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum. Nulla vitae elit libero, a pharetra augue. Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh, ut fermentum massa justo sit amet risus. Cras mattis consectetur purus sit amet fermentum. Sed posuere consectetur est at lobortis. Morbi leo risus, porta ac consectetur ac, vestibulum at eros.</p>
|
||||
<p>Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor. Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Duis mollis, est non commodo luctus, nisi erat porttitor ligula, eget lacinia odio sem nec elit. Donec ullamcorper nulla non metus auctor fringilla. Nulla vitae elit libero, a pharetra augue. Maecenas sed diam eget risus varius blandit sit amet non magna.</p>
|
||||
|
||||
<p>Nullam id dolor id nibh ultricies vehicula ut id elit. Etiam porta sem malesuada magna mollis euismod. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Curabitur blandit tempus porttitor. Cras justo odio, dapibus ac facilisis in, egestas eget quam.</p>
|
||||
|
||||
<p>Sed posuere consectetur est at lobortis. Maecenas faucibus mollis interdum. Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor. Nulla vitae elit libero, a pharetra augue. Nulla vitae elit libero, a pharetra augue.</p>
|
||||
|
||||
<p>Aenean lacinia bibendum nulla sed consectetur. Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum. Nulla vitae elit libero, a pharetra augue. Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh, ut fermentum massa justo sit amet risus. Cras mattis consectetur purus sit amet fermentum. Sed posuere consectetur est at lobortis. Morbi leo risus, porta ac consectetur ac, vestibulum at eros.</p>
|
||||
|
||||
<p>Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor. Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Duis mollis, est non commodo luctus, nisi erat porttitor ligula, eget lacinia odio sem nec elit. Donec ullamcorper nulla non metus auctor fringilla. Nulla vitae elit libero, a pharetra augue. Maecenas sed diam eget risus varius blandit sit amet non magna.</p>
|
||||
|
||||
<p>Nullam id dolor id nibh ultricies vehicula ut id elit. Etiam porta sem malesuada magna mollis euismod. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Curabitur blandit tempus porttitor. Cras justo odio, dapibus ac facilisis in, egestas eget quam.</p>
|
||||
|
||||
<p>Sed posuere consectetur est at lobortis. Maecenas faucibus mollis interdum. Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor. Nulla vitae elit libero, a pharetra augue. Nulla vitae elit libero, a pharetra augue.</p>
|
||||
|
||||
<p>Aenean lacinia bibendum nulla sed consectetur. Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum. Nulla vitae elit libero, a pharetra augue. Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh, ut fermentum massa justo sit amet risus. Cras mattis consectetur purus sit amet fermentum. Sed posuere consectetur est at lobortis. Morbi leo risus, porta ac consectetur ac, vestibulum at eros.</p>
|
||||
<p>Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor. Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Duis mollis, est non commodo luctus, nisi erat porttitor ligula, eget lacinia odio sem nec elit. Donec ullamcorper nulla non metus auctor fringilla. Nulla vitae elit libero, a pharetra augue. Maecenas sed diam eget risus varius blandit sit amet non magna.</p>
|
||||
|
||||
<p>Nullam id dolor id nibh ultricies vehicula ut id elit. Etiam porta sem malesuada magna mollis euismod. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Curabitur blandit tempus porttitor. Cras justo odio, dapibus ac facilisis in, egestas eget quam.</p>
|
||||
|
||||
<p>Sed posuere consectetur est at lobortis. Maecenas faucibus mollis interdum. Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor. Nulla vitae elit libero, a pharetra augue. Nulla vitae elit libero, a pharetra augue.</p>
|
||||
|
||||
<p>Aenean lacinia bibendum nulla sed consectetur. Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum. Nulla vitae elit libero, a pharetra augue. Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh, ut fermentum massa justo sit amet risus. Cras mattis consectetur purus sit amet fermentum. Sed posuere consectetur est at lobortis. Morbi leo risus, porta ac consectetur ac, vestibulum at eros.</p>
|
||||
|
||||
<p>Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor. Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Duis mollis, est non commodo luctus, nisi erat porttitor ligula, eget lacinia odio sem nec elit. Donec ullamcorper nulla non metus auctor fringilla. Nulla vitae elit libero, a pharetra augue. Maecenas sed diam eget risus varius blandit sit amet non magna.</p>
|
||||
|
||||
<p>Nullam id dolor id nibh ultricies vehicula ut id elit. Etiam porta sem malesuada magna mollis euismod. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Curabitur blandit tempus porttitor. Cras justo odio, dapibus ac facilisis in, egestas eget quam.</p>
|
||||
|
||||
<p>Sed posuere consectetur est at lobortis. Maecenas faucibus mollis interdum. Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor. Nulla vitae elit libero, a pharetra augue. Nulla vitae elit libero, a pharetra augue.</p>
|
||||
|
||||
<p>Aenean lacinia bibendum nulla sed consectetur. Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum. Nulla vitae elit libero, a pharetra augue. Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh, ut fermentum massa justo sit amet risus. Cras mattis consectetur purus sit amet fermentum. Sed posuere consectetur est at lobortis. Morbi leo risus, porta ac consectetur ac, vestibulum at eros.</p>
|
||||
<p>Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor. Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Duis mollis, est non commodo luctus, nisi erat porttitor ligula, eget lacinia odio sem nec elit. Donec ullamcorper nulla non metus auctor fringilla. Nulla vitae elit libero, a pharetra augue. Maecenas sed diam eget risus varius blandit sit amet non magna.</p>
|
||||
|
||||
<p>Nullam id dolor id nibh ultricies vehicula ut id elit. Etiam porta sem malesuada magna mollis euismod. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Curabitur blandit tempus porttitor. Cras justo odio, dapibus ac facilisis in, egestas eget quam.</p>
|
||||
|
||||
<p>Sed posuere consectetur est at lobortis. Maecenas faucibus mollis interdum. Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor. Nulla vitae elit libero, a pharetra augue. Nulla vitae elit libero, a pharetra augue.</p>
|
||||
|
||||
<p>Aenean lacinia bibendum nulla sed consectetur. Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum. Nulla vitae elit libero, a pharetra augue. Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh, ut fermentum massa justo sit amet risus. Cras mattis consectetur purus sit amet fermentum. Sed posuere consectetur est at lobortis. Morbi leo risus, porta ac consectetur ac, vestibulum at eros.</p>
|
||||
|
||||
<p>Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor. Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Duis mollis, est non commodo luctus, nisi erat porttitor ligula, eget lacinia odio sem nec elit. Donec ullamcorper nulla non metus auctor fringilla. Nulla vitae elit libero, a pharetra augue. Maecenas sed diam eget risus varius blandit sit amet non magna.</p>
|
||||
|
||||
<p>Nullam id dolor id nibh ultricies vehicula ut id elit. Etiam porta sem malesuada magna mollis euismod. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Curabitur blandit tempus porttitor. Cras justo odio, dapibus ac facilisis in, egestas eget quam.</p>
|
||||
|
||||
<p>Sed posuere consectetur est at lobortis. Maecenas faucibus mollis interdum. Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor. Nulla vitae elit libero, a pharetra augue. Nulla vitae elit libero, a pharetra augue.</p>
|
||||
|
||||
<p>Aenean lacinia bibendum nulla sed consectetur. Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum. Nulla vitae elit libero, a pharetra augue. Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh, ut fermentum massa justo sit amet risus. Cras mattis consectetur purus sit amet fermentum. Sed posuere consectetur est at lobortis. Morbi leo risus, porta ac consectetur ac, vestibulum at eros.</p>
|
||||
<p>Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor. Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Duis mollis, est non commodo luctus, nisi erat porttitor ligula, eget lacinia odio sem nec elit. Donec ullamcorper nulla non metus auctor fringilla. Nulla vitae elit libero, a pharetra augue. Maecenas sed diam eget risus varius blandit sit amet non magna.</p>
|
||||
|
||||
<p>Nullam id dolor id nibh ultricies vehicula ut id elit. Etiam porta sem malesuada magna mollis euismod. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Curabitur blandit tempus porttitor. Cras justo odio, dapibus ac facilisis in, egestas eget quam.</p>
|
||||
|
||||
<p>Sed posuere consectetur est at lobortis. Maecenas faucibus mollis interdum. Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor. Nulla vitae elit libero, a pharetra augue. Nulla vitae elit libero, a pharetra augue.</p>
|
||||
|
||||
<p>Aenean lacinia bibendum nulla sed consectetur. Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum. Nulla vitae elit libero, a pharetra augue. Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh, ut fermentum massa justo sit amet risus. Cras mattis consectetur purus sit amet fermentum. Sed posuere consectetur est at lobortis. Morbi leo risus, porta ac consectetur ac, vestibulum at eros.</p>
|
||||
|
||||
<p>Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor. Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Duis mollis, est non commodo luctus, nisi erat porttitor ligula, eget lacinia odio sem nec elit. Donec ullamcorper nulla non metus auctor fringilla. Nulla vitae elit libero, a pharetra augue. Maecenas sed diam eget risus varius blandit sit amet non magna.</p>
|
||||
|
||||
<p>Nullam id dolor id nibh ultricies vehicula ut id elit. Etiam porta sem malesuada magna mollis euismod. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Curabitur blandit tempus porttitor. Cras justo odio, dapibus ac facilisis in, egestas eget quam.</p>
|
||||
|
||||
<p>Sed posuere consectetur est at lobortis. Maecenas faucibus mollis interdum. Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor. Nulla vitae elit libero, a pharetra augue. Nulla vitae elit libero, a pharetra augue.</p>
|
||||
|
||||
<p>Aenean lacinia bibendum nulla sed consectetur. Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum. Nulla vitae elit libero, a pharetra augue. Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh, ut fermentum massa justo sit amet risus. Cras mattis consectetur purus sit amet fermentum. Sed posuere consectetur est at lobortis. Morbi leo risus, porta ac consectetur ac, vestibulum at eros.</p>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="col-md-3">
|
||||
<ul class="list-group affixed-element-bottom js-affixed-element-bottom">
|
||||
<li class="list-group-item">Sit necessitatibus aspernatur.</li>
|
||||
<li class="list-group-item">Adipisicing alias dolor!</li>
|
||||
<li class="list-group-item">Ipsum molestiae impedit.</li>
|
||||
<li class="list-group-item">Amet quis iste?</li>
|
||||
<li class="list-group-item">Ipsum quaerat porro.</li>
|
||||
<li class="list-group-item">Elit lorem libero.</li>
|
||||
<li class="list-group-item">Ipsum dolore facilis.</li>
|
||||
<li class="list-group-item">Elit ad atque.</li>
|
||||
<li class="list-group-item">Dolor amet sequi!</li>
|
||||
<li class="list-group-item">Consectetur voluptatum facilis!</li>
|
||||
<li class="list-group-item">Sit neque eligendi?</li>
|
||||
<li class="list-group-item">Amet fuga consectetur!</li>
|
||||
<li class="list-group-item">Amet molestias repellat!</li>
|
||||
<li class="list-group-item">Consectetur minima repellendus.</li>
|
||||
<li class="list-group-item grow-btn js-grow-btn">Grow content</li>
|
||||
<li class="list-group-item shrink-btn js-shrink-btn">Shrink content</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
<footer class="footer js-footer">
|
||||
<div class="container">
|
||||
<p class="text-muted">Place sticky footer content here.</p>
|
||||
</div>
|
||||
</footer>
|
||||
|
||||
<!-- JavaScript Includes -->
|
||||
<script src="../vendor/jquery.min.js"></script>
|
||||
<script src="../../transition.js"></script>
|
||||
<script src="../../affix.js"></script>
|
||||
|
||||
|
||||
<!-- JavaScript Test -->
|
||||
<script>
|
||||
$(function () {
|
||||
$('.js-affixed-element-top').affix({
|
||||
offset: {
|
||||
top: $('.js-page-header').outerHeight(true) - 10
|
||||
, bottom: $('.js-footer').outerHeight(true) + 10
|
||||
}
|
||||
})
|
||||
// todo(fat): sux you have to do this.
|
||||
.on('affix.bs.affix', function (e) {
|
||||
$(e.target).width(e.target.offsetWidth)
|
||||
})
|
||||
|
||||
$('.js-affixed-element-bottom').affix({
|
||||
offset: {
|
||||
bottom: $('.js-footer').outerHeight(true) + 10
|
||||
}
|
||||
})
|
||||
|
||||
$('.js-grow-btn').on('click', function() {
|
||||
$('.js-content').append('<p>Ipsum corrupti ipsam est temporibus.</p>')
|
||||
})
|
||||
$('.js-shrink-btn').on('click', function() {
|
||||
$('.js-content p').last().remove()
|
||||
})
|
||||
})
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
|
@ -26,7 +26,7 @@
|
|||
<div class="panel panel-default">
|
||||
<div class="panel-heading">
|
||||
<h4 class="panel-title">
|
||||
<a data-toggle="collapse" data-parent="#accordion" href="#collapseOne">
|
||||
<a role="button" data-toggle="collapse" data-parent="#accordion" href="#collapseOne">
|
||||
Collapsible Group Item #1
|
||||
</a>
|
||||
</h4>
|
||||
|
@ -40,7 +40,7 @@
|
|||
<div class="panel panel-default">
|
||||
<div class="panel-heading">
|
||||
<h4 class="panel-title">
|
||||
<a data-toggle="collapse" data-parent="#accordion" href="#collapseTwo">
|
||||
<a role="button" data-toggle="collapse" data-parent="#accordion" href="#collapseTwo">
|
||||
Collapsible Group Item #2
|
||||
</a>
|
||||
</h4>
|
||||
|
@ -54,7 +54,7 @@
|
|||
<div class="panel panel-default">
|
||||
<div class="panel-heading">
|
||||
<h4 class="panel-title">
|
||||
<a data-toggle="collapse" data-parent="#accordion" href="#collapseThree">
|
||||
<a role="button" data-toggle="collapse" data-parent="#accordion" href="#collapseThree">
|
||||
Collapsible Group Item #3
|
||||
</a>
|
||||
</h4>
|
||||
|
|
|
@ -36,35 +36,35 @@
|
|||
<div class="collapse navbar-collapse bs-example-js-navbar-collapse">
|
||||
<ul class="nav navbar-nav">
|
||||
<li class="dropdown">
|
||||
<a id="drop1" href="#" role="button" class="dropdown-toggle" data-toggle="dropdown">Dropdown <b class="caret"></b></a>
|
||||
<ul class="dropdown-menu" role="menu" aria-labelledby="drop1">
|
||||
<li role="presentation"><a role="menuitem" tabindex="-1" href="https://twitter.com/fat">Action</a></li>
|
||||
<li role="presentation"><a role="menuitem" tabindex="-1" href="https://twitter.com/fat">Another action</a></li>
|
||||
<li role="presentation"><a role="menuitem" tabindex="-1" href="https://twitter.com/fat">Something else here</a></li>
|
||||
<li role="presentation" class="divider"></li>
|
||||
<li role="presentation"><a role="menuitem" tabindex="-1" href="https://twitter.com/fat">Separated link</a></li>
|
||||
<a id="drop1" href="#" role="button" class="dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Dropdown <b class="caret"></b></a>
|
||||
<ul class="dropdown-menu" aria-labelledby="drop1">
|
||||
<li><a href="#">Action</a></li>
|
||||
<li><a href="#">Another action</a></li>
|
||||
<li><a href="#">Something else here</a></li>
|
||||
<li role="separator" class="divider"></li>
|
||||
<li><a href="#">Separated link</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="dropdown">
|
||||
<a href="#" id="drop2" role="button" class="dropdown-toggle" data-toggle="dropdown">Dropdown 2 <b class="caret"></b></a>
|
||||
<ul class="dropdown-menu" role="menu" aria-labelledby="drop2">
|
||||
<li role="presentation"><a role="menuitem" tabindex="-1" href="https://twitter.com/fat">Action</a></li>
|
||||
<li role="presentation"><a role="menuitem" tabindex="-1" href="https://twitter.com/fat">Another action</a></li>
|
||||
<li role="presentation"><a role="menuitem" tabindex="-1" href="https://twitter.com/fat">Something else here</a></li>
|
||||
<li role="presentation" class="divider"></li>
|
||||
<li role="presentation"><a role="menuitem" tabindex="-1" href="https://twitter.com/fat">Separated link</a></li>
|
||||
<a href="#" id="drop2" role="button" class="dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Dropdown 2 <b class="caret"></b></a>
|
||||
<ul class="dropdown-menu" aria-labelledby="drop2">
|
||||
<li><a href="#">Action</a></li>
|
||||
<li><a href="#">Another action</a></li>
|
||||
<li><a href="#">Something else here</a></li>
|
||||
<li role="separator" class="divider"></li>
|
||||
<li><a href="#">Separated link</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
<ul class="nav navbar-nav navbar-right">
|
||||
<li id="fat-menu" class="dropdown">
|
||||
<a href="#" id="drop3" role="button" class="dropdown-toggle" data-toggle="dropdown">Dropdown 3 <b class="caret"></b></a>
|
||||
<ul class="dropdown-menu" role="menu" aria-labelledby="drop3">
|
||||
<li role="presentation"><a role="menuitem" tabindex="-1" href="https://twitter.com/fat">Action</a></li>
|
||||
<li role="presentation"><a role="menuitem" tabindex="-1" href="https://twitter.com/fat">Another action</a></li>
|
||||
<li role="presentation"><a role="menuitem" tabindex="-1" href="https://twitter.com/fat">Something else here</a></li>
|
||||
<li role="presentation" class="divider"></li>
|
||||
<li role="presentation"><a role="menuitem" tabindex="-1" href="https://twitter.com/fat">Separated link</a></li>
|
||||
<a href="#" id="drop3" role="button" class="dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Dropdown 3 <b class="caret"></b></a>
|
||||
<ul class="dropdown-menu" aria-labelledby="drop3">
|
||||
<li><a href="#">Action</a></li>
|
||||
<li><a href="#">Another action</a></li>
|
||||
<li><a href="#">Something else here</a></li>
|
||||
<li role="separator" class="divider"></li>
|
||||
<li><a href="#">Separated link</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
|
@ -75,23 +75,23 @@
|
|||
<ul class="nav nav-pills">
|
||||
<li class="active"><a href="#">Regular link</a></li>
|
||||
<li class="dropdown">
|
||||
<a id="drop4" role="button" data-toggle="dropdown" href="#">Dropdown <b class="caret"></b></a>
|
||||
<ul id="menu1" class="dropdown-menu" role="menu" aria-labelledby="drop4">
|
||||
<li role="presentation"><a role="menuitem" tabindex="-1" href="https://twitter.com/fat">Action</a></li>
|
||||
<li role="presentation"><a role="menuitem" tabindex="-1" href="https://twitter.com/fat">Another action</a></li>
|
||||
<li role="presentation"><a role="menuitem" tabindex="-1" href="https://twitter.com/fat">Something else here</a></li>
|
||||
<li role="presentation" class="divider"></li>
|
||||
<li role="presentation"><a role="menuitem" tabindex="-1" href="https://twitter.com/fat">Separated link</a></li>
|
||||
<a id="drop4" role="button" data-toggle="dropdown" href="#" aria-haspopup="true" aria-expanded="false">Dropdown <b class="caret"></b></a>
|
||||
<ul id="menu1" class="dropdown-menu" aria-labelledby="drop4">
|
||||
<li><a href="#">Action</a></li>
|
||||
<li><a href="#">Another action</a></li>
|
||||
<li><a href="#">Something else here</a></li>
|
||||
<li role="separator" class="divider"></li>
|
||||
<li><a href="#">Separated link</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="dropdown">
|
||||
<a id="drop5" role="button" data-toggle="dropdown" href="#">Dropdown 2 <b class="caret"></b></a>
|
||||
<ul id="menu2" class="dropdown-menu" role="menu" aria-labelledby="drop5">
|
||||
<li role="presentation"><a role="menuitem" tabindex="-1" href="https://twitter.com/fat">Action</a></li>
|
||||
<li role="presentation"><a role="menuitem" tabindex="-1" href="https://twitter.com/fat">Another action</a></li>
|
||||
<li role="presentation"><a role="menuitem" tabindex="-1" href="https://twitter.com/fat">Something else here</a></li>
|
||||
<li role="presentation" class="divider"></li>
|
||||
<li role="presentation"><a role="menuitem" tabindex="-1" href="https://twitter.com/fat">Separated link</a></li>
|
||||
<a id="drop5" role="button" data-toggle="dropdown" href="#" aria-haspopup="true" aria-expanded="false">Dropdown 2 <b class="caret"></b></a>
|
||||
<ul id="menu2" class="dropdown-menu" aria-labelledby="drop5">
|
||||
<li><a href="#">Action</a></li>
|
||||
<li><a href="#">Another action</a></li>
|
||||
<li><a href="#">Something else here</a></li>
|
||||
<li role="separator" class="divider"></li>
|
||||
<li><a href="#">Separated link</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
|
|
|
@ -54,7 +54,7 @@
|
|||
<h1>Modal <small>Bootstrap Visual Test</small></h1>
|
||||
</div>
|
||||
|
||||
<div id="myModal" class="modal fade" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
|
||||
<div id="myModal" class="modal fade" tabindex="-1" role="dialog" aria-labelledby="myModalLabel">
|
||||
<div class="modal-dialog">
|
||||
<div class="modal-content">
|
||||
|
||||
|
@ -76,7 +76,7 @@
|
|||
<div class="panel panel-default">
|
||||
<div class="panel-heading" role="tab" id="headingOne">
|
||||
<h4 class="panel-title">
|
||||
<a data-toggle="collapse" data-parent="#accordion" href="#collapseOne" aria-expanded="true" aria-controls="collapseOne">
|
||||
<a role="button" data-toggle="collapse" data-parent="#accordion" href="#collapseOne" aria-expanded="true" aria-controls="collapseOne">
|
||||
Collapsible Group Item #1
|
||||
</a>
|
||||
</h4>
|
||||
|
@ -90,7 +90,7 @@
|
|||
<div class="panel panel-default">
|
||||
<div class="panel-heading" role="tab" id="headingTwo">
|
||||
<h4 class="panel-title">
|
||||
<a class="collapsed" data-toggle="collapse" data-parent="#accordion" href="#collapseTwo" aria-expanded="false" aria-controls="collapseTwo">
|
||||
<a class="collapsed" role="button" data-toggle="collapse" data-parent="#accordion" href="#collapseTwo" aria-expanded="false" aria-controls="collapseTwo">
|
||||
Collapsible Group Item #2
|
||||
</a>
|
||||
</h4>
|
||||
|
|
|
@ -38,12 +38,12 @@
|
|||
<li class=""><a href="#fat">@fat</a></li>
|
||||
<li class=""><a href="#mdo">@mdo</a></li>
|
||||
<li class="dropdown">
|
||||
<a href="#" class="dropdown-toggle" data-toggle="dropdown">Dropdown <b class="caret"></b></a>
|
||||
<ul class="dropdown-menu" role="menu">
|
||||
<li class=""><a href="#one" tabindex="-1">one</a></li>
|
||||
<li><a href="#two" tabindex="-1">two</a></li>
|
||||
<li class="divider"></li>
|
||||
<li><a href="#three" tabindex="-1">three</a></li>
|
||||
<a href="#" class="dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Dropdown <b class="caret"></b></a>
|
||||
<ul class="dropdown-menu">
|
||||
<li class=""><a href="#one">one</a></li>
|
||||
<li><a href="#two">two</a></li>
|
||||
<li role="separator" class="divider"></li>
|
||||
<li><a href="#three">three</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
|
|
|
@ -38,10 +38,10 @@
|
|||
<li class="active"><a href="#home" data-toggle="tab">Home</a></li>
|
||||
<li><a href="#profile" data-toggle="tab">Profile</a></li>
|
||||
<li class="dropdown">
|
||||
<a href="#" id="myTabDrop1" class="dropdown-toggle" data-toggle="dropdown">Dropdown <b class="caret"></b></a>
|
||||
<ul class="dropdown-menu" role="menu" aria-labelledby="myTabDrop1">
|
||||
<li><a href="#dropdown1" tabindex="-1" data-toggle="tab">@fat</a></li>
|
||||
<li><a href="#dropdown2" tabindex="-1" data-toggle="tab">@mdo</a></li>
|
||||
<a href="#" id="myTabDrop1" class="dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Dropdown <b class="caret"></b></a>
|
||||
<ul class="dropdown-menu" aria-labelledby="myTabDrop1">
|
||||
<li><a href="#dropdown1" data-toggle="tab">@fat</a></li>
|
||||
<li><a href="#dropdown2" data-toggle="tab">@mdo</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
|
@ -70,10 +70,10 @@
|
|||
<li class="active"><a href="#home1" data-toggle="tab">Home</a></li>
|
||||
<li><a href="#profile1" data-toggle="tab">Profile</a></li>
|
||||
<li class="dropdown">
|
||||
<a href="#" id="myTabDrop2" class="dropdown-toggle" data-toggle="dropdown">Dropdown <b class="caret"></b></a>
|
||||
<ul class="dropdown-menu" role="menu" aria-labelledby="myTabDrop2">
|
||||
<li><a href="#dropdown1-1" tabindex="-1" data-toggle="tab">@fat</a></li>
|
||||
<li><a href="#dropdown1-2" tabindex="-1" data-toggle="tab">@mdo</a></li>
|
||||
<a href="#" id="myTabDrop2" class="dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Dropdown <b class="caret"></b></a>
|
||||
<ul class="dropdown-menu" aria-labelledby="myTabDrop2">
|
||||
<li><a href="#dropdown1-1" data-toggle="tab">@fat</a></li>
|
||||
<li><a href="#dropdown1-2" data-toggle="tab">@mdo</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
|
@ -102,10 +102,10 @@
|
|||
<li><a href="#home2" data-toggle="tab">Home</a></li>
|
||||
<li><a href="#profile2" data-toggle="tab">Profile</a></li>
|
||||
<li class="dropdown">
|
||||
<a href="#" id="myTabDrop3" class="dropdown-toggle" data-toggle="dropdown">Dropdown <b class="caret"></b></a>
|
||||
<ul class="dropdown-menu" role="menu" aria-labelledby="myTabDrop3">
|
||||
<li><a href="#dropdown2-1" tabindex="-1" data-toggle="tab">@fat</a></li>
|
||||
<li><a href="#dropdown2-2" tabindex="-1" data-toggle="tab">@mdo</a></li>
|
||||
<a href="#" id="myTabDrop3" class="dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Dropdown <b class="caret"></b></a>
|
||||
<ul class="dropdown-menu" aria-labelledby="myTabDrop3">
|
||||
<li><a href="#dropdown2-1" data-toggle="tab">@fat</a></li>
|
||||
<li><a href="#dropdown2-2" data-toggle="tab">@mdo</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
|
@ -134,10 +134,10 @@
|
|||
<li><a href="#home3" data-toggle="tab">Home</a></li>
|
||||
<li><a href="#profile3" data-toggle="tab">Profile</a></li>
|
||||
<li class="dropdown">
|
||||
<a href="#" id="myTabDrop4" class="dropdown-toggle" data-toggle="dropdown">Dropdown <b class="caret"></b></a>
|
||||
<ul class="dropdown-menu" role="menu" aria-labelledby="myTabDrop4">
|
||||
<li><a href="#dropdown3-1" tabindex="-1" data-toggle="tab">@fat</a></li>
|
||||
<li><a href="#dropdown3-2" tabindex="-1" data-toggle="tab">@mdo</a></li>
|
||||
<a href="#" id="myTabDrop4" class="dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Dropdown <b class="caret"></b></a>
|
||||
<ul class="dropdown-menu" aria-labelledby="myTabDrop4">
|
||||
<li><a href="#dropdown3-1" data-toggle="tab">@fat</a></li>
|
||||
<li><a href="#dropdown3-2" data-toggle="tab">@mdo</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/* ========================================================================
|
||||
* Bootstrap: tooltip.js v3.3.5
|
||||
* Bootstrap: tooltip.js v3.3.6
|
||||
* http://getbootstrap.com/javascript/#tooltip
|
||||
* Inspired by the original jQuery.tipsy by Jason Frame
|
||||
* ========================================================================
|
||||
|
@ -26,7 +26,7 @@
|
|||
this.init('tooltip', element, options)
|
||||
}
|
||||
|
||||
Tooltip.VERSION = '3.3.5'
|
||||
Tooltip.VERSION = '3.3.6'
|
||||
|
||||
Tooltip.TRANSITION_DURATION = 150
|
||||
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/* ========================================================================
|
||||
* Bootstrap: transition.js v3.3.5
|
||||
* Bootstrap: transition.js v3.3.6
|
||||
* http://getbootstrap.com/javascript/#transitions
|
||||
* ========================================================================
|
||||
* Copyright 2011-2015 Twitter, Inc.
|
||||
|
|
3
bootstrap/less/bootstrap.less
vendored
3
bootstrap/less/bootstrap.less
vendored
|
@ -1,11 +1,12 @@
|
|||
/*!
|
||||
* Bootstrap v3.3.5 (http://getbootstrap.com)
|
||||
* Bootstrap v3.3.6 (http://getbootstrap.com)
|
||||
* Copyright 2011-2015 Twitter, Inc.
|
||||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
||||
*/
|
||||
|
||||
// Core variables and mixins
|
||||
@import "variables.less";
|
||||
@import "ietf.less"; // IETF datatracker overrides
|
||||
@import "mixins.less";
|
||||
|
||||
// Reset and dependencies
|
||||
|
|
|
@ -173,12 +173,12 @@
|
|||
border-radius: 0;
|
||||
}
|
||||
&:first-child:not(:last-child) {
|
||||
border-top-right-radius: @btn-border-radius-base;
|
||||
.border-top-radius(@btn-border-radius-base);
|
||||
.border-bottom-radius(0);
|
||||
}
|
||||
&:last-child:not(:first-child) {
|
||||
border-bottom-left-radius: @btn-border-radius-base;
|
||||
.border-top-radius(0);
|
||||
.border-bottom-radius(@btn-border-radius-base);
|
||||
}
|
||||
}
|
||||
.btn-group-vertical > .btn-group:not(:first-child):not(:last-child) > .btn {
|
||||
|
|
|
@ -73,9 +73,6 @@
|
|||
.btn-success {
|
||||
.button-variant(@btn-success-color; @btn-success-bg; @btn-success-border);
|
||||
}
|
||||
.btn-pass {
|
||||
.button-variant(@btn-pass-color; @btn-pass-bg; @btn-pass-border);
|
||||
}
|
||||
// Info appears as blue-green
|
||||
.btn-info {
|
||||
.button-variant(@btn-info-color; @btn-info-bg; @btn-info-border);
|
||||
|
|
|
@ -101,6 +101,7 @@
|
|||
color: @carousel-control-color;
|
||||
text-align: center;
|
||||
text-shadow: @carousel-text-shadow;
|
||||
background-color: rgba(0, 0, 0, 0); // Fix IE9 click-thru bug
|
||||
// We can't have this transition here because WebKit cancels the carousel
|
||||
// animation if you trip this while in the middle of another animation.
|
||||
|
||||
|
@ -240,18 +241,18 @@
|
|||
.glyphicon-chevron-right,
|
||||
.icon-prev,
|
||||
.icon-next {
|
||||
width: 30px;
|
||||
height: 30px;
|
||||
margin-top: -15px;
|
||||
font-size: 30px;
|
||||
width: (@carousel-control-font-size * 1.5);
|
||||
height: (@carousel-control-font-size * 1.5);
|
||||
margin-top: (@carousel-control-font-size / -2);
|
||||
font-size: (@carousel-control-font-size * 1.5);
|
||||
}
|
||||
.glyphicon-chevron-left,
|
||||
.icon-prev {
|
||||
margin-left: -15px;
|
||||
margin-left: (@carousel-control-font-size / -2);
|
||||
}
|
||||
.glyphicon-chevron-right,
|
||||
.icon-next {
|
||||
margin-right: -15px;
|
||||
margin-right: (@carousel-control-font-size / -2);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -132,6 +132,12 @@ output {
|
|||
// Placeholder
|
||||
.placeholder();
|
||||
|
||||
// Unstyle the caret on `<select>`s in IE10+.
|
||||
&::-ms-expand {
|
||||
border: 0;
|
||||
background-color: transparent;
|
||||
}
|
||||
|
||||
// Disabled and read-only inputs
|
||||
//
|
||||
// HTML5 says that controls under a fieldset > legend:first-child won't be
|
||||
|
@ -433,10 +439,10 @@ input[type="checkbox"] {
|
|||
.has-feedback label {
|
||||
|
||||
& ~ .form-control-feedback {
|
||||
top: (@line-height-computed + 5); // Height of the `label` and its margin
|
||||
top: (@line-height-computed + 5); // Height of the `label` and its margin
|
||||
}
|
||||
&.sr-only ~ .form-control-feedback {
|
||||
top: 0;
|
||||
top: 0;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -591,7 +597,7 @@ input[type="checkbox"] {
|
|||
.form-group-lg {
|
||||
@media (min-width: @screen-sm-min) {
|
||||
.control-label {
|
||||
padding-top: ((@padding-large-vertical * @line-height-large) + 1);
|
||||
padding-top: (@padding-large-vertical + 1);
|
||||
font-size: @font-size-large;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -32,8 +32,8 @@
|
|||
}
|
||||
|
||||
// Individual icons
|
||||
.glyphicon-asterisk { &:before { content: "\2a"; } }
|
||||
.glyphicon-plus { &:before { content: "\2b"; } }
|
||||
.glyphicon-asterisk { &:before { content: "\002a"; } }
|
||||
.glyphicon-plus { &:before { content: "\002b"; } }
|
||||
.glyphicon-euro,
|
||||
.glyphicon-eur { &:before { content: "\20ac"; } }
|
||||
.glyphicon-minus { &:before { content: "\2212"; } }
|
||||
|
|
137
bootstrap/less/ietf.less
Normal file
137
bootstrap/less/ietf.less
Normal file
|
@ -0,0 +1,137 @@
|
|||
// -*- mode: c -*-
|
||||
@gray-doc-background: #fafafa; // was #f5f5f5
|
||||
|
||||
// Brand palette
|
||||
// http://www.colourlovers.com/palette/3702908/Key_West_Sunset_2
|
||||
//
|
||||
@brand-blue: #2c254a; // space blue
|
||||
@brand-purple: #59356b; // time purple
|
||||
@brand-red: #d4584d; // tweaked from sunset 2
|
||||
@brand-orange: #f69f74;
|
||||
@brand-yellow: #f8e16d;
|
||||
//
|
||||
// Secondary colours, not part of the primary palette
|
||||
@brand-green: #69fc2c;
|
||||
|
||||
|
||||
@brand-primary: @brand-blue; // space blue
|
||||
@brand-success: darken(@brand-green, 20%); // green // #3abf03
|
||||
@brand-info: darken(@brand-yellow, 10%); // yellow
|
||||
@brand-warning: @brand-orange; // orange
|
||||
//@brand-danger: darken(saturate(@brand-orange, 60%), 10%);
|
||||
@brand-danger: darken(saturate(@brand-red, 20%), 8%); // red
|
||||
@text-color: @gray-darker;
|
||||
@link-color: lighten(saturate(@brand-primary, 35%), 20%);
|
||||
@font-family-sans-serif: "PT Sans", "Trebuchet", "Seravek", sans-serif;
|
||||
@font-family-serif: "PT Serif", "Palatino", "Neue Swift", serif;
|
||||
@font-family-monospace: "PT Mono", Monaco, monospace;
|
||||
@font-family-base: @font-family-serif;
|
||||
// Halloween
|
||||
//@font-family-sans-serif: "IM Fell English SC", Helvetica, Arial, sans-serif;
|
||||
//@font-family-serif: "IM Fell English", serif;
|
||||
////** Default monospace fonts for `<code>`, `<kbd>`, and `<pre>`.
|
||||
//@font-family-monospace: "Nova Mono", Menlo, Monaco, Consolas, monospace;
|
||||
//@font-family-base: @font-family-serif;
|
||||
|
||||
@mag1: sqrt(sqrt(2));
|
||||
@mag2: @mag1 * @mag1;
|
||||
@mag3: @mag2 * @mag1;
|
||||
@mag4: @mag3 * @mag1;
|
||||
|
||||
@maghalf: sqrt(@mag1);
|
||||
|
||||
@font-size-base: 15px;
|
||||
@font-size-large: ((@font-size-base * @mag1)); // 18px
|
||||
@font-size-small: ((@font-size-base / @mag1)); // 13px
|
||||
|
||||
@font-size-h1: ceil((@font-size-base * @mag4)); // 31px
|
||||
@font-size-h2: ceil((@font-size-base * @mag3)); // 26px
|
||||
@font-size-h3: ceil((@font-size-base * @mag2)); // 22px
|
||||
@font-size-h4: ceil((@font-size-base * @mag1)); // 18px
|
||||
@font-size-h5: ceil((@font-size-base * @maghalf));// 16px
|
||||
@font-size-h6: @font-size-base;
|
||||
// 'Caption' faces are actually created for small point sizes, 6-8 pt, but this works well:
|
||||
@headings-font-family: "PT Sans Caption", sans-serif;
|
||||
|
||||
//@headings-font-family: "IM Fell DW Pica", serif; // Halloween
|
||||
|
||||
@headings-font-weight: 400;
|
||||
@component-active-bg: lighten(@brand-primary, 20%);
|
||||
@table-condensed-cell-padding: 3px;
|
||||
@btn-primary-bg: lighten(@brand-primary, 30%);
|
||||
@btn-pass-color: #fff;
|
||||
@btn-pass-bg: lighten(desaturate(@brand-success, 30%), 20%);
|
||||
@btn-pass-border: darken(@btn-pass-bg, 5%);
|
||||
|
||||
@zindex-tooltip: 1035; //1070;
|
||||
@navbar-default-bg: lighten(saturate(@brand-red, 25%), 10%);
|
||||
@navbar-default-link-color: #222;
|
||||
@navbar-default-link-hover-color: #111;
|
||||
@navbar-default-link-active-color: #111;
|
||||
@navbar-default-link-disabled-color: #777;
|
||||
@navbar-default-toggle-icon-bar-bg: #000;
|
||||
@navbar-inverse-color: lighten(@gray-light, 5%);
|
||||
@navbar-inverse-bg: @brand-primary;
|
||||
@navbar-inverse-link-color: #eee; // lighten(@gray-light, 15%);
|
||||
@navbar-inverse-link-hover-bg: darken(@navbar-inverse-bg, 4%); // transparent;
|
||||
@navbar-inverse-link-active-bg: darken(@navbar-inverse-bg, 8%); // darken(@navbar-inverse-bg, 10%);
|
||||
@nav-link-padding: 10px 11px;
|
||||
@pagination-active-bg: lighten(@brand-primary, 20%);
|
||||
@state-success-text: darken(@brand-success, 70%);
|
||||
@state-success-bg: lighten(desaturate(@brand-success, 20%), 40%);
|
||||
@state-info-text: darken(@brand-info, 70%);
|
||||
@state-info-bg: lighten(@brand-info, 32%);
|
||||
@state-warning-text: darken(@brand-warning, 70%);
|
||||
@state-warning-bg: lighten(@brand-warning, 10%);
|
||||
@state-danger-text: darken(@brand-danger, 70%);
|
||||
@state-danger-bg: lighten(saturate(@brand-danger, 50%), 20%);
|
||||
@tooltip-max-width: 250px;
|
||||
@tooltip-color: @state-info-text;
|
||||
@tooltip-bg: darken(saturate(@state-info-bg, 15%), 25%);
|
||||
@tooltip-arrow-width: 8px;
|
||||
@label-primary-bg: lighten(@brand-primary, 20%);
|
||||
@label-pass-bg: lighten(desaturate(@brand-success, 30%), 20%);
|
||||
|
||||
@label-info-bg: darken(saturate(@brand-info, 5%), 12%);
|
||||
@alert-padding: 8px;
|
||||
@panel-pass-text: @state-success-text;
|
||||
@panel-pass-border: lighten(desaturate(@brand-success, 30%), 20%);
|
||||
@panel-pass-heading-bg: @state-success-bg;
|
||||
|
||||
@pre-bg: lighten(@brand-yellow, 28%);
|
||||
@pre-color: @gray-base;
|
||||
@blockquote-font-size: (@font-size-base * @mag1);
|
||||
|
||||
|
||||
|
||||
// New definitions used in the datatracker:
|
||||
|
||||
.btn-pass {
|
||||
.button-variant(@btn-pass-color; @btn-pass-bg; @btn-pass-border);
|
||||
}
|
||||
|
||||
.label-pass {
|
||||
.label-variant(@label-pass-bg);
|
||||
}
|
||||
|
||||
.label-info {
|
||||
.label-variant(@label-info-bg);
|
||||
}
|
||||
|
||||
.panel-pass {
|
||||
.panel-variant(@panel-pass-border; @panel-pass-text; @panel-pass-heading-bg; @panel-pass-border);
|
||||
}
|
||||
|
||||
|
||||
// XXX This change from before is not currently being applied, not sure how
|
||||
// critical this is:
|
||||
//--- /Users/lars/Downloads/bootstrap-3.3.5/less/mixins/forms.less 2015-06-16 10:13:22.000000000 +0200
|
||||
//+++ less/mixins/forms.less 2015-12-02 14:38:25.000000000 +0100
|
||||
//@@ -16,6 +16,7 @@
|
||||
// &.radio-inline label,
|
||||
// &.checkbox-inline label {
|
||||
// color: @text-color;
|
||||
//+ background-color: @background-color;
|
||||
// }
|
||||
// // Set the border and box shadow on specific inputs to match
|
||||
// .form-control {
|
|
@ -29,6 +29,10 @@
|
|||
|
||||
width: 100%;
|
||||
margin-bottom: 0;
|
||||
|
||||
&:focus {
|
||||
z-index: 3;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -79,18 +83,18 @@
|
|||
text-align: center;
|
||||
background-color: @input-group-addon-bg;
|
||||
border: 1px solid @input-group-addon-border-color;
|
||||
border-radius: @border-radius-base;
|
||||
border-radius: @input-border-radius;
|
||||
|
||||
// Sizing
|
||||
&.input-sm {
|
||||
padding: @padding-small-vertical @padding-small-horizontal;
|
||||
font-size: @font-size-small;
|
||||
border-radius: @border-radius-small;
|
||||
border-radius: @input-border-radius-small;
|
||||
}
|
||||
&.input-lg {
|
||||
padding: @padding-large-vertical @padding-large-horizontal;
|
||||
font-size: @font-size-large;
|
||||
border-radius: @border-radius-large;
|
||||
border-radius: @input-border-radius-large;
|
||||
}
|
||||
|
||||
// Nuke default margins from checkboxes and radios to vertically center within.
|
||||
|
|
|
@ -28,6 +28,8 @@
|
|||
.container &,
|
||||
.container-fluid & {
|
||||
border-radius: @border-radius-large; // Only round corners at higher resolutions if contained in a container
|
||||
padding-left: (@grid-gutter-width / 2);
|
||||
padding-right: (@grid-gutter-width / 2);
|
||||
}
|
||||
|
||||
.container {
|
||||
|
|
|
@ -51,10 +51,6 @@
|
|||
.label-variant(@label-success-bg);
|
||||
}
|
||||
|
||||
.label-pass {
|
||||
.label-variant(@label-pass-bg);
|
||||
}
|
||||
|
||||
.label-info {
|
||||
.label-variant(@label-info-bg);
|
||||
}
|
||||
|
|
|
@ -42,12 +42,9 @@
|
|||
&.disabled,
|
||||
&[disabled],
|
||||
fieldset[disabled] & {
|
||||
&,
|
||||
&:hover,
|
||||
&:focus,
|
||||
&.focus,
|
||||
&:active,
|
||||
&.active {
|
||||
&.focus {
|
||||
background-color: @background;
|
||||
border-color: @border;
|
||||
}
|
||||
|
|
|
@ -16,7 +16,6 @@
|
|||
&.radio-inline label,
|
||||
&.checkbox-inline label {
|
||||
color: @text-color;
|
||||
background-color: @background-color;
|
||||
}
|
||||
// Set the border and box shadow on specific inputs to match
|
||||
.form-control {
|
||||
|
|
|
@ -6,8 +6,8 @@
|
|||
.container-fixed(@gutter: @grid-gutter-width) {
|
||||
margin-right: auto;
|
||||
margin-left: auto;
|
||||
padding-left: (@gutter / 2);
|
||||
padding-right: (@gutter / 2);
|
||||
padding-left: floor((@gutter / 2));
|
||||
padding-right: ceil((@gutter / 2));
|
||||
&:extend(.clearfix all);
|
||||
}
|
||||
|
||||
|
|
|
@ -6,7 +6,7 @@
|
|||
//
|
||||
// Source: https://github.com/h5bp/html5-boilerplate/commit/aa0396eae757
|
||||
|
||||
// Deprecated as of v3.0.1 (will be removed in v4)
|
||||
// Deprecated as of v3.0.1 (has been removed in v4)
|
||||
.hide-text() {
|
||||
font: ~"0/0" a;
|
||||
color: transparent;
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
// Vendor Prefixes
|
||||
//
|
||||
// All vendor mixins are deprecated as of v3.2.0 due to the introduction of
|
||||
// Autoprefixer in our Gruntfile. They will be removed in v4.
|
||||
// Autoprefixer in our Gruntfile. They have been removed in v4.
|
||||
|
||||
// - Animations
|
||||
// - Backface visibility
|
||||
|
@ -54,7 +54,7 @@
|
|||
// Prevent browsers from flickering when using CSS 3D transforms.
|
||||
// Default value is `visible`, but can be changed to `hidden`
|
||||
|
||||
.backface-visibility(@visibility){
|
||||
.backface-visibility(@visibility) {
|
||||
-webkit-backface-visibility: @visibility;
|
||||
-moz-backface-visibility: @visibility;
|
||||
backface-visibility: @visibility;
|
||||
|
|
|
@ -79,7 +79,7 @@
|
|||
.modal-header {
|
||||
padding: @modal-title-padding;
|
||||
border-bottom: 1px solid @modal-header-border-color;
|
||||
min-height: (@modal-title-padding + @modal-title-line-height);
|
||||
&:extend(.clearfix all);
|
||||
}
|
||||
// Close icon
|
||||
.modal-header .close {
|
||||
|
|
|
@ -40,7 +40,7 @@
|
|||
> li > span {
|
||||
&:hover,
|
||||
&:focus {
|
||||
z-index: 3;
|
||||
z-index: 2;
|
||||
color: @pagination-hover-color;
|
||||
background-color: @pagination-hover-bg;
|
||||
border-color: @pagination-hover-border;
|
||||
|
@ -52,7 +52,7 @@
|
|||
&,
|
||||
&:hover,
|
||||
&:focus {
|
||||
z-index: 2;
|
||||
z-index: 3;
|
||||
color: @pagination-active-color;
|
||||
background-color: @pagination-active-bg;
|
||||
border-color: @pagination-active-border;
|
||||
|
|
|
@ -260,9 +260,6 @@
|
|||
.panel-success {
|
||||
.panel-variant(@panel-success-border; @panel-success-text; @panel-success-heading-bg; @panel-success-border);
|
||||
}
|
||||
.panel-pass {
|
||||
.panel-variant(@panel-pass-border; @panel-pass-text; @panel-pass-heading-bg; @panel-pass-border);
|
||||
}
|
||||
.panel-info {
|
||||
.panel-variant(@panel-info-border; @panel-info-text; @panel-info-heading-bg; @panel-info-border);
|
||||
}
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/*!
|
||||
* Bootstrap v3.3.5 (http://getbootstrap.com)
|
||||
* Bootstrap v3.3.6 (http://getbootstrap.com)
|
||||
* Copyright 2011-2015 Twitter, Inc.
|
||||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
||||
*/
|
||||
|
@ -9,6 +9,7 @@
|
|||
// --------------------------------------------------
|
||||
|
||||
@import "variables.less";
|
||||
@import "ietf.less"; // IETF datatracker overrides
|
||||
@import "mixins.less";
|
||||
|
||||
|
||||
|
|
|
@ -211,7 +211,7 @@ dd {
|
|||
&:extend(.clearfix all); // Clear the floated `dt` if an empty `dd` is present
|
||||
}
|
||||
|
||||
@media (min-width: @grid-float-breakpoint) {
|
||||
@media (min-width: @dl-horizontal-breakpoint) {
|
||||
dt {
|
||||
float: left;
|
||||
width: (@dl-horizontal-offset - 20);
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
// -*- mode: c -*-
|
||||
//
|
||||
// Variables
|
||||
// --------------------------------------------------
|
||||
|
||||
|
@ -14,27 +14,11 @@
|
|||
@gray-light: lighten(@gray-base, 46.7%); // #777
|
||||
@gray-lighter: lighten(@gray-base, 93.5%); // #eee
|
||||
|
||||
@gray-doc-background: #fafafa; // was #f5f5f5
|
||||
|
||||
// Brand palette
|
||||
// http://www.colourlovers.com/palette/3702908/Key_West_Sunset_2
|
||||
//
|
||||
@brand-blue: #2c254a; // space blue
|
||||
@brand-purple: #59356b; // time purple
|
||||
@brand-red: #d4584d; // tweaked from sunset 2
|
||||
@brand-orange: #f69f74;
|
||||
@brand-yellow: #f8e16d;
|
||||
//
|
||||
// Secondary colours, not part of the primary palette
|
||||
@brand-green: #69fc2c;
|
||||
|
||||
|
||||
@brand-primary: @brand-blue; // space blue
|
||||
@brand-success: darken(@brand-green, 20%); // green // #3abf03
|
||||
@brand-info: darken(@brand-yellow, 10%); // yellow
|
||||
@brand-warning: @brand-orange; // orange
|
||||
//@brand-danger: darken(saturate(@brand-orange, 60%), 10%);
|
||||
@brand-danger: darken(saturate(@brand-red, 20%), 8%); // red
|
||||
@brand-primary: darken(#428bca, 6.5%); // #337ab7
|
||||
@brand-success: #5cb85c;
|
||||
@brand-info: #5bc0de;
|
||||
@brand-warning: #f0ad4e;
|
||||
@brand-danger: #d9534f;
|
||||
|
||||
|
||||
//== Scaffolding
|
||||
|
@ -44,10 +28,10 @@
|
|||
//** Background color for `<body>`.
|
||||
@body-bg: #fff;
|
||||
//** Global text color on `<body>`.
|
||||
@text-color: @gray-darker;
|
||||
@text-color: @gray-dark;
|
||||
|
||||
//** Global textual link color.
|
||||
@link-color: lighten(saturate(@brand-primary, 35%), 20%);
|
||||
@link-color: @brand-primary;
|
||||
//** Link hover color set via `darken()` function.
|
||||
@link-hover-color: darken(@link-color, 15%);
|
||||
//** Link hover decoration.
|
||||
|
@ -58,36 +42,22 @@
|
|||
//
|
||||
//## Font, line-height, and color for body text, headings, and more.
|
||||
|
||||
@font-family-sans-serif: "PT Sans", "Trebuchet", "Seravek", sans-serif;
|
||||
@font-family-serif: "PT Serif", "Palatino", "Neue Swift", serif;
|
||||
@font-family-sans-serif: "Helvetica Neue", Helvetica, Arial, sans-serif;
|
||||
@font-family-serif: Georgia, "Times New Roman", Times, serif;
|
||||
//** Default monospace fonts for `<code>`, `<kbd>`, and `<pre>`.
|
||||
@font-family-monospace: "PT Mono", Monaco, monospace;
|
||||
@font-family-base: @font-family-serif;
|
||||
@font-family-monospace: Menlo, Monaco, Consolas, "Courier New", monospace;
|
||||
@font-family-base: @font-family-sans-serif;
|
||||
|
||||
// Halloween
|
||||
//@font-family-sans-serif: "IM Fell English SC", Helvetica, Arial, sans-serif;
|
||||
//@font-family-serif: "IM Fell English", serif;
|
||||
////** Default monospace fonts for `<code>`, `<kbd>`, and `<pre>`.
|
||||
//@font-family-monospace: "Nova Mono", Menlo, Monaco, Consolas, monospace;
|
||||
//@font-family-base: @font-family-serif;
|
||||
@font-size-base: 14px;
|
||||
@font-size-large: ceil((@font-size-base * 1.25)); // ~18px
|
||||
@font-size-small: ceil((@font-size-base * 0.85)); // ~12px
|
||||
|
||||
@mag1: sqrt(sqrt(2));
|
||||
@mag2: @mag1 * @mag1;
|
||||
@mag3: @mag2 * @mag1;
|
||||
@mag4: @mag3 * @mag1;
|
||||
|
||||
@maghalf: sqrt(@mag1);
|
||||
|
||||
@font-size-base: 15px;
|
||||
@font-size-large: ((@font-size-base * @mag1)); // 18px
|
||||
@font-size-small: ((@font-size-base / @mag1)); // 13px
|
||||
|
||||
@font-size-h1: ceil((@font-size-base * @mag4)); // 31px
|
||||
@font-size-h2: ceil((@font-size-base * @mag3)); // 26px
|
||||
@font-size-h3: ceil((@font-size-base * @mag2)); // 22px
|
||||
@font-size-h4: ceil((@font-size-base * @mag1)); // 18px
|
||||
@font-size-h5: ceil((@font-size-base * @maghalf));// 16px
|
||||
@font-size-h6: @font-size-base;
|
||||
@font-size-h1: floor((@font-size-base * 2.6)); // ~36px
|
||||
@font-size-h2: floor((@font-size-base * 2.15)); // ~30px
|
||||
@font-size-h3: ceil((@font-size-base * 1.7)); // ~24px
|
||||
@font-size-h4: ceil((@font-size-base * 1.25)); // ~18px
|
||||
@font-size-h5: @font-size-base;
|
||||
@font-size-h6: ceil((@font-size-base * 0.85)); // ~12px
|
||||
|
||||
//** Unit-less `line-height` for use in components like buttons.
|
||||
@line-height-base: 1.428571429; // 20/14
|
||||
|
@ -95,12 +65,8 @@
|
|||
@line-height-computed: floor((@font-size-base * @line-height-base)); // ~20px
|
||||
|
||||
//** By default, this inherits from the `<body>`.
|
||||
// 'Caption' faces are actually created for small point sizes, 6-8 pt, but this works well:
|
||||
@headings-font-family: "PT Sans Caption", sans-serif;
|
||||
|
||||
//@headings-font-family: "IM Fell DW Pica", serif; // Halloween
|
||||
|
||||
@headings-font-weight: 400;
|
||||
@headings-font-family: inherit;
|
||||
@headings-font-weight: 500;
|
||||
@headings-line-height: 1.1;
|
||||
@headings-color: inherit;
|
||||
|
||||
|
@ -143,7 +109,7 @@
|
|||
//** Global color for active items (e.g., navs or dropdowns).
|
||||
@component-active-color: #fff;
|
||||
//** Global background color for active items (e.g., navs or dropdowns).
|
||||
@component-active-bg: lighten(@brand-primary, 20%);
|
||||
@component-active-bg: @brand-primary;
|
||||
|
||||
//** Width of the `border` for generating carets that indicator dropdowns.
|
||||
@caret-width-base: 4px;
|
||||
|
@ -158,7 +124,7 @@
|
|||
//** Padding for `<th>`s and `<td>`s.
|
||||
@table-cell-padding: 8px;
|
||||
//** Padding for cells in `.table-condensed`.
|
||||
@table-condensed-cell-padding: 3px;
|
||||
@table-condensed-cell-padding: 5px;
|
||||
|
||||
//** Default background color used for all tables.
|
||||
@table-bg: transparent;
|
||||
|
@ -183,17 +149,13 @@
|
|||
@btn-default-border: #ccc;
|
||||
|
||||
@btn-primary-color: #fff;
|
||||
@btn-primary-bg: lighten(@brand-primary, 30%);
|
||||
@btn-primary-bg: @brand-primary;
|
||||
@btn-primary-border: darken(@btn-primary-bg, 5%);
|
||||
|
||||
@btn-success-color: #fff;
|
||||
@btn-success-bg: @brand-success;
|
||||
@btn-success-border: darken(@btn-success-bg, 5%);
|
||||
|
||||
@btn-pass-color: #fff;
|
||||
@btn-pass-bg: lighten(desaturate(@brand-success, 30%), 20%);
|
||||
@btn-pass-border: darken(@btn-pass-bg, 5%);
|
||||
|
||||
@btn-info-color: #fff;
|
||||
@btn-info-bg: @brand-info;
|
||||
@btn-info-border: darken(@btn-info-bg, 5%);
|
||||
|
@ -310,7 +272,7 @@
|
|||
@zindex-navbar: 1000;
|
||||
@zindex-dropdown: 1000;
|
||||
@zindex-popover: 1060;
|
||||
@zindex-tooltip: 1035; //1070;
|
||||
@zindex-tooltip: 1070;
|
||||
@zindex-navbar-fixed: 1030;
|
||||
@zindex-modal-background: 1040;
|
||||
@zindex-modal: 1050;
|
||||
|
@ -403,16 +365,16 @@
|
|||
@navbar-collapse-max-height: 340px;
|
||||
|
||||
@navbar-default-color: #777;
|
||||
@navbar-default-bg: lighten(saturate(@brand-red, 25%), 10%);
|
||||
@navbar-default-bg: #f8f8f8;
|
||||
@navbar-default-border: darken(@navbar-default-bg, 6.5%);
|
||||
|
||||
// Navbar links
|
||||
@navbar-default-link-color: #222;
|
||||
@navbar-default-link-hover-color: #111;
|
||||
@navbar-default-link-color: #777;
|
||||
@navbar-default-link-hover-color: #333;
|
||||
@navbar-default-link-hover-bg: transparent;
|
||||
@navbar-default-link-active-color: #111;
|
||||
@navbar-default-link-active-color: #555;
|
||||
@navbar-default-link-active-bg: darken(@navbar-default-bg, 6.5%);
|
||||
@navbar-default-link-disabled-color: #777;
|
||||
@navbar-default-link-disabled-color: #ccc;
|
||||
@navbar-default-link-disabled-bg: transparent;
|
||||
|
||||
// Navbar brand label
|
||||
|
@ -422,22 +384,22 @@
|
|||
|
||||
// Navbar toggle
|
||||
@navbar-default-toggle-hover-bg: #ddd;
|
||||
@navbar-default-toggle-icon-bar-bg: #000;
|
||||
@navbar-default-toggle-icon-bar-bg: #888;
|
||||
@navbar-default-toggle-border-color: #ddd;
|
||||
|
||||
|
||||
//=== Inverted navbar
|
||||
// Reset inverted navbar basics
|
||||
@navbar-inverse-color: lighten(@gray-light, 5%);
|
||||
@navbar-inverse-bg: @brand-primary;
|
||||
@navbar-inverse-color: lighten(@gray-light, 15%);
|
||||
@navbar-inverse-bg: #222;
|
||||
@navbar-inverse-border: darken(@navbar-inverse-bg, 10%);
|
||||
|
||||
// Inverted navbar links
|
||||
@navbar-inverse-link-color: #eee; // lighten(@gray-light, 15%);
|
||||
@navbar-inverse-link-color: lighten(@gray-light, 15%);
|
||||
@navbar-inverse-link-hover-color: #fff;
|
||||
@navbar-inverse-link-hover-bg: darken(@navbar-inverse-bg, 4%); // transparent;
|
||||
@navbar-inverse-link-hover-bg: transparent;
|
||||
@navbar-inverse-link-active-color: @navbar-inverse-link-hover-color;
|
||||
@navbar-inverse-link-active-bg: darken(@navbar-inverse-bg, 8%); // darken(@navbar-inverse-bg, 10%);
|
||||
@navbar-inverse-link-active-bg: darken(@navbar-inverse-bg, 10%);
|
||||
@navbar-inverse-link-disabled-color: #444;
|
||||
@navbar-inverse-link-disabled-bg: transparent;
|
||||
|
||||
|
@ -457,7 +419,7 @@
|
|||
//##
|
||||
|
||||
//=== Shared nav styles
|
||||
@nav-link-padding: 10px 11px;
|
||||
@nav-link-padding: 10px 15px;
|
||||
@nav-link-hover-bg: @gray-lighter;
|
||||
|
||||
@nav-disabled-link-color: @gray-light;
|
||||
|
@ -494,7 +456,7 @@
|
|||
@pagination-hover-border: #ddd;
|
||||
|
||||
@pagination-active-color: #fff;
|
||||
@pagination-active-bg: lighten(@brand-primary, 20%);
|
||||
@pagination-active-bg: @brand-primary;
|
||||
@pagination-active-border: @brand-primary;
|
||||
|
||||
@pagination-disabled-color: @gray-light;
|
||||
|
@ -534,20 +496,20 @@
|
|||
//
|
||||
//## Define colors for form feedback states and, by default, alerts.
|
||||
|
||||
@state-success-text: darken(@brand-success, 70%);
|
||||
@state-success-bg: lighten(desaturate(@brand-success, 20%), 40%);
|
||||
@state-success-text: #3c763d;
|
||||
@state-success-bg: #dff0d8;
|
||||
@state-success-border: darken(spin(@state-success-bg, -10), 5%);
|
||||
|
||||
@state-info-text: darken(@brand-info, 70%);
|
||||
@state-info-bg: lighten(@brand-info, 32%);
|
||||
@state-info-text: #31708f;
|
||||
@state-info-bg: #d9edf7;
|
||||
@state-info-border: darken(spin(@state-info-bg, -10), 7%);
|
||||
|
||||
@state-warning-text: darken(@brand-warning, 70%);
|
||||
@state-warning-bg: lighten(@brand-warning, 10%);
|
||||
@state-warning-text: #8a6d3b;
|
||||
@state-warning-bg: #fcf8e3;
|
||||
@state-warning-border: darken(spin(@state-warning-bg, -10), 5%);
|
||||
|
||||
@state-danger-text: darken(@brand-danger, 70%);
|
||||
@state-danger-bg: lighten(saturate(@brand-danger, 50%), 20%);
|
||||
@state-danger-text: #a94442;
|
||||
@state-danger-bg: #f2dede;
|
||||
@state-danger-border: darken(spin(@state-danger-bg, -10), 5%);
|
||||
|
||||
|
||||
|
@ -556,15 +518,15 @@
|
|||
//##
|
||||
|
||||
//** Tooltip max width
|
||||
@tooltip-max-width: 250px;
|
||||
@tooltip-max-width: 200px;
|
||||
//** Tooltip text color
|
||||
@tooltip-color: @state-info-text;
|
||||
@tooltip-color: #fff;
|
||||
//** Tooltip background color
|
||||
@tooltip-bg: darken(saturate(@state-info-bg, 15%), 25%);
|
||||
@tooltip-bg: #000;
|
||||
@tooltip-opacity: .9;
|
||||
|
||||
//** Tooltip arrow width
|
||||
@tooltip-arrow-width: 8px;
|
||||
@tooltip-arrow-width: 5px;
|
||||
//** Tooltip arrow color
|
||||
@tooltip-arrow-color: @tooltip-bg;
|
||||
|
||||
|
@ -605,13 +567,11 @@
|
|||
//** Default label background color
|
||||
@label-default-bg: @gray-light;
|
||||
//** Primary label background color
|
||||
@label-primary-bg: lighten(@brand-primary, 20%);
|
||||
@label-primary-bg: @brand-primary;
|
||||
//** Success label background color
|
||||
@label-success-bg: @brand-success;
|
||||
@label-pass-bg: lighten(desaturate(@brand-success, 30%), 20%);
|
||||
|
||||
//** Info label background color
|
||||
@label-info-bg: darken(saturate(@brand-info, 5%), 12%);
|
||||
@label-info-bg: @brand-info;
|
||||
//** Warning label background color
|
||||
@label-warning-bg: @brand-warning;
|
||||
//** Danger label background color
|
||||
|
@ -660,7 +620,7 @@
|
|||
//
|
||||
//## Define alert colors, border radius, and padding.
|
||||
|
||||
@alert-padding: 8px;
|
||||
@alert-padding: 15px;
|
||||
@alert-border-radius: @border-radius-base;
|
||||
@alert-link-font-weight: bold;
|
||||
|
||||
|
@ -764,10 +724,6 @@
|
|||
@panel-success-border: @state-success-border;
|
||||
@panel-success-heading-bg: @state-success-bg;
|
||||
|
||||
@panel-pass-text: @state-success-text;
|
||||
@panel-pass-border: lighten(desaturate(@brand-success, 30%), 20%);
|
||||
@panel-pass-heading-bg: @state-success-bg;
|
||||
|
||||
@panel-info-text: @state-info-text;
|
||||
@panel-info-border: @state-info-border;
|
||||
@panel-info-heading-bg: @state-info-bg;
|
||||
|
@ -879,8 +835,8 @@
|
|||
@kbd-color: #fff;
|
||||
@kbd-bg: #333;
|
||||
|
||||
@pre-bg: lighten(@brand-yellow, 28%);
|
||||
@pre-color: @gray-base;
|
||||
@pre-bg: #f5f5f5;
|
||||
@pre-color: @gray-dark;
|
||||
@pre-border-color: #ccc;
|
||||
@pre-scrollable-max-height: 340px;
|
||||
|
||||
|
@ -900,12 +856,14 @@
|
|||
//** Blockquote small color
|
||||
@blockquote-small-color: @gray-light;
|
||||
//** Blockquote font size
|
||||
@blockquote-font-size: (@font-size-base * @mag1);
|
||||
@blockquote-font-size: (@font-size-base * 1.25);
|
||||
//** Blockquote border color
|
||||
@blockquote-border-color: @gray-lighter;
|
||||
//** Page header border color
|
||||
@page-header-border-color: @gray-lighter;
|
||||
//** Width of horizontal description list titles
|
||||
@dl-horizontal-offset: @component-offset-horizontal;
|
||||
//** Point at which .dl-horizontal becomes horizontal
|
||||
@dl-horizontal-breakpoint: @grid-float-breakpoint;
|
||||
//** Horizontal line color.
|
||||
@hr-border: @gray-lighter;
|
||||
|
|
8
bootstrap/nuget/MyGet.ps1
Executable file
8
bootstrap/nuget/MyGet.ps1
Executable file
|
@ -0,0 +1,8 @@
|
|||
$nuget = $env:NuGet
|
||||
|
||||
#parse the version number out of package.json
|
||||
$bsversion = ((Get-Content $env:SourcesPath\package.json) -join "`n" | ConvertFrom-Json).version
|
||||
|
||||
#create packages
|
||||
& $nuget pack "nuget\bootstrap.nuspec" -Verbosity detailed -NonInteractive -NoPackageAnalysis -BasePath $env:SourcesPath -Version $bsversion
|
||||
& $nuget pack "nuget\bootstrap.less.nuspec" -Verbosity detailed -NonInteractive -NoPackageAnalysis -BasePath $env:SourcesPath -Version $bsversion
|
28
bootstrap/nuget/bootstrap.less.nuspec
Executable file
28
bootstrap/nuget/bootstrap.less.nuspec
Executable file
|
@ -0,0 +1,28 @@
|
|||
<?xml version="1.0"?>
|
||||
<package xmlns="http://schemas.microsoft.com/packaging/2011/08/nuspec.xsd">
|
||||
<metadata>
|
||||
<id>bootstrap.less</id>
|
||||
<version>3.3</version>
|
||||
<title>Bootstrap Less</title>
|
||||
<authors>Twitter, Inc.</authors>
|
||||
<owners>bootstrap</owners>
|
||||
<description>The most popular front-end framework for developing responsive, mobile first projects on the web.</description>
|
||||
<releaseNotes>http://blog.getbootstrap.com</releaseNotes>
|
||||
<summary>Bootstrap framework in Less. Includes fonts and JavaScript</summary>
|
||||
<language>en-us</language>
|
||||
<projectUrl>http://getbootstrap.com</projectUrl>
|
||||
<iconUrl>http://getbootstrap.com/apple-touch-icon.png</iconUrl>
|
||||
<licenseUrl>https://github.com/twbs/bootstrap/blob/master/LICENSE</licenseUrl>
|
||||
<copyright>Copyright 2015</copyright>
|
||||
<requireLicenseAcceptance>false</requireLicenseAcceptance>
|
||||
<dependencies>
|
||||
<dependency id="jQuery" version="[1.9.1,3)" />
|
||||
</dependencies>
|
||||
<tags>css js less mobile-first responsive front-end framework web</tags>
|
||||
</metadata>
|
||||
<files>
|
||||
<file src="less\**\*.less" target="content\Content\bootstrap" />
|
||||
<file src="fonts\*.*" target="content\Content\fonts" />
|
||||
<file src="dist\js\bootstrap*.js" target="content\Scripts" />
|
||||
</files>
|
||||
</package>
|
28
bootstrap/nuget/bootstrap.nuspec
Executable file
28
bootstrap/nuget/bootstrap.nuspec
Executable file
|
@ -0,0 +1,28 @@
|
|||
<?xml version="1.0"?>
|
||||
<package xmlns="http://schemas.microsoft.com/packaging/2011/08/nuspec.xsd">
|
||||
<metadata>
|
||||
<id>bootstrap</id>
|
||||
<version>3.3</version>
|
||||
<title>Bootstrap CSS</title>
|
||||
<authors>Twitter, Inc.</authors>
|
||||
<owners>bootstrap</owners>
|
||||
<description>The most popular front-end framework for developing responsive, mobile first projects on the web.</description>
|
||||
<releaseNotes>http://blog.getbootstrap.com</releaseNotes>
|
||||
<summary>Bootstrap framework in CSS. Includes fonts and JavaScript</summary>
|
||||
<language>en-us</language>
|
||||
<projectUrl>http://getbootstrap.com</projectUrl>
|
||||
<iconUrl>http://getbootstrap.com/apple-touch-icon.png</iconUrl>
|
||||
<licenseUrl>https://github.com/twbs/bootstrap/blob/master/LICENSE</licenseUrl>
|
||||
<copyright>Copyright 2015</copyright>
|
||||
<requireLicenseAcceptance>false</requireLicenseAcceptance>
|
||||
<dependencies>
|
||||
<dependency id="jQuery" version="[1.9.1,3)" />
|
||||
</dependencies>
|
||||
<tags>css js less mobile-first responsive front-end framework web</tags>
|
||||
</metadata>
|
||||
<files>
|
||||
<file src="dist\css\*.*" target="content\Content" />
|
||||
<file src="dist\fonts\*.*" target="content\fonts" />
|
||||
<file src="dist\js\bootstrap*.js" target="content\Scripts" />
|
||||
</files>
|
||||
</package>
|
|
@ -6,19 +6,26 @@
|
|||
Package.describe({
|
||||
name: 'twbs:bootstrap', // http://atmospherejs.com/twbs/bootstrap
|
||||
summary: 'The most popular front-end framework for developing responsive, mobile first projects on the web.',
|
||||
version: '3.3.5',
|
||||
version: '3.3.6',
|
||||
git: 'https://github.com/twbs/bootstrap.git'
|
||||
});
|
||||
|
||||
Package.onUse(function (api) {
|
||||
api.versionsFrom('METEOR@1.0');
|
||||
api.use('jquery', 'client');
|
||||
api.addFiles([
|
||||
var assets = [
|
||||
'dist/fonts/glyphicons-halflings-regular.eot',
|
||||
'dist/fonts/glyphicons-halflings-regular.svg',
|
||||
'dist/fonts/glyphicons-halflings-regular.ttf',
|
||||
'dist/fonts/glyphicons-halflings-regular.woff',
|
||||
'dist/fonts/glyphicons-halflings-regular.woff2',
|
||||
'dist/fonts/glyphicons-halflings-regular.woff2'
|
||||
];
|
||||
if (api.addAssets) {
|
||||
api.addAssets(assets, 'client');
|
||||
} else {
|
||||
api.addFiles(assets, 'client', { isAsset: true });
|
||||
}
|
||||
api.addFiles([
|
||||
'dist/css/bootstrap.css',
|
||||
'dist/js/bootstrap.js'
|
||||
], 'client');
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
{
|
||||
"name": "bootstrap",
|
||||
"description": "The most popular front-end framework for developing responsive, mobile first projects on the web.",
|
||||
"version": "3.3.5",
|
||||
"version": "3.3.6",
|
||||
"keywords": [
|
||||
"css",
|
||||
"less",
|
||||
|
@ -29,34 +29,34 @@
|
|||
"license": "MIT",
|
||||
"devDependencies": {
|
||||
"btoa": "~1.1.2",
|
||||
"glob": "~5.0.5",
|
||||
"glob": "~6.0.1",
|
||||
"grunt": "~0.4.5",
|
||||
"grunt-autoprefixer": "~3.0.0",
|
||||
"grunt-autoprefixer": "~3.0.3",
|
||||
"grunt-contrib-clean": "~0.6.0",
|
||||
"grunt-contrib-compress": "~0.13.0",
|
||||
"grunt-contrib-compress": "~0.14.0",
|
||||
"grunt-contrib-concat": "~0.5.1",
|
||||
"grunt-contrib-connect": "~0.10.1",
|
||||
"grunt-contrib-connect": "~0.11.2",
|
||||
"grunt-contrib-copy": "~0.8.0",
|
||||
"grunt-contrib-csslint": "~0.4.0",
|
||||
"grunt-contrib-cssmin": "~0.12.3",
|
||||
"grunt-contrib-htmlmin": "~0.4.0",
|
||||
"grunt-contrib-jade": "~0.14.1",
|
||||
"grunt-contrib-csslint": "~0.5.0",
|
||||
"grunt-contrib-cssmin": "~0.14.0",
|
||||
"grunt-contrib-htmlmin": "~0.6.0",
|
||||
"grunt-contrib-jade": "~0.15.0",
|
||||
"grunt-contrib-jshint": "~0.11.2",
|
||||
"grunt-contrib-less": "~1.0.1",
|
||||
"grunt-contrib-less": "~1.1.0",
|
||||
"grunt-contrib-qunit": "~0.7.0",
|
||||
"grunt-contrib-uglify": "~0.9.1",
|
||||
"grunt-contrib-uglify": "~0.9.2",
|
||||
"grunt-contrib-watch": "~0.6.1",
|
||||
"grunt-csscomb": "~3.0.0",
|
||||
"grunt-csscomb": "~3.1.0",
|
||||
"grunt-exec": "~0.4.6",
|
||||
"grunt-html": "~4.0.3",
|
||||
"grunt-html": "~5.0.1",
|
||||
"grunt-jekyll": "~0.4.2",
|
||||
"grunt-jscs": "~1.8.0",
|
||||
"grunt-jscs": "~2.3.0",
|
||||
"grunt-saucelabs": "~8.6.1",
|
||||
"grunt-sed": "twbs/grunt-sed#v0.2.0",
|
||||
"load-grunt-tasks": "~3.2.0",
|
||||
"markdown-it": "^4.2.1",
|
||||
"load-grunt-tasks": "~3.3.0",
|
||||
"markdown-it": "^5.0.0",
|
||||
"npm-shrinkwrap": "^200.4.0",
|
||||
"time-grunt": "^1.2.0"
|
||||
"time-grunt": "^1.2.1"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=0.10.1"
|
||||
|
|
|
@ -7,9 +7,9 @@ The SHA-256 hash of the single file is used as the key for the cache. The direct
|
|||
|
||||
All the tarballs are stored in S3's Reduced Redundancy Storage (RRS) storage class, since this is cheaper and the data is non-critical.
|
||||
|
||||
`s3_cache.py` itself never deletes cache entries; deletion should either be done manually or using automatic S3 lifecycle rules on the bucket.
|
||||
`s3_cache.py` itself never deletes cache entries; deletion should either be done manually or using automatic S3 life cycle rules on the bucket.
|
||||
|
||||
Similar to git, `s3_cache.py` makes the assumption that [SHA-256 will effectively never have a collision](http://stackoverflow.com/questions/4014090/is-it-safe-to-ignore-the-possibility-of-sha-collisions-in-practice).
|
||||
Similar to git, `s3_cache.py` makes the assumption that [SHA-256 will effectively never have a collision](https://stackoverflow.com/questions/4014090/is-it-safe-to-ignore-the-possibility-of-sha-collisions-in-practice).
|
||||
|
||||
|
||||
### For Bootstrap specifically
|
||||
|
@ -51,7 +51,7 @@ If it had to `generate` the cache, it will later create a tarball of the `cache`
|
|||
1. Create an Amazon Web Services (AWS) account.
|
||||
2. Create an Identity & Access Management (IAM) user, and note their credentials.
|
||||
3. Create an S3 bucket.
|
||||
4. Set permissions on the bucket to grant the user read+write access.
|
||||
4. Set permissions on the bucket to grant the user read + write access.
|
||||
5. Set the user credentials as secure Travis environment variables.
|
||||
|
||||
### In detail
|
||||
|
@ -70,7 +70,7 @@ If it had to `generate` the cache, it will later create a tarball of the `cache`
|
|||
|
||||
9. Determine and note what your bucket's ARN is. The ARN for an S3 bucket is of the form: `arn:aws:s3:::the-bucket-name-goes-here`
|
||||
10. In the bucket's Properties pane, in the "Permissions" section, click the "Edit bucket policy" button.
|
||||
11. Input and submit an IAM Policy that grants the user at least read+write rights to the bucket. AWS has a policy generator and some examples to help with crafting the policy. Here's the policy that Bootstrap uses, with the sensitive bits censored:
|
||||
11. Input and submit an IAM Policy that grants the user at least read + write rights to the bucket. AWS has a policy generator and some examples to help with crafting the policy. Here's the policy that Bootstrap uses, with the sensitive bits censored:
|
||||
|
||||
```json
|
||||
{
|
||||
|
|
5618
bootstrap/test-infra/npm-shrinkwrap.json
generated
5618
bootstrap/test-infra/npm-shrinkwrap.json
generated
File diff suppressed because it is too large
Load diff
Loading…
Reference in a new issue