comixins 0.1.1 → 0.1.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (121) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +8 -0
  3. data/.rubocop.yml +26 -0
  4. data/Gemfile +2 -0
  5. data/README.md +35 -0
  6. data/comixins.gemspec +20 -0
  7. data/lib/comixins/version.rb +1 -1
  8. data/vendor/assets/stylesheets/LICENSE.markdown +29 -0
  9. data/vendor/assets/stylesheets/LICENSE_backup.md +29 -0
  10. data/vendor/assets/stylesheets/_animate.scss +3 -0
  11. data/vendor/assets/stylesheets/_compass.scss +4 -0
  12. data/vendor/assets/stylesheets/_lemonade.scss +38 -0
  13. data/vendor/assets/stylesheets/animation/_animate.scss +31 -0
  14. data/vendor/assets/stylesheets/animation/_core.scss +127 -0
  15. data/vendor/assets/stylesheets/animation/_shared.scss +22 -0
  16. data/vendor/assets/stylesheets/animation/animate/_attention-seekers.scss +152 -0
  17. data/vendor/assets/stylesheets/animation/animate/_bouncing.scss +3 -0
  18. data/vendor/assets/stylesheets/animation/animate/_classes.scss +21 -0
  19. data/vendor/assets/stylesheets/animation/animate/_fading.scss +3 -0
  20. data/vendor/assets/stylesheets/animation/animate/_flippers.scss +87 -0
  21. data/vendor/assets/stylesheets/animation/animate/_lightspeed.scss +24 -0
  22. data/vendor/assets/stylesheets/animation/animate/_rotating.scss +3 -0
  23. data/vendor/assets/stylesheets/animation/animate/_specials.scss +42 -0
  24. data/vendor/assets/stylesheets/animation/animate/bouncing/_bouncing-entrances.scss +68 -0
  25. data/vendor/assets/stylesheets/animation/animate/bouncing/_bouncing-exits.scss +60 -0
  26. data/vendor/assets/stylesheets/animation/animate/fading/_fading-entrances.scss +86 -0
  27. data/vendor/assets/stylesheets/animation/animate/fading/_fading-exits.scss +86 -0
  28. data/vendor/assets/stylesheets/animation/animate/rotating/_rotating-entrances.scss +58 -0
  29. data/vendor/assets/stylesheets/animation/animate/rotating/_rotating-exits.scss +58 -0
  30. data/vendor/assets/stylesheets/comixins.scss +1 -0
  31. data/vendor/assets/stylesheets/compass/_css3.scss +22 -0
  32. data/vendor/assets/stylesheets/compass/_functions.scss +6 -0
  33. data/vendor/assets/stylesheets/compass/_layout.scss +3 -0
  34. data/vendor/assets/stylesheets/compass/_reset-legacy.scss +3 -0
  35. data/vendor/assets/stylesheets/compass/_reset.scss +3 -0
  36. data/vendor/assets/stylesheets/compass/_support.scss +40 -0
  37. data/vendor/assets/stylesheets/compass/_typography.scss +4 -0
  38. data/vendor/assets/stylesheets/compass/_utilities.scss +9 -0
  39. data/vendor/assets/stylesheets/compass/css3/_animation.scss +2 -0
  40. data/vendor/assets/stylesheets/compass/css3/_appearance.scss +16 -0
  41. data/vendor/assets/stylesheets/compass/css3/_background-clip.scss +43 -0
  42. data/vendor/assets/stylesheets/compass/css3/_background-origin.scss +42 -0
  43. data/vendor/assets/stylesheets/compass/css3/_background-size.scss +26 -0
  44. data/vendor/assets/stylesheets/compass/css3/_border-radius.scss +130 -0
  45. data/vendor/assets/stylesheets/compass/css3/_box-shadow.scss +76 -0
  46. data/vendor/assets/stylesheets/compass/css3/_box-sizing.scss +13 -0
  47. data/vendor/assets/stylesheets/compass/css3/_box.scss +111 -0
  48. data/vendor/assets/stylesheets/compass/css3/_columns.scss +148 -0
  49. data/vendor/assets/stylesheets/compass/css3/_filter.scss +23 -0
  50. data/vendor/assets/stylesheets/compass/css3/_flexbox.scss +86 -0
  51. data/vendor/assets/stylesheets/compass/css3/_font-face.scss +48 -0
  52. data/vendor/assets/stylesheets/compass/css3/_hyphenation.scss +77 -0
  53. data/vendor/assets/stylesheets/compass/css3/_images.scss +133 -0
  54. data/vendor/assets/stylesheets/compass/css3/_inline-block.scss +22 -0
  55. data/vendor/assets/stylesheets/compass/css3/_opacity.scss +19 -0
  56. data/vendor/assets/stylesheets/compass/css3/_pie.scss +73 -0
  57. data/vendor/assets/stylesheets/compass/css3/_regions.scss +22 -0
  58. data/vendor/assets/stylesheets/compass/css3/_shared.scss +38 -0
  59. data/vendor/assets/stylesheets/compass/css3/_text-shadow.scss +87 -0
  60. data/vendor/assets/stylesheets/compass/css3/_transform-legacy.scss +87 -0
  61. data/vendor/assets/stylesheets/compass/css3/_transform.scss +598 -0
  62. data/vendor/assets/stylesheets/compass/css3/_transition.scss +221 -0
  63. data/vendor/assets/stylesheets/compass/css3/_user-interface.scss +47 -0
  64. data/vendor/assets/stylesheets/compass/functions/_colors.scss +37 -0
  65. data/vendor/assets/stylesheets/compass/functions/_constants.scss +18 -0
  66. data/vendor/assets/stylesheets/compass/functions/_cross_browser_support.scss +72 -0
  67. data/vendor/assets/stylesheets/compass/functions/_display.scss +36 -0
  68. data/vendor/assets/stylesheets/compass/functions/_gradient_support.scss +15 -0
  69. data/vendor/assets/stylesheets/compass/functions/_lists.scss +90 -0
  70. data/vendor/assets/stylesheets/compass/layout/_grid-background.scss +178 -0
  71. data/vendor/assets/stylesheets/compass/layout/_sticky-footer.scss +23 -0
  72. data/vendor/assets/stylesheets/compass/layout/_stretching.scss +24 -0
  73. data/vendor/assets/stylesheets/compass/reset/_utilities-legacy.scss +135 -0
  74. data/vendor/assets/stylesheets/compass/reset/_utilities.scss +142 -0
  75. data/vendor/assets/stylesheets/compass/typography/_links.scss +3 -0
  76. data/vendor/assets/stylesheets/compass/typography/_lists.scss +4 -0
  77. data/vendor/assets/stylesheets/compass/typography/_text.scss +4 -0
  78. data/vendor/assets/stylesheets/compass/typography/_vertical_rhythm.scss +219 -0
  79. data/vendor/assets/stylesheets/compass/typography/links/_hover-link.scss +5 -0
  80. data/vendor/assets/stylesheets/compass/typography/links/_link-colors.scss +28 -0
  81. data/vendor/assets/stylesheets/compass/typography/links/_unstyled-link.scss +7 -0
  82. data/vendor/assets/stylesheets/compass/typography/lists/_bullets.scss +34 -0
  83. data/vendor/assets/stylesheets/compass/typography/lists/_horizontal-list.scss +61 -0
  84. data/vendor/assets/stylesheets/compass/typography/lists/_inline-block-list.scss +50 -0
  85. data/vendor/assets/stylesheets/compass/typography/lists/_inline-list.scss +44 -0
  86. data/vendor/assets/stylesheets/compass/typography/text/_ellipsis.scss +25 -0
  87. data/vendor/assets/stylesheets/compass/typography/text/_force-wrap.scss +12 -0
  88. data/vendor/assets/stylesheets/compass/typography/text/_nowrap.scss +2 -0
  89. data/vendor/assets/stylesheets/compass/typography/text/_replacement.scss +68 -0
  90. data/vendor/assets/stylesheets/compass/utilities/_color.scss +1 -0
  91. data/vendor/assets/stylesheets/compass/utilities/_general.scss +6 -0
  92. data/vendor/assets/stylesheets/compass/utilities/_links.scss +5 -0
  93. data/vendor/assets/stylesheets/compass/utilities/_lists.scss +6 -0
  94. data/vendor/assets/stylesheets/compass/utilities/_print.scss +17 -0
  95. data/vendor/assets/stylesheets/compass/utilities/_sprites.scss +2 -0
  96. data/vendor/assets/stylesheets/compass/utilities/_tables.scss +3 -0
  97. data/vendor/assets/stylesheets/compass/utilities/_text.scss +5 -0
  98. data/vendor/assets/stylesheets/compass/utilities/color/_contrast.scss +28 -0
  99. data/vendor/assets/stylesheets/compass/utilities/general/_clearfix.scss +44 -0
  100. data/vendor/assets/stylesheets/compass/utilities/general/_float.scss +30 -0
  101. data/vendor/assets/stylesheets/compass/utilities/general/_hacks.scss +46 -0
  102. data/vendor/assets/stylesheets/compass/utilities/general/_min.scss +16 -0
  103. data/vendor/assets/stylesheets/compass/utilities/general/_reset.scss +2 -0
  104. data/vendor/assets/stylesheets/compass/utilities/general/_tabs.scss +1 -0
  105. data/vendor/assets/stylesheets/compass/utilities/general/_tag-cloud.scss +18 -0
  106. data/vendor/assets/stylesheets/compass/utilities/links/_hover-link.scss +3 -0
  107. data/vendor/assets/stylesheets/compass/utilities/links/_link-colors.scss +3 -0
  108. data/vendor/assets/stylesheets/compass/utilities/links/_unstyled-link.scss +3 -0
  109. data/vendor/assets/stylesheets/compass/utilities/lists/_bullets.scss +3 -0
  110. data/vendor/assets/stylesheets/compass/utilities/lists/_horizontal-list.scss +3 -0
  111. data/vendor/assets/stylesheets/compass/utilities/lists/_inline-block-list.scss +3 -0
  112. data/vendor/assets/stylesheets/compass/utilities/lists/_inline-list.scss +3 -0
  113. data/vendor/assets/stylesheets/compass/utilities/sprites/_base.scss +66 -0
  114. data/vendor/assets/stylesheets/compass/utilities/sprites/_sprite-img.scss +79 -0
  115. data/vendor/assets/stylesheets/compass/utilities/tables/_alternating-rows-and-columns.scss +22 -0
  116. data/vendor/assets/stylesheets/compass/utilities/tables/_borders.scss +33 -0
  117. data/vendor/assets/stylesheets/compass/utilities/tables/_scaffolding.scss +9 -0
  118. data/vendor/assets/stylesheets/compass/utilities/text/_ellipsis.scss +3 -0
  119. data/vendor/assets/stylesheets/compass/utilities/text/_nowrap.scss +3 -0
  120. data/vendor/assets/stylesheets/compass/utilities/text/_replacement.scss +3 -0
  121. metadata +119 -1
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 96163b8e44d3d96858fc692a70b7f1dbeff43d71
4
- data.tar.gz: af06adeaab5c352bf80b3802e4dd2916fd7e407e
3
+ metadata.gz: b2ba692e053d4d91817870997c30ba3fa6809780
4
+ data.tar.gz: ee736eb083f5c8817f0458337c333abd44919091
5
5
  SHA512:
