cycle-animation-driver
Advanced tools
Comparing version
@@ -18,15 +18,14 @@ 'use strict'; | ||
function makeAnimationDriver() { | ||
return function animationDriver() { | ||
var animation$ = new _rx2.default.Subject(); | ||
return function animationDriver(sink$, streamAdapter) { | ||
var _streamAdapter$makeSu = streamAdapter.makeSubject(); | ||
var observer = _streamAdapter$makeSu.observer; | ||
var stream = _streamAdapter$makeSu.stream; | ||
var previousTime = (0, _performanceNow2.default)(); | ||
var frameHandle = undefined; | ||
var frameHandle = void 0; | ||
function tick(timestamp) { | ||
if (animation$.isDisposed) { | ||
_raf2.default.cancel(frameHandle); | ||
return; | ||
} | ||
animation$.onNext({ | ||
observer.next({ | ||
timestamp: timestamp, | ||
@@ -43,3 +42,11 @@ delta: timestamp - previousTime | ||
return animation$; | ||
stream.interval = function (period) { | ||
return _rx2.default.Observable.interval(period); | ||
}; | ||
stream.dispose = function () { | ||
_raf2.default.cancel(frameHandle); | ||
}; | ||
return stream; | ||
}; | ||
@@ -46,0 +53,0 @@ } |
{ | ||
"name": "cycle-animation-driver", | ||
"version": "0.1.4", | ||
"version": "0.3.0", | ||
"description": "A Cycle driver for requestAnimationFrame", | ||
@@ -34,2 +34,3 @@ "main": "lib/driver.js", | ||
"devDependencies": { | ||
"@cycle/rx-adapter": "^3.0.0", | ||
"babel-cli": "^6.3.15", | ||
@@ -36,0 +37,0 @@ "babel-core": "^6.1.21", |
5243
43.68%5
66.67%35
12.9%7
16.67%