nanotween
Advanced tools
Comparing version 0.4.8 to 0.4.9
@@ -1,304 +0,1 @@ | ||
var ntEasings = (function (exports) { | ||
function linear (k) { | ||
return k | ||
} | ||
linear.reverse = linear; | ||
function quadraticOut (k) { | ||
return k * (2 - k) | ||
} | ||
quadraticOut.reverse = quadraticIn; | ||
function quadraticIn (k) { | ||
return k * k | ||
} | ||
quadraticIn.reverse = quadraticOut; | ||
function quadraticInOut (k) { | ||
if ((k *= 2) < 1) { | ||
return 0.5 * k * k | ||
} | ||
return -0.5 * (--k * (k - 2) - 1) | ||
} | ||
quadraticInOut.reverse = quadraticInOut; | ||
function cubicOut (k) { | ||
return --k * k * k + 1 | ||
} | ||
cubicOut.reverse = cubicIn; | ||
function cubicIn (k) { | ||
return k * k * k | ||
} | ||
cubicIn.reverse = cubicOut; | ||
function cubicInOut (k) { | ||
if ((k *= 2) < 1) { | ||
return 0.5 * k * k * k | ||
} | ||
return 0.5 * ((k -= 2) * k * k + 2) | ||
} | ||
cubicInOut.reverse = cubicInOut; | ||
function quarticOut (k) { | ||
return 1 - --k * k * k * k | ||
} | ||
quarticOut.reverse = quarticOut; | ||
function quarticIn (k) { | ||
return k * k * k * k | ||
} | ||
quarticIn.reverse = quarticOut; | ||
function quarticInOut (k) { | ||
if ((k *= 2) < 1) { | ||
return 0.5 * k * k * k * k | ||
} | ||
return -0.5 * ((k -= 2) * k * k * k - 2) | ||
} | ||
quarticInOut.reverse = quarticInOut; | ||
function quinticOut (k) { | ||
return --k * k * k * k * k + 1 | ||
} | ||
quinticOut.reverse = quinticIn; | ||
function quinticIn (k) { | ||
return k * k * k * k * k | ||
} | ||
quinticIn.reverse = quinticOut; | ||
function quinticInOut (k) { | ||
if ((k *= 2) < 1) { | ||
return 0.5 * k * k * k * k * k | ||
} | ||
return 0.5 * ((k -= 2) * k * k * k * k + 2) | ||
} | ||
quinticInOut.reverse = quinticInOut; | ||
function sinussoidalOut (k) { | ||
return Math.sin(k * Math.PI / 2) | ||
} | ||
sinussoidalOut.reverse = sinussoidalIn; | ||
function sinussoidalIn (k) { | ||
return 1 - Math.cos(k * Math.PI / 2) | ||
} | ||
sinussoidalIn.reverse = sinussoidalOut; | ||
function sinussoidalInOut (k) { | ||
return 0.5 * (1 - Math.cos(Math.PI * k)) | ||
} | ||
sinussoidalInOut.reverse = sinussoidalInOut; | ||
function expoOut (k) { | ||
return k === 1 ? 1 : 1 - Math.pow(2, -10 * k) | ||
} | ||
expoOut.reverse = expoIn; | ||
function expoIn (k) { | ||
return k === 0 ? 0 : Math.pow(1024, k - 1) | ||
} | ||
expoIn.reverse = expoOut; | ||
function expoInOut (k) { | ||
if (k === 0) { | ||
return 0 | ||
} | ||
if (k === 1) { | ||
return 1 | ||
} | ||
if ((k *= 2) < 1) { | ||
return 0.5 * Math.pow(1024, k - 1) | ||
} | ||
return 0.5 * (-Math.pow(2, -10 * (k - 1)) + 2) | ||
} | ||
expoInOut.reverse = expoInOut; | ||
function circularOut (k) { | ||
return Math.sqrt(1 - --k * k) | ||
} | ||
circularOut.reverse = circularIn; | ||
function circularIn (k) { | ||
return 1 - Math.sqrt(1 - k * k) | ||
} | ||
circularIn.reverse = circularOut; | ||
function circularInOut(k) { | ||
if ((k *= 2) < 1) { | ||
return -0.5 * (Math.sqrt(1 - k * k) - 1) | ||
} | ||
return 0.5 * (Math.sqrt(1 - (k -= 2) * k) + 1) | ||
} | ||
function elasticOut (k) { | ||
if (k === 0) { | ||
return 0 | ||
} | ||
if (k === 1) { | ||
return 1 | ||
} | ||
return Math.pow(2, -10 * k) * Math.sin((k - 0.1) * 5 * Math.PI) + 1 | ||
} | ||
elasticOut.reverse = elasticIn; | ||
function elasticIn (k) { | ||
if (k === 0) { | ||
return 0 | ||
} | ||
if (k === 1) { | ||
return 1 | ||
} | ||
return -Math.pow(2, 10 * (k - 1)) * Math.sin((k - 1.1) * 5 * Math.PI) | ||
} | ||
elasticIn.reverse = elasticOut; | ||
function elasticInOut (k) { | ||
if (k === 0) { | ||
return 0 | ||
} | ||
if (k === 1) { | ||
return 1 | ||
} | ||
k *= 2; | ||
if (k < 1) { | ||
return -0.5 * Math.pow(2, 10 * (k - 1)) * Math.sin((k - 1.1) * 5 * Math.PI) | ||
} | ||
return ( | ||
0.5 * Math.pow(2, -10 * (k - 1)) * Math.sin((k - 1.1) * 5 * Math.PI) + 1 | ||
) | ||
} | ||
elasticInOut.reverse = elasticInOut; | ||
function backOut (k) { | ||
var s = 1.70158; | ||
return --k * k * ((s + 1) * k + s) + 1 | ||
} | ||
backOut.reverse = backIn; | ||
function backIn (k) { | ||
var s = 1.70158; | ||
return k * k * ((s + 1) * k - s) | ||
} | ||
backIn.reverse = backOut; | ||
function backInOut (k) { | ||
var s = 1.70158 * 1.525; | ||
if ((k *= 2) < 1) { | ||
return 0.5 * (k * k * ((s + 1) * k - s)) | ||
} | ||
return 0.5 * ((k -= 2) * k * ((s + 1) * k + s) + 2) | ||
} | ||
backInOut.reverse = backInOut; | ||
function bounceOut (k) { | ||
if (k < 1 / 2.75) { | ||
return 7.5625 * k * k | ||
} else if (k < 2 / 2.75) { | ||
return 7.5625 * (k -= 1.5 / 2.75) * k + 0.75 | ||
} else if (k < 2.5 / 2.75) { | ||
return 7.5625 * (k -= 2.25 / 2.75) * k + 0.9375 | ||
} else { | ||
return 7.5625 * (k -= 2.625 / 2.75) * k + 0.984375 | ||
} | ||
} | ||
bounceOut.reverse = bounceIn; | ||
function bounceIn (k) { | ||
return 1 - bounceOut(1 - k) | ||
} | ||
bounceIn.reverse = bounceOut; | ||
function bounceInOut(k) { | ||
if (k < 0.5) { | ||
return bounceIn(k * 2) * 0.5 | ||
} | ||
return bounceOut(k * 2 - 1) * 0.5 + 0.5 | ||
} | ||
exports.linear = linear; | ||
exports.quadraticIn = quadraticIn; | ||
exports.quadraticOut = quadraticOut; | ||
exports.quadraticInOut = quadraticInOut; | ||
exports.cubicIn = cubicIn; | ||
exports.cubicOut = cubicOut; | ||
exports.cubicInOut = cubicInOut; | ||
exports.quarticIn = quarticIn; | ||
exports.quarticOut = quarticOut; | ||
exports.quarticInOut = quarticInOut; | ||
exports.quinticIn = quinticIn; | ||
exports.quinticOut = quinticOut; | ||
exports.quinticInOut = quinticInOut; | ||
exports.sinussoidalIn = sinussoidalIn; | ||
exports.sinussoidalOut = sinussoidalOut; | ||
exports.sinussoidalInOut = sinussoidalInOut; | ||
exports.expoIn = expoIn; | ||
exports.expoOut = expoOut; | ||
exports.expoInOut = expoInOut; | ||
exports.circularIn = circularIn; | ||
exports.circularOut = circularOut; | ||
exports.circularInOut = circularInOut; | ||
exports.elasticIn = elasticIn; | ||
exports.elasticOut = elasticOut; | ||
exports.elasticInOut = elasticInOut; | ||
exports.backIn = backIn; | ||
exports.backOut = backOut; | ||
exports.backInOut = backInOut; | ||
exports.bounceIn = bounceIn; | ||
exports.bounceOut = bounceOut; | ||
exports.bounceInOut = bounceInOut; | ||
return exports; | ||
}({})); | ||
var ntEasings=function(r){function n(r){return r}function e(r){return r*(2-r)}function t(r){return r*r}function u(r){return(r*=2)<1?.5*r*r:-.5*(--r*(r-2)-1)}function i(r){return--r*r*r+1}function c(r){return r*r*r}function s(r){return(r*=2)<1?.5*r*r*r:.5*((r-=2)*r*r+2)}function a(r){return 1- --r*r*r*r}function o(r){return r*r*r*r}function f(r){return(r*=2)<1?.5*r*r*r*r:-.5*((r-=2)*r*r*r-2)}function v(r){return--r*r*r*r*r+1}function I(r){return r*r*r*r*r}function h(r){return(r*=2)<1?.5*r*r*r*r*r:.5*((r-=2)*r*r*r*r+2)}function M(r){return Math.sin(r*Math.PI/2)}function O(r){return 1-Math.cos(r*Math.PI/2)}function q(r){return.5*(1-Math.cos(Math.PI*r))}function p(r){return 1===r?1:1-Math.pow(2,-10*r)}function l(r){return 0===r?0:Math.pow(1024,r-1)}function b(r){return 0===r?0:1===r?1:(r*=2)<1?.5*Math.pow(1024,r-1):.5*(2-Math.pow(2,-10*(r-1)))}function w(r){return Math.sqrt(1- --r*r)}function P(r){return 1-Math.sqrt(1-r*r)}function d(r){return 0===r?0:1===r?1:Math.pow(2,-10*r)*Math.sin(5*(r-.1)*Math.PI)+1}function k(r){return 0===r?0:1===r?1:-Math.pow(2,10*(r-1))*Math.sin(5*(r-1.1)*Math.PI)}function x(r){return 0===r?0:1===r?1:(r*=2)<1?-.5*Math.pow(2,10*(r-1))*Math.sin(5*(r-1.1)*Math.PI):.5*Math.pow(2,-10*(r-1))*Math.sin(5*(r-1.1)*Math.PI)+1}function g(r){return--r*r*(2.70158*r+1.70158)+1}function E(r){return r*r*(2.70158*r-1.70158)}function j(r){var n=2.5949095;return(r*=2)<1?r*r*((n+1)*r-n)*.5:.5*((r-=2)*r*((n+1)*r+n)+2)}function m(r){return r<1/2.75?7.5625*r*r:r<2/2.75?7.5625*(r-=1.5/2.75)*r+.75:r<2.5/2.75?7.5625*(r-=2.25/2.75)*r+.9375:7.5625*(r-=2.625/2.75)*r+.984375}function y(r){return 1-m(1-r)}return n.reverse=n,e.reverse=t,t.reverse=e,u.reverse=u,i.reverse=c,c.reverse=i,s.reverse=s,a.reverse=a,o.reverse=a,f.reverse=f,v.reverse=I,I.reverse=v,h.reverse=h,M.reverse=O,O.reverse=M,q.reverse=q,p.reverse=l,l.reverse=p,b.reverse=b,w.reverse=P,P.reverse=w,d.reverse=k,k.reverse=d,x.reverse=x,g.reverse=E,E.reverse=g,j.reverse=j,m.reverse=y,y.reverse=m,r.linear=n,r.quadraticIn=t,r.quadraticOut=e,r.quadraticInOut=u,r.cubicIn=c,r.cubicOut=i,r.cubicInOut=s,r.quarticIn=o,r.quarticOut=a,r.quarticInOut=f,r.quinticIn=I,r.quinticOut=v,r.quinticInOut=h,r.sinussoidalIn=O,r.sinussoidalOut=M,r.sinussoidalInOut=q,r.expoIn=l,r.expoOut=p,r.expoInOut=b,r.circularIn=P,r.circularOut=w,r.circularInOut=function(r){return(r*=2)<1?-.5*(Math.sqrt(1-r*r)-1):.5*(Math.sqrt(1-(r-=2)*r)+1)},r.elasticIn=k,r.elasticOut=d,r.elasticInOut=x,r.backIn=E,r.backOut=g,r.backInOut=j,r.bounceIn=y,r.bounceOut=m,r.bounceInOut=function(r){return r<.5?.5*y(2*r):.5*m(2*r-1)+.5},r}({}); |
@@ -1,127 +0,1 @@ | ||
var ntHelpers = (function (exports) { | ||
function yoyo(self) { | ||
self.on('step', function() { | ||
self.reverse().set(0); | ||
self.bus.emit('yoyo', self.state.reversed); | ||
}); | ||
return self | ||
} | ||
function def(from, to, k) { | ||
return from + (to - from) * k | ||
} | ||
function fromTo(from, to, cb) { | ||
return function(instance) { | ||
var fn = function(k) { | ||
return typeof from === 'object' | ||
? Object.keys(from).reduce(function(acc, key) { | ||
acc[key] = fromTo(from[key], to[key]); | ||
}, {}) | ||
: (cb || def)(from, to, k) | ||
}; | ||
instance.convert(fn); | ||
} | ||
} | ||
function Chain(tweens) { | ||
var self = this; | ||
var evts = { start: [], stop: [], step: [], update: [], complete: [] }; | ||
self.current = 0; | ||
self.tweens = tweens; | ||
self.on = function(evt, cb) { | ||
evts[evt].push(cb); | ||
return this | ||
}; | ||
self.start = function() { | ||
self.stop(); | ||
tweens[0].start(); | ||
}; | ||
self.stop = function() { | ||
tweens[self.current].stop(); | ||
}; | ||
self.play = function() { | ||
tweens[self.current].play(); | ||
}; | ||
self.pause = function() { | ||
tweens[self.current].pause(); | ||
}; | ||
tweens[0].on('start', function() { | ||
evts.start.forEach(function(cb) { | ||
cb(); | ||
}); | ||
}); | ||
tweens[tweens.length - 1].on('complete', function() { | ||
evts.complete.forEach(function(cb) { | ||
cb(); | ||
}); | ||
}); | ||
tweens.forEach(function(tween, index) { | ||
tween | ||
.on('start', function() { | ||
self.current = index; | ||
}) | ||
.on('stop', function() { | ||
self.current = 0; | ||
evts.stop.forEach(function(cb) { | ||
cb(); | ||
}); | ||
}) | ||
.on('play', function(meta) { | ||
evts.play.forEach(function(cb) { | ||
cb(meta, index); | ||
}); | ||
}) | ||
.on('pause', function(meta) { | ||
evts.pause.forEach(function(cb) { | ||
cb(meta, index); | ||
}); | ||
}) | ||
.on('update', function(meta) { | ||
evts.update.forEach(function(cb) { | ||
cb(meta, index); | ||
}); | ||
}) | ||
.on('complete', function() { | ||
if (index !== tweens.length - 1) { | ||
tweens[index + 1].start(); | ||
evts.step.forEach(function(cb) { | ||
cb(index); | ||
}); | ||
} | ||
}); | ||
}); | ||
} | ||
function Group(tweens) { | ||
var self = this; | ||
Object.keys(tweens[0]).forEach(function(method) { | ||
if (typeof tweens[0][method] !== 'function') return | ||
self[method] = function() { | ||
var args = arguments; | ||
tweens.forEach(function(tween) { | ||
tween[method].apply(tween, args); | ||
}); | ||
return self | ||
}; | ||
}); | ||
self.tweens = tweens; | ||
} | ||
exports.yoyo = yoyo; | ||
exports.fromTo = fromTo; | ||
exports.Chain = Chain; | ||
exports.Group = Group; | ||
return exports; | ||
}({})); | ||
var ntHelpers=function(n){return n.yoyo=function(n){return n.on("step",function(){n.reverse().set(0),n.bus.emit("yoyo",n.state.reversed)}),n},n.fromTo=function n(t,o,c){return function(u){u.convert(function(u){return"object"==typeof t?Object.keys(t).reduce(function(c,u){c[u]=n(t[u],o[u])},{}):(c||function(n,t,o){return n+(t-n)*o})(t,o,u)})}},n.Chain=function(n){var t=this,o={start:[],stop:[],step:[],update:[],complete:[]};t.current=0,t.tweens=n,t.on=function(n,t){return o[n].push(t),this},t.start=function(){t.stop(),n[0].start()},t.stop=function(){n[t.current].stop()},t.play=function(){n[t.current].play()},t.pause=function(){n[t.current].pause()},n[0].on("start",function(){o.start.forEach(function(n){n()})}),n[n.length-1].on("complete",function(){o.complete.forEach(function(n){n()})}),n.forEach(function(c,u){c.on("start",function(){t.current=u}).on("stop",function(){t.current=0,o.stop.forEach(function(n){n()})}).on("play",function(n){o.play.forEach(function(t){t(n,u)})}).on("pause",function(n){o.pause.forEach(function(t){t(n,u)})}).on("update",function(n){o.update.forEach(function(t){t(n,u)})}).on("complete",function(){u!==n.length-1&&(n[u+1].start(),o.step.forEach(function(n){n(u)}))})})},n.Group=function(n){var t=this;Object.keys(n[0]).forEach(function(o){"function"==typeof n[0][o]&&(t[o]=function(){var c=arguments;return n.forEach(function(n){n[o].apply(n,c)}),t})}),t.tweens=n},n}({}); |
{ | ||
"name": "nanotween", | ||
"version": "0.4.8", | ||
"version": "0.4.9", | ||
"description": "Tiny library for tweening", | ||
@@ -5,0 +5,0 @@ "main": "index.js", |
23733
519