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.12

example.js

407

dist/gyrejs.js

@@ -10,3 +10,3 @@ (function webpackUniversalModuleDefinition(root, factory) {

root["GyreJS"] = factory(root["Immutable"]);
})(this, function(__WEBPACK_EXTERNAL_MODULE_7__) {
})(this, function(__WEBPACK_EXTERNAL_MODULE_12__) {
return /******/ (function(modules) { // webpackBootstrap

@@ -67,13 +67,17 @@ /******/ // The module cache

var _store = __webpack_require__(6);
var _store = __webpack_require__(11);
var _store2 = _interopRequireDefault(_store);
var _gyresLocalLocalFactory = __webpack_require__(2);
var _gyresLocalFactory = __webpack_require__(3);
var _gyresLocalLocalFactory2 = _interopRequireDefault(_gyresLocalLocalFactory);
var _gyresLocalFactory2 = _interopRequireDefault(_gyresLocalFactory);
var _gyresSimpleRestFactory = __webpack_require__(7);
var _gyresSimpleRestFactory2 = _interopRequireDefault(_gyresSimpleRestFactory);
// Middleware
var _middleWareDispatchLogger = __webpack_require__(5);
var _middleWareDispatchLogger = __webpack_require__(10);

@@ -89,2 +93,3 @@ var _middleWareDispatchLogger2 = _interopRequireDefault(_middleWareDispatchLogger);

var store = _store2["default"]();
var usedNameSpaces = [];

@@ -95,10 +100,15 @@ // Public functions

*
* @param {String} id Id of a registered gyre.
* @param {String} id Id of a registered gyre factory.
* @param {String} [nameSpace] Namespace of new gyre.
* @returns {Object} Gyre instance.
*/
var createGyre = function createGyre(id) {
var createGyre = function createGyre(id, nameSpace) {
if (!gyres.has(id)) {
console.warn("GyreJS: Gyre '" + id + "' not registered.");
console.warn("GyreJS: Gyre factory '" + id + "' not registered.");
}
return gyres.get(id)(store);
if (usedNameSpaces.indexOf(nameSpace) !== -1) {
throw new Error("GyreJS ('" + id + "'): A gyre using the namespace '" + nameSpace + "' not registered.");
}
usedNameSpaces.push(nameSpace);
return gyres.get(id)(store, nameSpace);
};

@@ -118,3 +128,4 @@

// Register standard gyres
registerGyreFactory("local", _gyresLocalLocalFactory2["default"]);
registerGyreFactory("local", _gyresLocalFactory2["default"]);
registerGyreFactory("simpleRest", _gyresSimpleRestFactory2["default"]);

@@ -127,2 +138,79 @@ exports.createGyre = createGyre;

/* 1 */
/***/ function(module, exports, __webpack_require__) {
"use strict";
exports.__esModule = true;
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
var _actionHandler = __webpack_require__(2);
var _actionHandler2 = _interopRequireDefault(_actionHandler);
/**
* gyreFactory()
*
* @param {String} defaultNS Default namespace name.
* @param {Function} Reducer Reducer factory.
* @param {Function} ReactHoC React HoC factory.
* @param {Object} [actions] Default actions object.
* @returns {Function} Gyre factory function.
*/
var gyreFactory = function gyreFactory(defaultNS, Reducer, ReactHoC, actions) {
return function (store, NS) {
var nameSpace = NS || defaultNS;
var AH = _actionHandler2["default"](store, nameSpace);
if (actions) {
AH.addActions(actions);
}
// Public functions
/**
* getReducer() Getter for reducer
*
* @param {String} matcher Matcher
* @param {Function} cb Callback
* @returns {Function} Reducer factory
*/
var getReducer = function getReducer(matcher, cb) {
return Reducer(store, matcher, cb, nameSpace);
};
/**
* setState()
*
* @param {Object|Immutable.Map} tState The state to set to this gyre.
* @returns {Immutable.Map} Current store state.
*/
var setState = function setState(tState) {
return store.setState(tState, nameSpace);
};
/**
* reactHoC()
*
* @param {Object} react React instance.
* @return {Function} HoC factory function.
*/
var reactHoC = ReactHoC(getReducer);
// API
return {
addAction: AH.addAction,
addActions: AH.addActions,
dispatch: AH.dispatch,
getReducer: getReducer,
reactHoC: reactHoC,
setState: setState,
use: AH.use
};
};
};
exports["default"] = gyreFactory;
module.exports = exports["default"];
/***/ },
/* 2 */
/***/ function(module, exports) {

@@ -147,27 +235,2 @@

/**
* addAction()
*
* @param {String} id Action ID.
* @param {Function} func Reducer function.
* @returns {void}
*/
var addAction = function addAction(id, func) {
return actionMap.set(id, function (args) {
store.updateState(nameSpace, func, args, id);
});
};
/**
* 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()

@@ -198,2 +261,31 @@ *

/**
* addAction()
*
* @param {String} id Action ID.
* @param {Function} func Reducer function.
* @param {Boolean} passDispatch Whether to pass the dispatch method to
* the actions.
* @returns {void}
*/
var addAction = function addAction(id, func, passDispatch) {
return actionMap.set(id, function (args) {
store.updateState(nameSpace, func, args, passDispatch ? dispatch : null);
});
};
/**
* addActions()
*
* @param {Object} actions Key/func object of actions.
* @param {Boolean} passDispatch Whether to pass the dispatch method to
* the actions.
* @returns {void}
*/
var addActions = function addActions(actions, passDispatch) {
Object.keys(actions).forEach(function (action) {
addAction(action, actions[action], passDispatch);
});
};
/**
* use()

@@ -221,3 +313,3 @@ *

/***/ },
/* 2 */
/* 3 */
/***/ function(module, exports, __webpack_require__) {

@@ -231,77 +323,171 @@

var _localAH = __webpack_require__(1);
var _gyreFactory = __webpack_require__(1);
var _localAH2 = _interopRequireDefault(_localAH);
var _gyreFactory2 = _interopRequireDefault(_gyreFactory);
var _localReducer = __webpack_require__(4);
var _reducer = __webpack_require__(5);
var _localReducer2 = _interopRequireDefault(_localReducer);
var _reducer2 = _interopRequireDefault(_reducer);
// React components
var _reactHoC = __webpack_require__(4);
var _localReactHoC = __webpack_require__(3);
var _reactHoC2 = _interopRequireDefault(_reactHoC);
var _localReactHoC2 = _interopRequireDefault(_localReactHoC);
exports["default"] = _gyreFactory2["default"]("local", _reducer2["default"], _reactHoC2["default"]);
module.exports = exports["default"];
/***/ },
/* 4 */
/***/ function(module, exports) {
/**
* * localFactory()
* Higher order Component factory for local gyre.
*
* @param {Object} store Store instance
* @param {String} NS Namespace
* @param {Boolean} [debugMode] Debug mode switch
* @returns {{addAction: Function, dispatch: Function, getHoC: Function, getStateHistory: Function, setState: Function}} API
* @param {Function} reducer Reducer factory.
* @returns {Function} HoC Factory.
*/
var localFactory = function localFactory(store, NS) {
var debugMode = arguments.length <= 2 || arguments[2] === undefined ? false : arguments[2];
"use strict";
var nameSpace = NS || "local";
var AH = _localAH2["default"](store, nameSpace, debugMode);
exports.__esModule = true;
// Public functions
var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
var localHoCFactory = function localHoCFactory(reducer) {
/**
* Getter for reducer
* localHoC()
*
* @param {String} matcher Matcher
* @param {Function} cb Callback
* @returns {Function} Reducer factory
* @param {String} matcher Matcher.
* @param {Object} DefaultComponent Default component.
* @param {*} initialData Initial state.
* @returns {Object} React class
*/
var getReducer = function getReducer(matcher, cb) {
return _localReducer2["default"](store, matcher, cb, nameSpace, debugMode);
return function (matcher, DefaultComponent) {
return React.createClass({
displayName: "GyreJS-localHoC",
getInitialState: function getInitialState() {
return {
data: null
};
},
componentWillMount: function componentWillMount() {
this.unRegisterReducer = reducer(matcher, this.handleNewData);
},
componentWillUnmount: function componentWillUnmount() {
this.unRegisterReducer();
},
shouldComponentUpdate: function shouldComponentUpdate(nextState) {
return this.state.data !== nextState.data;
},
handleNewData: function handleNewData(data) {
this.setState({
data: data
});
},
render: function render() {
return typeof this.state.data !== "undefined" ? React.createElement(DefaultComponent, _extends({}, this.props, this.state)) : false;
}
});
};
};
/**
* setState()
*
* @param {Object|Immutable.Map} tState The state to set to this gyre.
* @returns {Immutable.Map} Current store state.
*/
var setState = function setState(tState) {
return store.setState(tState, nameSpace);
exports["default"] = localHoCFactory;
module.exports = exports["default"];
/***/ },
/* 5 */
/***/ function(module, exports) {
/**
* reducer()
*
* @param {Object} store Store instance
* @param {Array|String} matcher Matcher
* @param {Function} cb Callback
* @param {String} nameSpace Namespace
* @returns {Function} Un-register function
*/
"use strict";
exports.__esModule = true;
var reducer = function reducer(store, matcher, cb, nameSpace) {
// Private functions
var update = function update(stateVar) {
var state = stateVar.get(nameSpace);
var matchValue = Array.isArray(matcher) ? matcher : [matcher];
if (state) {
cb(matchValue.reduce(function (memo, val) {
memo[val] = state.get(val);
return memo;
}, {}));
} else {
cb(void 0);
}
};
// API
return {
addAction: AH.addAction,
addActions: AH.addActions,
dispatch: AH.dispatch,
getReducer: getReducer,
reactHoC: _localReactHoC2["default"],
setState: setState,
use: AH.use
};
// Return the un-register function right away.
return store.addReducer(update);
};
exports["default"] = localFactory;
exports["default"] = reducer;
module.exports = exports["default"];
/***/ },
/* 3 */
/* 6 */
/***/ function(module, exports) {
"use strict";
exports.__esModule = true;
var actions = {};
var ADD_QUERY = "ADD_QUERY";
actions[ADD_QUERY] = function (state, dispatcher, query) {
return state.get("queries").set(query, query);
};
exports["default"] = {
passDispatch: true,
actions: actions
};
module.exports = exports["default"];
/***/ },
/* 7 */
/***/ function(module, exports, __webpack_require__) {
"use strict";
exports.__esModule = true;
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
var _gyreFactory = __webpack_require__(1);
var _gyreFactory2 = _interopRequireDefault(_gyreFactory);
var _reducer = __webpack_require__(9);
var _reducer2 = _interopRequireDefault(_reducer);
var _reactHoC = __webpack_require__(8);
var _reactHoC2 = _interopRequireDefault(_reactHoC);
var _actions = __webpack_require__(6);
var _actions2 = _interopRequireDefault(_actions);
exports["default"] = _gyreFactory2["default"]("simpleRest", _reducer2["default"], _reactHoC2["default"], _actions2["default"]);
module.exports = exports["default"];
/***/ },
/* 8 */
/***/ 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
* @param {Function} reducer Reducer factory.
* @returns {Function} HoC Factory.
*/

@@ -314,16 +500,18 @@ "use strict";

var localHoCFactory = function localHoCFactory(React, reducer) {
var localHoCFactory = function localHoCFactory(reducer) {
/**
* localHoC()
*
* @param {String} matcher Matcher
* @param {Object} DefaultComponent Default component
* @param {*} initialData Initial state
* @param {String} matcher Matcher.
* @param {Object} DefaultComponent Default component.
* @param {*} initialData Initial state.
* @returns {Object} React class
*/
return function (matcher, DefaultComponent, initialData) {
return function (matcher, DefaultComponent) {
return React.createClass({
displayName: "GyreJS-localHoC",
getInitialState: function getInitialState() {
return initialData || null;
return {
data: null
};
},

@@ -337,3 +525,3 @@ componentWillMount: function componentWillMount() {

shouldComponentUpdate: function shouldComponentUpdate(nextState) {
return this.state !== nextState;
return this.state.data !== nextState.data;
},

@@ -346,3 +534,3 @@ handleNewData: function handleNewData(data) {

render: function render() {
return this.state ? React.createElement(DefaultComponent, _extends({}, this.props, this.state)) : false;
return typeof this.state.data !== "undefined" ? React.createElement(DefaultComponent, _extends({}, this.props, this.state)) : false;
}

@@ -357,3 +545,3 @@ });

/***/ },
/* 4 */
/* 9 */
/***/ function(module, exports) {

@@ -365,3 +553,3 @@

* @param {Object} store Store instance
* @param {String} matcher Matcher
* @param {Array|String} matcher Matcher
* @param {Function} cb Callback

@@ -377,3 +565,3 @@ * @param {String} nameSpace Namespace

var update = function update(stateVar) {
var state = nameSpace ? stateVar.get(nameSpace) : stateVar;
var state = stateVar.get(nameSpace);
var matchValue = Array.isArray(matcher) ? matcher : [matcher];

@@ -399,3 +587,3 @@

/***/ },
/* 5 */
/* 10 */
/***/ function(module, exports) {

@@ -424,3 +612,3 @@

/***/ },
/* 6 */
/* 11 */
/***/ function(module, exports, __webpack_require__) {

@@ -434,3 +622,3 @@

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

@@ -525,5 +713,5 @@ var _immutable2 = _interopRequireDefault(_immutable);

*
* @param {Immutable.Map|Object} nState State
* @param {String} [nameSpace] Namespace
* @returns {Immutable.Map} New state
* @param {Immutable.Map|Object} nState State.
* @param {String} [nameSpace] Namespace.
* @returns {Immutable.Map} New state.
*/

@@ -538,9 +726,14 @@ var setState = function setState(nState, nameSpace) {

*
* @param {String} nameSpace Namespace
* @param {Function} func Reducer function
* @param {Array} args Reducer function arguments
* @returns {Immutable.Map} state New state
* @param {String} nameSpace Namespace.
* @param {Function} func Reducer function.
* @param {Array} args Reducer function arguments.
* @param {Function} [dispatch] Dispatcher function.
* @returns {Immutable.Map} state New state.
*/
var updateState = function updateState(nameSpace, func, args) {
setNewState(func.apply(undefined, [state.get(nameSpace) || IMap({})].concat(args)), nameSpace);
var updateState = function updateState(nameSpace, func, args, dispatch) {
var farg = [state.get(nameSpace) || IMap({})];
if (dispatch) {
farg.concat(dispatch);
}
setNewState(func.apply(undefined, farg.concat(args)), nameSpace);
return state;

@@ -562,6 +755,6 @@ };

/***/ },
/* 7 */
/* 12 */
/***/ function(module, exports) {
module.exports = __WEBPACK_EXTERNAL_MODULE_7__;
module.exports = __WEBPACK_EXTERNAL_MODULE_12__;

@@ -568,0 +761,0 @@ /***/ }

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

!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}])});
!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(11),a=r(u),o=n(3),i=r(o),s=n(7),c=r(s),d=n(10),f=r(d),l={dispatchLogger:f.default},p=new Map,h=a.default(),g=[],m=function(t,e){if(p.has(t)||console.warn("GyreJS: Gyre factory '"+t+"' not registered."),-1!==g.indexOf(e))throw new Error("GyreJS ('"+t+"'): A gyre using the namespace '"+e+"' not registered.");return g.push(e),p.get(t)(h,e)},v=function(t,e){p.set(t,e)};v("local",i.default),v("simpleRest",c.default),e.createGyre=m,e.middleWare=l,e.registerGyreFactory=v},function(t,e,n){"use strict";function r(t){return t&&t.__esModule?t:{"default":t}}e.__esModule=!0;var u=n(2),a=r(u),o=function(t,e,n,r){return function(u,o){var i=o||t,s=a.default(u,i);r&&s.addActions(r);var c=function(t,n){return e(u,t,n,i)},d=function(t){return u.setState(t,i)},f=n(c);return{addAction:s.addAction,addActions:s.addActions,dispatch:s.dispatch,getReducer:c,reactHoC:f,setState:d,use:s.use}}};e.default=o,t.exports=e.default},function(t,e){"use strict";e.__esModule=!0;var n=function(t,e){var n=new Map,r=[],u=function(t){for(var u=arguments.length,a=Array(u>1?u-1:0),o=1;u>o;o++)a[o-1]=arguments[o];n.has(t)?r.reduce(function(n,r){return function(){return r(e,t,a,n)}},function(){return n.get(t)(a)})():console.warn("GyreJS-'"+e+"'-AH: Unregistered action requested: '"+t+"' with arguments:",a)},a=function(r,a,o){return n.set(r,function(n){t.updateState(e,a,n,o?u:null)})},o=function(t,e){Object.keys(t).forEach(function(n){a(n,t[n],e)})},i=function(t){r.unshift(t)};return{addAction:a,addActions:o,dispatch:u,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),a=r(u),o=n(5),i=r(o),s=n(4),c=r(s);e.default=a.default("local",i.default,c.default),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){return function(e,r){return React.createClass({displayName:"GyreJS-localHoC",getInitialState:function(){return{data:null}},componentWillMount:function(){this.unRegisterReducer=t(e,this.handleNewData)},componentWillUnmount:function(){this.unRegisterReducer()},shouldComponentUpdate:function(t){return this.state.data!==t.data},handleNewData:function(t){this.setState({data:t})},render:function(){return"undefined"!=typeof this.state.data?React.createElement(r,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=t.get(r),a=Array.isArray(e)?e:[e];n(u?a.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={},r="ADD_QUERY";n[r]=function(t,e,n){return t.get("queries").set(n,n)},e.default={passDispatch:!0,actions: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),a=r(u),o=n(9),i=r(o),s=n(8),c=r(s),d=n(6),f=r(d);e.default=a.default("simpleRest",i.default,c.default,f.default),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){return function(e,r){return React.createClass({displayName:"GyreJS-localHoC",getInitialState:function(){return{data:null}},componentWillMount:function(){this.unRegisterReducer=t(e,this.handleNewData)},componentWillUnmount:function(){this.unRegisterReducer()},shouldComponentUpdate:function(t){return this.state.data!==t.data},handleNewData:function(t){this.setState({data:t})},render:function(){return"undefined"!=typeof this.state.data?React.createElement(r,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=t.get(r),a=Array.isArray(e)?e:[e];n(u?a.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(12),a=r(u),o=a.default.Map,i=function(){var t=o({}),e=0,n=new Map,r=function(){return n.forEach(function(e){return e(t)})},u=function(t){return function(){return n.delete(t)}},a=function(e,n){var u=o.isMap(e)?e:o(e);return t=n?t.set(n,u):u,r(),t},i=function(r){var a=e++;return n.set(a,r),r(t),u(a)},s=function(){return t},c=function(t,e){return a(t,e)},d=function(e,n,r,u){var i=[t.get(e)||o({})];return u&&i.concat(u),a(n.apply(void 0,i.concat(r)),e),t};return{addReducer:i,getState:s,setState:c,updateState:d}};e.default=i,t.exports=e.default},function(e,n){e.exports=t}])});

@@ -14,6 +14,10 @@ /**

var _gyresLocalLocalFactory = require("./gyres/local/localFactory");
var _gyresLocalFactory = require("./gyres/local/factory");
var _gyresLocalLocalFactory2 = _interopRequireDefault(_gyresLocalLocalFactory);
var _gyresLocalFactory2 = _interopRequireDefault(_gyresLocalFactory);
var _gyresSimpleRestFactory = require("./gyres/simpleRest/factory");
var _gyresSimpleRestFactory2 = _interopRequireDefault(_gyresSimpleRestFactory);
// Middleware

@@ -32,2 +36,3 @@

var store = _store2["default"]();
var usedNameSpaces = [];

@@ -38,10 +43,15 @@ // Public functions

*
* @param {String} id Id of a registered gyre.
* @param {String} id Id of a registered gyre factory.
* @param {String} [nameSpace] Namespace of new gyre.
* @returns {Object} Gyre instance.
*/
var createGyre = function createGyre(id) {
var createGyre = function createGyre(id, nameSpace) {
if (!gyres.has(id)) {
console.warn("GyreJS: Gyre '" + id + "' not registered.");
console.warn("GyreJS: Gyre factory '" + id + "' not registered.");
}
return gyres.get(id)(store);
if (usedNameSpaces.indexOf(nameSpace) !== -1) {
throw new Error("GyreJS ('" + id + "'): A gyre using the namespace '" + nameSpace + "' not registered.");
}
usedNameSpaces.push(nameSpace);
return gyres.get(id)(store, nameSpace);
};

@@ -61,3 +71,4 @@

// Register standard gyres
registerGyreFactory("local", _gyresLocalLocalFactory2["default"]);
registerGyreFactory("local", _gyresLocalFactory2["default"]);
registerGyreFactory("simpleRest", _gyresSimpleRestFactory2["default"]);

@@ -64,0 +75,0 @@ exports.createGyre = createGyre;

@@ -97,5 +97,5 @@ "use strict";

*
* @param {Immutable.Map|Object} nState State
* @param {String} [nameSpace] Namespace
* @returns {Immutable.Map} New state
* @param {Immutable.Map|Object} nState State.
* @param {String} [nameSpace] Namespace.
* @returns {Immutable.Map} New state.
*/

@@ -110,9 +110,14 @@ var setState = function setState(nState, nameSpace) {

*
* @param {String} nameSpace Namespace
* @param {Function} func Reducer function
* @param {Array} args Reducer function arguments
* @returns {Immutable.Map} state New state
* @param {String} nameSpace Namespace.
* @param {Function} func Reducer function.
* @param {Array} args Reducer function arguments.
* @param {Function} [dispatch] Dispatcher function.
* @returns {Immutable.Map} state New state.
*/
var updateState = function updateState(nameSpace, func, args) {
setNewState(func.apply(undefined, [state.get(nameSpace) || IMap({})].concat(args)), nameSpace);
var updateState = function updateState(nameSpace, func, args, dispatch) {
var farg = [state.get(nameSpace) || IMap({})];
if (dispatch) {
farg.concat(dispatch);
}
setNewState(func.apply(undefined, farg.concat(args)), nameSpace);
return state;

@@ -119,0 +124,0 @@ };

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

@@ -45,2 +45,3 @@ "main": "lib/gyrejs-min.js",

"babel-loader": "^5.3.2",
"cheerio": "^0.19.0",
"eslint": "1.6.0",

@@ -50,2 +51,3 @@ "eslint-config-airbnb": "^0.1.0",

"react": "0.14.0",
"react-dom": "^0.14.0",
"rimraf": "^2.4.3",

@@ -52,0 +54,0 @@ "tap-spec": "^4.1.0",

@@ -5,3 +5,4 @@ /**

import Store from "./store";
import LocalGyreFactory from "./gyres/local/localFactory";
import LocalGyre from "./gyres/local/factory";
import SimpleRestGyre from "./gyres/simpleRest/factory";

@@ -17,2 +18,3 @@ // Middleware

const store = Store();
const usedNameSpaces = [];

@@ -23,10 +25,15 @@ // Public functions

*
* @param {String} id Id of a registered gyre.
* @param {String} id Id of a registered gyre factory.
* @param {String} [nameSpace] Namespace of new gyre.
* @returns {Object} Gyre instance.
*/
const createGyre = (id) => {
const createGyre = (id, nameSpace) => {
if (!gyres.has(id)) {
console.warn(`GyreJS: Gyre '${id}' not registered.`);
console.warn(`GyreJS: Gyre factory '${id}' not registered.`);
}
return gyres.get(id)(store);
if (usedNameSpaces.indexOf(nameSpace) !== -1) {
throw new Error(`GyreJS ('${id}'): A gyre using the namespace '${nameSpace}' not registered.`);
}
usedNameSpaces.push(nameSpace);
return gyres.get(id)(store, nameSpace);
};

@@ -46,3 +53,4 @@

// Register standard gyres
registerGyreFactory("local", LocalGyreFactory);
registerGyreFactory("local", LocalGyre);
registerGyreFactory("simpleRest", SimpleRestGyre);

@@ -49,0 +57,0 @@ export {

@@ -79,5 +79,5 @@ import Immutable from "immutable";

*
* @param {Immutable.Map|Object} nState State
* @param {String} [nameSpace] Namespace
* @returns {Immutable.Map} New state
* @param {Immutable.Map|Object} nState State.
* @param {String} [nameSpace] Namespace.
* @returns {Immutable.Map} New state.
*/

@@ -90,9 +90,14 @@ const setState = (nState, nameSpace) => setNewState(nState, nameSpace);

*
* @param {String} nameSpace Namespace
* @param {Function} func Reducer function
* @param {Array} args Reducer function arguments
* @returns {Immutable.Map} state New state
* @param {String} nameSpace Namespace.
* @param {Function} func Reducer function.
* @param {Array} args Reducer function arguments.
* @param {Function} [dispatch] Dispatcher function.
* @returns {Immutable.Map} state New state.
*/
const updateState = (nameSpace, func, args) => {
setNewState(func(state.get(nameSpace) || IMap({}), ...args), nameSpace);
const updateState = (nameSpace, func, args, dispatch) => {
var farg = [state.get(nameSpace) || IMap({})];
if (dispatch) {
farg.concat(dispatch);
}
setNewState(func(...farg.concat(args)), nameSpace);
return state;

@@ -99,0 +104,0 @@ };