6
- metadata.gz: 5e7f4821d51eb1b444f16e51ec1c08dbe3069212a9ebb2743fc0a448d74a2fa26da9fb07daae9335a88a6662677e0287c092faf84f0386b43441fe43445ce5be
7
- data.tar.gz: 79b502d97ae3fadc072aa15f4c6568febdf64cd54a0d6f7ca4a69a10784d4909e5715f23f48d875f73710fa7dd3ece690c711aa882932d0cb0283276346f7304
6
+ metadata.gz: de3555e02b3b7ae6ba27ef9c9b287f899d06739c39fd47aae0d13af6f479c62cc07bb88cb2a57636b86e12fd2c4e0ec9c898adbb08563f377e8d99fb75f4d8eb
7
+ data.tar.gz: 37638a95fd9aef924598020d8c1895e1c38538e37f2db704bc7b91064b454fc11b461d3720e9e3d6676b0c8c0f315cd2a0db3eee24ebfd1d82d1b05767f8112d
@@ -0,0 +1,8 @@
1
+ .bundle/
2
+ log/*.log
3
+ pkg/
4
+ test/dummy/db/*.sqlite3
5
+ test/dummy/db/*.sqlite3-journal
6
+ test/dummy/log/*.log
7
+ test/dummy/tmp/
8
+ test/dummy/.sass-cache
@@ -0,0 +1,26 @@
1
+ AllCops:
2
+ Exclude:
3
+ - 'rubocop.gemspec'
4
+
5
+ Documentation:
6
+ Enabled: false
7
+
8
+ LineLength:
9
+ Max: 100
10
+
11
+ Style/StringLiterals:
12
+ EnforcedStyle: double_quotes
13
+ SupportedStyles:
14
+ - double_quotes
15
+
16
+ Metrics/CyclomaticComplexity:
17
+ Max: 10
18
+
19
+ Metrics/PerceivedComplexity:
20
+ Max: 10
21
+
22
+ Metrics/MethodLength:
23
+ Max: 40
24
+
25
+ Metrics/AbcSize:
26
+ Max: 40
data/Gemfile ADDED
@@ -0,0 +1,2 @@
1
+ source "https://rubygems.org"
2
+ gemspec
@@ -0,0 +1,35 @@
1
+ # Comixins
2
+ This gem helps to introduce [compass-mixins](https://github.com/Igosuki/compass-mixins) to Rails application.
3
+
4
+ ## Installation
5
+
6
+ Add this line to your application's Gemfile.
7
+ ```ruby
8
+ gem 'comixins'
9
+ ```
10
+
11
+ And then execute:
12
+ ```
13
+ $ bundle
14
+ ```
15
+
16
+ ## Usage
17
+
18
+ Replace compass with comixins.
19
+ ```scss
20
+ - @import 'compass';
21
+ + @import 'comixins';
22
+ ```
23
+
24
+ This gem does not support `inline-image` which converts images to Base64.
25
+ Please use `asset-data-url` instead of `inline-image`.
26
+ ```scss
27
+ - background-image: inline-image('comixins.png');
28
+ + background-image: asset-data-url('comixins.png');
29
+ ```
30
+
31
+ The magic import function of compass is also not supported.
32
+ The implementation deeply depending on compass should be avoided because compass is no longer actively maintained.
33
+
34
+ ## License
35
+ This project rocks and uses MIT-LICENSE.
@@ -0,0 +1,20 @@
1
+ # coding: utf-8
2
+ $LOAD_PATH.push File.expand_path("../lib", __FILE__)
3
+
4
+ require "comixins/version"
5
+
6
+ Gem::Specification.new do |s|
7
+ s.name = "comixins"
8
+ s.version = Comixins::VERSION
9
+ s.authors = ["yuyasat"]
10
+ s.email = ["yuyasat.works@gmail.com"]
11
+ s.homepage = "https://github.com/yuyataki/comixins"
12
+ s.summary = "Comixins helps to introduce the compass-mixins."
13
+ s.description = "Comixins helps to introduce the compass-mixins."
14
+ s.license = "MIT"
15
+
16
+ s.files = `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
17
+ s.test_files = Dir["test/**/*"]
18
+
19
+ s.add_dependency "rails"
20
+ end
@@ -1,3 +1,3 @@
1
1
  module Comixins
