ceaser-easing 0.1.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/README.mkdn +104 -0
- data/lib/ceaser-easing.rb +3 -0
- data/stylesheets/_ceaser-easing.sass +1 -0
- data/stylesheets/ceaser-easing/_easing-functions.sass +69 -0
- data/templates/project/_ceaser.sass +15 -0
- data/templates/project/manifest.rb +11 -0
- metadata +84 -0
data/README.mkdn
ADDED
@@ -0,0 +1,104 @@
|
|
1
|
+
Compass Ceaser CSS Eeasing Transitions
|
2
|
+
======================================
|
3
|
+
|
4
|
+
An compass extension based on [ceasar css easing animation tool](http://matthewlein.com/ceaser/) by [@matthewlein](http://twitter.com/matthewlein)
|
5
|
+
This extension provides transitions based on the classic Penner equations from Flash and jQuery.
|
6
|
+
|
7
|
+
|
8
|
+
Installation
|
9
|
+
============
|
10
|
+
|
11
|
+
Install gem from the command line:
|
12
|
+
|
13
|
+
sudo gem install ceaser-easing
|
14
|
+
|
15
|
+
Create a new project using Sassy Buttons
|
16
|
+
|
17
|
+
compass create project_name -r ceaser-easing --using ceaser-easing
|
18
|
+
|
19
|
+
#import ceaser-easing into your sass/scss file
|
20
|
+
@import "ceaser-easing"
|
21
|
+
|
22
|
+
|
23
|
+
Adding Sassy Buttons to an exiting project:
|
24
|
+
|
25
|
+
# Edit the project configuration file and add:
|
26
|
+
require 'ceaser-easing'
|
27
|
+
|
28
|
+
# From the command line:
|
29
|
+
compass install ceaser-easing
|
30
|
+
|
31
|
+
#import sassy buttons into your sass/scss file
|
32
|
+
@import "ceaser-easing"
|
33
|
+
|
34
|
+
|
35
|
+
|
36
|
+
|
37
|
+
|
38
|
+
Using Ceaser Eeasing
|
39
|
+
===================
|
40
|
+
|
41
|
+
The ceaser easing extension provides a mixin called ceaser. You pass what type of easing you would like to the mixin and it will apply the correct cubic-bezier transition timing function for you. You can then pass the transition property (defaults to all), the transiton duration (defautlts to 500ms), and the transition delay (defaults to 0).
|
42
|
+
|
43
|
+
The ceaser easing mixin
|
44
|
+
-----------------------
|
45
|
+
|
46
|
+
# The ceaser easing mixin with its argument descriptions
|
47
|
+
@mixin ceaser(ease type, transition property, duration, delay)
|
48
|
+
|
49
|
+
# Example mixin call that will create a 3 second transition with the ease type of ease-in
|
50
|
+
@include ceaser(ease-in, all, 3s)
|
51
|
+
|
52
|
+
# Example mixin call that will create a 500 millisecon transition on only the width property with a delay of 1 second
|
53
|
+
@include ceaser(easeInOutExpo, width, 500ms, 1s)
|
54
|
+
|
55
|
+
|
56
|
+
As an example, here is how create the above transition for an html element with id of box.
|
57
|
+
|
58
|
+
#box {
|
59
|
+
width: 500px;
|
60
|
+
@include ceaser(easeInOutExpo, width, 500ms, 1s);
|
61
|
+
}
|
62
|
+
|
63
|
+
#box:hover {
|
64
|
+
width: 700px;
|
65
|
+
}
|
66
|
+
|
67
|
+
|
68
|
+
Ease Types
|
69
|
+
----------
|
70
|
+
Here is a list of all the available easing types to choose from, you can see an example of each on the original [demo page](http://matthewlein.com/ceaser/)
|
71
|
+
|
72
|
+
linear
|
73
|
+
ease (default)
|
74
|
+
ease-in
|
75
|
+
ease-out
|
76
|
+
ease-in-out
|
77
|
+
|
78
|
+
easeInQuad
|
79
|
+
easeInCubic
|
80
|
+
easeInQuart
|
81
|
+
easeInQuint
|
82
|
+
easeInSine
|
83
|
+
easeInExpo
|
84
|
+
easeInCirc
|
85
|
+
|
86
|
+
easeOutQuad
|
87
|
+
easeOutCubic
|
88
|
+
easeOutQuart
|
89
|
+
easeOutQuint
|
90
|
+
easeOutSine
|
91
|
+
easeOutExpo
|
92
|
+
easeOutCirc
|
93
|
+
|
94
|
+
easeInOutQuad
|
95
|
+
easeInOutCubic
|
96
|
+
easeInOutQuart
|
97
|
+
easeInOutQuint
|
98
|
+
easeInOutSine
|
99
|
+
easeInOutExpo
|
100
|
+
easeInOutCirc
|
101
|
+
|
102
|
+
|
103
|
+
|
104
|
+
|
@@ -0,0 +1 @@
|
|
1
|
+
@import "ceaser-easing/easing-functions"
|
@@ -0,0 +1,69 @@
|
|
1
|
+
@import "compass/css3/transition"
|
2
|
+
|
3
|
+
@mixin ceaser($type: "ease", $properties: all, $duration: 500ms, $delay: 0)
|
4
|
+
$easingValue : ""
|
5
|
+
|
6
|
+
@if $type == "linear"
|
7
|
+
$easingValue: "0.250, 0.250, 0.750, 0.750"
|
8
|
+
@else if $type == "ease"
|
9
|
+
$easingValue: "0.250, 0.100, 0.250, 1.000"
|
10
|
+
@else if $type == "ease-in"
|
11
|
+
$easingValue: "0.420, 0.000, 1.000, 1.000"
|
12
|
+
@else if $type == "ease-out"
|
13
|
+
$easingValue: "0.000, 0.000, 0.580, 1.000"
|
14
|
+
@else if $type == "ease-in-out"
|
15
|
+
$easingValue: "0.420, 0.000, 0.580, 1.000"
|
16
|
+
|
17
|
+
|
18
|
+
|
19
|
+
@else if $type == "easeInQuad"
|
20
|
+
$easingValue: "0.550, 0.085, 0.680, 0.530"
|
21
|
+
@else if $type == "easeInCubic"
|
22
|
+
$easingValue: "0.550, 0.055, 0.675, 0.190"
|
23
|
+
@else if $type == "easeInQuart"
|
24
|
+
$easingValue: "0.895, 0.030, 0.685, 0.220"
|
25
|
+
@else if $type == "easeInQuint"
|
26
|
+
$easingValue: "0.755, 0.050, 0.855, 0.060"
|
27
|
+
@else if $type == "easeInSine"
|
28
|
+
$easingValue: "0.470, 0.000, 0.745, 0.715"
|
29
|
+
@else if $type == "easeInExpo"
|
30
|
+
$easingValue: "0.950, 0.050, 0.795, 0.035"
|
31
|
+
@else if $type == "easeInCirc"
|
32
|
+
$easingValue: "0.600, 0.040, 0.980, 0.335"
|
33
|
+
|
34
|
+
|
35
|
+
|
36
|
+
@else if $type == "easeOutQuad"
|
37
|
+
$easingValue: "0.250, 0.460, 0.450, 0.940"
|
38
|
+
@else if $type == "easeOutCubic"
|
39
|
+
$easingValue: "0.215, 0.610, 0.355, 1.000"
|
40
|
+
@else if $type == "easeOutQuart"
|
41
|
+
$easingValue: "0.165, 0.840, 0.440, 1.000"
|
42
|
+
@else if $type == "easeOutQuint"
|
43
|
+
$easingValue: "0.230, 1.000, 0.320, 1.000"
|
44
|
+
@else if $type == "easeOutSine"
|
45
|
+
$easingValue: "0.390, 0.575, 0.565, 1.000"
|
46
|
+
@else if $type == "easeOutExpo"
|
47
|
+
$easingValue: "0.190, 1.000, 0.220, 1.000"
|
48
|
+
@else if $type == "easeOutCirc"
|
49
|
+
$easingValue: "0.075, 0.820, 0.165, 1.000"
|
50
|
+
|
51
|
+
|
52
|
+
|
53
|
+
@else if $type == "easeInOutQuad"
|
54
|
+
$easingValue: "0.455, 0.030, 0.515, 0.955"
|
55
|
+
@else if $type == "easeInOutCubic"
|
56
|
+
$easingValue: "0.645, 0.045, 0.355, 1.000"
|
57
|
+
@else if $type == "easeInOutQuart"
|
58
|
+
$easingValue: "0.770, 0.000, 0.175, 1.000"
|
59
|
+
@else if $type == "easeInOutQuint"
|
60
|
+
$easingValue: "0.860, 0.000, 0.070, 1.000"
|
61
|
+
@else if $type == "easeInOutSine"
|
62
|
+
$easingValue: "0.445, 0.050, 0.550, 0.950"
|
63
|
+
@else if $type == "easeInOutExpo"
|
64
|
+
$easingValue: "1.000, 0.000, 0.000, 1.000"
|
65
|
+
@else if $type == "easeInOutCirc"
|
66
|
+
$easingValue: "0.785, 0.135, 0.150, 0.860"
|
67
|
+
|
68
|
+
@include transition($properties, $duration, cubic-bezier(unquote($easingValue)), $delay)
|
69
|
+
|
@@ -0,0 +1,15 @@
|
|
1
|
+
@import "ceaser-easing"
|
2
|
+
// The ceaser easing mixin with its argument descriptions
|
3
|
+
// @mixin ceaser(ease type, transition property, duration, delay)
|
4
|
+
|
5
|
+
// Example mixin call that will create a 500 millisecon transition on only the width property with a delay of 1 second
|
6
|
+
// here is how to create that transition for an html element with id of box.
|
7
|
+
|
8
|
+
#box
|
9
|
+
width: 500px
|
10
|
+
@include ceaser(easeInOutExpo, width, 500ms, 1s)
|
11
|
+
|
12
|
+
|
13
|
+
#box:hover
|
14
|
+
width: 700px
|
15
|
+
|
@@ -0,0 +1,11 @@
|
|
1
|
+
stylesheet '_ceaser.sass', :media => 'screen, projection'
|
2
|
+
|
3
|
+
description "a css transition implementation of the Penner equations based on @matthewlein css conversions for compass."
|
4
|
+
|
5
|
+
help %Q{
|
6
|
+
Installs ceaser extension
|
7
|
+
}
|
8
|
+
|
9
|
+
welcome_message %Q{
|
10
|
+
Please refer to the readme on github for usage questions
|
11
|
+
}
|
metadata
ADDED
@@ -0,0 +1,84 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: ceaser-easing
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
prerelease: false
|
5
|
+
segments:
|
6
|
+
- 0
|
7
|
+
- 1
|
8
|
+
- 5
|
9
|
+
version: 0.1.5
|
10
|
+
platform: ruby
|
11
|
+
authors:
|
12
|
+
- Jared Hardy
|
13
|
+
autorequire:
|
14
|
+
bindir: bin
|
15
|
+
cert_chain: []
|
16
|
+
|
17
|
+
date: 2011-03-22 00:00:00 -07:00
|
18
|
+
default_executable:
|
19
|
+
dependencies:
|
20
|
+
- !ruby/object:Gem::Dependency
|
21
|
+
name: compass
|
22
|
+
prerelease: false
|
23
|
+
requirement: &id001 !ruby/object:Gem::Requirement
|
24
|
+
none: false
|
25
|
+
requirements:
|
26
|
+
- - ">="
|
27
|
+
- !ruby/object:Gem::Version
|
28
|
+
segments:
|
29
|
+
- 0
|
30
|
+
- 11
|
31
|
+
- beta
|
32
|
+
- 3
|
33
|
+
version: 0.11.beta.3
|
34
|
+
type: :runtime
|
35
|
+
version_requirements: *id001
|
36
|
+
description: a css transition implementation of the Penner equations based on @matthewlein css conversions for compass
|
37
|
+
email: jared@jaredhardy.com
|
38
|
+
executables: []
|
39
|
+
|
40
|
+
extensions: []
|
41
|
+
|
42
|
+
extra_rdoc_files: []
|
43
|
+
|
44
|
+
files:
|
45
|
+
- README.mkdn
|
46
|
+
- lib/ceaser-easing.rb
|
47
|
+
- stylesheets/_ceaser-easing.sass
|
48
|
+
- stylesheets/ceaser-easing/_easing-functions.sass
|
49
|
+
- templates/project/_ceaser.sass
|
50
|
+
- templates/project/manifest.rb
|
51
|
+
has_rdoc: true
|
52
|
+
homepage: http://www.jaredhardy.com/
|
53
|
+
licenses: []
|
54
|
+
|
55
|
+
post_install_message:
|
56
|
+
rdoc_options: []
|
57
|
+
|
58
|
+
require_paths:
|
59
|
+
- lib
|
60
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
61
|
+
none: false
|
62
|
+
requirements:
|
63
|
+
- - ">="
|
64
|
+
- !ruby/object:Gem::Version
|
65
|
+
segments:
|
66
|
+
- 0
|
67
|
+
version: "0"
|
68
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
69
|
+
none: false
|
70
|
+
requirements:
|
71
|
+
- - ">="
|
72
|
+
- !ruby/object:Gem::Version
|
73
|
+
segments:
|
74
|
+
- 0
|
75
|
+
version: "0"
|
76
|
+
requirements: []
|
77
|
+
|
78
|
+
rubyforge_project:
|
79
|
+
rubygems_version: 1.3.7
|
80
|
+
signing_key:
|
81
|
+
specification_version: 3
|
82
|
+
summary: a css transition implementation of the Penner equations based on @matthewlein css conversions for compass
|
83
|
+
test_files: []
|
84
|
+
|