Initial commit
This commit is contained in:
23
node_modules/react-redux/lib/utils/PropTypes.js
generated
vendored
Normal file
23
node_modules/react-redux/lib/utils/PropTypes.js
generated
vendored
Normal file
@@ -0,0 +1,23 @@
|
||||
'use strict';
|
||||
|
||||
exports.__esModule = true;
|
||||
exports.storeShape = exports.subscriptionShape = undefined;
|
||||
|
||||
var _propTypes = require('prop-types');
|
||||
|
||||
var _propTypes2 = _interopRequireDefault(_propTypes);
|
||||
|
||||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
||||
|
||||
var subscriptionShape = exports.subscriptionShape = _propTypes2.default.shape({
|
||||
trySubscribe: _propTypes2.default.func.isRequired,
|
||||
tryUnsubscribe: _propTypes2.default.func.isRequired,
|
||||
notifyNestedSubs: _propTypes2.default.func.isRequired,
|
||||
isSubscribed: _propTypes2.default.func.isRequired
|
||||
});
|
||||
|
||||
var storeShape = exports.storeShape = _propTypes2.default.shape({
|
||||
subscribe: _propTypes2.default.func.isRequired,
|
||||
dispatch: _propTypes2.default.func.isRequired,
|
||||
getState: _propTypes2.default.func.isRequired
|
||||
});
|
||||
96
node_modules/react-redux/lib/utils/Subscription.js
generated
vendored
Normal file
96
node_modules/react-redux/lib/utils/Subscription.js
generated
vendored
Normal file
@@ -0,0 +1,96 @@
|
||||
"use strict";
|
||||
|
||||
exports.__esModule = true;
|
||||
|
||||
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
||||
|
||||
// encapsulates the subscription logic for connecting a component to the redux store, as
|
||||
// well as nesting subscriptions of descendant components, so that we can ensure the
|
||||
// ancestor components re-render before descendants
|
||||
|
||||
var CLEARED = null;
|
||||
var nullListeners = {
|
||||
notify: function notify() {}
|
||||
};
|
||||
|
||||
function createListenerCollection() {
|
||||
// the current/next pattern is copied from redux's createStore code.
|
||||
// TODO: refactor+expose that code to be reusable here?
|
||||
var current = [];
|
||||
var next = [];
|
||||
|
||||
return {
|
||||
clear: function clear() {
|
||||
next = CLEARED;
|
||||
current = CLEARED;
|
||||
},
|
||||
notify: function notify() {
|
||||
var listeners = current = next;
|
||||
for (var i = 0; i < listeners.length; i++) {
|
||||
listeners[i]();
|
||||
}
|
||||
},
|
||||
get: function get() {
|
||||
return next;
|
||||
},
|
||||
subscribe: function subscribe(listener) {
|
||||
var isSubscribed = true;
|
||||
if (next === current) next = current.slice();
|
||||
next.push(listener);
|
||||
|
||||
return function unsubscribe() {
|
||||
if (!isSubscribed || current === CLEARED) return;
|
||||
isSubscribed = false;
|
||||
|
||||
if (next === current) next = current.slice();
|
||||
next.splice(next.indexOf(listener), 1);
|
||||
};
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
var Subscription = function () {
|
||||
function Subscription(store, parentSub, onStateChange) {
|
||||
_classCallCheck(this, Subscription);
|
||||
|
||||
this.store = store;
|
||||
this.parentSub = parentSub;
|
||||
this.onStateChange = onStateChange;
|
||||
this.unsubscribe = null;
|
||||
this.listeners = nullListeners;
|
||||
}
|
||||
|
||||
Subscription.prototype.addNestedSub = function addNestedSub(listener) {
|
||||
this.trySubscribe();
|
||||
return this.listeners.subscribe(listener);
|
||||
};
|
||||
|
||||
Subscription.prototype.notifyNestedSubs = function notifyNestedSubs() {
|
||||
this.listeners.notify();
|
||||
};
|
||||
|
||||
Subscription.prototype.isSubscribed = function isSubscribed() {
|
||||
return Boolean(this.unsubscribe);
|
||||
};
|
||||
|
||||
Subscription.prototype.trySubscribe = function trySubscribe() {
|
||||
if (!this.unsubscribe) {
|
||||
this.unsubscribe = this.parentSub ? this.parentSub.addNestedSub(this.onStateChange) : this.store.subscribe(this.onStateChange);
|
||||
|
||||
this.listeners = createListenerCollection();
|
||||
}
|
||||
};
|
||||
|
||||
Subscription.prototype.tryUnsubscribe = function tryUnsubscribe() {
|
||||
if (this.unsubscribe) {
|
||||
this.unsubscribe();
|
||||
this.unsubscribe = null;
|
||||
this.listeners.clear();
|
||||
this.listeners = nullListeners;
|
||||
}
|
||||
};
|
||||
|
||||
return Subscription;
|
||||
}();
|
||||
|
||||
exports.default = Subscription;
|
||||
34
node_modules/react-redux/lib/utils/shallowEqual.js
generated
vendored
Normal file
34
node_modules/react-redux/lib/utils/shallowEqual.js
generated
vendored
Normal file
@@ -0,0 +1,34 @@
|
||||
'use strict';
|
||||
|
||||
exports.__esModule = true;
|
||||
exports.default = shallowEqual;
|
||||
var hasOwn = Object.prototype.hasOwnProperty;
|
||||
|
||||
function is(x, y) {
|
||||
if (x === y) {
|
||||
return x !== 0 || y !== 0 || 1 / x === 1 / y;
|
||||
} else {
|
||||
return x !== x && y !== y;
|
||||
}
|
||||
}
|
||||
|
||||
function shallowEqual(objA, objB) {
|
||||
if (is(objA, objB)) return true;
|
||||
|
||||
if (typeof objA !== 'object' || objA === null || typeof objB !== 'object' || objB === null) {
|
||||
return false;
|
||||
}
|
||||
|
||||
var keysA = Object.keys(objA);
|
||||
var keysB = Object.keys(objB);
|
||||
|
||||
if (keysA.length !== keysB.length) return false;
|
||||
|
||||
for (var i = 0; i < keysA.length; i++) {
|
||||
if (!hasOwn.call(objB, keysA[i]) || !is(objA[keysA[i]], objB[keysA[i]])) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
20
node_modules/react-redux/lib/utils/verifyPlainObject.js
generated
vendored
Normal file
20
node_modules/react-redux/lib/utils/verifyPlainObject.js
generated
vendored
Normal file
@@ -0,0 +1,20 @@
|
||||
'use strict';
|
||||
|
||||
exports.__esModule = true;
|
||||
exports.default = verifyPlainObject;
|
||||
|
||||
var _isPlainObject = require('lodash/isPlainObject');
|
||||
|
||||
var _isPlainObject2 = _interopRequireDefault(_isPlainObject);
|
||||
|
||||
var _warning = require('./warning');
|
||||
|
||||
var _warning2 = _interopRequireDefault(_warning);
|
||||
|
||||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
||||
|
||||
function verifyPlainObject(value, displayName, methodName) {
|
||||
if (!(0, _isPlainObject2.default)(value)) {
|
||||
(0, _warning2.default)(methodName + '() in ' + displayName + ' must return a plain object. Instead received ' + value + '.');
|
||||
}
|
||||
}
|
||||
25
node_modules/react-redux/lib/utils/warning.js
generated
vendored
Normal file
25
node_modules/react-redux/lib/utils/warning.js
generated
vendored
Normal file
@@ -0,0 +1,25 @@
|
||||
'use strict';
|
||||
|
||||
exports.__esModule = true;
|
||||
exports.default = warning;
|
||||
/**
|
||||
* Prints a warning in the console if it exists.
|
||||
*
|
||||
* @param {String} message The warning message.
|
||||
* @returns {void}
|
||||
*/
|
||||
function warning(message) {
|
||||
/* eslint-disable no-console */
|
||||
if (typeof console !== 'undefined' && typeof console.error === 'function') {
|
||||
console.error(message);
|
||||
}
|
||||
/* eslint-enable no-console */
|
||||
try {
|
||||
// This error was thrown as a convenience so that if you enable
|
||||
// "break on all exceptions" in your console,
|
||||
// it would pause the execution at this line.
|
||||
throw new Error(message);
|
||||
/* eslint-disable no-empty */
|
||||
} catch (e) {}
|
||||
/* eslint-enable no-empty */
|
||||
}
|
||||
12
node_modules/react-redux/lib/utils/wrapActionCreators.js
generated
vendored
Normal file
12
node_modules/react-redux/lib/utils/wrapActionCreators.js
generated
vendored
Normal file
@@ -0,0 +1,12 @@
|
||||
'use strict';
|
||||
|
||||
exports.__esModule = true;
|
||||
exports.default = wrapActionCreators;
|
||||
|
||||
var _redux = require('redux');
|
||||
|
||||
function wrapActionCreators(actionCreators) {
|
||||
return function (dispatch) {
|
||||
return (0, _redux.bindActionCreators)(actionCreators, dispatch);
|
||||
};
|
||||
}
|
||||
Reference in New Issue
Block a user