New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

gyrejs

Package Overview
Dependencies
Maintainers
1
Versions
36
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

gyrejs - npm Package Compare versions

Comparing version

to
0.0.11

lib/middleWare/dispatchLogger.js

204

dist/gyrejs.js
(function webpackUniversalModuleDefinition(root, factory) {
if(typeof exports === 'object' && typeof module === 'object')
module.exports = factory(require("Immutable"), require("React"));
module.exports = factory(require("Immutable"));
else if(typeof define === 'function' && define.amd)
define(["Immutable", "React"], factory);
define(["Immutable"], factory);
else if(typeof exports === 'object')
exports["GyreJS"] = factory(require("Immutable"), require("React"));
exports["GyreJS"] = factory(require("Immutable"));
else
root["GyreJS"] = factory(root["Immutable"], root["React"]);
})(this, function(__WEBPACK_EXTERNAL_MODULE_6__, __WEBPACK_EXTERNAL_MODULE_7__) {
root["GyreJS"] = factory(root["Immutable"]);
})(this, function(__WEBPACK_EXTERNAL_MODULE_7__) {
return /******/ (function(modules) { // webpackBootstrap

@@ -66,3 +66,3 @@ /******/ // The module cache

var _store = __webpack_require__(5);
var _store = __webpack_require__(6);

@@ -75,5 +75,48 @@ var _store2 = _interopRequireDefault(_store);

exports.Store = _store2["default"];
exports.LocalFactory = _gyresLocalLocalFactory2["default"];
// Middleware
var _middleWareDispatchLogger = __webpack_require__(5);
var _middleWareDispatchLogger2 = _interopRequireDefault(_middleWareDispatchLogger);
var middleWare = {
dispatchLogger: _middleWareDispatchLogger2["default"]
};
// Private variables
var gyres = new Map();
var store = _store2["default"]();
// Public functions
/**
* createGyre()
*
* @param {String} id Id of a registered gyre.
* @returns {Object} Gyre instance.
*/
var createGyre = function createGyre(id) {
if (!gyres.has(id)) {
console.warn("GyreJS: Gyre '" + id + "' not registered.");
}
return gyres.get(id)(store);
};
/**
* registerGyreFactory()
*
* @param {String} id Id of to register gyre.
* @param {Function} factory Gyre factory function.
* @returns {void}
*/
var registerGyreFactory = function registerGyreFactory(id, factory) {
gyres.set(id, factory);
};
// Register standard gyres
registerGyreFactory("local", _gyresLocalLocalFactory2["default"]);
exports.createGyre = createGyre;
exports.middleWare = middleWare;
exports.registerGyreFactory = registerGyreFactory;
/***/ },

@@ -86,6 +129,5 @@ /* 1 */

*
* @param {Object} store instance
* @param {String} nameSpace state key
* @param {Boolean} [debugMode] Whether to enable debugging
* @returns {{addAction: Function, dispatch: Function}} API
* @param {Object} store instance.
* @param {String} nameSpace state key.
* @returns {{addAction: Function, dispatch: Function}} API.
*/

@@ -95,6 +137,6 @@ "use strict";

exports.__esModule = true;
var localAH = function localAH(store, nameSpace, debugMode) {
var localAH = function localAH(store, nameSpace) {
// Private variables
var actionMap = new Map();
var stateHistory = [];
var middleWare = [];

@@ -105,4 +147,4 @@ // Public functions

*
* @param {String} id Action ID
* @param {Function} func Reducer function
* @param {String} id Action ID.
* @param {Function} func Reducer function.
* @returns {void}

@@ -112,7 +154,3 @@ */

return actionMap.set(id, function (args) {
var newState = store.updateState(nameSpace, func, args, id);
if (debugMode) {
stateHistory.push(newState);
console.log(">> GyreJS-'" + nameSpace + "'-store: Applying action '" + id + "'", args, func);
}
store.updateState(nameSpace, func, args, id);
});

@@ -122,6 +160,18 @@ };

/**
* addActions()
*
* @param {Object} actions Key/func object of actions.
* @returns {void}
*/
var addActions = function addActions(actions) {
Object.keys(actions).forEach(function (action) {
addAction(action, actions[action]);
});
};
/**
* dispatch()
*
* @param {String} id Id
* @param {Array} args Function arguments
* @param {Array} args Function arguments.
* @returns {void}

@@ -135,5 +185,11 @@ */

if (actionMap.has(id)) {
actionMap.get(id)(args);
middleWare.reduce(function (prev, next) {
return function () {
return next(nameSpace, id, args, prev);
};
}, function () {
return actionMap.get(id)(args);
})();
} else {
console.warn("GyreJS-AH: Unregistered action requested: '" + id + "' with arguments:", args);
console.warn("GyreJS-'" + nameSpace + "'-AH: Unregistered action requested: '" + id + "' with arguments:", args);
}

@@ -143,8 +199,9 @@ };

/**
* getStateList() returns the state list.
* use()
*
* @returns {Array} Full state history
* @param {Function} mware Middleware function.
* @returns {void}
*/
var getStateHistory = function getStateHistory() {
return stateHistory;
var use = function use(mware) {
middleWare.unshift(mware);
};

@@ -155,4 +212,5 @@

addAction: addAction,
addActions: addActions,
dispatch: dispatch,
getStateHistory: getStateHistory
use: use
};

@@ -182,2 +240,4 @@ };

// React components
var _localReactHoC = __webpack_require__(3);

@@ -188,3 +248,3 @@

/**
* localFactory()
* * localFactory()
*

@@ -194,3 +254,3 @@ * @param {Object} store Store instance

* @param {Boolean} [debugMode] Debug mode switch
* @returns {{AH: *, getHoC: Function, getReducer: Function}} API
* @returns {{addAction: Function, dispatch: Function, getHoC: Function, getStateHistory: Function, setState: Function}} API
*/

@@ -201,2 +261,3 @@ var localFactory = function localFactory(store, NS) {

var nameSpace = NS || "local";
var AH = _localAH2["default"](store, nameSpace, debugMode);

@@ -216,11 +277,2 @@ // Public functions

/**
* Getter for ReactJS HoC
*
* @returns {Function} HoC Factory
*/
var getHoC = function getHoC() {
return _localReactHoC2["default"](getReducer);
};
/**
* setState()

@@ -237,6 +289,9 @@ *

return {
AH: _localAH2["default"](store, nameSpace, debugMode),
getHoC: getHoC,
addAction: AH.addAction,
addActions: AH.addActions,
dispatch: AH.dispatch,
getReducer: getReducer,
setState: setState
reactHoC: _localReactHoC2["default"],
setState: setState,
use: AH.use
};

@@ -250,4 +305,11 @@ };

/* 3 */
/***/ function(module, exports, __webpack_require__) {
/***/ function(module, exports) {
/**
* Higher order Component factory for local gyre.
*
* @param {Object} React Current react instance
* @param {Function} reducer Reducer factory
* @returns {Function} HoC Factory
*/
"use strict";

@@ -259,15 +321,3 @@

function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
var _react = __webpack_require__(7);
var _react2 = _interopRequireDefault(_react);
/**
* Higher order Component factory for local gyre.
*
* @param {Function} reducer Reducer factory
* @returns {Function} HoC Factory
*/
var localHoCFactory = function localHoCFactory(reducer) {
var localHoCFactory = function localHoCFactory(React, reducer) {
/**

@@ -282,3 +332,3 @@ * localHoC()

return function (matcher, DefaultComponent, initialData) {
return _react2["default"].createClass({
return React.createClass({
displayName: "GyreJS-localHoC",

@@ -303,5 +353,3 @@ getInitialState: function getInitialState() {

render: function render() {
// Render wrapped component with current props and state as props.
var Component = this.state ? DefaultComponent : null;
return Component ? _react2["default"].createElement(Component, _extends({}, this.props, this.state)) : false;
return this.state ? React.createElement(DefaultComponent, _extends({}, this.props, this.state)) : false;
}

@@ -356,2 +404,26 @@ });

/* 5 */
/***/ function(module, exports) {
/**
* dispatchLogger()
*
* @param {String} nameSpace Gyre namespace.
* @param {String} id Action Id.
* @param {Array} args Action arguments array.
* @param {Function} next Call next function in chain.
* @returns {void}
*/
"use strict";
exports.__esModule = true;
var dispatchLogger = function dispatchLogger(nameSpace, id, args, next) {
console.log(">> GyreJS-'" + nameSpace + "'-store: Applying action '" + id + "' with arguments: ", args);
next();
};
exports["default"] = dispatchLogger;
module.exports = exports["default"];
/***/ },
/* 6 */
/***/ function(module, exports, __webpack_require__) {

@@ -365,3 +437,3 @@

var _immutable = __webpack_require__(6);
var _immutable = __webpack_require__(7);

@@ -392,3 +464,3 @@ var _immutable2 = _interopRequireDefault(_immutable);

return reducerMap.forEach(function (reducer) {
reducer(state);
return reducer(state);
});

@@ -492,8 +564,2 @@ };

/***/ },
/* 6 */
/***/ function(module, exports) {
module.exports = __WEBPACK_EXTERNAL_MODULE_6__;
/***/ },
/* 7 */

@@ -500,0 +566,0 @@ /***/ function(module, exports) {

@@ -1,1 +0,1 @@

!function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e(require("Immutable"),require("React")):"function"==typeof define&&define.amd?define(["Immutable","React"],e):"object"==typeof exports?exports.GyreJS=e(require("Immutable"),require("React")):t.GyreJS=e(t.Immutable,t.React)}(this,function(t,e){return function(t){function e(r){if(n[r])return n[r].exports;var u=n[r]={exports:{},id:r,loaded:!1};return t[r].call(u.exports,u,u.exports,e),u.loaded=!0,u.exports}var n={};return e.m=t,e.c=n,e.p="",e(0)}([function(t,e,n){"use strict";function r(t){return t&&t.__esModule?t:{"default":t}}e.__esModule=!0;var u=n(5),o=r(u),a=n(2),i=r(a);e.Store=o.default,e.LocalFactory=i.default},function(t,e){"use strict";e.__esModule=!0;var n=function(t,e,n){var r=new Map,u=[],o=function(o,a){return r.set(o,function(r){var i=t.updateState(e,a,r,o);n&&(u.push(i),console.log(">> GyreJS-'"+e+"'-store: Applying action '"+o+"'",r,a))})},a=function(t){for(var e=arguments.length,n=Array(e>1?e-1:0),u=1;e>u;u++)n[u-1]=arguments[u];r.has(t)?r.get(t)(n):console.warn("GyreJS-AH: Unregistered action requested: '"+t+"' with arguments:",n)},i=function(){return u};return{addAction:o,dispatch:a,getStateHistory:i}};e.default=n,t.exports=e.default},function(t,e,n){"use strict";function r(t){return t&&t.__esModule?t:{"default":t}}e.__esModule=!0;var u=n(1),o=r(u),a=n(4),i=r(a),c=n(3),s=r(c),f=function(t,e){var n=arguments.length<=2||void 0===arguments[2]?!1:arguments[2],r=e||"local",u=function(e,u){return i.default(t,e,u,r,n)},a=function(){return s.default(u)},c=function(e){return t.setState(e,r)};return{AH:o.default(t,r,n),getHoC:a,getReducer:u,setState:c}};e.default=f,t.exports=e.default},function(t,e,n){"use strict";function r(t){return t&&t.__esModule?t:{"default":t}}e.__esModule=!0;var u=Object.assign||function(t){for(var e=1;e<arguments.length;e++){var n=arguments[e];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(t[r]=n[r])}return t},o=n(7),a=r(o),i=function(t){return function(e,n,r){return a.default.createClass({displayName:"GyreJS-localHoC",getInitialState:function(){return r||null},componentWillMount:function(){this.unRegisterReducer=t(e,this.handleNewData)},componentWillUnmount:function(){this.unRegisterReducer()},shouldComponentUpdate:function(t){return this.state!==t},handleNewData:function(t){this.setState({data:t})},render:function(){var t=this.state?n:null;return t?a.default.createElement(t,u({},this.props,this.state)):!1}})}};e.default=i,t.exports=e.default},function(t,e){"use strict";e.__esModule=!0;var n=function(t,e,n,r){var u=function(t){var u=r?t.get(r):t,o=Array.isArray(e)?e:[e];n(u?o.reduce(function(t,e){return t[e]=u.get(e),t},{}):void 0)};return t.addReducer(u)};e.default=n,t.exports=e.default},function(t,e,n){"use strict";function r(t){return t&&t.__esModule?t:{"default":t}}e.__esModule=!0;var u=n(6),o=r(u),a=o.default.Map,i=function(){var t=a({}),e=0,n=new Map,r=function(){return n.forEach(function(e){e(t)})},u=function(t){return function(){return n.delete(t)}},o=function(e,n){var u=a.isMap(e)?e:a(e);return t=n?t.set(n,u):u,r(),t},i=function(r){var o=e++;return n.set(o,r),r(t),u(o)},c=function(){return t},s=function(t,e){return o(t,e)},f=function(e,n,r){return o(n.apply(void 0,[t.get(e)||a({})].concat(r)),e),t};return{addReducer:i,getState:c,setState:s,updateState:f}};e.default=i,t.exports=e.default},function(e,n){e.exports=t},function(t,n){t.exports=e}])});
!function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e(require("Immutable")):"function"==typeof define&&define.amd?define(["Immutable"],e):"object"==typeof exports?exports.GyreJS=e(require("Immutable")):t.GyreJS=e(t.Immutable)}(this,function(t){return function(t){function e(r){if(n[r])return n[r].exports;var u=n[r]={exports:{},id:r,loaded:!1};return t[r].call(u.exports,u,u.exports,e),u.loaded=!0,u.exports}var n={};return e.m=t,e.c=n,e.p="",e(0)}([function(t,e,n){"use strict";function r(t){return t&&t.__esModule?t:{"default":t}}e.__esModule=!0;var u=n(6),o=r(u),a=n(2),i=r(a),c=n(5),s=r(c),f={dispatchLogger:s.default},d=new Map,l=o.default(),p=function(t){return d.has(t)||console.warn("GyreJS: Gyre '"+t+"' not registered."),d.get(t)(l)},g=function(t,e){d.set(t,e)};g("local",i.default),e.createGyre=p,e.middleWare=f,e.registerGyreFactory=g},function(t,e){"use strict";e.__esModule=!0;var n=function(t,e){var n=new Map,r=[],u=function(r,u){return n.set(r,function(n){t.updateState(e,u,n,r)})},o=function(t){Object.keys(t).forEach(function(e){u(e,t[e])})},a=function(t){for(var u=arguments.length,o=Array(u>1?u-1:0),a=1;u>a;a++)o[a-1]=arguments[a];n.has(t)?r.reduce(function(n,r){return function(){return r(e,t,o,n)}},function(){return n.get(t)(o)})():console.warn("GyreJS-'"+e+"'-AH: Unregistered action requested: '"+t+"' with arguments:",o)},i=function(t){r.unshift(t)};return{addAction:u,addActions:o,dispatch:a,use:i}};e.default=n,t.exports=e.default},function(t,e,n){"use strict";function r(t){return t&&t.__esModule?t:{"default":t}}e.__esModule=!0;var u=n(1),o=r(u),a=n(4),i=r(a),c=n(3),s=r(c),f=function(t,e){var n=arguments.length<=2||void 0===arguments[2]?!1:arguments[2],r=e||"local",u=o.default(t,r,n),a=function(e,u){return i.default(t,e,u,r,n)},c=function(e){return t.setState(e,r)};return{addAction:u.addAction,addActions:u.addActions,dispatch:u.dispatch,getReducer:a,reactHoC:s.default,setState:c,use:u.use}};e.default=f,t.exports=e.default},function(t,e){"use strict";e.__esModule=!0;var n=Object.assign||function(t){for(var e=1;e<arguments.length;e++){var n=arguments[e];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(t[r]=n[r])}return t},r=function(t,e){return function(r,u,o){return t.createClass({displayName:"GyreJS-localHoC",getInitialState:function(){return o||null},componentWillMount:function(){this.unRegisterReducer=e(r,this.handleNewData)},componentWillUnmount:function(){this.unRegisterReducer()},shouldComponentUpdate:function(t){return this.state!==t},handleNewData:function(t){this.setState({data:t})},render:function(){return this.state?t.createElement(u,n({},this.props,this.state)):!1}})}};e.default=r,t.exports=e.default},function(t,e){"use strict";e.__esModule=!0;var n=function(t,e,n,r){var u=function(t){var u=r?t.get(r):t,o=Array.isArray(e)?e:[e];n(u?o.reduce(function(t,e){return t[e]=u.get(e),t},{}):void 0)};return t.addReducer(u)};e.default=n,t.exports=e.default},function(t,e){"use strict";e.__esModule=!0;var n=function(t,e,n,r){console.log(">> GyreJS-'"+t+"'-store: Applying action '"+e+"' with arguments: ",n),r()};e.default=n,t.exports=e.default},function(t,e,n){"use strict";function r(t){return t&&t.__esModule?t:{"default":t}}e.__esModule=!0;var u=n(7),o=r(u),a=o.default.Map,i=function(){var t=a({}),e=0,n=new Map,r=function(){return n.forEach(function(e){return e(t)})},u=function(t){return function(){return n.delete(t)}},o=function(e,n){var u=a.isMap(e)?e:a(e);return t=n?t.set(n,u):u,r(),t},i=function(r){var o=e++;return n.set(o,r),r(t),u(o)},c=function(){return t},s=function(t,e){return o(t,e)},f=function(e,n,r){return o(n.apply(void 0,[t.get(e)||a({})].concat(r)),e),t};return{addReducer:i,getState:c,setState:s,updateState:f}};e.default=i,t.exports=e.default},function(e,n){e.exports=t}])});
/**
* localAH()
*
* @param {Object} store instance
* @param {String} nameSpace state key
* @param {Boolean} [debugMode] Whether to enable debugging
* @returns {{addAction: Function, dispatch: Function}} API
* @param {Object} store instance.
* @param {String} nameSpace state key.
* @returns {{addAction: Function, dispatch: Function}} API.
*/

@@ -12,6 +11,6 @@ "use strict";

exports.__esModule = true;
var localAH = function localAH(store, nameSpace, debugMode) {
var localAH = function localAH(store, nameSpace) {
// Private variables
var actionMap = new Map();
var stateHistory = [];
var middleWare = [];

@@ -22,4 +21,4 @@ // Public functions

*
* @param {String} id Action ID
* @param {Function} func Reducer function
* @param {String} id Action ID.
* @param {Function} func Reducer function.
* @returns {void}

@@ -29,7 +28,3 @@ */

return actionMap.set(id, function (args) {
var newState = store.updateState(nameSpace, func, args, id);
if (debugMode) {
stateHistory.push(newState);
console.log(">> GyreJS-'" + nameSpace + "'-store: Applying action '" + id + "'", args, func);
}
store.updateState(nameSpace, func, args, id);
});

@@ -39,6 +34,18 @@ };

/**
* addActions()
*
* @param {Object} actions Key/func object of actions.
* @returns {void}
*/
var addActions = function addActions(actions) {
Object.keys(actions).forEach(function (action) {
addAction(action, actions[action]);
});
};
/**
* dispatch()
*
* @param {String} id Id
* @param {Array} args Function arguments
* @param {Array} args Function arguments.
* @returns {void}

@@ -52,5 +59,11 @@ */

if (actionMap.has(id)) {
actionMap.get(id)(args);
middleWare.reduce(function (prev, next) {
return function () {
return next(nameSpace, id, args, prev);
};
}, function () {
return actionMap.get(id)(args);
})();
} else {
console.warn("GyreJS-AH: Unregistered action requested: '" + id + "' with arguments:", args);
console.warn("GyreJS-'" + nameSpace + "'-AH: Unregistered action requested: '" + id + "' with arguments:", args);
}

@@ -60,8 +73,9 @@ };

/**
* getStateList() returns the state list.
* use()
*
* @returns {Array} Full state history
* @param {Function} mware Middleware function.
* @returns {void}
*/
var getStateHistory = function getStateHistory() {
return stateHistory;
var use = function use(mware) {
middleWare.unshift(mware);
};

@@ -72,4 +86,5 @@

addAction: addAction,
addActions: addActions,
dispatch: dispatch,
getStateHistory: getStateHistory
use: use
};

@@ -76,0 +91,0 @@ };

@@ -15,2 +15,4 @@ "use strict";

// React components
var _localReactHoC = require("./localReactHoC");

@@ -21,3 +23,3 @@

/**
* localFactory()
* * localFactory()
*

@@ -27,3 +29,3 @@ * @param {Object} store Store instance

* @param {Boolean} [debugMode] Debug mode switch
* @returns {{AH: *, getHoC: Function, getReducer: Function}} API
* @returns {{addAction: Function, dispatch: Function, getHoC: Function, getStateHistory: Function, setState: Function}} API
*/

@@ -34,2 +36,3 @@ var localFactory = function localFactory(store, NS) {

var nameSpace = NS || "local";
var AH = _localAH2["default"](store, nameSpace, debugMode);

@@ -49,11 +52,2 @@ // Public functions

/**
* Getter for ReactJS HoC
*
* @returns {Function} HoC Factory
*/
var getHoC = function getHoC() {
return _localReactHoC2["default"](getReducer);
};
/**
* setState()

@@ -70,6 +64,9 @@ *

return {
AH: _localAH2["default"](store, nameSpace, debugMode),
getHoC: getHoC,
addAction: AH.addAction,
addActions: AH.addActions,
dispatch: AH.dispatch,
getReducer: getReducer,
setState: setState
reactHoC: _localReactHoC2["default"],
setState: setState,
use: AH.use
};

@@ -76,0 +73,0 @@ };

@@ -0,1 +1,8 @@

/**
* Higher order Component factory for local gyre.
*
* @param {Object} React Current react instance
* @param {Function} reducer Reducer factory
* @returns {Function} HoC Factory
*/
"use strict";

@@ -7,15 +14,3 @@

function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
var _react = require("react");
var _react2 = _interopRequireDefault(_react);
/**
* Higher order Component factory for local gyre.
*
* @param {Function} reducer Reducer factory
* @returns {Function} HoC Factory
*/
var localHoCFactory = function localHoCFactory(reducer) {
var localHoCFactory = function localHoCFactory(React, reducer) {
/**

@@ -30,3 +25,3 @@ * localHoC()

return function (matcher, DefaultComponent, initialData) {
return _react2["default"].createClass({
return React.createClass({
displayName: "GyreJS-localHoC",

@@ -51,5 +46,3 @@ getInitialState: function getInitialState() {

render: function render() {
// Render wrapped component with current props and state as props.
var Component = this.state ? DefaultComponent : null;
return Component ? _react2["default"].createElement(Component, _extends({}, this.props, this.state)) : false;
return this.state ? React.createElement(DefaultComponent, _extends({}, this.props, this.state)) : false;
}

@@ -56,0 +49,0 @@ });

@@ -18,3 +18,46 @@ /**

exports.Store = _store2["default"];
exports.LocalFactory = _gyresLocalLocalFactory2["default"];
// Middleware
var _middleWareDispatchLogger = require("./middleWare/dispatchLogger");
var _middleWareDispatchLogger2 = _interopRequireDefault(_middleWareDispatchLogger);
var middleWare = {
dispatchLogger: _middleWareDispatchLogger2["default"]
};
// Private variables
var gyres = new Map();
var store = _store2["default"]();
// Public functions
/**
* createGyre()
*
* @param {String} id Id of a registered gyre.
* @returns {Object} Gyre instance.
*/
var createGyre = function createGyre(id) {
if (!gyres.has(id)) {
console.warn("GyreJS: Gyre '" + id + "' not registered.");
}
return gyres.get(id)(store);
};
/**
* registerGyreFactory()
*
* @param {String} id Id of to register gyre.
* @param {Function} factory Gyre factory function.
* @returns {void}
*/
var registerGyreFactory = function registerGyreFactory(id, factory) {
gyres.set(id, factory);
};
// Register standard gyres
registerGyreFactory("local", _gyresLocalLocalFactory2["default"]);
exports.createGyre = createGyre;
exports.middleWare = middleWare;
exports.registerGyreFactory = registerGyreFactory;

@@ -33,3 +33,3 @@ "use strict";

return reducerMap.forEach(function (reducer) {
reducer(state);
return reducer(state);
});

@@ -36,0 +36,0 @@ };

{
"name": "gyrejs",
"version": "0.0.10",
"version": "0.0.11",
"description": "Experimental data fetching and state library geared towards ReactJS",

@@ -20,3 +20,4 @@ "main": "lib/gyrejs-min.js",

"prepublish": "npm run clean && npm run build",
"watch": "watch 'npm run check' src tests"
"watch": "watch 'npm run check' src tests",
"watch:build": "watch 'npm run build' src"
},

@@ -23,0 +24,0 @@ "repository": {

/**
* localAH()
*
* @param {Object} store instance
* @param {String} nameSpace state key
* @param {Boolean} [debugMode] Whether to enable debugging
* @returns {{addAction: Function, dispatch: Function}} API
* @param {Object} store instance.
* @param {String} nameSpace state key.
* @returns {{addAction: Function, dispatch: Function}} API.
*/
const localAH = (store, nameSpace, debugMode) => {
const localAH = (store, nameSpace) => {
// Private variables
const actionMap = new Map();
const stateHistory = [];
const middleWare = [];

@@ -18,4 +17,4 @@ // Public functions

*
* @param {String} id Action ID
* @param {Function} func Reducer function
* @param {String} id Action ID.
* @param {Function} func Reducer function.
* @returns {void}

@@ -25,14 +24,22 @@ */

actionMap.set(id, (args) => {
const newState = store.updateState(nameSpace, func, args, id);
if (debugMode) {
stateHistory.push(newState);
console.log(`>> GyreJS-'${nameSpace}'-store: Applying action '${id}'`, args, func);
}
store.updateState(nameSpace, func, args, id);
});
/**
* addActions()
*
* @param {Object} actions Key/func object of actions.
* @returns {void}
*/
const addActions = (actions) => {
Object.keys(actions).forEach(action => {
addAction(action, actions[action]);
});
};
/**
* dispatch()
*
* @param {String} id Id
* @param {Array} args Function arguments
* @param {Array} args Function arguments.
* @returns {void}

@@ -42,6 +49,8 @@ */

if (actionMap.has(id)) {
actionMap.get(id)(args);
middleWare.reduce((prev, next) =>
() => next(nameSpace, id, args, prev),
() => actionMap.get(id)(args))();
}
else {
console.warn(`GyreJS-AH: Unregistered action requested: '${id}' with arguments:`, args);
console.warn(`GyreJS-'${nameSpace}'-AH: Unregistered action requested: '${id}' with arguments:`, args);
}

@@ -51,7 +60,10 @@ };

/**
* getStateList() returns the state list.
* use()
*
* @returns {Array} Full state history
* @param {Function} mware Middleware function.
* @returns {void}
*/
const getStateHistory = () => stateHistory;
const use = (mware) => {
middleWare.unshift(mware);
};

@@ -61,4 +73,5 @@ // API

addAction,
addActions,
dispatch,
getStateHistory
use
};

@@ -65,0 +78,0 @@ };

import LocalAH from "./localAH";
import LocalReducer from "./localReducer";
import LocalReactHoC from "./localReactHoC";
// React components
import reactHoC from "./localReactHoC";
/**
* localFactory()
* * localFactory()
*

@@ -11,6 +13,7 @@ * @param {Object} store Store instance

* @param {Boolean} [debugMode] Debug mode switch
* @returns {{AH: *, getHoC: Function, getReducer: Function}} API
* @returns {{addAction: Function, dispatch: Function, getHoC: Function, getStateHistory: Function, setState: Function}} API
*/
const localFactory = (store, NS, debugMode = false) => {
const nameSpace = NS || "local";
const AH = LocalAH(store, nameSpace, debugMode);

@@ -29,10 +32,2 @@ // Public functions

/**
* Getter for ReactJS HoC
*
* @returns {Function} HoC Factory
*/
const getHoC = () =>
LocalReactHoC(getReducer);
/**
* setState()

@@ -48,6 +43,9 @@ *

return {
AH: LocalAH(store, nameSpace, debugMode),
getHoC,
addAction: AH.addAction,
addActions: AH.addActions,
dispatch: AH.dispatch,
getReducer,
setState
reactHoC,
setState,
use: AH.use
};

@@ -54,0 +52,0 @@ };

@@ -1,10 +0,9 @@

import React from "react";
/**
* Higher order Component factory for local gyre.
*
* @param {Object} React Current react instance
* @param {Function} reducer Reducer factory
* @returns {Function} HoC Factory
*/
const localHoCFactory = (reducer) => {
const localHoCFactory = (React, reducer) => {
/**

@@ -39,5 +38,3 @@ * localHoC()

render() {
// Render wrapped component with current props and state as props.
const Component = (this.state) ? DefaultComponent : null;
return Component ? <Component {...this.props} {...this.state}/> : false;
return this.state ? <DefaultComponent {...this.props} {...this.state}/> : false;
}

@@ -44,0 +41,0 @@ });

@@ -5,7 +5,46 @@ /**

import Store from "./store";
import LocalFactory from "./gyres/local/localFactory";
import LocalGyreFactory from "./gyres/local/localFactory";
// Middleware
import dispatchLogger from "./middleWare/dispatchLogger";
const middleWare = {
dispatchLogger
};
// Private variables
const gyres = new Map();
const store = Store();
// Public functions
/**
* createGyre()
*
* @param {String} id Id of a registered gyre.
* @returns {Object} Gyre instance.
*/
const createGyre = (id) => {
if (!gyres.has(id)) {
console.warn(`GyreJS: Gyre '${id}' not registered.`);
}
return gyres.get(id)(store);
};
/**
* registerGyreFactory()
*
* @param {String} id Id of to register gyre.
* @param {Function} factory Gyre factory function.
* @returns {void}
*/
const registerGyreFactory = (id, factory) => {
gyres.set(id, factory);
};
// Register standard gyres
registerGyreFactory("local", LocalGyreFactory);
export {
Store,
LocalFactory
createGyre,
middleWare,
registerGyreFactory
};

@@ -23,5 +23,3 @@ import Immutable from "immutable";

const sendUpdate = () =>
reducerMap.forEach((reducer) => {
reducer(state);
});
reducerMap.forEach(reducer => reducer(state));

@@ -28,0 +26,0 @@ /**

Sorry, the diff of this file is not supported yet