for testing and deploying your application
for finding and fixing issues
for empowering human code reviews
'use strict';
var objectAssign = require( 'object-assign' ),
ElementAnimator = {
el: null,
showElement: function () {
throw new Error( 'This is an abstract class!' );
},
hideElement: function () {
}
SlidingElementAnimator = objectAssign( Object.create( ElementAnimator ), {
// internal fields
slideSpeed: 600,
this.el
.slideDown( this.slideSpeed )
.animate(
{ opacity: 1 },
{ queue: false, duration: this.slideSpeed }
);
.slideUp( this.slideSpeed )
{ opacity: 0 },
} ),
SimpleElementAnimator = objectAssign( Object.create( ElementAnimator ), {
this.el.show();
this.el.hide();
} );
module.exports = {
createSimpleElementAnimator: function ( element ) {
return objectAssign(
Object.create( SimpleElementAnimator ),
{ el: element }
createSlidingElementAnimator: function ( element ) {
Object.create( SlidingElementAnimator ),
ElementAnimator: ElementAnimator
};