Merge pull request #165 from sarbbottam/master

Unified formatting and refactored Gruntfile.js
This commit is contained in:
Daniel Eden 2014-03-07 08:32:33 -08:00
commit 09338c7304
69 changed files with 847 additions and 699 deletions

View File

@ -2,79 +2,78 @@ module.exports = function(grunt) {
require('load-grunt-tasks')(grunt); require('load-grunt-tasks')(grunt);
pkg: grunt.file.readJSON('package.json'), var concatAnim;
grunt.initConfig({ grunt.initConfig({
// Concatenate CSS files pkg: grunt.file.readJSON('package.json'),
concat: { concat: {
dist: { dist: {
src: [ src: [ 'source/_base.css', 'source/**/*.css' ], // _base.css required for .animated helper class
// _base.css required for .animated helper class
'source/_base.css',
'source/**/*.css'
],
dest: 'animate.css' dest: 'animate.css'
} }
}, },
// Auto-prefix CSS properties using Can I Use? autoprefixer: { // https://github.com/nDmitry/grunt-autoprefixer
autoprefixer: {
options: { options: {
browsers: ['last 3 versions', 'bb 10', 'android 3'] browsers: ['last 3 versions', 'bb 10', 'android 3']
}, },
no_dest: { no_dest: {
// File to output src: 'animate.css' // output file
src: 'animate.css' }
},
}, },
// Minify CSS
cssmin: { cssmin: {
minify: { minify: {
src: ['animate.css'], src: ['animate.css'],
dest: 'animate.min.css', dest: 'animate.min.css',
}, }
}, },
// Watch files for changes
watch: { watch: {
css: { css: {
files: [ files: [ 'source/**/*', 'animate-config.json' ],
'source/**/*', tasks: ['default']
'!node_modules',
'animate-config.json'
],
// Run Sass, autoprefixer, and CSSO
tasks: ['concat-anim', 'autoprefixer', 'cssmin'],
} }
} }
}); });
// Register our tasks // fuction to perform custom task
grunt.registerTask('default', ['concat-anim', 'autoprefixer', 'cssmin', 'watch']); concatAnim = function () {
grunt.registerTask('concat-anim', 'Concatenates activated animations', function () { var categories = grunt.file.readJSON('animate-config.json'),
var config = grunt.file.readJSON('animate-config.json'), category, files, file,
target = [ 'source/_base.css' ], target = [ 'source/_base.css' ],
count = 0 count = 0;
for (var cat in config) { for ( category in categories ) {
for (var file in config[cat]) { if ( categories.hasOwnProperty(category) ) {
if (config[cat][file]) { files = categories[category]
target.push('source/' + cat + '/' + file + '.css') for (file in files) {
count++ if ( files.hasOwnProperty(file) && files[file] ) {
target.push('source/' + category + '/' + file + '.css');
count += 1;
}
} }
} }
} }
if (!count) { if (!count) {
grunt.log.writeln('No animations activated.') grunt.log.writeln('No animations activated.');
} else {
grunt.log.writeln(count + (count > 1 ? ' animations' : ' animation') + ' activated.');
} }
grunt.log.writeln(count + (count > 1 ? ' animations' : ' animation') + ' activated.') grunt.config('concat', { 'animate.css': target });
grunt.task.run('concat');
};
// register task
grunt.registerTask('concat-anim', 'Concatenates activated animations', concatAnim); // custom task
grunt.registerTask('default', ['concat-anim', 'autoprefixer', 'cssmin']);
grunt.registerTask('dev', ['watch']);
grunt.config('concat', { 'animate.css': target })
grunt.task.run('concat')
});
}; };

4
animate.css vendored
View File

