Comparing version 3.1.3 to 4.0.0
# Changelog | ||
### 4.0.0 | ||
* Upgrade fbjs dependency to ^3.x | ||
* Upgrade for Babel 7 compatibility (#495) (thanks to @koba04) | ||
* Added React 17 as a peer dependency | ||
### 3.1.3 | ||
@@ -4,0 +10,0 @@ |
159
dist/Flux.js
/** | ||
* Flux v3.1.3 | ||
* Flux v4.0.0 | ||
*/ | ||
@@ -58,3 +58,3 @@ (function webpackUniversalModuleDefinition(root, factory) { | ||
/* 0 */ | ||
/***/ function(module, exports, __webpack_require__) { | ||
/***/ (function(module, exports, __webpack_require__) { | ||
@@ -69,10 +69,7 @@ /** | ||
*/ | ||
'use strict'; | ||
module.exports.Dispatcher = __webpack_require__(1); | ||
/***/ }, | ||
/***/ }), | ||
/* 1 */ | ||
/***/ function(module, exports, __webpack_require__) { | ||
/***/ (function(module, exports, __webpack_require__) { | ||
@@ -91,11 +88,17 @@ /** | ||
*/ | ||
'use strict'; | ||
exports.__esModule = true; | ||
function _defineProperty(obj, key, value) { | ||
if (key in obj) { | ||
Object.defineProperty(obj, key, { | ||
value: value, | ||
enumerable: true, | ||
configurable: true, | ||
writable: true | ||
}); | ||
} else { | ||
obj[key] = value; | ||
} | ||
function _classCallCheck(instance, Constructor) { | ||
if (!(instance instanceof Constructor)) { | ||
throw new TypeError('Cannot call a class as a function'); | ||
} | ||
return obj; | ||
} | ||
@@ -106,3 +109,2 @@ | ||
var _prefix = 'ID_'; | ||
/** | ||
@@ -196,6 +198,16 @@ * Dispatcher is used to broadcast payloads to registered callbacks. This is | ||
var Dispatcher = (function () { | ||
var Dispatcher = /*#__PURE__*/function () { | ||
function Dispatcher() { | ||
_classCallCheck(this, Dispatcher); | ||
_defineProperty(this, "_callbacks", void 0); | ||
_defineProperty(this, "_isDispatching", void 0); | ||
_defineProperty(this, "_isHandled", void 0); | ||
_defineProperty(this, "_isPending", void 0); | ||
_defineProperty(this, "_lastID", void 0); | ||
_defineProperty(this, "_pendingPayload", void 0); | ||
this._callbacks = {}; | ||
@@ -207,3 +219,2 @@ this._isDispatching = false; | ||
} | ||
/** | ||
@@ -214,17 +225,19 @@ * Registers a callback to be invoked with every dispatched payload. Returns | ||
Dispatcher.prototype.register = function register(callback) { | ||
var _proto = Dispatcher.prototype; | ||
_proto.register = function register(callback) { | ||
var id = _prefix + this._lastID++; | ||
this._callbacks[id] = callback; | ||
return id; | ||
}; | ||
} | ||
/** | ||
* Removes a callback based on its token. | ||
*/ | ||
; | ||
Dispatcher.prototype.unregister = function unregister(id) { | ||
!this._callbacks[id] ? true ? invariant(false, 'Dispatcher.unregister(...): `%s` does not map to a registered callback.', id) : invariant(false) : undefined; | ||
_proto.unregister = function unregister(id) { | ||
!this._callbacks[id] ? true ? invariant(false, 'Dispatcher.unregister(...): `%s` does not map to a registered callback.', id) : invariant(false) : void 0; | ||
delete this._callbacks[id]; | ||
}; | ||
} | ||
/** | ||
@@ -235,23 +248,30 @@ * Waits for the callbacks specified to be invoked before continuing execution | ||
*/ | ||
; | ||
Dispatcher.prototype.waitFor = function waitFor(ids) { | ||
!this._isDispatching ? true ? invariant(false, 'Dispatcher.waitFor(...): Must be invoked while dispatching.') : invariant(false) : undefined; | ||
_proto.waitFor = function waitFor(ids) { | ||
!this._isDispatching ? true ? invariant(false, 'Dispatcher.waitFor(...): Must be invoked while dispatching.') : invariant(false) : void 0; | ||
for (var ii = 0; ii < ids.length; ii++) { | ||
var id = ids[ii]; | ||
if (this._isPending[id]) { | ||
!this._isHandled[id] ? true ? invariant(false, 'Dispatcher.waitFor(...): Circular dependency detected while ' + 'waiting for `%s`.', id) : invariant(false) : undefined; | ||
!this._isHandled[id] ? true ? invariant(false, 'Dispatcher.waitFor(...): Circular dependency detected while ' + 'waiting for `%s`.', id) : invariant(false) : void 0; | ||
continue; | ||
} | ||
!this._callbacks[id] ? true ? invariant(false, 'Dispatcher.waitFor(...): `%s` does not map to a registered callback.', id) : invariant(false) : undefined; | ||
!this._callbacks[id] ? true ? invariant(false, 'Dispatcher.waitFor(...): `%s` does not map to a registered callback.', id) : invariant(false) : void 0; | ||
this._invokeCallback(id); | ||
} | ||
}; | ||
} | ||
/** | ||
* Dispatches a payload to all registered callbacks. | ||
*/ | ||
; | ||
Dispatcher.prototype.dispatch = function dispatch(payload) { | ||
!!this._isDispatching ? true ? invariant(false, 'Dispatch.dispatch(...): Cannot dispatch in the middle of a dispatch.') : invariant(false) : undefined; | ||
_proto.dispatch = function dispatch(payload) { | ||
!!this._isDispatching ? true ? invariant(false, 'Dispatch.dispatch(...): Cannot dispatch in the middle of a dispatch.') : invariant(false) : void 0; | ||
this._startDispatching(payload); | ||
try { | ||
@@ -262,2 +282,3 @@ for (var id in this._callbacks) { | ||
} | ||
this._invokeCallback(id); | ||
@@ -268,12 +289,11 @@ } | ||
} | ||
}; | ||
} | ||
/** | ||
* Is this Dispatcher currently dispatching. | ||
*/ | ||
; | ||
Dispatcher.prototype.isDispatching = function isDispatching() { | ||
_proto.isDispatching = function isDispatching() { | ||
return this._isDispatching; | ||
}; | ||
} | ||
/** | ||
@@ -285,9 +305,11 @@ * Call the callback stored with the given id. Also do some internal | ||
*/ | ||
; | ||
Dispatcher.prototype._invokeCallback = function _invokeCallback(id) { | ||
_proto._invokeCallback = function _invokeCallback(id) { | ||
this._isPending[id] = true; | ||
this._callbacks[id](this._pendingPayload); | ||
this._isHandled[id] = true; | ||
}; | ||
} | ||
/** | ||
@@ -298,4 +320,5 @@ * Set up bookkeeping needed when dispatching. | ||
*/ | ||
; | ||
Dispatcher.prototype._startDispatching = function _startDispatching(payload) { | ||
_proto._startDispatching = function _startDispatching(payload) { | ||
for (var id in this._callbacks) { | ||
@@ -305,6 +328,6 @@ this._isPending[id] = false; | ||
} | ||
this._pendingPayload = payload; | ||
this._isDispatching = true; | ||
}; | ||
} | ||
/** | ||
@@ -315,4 +338,5 @@ * Clear bookkeeping used for dispatching. | ||
*/ | ||
; | ||
Dispatcher.prototype._stopDispatching = function _stopDispatching() { | ||
_proto._stopDispatching = function _stopDispatching() { | ||
delete this._pendingPayload; | ||
@@ -323,49 +347,51 @@ this._isDispatching = false; | ||
return Dispatcher; | ||
})(); | ||
}(); | ||
module.exports = Dispatcher; | ||
/***/ }, | ||
/***/ }), | ||
/* 2 */ | ||
/***/ function(module, exports, __webpack_require__) { | ||
/***/ (function(module, exports, __webpack_require__) { | ||
/** | ||
* Copyright (c) 2013-present, Facebook, Inc. | ||
* All rights reserved. | ||
* | ||
* This source code is licensed under the BSD-style license found in the | ||
* LICENSE file in the root directory of this source tree. An additional grant | ||
* of patent rights can be found in the PATENTS file in the same directory. | ||
* This source code is licensed under the MIT license found in the | ||
* LICENSE file in the root directory of this source tree. | ||
* | ||
* | ||
*/ | ||
'use strict'; | ||
var validateFormat = true ? function (format) { | ||
if (format === undefined) { | ||
throw new Error('invariant(...): Second argument must be a string.'); | ||
} | ||
} : function (format) {}; | ||
/** | ||
* Use invariant() to assert state which your program assumes to be true. | ||
* | ||
* Provide sprintf-style format (only %s is supported) and arguments | ||
* to provide information about what broke and what you were | ||
* expecting. | ||
* Provide sprintf-style format (only %s is supported) and arguments to provide | ||
* information about what broke and what you were expecting. | ||
* | ||
* The invariant message will be stripped in production, but the invariant | ||
* will remain to ensure logic does not differ in production. | ||
* The invariant message will be stripped in production, but the invariant will | ||
* remain to ensure logic does not differ in production. | ||
*/ | ||
function invariant(condition, format, a, b, c, d, e, f) { | ||
if (true) { | ||
if (format === undefined) { | ||
throw new Error('invariant requires an error message argument'); | ||
} | ||
function invariant(condition, format) { | ||
for (var _len = arguments.length, args = new Array(_len > 2 ? _len - 2 : 0), _key = 2; _key < _len; _key++) { | ||
args[_key - 2] = arguments[_key]; | ||
} | ||
validateFormat(format); | ||
if (!condition) { | ||
var error; | ||
if (format === undefined) { | ||
error = new Error('Minified exception occurred; use the non-minified dev environment ' + 'for the full error message and additional helpful warnings.'); | ||
} else { | ||
var args = [a, b, c, d, e, f]; | ||
var argIndex = 0; | ||
error = new Error(format.replace(/%s/g, function () { | ||
return args[argIndex++]; | ||
return String(args[argIndex++]); | ||
})); | ||
@@ -375,3 +401,4 @@ error.name = 'Invariant Violation'; | ||
error.framesToPop = 1; // we don't care about invariant's own frame | ||
error.framesToPop = 1; // Skip invariant's own stack frame. | ||
throw error; | ||
@@ -383,5 +410,5 @@ } | ||
/***/ } | ||
/***/ }) | ||
/******/ ]) | ||
}); | ||
; |
/** | ||
* Flux v3.1.3 | ||
* Flux v4.0.0 | ||
* | ||
* Copyright (c) 2014-present, Facebook, Inc. All rights reserved. | ||
* Copyright (c) Facebook, Inc. and its affiliates. | ||
* | ||
@@ -10,2 +10,2 @@ * This source code is licensed under the BSD-style license found in the | ||
*/ | ||
!function(i,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.Flux=t():i.Flux=t()}(this,function(){return function(i){function t(s){if(n[s])return n[s].exports;var e=n[s]={exports:{},id:s,loaded:!1};return i[s].call(e.exports,e,e.exports,t),e.loaded=!0,e.exports}var n={};return t.m=i,t.c=n,t.p="",t(0)}([function(i,t,n){"use strict";i.exports.Dispatcher=n(1)},function(i,t,n){"use strict";function s(i,t){if(!(i instanceof t))throw new TypeError("Cannot call a class as a function")}var e,o,a;t.__esModule=!0,e=n(2),o="ID_",a=function(){function i(){s(this,i),this._callbacks={},this._isDispatching=!1,this._isHandled={},this._isPending={},this._lastID=1}return i.prototype.register=function(i){var t=o+this._lastID++;return this._callbacks[t]=i,t},i.prototype.unregister=function(i){this._callbacks[i]?void 0:e(!1),delete this._callbacks[i]},i.prototype.waitFor=function(i){var t,n;for(this._isDispatching?void 0:e(!1),t=0;t<i.length;t++)n=i[t],this._isPending[n]?this._isHandled[n]?void 0:e(!1):(this._callbacks[n]?void 0:e(!1),this._invokeCallback(n))},i.prototype.dispatch=function(i){this._isDispatching?e(!1):void 0,this._startDispatching(i);try{for(var t in this._callbacks)this._isPending[t]||this._invokeCallback(t)}finally{this._stopDispatching()}},i.prototype.isDispatching=function(){return this._isDispatching},i.prototype._invokeCallback=function(i){this._isPending[i]=!0,this._callbacks[i](this._pendingPayload),this._isHandled[i]=!0},i.prototype._startDispatching=function(i){for(var t in this._callbacks)this._isPending[t]=!1,this._isHandled[t]=!1;this._pendingPayload=i,this._isDispatching=!0},i.prototype._stopDispatching=function(){delete this._pendingPayload,this._isDispatching=!1},i}(),i.exports=a},function(i,t,n){"use strict";function s(i,t,n,s,e,o,a,r){var c,p,l;if(!i)throw void 0===t?c=new Error("Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings."):(p=[n,s,e,o,a,r],l=0,c=new Error(t.replace(/%s/g,function(){return p[l++]})),c.name="Invariant Violation"),c.framesToPop=1,c}i.exports=s}])}); | ||
!function(i,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.Flux=t():i.Flux=t()}(this,function(){return function(i){function t(s){if(n[s])return n[s].exports;var e=n[s]={exports:{},id:s,loaded:!1};return i[s].call(e.exports,e,e.exports,t),e.loaded=!0,e.exports}var n={};return t.m=i,t.c=n,t.p="",t(0)}([function(i,t,n){i.exports.Dispatcher=n(1)},function(i,t,n){"use strict";function s(i,t,n){return t in i?Object.defineProperty(i,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):i[t]=n,i}var e=n(2),o="ID_",a=function(){function i(){s(this,"_callbacks",void 0),s(this,"_isDispatching",void 0),s(this,"_isHandled",void 0),s(this,"_isPending",void 0),s(this,"_lastID",void 0),s(this,"_pendingPayload",void 0),this._callbacks={},this._isDispatching=!1,this._isHandled={},this._isPending={},this._lastID=1}var t=i.prototype;return t.register=function(i){var t=o+this._lastID++;return this._callbacks[t]=i,t},t.unregister=function(i){this._callbacks[i]?void 0:e(!1),delete this._callbacks[i]},t.waitFor=function(i){var t,n;for(this._isDispatching?void 0:e(!1),t=0;t<i.length;t++)n=i[t],this._isPending[n]?this._isHandled[n]?void 0:e(!1):(this._callbacks[n]?void 0:e(!1),this._invokeCallback(n))},t.dispatch=function(i){this._isDispatching?e(!1):void 0,this._startDispatching(i);try{for(var t in this._callbacks)this._isPending[t]||this._invokeCallback(t)}finally{this._stopDispatching()}},t.isDispatching=function(){return this._isDispatching},t._invokeCallback=function(i){this._isPending[i]=!0,this._callbacks[i](this._pendingPayload),this._isHandled[i]=!0},t._startDispatching=function(i){for(var t in this._callbacks)this._isPending[t]=!1,this._isHandled[t]=!1;this._pendingPayload=i,this._isDispatching=!0},t._stopDispatching=function(){delete this._pendingPayload,this._isDispatching=!1},i}();i.exports=a},function(i,t,n){"use strict";function s(i,t){var n,s,o,a,r;for(n=arguments.length,s=new Array(n>2?n-2:0),o=2;o<n;o++)s[o-2]=arguments[o];if(e(t),!i)throw void 0===t?a=new Error("Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings."):(r=0,a=new Error(t.replace(/%s/g,function(){return String(s[r++])})),a.name="Invariant Violation"),a.framesToPop=1,a}var e=function(i){};i.exports=s}])}); |
/** | ||
* Flux v3.1.3 | ||
* Flux v4.0.0 | ||
* | ||
* Copyright (c) 2014-present, Facebook, Inc. All rights reserved. | ||
* Copyright (c) Facebook, Inc. and its affiliates. | ||
* | ||
@@ -10,2 +10,15 @@ * This source code is licensed under the BSD-style license found in the | ||
*/ | ||
!function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e():"function"==typeof define&&define.amd?define([],e):"object"==typeof exports?exports.FluxUtils=e():t.FluxUtils=e()}(this,function(){return function(t){function e(r){if(n[r])return n[r].exports;var o=n[r]={exports:{},id:r,loaded:!1};return t[r].call(o.exports,o,o.exports,e),o.loaded=!0,o.exports}var n={};return e.m=t,e.c=n,e.p="",e(0)}([function(t,e,n){"use strict";t.exports.Container=n(1),t.exports.Mixin=n(32),t.exports.ReduceStore=n(33),t.exports.Store=n(34)},function(t,e,n){"use strict";function r(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function o(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}function i(t,e){var n,i,c,l,f,h;return u(t),n=a({},y,e||{}),i=function(e,r,o){var i=n.withProps?r:void 0,s=n.withContext?o:void 0;return t.calculateState(e,i,s)},c=function(e,r){var o=n.withProps?e:void 0,i=n.withContext?r:void 0;return t.getStores(o,i)},l=function(t){function e(n,o){var s,u=this;r(this,e),t.call(this,n,o),this._fluxContainerSubscriptions=new p,this._fluxContainerSubscriptions.setStores(c(n)),this._fluxContainerSubscriptions.addListener(function(){u.setState(function(t,e){return i(t,e,o)})}),s=i(void 0,n,o),this.state=a({},this.state||{},s)}return o(e,t),e.prototype.componentWillReceiveProps=function(e,r){t.prototype.componentWillReceiveProps&&t.prototype.componentWillReceiveProps.call(this,e,r),(n.withProps||n.withContext)&&(this._fluxContainerSubscriptions.setStores(c(e,r)),this.setState(function(t){return i(t,e,r)}))},e.prototype.componentWillUnmount=function(){t.prototype.componentWillUnmount&&t.prototype.componentWillUnmount.call(this),this._fluxContainerSubscriptions.reset()},e}(t),f=n.pure?s(l):l,h=t.displayName||t.name,f.displayName="FluxContainer("+h+")",f}function s(t){var e=function(t){function e(){r(this,e),t.apply(this,arguments)}return o(e,t),e.prototype.shouldComponentUpdate=function(t,e){return!h(this.props,t)||!h(this.state,e)},e}(t);return e}function u(t){t.getStores?void 0:f(!1),t.calculateState?void 0:f(!1)}function c(t,e,n,s){var u=function(i){function s(){r(this,s),i.apply(this,arguments)}return o(s,i),s.getStores=function(t,n){return e(t,n)},s.calculateState=function(t,e,r){return n(t,e,r)},s.prototype.render=function(){return t(this.state)},s}(d),c=t.displayName||t.name||"FunctionalContainer";return u.displayName=c,i(u,s)}var a=Object.assign||function(t){var e,n,r;for(e=1;e<arguments.length;e++){n=arguments[e];for(r in n)Object.prototype.hasOwnProperty.call(n,r)&&(t[r]=n[r])}return t},p=n(2),l=n(5),f=n(4),h=n(31),d=l.Component,y={pure:!0,withProps:!1,withContext:!1};t.exports={create:i,createFunctional:c}},function(t,e,n){"use strict";function r(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function o(t,e){if(t===e)return!0;if(t.length!==e.length)return!1;for(var n=0;n<t.length;n++)if(t[n]!==e[n])return!1;return!0}var i=n(3),s=function(){function t(){r(this,t),this._callbacks=[]}return t.prototype.setStores=function(t){var e,n,r,s=this;this._stores&&o(this._stores,t)||(this._stores=t,this._resetTokens(),this._resetStoreGroup(),e=!1,n=[],!function(){var n=function(){e=!0};s._tokens=t.map(function(t){return t.addListener(n)})}(),r=function(){e&&(s._callbacks.forEach(function(t){return t()}),e=!1)},this._storeGroup=new i(t,r))},t.prototype.addListener=function(t){this._callbacks.push(t)},t.prototype.reset=function(){this._resetTokens(),this._resetStoreGroup(),this._resetCallbacks(),this._resetStores()},t.prototype._resetTokens=function(){this._tokens&&(this._tokens.forEach(function(t){return t.remove()}),this._tokens=null)},t.prototype._resetStoreGroup=function(){this._storeGroup&&(this._storeGroup.release(),this._storeGroup=null)},t.prototype._resetStores=function(){this._stores=null},t.prototype._resetCallbacks=function(){this._callbacks=[]},t}();t.exports=s},function(t,e,n){"use strict";function r(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function o(t){var e;return t&&t.length?void 0:i(!1),e=t[0].getDispatcher()}var i=n(4),s=function(){function t(e,n){var i,s=this;r(this,t),this._dispatcher=o(e),i=e.map(function(t){return t.getDispatchToken()}),this._dispatchToken=this._dispatcher.register(function(t){s._dispatcher.waitFor(i),n()})}return t.prototype.release=function(){this._dispatcher.unregister(this._dispatchToken)},t}();t.exports=s},function(t,e,n){"use strict";function r(t,e,n,r,o,i,s,u){var c,a,p;if(!t)throw void 0===e?c=new Error("Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings."):(a=[n,r,o,i,s,u],p=0,c=new Error(e.replace(/%s/g,function(){return a[p++]})),c.name="Invariant Violation"),c.framesToPop=1,c}t.exports=r},function(t,e,n){"use strict";t.exports=n(6)},function(t,e,n){"use strict";var r,o,i=n(7),s=n(8),u=n(20),c=n(23),a=n(24),p=n(26),l=n(11),f=n(27),h=n(29),d=n(30),y=(n(13),l.createElement),v=l.createFactory,b=l.cloneElement;r=i,o={Children:{map:s.map,forEach:s.forEach,count:s.count,toArray:s.toArray,only:d},Component:u,PureComponent:c,createElement:y,cloneElement:b,isValidElement:l.isValidElement,PropTypes:f,createClass:a.createClass,createFactory:v,createMixin:function(t){return t},DOM:p,version:h,__spread:r},t.exports=o},function(t,e){"use strict";function n(t){if(null===t||void 0===t)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(t)}function r(){var t,e,n,r,o;try{if(!Object.assign)return!1;if(t=new String("abc"),t[5]="de","5"===Object.getOwnPropertyNames(t)[0])return!1;for(e={},n=0;n<10;n++)e["_"+String.fromCharCode(n)]=n;return r=Object.getOwnPropertyNames(e).map(function(t){return e[t]}),"0123456789"===r.join("")&&(o={},"abcdefghijklmnopqrst".split("").forEach(function(t){o[t]=t}),"abcdefghijklmnopqrst"===Object.keys(Object.assign({},o)).join(""))}catch(t){return!1}}var o=Object.prototype.hasOwnProperty,i=Object.prototype.propertyIsEnumerable;t.exports=r()?Object.assign:function(t,e){var r,s,u,c,a,p=n(t);for(u=1;u<arguments.length;u++){r=Object(arguments[u]);for(c in r)o.call(r,c)&&(p[c]=r[c]);if(Object.getOwnPropertySymbols)for(s=Object.getOwnPropertySymbols(r),a=0;a<s.length;a++)i.call(r,s[a])&&(p[s[a]]=r[s[a]])}return p}},function(t,e,n){"use strict";function r(t){return(""+t).replace(x,"$&/")}function o(t,e){this.func=t,this.context=e,this.count=0}function i(t,e,n){var r=t.func,o=t.context;r.call(o,e,t.count++)}function s(t,e,n){if(null==t)return t;var r=o.getPooled(e,n);_(t,i,r),o.release(r)}function u(t,e,n,r){this.result=t,this.keyPrefix=e,this.func=n,this.context=r,this.count=0}function c(t,e,n){var o=t.result,i=t.keyPrefix,s=t.func,u=t.context,c=s.call(u,e,t.count++);Array.isArray(c)?a(c,o,n,b.thatReturnsArgument):null!=c&&(v.isValidElement(c)&&(c=v.cloneAndReplaceKey(c,i+(!c.key||e&&e.key===c.key?"":r(c.key)+"/")+n)),o.push(c))}function a(t,e,n,o,i){var s,a="";null!=n&&(a=r(n)+"/"),s=u.getPooled(e,a,o,i),_(t,c,s),u.release(s)}function p(t,e,n){if(null==t)return t;var r=[];return a(t,r,null,e,n),r}function l(t,e,n){return null}function f(t,e){return _(t,l,null)}function h(t){var e=[];return a(t,e,null,b.thatReturnsArgument),e}var d,y=n(9),v=n(11),b=n(14),_=n(17),m=y.twoArgumentPooler,g=y.fourArgumentPooler,x=/\/+/g;o.prototype.destructor=function(){this.func=null,this.context=null,this.count=0},y.addPoolingTo(o,m),u.prototype.destructor=function(){this.result=null,this.keyPrefix=null,this.func=null,this.context=null,this.count=0},y.addPoolingTo(u,g),d={forEach:s,map:p,mapIntoWithKeyPrefixInternal:a,count:f,toArray:h},t.exports=d},function(t,e,n){"use strict";var r=n(10),o=(n(4),function(t){var e,n=this;return n.instancePool.length?(e=n.instancePool.pop(),n.call(e,t),e):new n(t)}),i=function(t,e){var n,r=this;return r.instancePool.length?(n=r.instancePool.pop(),r.call(n,t,e),n):new r(t,e)},s=function(t,e,n){var r,o=this;return o.instancePool.length?(r=o.instancePool.pop(),o.call(r,t,e,n),r):new o(t,e,n)},u=function(t,e,n,r){var o,i=this;return i.instancePool.length?(o=i.instancePool.pop(),i.call(o,t,e,n,r),o):new i(t,e,n,r)},c=function(t,e,n,r,o){var i,s=this;return s.instancePool.length?(i=s.instancePool.pop(),s.call(i,t,e,n,r,o),i):new s(t,e,n,r,o)},a=function(t){var e=this;t instanceof e?void 0:r("25"),t.destructor(),e.instancePool.length<e.poolSize&&e.instancePool.push(t)},p=10,l=o,f=function(t,e){var n=t;return n.instancePool=[],n.getPooled=e||l,n.poolSize||(n.poolSize=p),n.release=a,n},h={addPoolingTo:f,oneArgumentPooler:o,twoArgumentPooler:i,threeArgumentPooler:s,fourArgumentPooler:u,fiveArgumentPooler:c};t.exports=h},function(t,e){"use strict";function n(t){var e,n,r=arguments.length-1,o="Minified React error #"+t+"; visit http://facebook.github.io/react/docs/error-decoder.html?invariant="+t;for(e=0;e<r;e++)o+="&args[]="+encodeURIComponent(arguments[e+1]);throw o+=" for the full message or use the non-minified dev environment for full errors and additional helpful warnings.",n=new Error(o),n.name="Invariant Violation",n.framesToPop=1,n}t.exports=n},function(t,e,n){"use strict";function r(t){return void 0!==t.ref}function o(t){return void 0!==t.key}var i=n(7),s=n(12),u=(n(13),n(15),Object.prototype.hasOwnProperty),c=n(16),a={key:!0,ref:!0,__self:!0,__source:!0},p=function(t,e,n,r,o,i,s){var u={$$typeof:c,type:t,key:e,ref:n,props:s,_owner:i};return u};p.createElement=function(t,e,n){var i,c,l,f,h,d={},y=null,v=null,b=null,_=null;if(null!=e){r(e)&&(v=e.ref),o(e)&&(y=""+e.key),b=void 0===e.__self?null:e.__self,_=void 0===e.__source?null:e.__source;for(i in e)u.call(e,i)&&!a.hasOwnProperty(i)&&(d[i]=e[i])}if(c=arguments.length-2,1===c)d.children=n;else if(c>1){for(l=Array(c),f=0;f<c;f++)l[f]=arguments[f+2];d.children=l}if(t&&t.defaultProps){h=t.defaultProps;for(i in h)void 0===d[i]&&(d[i]=h[i])}return p(t,y,v,b,_,s.current,d)},p.createFactory=function(t){var e=p.createElement.bind(null,t);return e.type=t,e},p.cloneAndReplaceKey=function(t,e){var n=p(t.type,e,t.ref,t._self,t._source,t._owner,t.props);return n},p.cloneElement=function(t,e,n){var c,l,f,h,d,y=i({},t.props),v=t.key,b=t.ref,_=t._self,m=t._source,g=t._owner;if(null!=e){r(e)&&(b=e.ref,g=s.current),o(e)&&(v=""+e.key),t.type&&t.type.defaultProps&&(l=t.type.defaultProps);for(c in e)u.call(e,c)&&!a.hasOwnProperty(c)&&(void 0===e[c]&&void 0!==l?y[c]=l[c]:y[c]=e[c])}if(f=arguments.length-2,1===f)y.children=n;else if(f>1){for(h=Array(f),d=0;d<f;d++)h[d]=arguments[d+2];y.children=h}return p(t.type,v,b,_,m,g,y)},p.isValidElement=function(t){return"object"==typeof t&&null!==t&&t.$$typeof===c},t.exports=p},function(t,e){"use strict";var n={current:null};t.exports=n},function(t,e,n){"use strict";var r=n(14),o=r;t.exports=o},function(t,e){"use strict";function n(t){return function(){return t}}var r=function(){};r.thatReturns=n,r.thatReturnsFalse=n(!1),r.thatReturnsTrue=n(!0),r.thatReturnsNull=n(null),r.thatReturnsThis=function(){return this},r.thatReturnsArgument=function(t){return t},t.exports=r},function(t,e,n){"use strict";var r=!1;t.exports=r},function(t,e){"use strict";var n="function"==typeof Symbol&&Symbol.for&&Symbol.for("react.element")||60103;t.exports=n},function(t,e,n){"use strict";function r(t,e){return t&&"object"==typeof t&&null!=t.key?a.escape(t.key):e.toString(36)}function o(t,e,n,i){var f,h,d,y,v,b,_,m,g,x,E,w,S=typeof t;if("undefined"!==S&&"boolean"!==S||(t=null),null===t||"string"===S||"number"===S||"object"===S&&t.$$typeof===u)return n(i,t,""===e?p+r(t,0):e),1;if(d=0,y=""===e?p:e+l,Array.isArray(t))for(v=0;v<t.length;v++)f=t[v],h=y+r(f,v),d+=o(f,h,n,i);else if(b=c(t))if(_=b.call(t),b!==t.entries)for(g=0;!(m=_.next()).done;)f=m.value,h=y+r(f,g++),d+=o(f,h,n,i);else for(;!(m=_.next()).done;)x=m.value,x&&(f=x[1],h=y+a.escape(x[0])+l+r(f,0),d+=o(f,h,n,i));else"object"===S&&(E="",w=String(t),s("31","[object Object]"===w?"object with keys {"+Object.keys(t).join(", ")+"}":w,E));return d}function i(t,e,n){return null==t?0:o(t,"",e,n)}var s=n(10),u=(n(12),n(16)),c=n(18),a=(n(4),n(19)),p=(n(13),"."),l=":";t.exports=i},function(t,e){"use strict";function n(t){var e=t&&(r&&t[r]||t[o]);if("function"==typeof e)return e}var r="function"==typeof Symbol&&Symbol.iterator,o="@@iterator";t.exports=n},function(t,e){"use strict";function n(t){var e=/[=:]/g,n={"=":"=0",":":"=2"},r=(""+t).replace(e,function(t){return n[t]});return"$"+r}function r(t){var e=/(=0|=2)/g,n={"=0":"=","=2":":"},r="."===t[0]&&"$"===t[1]?t.substring(2):t.substring(1);return(""+r).replace(e,function(t){return n[t]})}var o={escape:n,unescape:r};t.exports=o},function(t,e,n){"use strict";function r(t,e,n){this.props=t,this.context=e,this.refs=s,this.updater=n||i}var o=n(10),i=n(21),s=(n(15),n(22));n(4),n(13);r.prototype.isReactComponent={},r.prototype.setState=function(t,e){"object"!=typeof t&&"function"!=typeof t&&null!=t?o("85"):void 0,this.updater.enqueueSetState(this,t),e&&this.updater.enqueueCallback(this,e,"setState")},r.prototype.forceUpdate=function(t){this.updater.enqueueForceUpdate(this),t&&this.updater.enqueueCallback(this,t,"forceUpdate")},t.exports=r},function(t,e,n){"use strict";function r(t,e){}var o=(n(13),{isMounted:function(t){return!1},enqueueCallback:function(t,e){},enqueueForceUpdate:function(t){r(t,"forceUpdate")},enqueueReplaceState:function(t,e){r(t,"replaceState")},enqueueSetState:function(t,e){r(t,"setState")}});t.exports=o},function(t,e,n){"use strict";var r={};t.exports=r},function(t,e,n){"use strict";function r(t,e,n){this.props=t,this.context=e,this.refs=c,this.updater=n||u}function o(){}var i=n(7),s=n(20),u=n(21),c=n(22);o.prototype=s.prototype,r.prototype=new o,r.prototype.constructor=r,i(r.prototype,s.prototype),r.prototype.isPureReactComponent=!0,t.exports=r},function(t,e,n){"use strict";function r(t){return t}function o(t,e){var n=x.hasOwnProperty(e)?x[e]:null;w.hasOwnProperty(e)&&("OVERRIDE_BASE"!==n?h("73",e):void 0),t&&("DEFINE_MANY"!==n&&"DEFINE_MANY_MERGED"!==n?h("74",e):void 0)}function i(t,e){var n,r,i,s,u,p,l,f,d;if(e){"function"==typeof e?h("75"):void 0,v.isValidElement(e)?h("76"):void 0,n=t.prototype,r=n.__reactAutoBindPairs,e.hasOwnProperty(m)&&E.mixins(t,e.mixins);for(i in e)e.hasOwnProperty(i)&&i!==m&&(s=e[i],u=n.hasOwnProperty(i),o(u,i),E.hasOwnProperty(i)?E[i](t,s):(p=x.hasOwnProperty(i),l="function"==typeof s,f=l&&!p&&!u&&e.autobind!==!1,f?(r.push(i,s),n[i]=s):u?(d=x[i],!p||"DEFINE_MANY_MERGED"!==d&&"DEFINE_MANY"!==d?h("77",d,i):void 0,"DEFINE_MANY_MERGED"===d?n[i]=c(n[i],s):"DEFINE_MANY"===d&&(n[i]=a(n[i],s))):n[i]=s))}}function s(t,e){var n,r,o,i;if(e)for(n in e)r=e[n],e.hasOwnProperty(n)&&(o=n in E,o?h("78",n):void 0,i=n in t,i?h("79",n):void 0,t[n]=r)}function u(t,e){t&&e&&"object"==typeof t&&"object"==typeof e?void 0:h("80");for(var n in e)e.hasOwnProperty(n)&&(void 0!==t[n]?h("81",n):void 0,t[n]=e[n]);return t}function c(t,e){return function(){var n,r=t.apply(this,arguments),o=e.apply(this,arguments);return null==r?o:null==o?r:(n={},u(n,r),u(n,o),n)}}function a(t,e){return function(){t.apply(this,arguments),e.apply(this,arguments)}}function p(t,e){var n=e.bind(t);return n}function l(t){var e,n,r,o=t.__reactAutoBindPairs;for(e=0;e<o.length;e+=2)n=o[e],r=o[e+1],t[n]=p(t,r)}var f,h=n(10),d=n(7),y=n(20),v=n(11),b=(n(25),n(21)),_=n(22),m=(n(4),n(13),"mixins"),g=[],x={mixins:"DEFINE_MANY",statics:"DEFINE_MANY",propTypes:"DEFINE_MANY",contextTypes:"DEFINE_MANY",childContextTypes:"DEFINE_MANY",getDefaultProps:"DEFINE_MANY_MERGED",getInitialState:"DEFINE_MANY_MERGED",getChildContext:"DEFINE_MANY_MERGED",render:"DEFINE_ONCE",componentWillMount:"DEFINE_MANY",componentDidMount:"DEFINE_MANY",componentWillReceiveProps:"DEFINE_MANY",shouldComponentUpdate:"DEFINE_ONCE",componentWillUpdate:"DEFINE_MANY",componentDidUpdate:"DEFINE_MANY",componentWillUnmount:"DEFINE_MANY",updateComponent:"OVERRIDE_BASE"},E={displayName:function(t,e){t.displayName=e},mixins:function(t,e){if(e)for(var n=0;n<e.length;n++)i(t,e[n])},childContextTypes:function(t,e){t.childContextTypes=d({},t.childContextTypes,e)},contextTypes:function(t,e){t.contextTypes=d({},t.contextTypes,e)},getDefaultProps:function(t,e){t.getDefaultProps?t.getDefaultProps=c(t.getDefaultProps,e):t.getDefaultProps=e},propTypes:function(t,e){t.propTypes=d({},t.propTypes,e)},statics:function(t,e){s(t,e)},autobind:function(){}},w={replaceState:function(t,e){this.updater.enqueueReplaceState(this,t),e&&this.updater.enqueueCallback(this,e,"replaceState")},isMounted:function(){return this.updater.isMounted(this)}},S=function(){};d(S.prototype,y.prototype,w),f={createClass:function(t){var e,n=r(function(t,e,r){this.__reactAutoBindPairs.length&&l(this),this.props=t,this.context=e,this.refs=_,this.updater=r||b,this.state=null;var o=this.getInitialState?this.getInitialState():null;"object"!=typeof o||Array.isArray(o)?h("82",n.displayName||"ReactCompositeComponent"):void 0,this.state=o});n.prototype=new S,n.prototype.constructor=n,n.prototype.__reactAutoBindPairs=[],g.forEach(i.bind(null,n)),i(n,t),n.getDefaultProps&&(n.defaultProps=n.getDefaultProps()),n.prototype.render?void 0:h("83");for(e in x)n.prototype[e]||(n.prototype[e]=null);return n},injection:{injectMixin:function(t){g.push(t)}}},t.exports=f},function(t,e,n){"use strict";var r={};t.exports=r},function(t,e,n){"use strict";var r,o=n(11),i=o.createFactory;r={a:i("a"),abbr:i("abbr"),address:i("address"),area:i("area"),article:i("article"),aside:i("aside"),audio:i("audio"),b:i("b"),base:i("base"),bdi:i("bdi"),bdo:i("bdo"),big:i("big"),blockquote:i("blockquote"),body:i("body"),br:i("br"),button:i("button"),canvas:i("canvas"),caption:i("caption"),cite:i("cite"),code:i("code"),col:i("col"),colgroup:i("colgroup"),data:i("data"),datalist:i("datalist"),dd:i("dd"),del:i("del"),details:i("details"),dfn:i("dfn"),dialog:i("dialog"),div:i("div"),dl:i("dl"),dt:i("dt"),em:i("em"),embed:i("embed"),fieldset:i("fieldset"),figcaption:i("figcaption"),figure:i("figure"),footer:i("footer"),form:i("form"),h1:i("h1"),h2:i("h2"),h3:i("h3"),h4:i("h4"),h5:i("h5"),h6:i("h6"),head:i("head"),header:i("header"),hgroup:i("hgroup"),hr:i("hr"),html:i("html"),i:i("i"),iframe:i("iframe"),img:i("img"),input:i("input"),ins:i("ins"),kbd:i("kbd"),keygen:i("keygen"),label:i("label"),legend:i("legend"),li:i("li"),link:i("link"),main:i("main"),map:i("map"),mark:i("mark"),menu:i("menu"),menuitem:i("menuitem"),meta:i("meta"),meter:i("meter"),nav:i("nav"),noscript:i("noscript"),object:i("object"),ol:i("ol"),optgroup:i("optgroup"),option:i("option"),output:i("output"),p:i("p"),param:i("param"),picture:i("picture"),pre:i("pre"),progress:i("progress"),q:i("q"),rp:i("rp"),rt:i("rt"),ruby:i("ruby"),s:i("s"),samp:i("samp"),script:i("script"),section:i("section"),select:i("select"),small:i("small"),source:i("source"),span:i("span"),strong:i("strong"),style:i("style"),sub:i("sub"),summary:i("summary"),sup:i("sup"),table:i("table"),tbody:i("tbody"),td:i("td"),textarea:i("textarea"),tfoot:i("tfoot"),th:i("th"),thead:i("thead"),time:i("time"),title:i("title"),tr:i("tr"),track:i("track"),u:i("u"),ul:i("ul"),var:i("var"),video:i("video"),wbr:i("wbr"),circle:i("circle"),clipPath:i("clipPath"),defs:i("defs"),ellipse:i("ellipse"),g:i("g"),image:i("image"),line:i("line"),linearGradient:i("linearGradient"),mask:i("mask"),path:i("path"),pattern:i("pattern"),polygon:i("polygon"),polyline:i("polyline"),radialGradient:i("radialGradient"),rect:i("rect"),stop:i("stop"),svg:i("svg"),text:i("text"),tspan:i("tspan")},t.exports=r},function(t,e,n){"use strict";function r(t,e){return t===e?0!==t||1/t===1/e:t!==t&&e!==e}function o(t){this.message=t,this.stack=""}function i(t){function e(e,n,r,i,s,u,c){var a;return i=i||O,u=u||r,null==n[r]?(a=E[s],e?new o(null===n[r]?"The "+a+" `"+u+"` is marked as required "+("in `"+i+"`, but its value is `null`."):"The "+a+" `"+u+"` is marked as required in "+("`"+i+"`, but its value is `undefined`.")):null):t(n,r,i,s,u)}var n;return n=e.bind(null,!1),n.isRequired=e.bind(null,!0),n}function s(t){function e(e,n,r,i,s,u){var c,a,p=e[n],l=_(p);return l!==t?(c=E[i],a=m(p),new o("Invalid "+c+" `"+s+"` of type "+("`"+a+"` supplied to `"+r+"`, expected ")+("`"+t+"`."))):null}return i(e)}function u(){return i(S.thatReturns(null))}function c(t){function e(e,n,r,i,s){var u,c,a,p,l;if("function"!=typeof t)return new o("Property `"+s+"` of component `"+r+"` has invalid PropType notation inside arrayOf.");if(u=e[n],!Array.isArray(u))return c=E[i],a=_(u),new o("Invalid "+c+" `"+s+"` of type "+("`"+a+"` supplied to `"+r+"`, expected an array."));for(p=0;p<u.length;p++)if(l=t(u,p,r,i,s+"["+p+"]",w),l instanceof Error)return l;return null}return i(e)}function a(){function t(t,e,n,r,i){var s,u,c=t[e];return x.isValidElement(c)?null:(s=E[r],u=_(c),new o("Invalid "+s+" `"+i+"` of type "+("`"+u+"` supplied to `"+n+"`, expected a single ReactElement.")))}return i(t)}function p(t){function e(e,n,r,i,s){var u,c,a;return e[n]instanceof t?null:(u=E[i],c=t.name||O,a=g(e[n]),new o("Invalid "+u+" `"+s+"` of type "+("`"+a+"` supplied to `"+r+"`, expected ")+("instance of `"+c+"`.")))}return i(e)}function l(t){function e(e,n,i,s,u){var c,a,p,l=e[n];for(c=0;c<t.length;c++)if(r(l,t[c]))return null;return a=E[s],p=JSON.stringify(t),new o("Invalid "+a+" `"+u+"` of value `"+l+"` "+("supplied to `"+i+"`, expected one of "+p+"."))}return Array.isArray(t)?i(e):S.thatReturnsNull}function f(t){function e(e,n,r,i,s){var u,c,a,p,l;if("function"!=typeof t)return new o("Property `"+s+"` of component `"+r+"` has invalid PropType notation inside objectOf.");if(u=e[n],c=_(u),"object"!==c)return a=E[i],new o("Invalid "+a+" `"+s+"` of type "+("`"+c+"` supplied to `"+r+"`, expected an object."));for(p in u)if(u.hasOwnProperty(p)&&(l=t(u,p,r,i,s+"."+p,w),l instanceof Error))return l;return null}return i(e)}function h(t){function e(e,n,r,i,s){var u,c,a;for(u=0;u<t.length;u++)if(c=t[u],null==c(e,n,r,i,s,w))return null;return a=E[i],new o("Invalid "+a+" `"+s+"` supplied to "+("`"+r+"`."))}return Array.isArray(t)?i(e):S.thatReturnsNull}function d(){function t(t,e,n,r,i){if(!v(t[e])){var s=E[r];return new o("Invalid "+s+" `"+i+"` supplied to "+("`"+n+"`, expected a ReactNode."))}return null}return i(t)}function y(t){function e(e,n,r,i,s){var u,c,a,p,l=e[n],f=_(l);if("object"!==f)return u=E[i],new o("Invalid "+u+" `"+s+"` of type `"+f+"` "+("supplied to `"+r+"`, expected `object`."));for(c in t)if(a=t[c],a&&(p=a(l,c,r,i,s+"."+c,w)))return p;return null}return i(e)}function v(t){var e,n,r,o;switch(typeof t){case"number":case"string":case"undefined":return!0;case"boolean":return!t;case"object":if(Array.isArray(t))return t.every(v);if(null===t||x.isValidElement(t))return!0;if(e=P(t),!e)return!1;if(n=e.call(t),e!==t.entries){for(;!(r=n.next()).done;)if(!v(r.value))return!1}else for(;!(r=n.next()).done;)if(o=r.value,o&&!v(o[1]))return!1;return!0;default:return!1}}function b(t,e){return"symbol"===t||("Symbol"===e["@@toStringTag"]||"function"==typeof Symbol&&e instanceof Symbol)}function _(t){var e=typeof t;return Array.isArray(t)?"array":t instanceof RegExp?"object":b(e,t)?"symbol":e}function m(t){var e=_(t);if("object"===e){if(t instanceof Date)return"date";if(t instanceof RegExp)return"regexp"}return e}function g(t){return t.constructor&&t.constructor.name?t.constructor.name:O}var x=n(11),E=n(25),w=n(28),S=n(14),P=n(18),O=(n(13),"<<anonymous>>"),k={array:s("array"),bool:s("boolean"),func:s("function"),number:s("number"),object:s("object"),string:s("string"),symbol:s("symbol"),any:u(),arrayOf:c,element:a(),instanceOf:p,node:d(),objectOf:f,oneOf:l,oneOfType:h,shape:y};o.prototype=Error.prototype,t.exports=k},function(t,e){"use strict";var n="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED";t.exports=n},function(t,e){"use strict";t.exports="15.4.1"},function(t,e,n){"use strict";function r(t){return i.isValidElement(t)?void 0:o("143"),t}var o=n(10),i=n(11);n(4);t.exports=r},function(t,e){"use strict";function n(t,e){return t===e?0!==t||0!==e||1/t===1/e:t!==t&&e!==e}function r(t,e){var r,i,s;if(n(t,e))return!0;if("object"!=typeof t||null===t||"object"!=typeof e||null===e)return!1;if(r=Object.keys(t),i=Object.keys(e),r.length!==i.length)return!1;for(s=0;s<r.length;s++)if(!o.call(e,r[s])||!n(t[r[s]],e[r[s]]))return!1;return!0}var o=Object.prototype.hasOwnProperty;t.exports=r},function(t,e,n){"use strict";function r(t){var e=arguments.length<=1||void 0===arguments[1]?{withProps:!1}:arguments[1];return t=t.filter(function(t){return!!t}),{getInitialState:function(){return o(this),e.withProps?this.constructor.calculateState(null,this.props):this.constructor.calculateState(null,void 0)},componentWillMount:function(){var n,r=this,o=!1,s=function(){o=!0};this._fluxMixinSubscriptions=t.map(function(t){return t.addListener(s)}),n=function(){o&&r.setState(function(t){return e.withProps?r.constructor.calculateState(t,r.props):r.constructor.calculateState(t,void 0)}),o=!1},this._fluxMixinStoreGroup=new i(t,n)},componentWillUnmount:function(){var t,e,n,r,o;for(this._fluxMixinStoreGroup.release(),t=this._fluxMixinSubscriptions,e=Array.isArray(t),n=0,t=e?t:t[Symbol.iterator]();;){if(e){if(n>=t.length)break;r=t[n++]}else{if(n=t.next(),n.done)break;r=n.value}o=r,o.remove()}this._fluxMixinSubscriptions=[]}}}function o(t){t.constructor.calculateState?void 0:s(!1)}var i=n(3),s=n(4);t.exports=r},function(t,e,n){"use strict";function r(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function o(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}var i=n(34),s=n(40),u=n(4),c=function(t){function e(n){r(this,e),t.call(this,n),this._state=this.getInitialState()}return o(e,t),e.prototype.getState=function(){return this._state},e.prototype.getInitialState=function(){return s("FluxReduceStore","getInitialState")},e.prototype.reduce=function(t,e){return s("FluxReduceStore","reduce")},e.prototype.areEqual=function(t,e){return t===e},e.prototype.__invokeOnDispatch=function(t){var e,n;this.__changed=!1,e=this._state,n=this.reduce(e,t),void 0===n?u(!1):void 0,this.areEqual(e,n)||(this._state=n,this.__emitChange()),this.__changed&&this.__emitter.emit(this.__changeEvent)},e}(i);t.exports=c},function(t,e,n){"use strict";function r(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}var o=n(35),i=o.EventEmitter,s=n(4),u=function(){function t(e){var n=this;r(this,t),this.__className=this.constructor.name,this.__changed=!1,this.__changeEvent="change",this.__dispatcher=e,this.__emitter=new i,this._dispatchToken=e.register(function(t){n.__invokeOnDispatch(t)})}return t.prototype.addListener=function(t){return this.__emitter.addListener(this.__changeEvent,t)},t.prototype.getDispatcher=function(){return this.__dispatcher},t.prototype.getDispatchToken=function(){return this._dispatchToken},t.prototype.hasChanged=function(){return this.__dispatcher.isDispatching()?void 0:s(!1),this.__changed},t.prototype.__emitChange=function(){this.__dispatcher.isDispatching()?void 0:s(!1),this.__changed=!0},t.prototype.__invokeOnDispatch=function(t){this.__changed=!1,this.__onDispatch(t),this.__changed&&this.__emitter.emit(this.__changeEvent)},t.prototype.__onDispatch=function(t){s(!1)},t}();t.exports=u},function(t,e,n){"use strict";var r={EventEmitter:n(36),EmitterSubscription:n(37)};t.exports=r},function(t,e,n){"use strict";function r(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}var o=n(37),i=n(39),s=n(14),u=n(4),c=function(){function t(){r(this,t),this._subscriber=new i,this._currentSubscription=null}return t.prototype.addListener=function(t,e,n){return this._subscriber.addSubscription(t,new o(this._subscriber,e,n))},t.prototype.once=function(t,e,n){var r=this;return this.addListener(t,function(){r.removeCurrentListener(),e.apply(n,arguments)})},t.prototype.removeAllListeners=function(t){this._subscriber.removeAllSubscriptions(t)},t.prototype.removeCurrentListener=function(){this._currentSubscription?void 0:u(!1),this._subscriber.removeSubscription(this._currentSubscription)},t.prototype.listeners=function(t){var e=this._subscriber.getSubscriptionsForType(t);return e?e.filter(s.thatReturnsTrue).map(function(t){return t.listener}):[]},t.prototype.emit=function(t){var e,n,r,o,i=this._subscriber.getSubscriptionsForType(t);if(i){for(e=Object.keys(i),n=0;n<e.length;n++)r=e[n],o=i[r],o&&(this._currentSubscription=o,this.__emitToSubscription.apply(this,[o].concat(Array.prototype.slice.call(arguments))));this._currentSubscription=null}},t.prototype.__emitToSubscription=function(t,e){var n=Array.prototype.slice.call(arguments,2);t.listener.apply(t.context,n)},t}();t.exports=c},function(t,e,n){"use strict";function r(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function o(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}var i=n(38),s=function(t){function e(n,o,i){r(this,e),t.call(this,n),this.listener=o,this.context=i}return o(e,t),e}(i);t.exports=s},function(t,e){"use strict";function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}var r=function(){function t(e){n(this,t),this.subscriber=e}return t.prototype.remove=function(){this.subscriber&&(this.subscriber.removeSubscription(this),this.subscriber=null)},t}();t.exports=r},function(t,e,n){"use strict";function r(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}var o=n(4),i=function(){function t(){r(this,t),this._subscriptionsForType={},this._currentSubscription=null}return t.prototype.addSubscription=function(t,e){e.subscriber!==this?o(!1):void 0,this._subscriptionsForType[t]||(this._subscriptionsForType[t]=[]);var n=this._subscriptionsForType[t].length;return this._subscriptionsForType[t].push(e),e.eventType=t,e.key=n,e},t.prototype.removeAllSubscriptions=function(t){void 0===t?this._subscriptionsForType={}:delete this._subscriptionsForType[t]},t.prototype.removeSubscription=function(t){var e=t.eventType,n=t.key,r=this._subscriptionsForType[e];r&&delete r[n]},t.prototype.getSubscriptionsForType=function(t){return this._subscriptionsForType[t]},t}();t.exports=i},function(t,e,n){"use strict";function r(t,e){o(!1)}var o=n(4);t.exports=r}])}); | ||
!function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e():"function"==typeof define&&define.amd?define([],e):"object"==typeof exports?exports.FluxUtils=e():t.FluxUtils=e()}(this,function(){return function(t){function e(r){if(n[r])return n[r].exports;var o=n[r]={exports:{},id:r,loaded:!1};return t[r].call(o.exports,o,o.exports,e),o.loaded=!0,o.exports}var n={};return e.m=t,e.c=n,e.p="",e(0)}([function(t,e,n){t.exports.Container=n(1),t.exports.Mixin=n(9),t.exports.ReduceStore=n(10),t.exports.Store=n(11)},function(t,e,n){"use strict";function r(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}function o(t,e){t.prototype=Object.create(e.prototype),t.prototype.constructor=t,t.__proto__=e}function i(t,e){var n,r=Object.keys(t);return Object.getOwnPropertySymbols&&(n=Object.getOwnPropertySymbols(t),e&&(n=n.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),r.push.apply(r,n)),r}function u(t){var e,n;for(e=1;e<arguments.length;e++)n=null!=arguments[e]?arguments[e]:{},e%2?i(Object(n),!0).forEach(function(e){s(t,e,n[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):i(Object(n)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))});return t}function s(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function c(t,e){var n,i,c,p,h,d;return f(t),n=u(u({},b),e||{}),i=function(e,r,o){var i=n.withProps?r:void 0,u=n.withContext?o:void 0;return t.calculateState(e,i,u)},c=function(e,r){var o=n.withProps?e:void 0,i=n.withContext?r:void 0;return t.getStores(o,i)},p=function(t){function e(e,n){var o,a=t.call(this,e,n)||this;return s(r(a),"_fluxContainerSubscriptions",void 0),a._fluxContainerSubscriptions=new l,a._fluxContainerSubscriptions.setStores(c(e,n)),a._fluxContainerSubscriptions.addListener(function(){a.setState(function(t,e){return i(t,e,n)})}),o=i(void 0,e,n),a.state=u(u({},a.state||{}),o),a}o(e,t);var a=e.prototype;return a.UNSAFE_componentWillReceiveProps=function(e,r){t.prototype.componentWillReceiveProps&&t.prototype.componentWillReceiveProps.call(this,e,r),(n.withProps||n.withContext)&&(this._fluxContainerSubscriptions.setStores(c(e,r)),this.setState(function(t){return i(t,e,r)}))},a.componentWillUnmount=function(){t.prototype.componentWillUnmount&&t.prototype.componentWillUnmount.call(this),this._fluxContainerSubscriptions.reset()},e}(t),h=n.pure?a(p):p,d=t.displayName||t.name,h.displayName="FluxContainer("+d+")",h}function a(t){var e=function(t){function e(){return t.apply(this,arguments)||this}o(e,t);var n=e.prototype;return n.shouldComponentUpdate=function(t,e){return!y(this.props,t)||!y(this.state,e)},e}(t);return e}function f(t){t.getStores?void 0:d(!1),t.calculateState?void 0:d(!1)}function p(t,e,n,i){var u=function(i){function u(){var t,e,n,o;for(e=arguments.length,n=new Array(e),o=0;o<e;o++)n[o]=arguments[o];return t=i.call.apply(i,[this].concat(n))||this,s(r(t),"state",void 0),t}o(u,i),u.getStores=function(t,n){return e(t,n)},u.calculateState=function(t,e,r){return n(t,e,r)};var c=u.prototype;return c.render=function(){return t(this.state)},u}(_),a=t.displayName||t.name||"FunctionalContainer";return u.displayName=a,c(u,i)}var l=n(2),h=n(5),d=n(4),y=n(8),_=h.Component,b={pure:!0,withProps:!1,withContext:!1};t.exports={create:c,createFunctional:p}},function(t,e,n){"use strict";function r(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function o(t,e){if(t===e)return!0;if(t.length!==e.length)return!1;for(var n=0;n<t.length;n++)if(t[n]!==e[n])return!1;return!0}var i=n(3),u=function(){function t(){r(this,"_callbacks",void 0),r(this,"_storeGroup",void 0),r(this,"_stores",void 0),r(this,"_tokens",void 0),this._callbacks=[]}var e=t.prototype;return e.setStores=function(t){var e,n,r,u,s=this;this._stores&&o(this._stores,t)||(this._stores=t,this._resetTokens(),this._resetStoreGroup(),e=!1,n=[],r=function(){e=!0},this._tokens=t.map(function(t){return t.addListener(r)}),u=function(){e&&(s._callbacks.forEach(function(t){return t()}),e=!1)},this._storeGroup=new i(t,u))},e.addListener=function(t){this._callbacks.push(t)},e.reset=function(){this._resetTokens(),this._resetStoreGroup(),this._resetCallbacks(),this._resetStores()},e._resetTokens=function(){this._tokens&&(this._tokens.forEach(function(t){return t.remove()}),this._tokens=null)},e._resetStoreGroup=function(){this._storeGroup&&(this._storeGroup.release(),this._storeGroup=null)},e._resetStores=function(){this._stores=null},e._resetCallbacks=function(){this._callbacks=[]},t}();t.exports=u},function(t,e,n){"use strict";function r(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function o(t){var e;return t&&t.length?void 0:i(!1),e=t[0].getDispatcher()}var i=n(4),u=function(){function t(t,e){var n,i=this;r(this,"_dispatcher",void 0),r(this,"_dispatchToken",void 0),this._dispatcher=o(t),n=t.map(function(t){return t.getDispatchToken()}),this._dispatchToken=this._dispatcher.register(function(t){i._dispatcher.waitFor(n),e()})}var e=t.prototype;return e.release=function(){this._dispatcher.unregister(this._dispatchToken)},t}();t.exports=u},function(t,e,n){"use strict";function r(t,e){var n,r,i,u,s;for(n=arguments.length,r=new Array(n>2?n-2:0),i=2;i<n;i++)r[i-2]=arguments[i];if(o(e),!t)throw void 0===e?u=new Error("Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings."):(s=0,u=new Error(e.replace(/%s/g,function(){return String(r[s++])})),u.name="Invariant Violation"),u.framesToPop=1,u}var o=function(t){};t.exports=r},function(t,e,n){"use strict";t.exports=n(6)},function(t,e,n){/** @license React v17.0.1 | ||
* react.production.min.js | ||
* | ||
* Copyright (c) Facebook, Inc. and its affiliates. | ||
* | ||
* This source code is licensed under the MIT license found in the | ||
* LICENSE file in the root directory of this source tree. | ||
*/ | ||
"use strict";function r(t){return null===t||"object"!=typeof t?null:(t=x&&t[x]||t["@@iterator"],"function"==typeof t?t:null)}function o(t){for(var e="https://reactjs.org/docs/error-decoder.html?invariant="+t,n=1;n<arguments.length;n++)e+="&args[]="+encodeURIComponent(arguments[n]);return"Minified React error #"+t+"; visit "+e+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}function i(t,e,n){this.props=t,this.context=e,this.refs=j,this.updater=n||O}function u(){}function s(t,e,n){this.props=t,this.context=e,this.refs=j,this.updater=n||O}function c(t,e,n){var r,o,i,u,s={},c=null,a=null;if(null!=e)for(r in void 0!==e.ref&&(a=e.ref),void 0!==e.key&&(c=""+e.key),e)C.call(e,r)&&!P.hasOwnProperty(r)&&(s[r]=e[r]);if(o=arguments.length-2,1===o)s.children=n;else if(1<o){for(i=Array(o),u=0;u<o;u++)i[u]=arguments[u+2];s.children=i}if(t&&t.defaultProps)for(r in o=t.defaultProps)void 0===s[r]&&(s[r]=o[r]);return{$$typeof:$,type:t,key:c,ref:a,props:s,_owner:E.current}}function a(t,e){return{$$typeof:$,type:t.type,key:e,ref:t.ref,props:t.props,_owner:t._owner}}function f(t){return"object"==typeof t&&null!==t&&t.$$typeof===$}function p(t){var e={"=":"=0",":":"=2"};return"$"+t.replace(/[=:]/g,function(t){return e[t]})}function l(t,e){return"object"==typeof t&&null!==t&&null!=t.key?p(""+t.key):e.toString(36)}function h(t,e,n,i,u){var s,c,p,d=typeof t;if("undefined"!==d&&"boolean"!==d||(t=null),s=!1,null===t)s=!0;else switch(d){case"string":case"number":s=!0;break;case"object":switch(t.$$typeof){case $:case D:s=!0}}if(s)return s=t,u=u(s),t=""===i?"."+l(s,0):i,Array.isArray(u)?(n="",null!=t&&(n=t.replace(T,"$&/")+"/"),h(u,e,n,"",function(t){return t})):null!=u&&(f(u)&&(u=a(u,n+(!u.key||s&&s.key===u.key?"":(""+u.key).replace(T,"$&/")+"/")+t)),e.push(u)),1;if(s=0,i=""===i?".":i+":",Array.isArray(t))for(c=0;c<t.length;c++)d=t[c],p=i+l(d,c),s+=h(d,e,n,p,u);else if(p=r(t),"function"==typeof p)for(t=p.call(t),c=0;!(d=t.next()).done;)d=d.value,p=i+l(d,c++),s+=h(d,e,n,p,u);else if("object"===d)throw e=""+t,Error(o(31,"[object Object]"===e?"object with keys {"+Object.keys(t).join(", ")+"}":e));return s}function d(t,e,n){if(null==t)return t;var r=[],o=0;return h(t,r,"","",function(t){return e.call(n,t,o++)}),r}function y(t){if(-1===t._status){var e=t._result;e=e(),t._status=0,t._result=e,e.then(function(e){0===t._status&&(e=e.default,t._status=1,t._result=e)},function(e){0===t._status&&(t._status=2,t._result=e)})}if(1===t._status)return t._result;throw t._result}function _(){var t=R.current;if(null===t)throw Error(o(321));return t}var b,v,m,g,S,w,x,O,j,k,E,C,P,T,R,F,A=n(7),$=60103,D=60106;e.Fragment=60107,e.StrictMode=60108,e.Profiler=60114,b=60109,v=60110,m=60112,e.Suspense=60113,g=60115,S=60116,"function"==typeof Symbol&&Symbol.for&&(w=Symbol.for,$=w("react.element"),D=w("react.portal"),e.Fragment=w("react.fragment"),e.StrictMode=w("react.strict_mode"),e.Profiler=w("react.profiler"),b=w("react.provider"),v=w("react.context"),m=w("react.forward_ref"),e.Suspense=w("react.suspense"),g=w("react.memo"),S=w("react.lazy")),x="function"==typeof Symbol&&Symbol.iterator,O={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},j={},i.prototype.isReactComponent={},i.prototype.setState=function(t,e){if("object"!=typeof t&&"function"!=typeof t&&null!=t)throw Error(o(85));this.updater.enqueueSetState(this,t,e,"setState")},i.prototype.forceUpdate=function(t){this.updater.enqueueForceUpdate(this,t,"forceUpdate")},u.prototype=i.prototype,k=s.prototype=new u,k.constructor=s,A(k,i.prototype),k.isPureReactComponent=!0,E={current:null},C=Object.prototype.hasOwnProperty,P={key:!0,ref:!0,__self:!0,__source:!0},T=/\/+/g,R={current:null},F={ReactCurrentDispatcher:R,ReactCurrentBatchConfig:{transition:0},ReactCurrentOwner:E,IsSomeRendererActing:{current:!1},assign:A},e.Children={map:d,forEach:function(t,e,n){d(t,function(){e.apply(this,arguments)},n)},count:function(t){var e=0;return d(t,function(){e++}),e},toArray:function(t){return d(t,function(t){return t})||[]},only:function(t){if(!f(t))throw Error(o(143));return t}},e.Component=i,e.PureComponent=s,e.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=F,e.cloneElement=function(t,e,n){var r,i,u,s,c,a,f;if(null===t||void 0===t)throw Error(o(267,t));if(r=A({},t.props),i=t.key,u=t.ref,s=t._owner,null!=e){void 0!==e.ref&&(u=e.ref,s=E.current),void 0!==e.key&&(i=""+e.key),t.type&&t.type.defaultProps&&(c=t.type.defaultProps);for(a in e)C.call(e,a)&&!P.hasOwnProperty(a)&&(r[a]=void 0===e[a]&&void 0!==c?c[a]:e[a])}if(a=arguments.length-2,1===a)r.children=n;else if(1<a){for(c=Array(a),f=0;f<a;f++)c[f]=arguments[f+2];r.children=c}return{$$typeof:$,type:t.type,key:i,ref:u,props:r,_owner:s}},e.createContext=function(t,e){return void 0===e&&(e=null),t={$$typeof:v,_calculateChangedBits:e,_currentValue:t,_currentValue2:t,_threadCount:0,Provider:null,Consumer:null},t.Provider={$$typeof:b,_context:t},t.Consumer=t},e.createElement=c,e.createFactory=function(t){var e=c.bind(null,t);return e.type=t,e},e.createRef=function(){return{current:null}},e.forwardRef=function(t){return{$$typeof:m,render:t}},e.isValidElement=f,e.lazy=function(t){return{$$typeof:S,_payload:{_status:-1,_result:t},_init:y}},e.memo=function(t,e){return{$$typeof:g,type:t,compare:void 0===e?null:e}},e.useCallback=function(t,e){return _().useCallback(t,e)},e.useContext=function(t,e){return _().useContext(t,e)},e.useDebugValue=function(){},e.useEffect=function(t,e){return _().useEffect(t,e)},e.useImperativeHandle=function(t,e,n){return _().useImperativeHandle(t,e,n)},e.useLayoutEffect=function(t,e){return _().useLayoutEffect(t,e)},e.useMemo=function(t,e){return _().useMemo(t,e)},e.useReducer=function(t,e,n){return _().useReducer(t,e,n)},e.useRef=function(t){return _().useRef(t)},e.useState=function(t){return _().useState(t)},e.version="17.0.1"},function(t,e){/* | ||
object-assign | ||
(c) Sindre Sorhus | ||
@license MIT | ||
*/ | ||
"use strict";function n(t){if(null===t||void 0===t)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(t)}function r(){var t,e,n,r,o;try{if(!Object.assign)return!1;if(t=new String("abc"),t[5]="de","5"===Object.getOwnPropertyNames(t)[0])return!1;for(e={},n=0;n<10;n++)e["_"+String.fromCharCode(n)]=n;return r=Object.getOwnPropertyNames(e).map(function(t){return e[t]}),"0123456789"===r.join("")&&(o={},"abcdefghijklmnopqrst".split("").forEach(function(t){o[t]=t}),"abcdefghijklmnopqrst"===Object.keys(Object.assign({},o)).join(""))}catch(t){return!1}}var o=Object.getOwnPropertySymbols,i=Object.prototype.hasOwnProperty,u=Object.prototype.propertyIsEnumerable;t.exports=r()?Object.assign:function(t,e){var r,s,c,a,f,p=n(t);for(c=1;c<arguments.length;c++){r=Object(arguments[c]);for(a in r)i.call(r,a)&&(p[a]=r[a]);if(o)for(s=o(r),f=0;f<s.length;f++)u.call(r,s[f])&&(p[s[f]]=r[s[f]])}return p}},function(t,e){"use strict";function n(t,e){return t===e?0!==t||0!==e||1/t===1/e:t!==t&&e!==e}function r(t,e){var r,i,u;if(n(t,e))return!0;if("object"!=typeof t||null===t||"object"!=typeof e||null===e)return!1;if(r=Object.keys(t),i=Object.keys(e),r.length!==i.length)return!1;for(u=0;u<r.length;u++)if(!o.call(e,r[u])||!n(t[r[u]],e[r[u]]))return!1;return!0}var o=Object.prototype.hasOwnProperty;t.exports=r},function(t,e,n){"use strict";function r(t,e){var n,r,i,u,s,c;if("undefined"==typeof Symbol||null==t[Symbol.iterator]){if(Array.isArray(t)||(n=o(t))||e&&t&&"number"==typeof t.length)return n&&(t=n),r=0,i=function(){},{s:i,n:function(){return r>=t.length?{done:!0}:{done:!1,value:t[r++]}},e:function(t){throw t},f:i};throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}return u=!0,s=!1,{s:function(){n=t[Symbol.iterator]()},n:function(){var t=n.next();return u=t.done,t},e:function(t){s=!0,c=t},f:function(){try{u||null==n.return||n.return()}finally{if(s)throw c}}}}function o(t,e){if(t){if("string"==typeof t)return i(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?i(t,e):void 0}}function i(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=new Array(e);n<e;n++)r[n]=t[n];return r}function u(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{withProps:!1};return t=t.filter(function(t){return!!t}),{getInitialState:function(){return s(this),e.withProps?this.constructor.calculateState(null,this.props):this.constructor.calculateState(null,void 0)},componentWillMount:function(){var n,r=this,o=!1,i=function(){o=!0};this._fluxMixinSubscriptions=t.map(function(t){return t.addListener(i)}),n=function(){o&&r.setState(function(t){return e.withProps?r.constructor.calculateState(t,r.props):r.constructor.calculateState(t,void 0)}),o=!1},this._fluxMixinStoreGroup=new c(t,n)},componentWillUnmount:function(){var t,e,n;this._fluxMixinStoreGroup.release(),t=r(this._fluxMixinSubscriptions);try{for(t.s();!(e=t.n()).done;)n=e.value,n.remove()}catch(e){t.e(e)}finally{t.f()}this._fluxMixinSubscriptions=[]}}}function s(t){t.constructor.calculateState?void 0:a(!1)}var c=n(3),a=n(4);t.exports=u},function(t,e,n){"use strict";function r(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}function o(t,e){t.prototype=Object.create(e.prototype),t.prototype.constructor=t,t.__proto__=e}function i(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}var u=n(11),s=n(19),c=n(4),a=function(t){function e(e){var n;return n=t.call(this,e)||this,i(r(n),"_state",void 0),n._state=n.getInitialState(),n}o(e,t);var n=e.prototype;return n.getState=function(){return this._state},n.getInitialState=function(){return s("FluxReduceStore","getInitialState")},n.reduce=function(t,e){return s("FluxReduceStore","reduce")},n.areEqual=function(t,e){return t===e},n.__invokeOnDispatch=function(t){var e,n;this.__changed=!1,e=this._state,n=this.reduce(e,t),void 0===n?c(!1):void 0,this.areEqual(e,n)||(this._state=n,this.__emitChange()),this.__changed&&this.__emitter.emit(this.__changeEvent)},e}(u);t.exports=a},function(t,e,n){"use strict";function r(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}var o=n(12),i=o.EventEmitter,u=n(4),s=function(){function t(t){var e=this;r(this,"_dispatchToken",void 0),r(this,"__changed",void 0),r(this,"__changeEvent",void 0),r(this,"__className",void 0),r(this,"__dispatcher",void 0),r(this,"__emitter",void 0),this.__className=this.constructor.name,this.__changed=!1,this.__changeEvent="change",this.__dispatcher=t,this.__emitter=new i,this._dispatchToken=t.register(function(t){e.__invokeOnDispatch(t)})}var e=t.prototype;return e.addListener=function(t){return this.__emitter.addListener(this.__changeEvent,t)},e.getDispatcher=function(){return this.__dispatcher},e.getDispatchToken=function(){return this._dispatchToken},e.hasChanged=function(){return this.__dispatcher.isDispatching()?void 0:u(!1),this.__changed},e.__emitChange=function(){this.__dispatcher.isDispatching()?void 0:u(!1),this.__changed=!0},e.__invokeOnDispatch=function(t){this.__changed=!1,this.__onDispatch(t),this.__changed&&this.__emitter.emit(this.__changeEvent)},e.__onDispatch=function(t){u(!1)},t}();t.exports=s},function(t,e,n){var r={EventEmitter:n(13),EmitterSubscription:n(14)};t.exports=r},function(t,e,n){"use strict";function r(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}var o=n(14),i=n(16),u=n(18),s=n(17),c=function(){function t(){r(this,t),this._subscriber=new i,this._currentSubscription=null}return t.prototype.addListener=function(t,e,n){return this._subscriber.addSubscription(t,new o(this._subscriber,e,n))},t.prototype.once=function(t,e,n){var r=this;return this.addListener(t,function(){r.removeCurrentListener(),e.apply(n,arguments)})},t.prototype.removeAllListeners=function(t){this._subscriber.removeAllSubscriptions(t)},t.prototype.removeCurrentListener=function(){this._currentSubscription?void 0:s(!1),this._subscriber.removeSubscription(this._currentSubscription)},t.prototype.listeners=function(t){var e=this._subscriber.getSubscriptionsForType(t);return e?e.filter(u.thatReturnsTrue).map(function(t){return t.listener}):[]},t.prototype.emit=function(t){var e,n,r,o,i=this._subscriber.getSubscriptionsForType(t);if(i){for(e=Object.keys(i),n=0;n<e.length;n++)r=e[n],o=i[r],o&&(this._currentSubscription=o,this.__emitToSubscription.apply(this,[o].concat(Array.prototype.slice.call(arguments))));this._currentSubscription=null}},t.prototype.__emitToSubscription=function(t,e){var n=Array.prototype.slice.call(arguments,2);t.listener.apply(t.context,n)},t}();t.exports=c},function(t,e,n){"use strict";function r(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function o(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}var i=n(15),u=function(t){function e(n,o,i){r(this,e),t.call(this,n),this.listener=o,this.context=i}return o(e,t),e}(i);t.exports=u},function(t,e){"use strict";function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}var r=function(){function t(e){n(this,t),this.subscriber=e}return t.prototype.remove=function(){this.subscriber&&(this.subscriber.removeSubscription(this),this.subscriber=null)},t}();t.exports=r},function(t,e,n){"use strict";function r(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}var o=n(17),i=function(){function t(){r(this,t),this._subscriptionsForType={},this._currentSubscription=null}return t.prototype.addSubscription=function(t,e){e.subscriber!==this?o(!1):void 0,this._subscriptionsForType[t]||(this._subscriptionsForType[t]=[]);var n=this._subscriptionsForType[t].length;return this._subscriptionsForType[t].push(e),e.eventType=t,e.key=n,e},t.prototype.removeAllSubscriptions=function(t){void 0===t?this._subscriptionsForType={}:delete this._subscriptionsForType[t]},t.prototype.removeSubscription=function(t){var e=t.eventType,n=t.key,r=this._subscriptionsForType[e];r&&delete r[n]},t.prototype.getSubscriptionsForType=function(t){return this._subscriptionsForType[t]},t}();t.exports=i},function(t,e,n){"use strict";function r(t,e,n,r,i,u,s,c){var a,f,p;if(o(e),!t)throw void 0===e?a=new Error("Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings."):(f=[n,r,i,u,s,c],p=0,a=new Error(e.replace(/%s/g,function(){return f[p++]})),a.name="Invariant Violation"),a.framesToPop=1,a}var o=function(t){};t.exports=r},function(t,e){"use strict";function n(t){return function(){return t}}var r=function(){};r.thatReturns=n,r.thatReturnsFalse=n(!1),r.thatReturnsTrue=n(!0),r.thatReturnsNull=n(null),r.thatReturnsThis=function(){return this},r.thatReturnsArgument=function(t){return t},t.exports=r},function(t,e,n){"use strict";function r(t,e){o(!1)}var o=n(4);t.exports=r}])}); |
@@ -0,0 +0,0 @@ /** |
@@ -12,11 +12,10 @@ /** | ||
*/ | ||
'use strict'; | ||
var invariant = require('fbjs/lib/invariant'); | ||
var invariant = require("fbjs/lib/invariant"); | ||
function abstractMethod(className, methodName) { | ||
!false ? process.env.NODE_ENV !== 'production' ? invariant(false, 'Subclasses of %s must override %s() with their own implementation.', className, methodName) : invariant(false) : undefined; | ||
!false ? process.env.NODE_ENV !== "production" ? invariant(false, 'Subclasses of %s must override %s() with their own implementation.', className, methodName) : invariant(false) : void 0; | ||
} | ||
module.exports = abstractMethod; |
@@ -13,13 +13,9 @@ /** | ||
*/ | ||
'use strict'; | ||
exports.__esModule = true; | ||
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } | ||
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError('Cannot call a class as a function'); } } | ||
var invariant = require("fbjs/lib/invariant"); | ||
var invariant = require('fbjs/lib/invariant'); | ||
var _prefix = 'ID_'; | ||
/** | ||
@@ -113,6 +109,16 @@ * Dispatcher is used to broadcast payloads to registered callbacks. This is | ||
var Dispatcher = (function () { | ||
var Dispatcher = /*#__PURE__*/function () { | ||
function Dispatcher() { | ||
_classCallCheck(this, Dispatcher); | ||
_defineProperty(this, "_callbacks", void 0); | ||
_defineProperty(this, "_isDispatching", void 0); | ||
_defineProperty(this, "_isHandled", void 0); | ||
_defineProperty(this, "_isPending", void 0); | ||
_defineProperty(this, "_lastID", void 0); | ||
_defineProperty(this, "_pendingPayload", void 0); | ||
this._callbacks = {}; | ||
@@ -124,3 +130,2 @@ this._isDispatching = false; | ||
} | ||
/** | ||
@@ -131,17 +136,19 @@ * Registers a callback to be invoked with every dispatched payload. Returns | ||
Dispatcher.prototype.register = function register(callback) { | ||
var _proto = Dispatcher.prototype; | ||
_proto.register = function register(callback) { | ||
var id = _prefix + this._lastID++; | ||
this._callbacks[id] = callback; | ||
return id; | ||
}; | ||
} | ||
/** | ||
* Removes a callback based on its token. | ||
*/ | ||
; | ||
Dispatcher.prototype.unregister = function unregister(id) { | ||
!this._callbacks[id] ? process.env.NODE_ENV !== 'production' ? invariant(false, 'Dispatcher.unregister(...): `%s` does not map to a registered callback.', id) : invariant(false) : undefined; | ||
_proto.unregister = function unregister(id) { | ||
!this._callbacks[id] ? process.env.NODE_ENV !== "production" ? invariant(false, 'Dispatcher.unregister(...): `%s` does not map to a registered callback.', id) : invariant(false) : void 0; | ||
delete this._callbacks[id]; | ||
}; | ||
} | ||
/** | ||
@@ -152,23 +159,30 @@ * Waits for the callbacks specified to be invoked before continuing execution | ||
*/ | ||
; | ||
Dispatcher.prototype.waitFor = function waitFor(ids) { | ||
!this._isDispatching ? process.env.NODE_ENV !== 'production' ? invariant(false, 'Dispatcher.waitFor(...): Must be invoked while dispatching.') : invariant(false) : undefined; | ||
_proto.waitFor = function waitFor(ids) { | ||
!this._isDispatching ? process.env.NODE_ENV !== "production" ? invariant(false, 'Dispatcher.waitFor(...): Must be invoked while dispatching.') : invariant(false) : void 0; | ||
for (var ii = 0; ii < ids.length; ii++) { | ||
var id = ids[ii]; | ||
if (this._isPending[id]) { | ||
!this._isHandled[id] ? process.env.NODE_ENV !== 'production' ? invariant(false, 'Dispatcher.waitFor(...): Circular dependency detected while ' + 'waiting for `%s`.', id) : invariant(false) : undefined; | ||
!this._isHandled[id] ? process.env.NODE_ENV !== "production" ? invariant(false, 'Dispatcher.waitFor(...): Circular dependency detected while ' + 'waiting for `%s`.', id) : invariant(false) : void 0; | ||
continue; | ||
} | ||
!this._callbacks[id] ? process.env.NODE_ENV !== 'production' ? invariant(false, 'Dispatcher.waitFor(...): `%s` does not map to a registered callback.', id) : invariant(false) : undefined; | ||
!this._callbacks[id] ? process.env.NODE_ENV !== "production" ? invariant(false, 'Dispatcher.waitFor(...): `%s` does not map to a registered callback.', id) : invariant(false) : void 0; | ||
this._invokeCallback(id); | ||
} | ||
}; | ||
} | ||
/** | ||
* Dispatches a payload to all registered callbacks. | ||
*/ | ||
; | ||
Dispatcher.prototype.dispatch = function dispatch(payload) { | ||
!!this._isDispatching ? process.env.NODE_ENV !== 'production' ? invariant(false, 'Dispatch.dispatch(...): Cannot dispatch in the middle of a dispatch.') : invariant(false) : undefined; | ||
_proto.dispatch = function dispatch(payload) { | ||
!!this._isDispatching ? process.env.NODE_ENV !== "production" ? invariant(false, 'Dispatch.dispatch(...): Cannot dispatch in the middle of a dispatch.') : invariant(false) : void 0; | ||
this._startDispatching(payload); | ||
try { | ||
@@ -179,2 +193,3 @@ for (var id in this._callbacks) { | ||
} | ||
this._invokeCallback(id); | ||
@@ -185,12 +200,11 @@ } | ||
} | ||
}; | ||
} | ||
/** | ||
* Is this Dispatcher currently dispatching. | ||
*/ | ||
; | ||
Dispatcher.prototype.isDispatching = function isDispatching() { | ||
_proto.isDispatching = function isDispatching() { | ||
return this._isDispatching; | ||
}; | ||
} | ||
/** | ||
@@ -202,9 +216,11 @@ * Call the callback stored with the given id. Also do some internal | ||
*/ | ||
; | ||
Dispatcher.prototype._invokeCallback = function _invokeCallback(id) { | ||
_proto._invokeCallback = function _invokeCallback(id) { | ||
this._isPending[id] = true; | ||
this._callbacks[id](this._pendingPayload); | ||
this._isHandled[id] = true; | ||
}; | ||
} | ||
/** | ||
@@ -215,4 +231,5 @@ * Set up bookkeeping needed when dispatching. | ||
*/ | ||
; | ||
Dispatcher.prototype._startDispatching = function _startDispatching(payload) { | ||
_proto._startDispatching = function _startDispatching(payload) { | ||
for (var id in this._callbacks) { | ||
@@ -222,6 +239,6 @@ this._isPending[id] = false; | ||
} | ||
this._pendingPayload = payload; | ||
this._isDispatching = true; | ||
}; | ||
} | ||
/** | ||
@@ -232,4 +249,5 @@ * Clear bookkeeping used for dispatching. | ||
*/ | ||
; | ||
Dispatcher.prototype._stopDispatching = function _stopDispatching() { | ||
_proto._stopDispatching = function _stopDispatching() { | ||
delete this._pendingPayload; | ||
@@ -240,4 +258,4 @@ this._isDispatching = false; | ||
return Dispatcher; | ||
})(); | ||
}(); | ||
module.exports = Dispatcher; |
@@ -12,19 +12,23 @@ /** | ||
*/ | ||
'use strict'; | ||
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; }; | ||
function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; } | ||
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError('Cannot call a class as a function'); } } | ||
function _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; subClass.__proto__ = superClass; } | ||
function _inherits(subClass, superClass) { if (typeof superClass !== 'function' && superClass !== null) { throw new TypeError('Super expression must either be null or a function, not ' + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } | ||
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } | ||
var FluxContainerSubscriptions = require('./FluxContainerSubscriptions'); | ||
var React = require('react'); | ||
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } | ||
var invariant = require('fbjs/lib/invariant'); | ||
var shallowEqual = require('fbjs/lib/shallowEqual'); | ||
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } | ||
var FluxContainerSubscriptions = require("./FluxContainerSubscriptions"); | ||
var React = require("react"); | ||
var invariant = require("fbjs/lib/invariant"); | ||
var shallowEqual = require("fbjs/lib/shallowEqual"); | ||
var Component = React.Component; | ||
var DEFAULT_OPTIONS = { | ||
@@ -35,3 +39,2 @@ pure: true, | ||
}; | ||
/** | ||
@@ -103,9 +106,9 @@ * A FluxContainer is used to subscribe a react component to multiple stores. | ||
*/ | ||
function create(Base, options) { | ||
enforceInterface(Base); | ||
enforceInterface(Base); // Construct the options using default, override with user values as necessary. | ||
// Construct the options using default, override with user values as necessary. | ||
var realOptions = _extends({}, DEFAULT_OPTIONS, options || {}); | ||
var realOptions = _objectSpread(_objectSpread({}, DEFAULT_OPTIONS), options || {}); | ||
var getState = function (state, maybeProps, maybeContext) { | ||
var getState = function getState(state, maybeProps, maybeContext) { | ||
var props = realOptions.withProps ? maybeProps : undefined; | ||
@@ -116,22 +119,24 @@ var context = realOptions.withContext ? maybeContext : undefined; | ||
var getStores = function (maybeProps, maybeContext) { | ||
var getStores = function getStores(maybeProps, maybeContext) { | ||
var props = realOptions.withProps ? maybeProps : undefined; | ||
var context = realOptions.withContext ? maybeContext : undefined; | ||
return Base.getStores(props, context); | ||
}; | ||
}; // Build the container class. | ||
// Build the container class. | ||
var ContainerClass = (function (_Base) { | ||
_inherits(ContainerClass, _Base); | ||
var ContainerClass = /*#__PURE__*/function (_Base) { | ||
_inheritsLoose(ContainerClass, _Base); | ||
function ContainerClass(props, context) { | ||
var _this = this; | ||
var _this; | ||
_classCallCheck(this, ContainerClass); | ||
_this = _Base.call(this, props, context) || this; | ||
_Base.call(this, props, context); | ||
this._fluxContainerSubscriptions = new FluxContainerSubscriptions(); | ||
this._fluxContainerSubscriptions.setStores(getStores(props)); | ||
this._fluxContainerSubscriptions.addListener(function () { | ||
_defineProperty(_assertThisInitialized(_this), "_fluxContainerSubscriptions", void 0); | ||
_this._fluxContainerSubscriptions = new FluxContainerSubscriptions(); | ||
_this._fluxContainerSubscriptions.setStores(getStores(props, context)); | ||
_this._fluxContainerSubscriptions.addListener(function () { | ||
_this.setState(function (prevState, currentProps) { | ||
@@ -141,11 +146,11 @@ return getState(prevState, currentProps, context); | ||
}); | ||
var calculatedState = getState(undefined, props, context); | ||
this.state = _extends({}, this.state || {}, calculatedState); | ||
_this.state = _objectSpread(_objectSpread({}, _this.state || {}), calculatedState); | ||
return _this; | ||
} | ||
// Make sure we override shouldComponentUpdate only if the pure option is | ||
// specified. We can't override this above because we don't want to override | ||
// the default behavior on accident. Super works weird with react ES6 classes. | ||
var _proto = ContainerClass.prototype; | ||
ContainerClass.prototype.componentWillReceiveProps = function componentWillReceiveProps(nextProps, nextContext) { | ||
_proto.UNSAFE_componentWillReceiveProps = function UNSAFE_componentWillReceiveProps(nextProps, nextContext) { | ||
if (_Base.prototype.componentWillReceiveProps) { | ||
@@ -158,2 +163,3 @@ _Base.prototype.componentWillReceiveProps.call(this, nextProps, nextContext); | ||
this._fluxContainerSubscriptions.setStores(getStores(nextProps, nextContext)); | ||
this.setState(function (prevState) { | ||
@@ -165,3 +171,3 @@ return getState(prevState, nextProps, nextContext); | ||
ContainerClass.prototype.componentWillUnmount = function componentWillUnmount() { | ||
_proto.componentWillUnmount = function componentWillUnmount() { | ||
if (_Base.prototype.componentWillUnmount) { | ||
@@ -175,7 +181,9 @@ _Base.prototype.componentWillUnmount.call(this); | ||
return ContainerClass; | ||
})(Base); | ||
}(Base); // Make sure we override shouldComponentUpdate only if the pure option is | ||
// specified. We can't override this above because we don't want to override | ||
// the default behavior on accident. Super works weird with react ES6 classes. | ||
var container = realOptions.pure ? createPureComponent(ContainerClass) : ContainerClass; | ||
// Update the name of the container before returning | ||
var container = realOptions.pure ? createPureComponent(ContainerClass) : ContainerClass; // Update the name of the container before returning | ||
var componentName = Base.displayName || Base.name; | ||
@@ -187,12 +195,12 @@ container.displayName = 'FluxContainer(' + componentName + ')'; | ||
function createPureComponent(BaseComponent) { | ||
var PureComponent = (function (_BaseComponent) { | ||
_inherits(PureComponent, _BaseComponent); | ||
var PureComponent = /*#__PURE__*/function (_BaseComponent) { | ||
_inheritsLoose(PureComponent, _BaseComponent); | ||
function PureComponent() { | ||
_classCallCheck(this, PureComponent); | ||
_BaseComponent.apply(this, arguments); | ||
return _BaseComponent.apply(this, arguments) || this; | ||
} | ||
PureComponent.prototype.shouldComponentUpdate = function shouldComponentUpdate(nextProps, nextState) { | ||
var _proto2 = PureComponent.prototype; | ||
_proto2.shouldComponentUpdate = function shouldComponentUpdate(nextProps, nextState) { | ||
return !shallowEqual(this.props, nextProps) || !shallowEqual(this.state, nextState); | ||
@@ -202,3 +210,3 @@ }; | ||
return PureComponent; | ||
})(BaseComponent); | ||
}(BaseComponent); | ||
@@ -209,6 +217,5 @@ return PureComponent; | ||
function enforceInterface(o) { | ||
!o.getStores ? process.env.NODE_ENV !== 'production' ? invariant(false, 'Components that use FluxContainer must implement `static getStores()`') : invariant(false) : undefined; | ||
!o.calculateState ? process.env.NODE_ENV !== 'production' ? invariant(false, 'Components that use FluxContainer must implement `static calculateState()`') : invariant(false) : undefined; | ||
!o.getStores ? process.env.NODE_ENV !== "production" ? invariant(false, 'Components that use FluxContainer must implement `static getStores()`') : invariant(false) : void 0; | ||
!o.calculateState ? process.env.NODE_ENV !== "production" ? invariant(false, 'Components that use FluxContainer must implement `static calculateState()`') : invariant(false) : void 0; | ||
} | ||
/** | ||
@@ -246,14 +253,22 @@ * This is a way to connect stores to a functional stateless view. Here's a | ||
*/ | ||
function createFunctional(viewFn, _getStores, _calculateState, options) { | ||
var FunctionalContainer = (function (_Component) { | ||
_inherits(FunctionalContainer, _Component); | ||
var FunctionalContainer = /*#__PURE__*/function (_Component) { | ||
_inheritsLoose(FunctionalContainer, _Component); | ||
function FunctionalContainer() { | ||
_classCallCheck(this, FunctionalContainer); | ||
var _this2; | ||
_Component.apply(this, arguments); | ||
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { | ||
args[_key] = arguments[_key]; | ||
} | ||
_this2 = _Component.call.apply(_Component, [this].concat(args)) || this; | ||
_defineProperty(_assertThisInitialized(_this2), "state", void 0); | ||
return _this2; | ||
} | ||
// Update the name of the component before creating the container. | ||
FunctionalContainer.getStores = function getStores(props, context) { | ||
@@ -267,3 +282,5 @@ return _getStores(props, context); | ||
FunctionalContainer.prototype.render = function render() { | ||
var _proto3 = FunctionalContainer.prototype; | ||
_proto3.render = function render() { | ||
return viewFn(this.state); | ||
@@ -273,4 +290,5 @@ }; | ||
return FunctionalContainer; | ||
})(Component); | ||
}(Component); // Update the name of the component before creating the container. | ||
var viewFnName = viewFn.displayName || viewFn.name || 'FunctionalContainer'; | ||
@@ -281,2 +299,5 @@ FunctionalContainer.displayName = viewFnName; | ||
module.exports = { create: create, createFunctional: createFunctional }; | ||
module.exports = { | ||
create: create, | ||
createFunctional: createFunctional | ||
}; |
@@ -11,8 +11,7 @@ /** | ||
*/ | ||
'use strict'; | ||
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError('Cannot call a class as a function'); } } | ||
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } | ||
var FluxStoreGroup = require('./FluxStoreGroup'); | ||
var FluxStoreGroup = require("./FluxStoreGroup"); | ||
@@ -23,5 +22,7 @@ function shallowArrayEqual(a, b) { | ||
} | ||
if (a.length !== b.length) { | ||
return false; | ||
} | ||
for (var i = 0; i < a.length; i++) { | ||
@@ -32,13 +33,22 @@ if (a[i] !== b[i]) { | ||
} | ||
return true; | ||
} | ||
var FluxContainerSubscriptions = (function () { | ||
var FluxContainerSubscriptions = /*#__PURE__*/function () { | ||
function FluxContainerSubscriptions() { | ||
_classCallCheck(this, FluxContainerSubscriptions); | ||
_defineProperty(this, "_callbacks", void 0); | ||
_defineProperty(this, "_storeGroup", void 0); | ||
_defineProperty(this, "_stores", void 0); | ||
_defineProperty(this, "_tokens", void 0); | ||
this._callbacks = []; | ||
} | ||
FluxContainerSubscriptions.prototype.setStores = function setStores(stores) { | ||
var _proto = FluxContainerSubscriptions.prototype; | ||
_proto.setStores = function setStores(stores) { | ||
var _this = this; | ||
@@ -49,4 +59,7 @@ | ||
} | ||
this._stores = stores; | ||
this._resetTokens(); | ||
this._resetStoreGroup(); | ||
@@ -57,3 +70,3 @@ | ||
if (process.env.NODE_ENV !== 'production') { | ||
if (process.env.NODE_ENV !== "production") { | ||
// Keep track of the stores that changed for debugging purposes only | ||
@@ -67,13 +80,12 @@ this._tokens = stores.map(function (store) { | ||
} else { | ||
(function () { | ||
var setChanged = function () { | ||
changed = true; | ||
}; | ||
_this._tokens = stores.map(function (store) { | ||
return store.addListener(setChanged); | ||
}); | ||
})(); | ||
var setChanged = function setChanged() { | ||
changed = true; | ||
}; | ||
this._tokens = stores.map(function (store) { | ||
return store.addListener(setChanged); | ||
}); | ||
} | ||
var callCallbacks = function () { | ||
var callCallbacks = function callCallbacks() { | ||
if (changed) { | ||
@@ -83,4 +95,6 @@ _this._callbacks.forEach(function (fn) { | ||
}); | ||
changed = false; | ||
if (process.env.NODE_ENV !== 'production') { | ||
if (process.env.NODE_ENV !== "production") { | ||
// Uncomment this to print the stores that changed. | ||
@@ -92,17 +106,21 @@ // console.log(changedStores); | ||
}; | ||
this._storeGroup = new FluxStoreGroup(stores, callCallbacks); | ||
}; | ||
FluxContainerSubscriptions.prototype.addListener = function addListener(fn) { | ||
_proto.addListener = function addListener(fn) { | ||
this._callbacks.push(fn); | ||
}; | ||
FluxContainerSubscriptions.prototype.reset = function reset() { | ||
_proto.reset = function reset() { | ||
this._resetTokens(); | ||
this._resetStoreGroup(); | ||
this._resetCallbacks(); | ||
this._resetStores(); | ||
}; | ||
FluxContainerSubscriptions.prototype._resetTokens = function _resetTokens() { | ||
_proto._resetTokens = function _resetTokens() { | ||
if (this._tokens) { | ||
@@ -112,2 +130,3 @@ this._tokens.forEach(function (token) { | ||
}); | ||
this._tokens = null; | ||
@@ -117,5 +136,6 @@ } | ||
FluxContainerSubscriptions.prototype._resetStoreGroup = function _resetStoreGroup() { | ||
_proto._resetStoreGroup = function _resetStoreGroup() { | ||
if (this._storeGroup) { | ||
this._storeGroup.release(); | ||
this._storeGroup = null; | ||
@@ -125,7 +145,7 @@ } | ||
FluxContainerSubscriptions.prototype._resetStores = function _resetStores() { | ||
_proto._resetStores = function _resetStores() { | ||
this._stores = null; | ||
}; | ||
FluxContainerSubscriptions.prototype._resetCallbacks = function _resetCallbacks() { | ||
_proto._resetCallbacks = function _resetCallbacks() { | ||
this._callbacks = []; | ||
@@ -135,4 +155,4 @@ }; | ||
return FluxContainerSubscriptions; | ||
})(); | ||
}(); | ||
module.exports = FluxContainerSubscriptions; |
@@ -11,9 +11,14 @@ /** | ||
*/ | ||
'use strict'; | ||
var FluxStoreGroup = require('./FluxStoreGroup'); | ||
function _createForOfIteratorHelper(o, allowArrayLike) { var it; if (typeof Symbol === "undefined" || o[Symbol.iterator] == null) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = o[Symbol.iterator](); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it["return"] != null) it["return"](); } finally { if (didErr) throw err; } } }; } | ||
var invariant = require('fbjs/lib/invariant'); | ||
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); } | ||
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; } | ||
var FluxStoreGroup = require("./FluxStoreGroup"); | ||
var invariant = require("fbjs/lib/invariant"); | ||
/** | ||
@@ -56,15 +61,14 @@ * `FluxContainer` should be preferred over this mixin, but it requires using | ||
function FluxMixinLegacy(stores) { | ||
var options = arguments.length <= 1 || arguments[1] === undefined ? { withProps: false } : arguments[1]; | ||
var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : { | ||
withProps: false | ||
}; | ||
stores = stores.filter(function (store) { | ||
return !!store; | ||
}); | ||
return { | ||
getInitialState: function () { | ||
getInitialState: function getInitialState() { | ||
enforceInterface(this); | ||
return options.withProps ? this.constructor.calculateState(null, this.props) : this.constructor.calculateState(null, undefined); | ||
}, | ||
componentWillMount: function () { | ||
componentWillMount: function componentWillMount() { | ||
var _this = this; | ||
@@ -74,15 +78,15 @@ | ||
var changed = false; | ||
var setChanged = function () { | ||
var setChanged = function setChanged() { | ||
changed = true; | ||
}; | ||
}; // This adds subscriptions to stores. When a store changes all we do is | ||
// set changed to true. | ||
// This adds subscriptions to stores. When a store changes all we do is | ||
// set changed to true. | ||
this._fluxMixinSubscriptions = stores.map(function (store) { | ||
return store.addListener(setChanged); | ||
}); | ||
}); // This callback is called after the dispatch of the relevant stores. If | ||
// any have reported a change we update the state, then reset changed. | ||
// This callback is called after the dispatch of the relevant stores. If | ||
// any have reported a change we update the state, then reset changed. | ||
var callback = function () { | ||
var callback = function callback() { | ||
if (changed) { | ||
@@ -93,25 +97,25 @@ _this.setState(function (prevState) { | ||
} | ||
changed = false; | ||
}; | ||
this._fluxMixinStoreGroup = new FluxStoreGroup(stores, callback); | ||
}, | ||
componentWillUnmount: function () { | ||
componentWillUnmount: function componentWillUnmount() { | ||
this._fluxMixinStoreGroup.release(); | ||
for (var _iterator = this._fluxMixinSubscriptions, _isArray = Array.isArray(_iterator), _i = 0, _iterator = _isArray ? _iterator : _iterator[Symbol.iterator]();;) { | ||
var _ref; | ||
if (_isArray) { | ||
if (_i >= _iterator.length) break; | ||
_ref = _iterator[_i++]; | ||
} else { | ||
_i = _iterator.next(); | ||
if (_i.done) break; | ||
_ref = _i.value; | ||
var _iterator = _createForOfIteratorHelper(this._fluxMixinSubscriptions), | ||
_step; | ||
try { | ||
for (_iterator.s(); !(_step = _iterator.n()).done;) { | ||
var subscription = _step.value; | ||
subscription.remove(); | ||
} | ||
} catch (err) { | ||
_iterator.e(err); | ||
} finally { | ||
_iterator.f(); | ||
} | ||
var subscription = _ref; | ||
subscription.remove(); | ||
} | ||
this._fluxMixinSubscriptions = []; | ||
@@ -123,5 +127,5 @@ } | ||
function enforceInterface(o) { | ||
!o.constructor.calculateState ? process.env.NODE_ENV !== 'production' ? invariant(false, 'Components that use FluxMixinLegacy must implement ' + '`calculateState()` on the statics object') : invariant(false) : undefined; | ||
!o.constructor.calculateState ? process.env.NODE_ENV !== "production" ? invariant(false, 'Components that use FluxMixinLegacy must implement ' + '`calculateState()` on the statics object') : invariant(false) : void 0; | ||
} | ||
module.exports = FluxMixinLegacy; |
@@ -11,14 +11,15 @@ /** | ||
*/ | ||
'use strict'; | ||
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError('Cannot call a class as a function'); } } | ||
function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; } | ||
function _inherits(subClass, superClass) { if (typeof superClass !== 'function' && superClass !== null) { throw new TypeError('Super expression must either be null or a function, not ' + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } | ||
function _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; subClass.__proto__ = superClass; } | ||
var FluxStore = require('./FluxStore'); | ||
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } | ||
var abstractMethod = require('./abstractMethod'); | ||
var invariant = require('fbjs/lib/invariant'); | ||
var FluxStore = require("./FluxStore"); | ||
var abstractMethod = require("./abstractMethod"); | ||
var invariant = require("fbjs/lib/invariant"); | ||
/** | ||
@@ -46,12 +47,16 @@ * This is the basic building block of a Flux application. All of your stores | ||
var FluxReduceStore = (function (_FluxStore) { | ||
_inherits(FluxReduceStore, _FluxStore); | ||
var FluxReduceStore = /*#__PURE__*/function (_FluxStore) { | ||
_inheritsLoose(FluxReduceStore, _FluxStore); | ||
function FluxReduceStore(dispatcher) { | ||
_classCallCheck(this, FluxReduceStore); | ||
var _this; | ||
_FluxStore.call(this, dispatcher); | ||
this._state = this.getInitialState(); | ||
_this = _FluxStore.call(this, dispatcher) || this; | ||
_defineProperty(_assertThisInitialized(_this), "_state", void 0); | ||
_this._state = _this.getInitialState(); | ||
return _this; | ||
} | ||
/** | ||
@@ -62,6 +67,8 @@ * Getter that exposes the entire state of this store. If your state is not | ||
FluxReduceStore.prototype.getState = function getState() { | ||
var _proto = FluxReduceStore.prototype; | ||
_proto.getState = function getState() { | ||
return this._state; | ||
}; | ||
} | ||
/** | ||
@@ -71,7 +78,7 @@ * Constructs the initial state for this store. This is called once during | ||
*/ | ||
; | ||
FluxReduceStore.prototype.getInitialState = function getInitialState() { | ||
_proto.getInitialState = function getInitialState() { | ||
return abstractMethod('FluxReduceStore', 'getInitialState'); | ||
}; | ||
} | ||
/** | ||
@@ -81,7 +88,7 @@ * Used to reduce a stream of actions coming from the dispatcher into a | ||
*/ | ||
; | ||
FluxReduceStore.prototype.reduce = function reduce(state, action) { | ||
_proto.reduce = function reduce(state, action) { | ||
return abstractMethod('FluxReduceStore', 'reduce'); | ||
}; | ||
} | ||
/** | ||
@@ -91,23 +98,21 @@ * Checks if two versions of state are the same. You do not need to override | ||
*/ | ||
; | ||
FluxReduceStore.prototype.areEqual = function areEqual(one, two) { | ||
_proto.areEqual = function areEqual(one, two) { | ||
return one === two; | ||
}; | ||
FluxReduceStore.prototype.__invokeOnDispatch = function __invokeOnDispatch(action) { | ||
this.__changed = false; | ||
_proto.__invokeOnDispatch = function __invokeOnDispatch(action) { | ||
this.__changed = false; // Reduce the stream of incoming actions to state, update when necessary. | ||
// Reduce the stream of incoming actions to state, update when necessary. | ||
var startingState = this._state; | ||
var endingState = this.reduce(startingState, action); | ||
var endingState = this.reduce(startingState, action); // This means your ending state should never be undefined. | ||
// This means your ending state should never be undefined. | ||
!(endingState !== undefined) ? process.env.NODE_ENV !== 'production' ? invariant(false, '%s returned undefined from reduce(...), did you forget to return ' + 'state in the default case? (use null if this was intentional)', this.constructor.name) : invariant(false) : undefined; | ||
!(endingState !== undefined) ? process.env.NODE_ENV !== "production" ? invariant(false, '%s returned undefined from reduce(...), did you forget to return ' + 'state in the default case? (use null if this was intentional)', this.constructor.name) : invariant(false) : void 0; | ||
if (!this.areEqual(startingState, endingState)) { | ||
this._state = endingState; | ||
// `__emitChange()` sets `this.__changed` to true and then the actual | ||
this._state = endingState; // `__emitChange()` sets `this.__changed` to true and then the actual | ||
// change will be fired from the emitter at the end of the dispatch, this | ||
// is required in order to support methods like `hasChanged()` | ||
this.__emitChange(); | ||
@@ -122,4 +127,4 @@ } | ||
return FluxReduceStore; | ||
})(FluxStore); | ||
}(FluxStore); | ||
module.exports = FluxReduceStore; |
@@ -11,13 +11,10 @@ /** | ||
*/ | ||
'use strict'; | ||
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError('Cannot call a class as a function'); } } | ||
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } | ||
var _require = require('fbemitter'); | ||
var _require = require("fbemitter"), | ||
EventEmitter = _require.EventEmitter; | ||
var EventEmitter = _require.EventEmitter; | ||
var invariant = require('fbjs/lib/invariant'); | ||
var invariant = require("fbjs/lib/invariant"); | ||
/** | ||
@@ -29,10 +26,22 @@ * This class represents the most basic functionality for a FluxStore. Do not | ||
var FluxStore = (function () { | ||
var FluxStore = /*#__PURE__*/function () { | ||
// private | ||
// protected, available to subclasses | ||
function FluxStore(dispatcher) { | ||
var _this = this; | ||
_classCallCheck(this, FluxStore); | ||
_defineProperty(this, "_dispatchToken", void 0); | ||
_defineProperty(this, "__changed", void 0); | ||
_defineProperty(this, "__changeEvent", void 0); | ||
_defineProperty(this, "__className", void 0); | ||
_defineProperty(this, "__dispatcher", void 0); | ||
_defineProperty(this, "__emitter", void 0); | ||
this.__className = this.constructor.name; | ||
this.__changed = false; | ||
@@ -47,10 +56,11 @@ this.__changeEvent = 'change'; | ||
FluxStore.prototype.addListener = function addListener(callback) { | ||
var _proto = FluxStore.prototype; | ||
_proto.addListener = function addListener(callback) { | ||
return this.__emitter.addListener(this.__changeEvent, callback); | ||
}; | ||
FluxStore.prototype.getDispatcher = function getDispatcher() { | ||
_proto.getDispatcher = function getDispatcher() { | ||
return this.__dispatcher; | ||
}; | ||
} | ||
/** | ||
@@ -61,21 +71,21 @@ * This exposes a unique string to identify each store's registered callback. | ||
*/ | ||
; | ||
FluxStore.prototype.getDispatchToken = function getDispatchToken() { | ||
_proto.getDispatchToken = function getDispatchToken() { | ||
return this._dispatchToken; | ||
}; | ||
} | ||
/** | ||
* Returns whether the store has changed during the most recent dispatch. | ||
*/ | ||
; | ||
FluxStore.prototype.hasChanged = function hasChanged() { | ||
!this.__dispatcher.isDispatching() ? process.env.NODE_ENV !== 'production' ? invariant(false, '%s.hasChanged(): Must be invoked while dispatching.', this.__className) : invariant(false) : undefined; | ||
_proto.hasChanged = function hasChanged() { | ||
!this.__dispatcher.isDispatching() ? process.env.NODE_ENV !== "production" ? invariant(false, '%s.hasChanged(): Must be invoked while dispatching.', this.__className) : invariant(false) : void 0; | ||
return this.__changed; | ||
}; | ||
FluxStore.prototype.__emitChange = function __emitChange() { | ||
!this.__dispatcher.isDispatching() ? process.env.NODE_ENV !== 'production' ? invariant(false, '%s.__emitChange(): Must be invoked while dispatching.', this.__className) : invariant(false) : undefined; | ||
_proto.__emitChange = function __emitChange() { | ||
!this.__dispatcher.isDispatching() ? process.env.NODE_ENV !== "production" ? invariant(false, '%s.__emitChange(): Must be invoked while dispatching.', this.__className) : invariant(false) : void 0; | ||
this.__changed = true; | ||
}; | ||
} | ||
/** | ||
@@ -86,11 +96,13 @@ * This method encapsulates all logic for invoking __onDispatch. It should | ||
*/ | ||
; | ||
FluxStore.prototype.__invokeOnDispatch = function __invokeOnDispatch(payload) { | ||
_proto.__invokeOnDispatch = function __invokeOnDispatch(payload) { | ||
this.__changed = false; | ||
this.__onDispatch(payload); | ||
if (this.__changed) { | ||
this.__emitter.emit(this.__changeEvent); | ||
} | ||
}; | ||
} | ||
/** | ||
@@ -101,14 +113,11 @@ * The callback that will be registered with the dispatcher during | ||
*/ | ||
; | ||
FluxStore.prototype.__onDispatch = function __onDispatch(payload) { | ||
!false ? process.env.NODE_ENV !== 'production' ? invariant(false, '%s has not overridden FluxStore.__onDispatch(), which is required', this.__className) : invariant(false) : undefined; | ||
_proto.__onDispatch = function __onDispatch(payload) { | ||
!false ? process.env.NODE_ENV !== "production" ? invariant(false, '%s has not overridden FluxStore.__onDispatch(), which is required', this.__className) : invariant(false) : void 0; | ||
}; | ||
return FluxStore; | ||
})(); | ||
}(); | ||
module.exports = FluxStore; | ||
// private | ||
// protected, available to subclasses | ||
module.exports = FluxStore; |
@@ -12,9 +12,14 @@ /** | ||
*/ | ||
'use strict'; | ||
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError('Cannot call a class as a function'); } } | ||
function _createForOfIteratorHelper(o, allowArrayLike) { var it; if (typeof Symbol === "undefined" || o[Symbol.iterator] == null) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = o[Symbol.iterator](); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it["return"] != null) it["return"](); } finally { if (didErr) throw err; } } }; } | ||
var invariant = require('fbjs/lib/invariant'); | ||
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); } | ||
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; } | ||
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } | ||
var invariant = require("fbjs/lib/invariant"); | ||
/** | ||
@@ -24,19 +29,19 @@ * FluxStoreGroup allows you to execute a callback on every dispatch after | ||
*/ | ||
var FluxStoreGroup = (function () { | ||
var FluxStoreGroup = /*#__PURE__*/function () { | ||
function FluxStoreGroup(stores, callback) { | ||
var _this = this; | ||
_classCallCheck(this, FluxStoreGroup); | ||
_defineProperty(this, "_dispatcher", void 0); | ||
this._dispatcher = _getUniformDispatcher(stores); | ||
_defineProperty(this, "_dispatchToken", void 0); | ||
// Precompute store tokens. | ||
this._dispatcher = _getUniformDispatcher(stores); // Precompute store tokens. | ||
var storeTokens = stores.map(function (store) { | ||
return store.getDispatchToken(); | ||
}); | ||
}); // Register with the dispatcher. | ||
// Register with the dispatcher. | ||
this._dispatchToken = this._dispatcher.register(function (payload) { | ||
_this._dispatcher.waitFor(storeTokens); | ||
callback(); | ||
@@ -46,3 +51,5 @@ }); | ||
FluxStoreGroup.prototype.release = function release() { | ||
var _proto = FluxStoreGroup.prototype; | ||
_proto.release = function release() { | ||
this._dispatcher.unregister(this._dispatchToken); | ||
@@ -52,25 +59,24 @@ }; | ||
return FluxStoreGroup; | ||
})(); | ||
}(); | ||
function _getUniformDispatcher(stores) { | ||
!(stores && stores.length) ? process.env.NODE_ENV !== 'production' ? invariant(false, 'Must provide at least one store to FluxStoreGroup') : invariant(false) : undefined; | ||
!(stores && stores.length) ? process.env.NODE_ENV !== "production" ? invariant(false, 'Must provide at least one store to FluxStoreGroup') : invariant(false) : void 0; | ||
var dispatcher = stores[0].getDispatcher(); | ||
if (process.env.NODE_ENV !== 'production') { | ||
for (var _iterator = stores, _isArray = Array.isArray(_iterator), _i = 0, _iterator = _isArray ? _iterator : _iterator[Symbol.iterator]();;) { | ||
var _ref; | ||
if (_isArray) { | ||
if (_i >= _iterator.length) break; | ||
_ref = _iterator[_i++]; | ||
} else { | ||
_i = _iterator.next(); | ||
if (_i.done) break; | ||
_ref = _i.value; | ||
if (process.env.NODE_ENV !== "production") { | ||
var _iterator = _createForOfIteratorHelper(stores), | ||
_step; | ||
try { | ||
for (_iterator.s(); !(_step = _iterator.n()).done;) { | ||
var store = _step.value; | ||
!(store.getDispatcher() === dispatcher) ? process.env.NODE_ENV !== "production" ? invariant(false, 'All stores in a FluxStoreGroup must use the same dispatcher') : invariant(false) : void 0; | ||
} | ||
var store = _ref; | ||
!(store.getDispatcher() === dispatcher) ? process.env.NODE_ENV !== 'production' ? invariant(false, 'All stores in a FluxStoreGroup must use the same dispatcher') : invariant(false) : undefined; | ||
} catch (err) { | ||
_iterator.e(err); | ||
} finally { | ||
_iterator.f(); | ||
} | ||
} | ||
return dispatcher; | ||
@@ -77,0 +83,0 @@ } |
{ | ||
"name": "flux", | ||
"version": "3.1.3", | ||
"version": "4.0.0", | ||
"description": "An application architecture based on a unidirectional data flow", | ||
@@ -11,3 +11,3 @@ "keywords": [ | ||
], | ||
"homepage": "http://facebook.github.io/flux/", | ||
"homepage": "https://facebook.github.io/flux/", | ||
"bugs": "https://github.com/facebook/flux/issues", | ||
@@ -38,12 +38,13 @@ "files": [ | ||
"Paul O'Shannessy <paul@oshannessy.com>", | ||
"Kyle Davis <kyldvs@gmail.com>" | ||
"Kyle Davis <kyldvs@gmail.com>", | ||
"Yangshun Tay <tay.yang.shun@gmail.com>" | ||
], | ||
"license": "BSD-3-Clause", | ||
"devDependencies": { | ||
"babel-core": "^5.8.22", | ||
"babel-loader": "^5.3.2", | ||
"@babel/core": "^7.12.10", | ||
"babel-loader": "^8.1.0", | ||
"babel-preset-fbjs": "^3.3.0", | ||
"del": "^2.2.0", | ||
"fbjs-scripts": "^0.5.0", | ||
"gulp": "^3.9.0", | ||
"gulp-babel": "^5.1.0", | ||
"gulp": "^4.0.2", | ||
"gulp-babel": "^8.0.0", | ||
"gulp-flatten": "^0.2.0", | ||
@@ -56,6 +57,5 @@ "gulp-header": "1.8.2", | ||
"object-assign": "^4.0.1", | ||
"react": "^15.0.2", | ||
"react-addons-test-utils": "^15.0.1", | ||
"react-dom": "^15.0.1", | ||
"run-sequence": "^1.1.0", | ||
"react": "^17.0.1", | ||
"react-addons-test-utils": "^15.6.2", | ||
"react-dom": "^17.0.1", | ||
"vinyl-source-stream": "^1.0.0", | ||
@@ -67,6 +67,6 @@ "webpack": "^1.11.0", | ||
"fbemitter": "^2.0.0", | ||
"fbjs": "^0.8.0" | ||
"fbjs": "^3.0.0" | ||
}, | ||
"peerDependencies": { | ||
"react": "^15.0.2 || ^16.0.0-beta || ^16.0.0" | ||
"react": "^15.0.2 || ^16.0.0 || ^17.0.0" | ||
}, | ||
@@ -83,3 +83,5 @@ "jest": { | ||
"scriptPreprocessor": "scripts/jest/preprocessor.js", | ||
"setupFiles": ["scripts/jest/environment.js"], | ||
"setupFiles": [ | ||
"scripts/jest/environment.js" | ||
], | ||
"testPathDirs": [ | ||
@@ -86,0 +88,0 @@ "<rootDir>/src" |
@@ -1,16 +0,36 @@ | ||
# Flux | ||
An application architecture for React utilizing a unidirectional data flow. | ||
<p align="center"> | ||
<img src="https://facebook.github.io/flux/img/flux-logo-color.svg" alt="logo" width="20%" /> | ||
</p> | ||
<h1 align="center"> | ||
Flux | ||
</h1> | ||
<p align="center"> | ||
An application architecture for React utilizing a unidirectional data flow.<br> | ||
<a href="https://github.com/facebook/flux/blob/master/LICENSE"> | ||
<img src="https://img.shields.io/badge/License-BSD%20-blue.svg" alt="Licence Badge" /> | ||
</a> | ||
<a href="https://www.npmjs.com/package/flux"> | ||
<img src="https://img.shields.io/npm/v/flux.svg?style=flat" alt="Current npm package version." /> | ||
</a> | ||
</p> | ||
<img src="./docs/img/flux-diagram-white-background.png" style="width: 100%;" /> | ||
<hr/> | ||
⚠️ The Flux project is in maintenance mode and there are many more sophisticated alternatives available (e.g. [Redux](http://redux.js.org/), [MobX](https://mobx.js.org/)) and we would recommend using them instead. | ||
<hr/> | ||
<img src="./img/flux-diagram-white-background.png" style="width: 100%;" /> | ||
## Getting Started | ||
Start by looking through the [guides and examples](./examples) on Github. For more resources and API docs check out [facebook.github.io/flux](http://facebook.github.io/flux). | ||
Start by looking through the [guides and examples](./examples) on Github. For more resources and API docs check out [facebook.github.io/flux](https://facebook.github.io/flux). | ||
## How Flux works | ||
For more information on how Flux works check out the [Flux Concepts](./examples/flux-concepts) guide, or the [In Depth Overview](https://facebook.github.io/flux/docs/in-depth-overview.html#content). | ||
For more information on how Flux works check out the [Flux Concepts](./examples/flux-concepts) guide, or the [In Depth Overview](https://facebook.github.io/flux/docs/in-depth-overview). | ||
## Requirements | ||
Flux is more of a pattern than a framework, and does not have any hard dependencies. However, we often use [EventEmitter](http://nodejs.org/api/events.html#events_class_events_eventemitter) as a basis for `Stores` and [React](https://github.com/facebook/react) for our `Views`. The one piece of Flux not readily available elsewhere is the `Dispatcher`. This module, along with some other utilities, is available here to complete your Flux toolbox. | ||
Flux is more of a pattern than a framework, and does not have any hard dependencies. However, we often use [EventEmitter](https://nodejs.org/api/events.html#events_class_eventemitter) as a basis for `Stores` and [React](https://github.com/facebook/react) for our `Views`. The one piece of Flux not readily available elsewhere is the `Dispatcher`. This module, along with some other utilities, is available here to complete your Flux toolbox. | ||
@@ -24,3 +44,3 @@ ## Installing Flux | ||
Take a look at the [dispatcher API and some examples](http://facebook.github.io/flux/docs/dispatcher.html#content). | ||
Take a look at the [dispatcher API and some examples](https://facebook.github.io/flux/docs/dispatcher). | ||
@@ -54,3 +74,3 @@ ## Flux Utils | ||
Check out the [examples](./examples) and [documentation](https://facebook.github.io/flux/docs/flux-utils.html) for more information. | ||
Check out the [examples](./examples) and [documentation](https://facebook.github.io/flux/docs/flux-utils) for more information. | ||
@@ -60,3 +80,3 @@ ## Building Flux from a Cloned Repo | ||
This will run [Gulp](http://gulpjs.com/)-based build tasks automatically and produce the file Flux.js, which you can then require as a module. | ||
This will run [Gulp](https://gulpjs.com/)-based build tasks automatically and produce the file Flux.js, which you can then require as a module. | ||
@@ -63,0 +83,0 @@ You could then require the Dispatcher like so: |
@@ -0,0 +0,0 @@ /** |
Sorry, the diff of this file is too big to display
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
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
New author
Supply chain riskA new npm collaborator published a version of the package for the first time. New collaborators are usually benign additions to a project, but do indicate a change to the security surface area of a package.
Found 1 instance in 1 package
No website
QualityPackage does not have a website.
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
No website
QualityPackage does not have a website.
Found 1 instance in 1 package
19
93
258185
4997
1
+ Addedcross-fetch@3.1.8(transitive)
+ Addedfbjs@3.0.5(transitive)
+ Addedfbjs-css-vars@1.0.2(transitive)
+ Addednode-fetch@2.7.0(transitive)
+ Addedreact@17.0.2(transitive)
+ Addedtr46@0.0.3(transitive)
+ Addedua-parser-js@1.0.39(transitive)
+ Addedwebidl-conversions@3.0.1(transitive)
+ Addedwhatwg-url@5.0.0(transitive)
- Removedprop-types@15.8.1(transitive)
- Removedreact@16.14.0(transitive)
- Removedreact-is@16.13.1(transitive)
Updatedfbjs@^3.0.0