cycle-grid-driver
Advanced tools
Comparing version 0.1.1 to 0.1.2
@@ -19,7 +19,10 @@ 'use strict'; | ||
function Grid() { | ||
var _this = this; | ||
this.main$$ = _xstream2.default.create({ | ||
var pushToGrid = function pushToGrid() {}; | ||
var registeredStreams = {}; | ||
var mainStreamHistory = []; | ||
var main$$ = _xstream2.default.create({ | ||
start: function start(listener) { | ||
_this.pushToGrid = function (stream$) { | ||
pushToGrid = function pushToGrid(stream$) { | ||
listener.next(stream$); | ||
@@ -30,28 +33,25 @@ }; | ||
}); | ||
this.pushToGrid = function () {}; | ||
this.registeredStreams = {}; | ||
this.mainStreamHistory = []; | ||
var get = function get(id) { | ||
if (_this.registeredStreams[id]) return _this.registeredStreams[id]; | ||
if (registeredStreams[id]) return registeredStreams[id]; | ||
_this.registeredStreams[id] = _xstream2.default.create(); | ||
_this.registeredStreams[id].proxy = true; | ||
registeredStreams[id] = _xstream2.default.create(); | ||
registeredStreams[id].proxy = true; | ||
return _this.registeredStreams[id]; | ||
return registeredStreams[id]; | ||
}; | ||
var mainStream = function mainStream() { | ||
return (0, _concat2.default)(_xstream2.default.fromArray(_this.mainStreamHistory), _this.main$$); | ||
return (0, _concat2.default)(_xstream2.default.fromArray(mainStreamHistory), main$$); | ||
}; | ||
var registerStream = function registerStream(stream$) { | ||
if (_this.registeredStreams[stream$.as]) { | ||
if (!_this.registeredStreams[stream$.as].proxy) { | ||
if (registeredStreams[stream$.as]) { | ||
if (!registeredStreams[stream$.as].proxy) { | ||
throw new Error('stream with id ' + stream$.as + ' is already registered in grid'); | ||
} | ||
_this.registeredStreams[stream$.as].imitate(stream$); | ||
delete _this.registeredStreams[stream$.as].proxy; | ||
registeredStreams[stream$.as].imitate(stream$); | ||
delete registeredStreams[stream$.as].proxy; | ||
} else { | ||
_this.registeredStreams[stream$.as] = stream$; | ||
registeredStreams[stream$.as] = stream$; | ||
} | ||
@@ -63,4 +63,4 @@ | ||
var sendInMain$ = function sendInMain$(stream$) { | ||
_this.pushToGrid(stream$); | ||
_this.mainStreamHistory.push(stream$); | ||
pushToGrid(stream$); | ||
mainStreamHistory.push(stream$); | ||
}; | ||
@@ -67,0 +67,0 @@ |
@@ -72,5 +72,5 @@ 'use strict'; | ||
if (!grids[id]) grids[id] = new _grid.Grid(); | ||
if (!grids[id]) grids[id] = (0, _grid.Grid)(); | ||
return gridDriver.bind(gridDriver, grids[id]); | ||
} |
{ | ||
"name": "cycle-grid-driver", | ||
"version": "0.1.1", | ||
"version": "0.1.2", | ||
"description": "cycle.js grid driver", | ||
@@ -5,0 +5,0 @@ "main": "dist/index.js", |
@@ -7,3 +7,3 @@ [![NPM version][npm-image]][npm-url] [![Downloads][downloads-image]][npm-url] | ||
More info on the concept: (todo) | ||
More info on the concept: [Creating a Scalable JavaScript Application with Cycle.js](https://medium.com/@domagojk/creating-a-scalable-javascript-application-with-cycle-js-589f4d4020a5#.ucoin75ee) | ||
@@ -10,0 +10,0 @@ ``` |
@@ -6,5 +6,9 @@ import xs from 'xstream'; | ||
this.main$$ = xs.create({ | ||
let pushToGrid = () => { }; | ||
let registeredStreams = {}; | ||
let mainStreamHistory = []; | ||
const main$$ = xs.create({ | ||
start: listener => { | ||
this.pushToGrid = stream$ => { | ||
pushToGrid = stream$ => { | ||
listener.next(stream$) | ||
@@ -15,29 +19,26 @@ } | ||
}); | ||
this.pushToGrid = () => { }; | ||
this.registeredStreams = {}; | ||
this.mainStreamHistory = []; | ||
const get = (id) => { | ||
if (this.registeredStreams[id]) | ||
return this.registeredStreams[id]; | ||
if (registeredStreams[id]) | ||
return registeredStreams[id]; | ||
this.registeredStreams[id] = xs.create(); | ||
this.registeredStreams[id].proxy = true; | ||
registeredStreams[id] = xs.create(); | ||
registeredStreams[id].proxy = true; | ||
return this.registeredStreams[id]; | ||
return registeredStreams[id]; | ||
} | ||
const mainStream = () => { | ||
return concat(xs.fromArray(this.mainStreamHistory), this.main$$); | ||
return concat(xs.fromArray(mainStreamHistory), main$$); | ||
} | ||
const registerStream = (stream$) => { | ||
if (this.registeredStreams[stream$.as]) { | ||
if (!this.registeredStreams[stream$.as].proxy) { | ||
if (registeredStreams[stream$.as]) { | ||
if (!registeredStreams[stream$.as].proxy) { | ||
throw new Error('stream with id ' + stream$.as + ' is already registered in grid') | ||
} | ||
this.registeredStreams[stream$.as].imitate(stream$); | ||
delete this.registeredStreams[stream$.as].proxy; | ||
registeredStreams[stream$.as].imitate(stream$); | ||
delete registeredStreams[stream$.as].proxy; | ||
} else { | ||
this.registeredStreams[stream$.as] = stream$; | ||
registeredStreams[stream$.as] = stream$; | ||
} | ||
@@ -49,4 +50,4 @@ | ||
const sendInMain$ = (stream$) => { | ||
this.pushToGrid(stream$); | ||
this.mainStreamHistory.push(stream$); | ||
pushToGrid(stream$); | ||
mainStreamHistory.push(stream$); | ||
} | ||
@@ -53,0 +54,0 @@ |
@@ -41,5 +41,5 @@ import xs from 'xstream'; | ||
if (!grids[id]) | ||
grids[id] = new Grid(); | ||
grids[id] = Grid(); | ||
return gridDriver.bind(gridDriver, grids[id]); | ||
} |
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
Major refactor
Supply chain riskPackage has recently undergone a major refactor. It may be unstable or indicate significant internal changes. Use caution when updating to versions that include significant changes.
Found 1 instance in 1 package
0
23098
14
575