railsstrap 3.2.0.2 → 3.2.0.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (90) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +39 -4
  3. data/Rakefile +1 -0
  4. data/app/helpers/railsstrap/bootstrap_flash_helper.rb +15 -3
  5. data/app/helpers/railsstrap/navbar_helper.rb +1 -1
  6. data/lib/generators/railsstrap/install/install_generator.rb +18 -0
  7. data/lib/generators/railsstrap/install/templates/bootstrap.coffee +11 -0
  8. data/lib/generators/railsstrap/install/templates/bootstrap.js +15 -3
  9. data/lib/generators/railsstrap/install/templates/bootstrap_and_overrides.css +5 -5
  10. data/lib/generators/railsstrap/install/templates/bootstrap_and_overrides.less +7 -5
  11. data/lib/railsstrap/constants.rb +1 -1
  12. data/vendor/assets/stylesheets/animate/animate.less +31 -0
  13. data/vendor/assets/stylesheets/animate/bounce/bounce.less +41 -0
  14. data/vendor/assets/stylesheets/animate/bounce/bounceIn.less +58 -0
  15. data/vendor/assets/stylesheets/animate/bounce/bounceInDown.less +56 -0
  16. data/vendor/assets/stylesheets/animate/bounce/bounceInLeft.less +56 -0
  17. data/vendor/assets/stylesheets/animate/bounce/bounceInRight.less +56 -0
  18. data/vendor/assets/stylesheets/animate/bounce/bounceInUp.less +56 -0
  19. data/vendor/assets/stylesheets/animate/bounce/bounceOut.less +56 -0
  20. data/vendor/assets/stylesheets/animate/bounce/bounceOutDown.less +45 -0
  21. data/vendor/assets/stylesheets/animate/bounce/bounceOutLeft.less +45 -0
  22. data/vendor/assets/stylesheets/animate/bounce/bounceOutRight.less +45 -0
  23. data/vendor/assets/stylesheets/animate/bounce/bounceOutUp.less +45 -0
  24. data/vendor/assets/stylesheets/animate/fade/fadeIn.less +24 -0
  25. data/vendor/assets/stylesheets/animate/fade/fadeInDown.less +34 -0
  26. data/vendor/assets/stylesheets/animate/fade/fadeInDownBig.less +34 -0
  27. data/vendor/assets/stylesheets/animate/fade/fadeInLeft.less +34 -0
  28. data/vendor/assets/stylesheets/animate/fade/fadeInLeftBig.less +34 -0
  29. data/vendor/assets/stylesheets/animate/fade/fadeInRight.less +34 -0
  30. data/vendor/assets/stylesheets/animate/fade/fadeInRightBig.less +34 -0
  31. data/vendor/assets/stylesheets/animate/fade/fadeInUp.less +34 -0
  32. data/vendor/assets/stylesheets/animate/fade/fadeInUpBig.less +34 -0
  33. data/vendor/assets/stylesheets/animate/fade/fadeOut.less +24 -0
  34. data/vendor/assets/stylesheets/animate/fade/fadeOutDown.less +34 -0
  35. data/vendor/assets/stylesheets/animate/fade/fadeOutDownBig.less +34 -0
  36. data/vendor/assets/stylesheets/animate/fade/fadeOutLeft.less +34 -0
  37. data/vendor/assets/stylesheets/animate/fade/fadeOutLeftBig.less +34 -0
  38. data/vendor/assets/stylesheets/animate/fade/fadeOutRight.less +34 -0
  39. data/vendor/assets/stylesheets/animate/fade/fadeOutRightBig.less +34 -0
  40. data/vendor/assets/stylesheets/animate/fade/fadeOutUp.less +34 -0
  41. data/vendor/assets/stylesheets/animate/fade/fadeOutUpBig.less +34 -0
  42. data/vendor/assets/stylesheets/animate/flash.less +24 -0
  43. data/vendor/assets/stylesheets/animate/flip/flip.less +86 -0
  44. data/vendor/assets/stylesheets/animate/flip/flipInX.less +59 -0
  45. data/vendor/assets/stylesheets/animate/flip/flipOutX.less +37 -0
  46. data/vendor/assets/stylesheets/animate/flip/flipOutY.less +37 -0
  47. data/vendor/assets/stylesheets/animate/flip/flipinY.less +59 -0
  48. data/vendor/assets/stylesheets/animate/hinge.less +103 -0
  49. data/vendor/assets/stylesheets/animate/lightSpeedIn.less +62 -0
  50. data/vendor/assets/stylesheets/animate/lightSpeedOut.less +36 -0
  51. data/vendor/assets/stylesheets/animate/pulse.less +43 -0
  52. data/vendor/assets/stylesheets/animate/roll/rollIn.less +36 -0
  53. data/vendor/assets/stylesheets/animate/roll/rollOut.less +36 -0
  54. data/vendor/assets/stylesheets/animate/rotate/rotateIn.less +44 -0
  55. data/vendor/assets/stylesheets/animate/rotate/rotateInDownLeft.less +44 -0
  56. data/vendor/assets/stylesheets/animate/rotate/rotateInDownRight.less +44 -0
  57. data/vendor/assets/stylesheets/animate/rotate/rotateInUpLeft.less +44 -0
  58. data/vendor/assets/stylesheets/animate/rotate/rotateInUpRight.less +44 -0
  59. data/vendor/assets/stylesheets/animate/rotate/rotateOut.less +44 -0
  60. data/vendor/assets/stylesheets/animate/rotate/rotateOutDownLeft.less +44 -0
  61. data/vendor/assets/stylesheets/animate/rotate/rotateOutDownRight.less +44 -0
  62. data/vendor/assets/stylesheets/animate/rotate/rotateOutUpLeft.less +44 -0
  63. data/vendor/assets/stylesheets/animate/rotate/rotateOutUpRight.less +44 -0
  64. data/vendor/assets/stylesheets/animate/rubberBand.less +63 -0
  65. data/vendor/assets/stylesheets/animate/shake.less +41 -0
  66. data/vendor/assets/stylesheets/animate/slide/slideInDown.less +32 -0
  67. data/vendor/assets/stylesheets/animate/slide/slideInLeft.less +32 -0
  68. data/vendor/assets/stylesheets/animate/slide/slideInRight.less +32 -0
  69. data/vendor/assets/stylesheets/animate/slide/slideInUp.less +34 -0
  70. data/vendor/assets/stylesheets/animate/slide/slideOutDown.less +32 -0
  71. data/vendor/assets/stylesheets/animate/slide/slideOutLeft.less +32 -0
  72. data/vendor/assets/stylesheets/animate/slide/slideOutRight.less +32 -0
  73. data/vendor/assets/stylesheets/animate/slide/slideOutUp.less +32 -0
  74. data/vendor/assets/stylesheets/animate/swing.less +66 -0
  75. data/vendor/assets/stylesheets/animate/tada.less +63 -0
  76. data/vendor/assets/stylesheets/animate/wobble.less +87 -0
  77. data/vendor/assets/stylesheets/animate/zoom/zoomIn.less +29 -0
  78. data/vendor/assets/stylesheets/animate/zoom/zoomInDown.less +42 -0
  79. data/vendor/assets/stylesheets/animate/zoom/zoomInLeft.less +42 -0
  80. data/vendor/assets/stylesheets/animate/zoom/zoomInRight.less +42 -0
  81. data/vendor/assets/stylesheets/animate/zoom/zoomInUp.less +42 -0
  82. data/vendor/assets/stylesheets/animate/zoom/zoomOut.less +42 -0
  83. data/vendor/assets/stylesheets/animate/zoom/zoomOutDown.less +43 -0
  84. data/vendor/assets/stylesheets/animate/zoom/zoomOutLeft.less +43 -0
  85. data/vendor/assets/stylesheets/animate/zoom/zoomOutRight.less +43 -0
  86. data/vendor/assets/stylesheets/animate/zoom/zoomOutUp.less +43 -0
  87. data/vendor/assets/stylesheets/bootstrap-additions.less +2 -1
  88. data/vendor/assets/stylesheets/dist/railsstrap.css +3407 -0
  89. data/vendor/assets/stylesheets/railsstrap.less +78 -0
  90. metadata +107 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 34cbab8c7ce0b463d90f5f663badc8007e285c8e
