From 25f57ee1fe9773b08d95d5f7d6ba93e2db048f8f Mon Sep 17 00:00:00 2001 From: Thomas Park Date: Thu, 22 Jan 2015 22:36:20 -0500 Subject: update bootstrap to 3.3.2 --- .../bootstrap-sass-official/.bower.json | 24 +- .../bootstrap-sass-official/CHANGELOG.md | 23 + .../bootstrap-sass-official/CONTRIBUTING.md | 9 +- bower_components/bootstrap-sass-official/README.md | 78 +- .../bootstrap/glyphicons-halflings-regular.eot | Bin 20335 -> 20127 bytes .../bootstrap/glyphicons-halflings-regular.svg | 487 +++-- .../bootstrap/glyphicons-halflings-regular.ttf | Bin 41280 -> 45404 bytes .../bootstrap/glyphicons-halflings-regular.woff | Bin 23320 -> 23424 bytes .../bootstrap/glyphicons-halflings-regular.woff2 | Bin 0 -> 18028 bytes .../assets/javascripts/bootstrap.js | 2160 ++++++++++---------- .../assets/javascripts/bootstrap.min.js | 7 + .../assets/javascripts/bootstrap/affix.js | 8 +- .../assets/javascripts/bootstrap/alert.js | 6 +- .../assets/javascripts/bootstrap/button.js | 6 +- .../assets/javascripts/bootstrap/carousel.js | 17 +- .../assets/javascripts/bootstrap/collapse.js | 8 +- .../assets/javascripts/bootstrap/dropdown.js | 6 +- .../assets/javascripts/bootstrap/modal.js | 6 +- .../assets/javascripts/bootstrap/popover.js | 20 +- .../assets/javascripts/bootstrap/scrollspy.js | 6 +- .../assets/javascripts/bootstrap/tab.js | 6 +- .../assets/javascripts/bootstrap/tooltip.js | 26 +- .../assets/javascripts/bootstrap/transition.js | 4 +- .../assets/stylesheets/_bootstrap-compass.scss | 2 + .../assets/stylesheets/_bootstrap-mincer.scss | 2 + .../assets/stylesheets/_bootstrap-sprockets.scss | 2 + .../assets/stylesheets/bootstrap/_alerts.scss | 5 + .../assets/stylesheets/bootstrap/_badges.scss | 4 + .../stylesheets/bootstrap/_button-groups.scss | 4 +- .../assets/stylesheets/bootstrap/_buttons.scss | 2 +- .../assets/stylesheets/bootstrap/_carousel.scss | 14 +- .../assets/stylesheets/bootstrap/_close.scss | 1 + .../assets/stylesheets/bootstrap/_dropdowns.scss | 3 +- .../assets/stylesheets/bootstrap/_forms.scss | 60 +- .../assets/stylesheets/bootstrap/_glyphicons.scss | 67 + .../assets/stylesheets/bootstrap/_jumbotron.scss | 1 + .../assets/stylesheets/bootstrap/_media.scss | 14 + .../assets/stylesheets/bootstrap/_navbar.scss | 1 + .../assets/stylesheets/bootstrap/_panels.scss | 6 +- .../assets/stylesheets/bootstrap/_popovers.scss | 2 +- .../bootstrap/_responsive-utilities.scss | 5 +- .../assets/stylesheets/bootstrap/_tables.scss | 6 +- .../assets/stylesheets/bootstrap/_theme.scss | 5 +- .../assets/stylesheets/bootstrap/_tooltip.scss | 2 +- .../assets/stylesheets/bootstrap/_variables.scss | 14 +- .../stylesheets/bootstrap/mixins/_hide-text.scss | 2 +- .../stylesheets/bootstrap/mixins/_opacity.scss | 2 +- .../bootstrap/mixins/_vendor-prefixes.scss | 2 +- .../bootstrap-sass-official/bower.json | 16 +- .../bootstrap-sass-official/package.json | 4 +- bower_components/bootstrap/.bower.json | 10 +- bower_components/bootstrap/Gruntfile.js | 53 +- bower_components/bootstrap/LICENSE | 2 +- bower_components/bootstrap/README.md | 21 +- bower_components/bootstrap/bower.json | 2 +- .../bootstrap/dist/css/bootstrap-theme.css | 10 +- .../bootstrap/dist/css/bootstrap-theme.css.map | 2 +- .../bootstrap/dist/css/bootstrap-theme.min.css | 6 +- bower_components/bootstrap/dist/css/bootstrap.css | 280 ++- .../bootstrap/dist/css/bootstrap.css.map | 2 +- .../bootstrap/dist/css/bootstrap.min.css | 6 +- .../dist/fonts/glyphicons-halflings-regular.eot | Bin 20335 -> 20127 bytes .../dist/fonts/glyphicons-halflings-regular.svg | 487 +++-- .../dist/fonts/glyphicons-halflings-regular.ttf | Bin 41280 -> 45404 bytes .../dist/fonts/glyphicons-halflings-regular.woff | Bin 23320 -> 23424 bytes .../dist/fonts/glyphicons-halflings-regular.woff2 | Bin 0 -> 18028 bytes bower_components/bootstrap/dist/js/bootstrap.js | 124 +- .../bootstrap/dist/js/bootstrap.min.js | 8 +- .../fonts/glyphicons-halflings-regular.eot | Bin 20335 -> 20127 bytes .../fonts/glyphicons-halflings-regular.svg | 487 +++-- .../fonts/glyphicons-halflings-regular.ttf | Bin 41280 -> 45404 bytes .../fonts/glyphicons-halflings-regular.woff | Bin 23320 -> 23424 bytes .../fonts/glyphicons-halflings-regular.woff2 | Bin 0 -> 18028 bytes .../grunt/bs-glyphicons-data-generator.js | 41 + bower_components/bootstrap/grunt/configBridge.json | 1 + .../bootstrap/grunt/sauce_browsers.yml | 8 +- bower_components/bootstrap/js/.jscsrc | 2 + bower_components/bootstrap/js/affix.js | 8 +- bower_components/bootstrap/js/alert.js | 6 +- bower_components/bootstrap/js/button.js | 6 +- bower_components/bootstrap/js/carousel.js | 17 +- bower_components/bootstrap/js/collapse.js | 8 +- bower_components/bootstrap/js/dropdown.js | 6 +- bower_components/bootstrap/js/modal.js | 6 +- bower_components/bootstrap/js/popover.js | 20 +- bower_components/bootstrap/js/scrollspy.js | 6 +- bower_components/bootstrap/js/tab.js | 6 +- bower_components/bootstrap/js/tooltip.js | 26 +- bower_components/bootstrap/js/transition.js | 4 +- bower_components/bootstrap/less/alerts.less | 5 + bower_components/bootstrap/less/badges.less | 4 + bower_components/bootstrap/less/button-groups.less | 4 +- bower_components/bootstrap/less/buttons.less | 2 +- bower_components/bootstrap/less/carousel.less | 14 +- bower_components/bootstrap/less/close.less | 1 + bower_components/bootstrap/less/dropdowns.less | 3 +- bower_components/bootstrap/less/forms.less | 62 +- bower_components/bootstrap/less/glyphicons.less | 67 + bower_components/bootstrap/less/jumbotron.less | 1 + bower_components/bootstrap/less/media.less | 14 + .../bootstrap/less/mixins/vendor-prefixes.less | 2 +- bower_components/bootstrap/less/navbar.less | 1 + bower_components/bootstrap/less/panels.less | 6 +- bower_components/bootstrap/less/popovers.less | 2 +- bower_components/bootstrap/less/tables.less | 6 +- bower_components/bootstrap/less/theme.less | 5 +- bower_components/bootstrap/less/tooltip.less | 2 +- bower_components/bootstrap/less/variables.less | 5 +- bower_components/bootstrap/package.json | 27 +- bower_components/jquery/.bower.json | 12 +- bower_components/jquery/bower.json | 4 +- bower_components/jquery/dist/jquery.js | 539 ++--- bower_components/jquery/dist/jquery.min.js | 8 +- bower_components/jquery/dist/jquery.min.map | 2 +- bower_components/jquery/src/ajax.js | 42 +- bower_components/jquery/src/ajax/xhr.js | 5 +- bower_components/jquery/src/attributes/attr.js | 2 - bower_components/jquery/src/attributes/classes.js | 8 +- bower_components/jquery/src/attributes/prop.js | 4 +- bower_components/jquery/src/attributes/support.js | 16 +- bower_components/jquery/src/attributes/val.js | 8 +- bower_components/jquery/src/core.js | 13 +- bower_components/jquery/src/core/init.js | 6 +- bower_components/jquery/src/core/ready.js | 2 +- bower_components/jquery/src/css.js | 57 +- bower_components/jquery/src/css/addGetHookIf.js | 6 +- bower_components/jquery/src/css/curCSS.js | 2 +- bower_components/jquery/src/css/defaultDisplay.js | 2 +- bower_components/jquery/src/css/support.js | 5 + bower_components/jquery/src/css/var/getStyles.js | 9 +- bower_components/jquery/src/data.js | 21 +- bower_components/jquery/src/data/Data.js | 6 +- bower_components/jquery/src/deferred.js | 4 +- bower_components/jquery/src/dimensions.js | 2 +- bower_components/jquery/src/effects.js | 59 +- bower_components/jquery/src/effects/Tween.js | 14 +- bower_components/jquery/src/event.js | 10 +- bower_components/jquery/src/event/ajax.js | 13 + bower_components/jquery/src/exports/global.js | 4 +- bower_components/jquery/src/intro.js | 16 +- bower_components/jquery/src/jquery.js | 1 + bower_components/jquery/src/manipulation.js | 20 +- .../jquery/src/manipulation/support.js | 11 +- bower_components/jquery/src/offset.js | 15 +- bower_components/jquery/src/queue.js | 6 +- bower_components/jquery/src/sizzle/dist/sizzle.js | 143 +- .../jquery/src/sizzle/dist/sizzle.min.js | 6 +- .../jquery/src/sizzle/dist/sizzle.min.map | 2 +- bower_components/jquery/src/traversing.js | 7 +- bower_components/jquery/src/wrap.js | 1 + 150 files changed, 3460 insertions(+), 2712 deletions(-) create mode 100644 bower_components/bootstrap-sass-official/assets/fonts/bootstrap/glyphicons-halflings-regular.woff2 create mode 100644 bower_components/bootstrap-sass-official/assets/javascripts/bootstrap.min.js create mode 100644 bower_components/bootstrap/dist/fonts/glyphicons-halflings-regular.woff2 create mode 100644 bower_components/bootstrap/fonts/glyphicons-halflings-regular.woff2 create mode 100644 bower_components/bootstrap/grunt/bs-glyphicons-data-generator.js create mode 100644 bower_components/jquery/src/event/ajax.js diff --git a/bower_components/bootstrap-sass-official/.bower.json b/bower_components/bootstrap-sass-official/.bower.json index 8adff0ea..315983f9 100644 --- a/bower_components/bootstrap-sass-official/.bower.json +++ b/bower_components/bootstrap-sass-official/.bower.json @@ -1,6 +1,6 @@ { "name": "bootstrap-sass", - "version": "3.3.1", + "version": "3.3.3", "homepage": "https://github.com/twbs/bootstrap-sass", "authors": [ "Thomas McDonald", @@ -15,18 +15,8 @@ "assets/fonts/bootstrap/glyphicons-halflings-regular.svg", "assets/fonts/bootstrap/glyphicons-halflings-regular.ttf", "assets/fonts/bootstrap/glyphicons-halflings-regular.woff", - "assets/javascripts/bootstrap/affix.js", - "assets/javascripts/bootstrap/alert.js", - "assets/javascripts/bootstrap/button.js", - "assets/javascripts/bootstrap/carousel.js", - "assets/javascripts/bootstrap/collapse.js", - "assets/javascripts/bootstrap/dropdown.js", - "assets/javascripts/bootstrap/tab.js", - "assets/javascripts/bootstrap/transition.js", - "assets/javascripts/bootstrap/scrollspy.js", - "assets/javascripts/bootstrap/modal.js", - "assets/javascripts/bootstrap/tooltip.js", - "assets/javascripts/bootstrap/popover.js" + "assets/fonts/bootstrap/glyphicons-halflings-regular.woff2", + "assets/javascripts/bootstrap.js" ], "keywords": [ "twbs", @@ -47,13 +37,13 @@ "dependencies": { "jquery": ">= 1.9.0" }, - "_release": "3.3.1", + "_release": "3.3.3", "_resolution": { "type": "version", - "tag": "v3.3.1", - "commit": "cdad0d4b5d17e6bc84863b2907b82d45e856be22" + "tag": "v3.3.3", + "commit": "ed0a2bfdc9e33c3f350306252ee8da9da47d6107" }, "_source": "git://github.com/twbs/bootstrap-sass.git", - "_target": "~3.3.1", + "_target": "~3.3.2", "_originalSource": "bootstrap-sass-official" } \ No newline at end of file diff --git a/bower_components/bootstrap-sass-official/CHANGELOG.md b/bower_components/bootstrap-sass-official/CHANGELOG.md index a677170a..7d31b5f2 100644 --- a/bower_components/bootstrap-sass-official/CHANGELOG.md +++ b/bower_components/bootstrap-sass-official/CHANGELOG.md @@ -1,5 +1,28 @@ # Changelog +## 3.3.3 + +This is a re-packaged release of 3.3.2.1 (v3.3.2+1). + +Versions are now strictly semver. +The PATCH version may be ahead of the upstream. + +Framework version: Bootstrap **v3.3.2**. + +## 3.3.2.1 + +* Fix glyphicons regression (revert 443d5b49eac84aec1cb2f8ea173554327bfc8c14) + +## 3.3.2.0 + +* Autoprefixer is now required, and `autoprefixer-rails` is now a dependency for the ruby gem. [#824](https://github.com/twbs/bootstrap-sass/issues/824) +* Minimum precision reduced from 10 to 8 [#821](https://github.com/twbs/bootstrap-sass/issues/821) +* Requiring bootstrap JS from npm now works [#812](https://github.com/twbs/bootstrap-sass/issues/812) +* Fix Sass 3.4.x + IE10 compatibility issue [#803](https://github.com/twbs/bootstrap-sass/issues/803) +* Provide minified JS bundle [#777](https://github.com/twbs/bootstrap-sass/issues/777) +* Bower package is now at bootstrap-sass [#813](https://github.com/twbs/bootstrap-sass/issues/813) + + ## 3.3.1.0 * Variables override template at templates/project/_bootstrap-variables.sass diff --git a/bower_components/bootstrap-sass-official/CONTRIBUTING.md b/bower_components/bootstrap-sass-official/CONTRIBUTING.md index a165a857..246b96df 100644 --- a/bower_components/bootstrap-sass-official/CONTRIBUTING.md +++ b/bower_components/bootstrap-sass-official/CONTRIBUTING.md @@ -57,7 +57,11 @@ Example: **We will not accept pull requests that modify the SCSS beyond fixing bugs caused by *our* code!** -Most pull requests should go to [twbs/bootstrap](https://github.com/twbs/bootstrap) or [jlong/sass-twitter-bootstrap](https://github.com/jlong/sass-twitter-bootstrap) +We use a [converter script][converter-readme] to automatically convert upstream bootstrap, written in LESS, to Sass. + +Issues related to styles or javascript but unrelated to the conversion process should go to [twbs/bootstrap][upstream]. + +Pull requests that fix bugs caused by our code should not modify the SCSS directly, but should patch the converter instead. Good pull requests - patches, improvements, new features - are a fantastic help. They should remain focused in scope and avoid containing unrelated @@ -77,3 +81,6 @@ Please **do not** derail or troll issues. Keep the discussion on topic and respect the opinions of others. *props [html5-boilerplate](https://github.com/h5bp/html5-boilerplate/blob/master/CONTRIBUTING.md)* + +[upstream]: https://github.com/twbs/bootstrap +[converter-readme]: https://github.com/twbs/bootstrap-sass/blob/master/README.md#upstream-converter diff --git a/bower_components/bootstrap-sass-official/README.md b/bower_components/bootstrap-sass-official/README.md index 5a9692b1..2499ab02 100644 --- a/bower_components/bootstrap-sass-official/README.md +++ b/bower_components/bootstrap-sass-official/README.md @@ -1,4 +1,4 @@ -# Bootstrap for Sass [![Gem Version](https://badge.fury.io/rb/bootstrap-sass.svg)](http://badge.fury.io/rb/bootstrap-sass) [![Bower Version](https://badge.fury.io/bo/bootstrap-sass-official.svg)](http://badge.fury.io/bo/bootstrap-sass-official) [![Build Status](http://img.shields.io/travis/twbs/bootstrap-sass.svg)](http://travis-ci.org/twbs/bootstrap-sass) +# Bootstrap for Sass [![Gem Version](https://badge.fury.io/rb/bootstrap-sass.svg)](http://badge.fury.io/rb/bootstrap-sass) [![Bower Version](https://badge.fury.io/bo/bootstrap-sass.svg)](http://badge.fury.io/bo/bootstrap-sass) [![Build Status](http://img.shields.io/travis/twbs/bootstrap-sass.svg)](http://travis-ci.org/twbs/bootstrap-sass) `bootstrap-sass` is a Sass-powered version of [Bootstrap](http://github.com/twbs/bootstrap), ready to drop right into your Sass powered applications. @@ -17,17 +17,10 @@ Please see the appropriate guide for your environment of choice: In your Gemfile you need to add the `bootstrap-sass` gem, and ensure that the `sass-rails` gem is present - it is added to new Rails applications by default. ```ruby -gem 'bootstrap-sass', '~> 3.3.1' +gem 'bootstrap-sass', '~> 3.3.3' gem 'sass-rails', '>= 3.2' ``` -It is also recommended to use [Autoprefixer](https://github.com/ai/autoprefixer-rails) with Bootstrap -to add browser vendor prefixes automatically. Simply add the gem: - -```ruby -gem 'autoprefixer-rails' -``` - `bundle install` and restart your server to make the files available through the pipeline. Import Bootstrap styles in `app/assets/stylesheets/application.css.scss`: @@ -41,12 +34,14 @@ Import Bootstrap styles in `app/assets/stylesheets/application.css.scss`: `bootstrap-sprockets` must be imported before `bootstrap` for the icon fonts to work. Make sure the file has `.css.scss` extension (or `.css.sass` for Sass syntax). If you have just generated a new Rails app, -it may come with a `.css` file instead. If this file exists, it will be served instead of Sass, so remove it: +it may come with a `.css` file instead. If this file exists, it will be served instead of Sass, so rename it: ```console -$ rm app/assets/stylesheets/application.css +$ mv app/assets/stylesheets/application.css app/assets/stylesheets/application.css.scss ``` +Then, remove all the `//= require` and `//= require_tree` statements from the file. Instead, use `@import` to import Sass files. + Do not use `//= require` in Sass or your other stylesheets will not be [able to access][antirequire] the Bootstrap mixins or variables. Require Bootstrap Javascripts in `app/assets/javascripts/application.js`: @@ -67,9 +62,9 @@ root.join('vendor', 'assets', 'bower_components').to_s.tap do |bower_path| config.assets.paths << bower_path end # Precompile Bootstrap fonts -config.assets.precompile << %r(bootstrap-sass/assets/fonts/bootstrap/[\w-]+\.(?:eot|svg|ttf|woff)$) +config.assets.precompile << %r(bootstrap-sass/assets/fonts/bootstrap/[\w-]+\.(?:eot|svg|ttf|woff2?)$) # Minimum Sass number precision required by bootstrap-sass -::Sass::Script::Number.precision = [10, ::Sass::Script::Number.precision].max +::Sass::Script::Number.precision = [8, ::Sass::Script::Number.precision].max ``` Replace Bootstrap `@import` statements in `application.css.scss` with: @@ -92,35 +87,29 @@ Please make sure `sprockets-rails` is at least v2.1.4. #### Rails 3.2.x -Rails 3.2 is [no longer maintained for bugfixes](http://guides.rubyonrails.org/maintenance_policy.html), and you should upgrade as soon as possible. - -Starting with bootstrap-sass v3.1.1.1, due to the structural changes from upstream you will need these -backported asset pipeline gems on Rails 3.2. There is more on why this is necessary in -https://github.com/twbs/bootstrap-sass/issues/523 and https://github.com/twbs/bootstrap-sass/issues/578. - -```ruby -gem 'sprockets-rails', '=2.0.0.backport1' -gem 'sprockets', '=2.2.2.backport2' -gem 'sass-rails', github: 'guilleiguaran/sass-rails', branch: 'backport' -``` +bootstrap-sass is no longer compatible with Rails 3. The latest version of bootstrap-sass compatible with Rails 3.2 is v3.1.1.0. ### b. Compass without Rails -Install the gem -```sh -gem install bootstrap-sass +Install the gem: + +```console +$ gem install bootstrap-sass ``` If you have an existing Compass project: -```ruby -# config.rb: -require 'bootstrap-sass' -``` +1. Require `bootstrap-sass` in `config.rb`: -```console -$ bundle exec compass install bootstrap -``` + ```ruby + require 'bootstrap-sass' + ``` + +2. Install Bootstrap with: + + ```console + $ bundle exec compass install bootstrap -r bootstrap-sass + ``` If you are creating a new Compass project, you can generate it with bootstrap-sass support: @@ -144,24 +133,22 @@ If this happens, change the import order so that Compass mixins are loaded later ### c. Bower -Using bootstrap-sass as a Bower package is still being tested. It is compatible with node-sass 0.8.3+. You can install it with: +bootstrap-sass Bower package is compatible with node-sass 1.2.3+. You can install it with: ```console -$ bower install bootstrap-sass-official +$ bower install bootstrap-sass ``` -`bootstrap-sass` is taken so make sure you use the command above. - Sass, JS, and all other assets are located at [assets](/assets). -By default, `bower.json` main field list only the main `bootstrap.scss` and all the static assets (fonts and JS). +By default, `bower.json` main field list only the main `_bootstrap.scss` and all the static assets (fonts and JS). This is compatible by default with asset managers such as [wiredep](https://github.com/taptapship/wiredep). #### Node.js Mincer -If you use [mincer][mincer] with node-sass, import bootstrap into like so: +If you use [mincer][mincer] with node-sass, import bootstrap like so: -In `application.css.ejs.scss` (NB **.css.ejs.css**): +In `application.css.ejs.scss` (NB **.css.ejs.scss**): ```scss // Import mincer asset paths helper integration @@ -195,21 +182,18 @@ In the application Sass file, replace `@import 'bootstrap'` with: #### Sass: Number Precision -bootstrap-sass [requires](https://github.com/twbs/bootstrap-sass/issues/409) minimum [Sass number precision][sass-precision] of 10 (default is 5). +bootstrap-sass [requires](https://github.com/twbs/bootstrap-sass/issues/409) minimum [Sass number precision][sass-precision] of 8 (default is 5). Precision is set for Rails and Compass automatically. When using ruby Sass compiler standalone or with the Bower version you can set it with: ```ruby -::Sass::Script::Number.precision = [10, ::Sass::Script::Number.precision].max +::Sass::Script::Number.precision = [8, ::Sass::Script::Number.precision].max ``` -Note that libsass and node-sass do not currently support the precision option, due to an open bug ([bug #364](https://github.com/sass/libsass/issues/364)) in libsass. - - #### Sass: Autoprefixer -Using [Autoprefixer][autoprefixer] with Bootstrap is recommended. +Bootstrap requires the use of [Autoprefixer][autoprefixer]. [Autoprefixer][autoprefixer] adds vendor prefixes to CSS rules using values from [Can I Use](http://caniuse.com/). #### JavaScript diff --git a/bower_components/bootstrap-sass-official/assets/fonts/bootstrap/glyphicons-halflings-regular.eot b/bower_components/bootstrap-sass-official/assets/fonts/bootstrap/glyphicons-halflings-regular.eot index 4a4ca865..b93a4953 100644 Binary files a/bower_components/bootstrap-sass-official/assets/fonts/bootstrap/glyphicons-halflings-regular.eot and b/bower_components/bootstrap-sass-official/assets/fonts/bootstrap/glyphicons-halflings-regular.eot differ diff --git a/bower_components/bootstrap-sass-official/assets/fonts/bootstrap/glyphicons-halflings-regular.svg b/bower_components/bootstrap-sass-official/assets/fonts/bootstrap/glyphicons-halflings-regular.svg index 25691af8..94fb5490 100644 --- a/bower_components/bootstrap-sass-official/assets/fonts/bootstrap/glyphicons-halflings-regular.svg +++ b/bower_components/bootstrap-sass-official/assets/fonts/bootstrap/glyphicons-halflings-regular.svg @@ -6,224 +6,283 @@ - - - + + - - + + - - - - - - - - - + + + + + + + + + + - - - + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - \ No newline at end of file + \ No newline at end of file diff --git a/bower_components/bootstrap-sass-official/assets/fonts/bootstrap/glyphicons-halflings-regular.ttf b/bower_components/bootstrap-sass-official/assets/fonts/bootstrap/glyphicons-halflings-regular.ttf index 67fa00bf..1413fc60 100644 Binary files a/bower_components/bootstrap-sass-official/assets/fonts/bootstrap/glyphicons-halflings-regular.ttf and b/bower_components/bootstrap-sass-official/assets/fonts/bootstrap/glyphicons-halflings-regular.ttf differ diff --git a/bower_components/bootstrap-sass-official/assets/fonts/bootstrap/glyphicons-halflings-regular.woff b/bower_components/bootstrap-sass-official/assets/fonts/bootstrap/glyphicons-halflings-regular.woff index 8c54182a..9e612858 100644 Binary files a/bower_components/bootstrap-sass-official/assets/fonts/bootstrap/glyphicons-halflings-regular.woff and b/bower_components/bootstrap-sass-official/assets/fonts/bootstrap/glyphicons-halflings-regular.woff differ diff --git a/bower_components/bootstrap-sass-official/assets/fonts/bootstrap/glyphicons-halflings-regular.woff2 b/bower_components/bootstrap-sass-official/assets/fonts/bootstrap/glyphicons-halflings-regular.woff2 new file mode 100644 index 00000000..64539b54 Binary files /dev/null and b/bower_components/bootstrap-sass-official/assets/fonts/bootstrap/glyphicons-halflings-regular.woff2 differ diff --git a/bower_components/bootstrap-sass-official/assets/javascripts/bootstrap.js b/bower_components/bootstrap-sass-official/assets/javascripts/bootstrap.js index 485f5f96..4139b6fc 100644 --- a/bower_components/bootstrap-sass-official/assets/javascripts/bootstrap.js +++ b/bower_components/bootstrap-sass-official/assets/javascripts/bootstrap.js @@ -1,171 +1,86 @@ -/* ======================================================================== - * Bootstrap: affix.js v3.3.1 - * http://getbootstrap.com/javascript/#affix - * ======================================================================== - * Copyright 2011-2014 Twitter, Inc. +/*! + * Bootstrap v3.3.2 (http://getbootstrap.com) + * Copyright 2011-2015 Twitter, Inc. * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) - * ======================================================================== */ + */ +if (typeof jQuery === 'undefined') { + throw new Error('Bootstrap\'s JavaScript requires jQuery') +} +function ($) { 'use strict'; - - // AFFIX CLASS DEFINITION - // ====================== - - var Affix = function (element, options) { - this.options = $.extend({}, Affix.DEFAULTS, options) - - this.$target = $(this.options.target) - .on('scroll.bs.affix.data-api', $.proxy(this.checkPosition, this)) - .on('click.bs.affix.data-api', $.proxy(this.checkPositionWithEventLoop, this)) - - this.$element = $(element) - this.affixed = - this.unpin = - this.pinnedOffset = null - - this.checkPosition() - } - - Affix.VERSION = '3.3.1' - - Affix.RESET = 'affix affix-top affix-bottom' - - Affix.DEFAULTS = { - offset: 0, - target: window - } - - Affix.prototype.getState = function (scrollHeight, height, offsetTop, offsetBottom) { - var scrollTop = this.$target.scrollTop() - var position = this.$element.offset() - var targetHeight = this.$target.height() - - if (offsetTop != null && this.affixed == 'top') return scrollTop < offsetTop ? 'top' : false - - if (this.affixed == 'bottom') { - if (offsetTop != null) return (scrollTop + this.unpin <= position.top) ? false : 'bottom' - return (scrollTop + targetHeight <= scrollHeight - offsetBottom) ? false : 'bottom' - } - - var initializing = this.affixed == null - var colliderTop = initializing ? scrollTop : position.top - var colliderHeight = initializing ? targetHeight : height - - if (offsetTop != null && colliderTop <= offsetTop) return 'top' - if (offsetBottom != null && (colliderTop + colliderHeight >= scrollHeight - offsetBottom)) return 'bottom' - - return false - } - - Affix.prototype.getPinnedOffset = function () { - if (this.pinnedOffset) return this.pinnedOffset - this.$element.removeClass(Affix.RESET).addClass('affix') - var scrollTop = this.$target.scrollTop() - var position = this.$element.offset() - return (this.pinnedOffset = position.top - scrollTop) - } - - Affix.prototype.checkPositionWithEventLoop = function () { - setTimeout($.proxy(this.checkPosition, this), 1) + 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') } +}(jQuery); - Affix.prototype.checkPosition = function () { - if (!this.$element.is(':visible')) return - - var height = this.$element.height() - var offset = this.options.offset - var offsetTop = offset.top - var offsetBottom = offset.bottom - var scrollHeight = $('body').height() - - if (typeof offset != 'object') offsetBottom = offsetTop = offset - if (typeof offsetTop == 'function') offsetTop = offset.top(this.$element) - if (typeof offsetBottom == 'function') offsetBottom = offset.bottom(this.$element) - - var affix = this.getState(scrollHeight, height, offsetTop, offsetBottom) - - if (this.affixed != affix) { - if (this.unpin != null) this.$element.css('top', '') +/* ======================================================================== + * Bootstrap: transition.js v3.3.2 + * http://getbootstrap.com/javascript/#transitions + * ======================================================================== + * Copyright 2011-2015 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + * ======================================================================== */ - var affixType = 'affix' + (affix ? '-' + affix : '') - var e = $.Event(affixType + '.bs.affix') - this.$element.trigger(e) ++function ($) { + 'use strict'; - if (e.isDefaultPrevented()) return + // CSS TRANSITION SUPPORT (Shoutout: http://www.modernizr.com/) + // ============================================================ - this.affixed = affix - this.unpin = affix == 'bottom' ? this.getPinnedOffset() : null + function transitionEnd() { + var el = document.createElement('bootstrap') - this.$element - .removeClass(Affix.RESET) - .addClass(affixType) - .trigger(affixType.replace('affix', 'affixed') + '.bs.affix') + var transEndEventNames = { + WebkitTransition : 'webkitTransitionEnd', + MozTransition : 'transitionend', + OTransition : 'oTransitionEnd otransitionend', + transition : 'transitionend' } - if (affix == 'bottom') { - this.$element.offset({ - top: scrollHeight - height - offsetBottom - }) + for (var name in transEndEventNames) { + if (el.style[name] !== undefined) { + return { end: transEndEventNames[name] } + } } - } - - - // AFFIX PLUGIN DEFINITION - // ======================= - - function Plugin(option) { - return this.each(function () { - var $this = $(this) - var data = $this.data('bs.affix') - var options = typeof option == 'object' && option - if (!data) $this.data('bs.affix', (data = new Affix(this, options))) - if (typeof option == 'string') data[option]() - }) + return false // explicit for ie8 ( ._.) } - var old = $.fn.affix - - $.fn.affix = Plugin - $.fn.affix.Constructor = Affix - - - // AFFIX NO CONFLICT - // ================= - - $.fn.affix.noConflict = function () { - $.fn.affix = old + // http://blog.alexmaccaw.com/css-transitions + $.fn.emulateTransitionEnd = function (duration) { + var called = false + var $el = this + $(this).one('bsTransitionEnd', function () { called = true }) + var callback = function () { if (!called) $($el).trigger($.support.transition.end) } + setTimeout(callback, duration) return this } + $(function () { + $.support.transition = transitionEnd() - // AFFIX DATA-API - // ============== - - $(window).on('load', function () { - $('[data-spy="affix"]').each(function () { - var $spy = $(this) - var data = $spy.data() - - data.offset = data.offset || {} - - if (data.offsetBottom != null) data.offset.bottom = data.offsetBottom - if (data.offsetTop != null) data.offset.top = data.offsetTop + if (!$.support.transition) return - Plugin.call($spy, data) - }) + $.event.special.bsTransitionEnd = { + bindType: $.support.transition.end, + delegateType: $.support.transition.end, + handle: function (e) { + if ($(e.target).is(this)) return e.handleObj.handler.apply(this, arguments) + } + } }) }(jQuery); /* ======================================================================== - * Bootstrap: alert.js v3.3.1 + * Bootstrap: alert.js v3.3.2 * http://getbootstrap.com/javascript/#alerts * ======================================================================== - * Copyright 2011-2014 Twitter, Inc. + * Copyright 2011-2015 Twitter, Inc. * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) * ======================================================================== */ @@ -181,7 +96,7 @@ $(el).on('click', dismiss, this.close) } - Alert.VERSION = '3.3.1' + Alert.VERSION = '3.3.2' Alert.TRANSITION_DURATION = 150 @@ -257,10 +172,10 @@ }(jQuery); /* ======================================================================== - * Bootstrap: button.js v3.3.1 + * Bootstrap: button.js v3.3.2 * http://getbootstrap.com/javascript/#buttons * ======================================================================== - * Copyright 2011-2014 Twitter, Inc. + * Copyright 2011-2015 Twitter, Inc. * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) * ======================================================================== */ @@ -277,7 +192,7 @@ this.isLoading = false } - Button.VERSION = '3.3.1' + Button.VERSION = '3.3.2' Button.DEFAULTS = { loadingText: 'loading...' @@ -374,10 +289,10 @@ }(jQuery); /* ======================================================================== - * Bootstrap: carousel.js v3.3.1 + * Bootstrap: carousel.js v3.3.2 * http://getbootstrap.com/javascript/#carousel * ======================================================================== - * Copyright 2011-2014 Twitter, Inc. + * Copyright 2011-2015 Twitter, Inc. * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) * ======================================================================== */ @@ -405,7 +320,7 @@ .on('mouseleave.bs.carousel', $.proxy(this.cycle, this)) } - Carousel.VERSION = '3.3.1' + Carousel.VERSION = '3.3.2' Carousel.TRANSITION_DURATION = 600 @@ -445,8 +360,11 @@ } Carousel.prototype.getItemForDirection = function (direction, active) { - var delta = direction == 'prev' ? -1 : 1 var activeIndex = this.getItemIndex(active) + var willWrap = (direction == 'prev' && activeIndex === 0) + || (direction == 'next' && activeIndex == (this.$items.length - 1)) + if (willWrap && !this.options.wrap) return active + var delta = direction == 'prev' ? -1 : 1 var itemIndex = (activeIndex + delta) % this.$items.length return this.$items.eq(itemIndex) } @@ -491,14 +409,8 @@ var $next = next || this.getItemForDirection(type, $active) var isCycling = this.interval var direction = type == 'next' ? 'left' : 'right' - var fallback = type == 'next' ? 'first' : 'last' var that = this - if (!$next.length) { - if (!this.options.wrap) return - $next = this.$element.find('.item')[fallback]() - } - if ($next.hasClass('active')) return (this.sliding = false) var relatedTarget = $next[0] @@ -615,10 +527,10 @@ }(jQuery); /* ======================================================================== - * Bootstrap: collapse.js v3.3.1 + * Bootstrap: collapse.js v3.3.2 * http://getbootstrap.com/javascript/#collapse * ======================================================================== - * Copyright 2011-2014 Twitter, Inc. + * Copyright 2011-2015 Twitter, Inc. * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) * ======================================================================== */ @@ -644,7 +556,7 @@ if (this.options.toggle) this.toggle() } - Collapse.VERSION = '3.3.1' + Collapse.VERSION = '3.3.2' Collapse.TRANSITION_DURATION = 350 @@ -662,7 +574,7 @@ if (this.transitioning || this.$element.hasClass('in')) return var activesData - var actives = this.$parent && this.$parent.find('> .panel').children('.in, .collapsing') + var actives = this.$parent && this.$parent.children('.panel').children('.in, .collapsing') if (actives && actives.length) { activesData = actives.data('bs.collapse') @@ -827,10 +739,10 @@ }(jQuery); /* ======================================================================== - * Bootstrap: dropdown.js v3.3.1 + * Bootstrap: dropdown.js v3.3.2 * http://getbootstrap.com/javascript/#dropdowns * ======================================================================== - * Copyright 2011-2014 Twitter, Inc. + * Copyright 2011-2015 Twitter, Inc. * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) * ======================================================================== */ @@ -847,7 +759,7 @@ $(element).on('click.bs.dropdown', this.toggle) } - Dropdown.VERSION = '3.3.1' + Dropdown.VERSION = '3.3.2' Dropdown.prototype.toggle = function (e) { var $this = $(this) @@ -989,10 +901,10 @@ }(jQuery); /* ======================================================================== - * Bootstrap: tab.js v3.3.1 - * http://getbootstrap.com/javascript/#tabs + * Bootstrap: modal.js v3.3.2 + * http://getbootstrap.com/javascript/#modals * ======================================================================== - * Copyright 2011-2014 Twitter, Inc. + * Copyright 2011-2015 Twitter, Inc. * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) * ======================================================================== */ @@ -1000,213 +912,325 @@ +function ($) { 'use strict'; - // TAB CLASS DEFINITION - // ==================== + // MODAL CLASS DEFINITION + // ====================== - var Tab = function (element) { - this.element = $(element) + var Modal = function (element, options) { + this.options = options + this.$body = $(document.body) + this.$element = $(element) + this.$backdrop = + this.isShown = null + this.scrollbarWidth = 0 + + if (this.options.remote) { + this.$element + .find('.modal-content') + .load(this.options.remote, $.proxy(function () { + this.$element.trigger('loaded.bs.modal') + }, this)) + } } - Tab.VERSION = '3.3.1' + Modal.VERSION = '3.3.2' - Tab.TRANSITION_DURATION = 150 + Modal.TRANSITION_DURATION = 300 + Modal.BACKDROP_TRANSITION_DURATION = 150 - Tab.prototype.show = function () { - var $this = this.element - var $ul = $this.closest('ul:not(.dropdown-menu)') - var selector = $this.data('target') + Modal.DEFAULTS = { + backdrop: true, + keyboard: true, + show: true + } - if (!selector) { - selector = $this.attr('href') - selector = selector && selector.replace(/.*(?=#[^\s]*$)/, '') // strip for ie7 - } + Modal.prototype.toggle = function (_relatedTarget) { + return this.isShown ? this.hide() : this.show(_relatedTarget) + } - if ($this.parent('li').hasClass('active')) return + Modal.prototype.show = function (_relatedTarget) { + var that = this + var e = $.Event('show.bs.modal', { relatedTarget: _relatedTarget }) - var $previous = $ul.find('.active:last a') - var hideEvent = $.Event('hide.bs.tab', { - relatedTarget: $this[0] - }) - var showEvent = $.Event('show.bs.tab', { - relatedTarget: $previous[0] - }) + this.$element.trigger(e) - $previous.trigger(hideEvent) - $this.trigger(showEvent) + if (this.isShown || e.isDefaultPrevented()) return - if (showEvent.isDefaultPrevented() || hideEvent.isDefaultPrevented()) return + this.isShown = true - var $target = $(selector) + this.checkScrollbar() + this.setScrollbar() + this.$body.addClass('modal-open') - this.activate($this.closest('li'), $ul) - this.activate($target, $target.parent(), function () { - $previous.trigger({ - type: 'hidden.bs.tab', - relatedTarget: $this[0] - }) - $this.trigger({ - type: 'shown.bs.tab', - relatedTarget: $previous[0] - }) - }) - } + this.escape() + this.resize() - Tab.prototype.activate = function (element, container, callback) { - var $active = container.find('> .active') - var transition = callback - && $.support.transition - && (($active.length && $active.hasClass('fade')) || !!container.find('> .fade').length) + this.$element.on('click.dismiss.bs.modal', '[data-dismiss="modal"]', $.proxy(this.hide, this)) - function next() { - $active - .removeClass('active') - .find('> .dropdown-menu > .active') - .removeClass('active') - .end() - .find('[data-toggle="tab"]') - .attr('aria-expanded', false) + this.backdrop(function () { + var transition = $.support.transition && that.$element.hasClass('fade') - element - .addClass('active') - .find('[data-toggle="tab"]') - .attr('aria-expanded', true) + if (!that.$element.parent().length) { + that.$element.appendTo(that.$body) // don't move modals dom position + } + + that.$element + .show() + .scrollTop(0) + + if (that.options.backdrop) that.adjustBackdrop() + that.adjustDialog() if (transition) { - element[0].offsetWidth // reflow for transition - element.addClass('in') - } else { - element.removeClass('fade') + that.$element[0].offsetWidth // force reflow } - if (element.parent('.dropdown-menu')) { - element - .closest('li.dropdown') - .addClass('active') - .end() - .find('[data-toggle="tab"]') - .attr('aria-expanded', true) - } + that.$element + .addClass('in') + .attr('aria-hidden', false) - callback && callback() - } + that.enforceFocus() - $active.length && transition ? - $active - .one('bsTransitionEnd', next) - .emulateTransitionEnd(Tab.TRANSITION_DURATION) : - next() + var e = $.Event('shown.bs.modal', { relatedTarget: _relatedTarget }) - $active.removeClass('in') + transition ? + that.$element.find('.modal-dialog') // wait for modal to slide in + .one('bsTransitionEnd', function () { + that.$element.trigger('focus').trigger(e) + }) + .emulateTransitionEnd(Modal.TRANSITION_DURATION) : + that.$element.trigger('focus').trigger(e) + }) } + Modal.prototype.hide = function (e) { + if (e) e.preventDefault() - // TAB PLUGIN DEFINITION - // ===================== + e = $.Event('hide.bs.modal') - function Plugin(option) { - return this.each(function () { - var $this = $(this) - var data = $this.data('bs.tab') + this.$element.trigger(e) - if (!data) $this.data('bs.tab', (data = new Tab(this))) - if (typeof option == 'string') data[option]() - }) - } + if (!this.isShown || e.isDefaultPrevented()) return - var old = $.fn.tab + this.isShown = false - $.fn.tab = Plugin - $.fn.tab.Constructor = Tab + this.escape() + this.resize() + $(document).off('focusin.bs.modal') - // TAB NO CONFLICT - // =============== + this.$element + .removeClass('in') + .attr('aria-hidden', true) + .off('click.dismiss.bs.modal') - $.fn.tab.noConflict = function () { - $.fn.tab = old - return this + $.support.transition && this.$element.hasClass('fade') ? + this.$element + .one('bsTransitionEnd', $.proxy(this.hideModal, this)) + .emulateTransitionEnd(Modal.TRANSITION_DURATION) : + this.hideModal() } + Modal.prototype.enforceFocus = function () { + $(document) + .off('focusin.bs.modal') // guard against infinite focus loop + .on('focusin.bs.modal', $.proxy(function (e) { + if (this.$element[0] !== e.target && !this.$element.has(e.target).length) { + this.$element.trigger('focus') + } + }, this)) + } - // TAB DATA-API - // ============ + Modal.prototype.escape = function () { + if (this.isShown && this.options.keyboard) { + this.$element.on('keydown.dismiss.bs.modal', $.proxy(function (e) { + e.which == 27 && this.hide() + }, this)) + } else if (!this.isShown) { + this.$element.off('keydown.dismiss.bs.modal') + } + } - var clickHandler = function (e) { - e.preventDefault() - Plugin.call($(this), 'show') + Modal.prototype.resize = function () { + if (this.isShown) { + $(window).on('resize.bs.modal', $.proxy(this.handleUpdate, this)) + } else { + $(window).off('resize.bs.modal') + } } - $(document) - .on('click.bs.tab.data-api', '[data-toggle="tab"]', clickHandler) - .on('click.bs.tab.data-api', '[data-toggle="pill"]', clickHandler) + Modal.prototype.hideModal = function () { + var that = this + this.$element.hide() + this.backdrop(function () { + that.$body.removeClass('modal-open') + that.resetAdjustments() + that.resetScrollbar() + that.$element.trigger('hidden.bs.modal') + }) + } -}(jQuery); + Modal.prototype.removeBackdrop = function () { + this.$backdrop && this.$backdrop.remove() + this.$backdrop = null + } -/* ======================================================================== - * Bootstrap: transition.js v3.3.1 - * http://getbootstrap.com/javascript/#transitions - * ======================================================================== - * Copyright 2011-2014 Twitter, Inc. - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) - * ======================================================================== */ + Modal.prototype.backdrop = function (callback) { + var that = this + var animate = this.$element.hasClass('fade') ? 'fade' : '' + if (this.isShown && this.options.backdrop) { + var doAnimate = $.support.transition && animate -+function ($) { - 'use strict'; + this.$backdrop = $('