2
- VERSION = "0.1.1".freeze
2
+ VERSION = "0.1.2".freeze
3
3
  end
@@ -0,0 +1,29 @@
1
+ Copyright (c) 2009 Christopher M. Eppstein
2
+
3
+ Permission is hereby granted, free of charge, to any person obtaining
4
+ a copy of this software and associated documentation files (the
5
+ "Software"), to deal in the Software without restriction, including
6
+ without limitation the rights to use, copy, modify, merge, publish,
7
+ distribute, sublicense, and/or sell copies of the Software, and to
8
+ permit persons to whom the Software is furnished to do so, subject to
9
+ the following conditions:
10
+
11
+ The above copyright notice and this permission notice shall be
12
+ included in all copies or substantial portions of the Software.
13
+ No attribution is required by products that make use of this software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
16
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
17
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
18
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
19
+ LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
20
+ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
21
+ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
22
+
23
+ Except as contained in this notice, the name(s) of the above copyright
24
+ holders shall not be used in advertising or otherwise to promote the sale,
25
+ use or other dealings in this Software without prior written authorization.
26
+
27
+ Contributors to this project agree to grant all rights to the copyright
28
+ holder of the primary product. Attribution is maintained in the source
29
+ control history of the product.
@@ -0,0 +1,29 @@
1
+ Copyright (c) 2009-2014 Christopher M. Eppstein
2
+
3
+ Permission is hereby granted, free of charge, to any person obtaining
4
+ a copy of this software and associated documentation files (the
5
+ "Software"), to deal in the Software without restriction, including
6
+ without limitation the rights to use, copy, modify, merge, publish,
7
+ distribute, sublicense, and/or sell copies of the Software, and to
8
+ permit persons to whom the Software is furnished to do so, subject to
9
+ the following conditions:
10
+
11
+ The above copyright notice and this permission notice shall be
12
+ included in all copies or substantial portions of the Software.
13
+ No attribution is required by products that make use of this software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
16
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
17
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
18
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
19
+ LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
20
+ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
21
+ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
22
+
23
+ Except as contained in this notice, the name(s) of the above copyright
24
+ holders shall not be used in advertising or otherwise to promote the sale,
25
+ use or other dealings in this Software without prior written authorization.
26
+
27
+ Contributors to this project agree to grant all rights to the copyright
28
+ holder of the primary product. Attribution is maintained in the source
29
+ control history of the product.
@@ -0,0 +1,3 @@
1
+ @import "compass";
2
+ @import "animation/core";
3
+ @import "animation/animate";
@@ -0,0 +1,4 @@
1
+ @import "compass/functions";
2
+ @import "compass/utilities";
3
+ @import "compass/typography";
4
+ @import "compass/css3";
@@ -0,0 +1,38 @@
1
+ @mixin image-dimensions($file) {
2
+ height: image-height($file);
3
+ width: image-width($file);
4
+ }
5
+
6
+ @mixin sprite-image($file) {
7
+ background: sprite-image($file) $repeat;
8
+ }
9
+
10
+ @mixin sized-sprite-image($file) {
11
+ background: sprite-image($file);
12
+ @include image-dimensions($file);
13
+ }
14
+
15
+ @mixin sprite-folder($folder, $image-dimensions: false) {
16
+ .#{$folder} {
17
+ @if $image-dimensions {
18
+ background: sprite-url($folder);
19
+ }
20
+ @else {
21
+ background: sprite-url($folder) no-repeat;
22
+ }
23
+ }
24
+ @for $i from 0 to sprite-files-in-folder($folder) {
25
+ $file: sprite-file-from-folder($folder, $i);
26
+ .#{$folder}-#{image-basename($file)} {
27
+ @extend .#{$folder};
28
+ background-position: sprite-position(sprite-file-from-folder($folder, $i));
29
+ @if $image-dimensions {
30
+ @include image-dimensions($file);
31
+ }
32
+ }
33
+ }
34
+ }
35
+
36
+ @mixin sized-sprite-folder($folder) {
37
+ @include sprite-folder($folder, true);
38
+ }
@@ -0,0 +1,31 @@
1
+ // ---------------------------------------------------------------------------
2
+ // Animations from Animate.css
3
+ // Author : Dan Eden
4
+ // URL : http://daneden.me/animate/
5
+ //
6
+ // Attention seekers
7
+ // - flash bounce shake tada swing wobble pulse
8
+ // Fading entrances
9
+ // - fadeIn fadeInUp fadeInDown fadeInLeft fadeInRight fadeInUpBig fadeInDownBig fadeInLeftBig fadeInRightBig
10
+ // Fading exits
11
+ // - fadeOut fadeOutUp fadeOutDown fadeOutLeft fadeOutRight fadeOutUpBig fadeOutDownBig fadeOutLeftBig fadeOutRightBig
12
+ // Bouncing entrances
13
+ // - bounceIn bounceInDown bounceInUp bounceInLeft bounceInRight
14
+ // Bouncing exits
15
+ // - bounceOut bounceOutDown bounceOutUp bounceOutLeft bounceOutRight
16
+ // Rotating entrances
17
+ // - rotateIn rotateInDownLeft rotateInDownRight rotateInUpLeft rotateInUpRight
18
+ // Rotating exits
19
+ // - rotateOut rotateOutDownLeft rotateOutDownRight rotateOutUpLeft rotateOutUpRight
20
+ // Lightspeed
21
+ // - lightSpeedIn lightSpeedOut
22
+ // Specials
23
+ // - hinge rollIn rollOut
24
+ // ---------------------------------------------------------------------------
25
+ @import "animate/attention-seekers";
26
+ @import "animate/bouncing";
27
+ @import "animate/fading";
28
+ @import "animate/flippers";
29
+ @import "animate/lightspeed";
30
+ @import "animate/rotating";
31
+ @import "animate/specials";
@@ -0,0 +1,127 @@
1
+ @import "shared";
2
+
3
+ // CSS Animations.
4
+
5
+ // Apply an animation property and value with the correct browser support
6
+ @mixin animation-support($property, $value) {
7
+ @include experimental($property, $value, -moz, -webkit, -o, -ms, not -khtml, official); }
8
+
9
+ // Name of any animation as a string.
10
+ $default-animation-name : false !default;
11
+
12
+ // Duration of the entire animation in seconds.
13
+ $default-animation-duration : false !default;
14
+
15
+ // Delay for start of animation in seconds.
16
+ $default-animation-delay : false !default;
17
+
18
+ // The timing function(s) to be used between keyframes. [ease | linear | ease-in | ease-out | ease-in-out | cubic-bezier($number, $number, $number, $number)]
19
+ $default-animation-timing-function : false !default;
20
+
21
+ // The number of times an animation cycle is played. [infinite | $number]
22
+ $default-animation-iteration-count : false !default;
23
+
24
+ // Whether or not the animation should play in reverse on alternate cycles. [normal | alternate]
25
+ $default-animation-direction : false !default;
26
+
27
+ // What values are applied by the animation outside the time it is executing. [none | forwards | backwards | both]
28
+ $default-animation-fill-mode : false !default;
29
+
30
+ // Whether the animation is running or paused. [running | paused]
31
+ $default-animation-play-state : false !default;
32
+
33
+ // Create a named animation sequence that can be applied to elements later.
34
+ //
35
+ // $name - The name of your animation.
36
+ // @content - The keyframes of the animation.
37
+ @mixin keyframes(
38
+ $name,
39
+ $moz: $experimental-support-for-mozilla,
40
+ $webkit: $experimental-support-for-webkit,
41
+ $o: $experimental-support-for-opera,
42
+ $ms: $experimental-support-for-microsoft,
43
+ $khtml: $experimental-support-for-khtml,
44
+ $official: true
45
+ ) {
46
+ @if $moz {
47
+ @include with-only-support-for($moz: true) {
48
+ @-moz-keyframes #{$name} { @content; }
49
+ }
50
+ }
51
+ @if $webkit {
52
+ @include with-only-support-for($webkit: true) {
53
+ @-webkit-keyframes #{$name} { @content; }
54
+ }
55
+ }
56
+ @if $o {
57
+ @include with-only-support-for($o: true) {
58
+ @-o-keyframes #{$name} { @content; }
59
+ }
60
+ }
61
+ @if $ms {
62
+ @include with-only-support-for($ms: true) {
63
+ @-ms-keyframes #{$name} { @content; }
64
+ }
65
+ }
66
+ @if $khtml {
67
+ @include with-only-support-for($khtml: true) {
68
+ @-khtml-keyframes #{$name} { @content; }
69
+ }
70
+ }
71
+ @if $official {
72
+ @include with-only-support-for {
73
+ @keyframes #{$name} { @content; }
74
+ }
75
+ }
76
+ }
77
+
78
+ // Apply 1-10 animation names.
79
+ @mixin animation-name($name-1: $default-animation-name, $name-2: false, $name-3: false, $name-4: false, $name-5: false, $name-6: false, $name-7: false, $name-8: false, $name-9: false, $name-10: false) {
80
+ $name: compact($name-1, $name-2, $name-3, $name-4, $name-5, $name-6, $name-7, $name-8, $name-9, $name-10);
81
+ @include animation-support(animation-name, $name); }
82
+
83
+ // Apply 1-10 animation durations.
84
+ @mixin animation-duration($duration-1: $default-animation-duration, $duration-2: false, $duration-3: false, $duration-4: false, $duration-5: false, $duration-6: false, $duration-7: false, $duration-8: false, $duration-9: false, $duration-10: false) {
85
+ $duration: compact($duration-1, $duration-2, $duration-3, $duration-4, $duration-5, $duration-6, $duration-7, $duration-8, $duration-9, $duration-10);
86
+ @include animation-support(animation-duration, $duration); }
87
+
88
+ // Apply 1-10 animation delays.
89
+ @mixin animation-delay($delay-1: $default-animation-delay, $delay-2: false, $delay-3: false, $delay-4: false, $delay-5: false, $delay-6: false, $delay-7: false, $delay-8: false, $delay-9: false, $delay-10: false) {
90
+ $delay: compact($delay-1, $delay-2, $delay-3, $delay-4, $delay-5, $delay-6, $delay-7, $delay-8, $delay-9, $delay-10);
91
+ @include animation-support(animation-delay, $delay); }
92
+
93
+ // Apply 1-10 animation timing functions.
94
+ @mixin animation-timing-function($function-1: $default-animation-timing-function, $function-2: false, $function-3: false, $function-4: false, $function-5: false, $function-6: false, $function-7: false, $function-8: false, $function-9: false, $function-10: false) {
95
+ $function: compact($function-1, $function-2, $function-3, $function-4, $function-5, $function-6, $function-7, $function-8, $function-9, $function-10);
96
+ @include animation-support(animation-timing-function, $function); }
97
+
98
+ // Apply 1-10 animation iteration counts.
99
+ @mixin animation-iteration-count($count-1: $default-animation-iteration-count, $count-2: false, $count-3: false, $count-4: false, $count-5: false, $count-6: false, $count-7: false, $count-8: false, $count-9: false, $count-10: false) {
100
+ $count: compact($count-1, $count-2, $count-3, $count-4, $count-5, $count-6, $count-7, $count-8, $count-9, $count-10);
101
+ @include animation-support(animation-iteration-count, $count); }
102
+
103
+ // Apply 1-10 animation directions.
104
+ @mixin animation-direction($direction-1: $default-animation-direction, $direction-2: false, $direction-3: false, $direction-4: false, $direction-5: false, $direction-6: false, $direction-7: false, $direction-8: false, $direction-9: false, $direction-10: false) {
105
+ $direction: compact($direction-1, $direction-2, $direction-3, $direction-4, $direction-5, $direction-6, $direction-7, $direction-8, $direction-9, $direction-10);
106
+ @include animation-support(animation-direction, $direction); }
107
+
108
+ // Apply 1-10 animation fill modes.
109
+ @mixin animation-fill-mode($mode-1: $default-animation-fill-mode, $mode-2: false, $mode-3: false, $mode-4: false, $mode-5: false, $mode-6: false, $mode-7: false, $mode-8: false, $mode-9: false, $mode-10: false) {
110
+ $mode: compact($mode-1, $mode-2, $mode-3, $mode-4, $mode-5, $mode-6, $mode-7, $mode-8, $mode-9, $mode-10);
111
+ @include animation-support(animation-fill-mode, $mode); }
112
+
113
+ // Apply 1-10 animation play states.
114
+ @mixin animation-play-state($state-1: $default-animation-play-state, $state-2: false, $state-3: false, $state-4: false, $state-5: false, $state-6: false, $state-7: false, $state-8: false, $state-9: false, $state-10: false) {
115
+ $state: compact($state-1, $state-2, $state-3, $state-4, $state-5, $state-6, $state-7, $state-8, $state-9, $state-10);
116
+ @include animation-support(animation-play-state, $state); }
117
+
118
+ // Shortcut to apply a named animation to an element, with all the settings.
119
+ //
120
+ // $animation-1 : Name and settings for the first animation. [<values> | default]
121
+ // ...
122
+ // $animation-10 : Name and settings for the tenth animation. <values>
123
+ @mixin animation($animation-1: default, $animation-2: false, $animation-3: false, $animation-4: false, $animation-5: false, $animation-6: false, $animation-7: false, $animation-8: false, $animation-9: false, $animation-10: false) {
124
+ @if $animation-1 == default {
125
+ $animation-1: -compass-space-list(compact($default-animation-name, $default-animation-duration, $default-animation-timing-function, $default-animation-delay, $default-animation-iteration-count, $default-animation-direction, $default-animation-fill-mode, $default-animation-play-state)); }
126
+ $animation: compact($animation-1, $animation-2, $animation-3, $animation-4, $animation-5, $animation-6, $animation-7, $animation-8, $animation-9, $animation-10);
127
+ @include animation-support(animation, $animation); }
@@ -0,0 +1,22 @@
1
+ @mixin set-experimental-support($moz: false, $webkit: false, $ms: false, $o: false, $khtml: false) {
2
+ $experimental-support-for-mozilla: $moz;
3
+ $experimental-support-for-webkit: $webkit;
4
+ $experimental-support-for-microsoft: $ms;
5
+ $experimental-support-for-opera: $o;
6
+ $experimental-support-for-khtml: $khtml;
7
+ }
8
+
9
+ @mixin with-only-support-for($moz: false, $webkit: false, $ms: false, $o: false, $khtml: false) {
10
+ // Capture the current state
11
+ $original-moz: $experimental-support-for-mozilla;
12
+ $original-webkit: $experimental-support-for-webkit;
13
+ $original-o: $experimental-support-for-opera;
14
+ $original-ms: $experimental-support-for-microsoft;
15
+ $original-khtml: $experimental-support-for-khtml;
16
+
17
+ @include set-experimental-support($moz, $webkit, $ms, $o, $khtml);
18
+
19
+ @content;
20
+
21
+ @include set-experimental-support($original-moz, $original-webkit, $original-ms, $original-o, $original-khtml);
22
+ }
@@ -0,0 +1,152 @@
1
+ // ---------------------------------------------------------------------------
2
+ @include keyframes(flash) {
3
+ 0% {
4
+ opacity: 1; }
5
+ 25% {
6
+ opacity: 0; }
7
+ 50% {
8
+ opacity: 1; }
9
+ 75% {
10
+ opacity: 0; }
11
+ 100% {
12
+ opacity: 1; } }
13
+
14
+
15
+ // ---------------------------------------------------------------------------
16
+ @include keyframes(bounce) {
17
+ 0% {
18
+ @include translateY(0); }
19
+ 20% {
20
+ @include translateY(0); }
21
+ 40% {
22
+ @include translateY(-30px); }
23
+ 50% {
24
+ @include translateY(0); }
25
+ 60% {
26
+ @include translateY(-15px); }
27
+ 80% {
28
+ @include translateY(0); }
29
+ 100% {
30
+ @include translateY(0); } }
31
+
32
+
33
+ // ---------------------------------------------------------------------------
34
+ @include keyframes(shake) {
35
+ 0% {
36
+ @include translateX(0); }
37
+ 10% {
38
+ @include translateX(-10px); }
39
+ 20% {
40
+ @include translateX(10px); }
41
+ 30% {
42
+ @include translateX(-10px); }
43
+ 40% {
44
+ @include translateX(10px); }
45
+ 50% {
46
+ @include translateX(-10px); }
47
+ 60% {
48
+ @include translateX(10px); }
49
+ 70% {
50
+ @include translateX(-10px); }
51
+ 80% {
52
+ @include translateX(10px); }
53
+ 90% {
54
+ @include translateX(-10px); }
55
+ 100% {
56
+ @include translateX(0); } }
57
+
58
+
59
+ // ---------------------------------------------------------------------------
60
+ @include keyframes(tada) {
61
+ 0% {
62
+ @include scale(1); }
63
+ 10% {
64
+ @include transform(scale(0.9) rotate(-3deg)); }
65
+ 20% {
66
+ @include transform(scale(0.9) rotate(-3deg)); }
67
+ 30% {
68
+ @include transform(scale(1.1) rotate(3deg)); }
69
+ 40% {
70
+ @include transform(scale(1.1) rotate(-3deg)); }
71
+ 50% {
72
+ @include transform(scale(1.1) rotate(3deg)); }
73
+ 60% {
74
+ @include transform(scale(1.1) rotate(-3deg)); }
75
+ 70% {
76
+ @include transform(scale(1.1) rotate(3deg)); }
77
+ 80% {
78
+ @include transform(scale(1.1) rotate(-3deg)); }
79
+ 90% {
80
+ @include transform(scale(1.1) rotate(3deg)); }
81
+ 100% {
82
+ @include transform(scale(1) rotate(0)); } }
83
+
84
+
85
+ // ---------------------------------------------------------------------------
86
+ @include keyframes(swing) {
87
+ 20%, 40%, 60%, 80%, 100% {
88
+ @include transform-origin(top center); }
89
+ 20% {
90
+ @include rotate(15deg); }
91
+ 40% {
92
+ @include rotate(-10deg); }
93
+ 60% {
94
+ @include rotate(5deg); }
95
+ 80% {
96
+ @include rotate(-5deg); }
97
+ 100% {
98
+ @include rotate(0deg); } }
99
+
100
+
101
+ // ---------------------------------------------------------------------------
102
+ @include keyframes(wobble) {
103
+ 0% {
104
+ @include translateX(0%); }
105
+ 15% {
106
+ @include transform(translateX(-25%) rotate(-5deg)); }
107
+ 30% {
108
+ @include transform(translateX(20%) rotate(3deg)); }
109
+ 45% {
110
+ @include transform(translateX(-15%) rotate(-3deg)); }
111
+ 60% {
112
+ @include transform(translateX(10%) rotate(2deg)); }
113
+ 75% {
114
+ @include transform(translateX(-5%) rotate(-1deg)); }
115
+ 100% {
116
+ @include transform(translateX(0%)); } }
117
+
118
+
119
+ // ---------------------------------------------------------------------------
120
+ @include keyframes(pulse) {
121
+ 0% {
122
+ @include scale(1); }
123
+ 50% {
124
+ @include scale(1.1); }
125
+ 100% {
126
+ @include scale(1); } }
127
+
128
+
129
+ // ---------------------------------------------------------------------------
130
+ @include keyframes(wiggle) {
131
+ 0% {
132
+ @include skewX(9deg); }
133
+ 10% {
134
+ @include skewX(-8deg); }
135
+ 20% {
136
+ @include skewX(7deg); }
137
+ 30% {
138
+ @include skewX(-6deg); }
139
+ 40% {
140
+ @include skewX(5deg); }
141
+ 50% {
142
+ @include skewX(-4deg); }
143
+ 60% {
144
+ @include skewX(3deg); }
145
+ 70% {
146
+ @include skewX(-2deg); }
147
+ 80% {
148
+ @include skewX(1deg); }
149
+ 90% {
150
+ @include skewX(0deg); }
151
+ 100% {
152
+ @include skewX(0deg); } }