4
- data.tar.gz: 32e511fef2dbae6c1de9ee3c0c232c84a1b81842
3
+ metadata.gz: 0e12bab1aacc0c5c73e8fcc54e6d9602d58b835f
4
+ data.tar.gz: e12a9d052d2d9f1b06c9a9d879424ccaacee751b
5
5
  SHA512:
6
- metadata.gz: d6f354212140c85ad0e7eac3f14c5903ddb822bff35d04828f8693ab484d368c987e1af74c7a48cd0fe37efa10d678e222ae16d26995a16177d90d136f9f219b
7
- data.tar.gz: 688cd70f7dce3f85a4b44d825269dedb8f9174b892cbfe85c68798da814464b416478934265fa7a6db641dafab2acb5904c3ca9a4d1599e463de5178029b0af7
6
+ metadata.gz: 4997f111d82f7dfce5cea8a3a06d4c4c083129c50a1588cee6b028d083dc1b2ff2b978cb7f04bcd8f7bef5360bd274baf315d717bd0a893b6c1fadb72b823941
7
+ data.tar.gz: 0fdaff045e68a40440988afab5211620069144d817474b02ddda572e965bf5d7663cc69d8e0605673e241361c37b68f0aeec3ae3d85c884a1b3cdab830974255
data/README.md CHANGED
@@ -1,13 +1,31 @@
1
- # Bootstrap 3.2.1 for Rails 4 Asset Pipeline
1
+ # Bootstrap 3.2.0 + FontAwesome 4.2.0 for Rails v3.1 & v4 Asset Pipeline
2
2
 