@ -2661,11 +2661,11 @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLI
80% { 80% {
-webkit-transform: rotate(60deg) translateY(0); -webkit-transform: rotate(60deg) translateY(0);
transform: rotate(60deg) translateY(0); transform: rotate(60deg) translateY(0);
opacity: 1;
-webkit-transform-origin: top left; -webkit-transform-origin: top left;
transform-origin: top left; transform-origin: top left;
-webkit-animation-timing-function: ease-in-out; -webkit-animation-timing-function: ease-in-out;
animation-timing-function: ease-in-out; animation-timing-function: ease-in-out;
opacity: 1;
} }
100% { 100% {
@ -2713,12 +2713,12 @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLI
-webkit-transform: rotate(60deg) translateY(0); -webkit-transform: rotate(60deg) translateY(0);
-ms-transform: rotate(60deg) translateY(0); -ms-transform: rotate(60deg) translateY(0);
transform: rotate(60deg) translateY(0); transform: rotate(60deg) translateY(0);
opacity: 1;
-webkit-transform-origin: top left; -webkit-transform-origin: top left;
-ms-transform-origin: top left; -ms-transform-origin: top left;
transform-origin: top left; transform-origin: top left;
-webkit-animation-timing-function: ease-in-out; -webkit-animation-timing-function: ease-in-out;
animation-timing-function: ease-in-out; animation-timing-function: ease-in-out;
opacity: 1;
} }
100% { 100% {

2
animate.min.css vendored

File diff suppressed because one or more lines are too long

View File

@ -1,7 +1,15 @@
@keyframes bounce { @keyframes bounce {
0%, 20%, 50%, 80%, 100% {transform: translateY(0);} 0%, 20%, 50%, 80%, 100% {
40% {transform: translateY(-30px);} transform: translateY(0);
60% {transform: translateY(-15px);} }
40% {
transform: translateY(-30px);
}
60% {
transform: translateY(-15px);
}
} }
.bounce { .bounce {

View File

@ -1,6 +1,11 @@
@keyframes flash { @keyframes flash {
0%, 50%, 100% {opacity: 1;} 0%, 50%, 100% {
25%, 75% {opacity: 0;} opacity: 1;
}
25%, 75% {
opacity: 0;
}
} }
.flash { .flash {

View File

@ -1,9 +1,17 @@
/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */ /* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
@keyframes pulse { @keyframes pulse {
0% { transform: scale(1); } 0% {
50% { transform: scale(1.1); } transform: scale(1);
100% { transform: scale(1); } }
50% {
transform: scale(1.1);
}
100% {
transform: scale(1);
}
} }
.pulse { .pulse {

View File

@ -1,9 +1,23 @@
@keyframes rubberBand { @keyframes rubberBand {
0% { transform: scale(1); } 0% {
30% { transform: scaleX(1.25) scaleY(0.75); } transform: scale(1);
40% { transform: scaleX(0.75) scaleY(1.25); } }
60% { transform: scaleX(1.15) scaleY(0.85); }
100% { transform: scale(1); } 30% {
transform: scaleX(1.25) scaleY(0.75);
}
40% {
transform: scaleX(0.75) scaleY(1.25);
}
60% {
transform: scaleX(1.15) scaleY(0.85);
}
100% {
transform: scale(1);
}
} }
.rubberBand { .rubberBand {

View File

@ -1,7 +1,15 @@
@keyframes shake { @keyframes shake {
0%, 100% {transform: translateX(0);} 0%, 100% {
10%, 30%, 50%, 70%, 90% {transform: translateX(-10px);} transform: translateX(0);
20%, 40%, 60%, 80% {transform: translateX(10px);} }
10%, 30%, 50%, 70%, 90% {
transform: translateX(-10px);
}
20%, 40%, 60%, 80% {
transform: translateX(10px);
}
} }
.shake { .shake {

View File

@ -1,9 +1,23 @@
@keyframes swing { @keyframes swing {
20% { transform: rotate(15deg); } 20% {
40% { transform: rotate(-10deg); } transform: rotate(15deg);
60% { transform: rotate(5deg); } }
80% { transform: rotate(-5deg); }
100% { transform: rotate(0deg); } 40% {
transform: rotate(-10deg);
}
60% {
transform: rotate(5deg);
}
80% {
transform: rotate(-5deg);
}
100% {
transform: rotate(0deg);
}
} }
.swing { .swing {

View File

@ -1,9 +1,23 @@
@keyframes tada { @keyframes tada {
0% {transform: scale(1);} 0% {
10%, 20% {transform: scale(0.9) rotate(-3deg);} transform: scale(1);
30%, 50%, 70%, 90% {transform: scale(1.1) rotate(3deg);} }
40%, 60%, 80% {transform: scale(1.1) rotate(-3deg);}
100% {transform: scale(1) rotate(0);} 10%, 20% {
transform: scale(0.9) rotate(-3deg);
}
30%, 50%, 70%, 90% {
transform: scale(1.1) rotate(3deg);
}
40%, 60%, 80% {
transform: scale(1.1) rotate(-3deg);
}
100% {
transform: scale(1) rotate(0);
}
} }
.tada { .tada {

View File

@ -1,13 +1,33 @@
/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */ /* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
@keyframes wobble { @keyframes wobble {
0% { transform: translateX(0%); } 0% {
15% { transform: translateX(-25%) rotate(-5deg); } transform: translateX(0%);
30% { transform: translateX(20%) rotate(3deg); } }
45% { transform: translateX(-15%) rotate(-3deg); }
60% { transform: translateX(10%) rotate(2deg); } 15% {
75% { transform: translateX(-5%) rotate(-1deg); } transform: translateX(-25%) rotate(-5deg);
100% { transform: translateX(0%); } }
30% {
transform: translateX(20%) rotate(3deg);
}
45% {
transform: translateX(-15%) rotate(-3deg);
}
60% {
transform: translateX(10%) rotate(2deg);
}
75% {
transform: translateX(-5%) rotate(-1deg);
}
100% {
transform: translateX(0%);
}
} }
.wobble { .wobble {

View File

@ -3,18 +3,22 @@
transform: perspective(400px) translateZ(0) rotateY(0) scale(1); transform: perspective(400px) translateZ(0) rotateY(0) scale(1);
animation-timing-function: ease-out; animation-timing-function: ease-out;
} }
40% { 40% {
transform: perspective(400px) translateZ(150px) rotateY(170deg) scale(1); transform: perspective(400px) translateZ(150px) rotateY(170deg) scale(1);
animation-timing-function: ease-out; animation-timing-function: ease-out;
} }
50% { 50% {
transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1); transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
animation-timing-function: ease-in; animation-timing-function: ease-in;
} }
80% { 80% {
transform: perspective(400px) translateZ(0) rotateY(360deg) scale(.95); transform: perspective(400px) translateZ(0) rotateY(360deg) scale(.95);
animation-timing-function: ease-in; animation-timing-function: ease-in;
} }
100% { 100% {
transform: perspective(400px) translateZ(0) rotateY(360deg) scale(1); transform: perspective(400px) translateZ(0) rotateY(360deg) scale(1);
animation-timing-function: ease-in; animation-timing-function: ease-in;

View File

@ -3,6 +3,7 @@
transform: perspective(400px) rotateX(0deg); transform: perspective(400px) rotateX(0deg);
opacity: 1; opacity: 1;
} }
100% { 100% {
transform: perspective(400px) rotateX(90deg); transform: perspective(400px) rotateX(90deg);
opacity: 0; opacity: 0;

View File

@ -3,6 +3,7 @@
transform: perspective(400px) rotateY(0deg); transform: perspective(400px) rotateY(0deg);
opacity: 1; opacity: 1;
} }
100% { 100% {
transform: perspective(400px) rotateY(90deg); transform: perspective(400px) rotateY(90deg);
opacity: 0; opacity: 0;

View File

@ -1,8 +1,23 @@
@keyframes lightSpeedIn { @keyframes lightSpeedIn {
0% { transform: translateX(100%) skewX(-30deg); opacity: 0; } 0% {
60% { transform: translateX(-20%) skewX(30deg); opacity: 1; } transform: translateX(100%) skewX(-30deg);
80% { transform: translateX(0%) skewX(-15deg); opacity: 1; } opacity: 0;
100% { transform: translateX(0%) skewX(0deg); opacity: 1; } }
60% {
transform: translateX(-20%) skewX(30deg);
opacity: 1;
}
80% {
transform: translateX(0%) skewX(-15deg);
opacity: 1;
}
100% {
transform: translateX(0%) skewX(0deg);
opacity: 1;
}
} }
.lightSpeedIn { .lightSpeedIn {

View File

@ -1,10 +1,16 @@
@keyframes lightSpeedOut { @keyframes lightSpeedOut {
0% { transform: translateX(0%) skewX(0deg); opacity: 1; } 0% {
100% { transform: translateX(100%) skewX(-30deg); opacity: 0; } transform: translateX(0%) skewX(0deg);
opacity: 1;
}
100% {
transform: translateX(100%) skewX(-30deg);
opacity: 0;
}
} }
.lightSpeedOut { .lightSpeedOut {
animation-name: lightSpeedOut; animation-name: lightSpeedOut;
animation-timing-function: ease-in; animation-timing-function: ease-in;
} }

View File

@ -1,9 +1,33 @@
@keyframes hinge { @keyframes hinge {
0% { transform: rotate(0); transform-origin: top left; animation-timing-function: ease-in-out; } 0% {
20%, 60% { transform: rotate(80deg); transform-origin: top left; animation-timing-function: ease-in-out; } transform: rotate(0);
40% { transform: rotate(60deg); transform-origin: top left; animation-timing-function: ease-in-out; } transform-origin: top left;
80% { transform: rotate(60deg) translateY(0); opacity: 1; transform-origin: top left; animation-timing-function: ease-in-out; } animation-timing-function: ease-in-out;
100% { transform: translateY(700px); opacity: 0; } }
20%, 60% {
transform: rotate(80deg);
transform-origin: top left;
animation-timing-function: ease-in-out;
}
40% {
transform: rotate(60deg);
transform-origin: top left;
animation-timing-function: ease-in-out;
}
80% {
transform: rotate(60deg) translateY(0);
transform-origin: top left;
animation-timing-function: ease-in-out;
opacity: 1;
}
100% {
transform: translateY(700px);
opacity: 0;
}
} }
.hinge { .hinge {

View File

@ -1,8 +1,15 @@
/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */ /* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
@keyframes rollIn { @keyframes rollIn {
0% { opacity: 0; transform: translateX(-100%) rotate(-120deg); } 0% {
100% { opacity: 1; transform: translateX(0px) rotate(0deg); } opacity: 0;
transform: translateX(-100%) rotate(-120deg);
}
100% {
opacity: 1;
transform: translateX(0px) rotate(0deg);
}
} }
.rollIn { .rollIn {