3
3
  [![Bower version](https://badge.fury.io/bo/bootstrap.svg)](http://badge.fury.io/bo/bootstrap)
4
4
  [![Gem Version](https://badge.fury.io/rb/railsstrap.svg)](http://badge.fury.io/rb/railsstrap)
5
5
  [![Build Status](https://travis-ci.org/toadkicker/railsstrap.svg?branch=v3.2.0.1)](https://travis-ci.org/toadkicker/railsstrap)
6
6
  [![Coverage Status](https://img.shields.io/coveralls/toadkicker/railsstrap.svg)](https://coveralls.io/r/toadkicker/railsstrap?branch=develop)
7
7
 
8
- Bootstrap is a toolkit from Twitter designed to kickstart development of webapps and sites. It includes base CSS and HTML for typography, forms, buttons, tables, grids, navigation, and more.
8
+ railsstrap integrates Bootstrap and FontAwesome for Rails Asset Pipeline (Rails 4, 3.1, 3.2 are supported). It was born and extended from twitter-bootstrap-rails.
9
9
 
10
- railsstrap integrates Bootstrap CSS toolkit for Rails Asset Pipeline (Rails 4, 3.1, 3.2 are supported). It was born and extended from twitter-bootstrap-rails, but several non-bootstrap helpers and UI improvements from the Bootstrap community.
10
+ ## Why is your gem different?
11
+
12
+ Railsstrap is more than just another gem providing bootstrap and fontawesome for Rails apps. It includes Bootstrap additions that include exotic placements, animations, and other component enhancements not included in the official bootstrap release. It also includes many HTML helpers and additional javascript components. All of this is exposed to UI developers to customize to their liking using either LESS and Coffeescript, or plain CSS and Javascript.
13
+
14
+
15
+ ##Bootstrap additions
16
+
17
+ ###Custom Components (in development)
18
+ * Asides - A modal that slides in from the left or right. Used often in mobile apps for off-screen sidebars or overlays.
19
+ * Callouts - Similar to an alert, it is used for drawing attention to content.
20
+ * Datepicker - A styled HTML5 datepicker.
21
+ * Modal enhancements - animations and real centering placement.
22
+ * Popover enhancements - animations and custom placements for popover arrows and locations.
23
+ * Timepicker - A styled HTML5 time picker.
24
+ * Tooltip - animations and custom placements for tooltip arrows and locations.
25
+
26
+ ###Animations
27
+
28
+ Railsstrap comes with over 75 CSS animations. See the wiki or the [vendor/assets/stylesheets/animate](https://github.com/toadkicker/railsstrap/tree/develop/vendor/assets/stylesheets/animate) folder for more info.
11
29
 
12
30
  ## Example Application
13
31
  An example application is available at [toadkicker/teststrap](https://github.com/toadkicker/teststrap). You can view it running on heroku [here.](http://teststrap.herokuapp.com/) Contributions welcome.
@@ -24,10 +42,27 @@ bundle install
24
42
  bundle exec rails g railsstrap:install
25
43
  ```
26
44
 
27
- This will insert the appropriate entries into your application.js and application.css files. It will also provide you with the ability to customize Bootstrap to your liking.
45
+ This will insert the appropriate entries into your application.js and application.css files. It will also provide you with the ability to customize Bootstrap and FontAwesome to your liking.
46
+
47
+ ####Hotfix note for v3.2.0.2 and lower:
48
+
49
+ You will need to precompile your assets for FontAwesome support. To do this add this line:
50
+
51
+ ```
52
+ Rails.application.config.assets.precompile += %w( fontawesome/fonts/fontawesome-webfont.eot fontawesome/fonts/fontawesome-webfont.woff fontawesome/fonts/fontawesome-webfont.ttf fontawesome/fonts/fontawesome-webfont.svg )
53
+ ```
54
+
55
+ For Rails 3 applications, add it to config/environments/production.rb. For Rails 4, add it to config/initializers/assets.rb.
56
+
28
57
 
29
58
  Most of the info you'll need is in the wiki, and if it isn't please contribute!
30
59
 
60
+ ##Building the gem
61
+
62
+ The gem is organized by ruby specific tasks, and front-end specific tasks. `bundle exec rake` will attempt to run the suite of build commands, but you need a few dependencies that are outside of bundler/rubygems's domain.
63
+
64
+ For compiling stylesheets and javascripts, the gem uses Gruntjs. You'll need node/npm installed to compile them manually. *You do not need to use grunt if you are just referencing specific less/js/coffee files in your rails app*
65
+
31
66
  ## Many thanks to the twitter-bootstrap-rails contributors, who made this fork possible:
32
67
  <ul>
33
68
  <li>Seyhun Akyürek</li>
data/Rakefile CHANGED
@@ -6,6 +6,7 @@ Bundler::GemHelper.install_tasks
6
6
 
7
7
  desc 'Bundle the gem'
8
8
  task :bundle => [:bundle_install] do
9
+ sh 'grunt less_imports && grunt less:dist'
9
10
  sh 'gem build *.gemspec'
10
11
  sh 'gem install *.gem'
11
12
  sh 'rm *.gem'
@@ -3,8 +3,19 @@ module Railsstrap
3
3
  ALERT_TYPES = [:success, :info, :warning, :danger] unless const_defined?(:ALERT_TYPES)
4
4
 
5
5
  def bootstrap_flash(options = {})
6
+
6
7
  flash_messages = []
8
+ close_button = content_tag(:button, raw('&times;'), :type => 'button', :class => 'close', 'data-dismiss' => 'alert')
9
+
7
10
  flash.each do |type, message|
11
+ default_opts = {
12
+ show_close: true,
13
+ type: :info,
14
+ container_tag: :div,
15
+ animation: 'fade in'
16
+ }
17
+ opts = default_opts.merge(options)
18
+
8
19
  # Skip empty messages, e.g. for devise messages set to nothing in a locale file.
9
20
  next if message.blank?
10
21
 
@@ -15,9 +26,10 @@ module Railsstrap
15
26
  next unless ALERT_TYPES.include?(type)
16
27
 
17
28
  Array(message).each do |msg|
18
- text = content_tag(:div,
19
- content_tag(:button, raw('&times;'), :type => 'button', :class => 'close', 'data-dismiss' => 'alert') +
20
- msg, :class => "alert fade in alert-#{type} #{options[:class]}")
29
+
30
+ text = content_tag(opts[:container_tag],
31
+ (opts[:show_close] ? close_button : '') +
32
+ msg, :class => "alert #{opts[:animation]} alert-#{type} #{opts[:class]}")
21
33
  flash_messages << text if msg
22
34
  end
23
35
  end
@@ -71,7 +71,7 @@ module Railsstrap
71
71
 
72
72
  # Returns current url or path state (useful for buttons).
73
73
  # Example:
74
- # # Assume we'r currently at blog/categories/test
74
+ # # Assume we're currently at blog/categories/test
75
75
  # uri_state('/blog/categories/test', {}) # :active
76
76
  # uri_state('/blog/categories', {}) # :chosen
77
77
  # uri_state('/blog/categories/test', {method: delete}) # :inactive
@@ -13,6 +13,23 @@ module Railsstrap
13
13
 
14
14
  js_manifest = 'app/assets/javascripts/application.js'
15
15
  css_manifest = 'app/assets/stylesheets/application.css'
16
+ asset_initializer = 'config/initializers/assets.rb'
17
+ config_asset_insert_line = "Rails.application.config.assets.precompile\s+=\s%w(\sbootstrap/fonts/glyphicons-halflings-regular.eot\sbootstrap/fonts/glyphicons-halflings-regular.svg\sbootstrap/fonts/glyphicons-halflings-regular.ttf\sbootstrap/fonts/glyphicons-halflings-regular.woff\sfontawesome/fonts/fontawesome-webfont.eot\sfontawesome/fonts/fontawesome-webfont.woff\sfontawesome/fonts/fontawesome-webfont.ttf\sfontawesome/fonts/fontawesome-webfont.svg\s)"
18
+
19
+ if File.exists?(asset_initializer) && Rails::VERSION::MAJOR >= 4 #Must be Rails 4
20
+ content = File.read(asset_initializer)
21
+ if content.match(config_asset_insert_line)
22
+ #set up properly
23
+ puts "Ensure config/initializers/assets.rb contains this line:\n" + config_asset_insert_line
24
+ else
25
+ insert_into_file asset_initializer, config_asset_insert_line, :after => 'config.assets.precompile\n'
26
+ end
27
+ else #Assumes Rails 3.1 then...
28
+ rails_three_config = 'config/environments/production.rb'
29
+ if File.exists?(rails_three_config) && Rails::VERSION::MAJOR <= 4
30
+ insert_into_file rails_three_config, config_asset_insert_line, :after => 'config.assets.precompile\n'
31
+ end
32
+ end
16
33
 
17
34
  if File.exist?(js_manifest)
18
35
  insert_into_file js_manifest, "//= require bootstrap/dist/js/bootstrap\n", :after => "jquery_ujs\n"
@@ -23,6 +40,7 @@ module Railsstrap
23
40
  if File.exist?(css_manifest)
24
41
  # Add our own require:
25
42
  content = File.read(css_manifest)
43
+
26
44
  if content.match(/require_tree\s+\.\s*$/)
27
45
  # Good enough - that'll include our bootstrap_and_overrides.css.less
28
46
  else
@@ -1,3 +1,14 @@
1
1
  jQuery ->
2
2
  $("a[rel~=popover], .has-popover").popover()
3
3
  $("a[rel~=tooltip], .has-tooltip").tooltip()
4
+
5
+
6
+ # # comment this out if you want to add the animation to an element. You may need to handle events for them to work correctly.
7
+ # # This is just a generic example, your mileage will vary depending on what you're trying to do.
8
+ # $("[data-animation]") ->
9
+ # e.preventDefault()
10
+ # if $(this).data("animation")?
11
+ # $(this).next().removeClass($(this).data("easein")).addClass "animated " + $(this).data("easein")
12
+ # else
13
+ # $(this).next().addClass "animated " + _easeIn
14
+ # return
@@ -1,4 +1,16 @@
1
- jQuery(function() {
2
- $("a[rel~=popover], .has-popover").popover();
3
- $("a[rel~=tooltip], .has-tooltip").tooltip();
1
+ jQuery(function () {
2
+ $("a[rel~=popover], .has-popover").popover();
3
+ $("a[rel~=tooltip], .has-tooltip").tooltip();
4
+
5
+ // comment this out if you want to add the animation to an element. You may need to handle events for them to work correctly.
6
+ // This is just a generic example, your mileage will vary depending on what you're trying to do.
7
+
8
+ // $("[data-animation]")(function () {
9
+ // e.preventDefault();
10
+ // if ($(this).data("animation") != null) {
11
+ // $(this).next().removeClass($(this).data("easein")).addClass("animated " + $(this).data("easein"));
12
+ // } else {
13
+ // $(this).next().addClass("animated " + _easeIn);
14
+ // }
15
+ // });
4
16
  });
@@ -1,9 +1,9 @@
1
1
  /*
2
2
  =require bootstrap/dist/bootstrap.css
3
3
  =require bootstrap/dist/bootstrap-theme.css
4
- If you want exotic placement features, asides, and more, uncomment this
5
- =require dist/bootstrap-additions.css
6
- Use Font Awesome icons (default)
7
- To use Glyphicons sprites instead of Font Awesome, replace with "require twitter-bootstrap-static/sprites"
8
- =require fontawesome/css/font-awesome.css
4
+ If you want exotic placement features, animations, and more, uncomment this
5
+ =require dist/railsstrap.css
6
+ To use Font Awesome
7
+ =require fontawesome/css/font-awesome.(min).css
8
+ To use Gylphicons, you don't have to do anything. Bootstrap includes it by default.
9
9
  */
@@ -1,21 +1,23 @@
1
1
  @import "bootstrap/less/bootstrap";
2
- //If you want exotic placement features, asides, and more, uncomment this
3
- //@import "bootstrap-additions";
2
+ //If you want exotic placement features, animations, and more, import this
3
+ //@import "railsstrap";
4
4
 
5
5
  // Font Awesome
6
6
  @import "fontawesome/less/font-awesome";
7
7
 
8
- // Glyphicons - requires less-rails gem
9
- //@import "railsstrap/less/glyphicons.less";
8
+ // Glyphicons - included by default in bootstrap.
9
+ // You may need to customize config/initializers/assets.rb (Rails 4), or config/environments/[env].rb to add font paths in.
10
+ // In either case of FontAwesome or Glyphicons, the railsstrap:install task should insert the appropriate entries for you.
10
11
 
11
12
  // Your custom LESS stylesheets goes here
12
13
  //
13
14
  // Since railsstrap was imported above you have access to its mixins which
14
15
  // you may use and inherit here, ex:
15
- // @import "bootstrap/less/mixins/alerts.less
16
+ // @import "bootstrap/less/mixins/alerts.less;
16
17
  //
17
18
  // If you'd like to override railsstrap's own variables, you can do so here as well
18
19
  // See http://bootstrap.github.com/bootstrap/customize.html#variables for their names and documentation
19
20
  //
20
21
  // Example:
22
+ // @import (reference) 'bootstrap/less/variables.less';
21
23
  // @link-color: #ff0000;
@@ -1,6 +1,6 @@
1
1
  module Railsstrap
2
2
  module Constants
3
3
  #we follow along with Bootstrap's version number for easy identification
4
- VERSION = '3.2.0.2'
4
+ VERSION = '3.2.0.3'
5
5
  end
6
6
  end
@@ -0,0 +1,31 @@
1
+ @charset "UTF-8";
2
+
3
+ /*!
4
+ Animate.css - http://daneden.me/animate
5
+ Licensed under the MIT license
6
+
7
+ Copyright (c) 2013 Daniel Eden
8
+
9
+ Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
10
+
11
+ The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
12
+
13
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
14
+ */
15
+
16
+ .animated {
17
+ -webkit-animation-duration: 0.6s;
18
+ animation-duration: 0.6s;
19
+ -webkit-animation-fill-mode: both;
20
+ animation-fill-mode: both;
21
+ }
22
+
23
+ .animated.infinite {
24
+ -webkit-animation-iteration-count: infinite;
25
+ animation-iteration-count: infinite;
26
+ }
27
+
28
+ .animated.hinge {
29
+ -webkit-animation-duration: 2s;
30
+ animation-duration: 2s;
31
+ }
@@ -0,0 +1,41 @@
1
+ @-webkit-keyframes bounce {
2
+ 0%, 20%, 50%, 80%, 100% {
3
+ -webkit-transform: translateY(0);
4
+ transform: translateY(0);
5
+ }
6
+
7
+ 40% {
8
+ -webkit-transform: translateY(-30px);
9
+ transform: translateY(-30px);
10
+ }
11
+
12
+ 60% {
13
+ -webkit-transform: translateY(-15px);
14
+ transform: translateY(-15px);
15
+ }
16
+ }
17
+
18
+ @keyframes bounce {
19
+ 0%, 20%, 50%, 80%, 100% {
20
+ -webkit-transform: translateY(0);
21
+ -ms-transform: translateY(0);
22
+ transform: translateY(0);
23
+ }
24
+
25
+ 40% {
26
+ -webkit-transform: translateY(-30px);
27
+ -ms-transform: translateY(-30px);
28
+ transform: translateY(-30px);
29
+ }
30
+
31
+ 60% {
32
+ -webkit-transform: translateY(-15px);
33
+ -ms-transform: translateY(-15px);
34
+ transform: translateY(-15px);
35
+ }
36
+ }
37
+
38
+ .bounce {
39
+ -webkit-animation-name: bounce;
40
+ animation-name: bounce;
41
+ }
@@ -0,0 +1,58 @@
1
+ @-webkit-keyframes bounceIn {
2
+ 0% {
3
+ opacity: 0;
4
+ -webkit-transform: scale(.3);
5
+ transform: scale(.3);
6
+ }
7
+
8
+ 50% {
9
+ opacity: 1;
10
+ -webkit-transform: scale(1.05);
11
+ transform: scale(1.05);
12
+ }
13
+
14
+ 70% {
15
+ -webkit-transform: scale(.9);
16
+ transform: scale(.9);
17
+ }
18
+
19
+ 100% {
20
+ opacity: 1;
21
+ -webkit-transform: scale(1);
22
+ transform: scale(1);
23
+ }
24
+ }
25
+
26
+ @keyframes bounceIn {
27
+ 0% {
28
+ opacity: 0;
29
+ -webkit-transform: scale(.3);
30
+ -ms-transform: scale(.3);
31
+ transform: scale(.3);
32
+ }
33
+
34
+ 50% {
35
+ opacity: 1;
36
+ -webkit-transform: scale(1.05);
37
+ -ms-transform: scale(1.05);
38
+ transform: scale(1.05);
39
+ }
40
+
41
+ 70% {
42
+ -webkit-transform: scale(.9);
43
+ -ms-transform: scale(.9);
44
+ transform: scale(.9);
45
+ }
46
+
47
+ 100% {
48
+ opacity: 1;
49
+ -webkit-transform: scale(1);
50
+ -ms-transform: scale(1);
51
+ transform: scale(1);
52
+ }
53
+ }
54
+
55
+ .bounceIn {
56
+ -webkit-animation-name: bounceIn;
57
+ animation-name: bounceIn;
58
+ }
@@ -0,0 +1,56 @@
1
+ @-webkit-keyframes bounceInDown {
2
+ 0% {
3
+ opacity: 0;
4
+ -webkit-transform: translateY(-2000px);
5
+ transform: translateY(-2000px);
6
+ }
7
+
8
+ 60% {
9
+ opacity: 1;
10
+ -webkit-transform: translateY(30px);
11
+ transform: translateY(30px);
12
+ }
13
+
14
+ 80% {
15
+ -webkit-transform: translateY(-10px);
16
+ transform: translateY(-10px);
17
+ }
18
+
19
+ 100% {
20
+ -webkit-transform: translateY(0);
21
+ transform: translateY(0);
22
+ }
23
+ }
24
+
25
+ @keyframes bounceInDown {
26
+ 0% {
27
+ opacity: 0;
28
+ -webkit-transform: translateY(-2000px);
29
+ -ms-transform: translateY(-2000px);
30
+ transform: translateY(-2000px);
31
+ }
32
+
33
+ 60% {
34
+ opacity: 1;
35
+ -webkit-transform: translateY(30px);
36
+ -ms-transform: translateY(30px);
37
+ transform: translateY(30px);
38
+ }
39
+
40
+ 80% {
41
+ -webkit-transform: translateY(-10px);
42
+ -ms-transform: translateY(-10px);
43
+ transform: translateY(-10px);
44
+ }
45
+
46
+ 100% {
47
+ -webkit-transform: translateY(0);
48
+ -ms-transform: translateY(0);
49
+ transform: translateY(0);
50
+ }
51
+ }
52
+
53
+ .bounceInDown {
54
+ -webkit-animation-name: bounceInDown;
55
+ animation-name: bounceInDown;
56
+ }
@@ -0,0 +1,56 @@
1
+ @-webkit-keyframes bounceInLeft {
2
+ 0% {
3
+ opacity: 0;
4
+ -webkit-transform: translateX(-2000px);
5
+ transform: translateX(-2000px);
6
+ }
7
+
8
+ 60% {
9
+ opacity: 1;
10
+ -webkit-transform: translateX(30px);
11
+ transform: translateX(30px);
12
+ }
13
+
14
+ 80% {
15
+ -webkit-transform: translateX(-10px);
16
+ transform: translateX(-10px);
17
+ }
18
+
19
+ 100% {
20
+ -webkit-transform: translateX(0);
21
+ transform: translateX(0);
22
+ }
23
+ }
24
+
25
+ @keyframes bounceInLeft {
26
+ 0% {
27
+ opacity: 0;
28
+ -webkit-transform: translateX(-2000px);
29
+ -ms-transform: translateX(-2000px);
30
+ transform: translateX(-2000px);
31
+ }
32
+
33
+ 60% {
34
+ opacity: 1;
35
+ -webkit-transform: translateX(30px);
36
+ -ms-transform: translateX(30px);
37
+ transform: translateX(30px);
38
+ }
39
+
40
+ 80% {
41
+ -webkit-transform: translateX(-10px);
42
+ -ms-transform: translateX(-10px);
43
+ transform: translateX(-10px);
44
+ }
45
+
46
+ 100% {
47
+ -webkit-transform: translateX(0);
48
+ -ms-transform: translateX(0);
49
+ transform: translateX(0);
50
+ }
51
+ }
52
+
53
+ .bounceInLeft {
54
+ -webkit-animation-name: bounceInLeft;
55
+ animation-name: bounceInLeft;
56
+ }